Approximate Aggregate Utility Maximization in Multi-Hop Wireless Networks using Distributed Greedy Scheduling
AApproximate Aggregate Utility Maximization in Multi-HopWireless Networks using Distributed Greedy Scheduling
Albert Sunny a , Joy Kuri ∗ ,a , Nachiket Sahasrabudhe b a Centre for Electronics Design and Technology,Indian Institute of Science, Bangalore-560012, India b Computational Research Laboratories,Pune-411030, India
Abstract
In this paper, we study the performance of greedy scheduling in multihop wireless networks,where the objective is aggregate utility maximization. Following standard approaches, weconsider the dual of the original optimization problem. We note that the dual can be solvedoptimally, only with the knowledge of the maximal independent sets in the network. Butcomputation of maximal independent sets is known to be NP-hard. Motivated by this,we propose a distributed greedy heuristic to address the problem of link scheduling. Weevaluate the effect of the distributed greedy heuristic on aggregate utility maximization indetail, for the case of an arbitrary graph. We provide some insights into the factors affectingaggregate utility maximization in a network, by providing bounds on the maximum aggre-gate utility. We give simulation results for the approximate aggregate utility maximizationachieved under distributed implementation of the greedy heuristic and find them close tothe maximum aggregate utility obtained using optimal scheduling.
Key words: cross-layer optimization, distributed scheduling, (cid:15) -subgradient, greedyscheduling
1. Introduction and Related Work
We consider a wireless multihop mesh network in which some nodes are sources of traffic.Each source node is assumed to have an infinite backlog of traffic that is to be sent to adestination node. Further, each source is equipped with a utility function that is concaveincreasing in the average data rate that it can push through the network. We are interestedin obtaining a distributed cross-layer scheme for joint congestion control, routing and linkscheduling, such that the aggregate utility is maximized.Aggregate utility maximization seeks to strike a balance between high total throughputand fairness. At one extreme, a solution may maximize the sum of throughputs. However, ∗ Corresponding author
Email addresses: [email protected] (Albert Sunny), [email protected] (JoyKuri ), [email protected] (Nachiket Sahasrabudhe)
Preprint submitted to Elsevier November 23, 2018 a r X i v : . [ c s . N I] D ec n such a solution, some sources may see very low throughputs even though the sum ofthroughputs is maximized. At the other extreme, a solution may be max-min fair, in whichthe smallest throughput is as large as possible, and, among such solutions, the secondsmallest is as large as possible, and so on. But, such a solution may lead to a low value ofaggregate throughput. The aggregate utility maximization approach lies in between theseextremes.Research into scheduling, routing and congestion control is several decades old, but hasseen a lot of activity following the seminal paper of Tassiulas and Ephremides. The literaturecan be classified into two broad groups. In the first group, traffic arrives into the networkaccording to some specified random processes that cannot be controlled and the objectiveis to find the “capacity region” i.e., the largest set of arrival vectors for which a schedulingand routing policy can be found ensuring stable operation [1, 2, 3, 4, 5, 6].In the second group, each source equipped with a utility function has an infinite backlogof data to send and the objective is to maximize aggregate utility. Following the importantpaper of Kelly, Maulloo and Tan [7], researchers have addressed the issue of obtainingdistributed controls to achieve the objective. The basic idea is that the network will providecongestion signals to the sources (in the form of “prices”), and the sources will modifytheir data rates accordingly. The original problem is shown to decompose into severalsubproblems, viz., congestion control, routing and scheduling, and the objective is to finddistributed solutions to each [8, 9, 10, 11, 12]. We consider a problem that belongs to thesecond group above.This programme was later carried out for wireless networks, where the additional aspectof wireless link scheduling appeared [2, 13, 9, 14, 11, 15, 16, 17].The main results of this paper can be summarized as follows: • We develop a distributed greedy heuristic for the scheduling problem under the K -hoplink interference model. • We show that the distributed greedy heuristic leads to an (cid:15) -subgradient which can beused to solve the problem of aggregate utility maximization. • Further, we evaluate the effect of the sub-optimal greedy schedule by looking at theconvergence properties of the (cid:15) -subgradient method. • We also provide some insights into the factors affecting aggregate utility maximizationin a network, by providing bounds on the maximum aggregate utility.
2. System Model and Mathematical Formulation
We assume the network to be a directed graph G = ( N , L ), where N represents the setof nodes in the network and L represents the set of wireless links in the network. As in [1],we assume that a bidirectional wireless link ( i, j ) ∈ L exists in the network, if nodes i and j l ∈ L has a capacitydenoted by C l . Let C = max l ∈L C l i.e., C represents the maximum link capacity in the network. Now, we can represent thecapacity of a link l ∈ L as C l = α l · C where 0 < α l ≤ α l ’s are dimensionless and we formulate the problem in terms of these dimensionlessquantities. Let F denote the set of all end-to-end multihop flows present in the network.For each flow f ∈ F , s ( f ) and d ( f ) represent the source and destination nodes of the flow f respectively. We assume that the source nodes have an infinite backlog of data. Let x f denote the data rate associated with the flow f and y fl denote the part of the flow f thatis carried by the link l . Let y f = ( y fl ) , l ∈ L be a vector representing the part of flow f carried by each link in the network.In this paper, we model the inter-link interference using the K -hop link interferencemodel. Here, we reproduce some definitions from [18] in order to define the interferencemodel. Definition 1.
Let d S ( x, y ) denote the shortest distance (in terms of number of links) be-tween nodes x, y ∈ N . Define a function d : ( L , L ) → N as follows: For links l u =( u , u ) , l v = ( v , v ) ∈ L , let d ( l u , l v ) = min i,j ∈{ , } d S ( u i , v j )In the K -hop link interference model, we assume that any two links l and l for which d ( l , l ) < K , will interfere with each other and hence cannot be active simultaneously.A maximal independent set of links ( I ), is a set of links in which no two links of the set I interfere with each other under the given interference model and no other link can be added tothe set I without violating the interference constraints. We represent a maximal independentset of links I by a column vector r I of size |L| . If a link l ∈ I , then r I ( l ) is α l ; else it is 0.We represent the collection of all the maximal independent sets by the matrix M , columnsof which are the r I s . Let there be J maximal independent sets present in the network.We represent a schedule associated with them by a J sized column vector a , where the i th entry represents the fraction of time the independent set represented the i th column of thematrix M is active. We associate a strictly concave, twice differentiable, increasing utilityfunction U ( x f ) with every end-to-end flow f ∈ F . We also assume U (0) to be less thanor equal to zero. Such an assumption is natural, because it asserts that, if a source is notable to sustain a positive rate of data transfer, then the “utility” for that source is a finitenon-positive value.Let A be the |N | × |L| node-link incident matrix. Then, the formal representation of3he problem is as follows: max x f ≥ , a ≥ (cid:88) f ∈F U ( x f )Subject to : Ay f = u f , ∀ f ∈ F (1) x f ≤ , ∀ f ∈ F (2) (cid:88) f ∈F y f ≤ Ma (3) J (cid:88) k =1 a k = 1 (4)where u f represents a N -sized column vector such that u f ( s ( f )) = x f , u f ( d ( f )) = − x f andall other entries are zero. Here, the first constraint ensures flow conservation at every nodein the network. The second constraint ensures that the data rates of the flows are less thanor equal to the maximum link capacity in the network. The next constraint, representedby Equation (3) ensures that the aggregate flow on each link is less than or equal to theeffective capacity of the link. The fourth constraint ensures that there are no idle slots inthe schedule. The primal optimization problem is a convex optimization problem with affine con-straints. By applying Slater’s condition [19], it can be shown that this problem has noduality gap. To obtain a solution in a distributed manner, we consider the dual problem asin [7, 8]. The capacity constraints given by Equation (3) are relaxed to obtain the Lagrangevariables. These Lagrange variables behave as link prices and we represent them by a vector p . Now, the dual problem associated with the primal problem can be stated as follows:min p ≥ D ( p )where D ( p ) = max x f ≥ , a ≥ (cid:32)(cid:88) f ∈F (cid:0) U ( x f ) − p T ( y f − Ma ) (cid:1)(cid:33) (5)Subject to : Ay f = u f , ∀ f ∈ F x f ≤ , ∀ f ∈ F J (cid:88) k =1 a k = 14e note that given a price vector p , the RHS of Equation (5) can be written as a sum oftwo functions of price vector p i.e., D ( p ) = D ( p ) + D ( p )Here, D ( p ) corresponds to the congestion control and routing problem , whereas D ( p )represents the link scheduling problem .
3. Congestion Control and Routing Subproblem D ( p ) = max x f ≥ (cid:88) f ∈F U ( x f ) − |L| (cid:88) i =1 p i y fi Subject to: Ay f = u f , ∀ f ∈ F x f ≤ , ∀ f ∈ F For a given vector of link prices p , each source solves the problem of how much traffic tosend into the network so as to maximize its net utility. Since the maximum value that x f can attain is 1, we can obtain the optimal value of x f as x f = min { U (cid:48)− ( p ( f )) , } (6)where p ( f ) is cost of the least-priced path between s ( f ) and d ( f ) for a given p . Since all thelink capacities are normalized with respect to C , the x f obtained from Equation 6 representsthe data rate normalized with respect to C . Hence, the actual rate at which traffic is to beinjected into the network is given by x f · C . The least-priced path for a flow f can be foundby using a modified Distributed Bellman-Ford algorithm, which uses the link price as themetric in place of hop count. If there are multiple least-priced paths, then the traffic can besplit among them in any arbitrary manner.
4. Scheduling Subproblem D ( p ) = max a ≥ p t c Subject to: c = (cid:88) I r I a I and (cid:88) I a I = 1It can be shown that for a given vector of link prices p , the solution to this problem is toschedule an independent set of “maximum aggregate capacity-weighted price” [19] i.e., a5aximal independent set of links I opt is the optimal solution if I opt = arg max I (cid:32)(cid:88) l ∈I α l p l (cid:33) Thus, an optimal scheduling vector a opt ( p ) has all its entries zero, except the one correspond-ing to an independent set with maximum aggregate “ capacity-weighted price ”. Computingthe optimal schedule requires knowledge of all the maximal independent sets in the networkand is known to be NP-hard [18]. Hence, it is difficult to realize the same in a distributedmanner for an adhoc network. We employ a distributed greedy heuristic to obtain a dis-tributed solution for the links scheduling problem. We denote the schedule obtained usingthe distributed greedy heuristic by a dgrd ( p ). In this section, we consider a centralized greedy heuristic and examine the possibility ofimplementing the same in a distributed manner. Here, we present the Greedy Heuristic.
Algorithm 1
Centralized Greedy Heuristic Set W := φ and i := 1. Arrange the links of L in descending order of capacity-weighed price (i.e., α l p l ), startingwith l , l , .... If W ∪ l i is a valid K -matching, then, W := W ∪ l i , i = i + 1. Repeat Step 3 for all links in L .Here, a set of edges W is a valid K -matching if ∀ l , l ∈ W with l (cid:54) = l , we have d ( l , l ) ≥ K .In [20], the authors have shown that the Greedy Maximal Schedule (GMS) achievesthe full capacity region in tree networks under the K -hop interference model and that theworst-case efficiency ratio of GMS in geometric unit-disc graphs is between and .Next, we present a distributed version of the greedy heuristic. The algorithm for thedistributed greedy heuristic is described below and is implemented at every node n ∈ N . Figure 1: Slot division of the distributed greedy algorithm.
The algorithm is described in terms of the messages exchanged between nodes in eachslot of the m th ROUND and the decisions that are made at the slot boundaries after thecompletion of the given slot. Together, the
SEND LINK PRICES slot, the
SEND MARKEDLINKS slot and the
SEND STATUS slot constitute a
ROUND as shown in Figure 1.6ach link l can have four possible states namely OPEN (O) , CHECK (CH) , MARKED(M) and
CLOSED (CL) . A link l ∈ L is called an “attached link” of node n ∈ N , if node n is an end point of the link l and the link l is directed outwards from node n . Initially, alllinks are set to OPEN , the algorithm status set is to
DO NOT TERMINATE and m is setas 1. Algorithm 2
Pseudo-code for Distributed Greedy Heuristic
In slot S mL Find the highest capacity-weighed priced (i.e., α l p l ) link among all the OPEN attachedlinks and disseminate this information over the ( K + 1)-hop neighbourhood. At time T mL if at least one attached link is OPEN then sort the OPEN attached links in descending order of their respective capacity-weighed price. Let l (cid:48) max be the maximum capacity-weighed priced link among the attached OPEN links. if no capacity-weighed prices are received from the (K+1)-hop neighbours then link l (cid:48) max is MARKED and all other
OPEN attached links are
CLOSED and go to 17. else sort the received OPEN links in descending order of their respective capacity-weighed price. Let l max be the maximum capacity-weighed priced link among thereceived OPEN links. end if if ( p l (cid:48) max > p l max ) then link l (cid:48) max is MARKED and all other
OPEN attached links are
CLOSED . else for all OPEN attached link l , do if ( d ( l, l max ) < K ) then link l is set to CHECK . end if end for end if end if The links that are
MARKED are the maximum capacity-weighed priced links in theircorresponding ( K + 1) hop neighbourhoods. Also, the links that are moved to the CLOSED state are certain to have a
MARKED link within K hop link distance. If a link moves to MARKED or CLOSED state in
ROUND m , it will continue to remain in that state until thealgorithm terminates ( i.e., these states are absorbing states). These links will not participatein price dissemination in the subsequent ROUND s. Links that are in the
MARKED statewill be scheduled, upon termination of the algorithm. The reason for introducing a
CHECK
Algorithm 2
Pseudo-code for Distributed Greedy Heuristic
In slot S mM if any of the attached links is MARKED then disseminate this information to the ( K + 1)-hop neighbourhood. end if At time T mM for each attached link l in state CHECK , do if ( d ( l, received MARKED link) < K )) for at least one received
MARKED link then link l is CLOSED . else link l remains in CHECK state. end if end for OPEN the highest capacity-weighed priced attached
CHECK link. Algorithm status is set to
TERMINATE at nodes which have no
OPEN or CHECK links.During the price dissemination slot, links will move into
CHECK state if they see ahigher- capacity-weighed priced interfering link, but are unable to decide if such a link willget
MARKED . In the
SEND MARKED LINKS slot,
CHECK links get to know if there isindeed a higher capacity-weighed priced
MARKED link interfering with it. If so, the link in
CHECK state is
CLOSED . Algorithm 2
Pseudo-code for Distributed Greedy Heuristic
In slot S mT if at least one attached link is OPEN or in
CHECK then send a DO NOT TERMINATE message to all nodes in the ( K +1)-hop neighbourhood. else if a DO NOT TERMINATE message is received then send a DO NOT TERMINATE message to all nodes in the ( K + 1)hop neighbourhood. end if At time T mT if no DO NOT TERMINATE message is received then the algorithm has terminated, schedule all MARKED links. else go to the ( m + 1) th ROUND . end if OPEN or CHECK state.In the above slot, this information is conveyed to all the other nodes in the network in adistributed manner. This makes sure that the algorithm terminates in a synchronous fashionat each node.Next, we illustrate the working of our distributed greedy heuristic under a 2-hop linkinterference model with a couple of examples. First, let us consider a linear network with 7nodes as shown in Figure 2. For data transfer, only links (1,2), (2,3), (3,4), (4,5), (5,6) and(6,7) are considered; but control traffic can flow in the opposite direction too. In Table 1,we show the link states against the time when different decisions are made.
21 3 4 5 6 71.0 0.9 0.8 0.7 0.6 0.5
Figure 2: An example to illustrate the distributed greedy scheduling algorithm.
T (1,2) (2,3) (3,4) (4,5) (5,6) (6,7)0
O O O O O O T L M CH CH CH CH CH T M M CL CL O O O T L M CL CL M CH CH T M M CL CL M CL CL
Table 1: Table showing the states of the links in Figure 2 against the various slots of the distributed greedyscheduling algorithm.
In the first
ROUND , only link (1,2) is
MARKED . All other links see a higher capacity-weighed priced interfering link and thus move into the
CHECK state. Then, link (1,2)announces it is
MARKED . Upon reception of this information, links (2,3) and (3,4) are
CLOSED , since they interfere with link (1,2). But all other links are moved to
OPEN , sincethey do not find any interfering
MARKED link. This process repeats until the networkhas no
OPEN or CHECK links. The set of links that are scheduled after the algorithmterminates, are shown in bold, in Figure 3.
21 3 4 5 6 71.0 0.9 0.8 0.7 0.6 0.5
Figure 3: Figure showing scheduled links (in bold) using distributed greedy scheduling on the example inFigure 2.
Next, we consider a 7 node linear network shown in Figure 4.As in the previous example, we show the link states against the time when differentdecisions are made in Table 2In this example, the highest capacity-weighed priced link is located in the middle of thenetwork. As a result, more links are moved into the
CLOSED state after the first
ROUND .9 Figure 4: Another example to illustrate the distributed greedy scheduling algorithm.
T (1,2) (2,3) (3,4) (4,5) (5,6) (6,7)0
O O O O O O T L O CH CH M CH CH T M O CL CL M CL CL T L M CL CL M CL CL T M M CL CL M CL CL
Table 2: Table showing the states of the links in Figure 4 against the various slots of the distributed greedyscheduling algorithm.
The only remaining
OPEN link, i.e., link (1,2), is
MARKED in the subsequent
ROUND .The set of links that are scheduled after the algorithm terminates, are shown in bold, inFigure 5.
21 3 4 5 6 71.0 0.9 0.8 1.2 0.7 0.6
Figure 5: Figure showing selected links (in bold) using distributed greedy scheduling on the example inFigure 4.
One can compute the centralized greedy schedule for the above examples easily and verifythat the distributed greedy schedule matches it.
In this section, we show analytically that the distributed greedy heuristic schedules thesame set of links as the centralized greedy heuristic. These results are from our previouswork [21], but are included here for completeness.
Lemma The algorithm terminates in finite time.
Proof.
In Appendix A.Let us assume that no two links have equal capacity-weighted prices i.e., ∀ i, j ∈ L , p i α i (cid:54) = p j α j ; or in other words, we have a unique way of breaking tie among equal capacity-weighted priced links. Lemma For every link i CLOSED before ROUND m , there must be at least one linkMARKED before ROUND m , that interferes with it. Proof.
In Appendix A. 10he additional
CHECK state helps to resolve ambiguities that arise in deciding the highest capacity-weighted priced link based on information from a local neighbourhood. If a link i sees an interfering higher capacity-weighted priced link in its neighbourhood, it will moveinto CHECK state. Such a link, will subsequently move to the
CLOSED state, if it receivesan announcement to
CLOSE from an interfering higher capacity-weighted priced
MARKED link. Now, we would like to formally show that the introduction of
CHECK state does notalter the performance of the algorithm.
Lemma At the beginning of a ROUND, consider the globally highest capacity-weightedpriced link among links that are neither CLOSED nor MARKED; such a link will not be inCHECK state. Or, it can be restated as; at the end of a round, the highest capacity-weightedpriced CHECK link is OPENed.
Proof.
In Appendix A.
Theorem The distributed greedy algorithm and the centralized greedy algorithm schedulethe same links.
Proof.
In Appendix A.Next, we quantify the deviation of our distributed greedy schedule from the optimal one.
Definition 2. [18] The K -hop interference set of a link l ∈ L , denoted by I K ( l, L ), is theset of links m ∈ L such that d ( l, m ) < K .We call a subset D of I K ( l, L ) “ K-maximal ”, if no link m ∈ I K ( l, L ) \ D can be added to D , without violating the interference constraints. In other words, for all m ∈ I K ( l, L ) andall n ∈ D , d ( m, n ) < K . Definition 3. [18] The K -hop interference degree of a link l ∈ L , denoted by d K ( l ), isdefined as d K ( l ) = max S ⊆ I K ( l, L ): D is K − maximal |D| Definition 4. [18] The K -hop interference degree of a graph G ( N , L ), denoted by d K ( G ),is defined as d K ( G ) = max l ∈L d K ( l )For a given price vector p , let S opt ( p ), S grd ( p ) and S dgrd ( p ) represent the aggregate capacity-weighted prices of the independent sets corresponding to the optimal schedule,greedy schedule and distributed greedy schedule, respectively. From Theorem 1, we knowthat S dgrd ( p ) = S grd ( p ). Substituting this in a theorem from [18], we have Theorem S opt ( p ) S dgrd ( p ) ≤ d K ( G ) Further, there exists a graph G for which the above ratio is exactly d K ( G ) . Proof.
We refer to Theorem 5 in [18]. 11 . (cid:15) -Subgradient Method In order to solve the dual problem, we have to minimize the dual objective function D ( p ). The natural strategy would be to consider the negative gradient and take a smallstep in that direction. However, we notice that D ( p ) is not differentiable in p everywhere.This raises the possibility of using subgradients. Lemma D ( p ) is a convex function of p . Proof.
In Appendix B.
Definition 5. [22] Given a convex function D ( p ) : R n → R , we say that a vector h ( p ) ∈ R n is a (cid:15) -subgradient of D ( p ) at point p ∈ R n , if D ( p ) ≥ D ( p ) − (cid:15) + ( p − p ) T h ( p ) , ∀ p ∈ R n . Proposition For the given price vector p , the price updation rule leads to an (cid:15) ( p ) -subgradient h ( p ) associated with price vector p , given by h ( p ) = c dgrd ( p ) − y ( p ) and (cid:15) ( p ) = p T ( c opt ( p ) − c dgrd ( p )) where the l th entry of c dgrd ( p ) is α l if link l is present in the distributed greedy schedule a dgrd ( p ) associated with the price vector p , else it is zero; the l th entry of c opt ( p ) is α l iflink l is present in the optimal schedule a opt ( p ) associated with the price vector p , else it iszero; further, the l th entry of y ( p ) represents the aggregate flow on link l ∈ L when the pricevector is p . Proof.
In Appendix B.The (cid:15) -subgradient method can be used to generate a sequence of dual feasible pointsaccording to the iteration [22] p [ j + 1] = ( p [ j ] − δ · h ( p [ j ])) + Here, ( x ) + = max( x,
0) and δ is the constant step size associated with the subgradientalgorithm. Hence, we update the price of link l going from the j th to the ( j + 1) th iterationusing the following equation: p l [ j + 1] = ( p l [ j ] + δ ( y l [ j ] − c l [ j ])) + (7)where y l [ j ] represents the aggregate flow on link l in the j th iteration obtained from theoptimal solution of the routing and congestion control problem. If link l is part of thedistributed greedy schedule for the given price vector p [ j ] in the j th iteration, then c l [ j ]takes the value α l , else it is zero.Next, we provide a theorem that helps us establish a bound on the deviation of theapproximately maximized aggregate utility from the maximum aggregate utility achievable.Since it has been shown in [10], that the subgradient method with constant step size resultsin oscillations in “steady-state” (limit cycles), we only look at the convergence of the dualin the cesaro sense and not in the strict sense.12 heorem If lim j →∞ (cid:15) ( p [ j ]) ≤ (cid:15) and || h ( p [ j ]) || ≤ H < ∞ ∀ j , then D ( p ∗ ) ≤ lim j →∞ j j − (cid:88) τ =0 D ( p [ τ ]) ≤ D ( p ∗ ) + δH (cid:15) where p ∗ is an optimal solution to the dual problem D ( p ) . Proof.
In Appendix B.Theorem 3 tells us that the average of the dual function obtained using the distributedgreedy algorithm lies in a band above the optimal dual value.
6. Conclusion and Future Work
The scheduling problem is known to be a bottleneck in the cross-layer optimizationapproach. We have relax the optimality requirement and proposed a distributed greedyheuristic that schedules an independent set of links. Further, we have also quantified theeffect of the sub-optimal distributed greedy heuristic by established. Even though we boundthe performance of the distributed greedy scheduling in Theorem 3, it seems that one canobtain a tighter bounds atleast for specific type of networks. We would also like to addressthis problem in our future work.
References [1] L. Tassiulas and A. Ephremides, “Stability properties of constrained queuing systems and schedulingpolicies for maximum throughput in multihop radio networks,” in
IEEE Transactions on AutomaticControl, vol.37, no.12, pp. 1936-1948 , August 1992.[2] A. Stolyar, “Maximizing queuing network utility subject to stability:greedy primal-dual algorithm,” in
Queuing Systems vol.50, no.4,pp.401-457 , 2005.[3] R. Buche and H.J. Kushner, “Control of mobile communication systems with time-varying channels,”in
IEEE Transactions on Automatic Control, vol.49, no.11, pp. 1954 - 1962 , November 2004.[4] S. Shakkottai and A. Stolyar, “Scheduling of a shared time varying channel:the exponential rule sta-bility,” in
INFORMS Applied Probability Conference , New York, July 2001.[5] ——, “Scheduling for multiple flows sharing a time varying channel: The exponential rule,” in
Trans-actions of AMS , 2001.[6] A. Andrews, K. Kumaran, K. Ramanan, A. Stolyar, P. Whiting, and K. Vijaykumar, “Providing qualityof service over a shared wireless link,” in
IEEE Communications Magazine vol.39,pp.150-153 , February2001.[7] F.P. Kelly, A. Maullo, and D. Tan, “Rate control in communication networks:shadowprices,proportional fairness and stability,” in
J.Oper.Res.Soc.,vol. 49 , 1998, pp. 237–252.[8] L. Chen, S. Low, and J. Doyle, “Joint congestion control and media access control design for ad hocwireless networks,” in
Proceedings of IEEE Infocom , March 2005.[9] L. Chen, S.H. Low, M. Chiang, and J.C. Doyle, “Cross-layer congestion control,routing and schedulingdesign in ad hoc wireless networks,” in
Proceedings of IEEE Infocom , 2006.[10] F.L. Presti, “Joint congestion control, routing and media access control optimization via dual decompo-sition for ad hoc wireless networks,” in
Proceedings of the 8-th International Symposium on Modeling,Analysis and Simulation ofWireless and Mobile Systems (MSWiM) , Montreal, Canada, October 2005.
11] X. Lin, N.B. Shroff, and R. Srikant, “A tutorial on cross-layer optimization in wireless networks,” in
IEEE Journal on Selected Areas in Communication,vol.24 no. 8 , August 2006.[12] X. Lin and N.B. Shroff, “The impact of imperfect scheduling on cross-layer congestion control in wirelessnetworks,” in
IEEE/ACM Transactions on Networking, vol. 14, no. 2, pp 302-315 , April 2006.[13] L. Bui, A. Eryilmaz, R. Srikant, and X. Wu, “Joint asynchronous congestion control and distributedscheduling for multihop wireless networks,” in
Proceedings IEEE Infocom , 2006.[14] L. Tan, X. Zhang, L.L.H. Andrew, and M. Zukerman, “Price-based max-min fair rate allocation inwireless multi-hop networks,” in
IEEE Communication Letters, vol. 10, no. 1, pp31-33 , January 2006.[15] A. Eryilmaz and R. Srikant, “Joint congestion control, routing and mac for fairness and stability inwireless networks,” in
IEEE Journal on Selected Areas in Communications, vol. 24, no. 8, pp1514-1524 ,August 2006.[16] A. Gupta, X. Lin, and R. Srikant, “Low complexity distributed scheduling algorithms for wirelessnetworks,” in
Proceedings of IEEE Infocom , 2007.[17] A. Eryilmaz and R. Srikant, “Fair resource allocation in wireless networks using queue-length-basedscheduling and congestion control,” in
Transactions on Networking, vol. 15, no. 6, pp1333-1344 , De-cember 2007.[18] G. Sharma, R.R. Mazumdar, and N.B. Shroff, “On the complexity of scheduling in wireless networks,”in
Proceedings of ACM MobiCom , September 2006.[19] S. Boyd and L. Vandenberghe,
Convex Optimization . Cambridge University Press, 2004.[20] C. Joo, X. Lin, and N. B. Shroff, “Understanding the capacity region of the greedy maximal schedulingalgorithm in multi-hop wireless networks,” in
IEEE/ACM Trans. on Networking, vol. 17, no. 4, pp.1132–1145 , August 2009.[21] Albert Sunny and Joy Kuri, “Distributed greedy scheduling for multihop wireless networks,” in
Pro-ceedings of IEEE MeshTech , Sanfrancisco, USA, November 2010.[22] D. Bertsekas,
Nonlinear Programming . Athena Scientifics, 2003.
Appendix A.
Let L mO be the set of OPEN links before
ROUND m .Let L mC be the set of CLOSED links before
ROUND m .Let L mH be the set of CHECK links before
ROUND m .Let L mM be the set of MARKED links before
ROUND m . Proof of Lemma 1
Proof.
If the set L mO is null, the algorithm terminates. Hence, we note that there is atleast one OPEN link at the beginning of each round. Let l m = arg max l ∈L mO p l α l be the global maximum- capacity-weighted priced link before ROUND m . Since the capacity-weighted price of this link among all the OPEN attached links is the highest, it is also thelocal maximum among the
OPEN attached links received from the ( K + 1)-hop neighbour-hood. Thus link l m gets MARKED . Since a
MARKED link will always remain in the samestate, if l ∈ L mM , then l ∈ L kM , ∀ k ≥ m + 1 = ⇒ L mM ⊆ L m +1 M l m , l m ∈ L mO = ⇒ l m / ∈ L mM But from the previous argument, link l m gets MARKED in ROUND m + 1. Thus l m ∈ L m +1 M and l m / ∈ L mM = ⇒ L mM ⊂ L m +1 M (8)Since a link CLOSED in ROUND m , will remain CLOSED for the subsequent
ROUND s,we have if l ∈ L mC , then l ∈ L kC , ∀ k ≥ m + 1 = ⇒ L mC ⊆ L m +1 C (9)Now from (8) and (9) we have L mC ∪ L mM ⊂ L m +1 C ∪ L m +1 M At all times, a link l can be in one of the four states, i.e., ∀ m, L mC ∪ L mM ∪ L mO ∪ L mH = L From the above two argument, L m +1 O ∪ L m +1 H ⊂ L mO ∪ L mH Since the number of links in set L is finite, there exists a t < ∞ , such that L tO ∪ L tH = { φ } Thus the algorithm terminates in finite number of
ROUND s and thus in finite time. (cid:3)
Proof of Lemma 2
Proof.
Assume that there is no such j ∈ L mM for some i ∈ L mC . Then the link i would nothave received any MARKED link that interferes with it, in slot S m − M (Algorithm 2, At time T mM , lines 5, 6). Then, this would imply that either link i would be OPEN ed or would be in
CHECK . i.e., i ∈ L mH ∪ L mO = ⇒ i / ∈ L mC But this is a contradiction. Thus there exists a link j ∈ L mM , such that d ( i, j ) < K . (cid:3) Proof of Lemma 3
Proof.
Let us assume that there is no j ∈ L mO for some i ∈ L mH , such that α i p i < α j p j .This would imply that α i p i > α j p j , ∀ j ∈ L mO . Since link i ∈ L mH , we can say that a link k ,such that α k p k > α i p i and d ( k, i ) = 0 was OPEN ed at time T m − M (Algorithm 2, At time T mM , line 8). Since link k was OPEN ed at time T m − M , k ∈ L mO . Let α i p i > α j p j , ∀ j ∈ L mO α k p k > α i p i , Thus α k p k > α j p j , ∀ j ∈ L mO = ⇒ k / ∈ L mO But this is a contradiction to the statement that k ∈ L mO . Thus ∀ i ∈ L mH , α i p i < α j p j , for some j ∈L mO . Let αp mmax = max l ∈L ,l / ∈L mM ∪L mC α l p l = max l ∈L mO ∪L mH α l p l = max (max k ∈L mO α k p k , max l ∈L mH α l p l )Let i = arg max l ∈L mH α l p l It is evident that i ∈ L mH . Thus from the previous claim, there exists a j ∈ L mO such that α j p j > α i p i i.e., α j p j > max l ∈L mH α l p l Also max k ∈L mO α k p k ≥ α j p j > max l ∈L mH α l p l Hence αp mmax = max k ∈L mO α k p k Thus arg αp mmax ∈ L mO . (cid:3) Proof of Theorem 1
Proof.
Let L C be the set of links CHOSEN by the centralized greedy algorithm.Let the set L C be ordered and indexed in the decreasing order of link capacity-weighted priceas { l , l , ..., l v ... } .Let the distributed greedy algorithm terminate after t ROUND s. Let L t +1 M be the set of MARKED links after the termination of the algorithm.We need to prove that every link
CHOSEN by the centralized greedy algorithm is
MARKED by the distributed greedy algorithm, by the time it terminates i.e., L C ⊆ L t +1 M .We will prove the above claim via induction. Induction statement:
If links l , l , ..., l k ∈ L C then l , l , ..., l k ∈ L t +1 M . Basis:
To show the statement holds for the globally maximum capacity-weighted priced link.Let link l ∈ L C be the globally maximum capacity-weighted priced link. Thus, thislink will also be a local maximum among interfering links in a ( K + 1)-hop neighbourhood.Hence, this link will be MARKED after the 1 st ROU N D . i.e., l ∈ L M . Since MARKED is16n absorbing state, l ∈ L t +1 M . Now, let us define I ( y ) = { l ∈ L : d ( l, y ) < K } as the set of links that interfere with link y . Let L k +1 = L − ∪ ki =1 ( l i ∪ I ( l i ))be the set of links left after links { l , l , ...l k } are CHOSEN . Let ∀ l ∈ L k +1 , P ( l ) = { l (cid:48) ∈ L k +1 : d ( l, l (cid:48) ) < K, α l (cid:48) p l (cid:48) > α l p l } (10)It is obvious that for link L k +1 to be CHOSEN , P ( l k +1 ) = { φ } . Inductive step: If l , l , ..., l k ∈ L t +1 M given that l , l , ..., l k ∈ L C , then if l k +1 ∈ L C then l k +1 ∈ L t +1 M . Since l , l , ..., l k ∈ L t +1 M , for each i ∈ { , , ..., k }∃ m i ≤ t + 1 : l i ∈ L m i M , l i / ∈ L sM for s < m i Since
MARKED is an absorbing state, l i ∈ L rM , ∀ m i ≤ r ≤ t + 1Let ∀ l ∈ L mO , P m ( l ) = { l (cid:48) ∈ L mO : d ( l, l (cid:48) ) < K, α l (cid:48) p l (cid:48) > α l p l } We note that link l is MARKED in ROUND m , if P m ( l ) = { φ } . Let m (cid:48) = k max i =1 m i It is easy to see that before the end of
ROUND m (cid:48) , links { l , l , ...l k } are MARKED and thelinks that interfere with these links are
CLOSED . Thus L m (cid:48) O ⊆ L − ∪ ki =1 ( l i ∪ I ( l i )) ⊆ L k +1 (11)Now, P m (cid:48) ( l k +1 ) = { l (cid:48) ∈ L m (cid:48) O : d ( l k +1 , l (cid:48) ) < K, α l (cid:48) p l (cid:48) > α l k +1 p l k +1 } ∀ l k +1 ∈ L m (cid:48) O From (10) and (11), we can say that P m (cid:48) ( l k +1 ) ⊆ P ( l k +1 )17ince l k +1 ∈ L C , P ( l k +1 ) = { φ } . Thus P m (cid:48) ( l k +1 ) ⊆ { φ } = ⇒ P m (cid:48) ( l k +1 ) = { φ } Now, since the algorithm terminates after t ROUND s, L t +1 O ∪ L t +1 H = { φ } ∴ l k +1 / ∈ L t +1 O = ⇒ m (cid:48) (cid:54) = t + 1Thus link l k +1 gets MARKED in ROUND m (cid:48) ≤ t . Thus link l k +1 gets MARKED beforethe algorithm terminates. Therefore, ∀ l ∈ L C , l ∈ L t +1 M = ⇒ L C ⊆ L t +1 M Now, let us assume that LHS is a strict subset of RHS, i.e., L C ⊂ L t +1 M Then there exists a link l i such that l i / ∈ L C but l i ∈ L t +1 M . Since l i ∈ L t +1 M , we can say that d ( l, l i ) ≥ K, ∀ l ∈ L t +1 M Since L C ⊂ L t +1 M , d ( l, l i ) ≥ K, ∀ l ∈ L C If the above was true, then l i ∈ L C . But this contradicts our assumption that L C ⊂ L t +1 M .Thus LHS can not be a strict subset of RHS.= ⇒ L C = L t +1 M (cid:3) Appendix B
Proof of Proposition 1
Proof.
Let p , p ∈ R L + . Let x f ( p ) and y f ( p ) represent the optimal flow rate and optimalrouting vector of a flow f ∈ F respectively. y ( p ) represents a L sized column vector, l th entry of which indicates the aggregate traffic of all the flows carried by the link l for the18rice vector p , i.e., (cid:80) f ∈F y f ( p ). Then at p we have the following: D ( p ) = (cid:80) f ∈F U ( x f ( p )) − p T ( y ( p ) − c opt ( p )) ≥ (cid:80) f ∈F U ( x f ( p )) − p T ( y ( p ) − c dgrd ( p )) ≥ (cid:80) f ∈F U ( x f ( p )) − p T ( y ( p ) − c opt ( p )) − ( p − p ) T ( y ( p ) − c dgrd ( p )) − p T ( c opt ( p ) − c dgrd ( p )) ≥ D ( p ) + ( p − p ) T ( c dgrd ( p ) − y ( p )) (12) − p T ( c opt ( p ) − c dgrd ( p ))From the definition of the (cid:15) -subgradient, we have D ( p ) ≥ D ( p ) − (cid:15) + ( p − p ) T h ( p ) (13)By comparing Equation 12 and Equation 13, we can write h ( p ) = c dgrd ( p ) − y ( p )Also note that p T ( c dgrd ( p ) − c opt ( p )) is always a positive quantity, thus we can write (cid:15) ( p ) = p T ( c opt ( p ) − c dgrd ( p )) (cid:3) Proof of Theorem 3
Proof.
Let p ∗ be the optimal price vector of the dual problem. From the price updateequation, we have p [ j + 1] = ( p [ j ] + δ ( y [ j ] − c [ j ])) + Equivalently, || p [ j + 1] − p ∗ || ≤ || p [ j ] + δ ( y [ j ] − c [ j ]) − p ∗ || = || p [ j ] − p ∗ || + δ || y [ j ] − c [ j ] || +2 δ ( p [ j ] − p ∗ ) T ( y [ j ] − c [ j ]) (14)From the definition of an (cid:15) -subgradient, we have D ( p ) ≥ D ( p ) − (cid:15) + ( p − p ) T h ( p ) , ∀ p ∈ R n Hence, we have( p [ j ] − p ∗ ) T ( y [ j ] − c [ j ]) ≤ − ( D ( p [ j ]) − D ( p ∗ ) + (cid:15) ( p [ j ])) (15)19enceforth, we represent (cid:15) ( p [ j ]) as (cid:15) j for convenience. Substituting Equation (15) in Equa-tion (14), we get || p [ j + 1] − p ∗ || ≤ || p [ j ] − p ∗ || + δ || y [ j ] − c [ j ] || − δ ( D ( p [ j ]) − D ( p ∗ ) + (cid:15) j )Applying the inequalities recursively, we obtain || p [ j + 1] − p ∗ || ≤ || p [1] − p ∗ || + δ (cid:80) jτ =1 || y [ τ ] − c [ τ ] || − δ ( (cid:80) jτ =1 ( D ( p [ τ ]) − D ( p ∗ )) + (cid:80) jτ =1 (cid:15) τ )Since || p [ j + 1] − p ∗ || ≥ , ∀ j , we get2 δ j (cid:88) τ =1 ( D ( p [ τ ]) − D ( p ∗ )) ≤ || p [1] − p ∗ || + δ j (cid:88) τ =1 || y [ τ ] − c [ τ ] || + j (cid:88) τ =1 (cid:15) τ Since we assume that || y [ τ ] − c [ τ ] || = || h ( p [ τ ]) || ≤ H , we havelim j →∞ sup 1 j j − (cid:88) τ =0 ( D ( p [ τ ]) − D ( p ∗ )) ≤ δH j →∞ sup 1 j j − (cid:88) τ =0 (cid:15) τ Since we assume that lim j →∞ (cid:15) j ≤ (cid:15) , there exists j such that (cid:15) j ≤ (cid:15), ∀ j ≥ j . Therefore,for large enough j , we havelim sup j →∞ j j (cid:88) τ =1 (cid:15) τ ≤ lim sup j →∞ j j (cid:88) τ =1 (cid:15) τ + lim sup j →∞ ( j − j ) j (cid:15) = (cid:15) (cid:3)(cid:3)