Date post: | 14-Jan-2016 |
Category: |
Documents |
Upload: | erin-logan |
View: | 215 times |
Download: | 0 times |
Stochastic Optimal Networking:
Energy, Delay, Fairness
Michael J. Neely
University of Southern California
http://www-rcf.usc.edu/~mjneely
S={Totally Awesome}
Part 1: A single wireless downlink (L links)
Power Vector: P(t) = (P1(t), P2(t), …, PL(t))
(P(t), S(t))
Channel States: S(t) = (S1(t), S2(t), …, SL(t)) (i.i.d. over slots)
Rate-Power Function: (where P(t) for all t)
t0 1 2 3 …
Slotted time t = 0, 1, 2, …
1
L
2
Part 1: A single wireless downlink (L links)
Power Vector: P(t) = (P1(t), P2(t), …, PL(t))
(P(t), S(t))
Channel States: S(t) = (S1(t), S2(t), …, SL(t)) (i.i.d. over slots)
Rate-Power Function: (where P(t) for all t)
t0 1 2 3 …
Slotted time t = 0, 1, 2, …
1
L
2
power
0 1
Bad
Med
Good
S={Totally Awesome}
Allocate power in reaction to queue backlog + current channel state…
Random arrivals : Ai(t) = arrivals to queue i on slot t (bits)
Queue backlog : Ui(t) = backlog in queue i at slot t (bits)
1(P(t), S(t))
A1(t) A2(t) AL(t)
L(P(t), S(t))2(P(t), S(t))
Arrival rate: E[Ai(t)] = i (bits/slot), i.i.d. over slots
Rate vector: …L(potentially unknown)
Arrivals and channel states i.i.d. over slots (unknown statistics)
S={Totally Awesome}
Formulations: [Neely 2003, 2005]
Random arrivals : Ai(t) = arrivals to queue i on slot t (bits)
Queue backlog : Ui(t) = backlog in queue i at slot t (bits)
1(P(t), S(t))
A1(t) A2(t) AL(t)
L(P(t), S(t))2(P(t), S(t))
3. Optimal fairness and flow control for overloaded situations
1. Maximize thruput w/ peak and avg. power constraint:
Ppeak ,2. Stabilize with minimum average power (will do this for multihop)
Some precedents:
Stable queueing w/ Lyapunov Drift: MWM -- max iUi policy -Tassiulas, Ephremides, Aut. Contr. 1992 [multi-hop network] -Tassiulas, Ephremedes, IT 1993 [random connectivity] -Andrews et. Al. , Comm. Mag. 2001 [server selection] -Neely, Modiano, TON 2003, JSAC 2005 [power alloc. + routing]
(these consider stability but not avg. energy optimality…)
Energy optimal scheduling with known statistics: -Li, Goldsmith, IT 2001 [no queueing] -Fu, Modiano, Infocom 2003 [single queue] -Yeh, Cohen, ISIT 2003 [downlink] -Liu, Chong, Shroff, Comp. Nets. 2003 [no queueing, known stats or unknown stats approx]
A1(t) A2(t)
1(t) 2(t)
Example: Can either be idle, or allocate 1 Watt to a single queue.
S1(t), S2(t) {Good, Medium, Bad}
Capacity region of the wireless downlink:
1
2
= Region of all supportable input rate vectors
Capacity region assumes:-Infinite buffer storage-Full knowledge of future arrivals and channel states
(i) Peak power constraint:P(t)
Capacity region of the wireless downlink:
1
2
= Region of all supportable input rate vectors
Capacity region assumes:-Infinite buffer storage-Full knowledge of future arrivals and channel states
(i) Peak power constraint:P(t)
(ii) Avg. power constraint:
Capacity region of the wireless downlink:
1
2
= Region of all supportable input rate vectors
Capacity region assumes:-Infinite buffer storage-Full knowledge of future arrivals and channel states
(i) Peak power constraint:P(t)
(ii) Avg. power constraint:
To remove the average power constraint ,
we create a virtual power queue with backlog X(t).
X(t+1) = max[X(t) - Pav, 0] + Pi(t)i=1
L
Dynamics:
1(P(t), S(t))
A1(t) A2(t) AL(t)
L(P(t), S(t))2(P(t), S(t))Pav
Pi(t)i=1
L
Observation: If we stabilize all original queues and the virtual powerqueue subject to only the peak power constraint , thenthe average power constraint will automatically be satisfied.
P(t)
Control policy: In this slide we show special case when restrictspower options to full power to one queue, or idle (general case in paper).
1(t)
A1(t) A2(t) AL(t)
2(t) L(t)
Choose queue i that maximizes: Ui(t)i(t) - X(t)Ptot
Whenever this maximum is positive. Else, allocate no power at all.
Then iterate the X(t) virtual power queue equation:
X(t+1) = max[X(t) - Pav, 0] + Pi(t)i=1
L
Performance of Energy Constrained Control Alg. (ECCA):
Theorem: Finite buffer size B, input rate or
i=1
L
i=1
L
ri ri* - C/(B - Amax)(a) Thruput:
(b) Total power expended over any interval (t1, t2) Pav(t2-t1) + Xmax
(r1*,…, rL*) = optimal vector
(r1, …, rL) = achieved thruput vec.
where C, Xmax are constants independent of rate vector and channelstatistics.
C = (Amax2 + Ppeak
2 + Pav2)/2
Part 2: Minimizing Energy in Multi-hop Networks
(ic) = input rate matrix = (rate from source i to destination node j)
N node ad-hoc network
Sij(t) = Current channel state between nodes i,j
(Assume (ic)
Goal: Develop joint routing, scheduling, power allocation to minimize
n=1
N
E[gi( Pij)]j
(where gi( ) are arbitrary convex functions)
Part 2: Minimizing Energy in Multi-hop Networks
(ic) = input rate matrix = (rate from source i to destination node j)
N node ad-hoc network
Sij(t) = Current channel state between nodes i,j
(Assume (ic)
Goal: Develop joint routing, scheduling, power allocation to minimize
n=1
N
E[gi( Pij)]j
To facilitate distributed implementation, use a cell-partitioned model…
Part 2: Minimizing Energy in Multi-hop Networks
(ic) = input rate matrix = (rate from source i to destination node j)
N node ad-hoc network
Sij(t) = Current channel state between nodes i,j
(Assume (ic)
Goal: Develop joint routing, scheduling, power allocation to minimize
n=1
N
E[gi( Pij)]j
To facilitate distributed implementation, use a cell-partitioned model…
Theorem: (Lyapunov drift with Cost Minimization)
nL(U(t)) = Un
2(t)
(t) = E[L(U(t+1) - L(U(t)) | U(t)]
(t) C - n
Un(t) + Vg(P (t)) - Vg(P *)
Analytical technique: Lyapunov Drift
Lyapunov function:
Lyapunov drift:
If for all t:
Then: (a) n E[Un]
C + VGmax
(stability and bounded delay)
(b) E[g(P )] g(P*) + C/V (resulting cost)
Joint routing, scheduling, power allocation:
link l cl*(t) =
(
(similar to the original Tassiulas differential backlog routing policy [92])
li*
lj*
(2) Each node computes its optimal power level Pi* for link l from (1):
Pi* maximizes: l(P, Sl(t))Wl* - Vgi(P) (over 0 < P < Ppeak)
Qi*
(3) Each node broadcasts Qi* to all other nodes in cell.
Node with largest Qi* transmits:Transmit commodity cl* over link l*, power level Pi*
Performance:
Theorem: If max > 0, we have…
= “distance” to capacity region boundary.
Example Simulation: Two-queue downlink with {G, M, B} channels
A1(t) A2(t)
1(t) 2(t)
Network with local interference Network with full interference
100 node sensor network
Shortest Path vs. Backpressure Routing
Network with local interference Network with full interference
100 node sensor network
Shortest Path vs. Backpressure Routing
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
0 1
2
34
56
7
89
Un(c)(t)
Rn(c)(t)n
(c)
sensor networkwired network
wireless
2
1
Approach: Put all data in a reservoir before sending into network. Reservoir valve determines Rn
(c)(t) (amount delivered to network from reservoir (n,c) at slot t).
Optimize dynamic decisions over all possible valve control policies, network resource allocations, routingto provide optimal fairness.
Network Fairness for Arbitrary Input Rates / Network Pricing:
Cross Layer Control Algorithm (CLC1):
(1) Flow Control: At node n, observe queue backlogs Un(c)(t)
for all active sessions c.
Rest of Network
Un(c)(t)
Rn(c2)(t)n
(c2)
Rn(c1)(t)n
(c1)
(where V is a parameter that affects network delay)
Special cases: (for simplicity, assume only 1 active session per node)
1. Maximum throughput and the threshold rule
Linear utilities: gnc(r) = nc r
Un(c)(t)
Rn(c)(t)n
(c)
(threshold structure similar to Tsibonis [Infocom 2003] for a downlink with service envelopes)
(2) Proportional Fairness and the 1/U rule
logarithmic utilities: gnc(r) = log(1 + rnc)
Un(c)(t)
Rn(c)(t)n
(c)
Mechanism Design and Network Pricing:
Maximize: gnc(r) - PRICEnc(t)r
0 r Rmax Such that :
greedy users…each naturally solves the following:
This is exactly the same algorithm if we use the following dynamic pricing strategy:
PRICEnc(t) = Unc(t)/V
Part 3: Improving Delay in Ad-Hoc Mobile Networks via Redundant Packet Transfers
Grossglauser-Tse 2-hop relay algorithm yields: O(1) thruput, O(N) delay
Question: Can we improve delay by sending multiple copies ofthe same packet?
Cell partitioned network model: N nodes, C cells d = N/C = user/cell density
Mobility model: (i) Markov Random Walk (ii) i.i.d. jump mobility (extreme model)
Traffic model: Each user i {1, …, N} sends to a unique destination d(i) {1, …, N}.
Timeslotted system1 transmission per cellno intercell interference
physical layerconstraints
Example: 1 2, 3 4, 5 6, …
Results: -Exact Capacity Analysis (Markov Random Walk and iid Mobility)
optimal user/cell density
density d
Capacity Theorem: All sessions can send at rate < , where:
= 1 - e-d - de-d
2d+ O(1/N)
Results: -Exact Capacity Analysis (Markov Random Walk and iid Mobility)
optimal user/cell density
density d
Capacity Theorem: All sessions can send at rate < , where:
= 1 - e-d - de-d
2d+ O(1/N)
*Optimal user/cell density:
d* = 1.7933 users/cell, * = 0.1492 packets/slot
1. Capacity achieving strategy yields O(N) delay
2. Design a redundant transmission protocol to achieve O( N ) delay at expense of reducing throughput to O(1 / N)
3. Establish a fundamental throughput/delay tradeoff (holds for any algorithm): delay/thruput > O(N)
Delay Results (iid mobility):
rateO(1)O(1 / N)
O(N)
O( N)
2 hop relay: E[Delayi] = (N - 1 - i)/( - i)
SN / RN handshake protocol with N redundancy
Fundamental Tradeoff Proof:
Let Wi = Delay of packet i Ri = “Redundancy” of packet i (# times replicated)
Then: E[Wi] E[Wi | Ri 2Ri] Pr[Ri 2Ri] > < <
1/2
Fundamental Tradeoff Proof:
Let Wi = Delay of packet i Ri = “Redundancy” of packet i (# times replicated)
Then: E[Wi] E[Wi | Ri 2Ri] Pr[Ri 2Ri] > < <
1/2
E[Wi | Ri 2Ri] < Bounding
for any conceivable protocol:
Let Z = Time first duplicate reaches destination
Consider virtual system that starts with 2Ri duplicates of packet i…
Then: E[Wi | Ri 2Ri] < > inf { E[Z | ] }
where the infimum is taken over all events that occur with probability >= 1/2.
E[Wi | Ri 2Ri] < Bounding
for any conceivable protocol:
Let Z = Time first duplicate reaches destination
Consider virtual system that starts with 2Ri duplicates of packet i…
Then: E[Wi | Ri 2Ri] < > inf { E[Z | ] }
where the infimum is taken over all events that occur with probability >= 1/2.
Answer: * = {Z < }
pZ(z)
Orders of magnitude delay improvement with tradeoff in thruput
Conclusions:
1. Virtual power queue (ensures average power constraints).2. Channel independent algorithms (adapt to any channel).3. Joint optimal power allocation, routing, scheduling strategies for heterogeneous nets (distributed implementations).4. Energy, Delay, Fairness, Network Pricing.5. Stochastic Network Optimization Theory.
http://www-rcf.usc.edu/~mjneely/
Further simulations of the CLC2 Fairness algorithm[Neely INFOCOM 2005] for a wireless downlink, a3 x 3 packet switch, and a heterogeneous network aregiven in next set of slides, and compared with the analytical performance bounds.
Theorem: If channel states are i.i.d., then for any V>0 and any rate vector (inside or outside of ),
Avg. delay:
Fairness:
(where )
1
optimal point r *
sym
sym
Network Fairness for arbitrary input rates:
Pr[ON] = p1
Pr[ON] = p2
1
2
0.6
0.5
2
1
Capacity region :
MWM algorithm (choose ON queue with largest backlog)Stabilizes whenever rates are strictly interior to [Tassiulas, Ephremides IT 1993]
Comparison of previous algorithms: (1) MWM (max Uii)(2) Borst Alg. [Borst Infocom 2003] (max i/i)(3) Tse Alg. [Tse 97, 99, Kush 2002] (max i/ri)
Simulation Results for CLC2:
(i) 2 queue downlink
a)g1(r)=g2(r)=
log(1+r)
b)g1(r)=log(1+r)g2(r)=1.28log(1+r)
(priority service)
Pr[ON] = p1
Pr[ON] = p2
1
2
(ii) 3 x 3 packet switch under the crossbar constraint:
.6 .1 .3.20 .40.50
proportionallyfair
1 2 3
123
(ii) 3 x 3 packet switch under the crossbar constraint:
.6 .1 .3.20 .40.50
proportionallyfair
1 2 3
123
(iii) Multi-hop Heterogeneous Network
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
0 1
2
34
5
6
7
8
9
Un(c)(t)
Rn(c)(t)n
(c)
sensor network wired network wireless
91 = 93 = 48 = 42 = 0.7 packets/slot (not supportable)
Use CLC2, V=1000 ------> Utot =858.9 packets r91 = 0.1658, r93=0.1662, r48=0.1678, r42=0.5000
The optimally fair point of this example can be solved inclosed form: r91* = r93* = r48* = 1/6 = 0.1667 , r42 = 0.5