19
On max–min fair flow optimization in wireless mesh networks Michał Pióro a,b , Mateusz _ Zotkiewicz b,, Barbara Staehle c , Dirk Staehle c , Di Yuan d a Department of Electrical and Information Technology, Lund University, S-221 00 Lund, Sweden b Institute of Telecommunications, Warsaw University of Technology, Nowowiejska 15/19, 00-665 Warszawa, Poland c University of Würzburg, Chair of Communications Networks, Am Hubland, 97076 Würzburg, Germany d Department of Science and Technology, Linköping University, 601 74 Norrköping, Sweden article info Article history: Available online 11 May 2011 Keywords: Wireless mesh network Max–min fairness Mixed-integer programming abstract The paper is devoted to modeling wireless mesh networks (WMN) through mixed-integer programming (MIP) formulations that allow to precisely characterize the link data rate capacity and transmission scheduling using the notion of time slots. Such MIP models are formulated for several cases of the modulation and coding schemes (MCS) assignment. We present a general way of solving the max–min fairness (MMF) traffic objective for WMN using the formulated capacity models. Thus the paper combines WMN radio link modeling with a non-standard way of dealing with uncertain traffic, a combination that has not, to our knowledge, been treated so far by exact optimization models. We discuss several ways, including a method based on the so called compatible or independent sets, of solving the arising MIP problems. We also present an extensive numerical study that illustrates the running time efficiency of different solution approaches, and the influence of the MCS selection options and the number of time slots on traffic performance of a WMN. Exact joint optimization modeling of the WMN capacity and the MMF traffic objec- tives forms the main contribution of the paper. Ó 2011 Elsevier B.V. All rights reserved. 1. Introduction Wireless mesh networks (WMN) offer common and affordable access to the Internet in metropolitan and resi- dential areas. The core of a WMN consists of a set of fixed mesh nodes – routers and Internet gateways – intercon- nected by radio links that typically follow the Wi-Fi IEEE 802.11-family standards. Other standards, such as Blue- tooth IEEE 802.15.5, WiMAX IEEE 802.16a, and IEEE 802.20 can also support WMNs. Mesh clients, being either fixed or mobile, connect to mesh routers to obtain access to Internet gateways either over direct links or via multi-hop mesh routes. WMN is a cost-efficient approach for Internet access with a bandwidth in the range of 50–200 Mbps. The WMN solution is competitive to the wired Internet access offered by cable network providers or by mobile operators. WMNs are decentralized, non-hierarchical networks, typi- cally deployed by communities of users (see [1,4]), and based on commonly available off-the-shelf wireless com- munication equipment (see [2,3,5]). The idea of WMN stems from the ad hoc networking paradigm and, as such, fits very well the decentralized philosophy of the Internet. For comprehensive surveys of WMN, we refer to [7,19]. Although WMNs are relatively cheap and easy to deploy, achieving efficient and fair resource allocation is not straightforward. One particular issue is how to effectively allocate the offered network capacity among the routes be- tween the gateways and the routers. Without network opti- mization, which ideally should be simple, fast, and distributed, a WMN can behave poorly, delivering signifi- cantly lower throughput than it can potentially achieve. For WMN, network optimization tasks range from transmis- sion scheduling, channel assignment, transmission power 1570-8705/$ - see front matter Ó 2011 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2011.05.003 Corresponding author. E-mail addresses: [email protected] (M. Pióro), mzotkiew@ tele.pw.edu.pl (M. _ Zotkiewicz), [email protected] (B. Staehle), [email protected] (D. Staehle), diyua@ itn.liu.se (D. Yuan). Ad Hoc Networks 13 (2014) 134–152 Contents lists available at ScienceDirect Ad Hoc Networks journal homepage: www.elsevier.com/locate/adhoc

On max–min fair flow optimization in wireless mesh networks

Embed Size (px)

Citation preview

Ad Hoc Networks 13 (2014) 134–152

Contents lists available at ScienceDirect

Ad Hoc Networks

journal homepage: www.elsevier .com/locate /adhoc

On max–min fair flow optimization in wireless mesh networks

Michał Pióro a,b, Mateusz _Zotkiewicz b,⇑, Barbara Staehle c, Dirk Staehle c, Di Yuan d

a Department of Electrical and Information Technology, Lund University, S-221 00 Lund, Swedenb Institute of Telecommunications, Warsaw University of Technology, Nowowiejska 15/19, 00-665 Warszawa, Polandc University of Würzburg, Chair of Communications Networks, Am Hubland, 97076 Würzburg, Germanyd Department of Science and Technology, Linköping University, 601 74 Norrköping, Sweden

a r t i c l e i n f o a b s t r a c t

Article history:Available online 11 May 2011

Keywords:Wireless mesh networkMax–min fairnessMixed-integer programming

1570-8705/$ - see front matter � 2011 Elsevier B.Vdoi:10.1016/j.adhoc.2011.05.003

⇑ Corresponding author.E-mail addresses: [email protected] (M.

tele.pw.edu.pl (M. _Zotkiewicz), bstaehle@informa(B. Staehle), [email protected] (D. Yuan).

The paper is devoted to modeling wireless mesh networks (WMN) through mixed-integerprogramming (MIP) formulations that allow to precisely characterize the link data ratecapacity and transmission scheduling using the notion of time slots. Such MIP modelsare formulated for several cases of the modulation and coding schemes (MCS) assignment.We present a general way of solving the max–min fairness (MMF) traffic objective forWMN using the formulated capacity models. Thus the paper combines WMN radio linkmodeling with a non-standard way of dealing with uncertain traffic, a combination thathas not, to our knowledge, been treated so far by exact optimization models. We discussseveral ways, including a method based on the so called compatible or independent sets,of solving the arising MIP problems. We also present an extensive numerical study thatillustrates the running time efficiency of different solution approaches, and the influenceof the MCS selection options and the number of time slots on traffic performance of aWMN. Exact joint optimization modeling of the WMN capacity and the MMF traffic objec-tives forms the main contribution of the paper.

� 2011 Elsevier B.V. All rights reserved.

1. Introduction

Wireless mesh networks (WMN) offer common andaffordable access to the Internet in metropolitan and resi-dential areas. The core of a WMN consists of a set of fixedmesh nodes – routers and Internet gateways – intercon-nected by radio links that typically follow the Wi-Fi IEEE802.11-family standards. Other standards, such as Blue-tooth IEEE 802.15.5, WiMAX IEEE 802.16a, and IEEE802.20 can also support WMNs. Mesh clients, being eitherfixed or mobile, connect to mesh routers to obtain access toInternet gateways either over direct links or via multi-hopmesh routes. WMN is a cost-efficient approach for Internetaccess with a bandwidth in the range of 50–200 Mbps. The

. All rights reserved.

Pióro), [email protected](D. Staehle), diyua@

WMN solution is competitive to the wired Internet accessoffered by cable network providers or by mobile operators.WMNs are decentralized, non-hierarchical networks, typi-cally deployed by communities of users (see [1,4]), andbased on commonly available off-the-shelf wireless com-munication equipment (see [2,3,5]). The idea of WMNstems from the ad hoc networking paradigm and, as such,fits very well the decentralized philosophy of the Internet.For comprehensive surveys of WMN, we refer to [7,19].

Although WMNs are relatively cheap and easy to deploy,achieving efficient and fair resource allocation is notstraightforward. One particular issue is how to effectivelyallocate the offered network capacity among the routes be-tween the gateways and the routers. Without network opti-mization, which ideally should be simple, fast, anddistributed, a WMN can behave poorly, delivering signifi-cantly lower throughput than it can potentially achieve.For WMN, network optimization tasks range from transmis-sion scheduling, channel assignment, transmission power

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 135

adjustment and rate adaptation, to routing. In this context,traffic engineering, which is a key aspect in operatingcommunication networks, is of high significance to WMN.From the mathematical optimization standpoint, trafficengineering in WMN poses challenges that are not presentin classical network flow optimization, necessitating novelmodeling and optimization concepts to account for:

� transmission scheduling on radio links realized by themedium access control (MAC) layer using multipleaccess schemes such as contention-aware carrier sensemultiple access (CSMA) such as IEEE 802.11 or conten-tion-free reservation-based time division multipleaccess (TDMA) such as IEEE 802.16,� need of (dynamic) channel assignment in multi-channel

WMNs,� possibility of node power control for interference

mitigation,� possibility of link rate control for adapting the transmis-

sion to the channel propagation and interferenceconditions,� uncertain nature of traffic to be routed between WMN

routers and gateways.

Because of interference, it is not likely that transmis-sions can simultaneously take place on all links of aWMN. Therefore, scheduling algorithms are used to orga-nize the transmissions with the objective of end-to-endthroughput optimization. Design and implementation ofMAC scheduling is a challenging task, and its impact ontraffic performance is a key element in mathematical opti-mization models for WMN traffic engineering. Moreover,in some types of WMNs, more than one radio channelcan be used. This adds a new dimension (and difficulty)to WMN optimization. Finally, additional aspects that in-crease the complexity of WMN optimization are powercontrol and rate adaptation.

In the context of traffic engineering, the uncertainty inthe requirements on the amount of end-to-end informa-tion flows poses a major challenge. In WMN, the traffic ma-trix representing the demands (information flows) to berouted between WMN routers and gateways is virtuallyunknown. In fact, the classical notion of a traffic matrix isnot well suited for WMN design, as the sets of mesh clientsconnected to the mesh routers are highly dynamic andtheir traffic profiles are nearly impossible to assess. In thispaper, the way of dealing with traffic uncertainty is toincorporate fairness in assigning bandwidth to WMNroutes. i.e., to end-to-end flows. As traffic demands inWMN are mostly elastic and QoS is considered only implic-itly through lower bounds imposed on the bandwidth as-signed to the routes, bandwidth allocation within givenbounds using a fairness criterion is appropriate for dealingwith the main traffic characteristic of WMN – the aggre-gates of mesh clients attached to mesh routers are usuallydownloading as much contents as possible, certainly with-in some reasonable bounds. To this end, we apply themax–min fairness (MMF) concept for WMN trafficengineering.

In the paper we present a framework for studying multi-commodity flow formulations, and propose mixed-integer

programming (MIP) methods and algorithms for optimizingWMN traffic engineering with objectives involving MMF,taking into account peculiarities of radio link modeling,including scheduling, channel assignment, and rate control.The developed methods are investigated by numericalstudies for typical WMN scenarios. The results provideinsights for the development of link control and routingmechanisms for WMN.

The MMF criterion used in the paper applies to trafficthroughput. The throughput is a bandwidth vector as-signed to the traffic demands in their downstream direc-tions, assuming that a (single) routing path for eachdemand is fixed and given. The demands are elastic andtherefore they will consume any assigned bandwidth. Ineffect, the demands compete for link capacities, and theobjective of optimization becomes the MMF assignmentof bandwidth to the demands. Thus, the paper combinesWMN radio link modeling with a non-conventional wayof dealing with unknown traffic, a combination that, toour knowledge, has not been considered so far in termsof exact optimization models. This combination forms thekey contribution of the paper. More specifically, in the pa-per we present results along the following lines ofresearch.

� We develop a generic MIP framework to characterizethe space of network link capacity vectors being feasiblein terms of the signal to interference plus noise ratio(SINR).� Based on the capacity characterization, we develop a set

of MIP formulations for some representative WMN linkcontrol mechanisms, maximizing the network trafficthroughput with the MMF criterion.� For the selected link control mechanisms, we provide

details of mathematical modeling, using the case withunconstrained scheduling, shortest path routing andMMF traffic flow assignment as the reference solution.� The developed algorithms are applied in a numerical

study of a class of IEEE 802.11 WMNs in order to com-pare the effectiveness of various link control mecha-nisms under the fairness objective.

The paper is organized as follows. Section 2 is devotedto a survey of the field. In Section 3, we introduce basicnotions and notation. Section 4 presents a set of MIPmodels representing the link capacity region for a varietyof assumptions on radio links in WMNs. Section 5 con-tains three parts. First, we introduce the notion of MMFand a general algorithm for solving non-convex MMFproblems. Second, based on the models from Section 4,we detail the problem settings to be used in our numer-ical studies. Third, we present the solution approach usingthe notion of a compatible set. Section 6 presents a heu-ristic method for solving a WMN traffic engineering prob-lem with MMF. Then, in Section 7 we report and discussnumerical results to illustrate the effectiveness of theoptimization approaches, and provide insights into therelation between traffic throughput and system modelingparameters. Conclusions are given in Section 8. Finally,in the two appendices we give some details of MMFmodeling.

136 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

2. Survey of the field

There is a considerable amount of literature on WMNnetworking technology and its applications, see, for exam-ple, surveys in [7,8,19], and introductory discussions in[26,32]. Also, optimization techniques have been exten-sively studied in the literature to, generally speaking, max-imize the network capacity. Mixed-integer programmingmodels related to WMN network optimization are treatedin quite a large number of papers, such as [9–11,14,21,23,41,50].

A general (rough) conclusion that can be drawn fromthese studies is that already for medium-sized networks(with 30 nodes, say) the exact MIP formulations, whichare appropriate for the kind of WMN optimization weconsider, are hardly solvable to optimality (or even tonear-optimality) through direct application of even thetop commercial MIP solvers (such as CPLEX). It seems thatthere is a lot of room for strengthening the existing formu-lations (i.e., improving the upper bound, see the remarkafter formula (7) in Section 4.1), simplifying them (todecrease the number of binary variables, see Section 4.5),and for the use of branch-and-price-and-cut approach inits more sophisticated forms, in order to achieve more timeefficient solution algorithms.

While the aforementioned papers use MIP modeling,their results are not directly usable for our purpose as theyassume that demand traffic matrices are known and fixed,i.e., the simplest assumption on traffic data. The assump-tion is often improper, as uncertainty of traffic demandhas to be taken into account in modeling networks carry-ing unpredictable Internet traffic generated by diversedata, voice and video applications. Today’s networks oughtto be made robust to traffic uncertainty – this has moti-vated network planners to extend classical optimizationmodels with demand descriptions that can effectively cap-ture the uncertainty in question. Research in this area (seea recent survey in [22]) falls under two categories: robustoptimization and stochastic optimization. Robust optimi-zation assumes a given set of demand matrices, either alarge discrete set (multi-scenario description), or a contin-uous set, typically a polyhedron (polyhedral description)[15], and optimizes the network making sure that each de-mand matrix from the assumed set will be supported. Sto-chastic optimization in turn works with a single demandmatrix treated as a stochastic matrix, modeling thepoint-to-point (point-to-multipoint) demands as corre-lated random variables, and optimizes the network underthe requirement that the actually realized demand matrixwill be supported with a sufficiently high probability [42].However, these views of the characteristics of traffic ma-trix may not be well suited for WMN design for the reasonsdiscussed in the introduction (highly variable sets of meshclients connected to mesh routers with unpredictable traf-fic profiles). This, as already mentioned, justifies less clas-sical approaches to traffic modeling as the one used inthis paper, that is, max–min fairness (for the notion ofMMF see for example [35,38,39]).

In [13], it is observed that maximizing the overallthroughput of a WMN tends to favor users located closeto mesh gateways, while users that have to be reached

with more hops are discriminated in capacity allocation.Thus fairness is an issue in experienced service quality, inaddition to dealing with traffic uncertainty. The MMF ap-proach tackles fairness by not only maximizing the flowsequally assigned to the routes, but also increasing theflows for which this is possible in subsequent iterativesteps. In other words, a MMF solution means that no routecan gain higher flow without having to decrease the flowon a route where the current flow is lower. Application ofthe MMF-type traffic engineering to WMN has been con-sidered in [13,27,33,43,48]. All these papers present heu-ristic methods (some of them very promising and useful,as in [13,33,43]) to optimize the WMN link data rateassignment. By the nature of heuristic methods, the solu-tions are sub-optimal, and hence do not give a precise solu-tion of globally optimal MMF resource allocation. Ourobjective is to incorporate the MMF performance metricinto MIP formulations for WMN optimization in a rigorousyet efficient way based on our previous contributions in[37–39]. We note here that an MMF solution is a limitingcase of the maximization of the sum of certain concaveutility functions (see for example [34]) – this fact can beused for finding approximate MMF solutions as proposedfor WMN in [33].

An important, from the perspective of our work, recentpaper is [21] where the authors introduce optimizationmodels of WMN for link control (scheduling, channelassignment, power control, and link rate control) and traf-fic routing. Their basic approach is to solve linear relax-ations of the MIP problems formulated in terms of‘‘compatible sets of links’’ (i.e., sets of links that can trans-mit simultaneously), and to round-off the fractionalsolutions obtained through column generation to reachsub-optimal integer solutions. In fact, the use of compati-ble sets (also called independent sets) was considered asearly as in the 90s, see [46]. As a matter of fact, assumingfixed power transmission, the capacity maximizationproblem can be solved by finding maximum weightedindependent sets. Using this approach, for infinite timehorizon researchers were maximizing the transmissionrates [36,46] while for finite time horizon, they wereminimizing the number of time slots to accommodatethe given traffic load, see [49] and references therein.

One capacity aspect modeled in our paper and in theprevious work considering WMN optimization is adaptivemodulation and coding, also called link rate adaption. Sev-eral works have addressed how to take advantage of themulti-channel and multi-rate capabilities of wireless net-work interfaces used in WMNs, and exploit the channeland path diversity [10,17,20]. All these studies point outthat the transmission rate used by the wireless interfacesis one of the most important factors that influence theWMN performance. A wireless network interface withmulti-rate capabilities should select, at run-time, thetransmission rate based on the medium conditionsachieving the best link performance. To this end, severalrate adaptation algorithms have been proposed in theliterature [13,24,43]. The approaches either differ in themetrics used to estimate the link quality, or in the rate-selection decision process. Some of the proposed rateadaptation schemes, being compliant with the current

Table 1IEEE 802.11a MCS, FER 61%, 1500 Byte payload, channel model (1).

MCS m Raw rateBm (Mbps)

SINR thresholdcm (dB)

Max. linklength dm (m)

BPSK 1/2 6 3.5 273.5

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 137

802.11 technology, have been implemented in commodityhardware [13,24] and used in off-the-shelf products. Re-cently, experimental studies (e.g., [12]) have investigatedhow effectively these adaptive rate adaptation algorithmsperform in practical settings.

BPSK 3/4 9 6.5 230.0QPSK 1/2 12 6.6 228.0QPSK 3/4 18 9.5 193.716-QAM 1/2 24 12.8 160.216-QAM 3/4 36 16.2 131.764-QAM 2/3 48 20.3 103.864-QAM 3/4 54 22.1 93.5

3. Notation

The topology of a WMN network is modeled by a direc-ted graph N ¼ ðV; EÞ. V is the set of nodes, v 2 V, andV ¼ G [R, where G and R denote the sets of gatewaysand mesh routers, respectively. The set E represents the(radio) links, modeled as directed arcs e; e 2 E. The tailand head node of a link e 2 E is denoted by a(e) and b(e),respectively, that is, when e ¼ vw;v ;w 2 V then a(e) = vand b(e) = w. We assume that if vw 2 E then also wv 2 E,that is, the arc e0 = wv being opposite to an existing arce = vw also exists (although may not be used). Further,d+(v) and d�(v) denote, respectively, the sets of outgoingand incoming arcs from/to node v 2 V, and d(v) is the setof all arcs incident to node v, d(v) = d+(v) [ d�(v). A (radio)link e = vw is provided, i.e., vw 2 E only when nodes vand w are able to communicate. As explained below, thisis the case when the signal to noise ratio (SNR) for thearc is greater than a certain threshold.

Below, we are using the standard (dual) description ofthe quantities related to radio transmissions, using eitherthe linear scale or the logarithmic scale (related to mWor dBm units, respectively). Each quantity expressed inthe logarithmic scale and corresponding to a quantity Q ex-pressed in the linear scale will be denoted by bQ . The wellknown relation between the two quantities is as follows(log denotes the decimal logarithm):

bQ ¼ 10 log Q ; Q ¼ 10bQ10:

Let Pvw denote the power, expressed in mW, received atnode w 2 V when node v 2 V is transmitting (as definedabove, the same power expressed in dBm is denoted bybPvw). In the numerical studies of this paper we assumethe case of 802.11 WMNs operating with an OFDM PHYin the 5 GHz band and use the generic path gain modelfrom [25]. In the decibel scale for a reference distance of10 m and a path loss exponent of 4, the power receivedby w when v is transmitting is given by

bPvw ¼ bP þ bGvw ¼ bP � 140:046� 40 � log dvw; ð1Þ

where dvw is the distance between nodes v and w in kmand the quantity bGvw ¼ �140:046� 40 � log dvw is calledthe path gain. Note that we assume that all the nodesuse the same transmission power P, whereP ¼ 100 mW ðbP ¼ 20 dBmÞ.

The quantity N will denote the ambient noise powerwhich is set to the product of the thermal noise spectraldensity S = �174 dBm/Hz and the system bandwidthW = 20 MHz, i.e., bN ¼ �101 dBm, and in consequenceN = 10�10.1 mW.

At a given time instance a node can transmit using oneof the available modulation and coding schemes (MCSs). Theset of such MCSs is denoted by M, and a particular MCS by

m 2M. Table 1, reproduced from [43], shows the set ofMCSs available for IEEE 802.11a. Each MCS m 2M has itssignal to interference plus noise ratio (SINR) requirement,i.e., a certain (decoding) threshold cm which must beobeyed in order for a transmission to be successful. TheSINR thresholds cm and the maximal feasible transmissiondistances which allow to meet a frame error rate (FER) of1% when an IP packet with 1500 B payload is transmittedover an additive white gaussian noise channel with band-width W = 20 MHz are obtained by link level simulationsand are given in Table 1. Note that in Table 1, cm is givenin the logarithmic scale (in dB) while its value in the linear

scale cm ¼ 10cm

10

� �is used in the balance of this paper. The

resulting (raw) data rate of a transmission using MCS m isspecified by the quantity Bm in Table 1.

The SNR of a (potential) link e = vw is a constant valueequal to

C0e ¼Pvw

N: ð2Þ

We assume that in a network with the given set M ofavailable MCSs, a link e is provided (e 2 E) only ifC0e P cm for at least one m 2M. In fact, assuming channelmodel (1), this condition is equivalent to that dvw 6 dm

where dvw is the distance from node v to node w and themaximum distance values dm are given in Table 1. Theset of MCSs for which dvw 6 dm could be denoted byMðeÞ but in the paper we assume (merely to simplify theconsiderations) that MðeÞ ¼M; e 2 E. The question whichMCS to use for which link is addressed by the formulationspresented in Sections 4 and 6.1. In the sequel the super-script m will be skipped for the case of a WMN with onlyone available MCS.

Note that C0e P cm means that link e can successfullytransmit when there are no other (simultaneous) transmis-sions in the network. If at certain instance of time t othertransmission are on, this may not be possible as othernodes can interfere with the transmission on e. To take thisfundamental fact into account we define the set AðtÞ ofnodes active at time instance t ðAðtÞ#VÞ. Then the corre-sponding SINR of link e = vw is defined as

CeðtÞ ¼Pvw

N þP

a2AðtÞnfvgPaw¼ Pvw

N þ IvwðtÞð3Þ

where the time varying interference, Ivw(t), is computed asthe sum of the powers received from the nodes which aretransmitting at the same time as v. For convenience, we

138 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

will drop the time indicator t unless it is necessary. If theinterference is zero (no node is transmitting at the sametime as v) then Ce ¼ C0e, otherwise Ce < C0e. We observethat link e can successfully transmit using MCS m at thetime instant t only if Ce(t) P cm, that is if

Pvw

N þP

a2AðtÞnfvgPawP cm: ð4Þ

Inequality (4) is referred to as the SINR constraint.Finally, T denotes the set of (abstract) time slots mod-

eling transmission scheduling. Each slot t 2 T representsa time interval of length s, with a specified subset of activeradio links that can successfully transmit at the same time.The subsets of links active in consecutive time slots t 2 T

are specified by a particular scheduling solution. The quan-tity T ¼ sjT j expresses the length of the basic cycle of net-work operation. A network continuously repeats the cycle,thus potentially operates in an infinite time horizon usingtime slots of very short duration.

The following list summarizes the introduced notation.E set of directed links (arcs), e 2 E

a(e),b(e) head and tail nodes of link e 2 E; we assume that ifvw 2 E then also wv 2 E

V;G;R sets of nodes, gateways, and mesh routers, respec-tively

d+(v),d�(v) outgoing and incoming sets of arcs to nodev 2 V, respectively

d(v) set of all arcs incident to node v 2 V;d(v) = d+(v) [ d�(v)

Pvw power received at node w 2 V when node v 2 V istransmitting

N thermal noise power (assumed to be the same forall nodes v 2 V)

C0e signal to noise ratio (SNR) of link eCe signal to interference plus noise ratio (SINR) of link

eM set of available MCSs, m 2M

cm SINR requirement or decoding threshold for MCSm 2M (c if only one MCS is used)

Bm data rate of MCS m 2M (B if only one MCS is used)T set of time slots modeling transmission schedulings the length/duration of a time slotT length of a cycle; T ¼ sjT j

We end this section with specifying the basic variablesused in the optimization models considered in the nextsections.Yet binary variable indicating whether link e is sched-

uled to be active in time slot t 2 T . If a link is ac-tive, then (4) must be satisfied for the SINRthreshold of the appropriate MCS

ymet binary variable indicating whether link e is active

and uses MCS m in time slot t 2 T

Xvt binary variable indicating whether node v trans-mits (is active) in time slot t 2 T

xmvt binary variable indicating whether node v trans-

mits using MCS m in time slot t 2 T

Zmv binary variable indicating which MCS is used at

node v in all time slots (only when the staticMCS assignment is used)

ret nonnegative capacity of link e achieved in timeslot t 2 T

ce nonnegative continuous capacity of link e, equal tothe total volume of data that can be send on link eduring time T

4. Modeling link capacity space

This section is devoted to modeling feasible sets of radiolink capacity reservations corresponding to several vari-ants of WMN systems. For this purpose we use mixed-inte-ger programming formulations, that is, systems of linearequalities/inequalities in continuous/integer variables.Starting with a formulation for a simple WMN system,we subsequently present its extensions capturing more ad-vanced features of WMN system configurations. The mod-els of this section are independent of any particularoptimization objective formulations and are in this sensegeneral. They will be used in the subsequent sections fordefining and solving network optimization problemsinvolving MMF. In all the cases we assume that at any timeslot each mesh node is either active (and in this case ittransmits) or is inactive, and so are the links.

Certainly, many other variants of capacity reservationmodels relevant to WMN systems could be considered be-sides those studied in this section. One important class ofsuch extensions is obtained when power control is admit-ted in the nodes (i.e., when Pvw become variables). As dis-cussed in [21], this allows to limit the interferences andin consequence to increase the network capacity.

Another extension is to model multiple radio channelswith separate interference domains. A channel is assignedto a link either statically (the same channel for all timeslots) or dynamically (channels assigned to a link canchange from a time slot to a time slot). Clearly, interferenceconstraints (4) would be then considered separately fortransmissions on different channels. Such a multi-trans-ceiver, multiple-MCS, multi-channel model consistent withthe notation used in this paper can be found in [40]. Also,the OFDMA technology can be modeled in a similar waywith the OFDMA subcarriers (roughly) corresponding totransmission channels. Still another extension could be ob-tained when multiple directed antennas can be used in thenodes. Then the interference constraint (4) would be trans-formed to a much less demanding one. We limit howeverthe set of the considered models to keep the paper volumeon an acceptable level.

4.1. Single MCS

The following formulation describes a very simpleWMN system where each node has only one transceiver,and only one fixed MCS is used by all the nodes.Xe2dðvÞ

Yet 6 1 v 2 V; t 2 T ð5aÞXe2dþðvÞ

Yet ¼ Xvt v 2 V; t 2 T ð5bÞ

YetPaðeÞbðeÞ

N þP

v2VnfaðeÞgPvbðeÞXvtP Yetc e 2 E; t 2 T ð5cÞ

ce ¼ sBXt2T

Yet e 2 E: ð5dÞ

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 139

The constraints assure that:

(5a): at most one link e incident to node v can be active intime slot t.

(5b): exactly one link e outgoing from node v is active intime slot t if the node is active in this time slot.

(5c): SINR constraint (see (4)); if link e is active in timeslot t, i.e., if Yet = 1, then its SINR must be greateror equal to the decoding threshold.

(5d): total effective capacity of link e is the sum of itscapacities over all time slots; note that because Bis expressed in Mbps, the capacity is the total num-ber of bits transmitted on the link in the time frameT containing all time slots (i.e., the entire duration ofthe cycle, T ¼ sjT j).

Notice that in formulation (5), Xvt are auxiliary variablesand thus they can either be eliminated or their binarity canbe skipped. Moreover, observe that (5c) is not linear but bi-linear. It can be made linear by introducing additional(continuous) variables zevt to express the product Yet�Xvt,i.e., zevt = 1 if both Yet and Xvt are equal to 1, and 0, other-wise. This is achieved by adding the constraints

zevt P Yet þ Xvt � 1 v 2 V; e 2 E; t 2 T ð6aÞzevt 6 Yet ; zevt 6 Xvtv 2 V; e 2 E; t 2 T ð6bÞzevt P 0 v 2 V; e 2 E; t 2 T ð6cÞ

and changing (5c) to

NYet þX

v2VnfaðeÞgPvbðeÞzevt 6

1c

PaðeÞbðeÞYet e 2 E; t 2 T : ð7Þ

It is important to note that although variable Yet is not nec-essary on the left hand side of (5c), its presence strength-ens formulation (5) because it makes it possible to avoidusing the so called ‘‘big M’’ in constraints (6) and (7), con-trary to the analogous linearization in [21]. The lack of ‘‘bigM’’ in our formulations considerably decreases the upperbounds of the corresponding linear relaxations, and there-fore improves their tractability (see Section 7).

In effect, we arrive at a mixed-integer programming(MIP) formulation (mixed-binary, in fact) that expressesconstraints for feasible allocations of link capacities, and,in fact, for transmission scheduling within individual timeslots. The so specified optimization space C for variablesc ¼ ðce; e 2 EÞ can then be used to formulate optimizationproblems involving optimization of traffic objectives forWMN. In Section 5 this is done for the MMF allocation offlows to paths.

4.2. Single MCS, node capacity split

In the system modeled by (5), the entire transmissioncapacity s B of active node v 2 V in a time slot is allocatedonly to one selected link outgoing from node v. Thisassumption can in fact be alleviated by allowing the sys-tem to arbitrarily split the transmission capacity within atime slot among all links outgoing from a node. Such a splitcould be realized through a suitable protocol (there is asimilarity to the routing protocol realizing the ECMP fea-ture in OSPF). As shown in Section 7, this new degree of

freedom (referred to as node capacity split) in allocatingcapacity to links can help to improve the efficiency of net-work control for example by using fewer time slots forachieving the same capacity allocation. Below we presenta formulation assuming the node capacity split. Note that,in the considered problem, if multiple outgoing links of anode become active during a time slot, they are restrictedto use a common MCS.Xe2d�ðvÞ

Yet 6 1 v 2 V; t 2 T ð8aÞ

Yet þ Ye0t 6 1 e 2 E; t 2 T ð8bÞYet 6 Xvt v 2 V; e 2 dþðvÞ; t 2 T ð8cÞzevt P Yet þ Xvt � 1 v 2 V; e 2 E; t 2 T ð8dÞzevt 6 Yet ; zevt 6 Xvt v 2 V; e 2 E; t 2 T ð8eÞ

NYet þX

v2VnfaðeÞgPvbðeÞzevt 6

1c

PaðeÞbðeÞYet e 2 E; t 2 T ð8fÞ

ret 6 sBYet e 2 E; t 2 T ð8gÞXe2dþðvÞ

ret 6 sB v 2 V; t 2 T ð8hÞ

ce ¼Xt2T

ret e 2 E: ð8iÞ

The constraints assure that:

(8a): at most one link e incoming to node v can beactive in time slot t.

(8b): only one arc in any pair of opposite arcs can beactive in time slot t.

(8c): potentially all links outgoing from any node vcan be active in time slot t.

(8d)-(8f): admissible SINR for link e in time slot t; notethat the linearization discussed in Section 4.1is used.

(8 g)-(8 h): volume of data transmitted from node v in atime slot t can be split among the active linksoutgoing from the node.

(8i): total effective capacity of link e is the sum ofits capacities over all time slots.

Note that, because of (8c), variables Xvt cannot be elim-inated from the formulation like in (5). However, still theirbinarity can be relaxed.

Contrary to (5a), in (8a) only links incoming to v areconsidered. It may create an impression that node v can re-ceive and transmit simultaneously. This is not the case, be-cause of (8f), i.e., if v transmits then it jams all thetransmissions to v. Also note that we have assumed thata node cannot use more than one incoming link in a timeslot. This assumption is not only justified, but also inevita-ble. Assume that node v can use two incoming links, say wvand w0v. Then the nodes w and w0 cannot transmit simulta-neously when one of them is transmitting to v, as theywould jam each other. But they do, as they both transmitduring the whole time slot. Thus, we reach a contradiction.

After straightforward adaptations, the node capacitysplit extension applies to all subsequent model formu-lations in this section. Still, we will not include this optionin the rest of the models presented in this section.

140 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

Consequently, we will not indicate this fact in the titles ofthe subsections.

4.3. Static allocation of MCS

The next problem we consider assumes that a set ofpossible MCSs is available. Still, each node uses only oneMCS which is fixed in all time slots. This is referred to asstatic allocation of MCSs to nodes, a technique which isused by all state-of-the-art WiFi access points.Xm2M

Zmv ¼ 1 v 2 V ð9aÞ

xmvt 6 Zm

v v 2 V;m 2M; t 2 T ð9bÞXvt ¼

Xm2M

xmvt v 2 V; t 2 T ð9cÞX

e2dþðvÞ

ymet ¼ xm

vt v 2 V; m 2M; t 2 T ð9dÞ

Yet ¼X

m2Mym

et e 2 E; t 2 T ð9eÞXe2dðvÞ

Yet 6 1 v 2 V; t 2 T ð9fÞ

zmevt P ym

et þ Xvt � 1 v 2 V; e 2 E; t 2 T ; m 2M ð9gÞzm

evt 6 ymet ; zm

evt 6 Xvt v 2 V; e 2 E; t 2 T ; m 2M ð9hÞ

Nymet þ

Xv2VnfaðeÞg

PvbðeÞzmevt 6

1cm

PaðeÞbðeÞymet

e 2 E; t 2 T ; m 2M ð9iÞce ¼ s

Xt2T

Xm2M

Bmymet e 2 E: ð9jÞ

The constraints assure that:

(9a): every node selects one MCS.(9b): MCS used by a node in any time slot in which

the node is active must be the one selected forthis node.

(9c): defines Xvt indicating whether or not node v isactive in time slot t.

(9d): if node v is active in time slot t then exactly onelink outgoing from node v is active in time slot tand uses the MCS of the node.

(9e): Yet = 1 if, and only if, link e is active and uses oneof the available MCSs.

(9f): at most one link incident to a node can be activein any time slot.

(9 g)-(9i): admissible SINR for link e with MCS m in timeslot t.

(9j): total effective capacity of link e is the sum of itscapacities over all time slots and MCSs.

A modified version of the above formulation was con-sidered in [43,44]. In the modification, MCSs are fixed tolinks rather than to nodes so that each link uses the sameMCS in all time slots (when active) but different links out-going from a node can use different MCSs. This particularversion of (9) allows to address the trade-off between spa-tial reuse and throughput and is used in the correspondingformulations of Section 5.2 and assumed for the heuristicpresented in Section 6.

4.4. Dynamic allocation of MCS

The following formulation corresponds to a systemwhere multiple MCSs are available, and the nodes canuse different MCSs in different time slots. The latter featureis referred to as dynamic allocation of MCSs to nodes.

Xvt ¼X

m2Mxm

vt v 2 V; t 2 T ð10aÞ

Yet ¼X

m2Mym

et e 2 E; t 2 T ð10bÞXe2dðvÞ

Yet 6 1 v 2 V; t 2 T ð10cÞXe2dþðvÞ

ymet ¼ xm

vt v 2 V; m 2M; t 2 T ð10dÞ

zmevt P ym

et þ Xvt � 1 v 2 V; e 2 E; t 2 T ; m 2M ð10eÞzm

evt 6 ymet ; zm

evt 6 Xvt v 2 V; e 2 E; t 2 T ; m 2M ð10fÞ

Nymet þ

Xv2VnfaðeÞg

PvbðeÞzmevt 6

1cm

PaðeÞbðeÞymet

e 2 E; t 2 T ; m 2M ð10gÞce ¼ s

Xt2T

Xm2M

Bmymet e 2 E: ð10hÞ

The constraints assure that:

(10a): node v can use at most one MCS in time slott.

(10b): link e can use at most one MCS in time slot t.(10c): at most one link e incident to node v can be

active in time slot t.(10d): exactly one link e outgoing from node v is

active and uses MCS m in time slot t if thenode is active in this time slot and uses thisMCS.

(10e)-(10 g): admissible SINR for link e using MCS m intime slot t (this constraint is active if link eis active and uses MCS m in time slot t).

(10f): total effective capacity of link e is the sum ofits capacities over all MCS in all time slots.

4.5. A simplified interference model

An important modification of the considered feasiblelink capacity space characterization that leads to a signifi-cant decrease of the time needed to solve the related opti-mization problems (see the formulations in Section 5 andthe numerical results in Section 7) is a simplification ofthe interference model. In the cases considered earlier inthis section, a full interference model was assumed. How-ever, it is possible to reasonably simplify it like in [13,43]where only the first order interference was consideredusing the notion of the so called collision domains. Theidea of the simplification is to assume that if any subsetof nodes W #V n faðeÞg, when simultaneously active, inter-feres with transmission on link e then transmission on linke is already interfered when any single node v 2W is ac-tive. Certainly, in general this is not the case and thereforemay lead to network capacity overestimation.

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 141

In order to formally incorporate the simplified interfer-ence model into for example (5), we replace (5c) with thefollowing constraint:

YetPaðeÞbðeÞ

N þ PvbðeÞXvtP Yetc e 2 E; t 2 T ; v 2 V n faðeÞg:

ð11Þ

Now it is possible to rewrite (11) in a linear form (with noextra variables, contrary to (6) and Eq. (7)) in the followingway:

Yet þ Xvt 6 1; e 2 E; t 2 T ; v 2We ð12Þ

where

We ¼ fv 2 V n faðeÞg :PaðeÞbðeÞ

N þ PvbðeÞ< cg: ð13Þ

As illustrated in Section 7, it turns out that constraint (12),being what we may call the first order SINR constraint,leads to much more efficient optimization problem formu-lations than (6) and (7) and therefore is computationallyadvantageous. Moreover, taking into account only the firstorder SINR allows for devising efficient heuristics – seeSection 6.

In the case of multiple MCSs, the corresponding modifi-cation of the SINR constraint is analogous. Hence, the mod-ification can be applied to all problems considered in thispaper by replacing the original SINR constraints (involvingadditional variables z) with an appropriate constraint sim-ilar to (12).

5. MMF optimization of demand flows

5.1. Application of the MMF approach

Below we shall formulate a general, from the point ofview of the models of Section 4, max–min fair (MMF) flowoptimization problem. We assume that link capacity reser-vation variables c ¼ ðce : e 2 EÞ belong to a feasible setC # RjEj. The set C can be defined as in any of the formula-tions described in Section 4. Note that all of those sets arenon-convex.

Let P ¼ fp1; p2; . . . ; pDg be the given set of paths be-tween nodes and gateways. Each such path pd is supposedto carry the entire downstream flow fd from a selectedgateway (gateways form a subset G of V) to a destinationnode in D ¼ V n G, where D ¼ jDj. (Upstream flow can beaccounted in a similar way, although it is not consideredhere, see also Section 1.) Each path pd is treated as a subsetof links, i.e., pd # E; d ¼ 1;2; . . . ;D. For each link e 2 E, theset of all indices of paths in P that contain this link willbe denoted by Qe ¼ fd : e 2 pd; 1 6 d 6 Dg. The MMF flowoptimization problem is defined as follows:

lexmax ½ðf1; f2; . . . ; fDÞ� ð14aÞc 2 C ð14bÞXd2Qe

fd 6 ce e 2 E: ð14cÞ

In (14a), [f] = ([f]1,[f]2, . . . , [f]D) denotes the vectorf = (f1,f2, . . . , fD) sorted in the non-decreasing order, so that

objective (14a) consists in lexicographical maximization ofthe sorted vector of path-flows ([f]1 6 [f]2 6� � �6 [f]D).

Problem (14) can be solved sequentially through the socalled conditional means approach described in Section 4.2of [38]. The idea of the approach is to express the consec-utive entries of vector [f] (these entries are referred to asoptimization criteria) and maximize them one by one, keep-ing the previously optimized entries at their optimal val-ues. For the details of the derivations given below, thereader is referred to [38].

Let the cumulated optimization criteria be defined asFd = [f]1 + [f]2 +� � �+ [f]d, d = 1,2, . . . ,D. Each such cumulatedcriterion Fd (for a fixed d, 1 6 d 6 D) can be expressed asthe solution of a linear programming problem in continu-ous variables bd and gdj, j = 1,2, . . . ,D:

Fd ¼ max dbd �XD

j¼1

gdj

( )ð15aÞ

bd � fj 6 gdj j ¼ 1;2; . . . ;D ð15bÞgdj P 0 j ¼ 1;2; . . . ;D: ð15cÞ

The justification and derivation of (15) is given in AppendixA. Note that the entities fd in (15b) are the entries of theflow vector f – they are variables in formulation (14) butare given constants in formulation (15). Because of (15a),the following algorithm solves the MMF flow allocationproblem.

Algorithm 1. (Algorithm for problem (14))

Input: Optimization space C.Output: MMF solution f 0 ¼ ðf 0

1 ; f02 ; . . . ; f 0

D Þ and correspond-ing optimal capacities c0.

Step 0: Set d = 1.Step 1: Solve the mathematical program:

maximize dbd �XD

j¼1

gdj ð16aÞ

s:t: c 2 C ð16bÞXd2Qe

fd 6 ce; e 2 E ð16cÞ

F0d 6 ibj �

XD

j¼1

gij; i ¼ 1;2; . . . ;d� 1 ð16dÞ

bi � fj 6 gij; j ¼ 1;2; . . . ;D; i ¼ 1;2; . . . ;d ð16eÞgij P 0; j ¼ 1;2; . . . ;D; i ¼ 1;2; . . . ;d ð16fÞ

and denote the resulting optimal objective by F0d .

Step 2: If d < D put d: = d + 1 and go to Step 1. Otherwise,stop: f 0

1 ¼ F01; f

0d ¼ F0

d � F0d�1; d ¼ 2;3; . . . ;D and

the last optimized capacities c0 compose the opti-mal solution.

It is worth mentioning that the difficulty in solvingproblems (16) for consecutive d,d = 1,2, . . . ,D lies in thenon-convexity of the set C and not in the additional(continuous) variables bd (d = 1,2, . . . ,D) and gdj

(d, j = 1,2, . . . ,D) nor in (linear) constraints (16c)–(16f).

Remark. The number of steps of the algorithm is equal tothe number of demands, i.e., to D. In each step we fix one

142 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

(consecutive) value of the MMF vector of bandwidthassignments. In fact there exists another approach (calledthe distribution approach, see Section 4.3 of [38]) to non-convex MMF problems. The complexity of this alternativeapproach is similar to that of the above approach. Thedistribution approach requires that the set of valuesassumed by the criteria f1, f2, . . . , fD is finite, and then thenumber of steps is equal to the number of distinct valuesassumed by the criteria in the optimal vector f0.

5.2. The considered MMF problems

For the numerical studies presented in Section 7 wehave selected the following link capacity models corre-sponding to different WMN systems described in Section 4:

CFIstatic – model (9) with static MCS allocation with the

modification described at the end of Sec-tion 4.3 (static allocation with full interference)

CSIstatic – model (9) with static MCS allocation with the

modification described at the end of Sec-tion 4.3 and with constraints (9g)–(9i) substi-tuted with (12) (static allocation withsimplified interference)

CFIdynamic – model (10) with dynamic MCS allocation of

Section 4.4 (dynamic allocation with fullinterference)

CSIdynamic – model (10) with dynamic MCS allocation of

Section 4.4 and with constraints (10e)–(10g)substituted with an appropriate version of(12) (dynamic allocation with simplifiedinterference).

Additionally we will consider modifications of theabove models assuming node capacity split described inSection 4.2. When this option is assumed, we will denotethis by adding /NS to the superscript, for example C

FI=NSstatic .

The resulting MMF optimization problems are then ob-tained by substituting C in constraint (14b) of the genericMMF problem (14) by:

Problem SA/FI (Static Allocation with Full Interference):C :¼ CFI

static

Problem DA/FI (Dynamic Allocation with Full Interfer-ence): C :¼ CFI

dynamic

Problem SA/FI/NS (Static Allocation with Full Interference.and Node Capacity Split): C :¼ C

FI=NSstatic

Other MMF problems that correspond to other feasiblecapacity sets defined previously are obtained analogously.Hence, problems abbreviated with DA/FI/NS, DA/SI, DA/SI/NS, SA/SI and SA/SI/NS are defined by substituting C in con-straint (14b) with C

FI=NSdynamic; C

SIdynamic; C

SI=NSdynamic; C

SIstatic and C

SI=NSstatic ,

respectively.

5.3. Non-compact formulation and compatible sets generation

Problems of the form (16) solved in Step 1 of the MMFalgorithm (Algorithm 1) for the formulations described atthe end of the previous subsection (SA/FI, DA/FI, etc.) are

hard (see Section 7). Fortunately, it is possible to consider-ably simplify them (especially problems of the DA type,see below) by using the so called compatible sets [21].When a single MCS is assumed, a compatible set (CS) is de-fined as a subset E i of links ðE i # EÞ that can transmit simul-taneously without generating too much interfering witheach other. In other words, a compatible set is defined byE i ¼ fe 2 E : Ye ¼ 1g for any set of (feasible) link variablesYe; e 2 E fulfilling (19b)–(19h). For the case with multipleMCSs, the definition of E i includes not only a subset of linksbut also a list of particular MCSs that each link is using.Hence, E i ¼ fðe;mÞ 2 E �M : ym

e ¼ 1g where variables yme

form a feasible solution for a corresponding problem fromSection 4.3 or Section 4.4 with only one time slot, i.e., whenjT j ¼ 1 and the subscript t is skipped in formulations (9)and (10).

Let I be a family of compatible sets. Using I , we canintroduce alternative formulations of the previously con-sidered MIP problems, i.e., formulations involving timeslots t 2 T . In fact, the compatible-set formulations arecontinuous approximations of the MIP problems, with con-tinuous variables zi that represent the portion of time T uti-lizing the transmission scheme defined by a compatible seti 2 I . The compatible-set formulations are non-compact,since jI j grows exponentially in the network size. One ofthe advantages of using compatible sets is that there isno need of treating time slots explicitly, as the optimiza-tion task boils down to determining how many time slotsa compatible set should be allocated within the whole cy-cle T ¼ sjT j – this number is simply proportional to zi

T . Thistype of approximation has been shown to be very accuratein [18]. Note that when the length T of the cycle grows, theapproximation will approach an integer optimum.

As an example of a compatible-set formulation, con-sider the problem solved in the first step of the MMF algo-rithm (maximization of a minimal flow) for the simplestWMN system considered in Section 4.1 defined by the setof constraints (5a), (6), (7), and (5d), i.e., for all DA/FI,and SA/FI with jMj ¼ 1.

max f ð17aÞ½a�

Xi2I

zi ¼ T ð17bÞ

½kd P 0� f 6 fd d 2 D ð17cÞce ¼

Xi2I

Beizi e 2 E ð17dÞ

½pe P 0�Xd2Qe

fd 6 ce e 2 E ð17eÞ

z P 0: ð17fÞ

In the above formulation, d 2 D are the demands (abbrevi-ated d = 1,2, . . . ,D earlier in this section), and Bei is the rateallocated to link e 2 E in compatible set i 2 I , i.e., either Bor 0, depending on whether link e is active or not in com-patible set i. The entities shown within the brackets denotethe dual variables. Note that the non-compactness of for-mulation (17) is implied by the exponential number of po-tential compatible sets.

The dual problem (for the notion of duality see forexample [31]) corresponding to the primal problem (17)with the current list of compatible sets I reads:

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 143

min aT ð18aÞXd2D

kd ¼ 1 ð18bÞXe2E

peBei 6 a i 2 I ð18cÞ

kd 6Xe2pd

pe d 2 D ð18dÞ

k;p P 0: ð18eÞLet a⁄,p⁄ be an optimal solution of the dual problem. A com-patible set is generated by solving the following problem:

maxXe2E

p�eBe ð19aÞXe2dðvÞ

Ye 6 1 v 2 V ð19bÞXe2dþðvÞ

Ye ¼ Xv v 2 V ð19cÞ

Zev P Ye þ Xv � 1 v 2 V; e 2 E ð19dÞZev 6 Ye; Zev 6 Xv v 2 V; e 2 E ð19eÞ

NYe þX

v2VnfaðeÞgPvbðeÞZev 6

1c

PaðeÞbðeÞYe e 2 E ð19fÞ

Be ¼ BYe e 2 E ð19gÞYe 2 f0;1g e 2 E: ð19hÞ

Above, Be is the rate allocated to link e in the optimizedcompatible set, i.e., either B or 0. The variables and con-straints have the same interpretation as in Section 4.1assuming only one time slot t (and hence skipping the sub-script t) as we are looking for a compatible set for an arbi-trary portion of time. If the result of the optimization isgreater than a⁄ then the generated compatible set definedby fe 2 E : Ye ¼ 1g is added to I as it may improve theoptimal primal solution.

Note that the generation of compatible sets for problemDA/FI (based on the link capacity model (10) from Sec-tion 4.4) is essentially the same. The only difference is thatin the compatible set generation subproblem (19), con-straints (19b)–(19g) should be substituted by their coun-terparts based on constraints from (10) involving index m.

For problem SA/FI (based on (9) from Section 4.3), the useof compatible sets becomes more complicated as it requiresadditional constants and variables to formulate an appropri-ate (non-compact) primal problem. Denote by um

vi a binaryconstant equal to 1 if, and only if, a compatible set i consistsof node v transmitting using MCS m. By xm

v denote a binaryvariable equal to 1 if node v can use MCS m, and 0 otherwise.Then the problem can be formulated as follows

max f ð20aÞ½a�

Xi2I

zi ¼ T ð20bÞ

½bmvi P 0� um

vizi 6 xmv T v 2 V; m 2M; i 2 I ð20cÞ

½fv P 0�X

m2Mxm

v 6 1 v 2 V ð20dÞ

½kd P 0� f 6 fd d 2 D ð20eÞce ¼

Xi2I

Beizi e 2 E ð20fÞ

½pe P 0�Xd2Qe

fd 6 ce e 2 E ð20gÞ

z P 0: ð20hÞ

Formulation (20) extends (17) with two additional con-straints (20c) and (20d) that let each node use only oneMCS. The problem dual to (20) reads:

min aT þXv2V

fv ð21aÞXd2D

kd ¼ 1 ð21bÞXe2E

peBei �Xv2V

Xm2M

bmv iu

mv i 6 a i 2 I ð21cÞ

kd 6Xe2pd

pe d 2 D ð21dÞXi2I

bmv iT 6 fv v 2 V; m 2M ð21eÞ

k;p P 0: ð21fÞ

Although formulation (21) looks more complicated than(18), it turns out that compatible sets are generated inthe same way as before, i.e., by solving (19). The reasonis that in an optimal dual solution all variables bm

vi can bemade equal to 0.

Solving (20) is much more complicated than solving(17), because it consists of binary variables and in conse-quence requires the branch-and-price approach [6,39].When at a certain node of the branch-and-bound tree avariable xm

v becomes fixed (to 0 or 1) then all the compat-ible sets used in the corresponding branch-and-bound sub-tree must obey this. This requires invoking a compatibleset generation procedure in each node of the branch-and-bound tree.

It is worth to notice that the compatible set generationproblem becomes a lot simpler when the simplified inter-ference model (SI) is used. In such a case, the generationproblem is just a well-known Maximum Weight Matchingextensively studied in the literature. Moreover, it wasproved that the scheduling scheme that solves MaximumWeight Matching can achieve optimal throughput perfor-mance, see [46] for the back-pressure scheme, and [36]for the max weight scheduling.

Certainly, for further steps of the MMF algorithm fromSection 5.1, the compatible set generation problem re-mains the same. However, since the compatible set formu-lations (as (17)) are linear, a more efficient MMF algorithmspecialized for convex MMF problems is applicable. Suchan algorithm is presented in Appendix B.

5.4. Practicability of the models’ solutions

Note that when solving (17) or (20) we obtain a vectorz⁄ of optimal periods of time each compatible set should beused. Then we may split the time z�i allocated to each com-patible set i among the time slots. If the number of timeslots jT j is large (recall that jT js ¼ T), then the resultingsolution will be an excellent approximation of an exactsolution of a corresponding problem involving time slotsas in the formulations of Section 4.

First note that the number of non-zero columns in anoptimal solution provided by the simplex algorithm cannotbe greater than the number of rows, which in case of (17) isjDj þ jEj þ 1. Assume that all paths have positive flowsf �d > 0; d 2 D, so all the columns corresponding to fd and a

144 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

column corresponding to f are non-zero. Thus only jEj ofthe other variables can be greater than zero. It implies thatno more than jEj compatible sets can be used in an optimalsolution.

Assume now that the optimal vector z⁄ and the numberof time slots jT j are given. It is easy to see that in order toobtain a vector z, such that zi P z�i and zi ¼ sL, (L non-neg-ative integer), for all i 2 I , we need at most jT j þ jEj � 1time slots. Analogously, to obtain a vector z for a vectorz, such that zi ¼ z�i

jT j�jEjþ1jT j , for all i 2 I , we need no more

than jT j time slots. Thus the result provided by the com-patible-set approach translated into a given number oftime slots cannot be farther than jEj�1

jT j � 100% from the

optimum.

6. A heuristic approach to SA/SI

The link capacity optimization space of WMNs, as intro-duced in Section 4, is described by a large number of inte-ger variables and is therefore hard to efficiently handle inoptimizations. Therefore, heuristic methods for WMN opti-mization are in place. In this section we describe a heuris-tic sub-optimal method, referred to as LBA (load basedalgorithm), for optimizing the MMF throughput in WMN,namely for solving problem SA/SI. LBA is a two phase algo-rithm. In the first phase (Section 6.1), LBA determines theassignment of MCSs to the links in a simple way called linkrate assignment (LRA). The resulting MCSs mðeÞ; e 2 E andthe corresponding link data rates Bm(e) are then used in thesecond phase (Section 6.2) for calculating the achievableMMF solution for given routing paths (recall that in thispaper the routing paths are fixed, see Section 5.1). TheLBA approach assumes that the obtained MMF solutioncan be achieved in a real WMN by some suitable transmis-sion scheduling protocol.

6.1. Phase 1: link rate assignment

Certainly, in problem SA/SI (and as matter of fact in SA/FI) assigning fixed MCSs mðeÞ; e 2 E to links should beoptimized as it not only influences the link data ratesBe ¼ BmðeÞ; e 2 E but also, through cm(e), the admissibleSINR ratios (3) (see Table 1). When active, a link which usesan MCS with a high data rate admits less concurrent trans-missions than a link which uses an MCS with a lower datarate [25]. In effect, providing links that communicate at thehighest possible data rate (although commonly assumed inthe literature, see for example [30,29]) may not be advan-tageous since an MCS with a smaller data rate used for linke would decrease the link rate Be, but at the same timewould increase the spatial reuse. This tradeoff should def-initely be considered in optimizations. If the use of somelink e simultaneously with a link in its neighborhood be-comes possible, this clearly increases the throughput ofthe end-to-end data flows. Thus, such a more conservativelink rate assignment strategy (i.e., to possibly use MCSsmaller than implied by dvw 6 dm, see Table 1) can beadvantageous for increasing the MMF network throughput[43], and also for the performance of a random accessWMN [44].

Contrary to exact optimization of the MCS assignmentwhich is difficult (as it requires exact solving of SA/SI), fix-ing reasonable MCSs in advance leads to a significant sim-plification of subsequent optimization of the MMFallocation vector. Hence, if this assignment is appropriatewe may expect that it will allow for near-optimal MMFallocation. Pre-selection of appropriate MCSs for the linksas a subproblem of the optimization problem SA/SI wasconsidered in a previous work [43,44]. Below we brieflysummarize this approach (called LRA) and assume thecomputed MCS for the second phase of LBA.

Consider a fixed link e 2 E and suppose that the trans-missions on all other links in the network are specified ateach time instant t. Let Ce(t) (see (3)) be the resulting SINRof link e. Then, an optimal MCS assignment mechanismwould clearly select the transmission m(e) at the highestdata rate that still allows to decode the transmitted signalsat any time instant t when link e is active (i.e.,Ce(t) 6 cm(e)). Following [47], define the link rate functionB (i.e., a function that maps the link SINR to the maximumlink data rate available through one of m 2M) as follows:

BðCeÞ ¼maxm2MfBm : cm

6 Ceg: ð22Þ

If the link rates are to be statically assigned before a WMNbecomes operational, such an LRA mechanism cannot beused since SINR is time varying (Ce = Ce(t), see (3)) andnot predictable in advance. In contrast, the SNR coefficient(C0e ¼

PaðeÞbðeÞN , see (2)) is a constant (depends on the constant

path gain only). Therefore, we alternatively could use thelink SNR for assigning data rates (MCS) to links throughthe equation

Be ¼ BðC0eÞ: ð23Þ

Clearly, (23) results in link data rates which are larger orequal to those computed by (22).

For a more conservative link rate assignment, i.e., amore robust MCS choice which enables a receiver to suc-cessfully decode a transmission despite a certain amountof interference, we use the link SNR together with the socalled interference buffer DCe. This quantity can be inter-preted as a safety margin to account for a certain amountof interference which realistically decreases the link rate.An interference buffer for link e 2 E guaranteeing the suc-cessful transmission on the link in the presence of interfer-ence would formally be given by

DCe ¼ max06t6T

CeðtÞC0e

: ð24Þ

A conservative link rate assignment strategy using theinterference buffer consists in replacing (23) by

Be ¼ maxm2M

Bm : cm6

C0eDCe

� �: ð25Þ

Using this function for link rate assignment would henceallow to transmit successfully in the presence of a numberof interfering nodes (using any DCe > 1 would increase thelikelihood of successful transmission with respect to (23)).Still, as DCe depends on the time-varying interference, it isnot known in advance and the values of DCe; e 2 E (equiv-alently, assignment of MCSs to links) should in fact be

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 145

optimized (with the MIP techniques applied to models ofSection 5). However, a simplified assignment of MCS tolinks achieved through specifying a suitable fixedDCe > 1; e 2 E would greatly simplify the subsequent opti-mization process, in effect transforming a multi-MCS prob-lem SA/SI to its single MCS counterpart (the only differencewould be that the fixed link rate values Be would in generalbe different for different links). Our previous results[43,44] indicate the usefulness of using a small interfer-ence buffer for the link rate assignment for all links, andhence this is the solution we use in LBA.

6.2. Phase 2: max–min fair throughput computation

In this subsection we present two algorithms of the LBAmethod for computing a MMF flow solution in the casewhen a selected single MCS m(e) is already fixed to eachlink e 2 E (which means that also the data rate of each linkis fixed to Be = Bm(e)). This assignment is done heuristicallyby means of the simple LRA method described in the pre-vious subsection. The two algorithms are referred to asnominal load based algorithm (NLBA), and effective loadbased algorithm (ELBA). Both NLBA and ELBA assume thesimplified interference model described in Section 4.5.

For the load computation, NLBA uses the notion of a col-lision domain [13,43]. A collision domain F e of link e 2 E

consists of the link e itself and all links g 2 E such thattransmission on g disturbs transmission on e or vice versa.Formally:

F e ¼ feg [ g 2 E n feg :PaðeÞbðeÞ

N þ PaðgÞbðeÞ< cmðeÞ

�_ PaðgÞbðgÞ

N þ PaðeÞbðgÞ< cmðgÞ

�: ð26Þ

For the same purpose, ELBA uses the notion of a maximal cli-que in the contention graphGc ¼ ðE;KÞ. The vertices ofGc arethe links e 2 E between the mesh nodes (possibly after dis-carding the links not used in the routing paths). An edgek 2 K between two links e; g 2 E exists if, and only if, thetwo links are contending, i.e., cannot be used in parallel[27]. We define X as the set of all maximal cliques in Gc. Ineach clique C 2 X one link may be used at any time instant.

As an example consider the collision domain F43 of linke = 43 in the example shown in Fig. 1a. For the sake of sim-plicity, we consider only the links which are used for routingpurposes and discard the rest. Consequently, assuming thatwe are to establish the flow 2 from gateway 1 to node 2, andthe flows 3 and 4 from gateway 5 to nodes 3 and 4, we con-sider only links 12, 54, and 43 (depicted by solid lines), anddiscard links 23, 32, 21, 34 and 45 as they are not used forrouting purposes. Assuming a realistic interference scenario,the collision domain of link 43 is F43 ¼ f43;54;12g.

The contention graph for the topology of Fig. 1a isshown in Fig. 1b. The corresponding set of maximal cliquesis given by X = {{12, 43}, {43, 54}}.

Fig. 1. Exemplary network topology and

The main (and virtually only) difference between thetwo algorithms is that NLBA uses the notion of the nominalload related to collision domains: Lnom

FðeÞ; e 2 E, while ELBAuses the notion of effective load related to maximalcliques: Leff

C ; C 2 X. These entities are defined as follows:

LnomF ðeÞ ¼

TPe2F ðeÞ

neBe

e 2 E ð27aÞ

LeffC ¼

TPe2C

neBe

C 2 X: ð27bÞ

In (27), ne denotes the number of routes traversing link e,i.e., jQðeÞj. Note that when Be is the same (and equal to B)

for all links, then LnomF e¼ TBP

e2Fene

and LeffC ¼ TBP

e2Cne.

NLBA assumes that only one link in a collision domaincan be active at a given time instant while ELBA assumesthis for a maximal clique. In either case the maximal flowthat can equally be assigned to the network routes (thesmallest value in the MMF allocation vector) is given by

f nom ¼ mine2E

LnomF e

; f eff ¼mine2C

LeffC : ð28Þ

We illustrate the difference again with the help of Fig. 1aassuming that all links have the data rate equal to B. Theminimum in the left part of (28) is achieved for F43 withP

e2F43ne ¼ 4 (flow 3 induces transmissions on two links

and flows 4 and 2 induce transmission on one link each). Thisresults in the nominal load of Lnom

F43¼ TB

4 and hence in the first

step of MMF we get f nom2 ¼ f nom

3 ¼ f nom4 ¼ 1

4 TB. Analogouslythe minimum of the right part of (28) is achieved for

C ¼ f43;54g with LeffC ¼ TB

3

Pe2Cne ¼ 3

� �and hence

f eff2 ¼ f eff

3 ¼ f eff4 ¼ 1

3 TB.Having computed the values in (28) we assign the

resulting flows to all routes in the network. We fix thecorresponding values in the MMF vector for all the routestraversing the selected bottleneck collision domain (NLBA)or clique (ELBA). Then we delete these routes from thenetwork and reduce the link data rates accordingly(Be: = Be � fnomne or Be: = Be � feffne). After that we repeatthe procedure to increase the flows on the remainingroutes to get the next value in the MMF vector, and soon. This procedure is a variant of the so called water-fillingalgorithm (see [16,35,39]).

In general, the nominal load (computed for a collision do-main of link e) is smaller than or equal to the effective load(of a maximal clique containing the link), as the latter ac-counts for the possibility that two links in a collision domaincan be used in parallel. In the example topology of Fig. 1a,transmissions on links 12 and 54 cannot take place simulta-neously with transmission on link 43, but they can take placein parallel to each other. The transmission from 4 to 3 couldthus be scheduled for 1

3 of the time. For 23 of the time, trans-

missions on 12 and on 54 can take place in parallel. Trans-mission on link 54 is split equally to the flow from 5 to 4and to the flow from 5 to 3. In effect, the final MMF allocation

corresponding contention graph.

146 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

computed with ELBA is f eff3 ¼ f eff

4 ¼ 13 B and f eff

2 ¼ 23 B while

with NLBA it does not change after the first step.An algorithm based on the effective LBA concept was

proposed in [13]. However, it is correct (i.e., gives an opti-mal MMF vector for a fixed MCS allocation) only for thecase of a tree-type mesh network with just one Internetgateway, as [13] does not show how to correctly computethe effective load for a general mesh network. Such a cor-rect computation is given in [45] (based on ideas from[27]) resulting in the method ELBA described above.

To conclude, for fixed mðeÞ; e 2M, NLBA is a sub-opti-mal heuristic method for computing optimal MMF flowallocations while ELBA, as discussed in [45] is exact. Thisin particular means that ELBA is an exact method for SA/SIwhen jMj ¼ 1. Still, in general computing maximal cliquesis an NP-complete problem what may become an issue forlarge networks. As already mentioned, both NLBA andELBA assume an idealistic channel access scheme guaran-teeing a specific scheduling of channel access to each nodethat would realize the calculated MMF flow.

7. Numerical study

In this section we present a numerical study illustratingcomputational efficiency of the optimization models dis-cussed in the previous sections and traffic efficiency (interms of the resulting MMF vector of flows allocated to de-mands) of various variants of the WMN systems.

The reported results were obtained from the LP and MIPmodels implemented using Visual C++ under Windows XP,and executed on a single core Intel 2.4 GHz CPU with3.92 GB RAM using the CPLEX 12.1 LP/MIP solver [28].The heuristics as well as the algorithms NLBA and ELBAwere implemented in MATLAB under Windows XP and exe-cuted on a dual core Intel 3.16 GHz CPU with 3.72 GB RAM.

In the numerical results we concentrate on four mainproblems, namely DA/FI, DA/SI, SA/FI, and SA/SI. We solvethem using two approaches:

TS – time slot approach that considers time as a discreteresource and takes into account a notion of timeslots; the approach is based on the MIP models ofSection 4.

CS – compatible-set approach that considers time as acontinuous resource and does not take into accounta notion of time slots; the approach, based on col-umn generation, is described in Section 5.3.

We compare running times of the algorithms and theresulting MMF vectors. Moreover, we investigate the im-pact of the number of possible MCSs on the results, and(in case of TS) the impact of the assumed number of timeslots. We also compare the optimal MMF vector with theresults provided by the LBA heuristics. Finally, we showhow introducing NS (node capacity split) influences theoptimal MMF vector and the running time of TS.

7.1. Example networks

Different variants of the MMF optimization problems(see Section 5.2) were solved for a number of randomly

generated example topologies shown in Fig. 2. Each ofthose topologies was generated using a grid with lengthdx of nx � ny points where each of the grid points is chosento be a mesh router or a mesh gateway with probability pr

and pg respectively. This methodology, based on a binomialpoint process on a grid, results in topologies that are likelyto occur in reality (it is common that there is a certain min-imal distance between the mesh nodes). As the topologicalcharacteristics may strongly influence the performance ofWMN and of our algorithms, we generate sparse and densetopologies in a square with length 750 and 1050 m, respec-tively. For the sparse topologies shown in Fig. 2a–d, theparameters dx = 25 m, nx = ny = 30 m and the probabilitiespr = 0.02 and pg = 0.003 are used. The dense topologies de-picted in Fig. 2e and f, are created with dx = 30 m,nx = ny = 30 m and the probabilities pr = 0.04 and pg = 0.006.

In Fig. 2, mesh routers are represented by circles andmesh gateways by squares. The routing topology abstractsa sophisticated mesh routing protocol, a methodologywhich has already been used in [43]. Paths rooted in thegateways are established by iteratively connecting theneighbor which is reachable with the highest link rate.Routing links are depicted by solid lines, all other linkse 2 E are depicted by dotted lines. For LBA, MCS assign-ment (shown in the figure) is done by means of the proce-dure discussed in Section 6.1 using DC = 1, i.e., each link euses the highest feasible link rate given the SNR betweenits end points. The resulting link rates are represented bycolors which are summarized by the legend shown inFig. 2a.

7.2. Computational efficiency

Below we discuss the running times obtained for differ-ent variants of the MMF problems. In Table 2, runningtimes of algorithms maximizing the minimum flow in thepresented models are shown. The first three columns ofthe table describe tested networks and contain: networkname, number of nodes, and number of links. The remain-ing eight columns contain running times of solving the fourconsidered problems (DA/FI, DA/SI, SA/FI, and SA/SI), all ap-proached with both TS and CS. Note that some results aremarked with an asterisk. Those are the cases that werenot solved within a time limit of 3 h. In the consideredcases, all eight MCSs were available, and the number oftime slots jT j for TS was set to ten.

The obtained results confirms the difficulty of the FIcases, thus justifying introducing the simplified interfer-ence model (SI). They also show that CS is in general supe-rior to TS in terms of the running time. An interestingobservation regarding this fact is that the SA cases seemto be much more difficult than the DA cases for CS. The rea-son is that they require a branch-and-price algorithm,while for TS a branch-and-cut algorithm is sufficient (notethat we were able to use a commercial B& C solver).

The time required for computing the MMF solution forthe LBA heuristics for all the considered topologies wasin the worst case equal to 90 s, and in most cases muchsmaller. Thus the running time for the heuristics is notexplicitly given in the following.

Fig. 2. Considered example networks.

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 147

Table 2Running times, where ‘‘3 h*’’ means not solvable within 3 h.

Network TS CS

Name jVj jEj DA SA DA SA

FI SI FI SI FI SI FI SI

Net1 12 10 3m50s <1s 3s 7s <1s <1s 7s <1sNet2 16 13 3h⁄ 58s 1h13m 17s <1s <1s 2m48s 1m12sNet3 21 17 3h⁄ 5s 3h⁄ 10s 7s 6s 19m59s 7m20sNet4 25 23 3h⁄ 3s 3h⁄ 30s 13s 11s 3h⁄ 3h⁄

Dense1 32 29 3h⁄ 11m28s 3h⁄ 39m33s 4m41s 35s 3h⁄ 3h⁄

Dense2 42 34 3h⁄ 3h⁄ 3h⁄ 48m53s 23m1s 56s 3h⁄ 3h⁄

Table 4Impact of the number of available MCSs.

# MCSs 1 2 3 4 5 6 7 8

Time 1s 18s 14s 26s 28s 1m3s 2m4s 3m50sResult 0.3 0.45 0.6 0.6 0.6 0.6 0.6 0.6

148 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

7.3. Traffic efficiency

In Table 3, the minimum flow for each case consideredin Table 2 is presented. Note that for SA/SI solved using CSthe results are presented in the following way: a(b), wherea is a result returned by the exact method, while b is thebest result provided by the heuristic methods of Section 6.As before, the cases that were not solved within a 3 h timelimit are marked with an asterisk.

As expected, the results obtained by CS are better thanthe results obtained by TS. This fact is self-explanatory. An-other fact that might have been considered obvious is thatresults for SI should have been better than those for FI. It isusually the case. However, when TS was taken into ac-count, simplifying the interference model was sometimesthe only way to obtain a non-zero feasible result. Thus,due to the inability to solve big problem instances for FImodels by MIP solvers, results provided for SI modelssound like a good alternative. Note that results found bythe heuristic method are better than the result found bythe exact methods for Dense1 and Dense2. The reason isthat the exact algorithm timed out, thus the solution it re-turned is not optimal.

In Table 4, the impact of the number of available MCSson the minimum flow and the running time is shown. Theimpact has been measured for Net1 network, DA/FI prob-lem, solved using TS with ten time slots. The MCSs were ta-ken from Table 1 in the order presented there, i.e., if oneMCS is available then it is the first one from the table, iftwo are available then they are the first two ones fromthe table, and so on.

As expected, both the running time of the algorithm andthe minimum flow increase with the number of availableMCSs. An interesting observation is that while the increasein time grows with the number of MCSs, the minimum

Table 3Maximal minimum flow, where ‘‘*’’ is the results obtained when the solution was

Network TS

Name jVj jEj DA SA

FI SI FI

Net1 12 10 0.6 0.6 0.6Net2 16 13 1.2⁄ 1.2 1.2Net3 21 17 1.2⁄ 1.2 0.9⁄

Net4 25 23 0.0⁄ 0.15 0.15⁄

Dense1 32 29 0.0⁄ 0.6 0.0⁄

Dense2 42 34 0.0⁄ 1.2⁄ 0.0⁄

flow rises significantly only in the beginning and seemsto converge when bigger numbers of MCSs are available.The reason is that MCSs with higher required SINR canbe used rarely in a network, thus their impact on the finalresult is limited. Note that in many cases an MCS with ahigh SINR cannot be used at all not because of the interfer-ences but solely because of the noise. This fact highlightsthe importance of the choice of the number of availableMCSs.

In Table 5, the impact of the number of time slots jT j onthe results and the running time is presented. The scenar-ios are as in the previous case, i.e., network Net1, DA/FIproblem, solved using TS. Note that in this case the numberof available time slots is changing from 3 to 12. The num-ber of available MCSs is constant and equal to 8. In the firstrow of the table the number of available time slots is pre-sented. The next row contains the running times of thealgorithm solving the considered instances of the problem,while in the last row the minimum flows obtained whilesolving the problems are shown.

Note that increasing the number of time slots does notalways result in the increase of the minimum flow. Thereason is that the increased number of time slots decreases (assuming constant T) and this may limit the amount ofdata transmitted in crucial time slots. Obviously, addingthe nth time slot cannot deteriorate the result by more than1/n.

In Table 6, the time needed to solve each MMF step tooptimality is presented together with the obtained optimal

stopped after 3 h.

CS

DA SA

SI FI SI FI SI

0.6 0.75 0.76 0.73 0.73 (0.66)1.2 1.62 1.65 1.5 1.5 (1.2)1.2 1.32 1.44 1.26 1.41 (1.19)0.15 0.22 0.23 0.21⁄ 0.22⁄ (0.22)0.6 0.92 0.99 0.72⁄ 0.74⁄ (0.80)1.2 1.57 1.70 1.25⁄ 1.26⁄ (1.44)

Table 5Impact of the number of available time slots.

# Time slots 3 4 5 6 7 8 9 10 11 12

Time 1s 1s 6s 8s 43s 40s 4s 3m50s 4m23s 5m22sResult 0.0 0.25 0.4 0.5 0.51 0.6 0.67 0.6 0.55 0.6

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 149

result and results returned by the heuristic methods pre-sented in Section 6. In this case Net2 network was used,and SA/SI case was solved using CS. In order to solve the fullMMF problem, the algorithm of Section 5 was employed.

In the first row of the table, the number of the consid-ered step of the algorithm, i.e., d in Algorithm 1, is shown.The next row presents the time needed to solve the step ofthe first row to optimality. The following three rows con-tain results returned by the three considered algorithms,i.e., exact algorithm of Section 5.2, and two heuristic ap-proaches (ELBA, NLBA) of Section 6. The results should beread as follows. The first column contains the minimumflow, the second column contains the second minimumflow, etc. The results show that the two heuristics do notprovide optimal solutions. Thus, as far as it is possible withrespect to the running time, the exact approach should beused in order to solve the problem. Note that the timeneeded to solve the consecutive steps of Algorithm 1 de-creases. The reason is that the feasible region is continu-ously diminished by adding constraints (16d), and aconstraint resulting from (16a) after each step of thealgorithm.

In Table 7, the impact of NS on the results and the timeis presented. In this case all the networks from Table 2were used, and DA/SI/NS case was solved using TS withten available time slots. Note that the NS case cannot besolved with the form of CS described in Section 5.3.

It is clearly visible in the table that NS adds difficulty tothe problem. The algorithm solving the problem with NSreached the 3 h time limit in three test cases out of six,while it reached the time limit only once for the case with-out NS. On the other hand, in two test cases the result pro-vided for NS were significantly better (>10%) than thecorresponding results for the case without NS.

7.4. Practical hints on problem solving

The difficulty of the considered problems lays in thepresence of a significant number of binary variables inthe formulations. Usually it is possible to reduce theirnumber, as the integrity of some of them is implied bythe integrity of others. Fortunately, in the considered casesthe integrity of all binary variables is imposed by the integ-rity of link variables, i.e., Yet ; ym

et; Ye in case of the column

Table 6Results for algorithms providing the full MMF vector.

MMF step 1 2 3 4 5 6

Time 72s 55s 55s 59s 59s 65sOptimal 1.5 1.5 1.5 1.5 1.5 1.5ELBA 1.2 1.2 1.2 1.2 1.2 1.2NLBA 0.9 0.9 0.9 0.9 0.9 0.9

generation, and yme in SA case solved using CS. Thus, the

integrity of all other variables, i.e., Xvt ; xmvt ; Zm

v , and zevt,can be relaxed.

The branch-and-price approach for solving (20) wasimplemented in C++. The branch-and-price tree was tra-versed using the depth-first search (DFS) algorithm. Theorder of links in DFS was set with respect to the priority,which for link e was computed as:Xv2V

PvaðeÞ þ PvbðeÞ:

Each node of the tree, together with a procedure generat-ing interesting compatible sets, was solved using CPLEX.

7.5. Summary of the numerical study

A numerical study illustrating computational efficiencyof the optimization models discussed in the previous sec-tions and traffic efficiency (in terms of the resulting MMFvector of flows allocated to demands) of various variantsof the WMN systems has been presented. We have concen-trated on four problems: DA/FI, DA/SI, SA/FI, and SA/SI. Theproblems have been solved using two approaches: TS andCS. Running times of the algorithms and the quality ofthe obtained MMF vectors have been compared, showingthat CS outperforms TS in both running time and the qual-ity of the solution. Also, the impact of the number of pos-sible MCSs on the results, and (in case of TS) the impactof the number of available time slots has been discussed.

We also compared the optimal MMF vector to resultsprovided by our heuristic approaches. The results clearlyshow that there is a space for improvements in this field,and the gap should be filled by more efficient heuristicmethods that are able to optimize the link rate assignmentand the time of usage of each link in some kind of interlac-ing way.

Finally, we showed how introducing NS influences theoptimal MMF vector and the running time of TS. Our re-sults confirm that NS can be desirable from the point ofview of the objective function, at least for a small numberof time slots (we can expect that the gain from NS willgradually disappear with increasing jT j). However, intro-ducing NS significantly increases the running times.

7 8 9 10 11 12 13

71s 35s 10s 3s 3s 1s 1s1.5 2.4 2.4 2.4 2.7 7.94 7.941.2 2.58 2.58 2.58 2.58 8.49 8.492.33 3.27 3.27 3.27 3.27 9.47 9.47

Table 7Impact of the node capacity split.

Name Without NS With NS

Time Result Time Result

Net1 <1s 0.6 38s 0.7Net2 58s 1.2 1h6m 1.35Net3 5s 1.2 3h⁄ 1.2Net4 3s 0.15 12m50s 0.15Dense1 11m28s 0.6 3h⁄ 0.6Dense2 3h⁄ 1.2 3h⁄ 1.2

150 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

8. Conclusion

The paper is devoted to WMN modeling using mixed-integer programming (MIP) formulations that allow to pre-cisely characterize the link data rate capacity space andtransmission scheduling within time slots. Such MIP mod-els have been formulated for several strategies of the mod-ulation and coding schemes (MCS) assignment. On top ofthat we have presented a general way of solving theMMF traffic objective for WMN and used it for the formu-lated capacity models. This is a novel feature of the paper.We have discussed several ways of solving the consideredMMF problems (compact MIP formulations based on timeslots, non-compact LP/MIP formulations based on compat-ible sets, heuristic methods). We have made an extensivenumerical study that illustrates the running time efficiencyof the different solution approaches, and the influence ofthe MCS selection options (static, dynamic, node capacitysplit) and the number of time slots on the traffic perfor-mance of a WMN.

As for the running times, a general conclusion is thatthe exact approaches (especially those based on generationof compatible sets) are quite effective and can be appliedeven to network examples of realistic sizes (especiallywhen combined with the simplified interference model).When the exact approach fails, the heuristics (for staticMCS allocation) can be used since in practice they indicateshort running times. Still, the heuristics tend to underesti-mate the MMF vector and need some improvement of thefirst phase (allocation of MCSs to links).

As for the traffic performance, dynamic MCS allocation(DA) seems to be only slightly better than static allocation(SA). Adding the node capacity split feature increases thetraffic performance (for small number of time slots) buton the expense of increased running times. We have alsoinvestigated the influence of the number of MCS and thenumber of time slots on the MMF vector. It seems that lim-iting the number of MCS and time slots is acceptable. Weobtained the same results for the case with three MCSsand the case with eight MCSs. What is more, the resultfor nine time slots was only 10% away from the theoreticalmaximum obtained for an infinite number of time slots(the case equivalent to CS).

Basically, the presented approach assumes (abstract)time slots and provides the transmission plan for each slot.In practice, the calculated schedule should somehow berealized in a network. One such solution would be toimplement a centrally preplanned transmission schedulingby means of TDMA. This aspect, however, has not beenstudied in the paper – it needs a considerable effort in

terms of further research. This in particular concerns ourheuristics, as they do not even use the notion of a time slot.Another direction of further research is the improvementof the MIP models formulated in Section 4 to make themapplicable to larger network instances. This can beachieved by introducing additional cuts and other meansof integer programming.

Acknowledgments

While preparing the paper, the cooperation of Di Yuanand Michał Pióro was supported by the eLLIIT projectfunded by the Swedish Foundation for Strategic Research.The cooperation of Barbara Staehle, Dirk Staehle, M. Pióroand Mateusz _Zotkiewicz was supported by the FP7 Net-work of Excellence Euro NF. M. _Zotkiewicz (and partly M.Pióro) was supported by the Polish Ministry of Scienceand Higher Education (Grant No. N517 397334 ‘‘Optimiza-tion Models for NGI Core Networks’’). M. Pióro was alsopartly supported by the Swedish Research Council (GrantNo. 621-2006-5509 ‘‘Modeling and Design of Core InternetNetwork’’). The work of Barbara Staehle and Dirk Staehlewas funded by the Federal Ministry of Education and Re-search of the Federal Republic of Germany (Förderkennzei-chen 01 BK 0800, GLab).

Appendix A. Derivation of formulation (15)

Consider a fixed, given (criteria) vector f ¼ðf1; f2; . . . ; fDÞ 2 RD. Let [f] = ([f]1,[f]2, . . . , [f]D) denote theversion of f sorted in the non-decreasing order and letthe cumulated optimization criteria vector F = (F1,F2, . . . ,FD)be defined by Fd = [f]1 + [f]2 +� � �+ [f]d, d = 1,2, . . . ,D. We willshow that each such cumulated criterion Fd (for a fixed d,1 6 d 6 D) can be expressed as the solution of a linearprogramming problem in continuous variables b and gj,j = 1,2, . . . ,D (see Section 4.2 of [38] and the referencestherein):

Fd ¼max db�XD

j¼1

gj

( )ðA:1aÞ

b 6 fj þ gj j ¼ 1;2; . . . ;D ðA:1bÞgj P 0 j ¼ 1;2; . . . ;D: ðA:1cÞ

The fact that the optimal objective (A.1a) does indeed ex-press the sum of the d smallest elements of f can be verifiedintuitively. The formal proof is as follows.

Consider the following binary minimization problem:

z ¼minXD

j¼1

fjuj ðA:2aÞ

XD

j¼1

uj ¼ d ðA:2bÞ

uj 2 f0;1g j ¼ 1;2; . . . ;D: ðA:2cÞ

The minimal objective z0 defined in (A.2a) is equal to Fd be-cause according to (A.2b) each feasible vector of variables ucontains exactly d entries uj being equal to 1, and in the

M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152 151

optimal solution u⁄, the entries u0j ¼ 1 will correspond to

the first d smallest entries in vector f.Moreover, we can relax the binarity of the variables and

solve the corresponding linear program in continuous uwith constraint 0 6 uj 6 1, j = 1,2, . . . ,D instead of (A.2c):

minXD

j¼1

fjuj ðA:3aÞ

½b�XD

j¼1

uj ¼ d ðA:3bÞ

½gj P 0� uj 6 1 j ¼ 1;2; . . . ;D ðA:3cÞuj P 0 j ¼ 1;2; . . . ;D: ðA:3dÞ

The quantities in brackets are the dual variables corre-sponding to the constraints. It is now a straightforwardexercise to see that the problem dual to (A.3) is exactlythe problem formulated in (A.1).

Appendix B. MMF algorithm for the CS formulations

Algorithm 2. (Algorithm for problem (17))

Input: A procedure for generating compatible sets.Output: MMF solution f 0 ¼ ðf 0

1 ; f02 ; . . . ; f 0

D Þ and the corre-sponding optimal capacities c0.

Step 0: Set B ¼ ; (the set of blocking demands).Step 1: Solve (through CS generation) the linear

program:

max F ðB:1aÞF 6 fd d 2 D n B ðB:1bÞfd ¼ f 0

d d 2 B ðB:1cÞXi2I

zi ¼ T ðB:1dÞ

ce ¼Xi2I

Beizi e 2 E ðB:1eÞXd2Qe

fd 6 ce e 2 E ðB:1fÞ

z P 0 ðB:1gÞ

(where D ¼ f1;2; . . . ;Dg).Step 2: Denote the resulting optimal objective by F0 and

the optimal values of dual variables correspond-ing to (B.1b) by k0

d; d 2 D n B. Put f 0d ¼ F0; d 2

fd2DnB : k0d >0g and B :¼B[fd2DnB : k0

d >0g.Step 3: If BˆD come back to Step 1. Otherwise, stop:

f 0 ¼ ðf 01 ; f

0d ; . . . ; f 0

D Þ and the last optimized capaci-ties c0 compose the optimal solution.

The correctness of Algorithm 2 follows from the convexityof problem (B.1), non-negativity of kd ðd 2 D n BÞ, the dualconstraint

Pd2DnBkd ¼ 1, and the complementary slackness

property. For details the reader is referred to Chapter 8 in[39] (see also [35,38]).

References

[1] Bay Area Wireless Users Group. <http://www.bawug.com>.[2] Belair Networks. <http://www.belairnetworks.com>.

[3] Nortel. <http://www.nortel.com>.[4] Seattle Wireless. <http://www.seattlewireless.net>.[5] Tropos Networks. <http://www.tropos.com>.[6] R.K. Ahuja, T.L. Magnanti, J.B. Orlin, Network Flows: Theory,

Algorithms, and Applications, Prentice Hall, 1993.[7] I.F. Akyildiz, X. Wang, A survey on wireless mesh networks, IEEE

Communications Magazine 43 (9) (2005) 23–30.[8] I.F. Akyildiz, X. Wang, W. Wang, Wireless mesh networks: a survey,

Computer Networks 47 (4) (2005) 445–487.[9] H.M.K. Alazemil, A. Das, R. Vijaykumar, S. Roy, Fixed channel

assignment algorithm for multi-radio multi-channel meshnetworks, Wireless Communications and Mobile Computing 8(2008) 811–818.

[10] M. Alicherry, R. Bhatia, L.E. Li, Multi-radio, multi-channel communi-cation: joint channel assignment and routing for throughput opti-mization in multi-radio wireless mesh networks, in: ProceedingsACM MobiCom (Cologne, Germany), August 2005.

[11] E. Amaldi, A. Capone, M. Cesana, F. Malucelli, Optimization modelsfor the radio planning of wireless mesh network, Lecture Notes inComputer Science (4479) (2007) 287–298.

[12] E. Ancillotti, R. Bruno, M. Conti, Design and performance evaluationof throughput-aware rate adaptation protocols for IEEE 802.11wireless networks, Elsevier Performance Evaluation 66 (10) (2009)811–825.

[13] B. Aoun, R. Boutaba, Max–min fair capacity of wireless meshnetworks, in: Proceedings of IEEE MASS, 2006, Vancouver, Canada.

[14] B. Aoun, R. Boutaba, Y. Iraqi, G. Kenward, Gateway placementoptimization in wireless mesh networks with QoS constraints, IEEEJournal in Selected Areas in Communications 24 (11) (2006) 2127–2136.

[15] W. Ben-Ameur, H. Kerivin, New economical virtual private networks,Communications of the ACM 46 (6) (2003) 69–73.

[16] D. Bertsekas, R. Gallager, Data Networks, Prentice Hall, 1992.[17] J. Bicket, D. Aguayo, S. Biswas, R. Morris, Architecture and evaluation

of an unplanned 802.11b mesh network, in: Proceedings of ACMMobiCom, Cologne, Germany, 2005.

[18] P. Björklund, P. Värbrand, D. Yuan, A column generation method forspatial TDMA scheduling in ad hoc networks, Ad Hoc Networks 2 (4)(2004) 405–418.

[19] R. Bruno, M. Conti, E. Gregori, Mesh networks: commodity multihopad hoc networks, IEEE Communications Magazine 43 (3) (2005)123–131.

[20] J. Camp, J. Robinson, C. Steger, E. Knightly, Measurement drivendeployment of a two-tier urban mesh access network, in:Proceedings of ACM MobiSys, Uppsala, Sweden, 2006.

[21] A. Capone, G. Carello, I. Filippini, S. Gualandi, F. Malucelli, Routing,scheduling and channel assignment in wmn networks: optimi-zation, models and algorithms, Ad Hoc Networks (8) (2010) 545–563.

[22] C. Chekuri, Routing and network design with robustness to changingor uncertain traffic demands, SIGACT News 38 (3) (2007) 106–129.

[23] A.K. Das, H.M.K. Alazemi, R. Vijayakumar, S. Roy, Optimizationmodels fixed channel assignment in wireless mesh networks withmultiple radios, in: Proceedings of IEEE SECON, Santa Clara, CA, USA,2005.

[24] M. Genetzakis, V. Siris, A contention-aware routing metric for multi-rate multi-radio mesh networks, in: Proceedings of IEEE SECON(Boston, MA, USA), June 2008.

[25] A. Goldsmith, Wireless Communications, Cambridge UniversityPress, 2005.

[26] G.R. Hiertz, S. Max, E. Weiss, L. Berelmann, D. Deteneer, S. Mangold,Mesh technology enabling ubiqitous wireless network, in:Proceedings of WICON, Boston, MA, USA, 2006.

[27] X.L. Huang and B. Bensaou, On max–min fairness and scheduling inwireless ad-hoc networks: Analytical framework andimplementation, in: Proceedings of MobiHoc, Long Beach, CA, USA,2001.

[28] ILOG, Cplex 12.1 User’s Manual, ILOG, 2009. <ftp://ftp.software.ibm.com/software/websphere/ilog/docs/optimization/cplex/ps_usrmancplex.pdf>.

[29] T.S. Kim, H. Lim, J.C. Hou, Improving spatial reuse through tuningtransmit power carrier sense threshold, and data rate in multihopwireless networks, in: Proceedings of MobiCom, Los Angeles, CA,USA, 2006.

[30] M. Lacage, M.H. Manshaei, T. Turletti, IEEE 802.11 rate adaptation: apractical approach, in: Proceedings of MSWiM (Venice, Italy),October 2004.

[31] L. Lasdon, Optimization Theory for Large Systems, MacMillan,1970.

152 M. Pióro et al. / Ad Hoc Networks 13 (2014) 134–152

[32] M.J. Lee, J. Zheng, Y-B. Ko, D.M. Shrestha, Emerging standards forwireless mesh technology, IEEE Wireless Communications 13 (2)(2006) 56–63.

[33] X. Lin, N.B. Shroff, Joint rate control and scheduling in multihopwireless networks, in: Proceedings of IEEE Conference on Decisionand Control, Atlantis, Paradise Island, Bahamas, 2004.

[34] J. Mo, J. Walrand, Fair end-to-end window-based congestion control,IEEE/ACM Transactions on Networking 8 (2000) 556–567.

[35] D. Nace, M. Pióro, Max–min fairness and its applications to routingand load-balancing in communication networks – a tutorial, IEEECommunications Surveys and Tutorials 10 (4) (2008) 5–17.

[36] M.J. Neely, E. Modiano, C. Li, Fairness and optimal stochastic controlfor heterogeneous networks, in: Proceedings of IEEE INFOCOM(Miami, FL, USA), March 2005.

[37] P. Nilsson, M. Pióro, Solving dimensioning tasks for proportionallyfair networks carrying elastic traffic, Performance Evaluation 49(2002) 371–383.

[38] W. Ogryczak, M. Pióro, A. Tomaszewski, Telecommunicationsnetwork design and max–min optimization problem, Journal ofTelecommunications and Information Technology (3) (2005) 1–9.

[39] M. Pióro, D. Medhi, Routing, Flow, and Capacity Design inCommunication and Computer Networks, Morgan Kaufman, 2004.

[40] M. Pióro, B. Staehle, D. Staehle, Di Yuan, Optimization Models forMesh Networks Involving Max–Min Fairness, Tech. Report,Department of Electrical and Information Technology, LundUniversity, Sweden, April 2010. <www.eit.lth.se/staff/michal.pioro/reports/meshed.pdf>.

[41] A. Raniwala, K. Gopalan, T.C. Chiueh, Centralized channel assignmentand routing algorithms for multichannel wireless mesh networks,ACM Mobile Computing and Communications Review 8 (2) (2004)50–65.

[42] S. Sen, R.D. Doverspike, S. Cosares, Network planning with randomdemand, Telecommunication Systems 3 (1994) 11–30.

[43] B. Staehle, D. Staehle, R. Pries, Effects of link rate assignement on themax–min fair throughput of wireless mesh networks, in:Proceedings of ITC (Paris, France), September 2009.

[44] B. Staehle, D. Staehle, R. Pries, Effects of link rate assignment in IEEE802.11 mesh networks, in: Proceedings of European WirelessConference (Lucca, Italy), April 2010.

[45] D. Staehle, B. Staehle, R. Pries, Max–min fair throughput in multi-gateway multi-rate mesh networks, in: Proceedings of IEEE VTC(Taipei, Taiwan), May 2010.

[46] L. Tassiulas, A. Ephremides, Stability properties of constrainedqueueing systems and scheduling policies for maximumthroughput in multihop radio networks, IEEE Transactions onAutomatic Control 37 (12) (1992) 1936–1948.

[47] S. Toumpis, A. Goldsmith, Capacity regions for wireless ad hocnetworks, IEEE Transactions on Wireless Communications 2 (4)(2003) 736–748.

[48] R. Vannier, I. Lassous, Towards a practical and fair rate allocation formultihop wireless networks based on simple node model, in:Proceedings of MSWiM (Vancouver, British Columbia, Canada),October 2008.

[49] P.-J. Wan, Multiflows in multihop wireless networks, in: Proceedingsof MobiHoc, New Orleans, LA, USA, May 2009.

[50] X. Zhou, L. Hang (Eds.), Resource Management and Routing inWireless Mesh Network, Computer Communications, vol. 31, 2008,pp. 1255–1258.

Michał Pióro is a professor and head of theComputer Networks and Switching Division atthe Institute of Telecommunications, WarsawUniversity of Technology, Poland, and a pro-fessor at Lund University, Sweden. Hereceived the Ph.D. degree in telecommunica-tions in 1979 and the D.Sc. degree in 1990,both from the Warsaw University of Tech-nology. In 2002 he received a Polish StateProfessorship. His research interests concen-trate on modeling, design and performanceevaluation of telecommunication systems. He

is an author of four books and more than 150 technical papers presentedin the telecommunication journals and conference proceedings. He has

led many research projects for telecom industry in the field of networkmodeling, design, and performance analysis. He is deeply involved ininternational research projects including FP7, Celtic and COST projects.

Mateusz _Zotkiewicz is an assistant professorat the Computer Networks and SwitchingDivision at the Institute of Telecommunica-tions, Warsaw University of Technology,Poland. He received the M.Sc. degree in tele-communications in 2007 from Warsaw Uni-versity of Technology, and the Ph.D. degree in2011 from Warsaw University of Technologyand Telecom SudParis, France. His researchinterests concentrate on modeling and designof telecommunications networks.

Barbara Staehle is a research assistant at theChair of Communication Networks at theUniversity of Wnrzburg, Germany. Shereceived the Diploma degree in computerscience and mathematics from University ofWürzburg in 2005. From 2005–2006 she hasbeen with Telecommunications ResearchCenter Vienna, Austria, where she has beenworking on the performance analysis of P2Pbased applications. Her main research interestis the simulative and analytical performanceevaluation and optimization of wireless sen-

sor and mesh networks.

Dirk Staehle is an assistant professor at theChair of Communication Networks at theUniversity of Würzburg, Germany. Hereceived the Diploma degree in computerscience in 1999 and the PhD degree in com-puter science in 2004 both from the Univer-sity of Würzburg. He has lead multipleindustry cooperations in the field of GPRS,UMTS, and HSPA radio network planning withT-Mobile International, France Telecom R&D,and Vodafone Netherlands. His main researchinterests are on wireless networks including

analytic modeling and simulation of wireless networks, radio networkplanning, (application layer aware) radio resource management, andsource traffic modeling of wireless applications. A second research topic

are P2P networks, where he is interested in modeling and optimizing P2Poverlays.

Di Yuan received his M.Sc. degree in com-puter science and engineering, and Ph.D.degree in optimization at Linköping Instituteof Technology, Sweden, in 1996 and 2001,respectively. At present he is a full professorin telecommunications at the Department ofScience and Technology, Linköping University,and head of a research group in mobile tele-communications. He has published over 70refereed articles in international journals andconferences. His research interests spandesign, analysis, and resource optimization of

telecommunication systems. He has been guest professor at TechnicalUniversity of Milan (Politecnico di Milano), Italy, and visiting scientist atRanplan Wireless Network Design Ltd, United Kingdom. In 2011 he works

part time at Ericsson Research, Sweden.