Greedy Scheduling in Multihop Wireless Networks A Technical Report by Nachiket Sahasrabudhe Adviser: Prof. Joy Kuri Centre for Electronics Design and Technology(CEDT) INDIAN INSTITUTE OF SCIENCE BANGALORE - 560 012, INDIA August 2008 Contents Abstract 1 Greedy scheduling Algorithm 1.1 Background . . . . . . . . . . . . . . . 1.1.1 Primal optimization problem . 1.1.2 Dual problem . . . . . . . . . . 1.1.3 The overall scheme . . . . . . . 1.2 Our work . . . . . . . . . . . . . . . . 1.2.1 Greedy heuristic: Bound on the 1.2.2 Greedy heuristic: -subgradient 1.3 Numerical evaluation . . . . . . . . . . 1.4 Conclusion . . . . . . . . . . . . . . . 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . maximum . . . . . . . . . . . . . . . . . . Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . link price . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 5 6 7 8 9 11 12 13 13 1 List of Figures 1.1 1.2 1.3 1.4 1.5 An example illustrating variation of optimal xf under different values of Smin . . Network G1 . Flow is present between following pairs of nodes:(0, 4), (5, 1), (3, 6). Network G2 . Flow is present between following pairs of nodes:(0, 1), (5, 4), (6, 1). Utility functions under optimal and greedy schedules in both the cases . . . . . . pmax remains bounded in both the cases . . . . . . . . . . . . . . . . . . . . . . . 2 . . . . . . . . . . . . . . . . . . . . 10 13 13 14 14 LIST OF FIGURES 3 Abstract We study the performance of greedy scheduling in multihop wireless networks where the objective is aggregate utility maximization. Following standard approaches, we consider the dual of the original optimization problem. Optimal scheduling requires selecting independent sets of maximum aggregate price, but this problem is known to be NP-hard. We propose and evaluate a simple greedy heuristic. Analytical bounds on performance are provided and simulations indicate that the greedy heuristic performs well in practice. 4 Chapter 1 Greedy scheduling Algorithm 1.1 Background Consider a multihop wireless packet network. We want to “pack” as much traffic into the network as it can handle. Quantitatively: Each source is equipped with a concave increasing utility function, and we want to maximize aggregate utility. We note that the utility-based approach is a standard way of balancing high aggregate throughput and fairness [2, 8]. In a wireless network, the situation is complicated by the fact that only some subsets of links can be active simultaneously. The notion of “independent sets” is used to capture this inherent constraint [1, 2, 7]. A maximal independent set is a subset of links that is maximal in the sense that even one more link cannot be added to the set without violating interference constraints. Maximal independent sets correspond to maximal elements in a partial order. 1.1.1 Primal optimization problem Our problem can be stated precisely as follows. We represent a network as directed graph G = (N , L), where N represents the set of nodes in the network and L represents the set of wireless links in the network. The total number of nodes in the network is denoted by N = |N | and the total number of links by L = |L|. A wireless link (i, j) ∈ L if nodes i and j are within transmission range of each other i.e. direct communication between node i and node j is possible. As in [1] we assume that if a link (i, j) ∈ L, then so does the link (j, i). For simplicity of mathematical expressions, we assume that all links support a bit rate C when active, though the results in the paper can be extended easily to the case when this is not true. Let F denote the set of all end-to-end multihop flows present in the network. For every flow f ∈ F, s(f ) and d(f ) represent the source and destination nodes respectively. All the source nodes are assumed to have an infinite backlog. The data rate associated with the flow f is represented by xf and yf l denotes the part of the flow f that is carried by the link l. Let yf = (yf l )l∈L be a vector representing the part of a flow f carried by each link in the network. u f represents a N sized column vector such that uf (s(f )) = xf and uf (d(f )) = −xf and all other entries are zero. A maximal independent set of links I, is represented by a column vector rI of size L. If a link l ∈ I, rI (l) is C; else it is 0. We represent the collection of all the maximal independent sets by the matrix M I , columns of which are rI s. As no two maximal independent sets can be activated simultaneously, each 5 6 CHAPTER 1. GREEDY SCHEDULING ALGORITHM of them will get scheduled for some fraction of time. If there are K maximal independent sets present in the network, we represent a schedule associated with them by a K sized column vector a, where the ith entry of vector a represents the fraction of time an independent set representing the i th column of matrix MI is active. We associate a utility function U (xf ) with every end-to-end flow f ∈ F. U (xf ) is assumed to be a strictly concave, increasing function with U (0) = 0. Let A be the N × L node-link incident matrix. Then, the formal representation of our problem is as follows: X max xf ≥0 U (xf ) (1.1) f ∈F = uf , ∀f ∈ F Subject to: Ayf X yf ≤ MI a (1.2) f ∈F K X = 1 ak k=1 a ≥ 0 We can show that the set defined by the constraints is convex. Then, standard results from the theory of convex optimization [9] indicate that our problem has no duality gap. 1.1.2 Dual problem To obtain a solution in a distributed manner, we follow the approach initiated by Kelly and others [2,8]: that of considering the dual of this problem. As in these papers, we relax the capacity constraints given by Equation 1.2; the corresponding Lagrange variables behave as link prices which are represented by a vector p. Given a vector of link prices, the problem splits into congestion control, routing and scheduling subproblems that can be solved independently. The dual problem associated with the primal problem stated in the Equation 1.1 is as follows: D(p) X = min( max p≥0 xf ≥0,a≥0 (U (xf ) − f ∈F pt (yf − MI a))) subject to: K X ak = 1 (1.3) (1.4) k=1 Congestion control and routing subproblem D1 (p) = max( xf ≥0 X f ∈F subject to: Ayf (U (xf ) − L X pi yf i ) i=1 = uf , ∀f ∈ F (1.5) 7 CHAPTER 1. GREEDY SCHEDULING ALGORITHM For a given vector of link prices, each source solves the problem of how much traffic to send into the network so as to maximize its net utility. The amount of traffic to send is xf = U 0−1 (p(f )) (1.6) where p(f ) is cost of the least cost path between s(f ) and d(f ) for a given p. We note that the route chosen by the source corresponds to the minimum-priced path(s) between the source and the destination. Scheduling subproblem D2 (p) = max(pt MI a) subject to: K X ak (1.7) = 1 k=1 a≥0 It can be shown that, for a given vector of link prices, the solution to this problem is to schedule an independent set of maximum aggregate price. [10] Price updation algorithm Price of link l is updated while going from j th to (j + 1)st iteration using the following equation. pl [j + 1] = (pl [j] + δ(yl [j] − cl [j]))+ . (1.8) Here (x)+ = max(x, 0). yl [j] represents the aggregate flow on link l in j th iteration. If link l is part of an independent set that is solution to the Equation 1.7 for the given price vector p[j], then c l [j] takes the value of C, else it is zero. This update equation follows from the subgradient algorithm that is particularly used for non-differentiable functions [10]. δ is the step-size associated with the subgradient algorithm. Remark 1 From Equation 1.8 one can notice the fact, that if pl [j + 1] > pl [j], then it implies that the routing algorithm corresponding to atleast one flow f ∈ F selected the route containing the link l, in j th iteration. Also if pl [j + 1] < pl [j], then it implies that the scheduling algorithm selected an independent set containing the link l, in the j th iteration. 1.1.3 The overall scheme Summarizing, the overall scheme as follows: CHAPTER 1. GREEDY SCHEDULING ALGORITHM 8 1. Start with a vector of link prices. 2. Obtain the traffic injected into the network by each source (congestion control and routing problem). 3. Obtain the schedule with maximum aggregate price (scheduling problem). 4. Update prices (price updation) and go to Step 2. It is well-known that when the step-sizes in the price updation algorithm are chosen appropriately, the algorithm given above converges to the optimal solution of the primal problem within certain range [2]. 1.2 Our work It has been recognized in [4, 7] that the problem in Step 3 is hard, even when a centralized algorithm is used. The problem has been shown to be NP-hard in [4, 7]. Therefore, we relax the requirement of optimality, as in [4,5]. We consider the natural heuristic idea of choosing an independent set containing the maximum-priced link, instead of the independent set of maximum aggregate price. In particular, it is interesting to explore this heuristic because it lends itself to a distributed implementation. In the literature, this heuristic is commonly referred as ”‘greedy”’ and we stick to the same nomenclature. In the result that follows we will be using the following definitions from [4]. Definition 1 Let dS (x, y) denote the shortest distance(in terms of number of links) between nodes x, y ∈ N . Define a function d : (L, L) → N as follows: For lu = (u1 , u2 ), lv = (v1 , v2 ) ∈ L, let d(lu , lv ) = min dS (ui , vj ). i,j∈{1,2} Definition 2 We call a set of links W a K-valid matching if for all l1 , l2 ∈ W with l1 6= l2 , we have d(l1 , l2 ) ≥ K. In the K-hop link interference model we assume that any two links l1 and l2 for which d(l1 , l2 ) < K, will interfere with each other and hence cannot be active simultaneously. Definition 3 The K-hop interference degree of a link l ∈ L , denoted by d K (l), is a size of the maximum sized independent set Imax (l), such that d(li , l) < K ∀li ∈ Imax (l). Definition 4 The K-hop interference degree of a graph G(N , L), denoted by d K (G), is defined as dK (G) = max dK (l). l∈L Here we mention the greedy heuristic. [4] CHAPTER 1. GREEDY SCHEDULING ALGORITHM 9 Greedy Heuristc 1. W := φ and i := 1. 2. Arrange links of L in descending order of price, starting with l1 , l2 , . . .. 3. If W ∪ li is a valid K-matching, then, W := W ∪ li . i = i + 1. 4. Repeat Step 3 for all links in L. 1.2.1 Greedy heuristic: Bound on the maximum link price The greedy heuristic is characterized by the following. Let pmax [j] be the price of the maximum priced link in the j th iteration. Let U (xf ), a concave, increasing utility function with U (0) = 0, be associated with the flow f ∈ F. Let Smin [j] be the path-price of the least price path from s(f ) to d(f ) in the j th iteration. Before assessing the closeness of greedy heuristc with optimal algorithm, we show that pmax remains bounded under greedy scheduling. The idea behind this is as follows: From Equation 1.5 we see that the source node tries to maximize the difference (U (xf ) − Smin xf ) in each iteration, by selecting an appropriate xf , for the Smin of that particular interation. We illustrate this fact using Figure 1.1. This figure shows a plot of U (xf ) and two plots for different values of Smin P1 and P2 . In 0 the Figure 1.1 in one case Smin = P1 < U (0) and hence corresponding optimal data-rate x1 is greater 0 than zero, while in the other case Smin = P2 = U (0) and hence optimal data rate turns out to be zero. 0 Thus we note the fact that, if Smin ≥ U (0), then the optimal choice of xf is zero. With this idea now we move to the following proposition. Proposition 1 Let there be a single end-to-end flow present in the network. Then there exists an 0 < M < ∞ such that pmax [j] ≤ M ∀j under any scheduling policy. Proof : 1. If possible let pmax (j) grow in an unbounded manner with j. Then there is a subsequence of j along which pmax increases monotonically. Let this subsequence be denoted by ju , u = 1, 2, . . . and let lj∗u denote a link with maximum price at ju . 2. As the price of lj∗u increases with ju , then it must have been chosen by the routing algorithm at (ju − 1)st iteration (this follows from Remark 1), and so, it must have been on the least cost path at (ju − 1)st iteration. Thus, because pmax is increasing, Smin has to keep increasing along ju . 3. As Smin increases, source would be sending smaller and smaller amount of traffic into the network. This follows from the concave nature of the utility function and also from the assumption that 0 U (0) = 0. Thus, as Smin crosses U (0), the source would stop sending traffic into network. 10 CHAPTER 1. GREEDY SCHEDULING ALGORITHM P2. x f P1.x f U(x f) x2 = 0 x1 x f Figure 1.1: An example illustrating variation of optimal xf under different values of Smin . 4. Thus pmax cannot increase anymore as congestion control algorithm is sending no data while the scheduling algorithm will continue to schedule independent sets containing lj∗u . This contradicts our assumption that pmax increases without bound. Hence we conclude that, there exists an 0 < M < ∞, such that pmax ≤ M . Proposition 2 There exists an 0 < M < ∞ such that pmax [j] ≤ M ∀j under any scheduling policy, even when there are multiple end-to-end flows present in the network. Proof : 1. If the price of the max-priced link is increased, it must be the case that in the immediately preceding slot, the routing algorithm resulted in some flows (at least one) choosing paths through that link, and for such a flows, the path passing through the max-priced link of the current iteration, was the minimum-priced path. 2. The above can be restated as follows: In the immediately preceding slot, there is a nonempty subset of flows for which the minimum-priced path passed through the max-priced link of this slot. 3. As the iterations proceed, such subsets have to keep appearing repeatedly, so that the price increase in pmax can be sustained. 4. For the flows in the subset, the price of the minimum-priced path keeps increasing (because p max keeps increasing). 11 CHAPTER 1. GREEDY SCHEDULING ALGORITHM 5. There are a finite number of subsets. Eventually, for any subset of flows, there is no incentive to 0 send traffic, because the price of the minimum-path price is too high.( When Smin crosses U (0) for a paricular pmax .) 6. So, eventually, all flows will stop sending traffic. In this situation, the increase of price of the max-priced link cannot be sustained. And we have a contradiction. Thus we conclude that, there exists an 0 < M < ∞, such that pmax ≤ M . 1.2.2 Greedy heuristic: -subgradient Compared to the optimal solution, how much do we lose by using the greedy heuristic? To assess this, we need the notion of an -subgradient. Definition 5 [10] Given a convex function D(p) : <n → < and ≥ 0, a vector h(p̄) ∈ <n is a -subgradient of D(p) at point p̄ ∈ <n if D(p) ≥ D(p̄) − + (p − p̄)T h(p̄), ∀p ∈ <n . The following result, from [2, 10], is important for us. Proposition 3 Suppose at each iteration j an j -subgradient is used. If j ≤ 0 ∀j or limj→∞ j = 0 and ||h(j)||2 ≤ H < ∞ ∀j, then -subgradient algorithm converges within δH 2 /2 + 0 of the optimal value. Proof : See Theorem 5 from [2] for proof. Now for the greedy heuristic let Sopt [j] and Sgrd [j] represent the aggregate prices of the independent sets corresponding to the optimal schedule and greedy schedule, respectively in j th iteration. In [4], the authors prove that Sgrd [j] ≥ Sopt [j]/dK (G), ∀j. Based on this fact we have the following proposition. Proposition 4 The greedy heuristic leads to an LM C(dK (G) − 1)/dK (G)-subgradient. Proof : Let p1 , p2 ∈ <L + . Let ropt (p) and rgrd (p) represent the independent sets corresponding to an optimal and greedy schedule, respectively for a given price vector p. Let Sopt (p) and Sgrd (p) be the aggregate prices of ropt (p) and rgrd (p) respectively. pmax (p) represents the price of the max priced link(s) for the price vector p. We represent the optimal flow rate and optimal routing vector of a flow f ∈ F, for a given link price vector p, by xf (p) and yf (p), 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 CHAPTER 1. GREEDY SCHEDULING ALGORITHM the price vector p, i.e. D(p2 ) = P f ∈F X 12 yf (p). Then at p2 we have the following: U (xf (p2 )) − pT2 (y(p2 ) − ropt (p2 )) f ∈F ≥ X U (xf (p1 )) − pT2 (y(p1 ) − rgrd (p1 )) f ∈F = X U (xf (p1 )) − p1 T (y(p1 ) − ropt (p1 )) + f ∈F T ((p2 − p1 ) (rgrd (p1 ) − y(p1 )) − p1 T (ropt ((p1 ) − rgrd (p1 )) = D(p1 ) + (p2 − p1 )T (rgrd (p1 ) − y(p1 )) − p1 T (ropt ((p1 ) − rgrd (p1 )) We notice that p1 T (ropt ((p1 ) − rgrd (p1 )) is always a non-negative quantity and hence for any p ∈ <L +, rgrd (p) − yf (p) is an (p)-subgradient of D(p) at p. From the above set of equations, it is clear that, (p) = pT (ropt ((p) − rgrd (p)) = (Sopt (p) − Sgrd (p)).C But, Sgrd (p) ⇒ Sopt (p) − Sgrd (p) ≥ Sopt (p)/dK (G).( From Theorem 5 in [4]) ≤ Sopt (p)(dK (G) − 1)/dK (G). ≤ L.pmax (p)(dK (G) − 1)/dK (G). ≤ LM (dK (G) − 1)/dK (G). ⇒ (p) ≤ LM C(dK (G) − 1)/dK (G). ∀p Thus (p) is bounded above for all p by LM C(dK (G) − 1)/dK (G) under greedy scheduling. Remark 2 At this point, we do not have an explicit expression for M , or an upper bound on M . We are working on this. 1.3 Numerical evaluation In this section we discuss the results that we obtained after implementing the greedy heuristic on two networks. Figure 1.2 [6] and Figure 1.3 show the topologies of two networks G 1 and G2 respectively. All the links in both the networks are assumed to have the capacity of 10 Mbps. For both the networks d1 (G) is 2. We start by assigning the unit prices to all the links. The plots in Figure 1.4 compare the performance of greedy algorithm with the optimal scheduling algorithm for these two topologies. U Gopt and UGgrd are net utilities for network G under optimal and greedy scheduling algorithm, respectively. While modeling the inter link interference, we assume the single hop interference model. From the plots in the Figure 1.4 one sees that the aggregate utility in the case of greedy scheduling varies from that 13 CHAPTER 1. GREEDY SCHEDULING ALGORITHM 2 1 3 0 4 6 5 Figure 1.2: Network G1 . Flow is present between following pairs of nodes:(0, 4), (5, 1), (3, 6). 0 1 3 4 2 7 6 5 Figure 1.3: Network G2 . Flow is present between following pairs of nodes:(0, 1), (5, 4), (6, 1). of optimal scheduling by less that 2% and 15% for two networks G1 and G2 , respectively.The step size δ is taken to be 0.001. Also, Figure 1.5 shows that pmax is bounded in both the cases. For these two networks pmax converges to the same value along the same path. 1.4 Conclusion The scheduling problem is known to be a bottleneck in the cross-layer optimization approach. We relax the optimality requirement, and propose a natural greedy heuristic. The loss in performance due to the greedy heuristic is shown to be bounded. The greedy heuristic is of interest because it is amenable to distributed implementation. Numerical experiments suggest that it performs well in practice. CHAPTER 1. GREEDY SCHEDULING ALGORITHM 10 UG2opt UG2grd UG1opt UG1grd Aggregate Utility 8 6 4 2 0 0 4 4 4 4 4 0.0X10 1.0X10 2.0X10 3.0X10 4.0X10 5.0X10 Iteration Figure 1.4: Utility functions under optimal and greedy schedules in both the cases 2 pmax(G1) pmax(G2) pmax 1.5 1 0.5 0 0 4 4 4 4 4 0.0X10 1.0X10 2.0X10 3.0X10 4.0X10 5.0X10 Iteration Figure 1.5: pmax remains bounded in both the cases 14 Bibliography [1] F.L. Presti, ”Joint Congestion Control, Routing and Media Access Control Optimization via Dual Decomposition for Ad Hoc Wireless Networks,” In the Proc. of the 8-th International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems (MSWiM 2005) , Montreal, Canada, October 2005. [2] L. Chen,S. Low,J. Doyle ,”Joint Congestion Control and Media Access Control Design for Ad Hoc Wireless Networks”in Proc. of IEEE Infocom 2005,March 2005. [3] X. Lin,N.B. Shroff,R. Srikant ”A Tutorial on Cross-Layer Optimization in Wireless Networks”IEEE Journal on Selected Areas in Communication,vol.24 no. 8,August 2006. [4] G. Sharma,R.R. Mazumdar,N.B. Shroff ”On the Complexity of Scheduling in Wireless Networks”in Proc. of ACM MobiCom 2006, September 2006. [5] A. Gupta, X. Lin and R. Srikant, Low Complexity Distributed Scheduling Algorithms for Wireless Networks, in Proc.IEEE INFOCOM 2007. [6] A. Brzezinski, G. Zussman, E. Modiano ”Enabling Distributed Throughput Maximization in Wireless Mesh Networks-A Partitioning Approach” in Proc.ACM MobiCom 2006, September 2006. [7] K. Jain, J. Padhye, V.N. Padmanabhan, L. Qiu ”Impact of Interference On Multi-hop Wireless Network Performance” in Proc. of IEEE MobiCom 2003, September 2003. [8] F.P. Kelly,A. Maullo, and D. Tan, ”Rate control in communication networks:shadow prices,proportional fairness and stability,”J.Oper.Res.Soc.,vol. 49,pp. 237-252,1998. [9] S. Boyd and L. Vandenberghe, ”Convex Optimization”,Cambridge University Press [10] D. Bertsekas ”Nonlinear Programming”, Athena Scientific, 2003. 15