Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems
description
Transcript of Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems
Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems
Michael J. Neely --- University of Southern Californiahttp://www-rcf.usc.edu/~mjneely
Proc. Allerton Conference on Communication, Control, and Computing, Sept. 2008
*Sponsored in part by NSF Career CCF-0747525 and DARPA IT-MANET Program
1(t)
2(t)
N(t)
1
2
N
ON/OFF
New Max-Weight bound, O(1)
Prior Max-Weight Bound, O(N)
Network Size NA
vg. D
elay
or: “A Tale of Two Lyapunov Functions”
1
4
N
Quick Description: N Queues, 1 Server, ON/OFF Channels•Slotted Time, t {0, 1, 2, 3, …}.•Ai(t) = # packets arriving to queue i on slot t (integer).
•Si(t) = 0/1 Channel State (ON or OFF) for queue i on slot t.•Can serve 1 packet over a non-empty connected queue per slot. (Scheduling: Which non-empty ON queue to serve??)
?2
3
ON
ON
OFF
OFF
ON
Assume: •{Ai(t)} and {Si (t)} processes are independent.
•Ai (t) i.i.d. over slots: E{Ai (t)} = i
•Si(t) i.i.d. over slots: Pr[Si(t) = ON] = pi
1
4
N
Quick Description: N Queues, 1 Server, ON/OFF Channels•Slotted Time, t {0, 1, 2, 3, …}.•Ai(t) = # packets arriving to queue i on slot t (integer).
•Si(t) = 0/1 Channel State (ON or OFF) for queue i on slot t.•Can serve 1 packet over a non-empty connected queue per slot. (Scheduling: Which non-empty ON queue to serve??)
?2
3
OFF
ON
OFF
OFF
ON
Assume: •{Ai(t)} and {Si (t)} processes are independent.
•Ai (t) i.i.d. over slots: E{Ai (t)} = i
•Si(t) i.i.d. over slots: Pr[Si(t) = ON] = pi
1
4
N
Quick Description: N Queues, 1 Server, ON/OFF Channels•Slotted Time, t {0, 1, 2, 3, …}.•Ai(t) = # packets arriving to queue i on slot t (integer).
•Si(t) = 0/1 Channel State (ON or OFF) for queue i on slot t.•Can serve 1 packet over a non-empty connected queue per slot. (Scheduling: Which non-empty ON queue to serve??)
?2
3
OFF
ON
OFF
ON
ON
Assume: •{Ai(t)} and {Si (t)} processes are independent.
•Ai (t) i.i.d. over slots: E{Ai (t)} = i
•Si(t) i.i.d. over slots: Pr[Si(t) = ON] = pi
1
4
N
Quick Description: N Queues, 1 Server, ON/OFF Channels•Slotted Time, t {0, 1, 2, 3, …}.•Ai(t) = # packets arriving to queue i on slot t (integer).
•Si(t) = 0/1 Channel State (ON or OFF) for queue i on slot t.•Can serve 1 packet over a non-empty connected queue per slot. (Scheduling: Which non-empty ON queue to serve??)
?2
3
OFF
ON
ON
ON
OFF
Assume: •{Ai(t)} and {Si (t)} processes are independent.
•Ai (t) i.i.d. over slots: E{Ai (t)} = i
•Si(t) i.i.d. over slots: Pr[Si(t) = ON] = pi
1
4
N
Quick Description: N Queues, 1 Server, ON/OFF Channels•Slotted Time, t {0, 1, 2, 3, …}.•Ai(t) = # packets arriving to queue i on slot t (integer).
•Si(t) = 0/1 Channel State (ON or OFF) for queue i on slot t.•Can serve 1 packet over a non-empty connected queue per slot. (Scheduling: Which non-empty ON queue to serve??)
?2
3
OFF
ON
OFF
OFF
ON
Assume: •{Ai(t)} and {Si (t)} processes are independent.
•Ai (t) i.i.d. over slots: E{Ai (t)} = i
•Si(t) i.i.d. over slots: Pr[Si(t) = ON] = pi
Notation: Server variables are 0/1 variables.•Qi(t) = # packets in queue i on slot t (integer).
•i(t) = server decision (rate allocated to queue i) = 1 if we allocate a server to queue i and Si(t) = ON. (0 else)
•i(t) = min[i(t), Qi(t)] = actual # packets served over channel i
1
4
N
?2
3
Qi (t+1) = max[Qi(t) – i (t), 0] + Ai (t)
equivalently: Qi (t+1) = Qi(t) – i (t) + Ai (t)
New Max-Weight (LCQ) bound, O(1)
Prior Max-Weight(LCQ) Bound, O(N)
Network Size N
Avg
. Del
ay
Status Quo #1 – Max-Weight Scheduling:
•Well known algorithm [Tassiulas-Ephremides 93]•Gives full throughput region (0 < < 1).•Generalizes to multi-rate channels and multi-hop nets with backpressure, performance opt. [NOW F&T 06]
•Simple and Adaptive: No prior traffic rates or channel probabilities are required for implementation.
Capacity Region
Example
Previous Delay Bound:
(1-)cN
≤E{Delay}
• N = Network Size (# of queues) • = Fraction away from capacity region boundary (0 < • c = constant
Advantages:
Disadvantages: Max-Weight has no tight delay analysis!
Status Quo #2 – Queue Grouping and LCG:
“Largest Connected Group algorithm” (LCG) [Neely06,08] gives O(1) Average Delay, for any 0 < < 1 in the “f-balanced region”: no individual arrival rate is more than a constant above the average rate.
Capacity Region
Largest Connected Group (LCG) Delay Bound:
(1-)c log(1/(1-)
≤E{Delay}
Advantages:
Disadvantages:
[Neely, Allerton 2006, TON 2008]
Delay is O(1), independent of N
“f-balanced” region
•More Restrictive “balanced” Throughput Region. •Requires pre-organized queue group structure based on knowledge of and pmin = mini{Pr[Si(t)=ON]}.•Less Adaptive, not clearly connected to backpressure.
Our New Results: For ON/OFF channel…•We analyze delay of Max-Weight! (use queue group concepts)•Max-Weight gives O(1) delay (anywhere in ).•We develop 2 new Lyapunov functions (“LA” & “LB”).•These tools may be useful for more general networks *(see end slide for extensions to multi-rate models).
“f-Balanced” Rates in
Ex
(1-)c log(1/(1-))
≤E{Delay}LA:
Anywhere in
Ex
(1-)2
c log(1/(1-))≤E{Delay}LB:
Lyapunov Function 1 (LA): (ON/OFF channel)•We sum over all possible partitions of N into K disjoint groups, where K is same as in LCG algorithm:
“f-Balanced” Rates in
Ex
1(t)1
2(t)2
3(t)3
4(t)4
5(t)5
6(t)6
7(t)7
N(t)N(1-)c log(1/(1-))
≤E{Delay}LA:0
Lyapunov Function 1 (LA): (ON/OFF channel)•We sum over all possible partitions of N into K disjoint groups, where K is same as in LCG algorithm:
“f-Balanced” Rates in
Ex
(1-)c log(1/(1-))
≤E{Delay}LA:
1(t)1
2(t)2
3(t)3
4(t)4
5(t)5
6(t)6
7(t)7
N(t)N0
Lyap. Drift (t) of LA(Q(t)): (ON/OFF channel)
Theorem: Scheduling to minimize drift involves maximizing:
where:
Further, this is maximized by the Max-Weight (LCQ) Policy!
Proof Sketch: Use Combinatorics to show…
Maximized by LCQ(“max-weight”)
Maximized by anywork-conserving strategy
c1 > 0, c2 > 0
“f-Balanced” Rates in
Ex
1(t)1
2(t)2
3(t)3
4(t)4
5(t)5
6(t)6
7(t)7
N(t)N(1-)c log(1/(1-))
≤E{Delay}LA:0
Thus: The first Lyapunov function (LA) gives:
Lyapunov Function 2 (LB): (ON/OFF channel)•A 2-part Lyapunov function, inspired by similar function in [Wu, Srikant, Perkins 2007] for different context.
Stabilizes full Low delay when # non-empty queues is large (via multi-user diversity)
Anywhere in
Ex
(1-)2
c log(1/(1-))≤E{Delay}LB:
*Extensions: (Multi-Rate Channels)Si(t) in {0, 0.1, 0.2, …, max}
***We note that this slide originally contained an incorrect claim that multi-rate channels can also achieve O(1) average delay. This claim was not in the Allerton paper, but unfortunately was in our original Arxiv pre-print (v1). We have made a new Arxiv report (v2, Dec. 08) with the corrections and discussion of issues involved: ***M. J. Neely, “Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems,” arXiv:0806.2345v2, Dec. 2008.
Paper: available on web: http://www-rcf.usc.edu/~mjneely/•Extended version with the multi-rate analysis (also on web): M. J. Neely, “Delay analysis for max-weight opportunistic scheduling in wireless systems,” arXiv: 0806.2345v2, Dec. 2008.
Conclusions: Order-Optimal (i.e., O(1)) Delay Analysis for the thruput-optimal Max-Weight (LCQ) Algorithm!
“f-Balanced” Rates in
Ex
(1-)c log(1/(1-))
≤E{Delay}LA:
Anywhere in
Ex
(1-)2
c log(1/(1-))≤E{Delay}LB:
Brief Advertisement: Stochastic Network Optimization Homepage: http://www-rcf.usc.edu/~mjneely/stochastic/•Contains list of papers, descriptions, other web resources, and an editable wiki board.
Conclusions: Order-Optimal (i.e., O(1)) Delay Analysis for the thruput-optimal Max-Weight (LCQ) Algorithm!
“f-Balanced” Rates in
Ex
(1-)c log(1/(1-))
≤E{Delay}LA:
Anywhere in
Ex
(1-)2
c log(1/(1-))≤E{Delay}LB: