Dynamic Power Allocation and Routing for Time Varying Wireless Networks X 14 (t) X 12 (t) 1 3 4 k a P ak () t P a tot X 21 (t) 2 N X 2N (t) X N4 (t) µ ab () rate µ ab µ ab (p, S 3 ) µ ab µ ac () µ ab (p, S 2 ) µ ab (p, S 1 ) power p ab power p Michael J. Neely Ph.D. Candidate MIT -- LIDS mjneely@mit.edu http://web.mit.edu/mjneely/www 1
Network Optimization: Kelly, Maulloo, Tan -- Journ. of Op Res. 1998 Marbach -- INFOCOM 2002 Xiao, Johansson, Boyd -- Allerton 2001 Network Control: Elbatt, Ephremides -- INFOCOM 2002 Cruz, Santhanam -- Allerton 2002 Tassiulas and Ephremides -- Trans. Auto. Contr. 92 Network Capacity: Gupta, Kumar -- Trans. Inf. Th. 2000 Grossglauser and Tse -- TON 2002 2
General Problem Formulation: Joint Routing, Power Allocation, and Scheduling P 2 X 13 X 15 P 1 P 3 X 25 X 53 Power Constraint for node i: j ( tot) P ij () t P i X 24 P 4 P 5 X 43 µ ab () µ ab µ ac () SIR Assumptions: -Random Traffic (Markov Modulated, bursty, etc.) -Slotted Time with slot length T. -Time Varying Channel States C() t = ( C ij () t ) Steady State Channel Probability π C -Rate Function: µ ij ( Pt ()Ct, ) (perhaps discontinuous) -Power Constraint: Pt () Π 3
The rate function µ(): Can model a wired link with fixed capacity: µ ( P, C 1 ) Or a broken link: power µ ( P, C 2 ) Or Server Allocation: power power 4
The Dynamic Control Problem: IEEE INFOCOM Proceedings, April 2003 X 13 X 15 P 1 P 3 X 25 X 53 µ ab () µ ac () P 2 X 24 P 4 P 5 X 43 Every Timeslot, Observe: U(t) = (U ij (t)) (Unfinished work Matrix) C(t) = (C ij (t)) (Channel State Matrix) Network Controller Decides: -Power Allocation P(t) ----> µ ( Pt ()Ct, ) -Routing directions for next hop Goal: Achieve Network Capacity with low delay (Decentralized version: View from a single node) 5
What is an optimal, capacity achieving strategy? Example Problem: Data sources X 1i, X 2j, X 3k. Destinations i, j, k. Two Intermediate stations. X 1i X 2j X 3k 1 2 3 ---Sources P (A) tot P (B) tot ---Intermediate Stations i j k ---Destinations Information known at slot t: Channel states Ct () and the queue backlogs U() t : Channel state: Ct () = ( C Ai ()C t, Aj ()C t, Bj ()C t, Bk ()C t, Bz () t ) Unfinished Work Backlog: U() t = ( U Ai ()U t, Aj ()U t, Bj ()U t, Bk () t ) Routing: In which station do we put packets from source 2? Power Allocation: For all time, we are constrained so that: ( A) p Ai () t + p Aj () t P tot ( B) p Bj () t + p Bz () t + p Bk () t P tot What is the Capacity region of the system? 6
X 13 X 15 P 1 P 2 P 3 X 25 X 53 X 24 P 4 P 5 X 43 Definition of the Capacity Region Λ: Let λ ij be the bit rate of stream X ij. The Capacity region Λ is the set of all rate matrices such that: -The network is necessarily unstable whenever ( λ ij ) Λ (even if future known). -The network can be stabilized if ( λ ij ) is strictly interior to Λ. 7
A note on Stability: Consider a queue with input process X(t) and processing rate µ(t) X(t) U(t) µ(t) X(t) = amount of bits that arrived in [0, t]. µ(t) = instantaneous processing rate. U(t) = Uninished work in queue at time t. (Need to consider general--potentially non-ergodic case). Definition: The overflow function g(m): g( M) = lim sup 1 t -- t t 1 { U ( τ) > M } dτ 0 Definition: A queueing system is stable if g( M ) 0 as M. A network is stable if all queues are stable. M/M/1 input λ choose a queue µ=1 µ=1 The lim sup definition is essential to obtain the correct notion of stability. The above system is stable whenever λ<µ. If lim inf is used, it is stable for all λ<. 8
The simplest possible network: A single queue with slotted time, timeslot size = T λ µ=1 Capacity and Delay: Average Delay W data rate λ µ Well Known P-K Formula for M/G/1 Queue: W = λte( A 2 ) ---------------------- 2 ( µ λ) 2 nd moment of arrivals ε=µ-λ New Result for Bursty Data and/or Time Varying µ(t): KT 2 2 A max + µ max W ------------------------------------------------- 2 ( µ av λ) Example: Channel States: µ 1 (good) µ 2 (med.) µ 3 (bad) 9
X 13 X 15 P 1 P 2 P 3 X 25 X 53 X 24 P 4 P 5 X 43 Theorem 1: Wireless Network Capacity Region Λ is the set of all (λ ij ) rates s.t. there are flows f (c) ab with: ( c) f ab 0 λ ic f ( c ) ( c) + ai = f ib i c a b ( c) λ ac f ac c a a c (non-negativity) (flow conservation) = (sink the data) ( c) f ab Γ (link capacity constraint) where graph family Γ is the set of all feasible 1-hop link rates achievable by some power alloc. strategy: Γ= π C Conv { µ ( P, C) P Π} C µ 2 01 {µ (P, S 1) P Π} 00 11 00 11 000000 111111 00000 11111 {µ (P, S ) P Π} 2 µ 2 0000 1111 Γ 0000 1111 01 0000 1111 000 111 µ 1 µ 1 10
Note: Capacity region depends only on steady state channel probability distribution π C. µ(t) ON ε OFF µ(t) = ΟΝ prob 1/2 OFF prob 1/2 ε Thus, any channel state evolution with the same steady state probabilities yields the same capacity region. (altho the exact dynamics can significantly effect delay) Corollary: The capacity region is preserved if we consider channel states C which are chosen iid each timeslot. 11
Capacity Achieving Strategy: A generalization of the Tassiulas Backpressure strategy [Tassiulas,Ephremides 92] Define: ( c) U i = Unfinished Work in i destined for c Joint Routing and Power Allocation: Every timeslot, and for each link (i,j), find the commodity d(i,j) that has the largest differential backlog U d(i,j) i (t) - U d(i,j) j (t). Route this commodity from i to j, using the power allocation determined by: maximize: Pt () d( i, j) d( i, j) µ ( P, C() t ) U i () t U j () t i, j tot subject to: P ij P i for all i. j i (i,j) j X 13 X 15 = d(i,j) P 1 P 2 P 3 X 25 X 53 X 24 P 4 P 5 X 43 12
Theorem: The Differential Backlog Policy stabilizes the system whenever possible, without requiring knowledge of the arrival processes or channel state processes, and ensures the following delay guarantee: Average Delay: ( λ ij + ε) Λ ε ε Capacity region Λ ε can be viewed as the distance to the boundary of the capacity region Ω. 2 2 KT E A ij + E µ ij i, j Average Delay in Network ------------------------------------------------------------ 2λ tot ε Note Fundamental Similarity to M/G/1 queue: λte( A 2 ) Average Delay (M/G/1) = ---------------------- 2 ( µ λ) Can prove the result using the theory of Lyapunov Drift. 13
When viewed from above... A Dual Formulation: Consider just testing if a rate matrix (λ ij ) is inside of the capacity region: Maximize 1 Subject to ( c) f ab 0 (non-negativity) λ ic ( c) ( c) + f ai = f ib i c a b ( c) λ ac f ac c a a c (flow conservation) = (sink the data) ( c) f ab Γ (link capacity constraint) Dual: Maximize: fun( µ ij ( p ij ), U ij ) (to find a subgradient) Update : ( c) ( c) ( c ) + U i ( t + T) = U i () t T µib b A relationship between static method for computing a multi-commodity flow and a dynamic backpressure scheme that achieves capacity...thru the unifying framework of convex duality. + T a ( c ) µ ai + T λ ic 14
Application To Ad-Hoc Networks Capacity: Static Networks: Gupta, Kumar -- O( 1 N ) Mobile Networks: Grossglauser, Tse -- O(1) d( i, j) d( i, j) µ ( P, C() t ) U i () t U j () t i, j The DRPC algorithm achieves this capacity with the optimal coefficient in mobile or non-mobile case. Can we achieve full capacity in a distributed way? Conjecture: No (unless channels independent) Can we achieve asymptotic capacity? Answer: Yes, with distributed approximations... 15
Implementation for Mobile Ad-Hoc Networks: Discretize Location Space of Network to a simple 5 x 5 grid 10 Users randomly moving (prob. 1/2 they stay in same cell, prob. 1/2 they move to an adjacent cell). Attenuation Model (i.e., a 1/r 4 loss characteristic) SIR ab ( P, C) = Attenuated Signal at b N b + Atten. Interference at b modulation 2 PAM 4 QAM 16 QAM bits/symbol power/symbol 1 0.25 2 2 0.5 2 4 1.25 2 bit rate 6 4 2 µ(sir) 64 QAM 6 5.25 2 1 2 3 4 5 SIR 16
Distributed Implementation: Use side channel to exchange backlog info with neighbors, and learn local link attenuations α ij. Then: 1. At beginning of each timeslot, each node randomly decides to transmit (at full power P tot ) or remain idle,with prob 1/2. A control signal of power γp tot is transmitted. 2. Define Ω as the set of all transmitting nodes. Each node b measures its total interference γi b = α ib γ P tot i Ω and sends this scalar quantity to all neighbors. 3. Using knowledge of the interference, attenuation, and queue backlogs of neighbors, user a transmits with full power to user b who maximizes the function α ab P tot W ab 1 + ----------------------------------------------- log N b + I b α ab P tot 17
maximize: d( i, j) d( i, j) µ ( P, C() t ) U i () t U j () t i, j tot subject to: P ij P i for all i. j 10 4 OCCUPANCY VS. DATA RATE AVERAGE NODE OCCUPANCY E[U] (log scale) 10 3 10 2 10 1 RELAY ALG DISTRIBUTED DRPC CENTRALIZED DRPC 10 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 FRACTION RATE VECTOR IS AWAY FROM (0.625, 3.125) 18
Concluding Summary: P 2 X 13 X 15 P 1 X 43 P 4 P 3 X 25 X 53 X 24 Power Constraint for node i: ( tot) P ij () t P i j P 5 more generally: Pt () Π General Power Allocation Formulation for a Wireless Network Learned: There are some principles that can be applied to all networks, but every type of network has distinct structure which must be understood for development of control algorithms. Dynamic Power Allocation Algorithm: -Issues of implementation complexity -How much control information is needed? 19