1 / 19

Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems

Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems. ON/OFF. or: “ A Tale of Two Lyapunov Functions ”. m 1 (t). l 1. m 2 (t). l 2. Prior Max-Weight Bound, O(N). Avg. Delay. New Max-Weight bound, O(1). l N. m N (t). Network Size N.

scottbender
Télécharger la présentation

Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems ON/OFF or: “A Tale of Two Lyapunov Functions” m1(t) l1 m2(t) l2 Prior Max-Weight Bound, O(N) Avg. Delay New Max-Weight bound, O(1) lN mN(t) Network Size N Michael J. Neely --- University of Southern California http://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

  2. 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??) ON l1 • Assume: • {Ai(t)} and {Si (t)} processes • are independent. • Ai (t) i.i.d. over slots: • E{Ai (t)} = li • Si(t) i.i.d. over slots: • Pr[Si(t) = ON] = pi ON l2 ? OFF l3 OFF l4 ON lN

  3. 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??) OFF l1 • Assume: • {Ai(t)} and {Si (t)} processes • are independent. • Ai (t) i.i.d. over slots: • E{Ai (t)} = li • Si(t) i.i.d. over slots: • Pr[Si(t) = ON] = pi ON l2 ? OFF l3 OFF l4 ON lN

  4. 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??) OFF l1 • Assume: • {Ai(t)} and {Si (t)} processes • are independent. • Ai (t) i.i.d. over slots: • E{Ai (t)} = li • Si(t) i.i.d. over slots: • Pr[Si(t) = ON] = pi ON l2 ? OFF l3 ON l4 ON lN

  5. 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??) OFF l1 • Assume: • {Ai(t)} and {Si (t)} processes • are independent. • Ai (t) i.i.d. over slots: • E{Ai (t)} = li • Si(t) i.i.d. over slots: • Pr[Si(t) = ON] = pi ON l2 ? ON l3 ON l4 OFF lN

  6. 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??) OFF l1 • Assume: • {Ai(t)} and {Si (t)} processes • are independent. • Ai (t) i.i.d. over slots: • E{Ai (t)} = li • Si(t) i.i.d. over slots: • Pr[Si(t) = ON] = pi ON l2 ? OFF l3 OFF l4 ON lN

  7. Notation: Server variables are 0/1 variables. • Qi(t) = # packets in queue i on slot t (integer). • mi(t) = server decision (rate allocated to queue i) • = 1 if we allocate a server to queue i and Si(t) = ON. (0 else) • mi(t) = min[mi(t), Qi(t)] = actual # packets served over channel i Qi (t+1) = max[Qi(t) – mi (t), 0] + Ai (t) equivalently: Qi (t+1) = Qi(t) – mi (t) + Ai (t) l1 ? l2 Prior Max-Weight (LCQ) Bound, O(N) Avg. Delay l3 New Max-Weight (LCQ) bound, O(1) l4 Network Size N lN

  8. Status Quo #1 – Max-Weight Scheduling: Previous Delay Bound: Capacity Region L l2 Example: r= 0.95 • N = Network Size (# of queues) • r = Fraction away from capacity • region boundary (0 < r <1) • c = constant l1 cN ≤ E{Delay} (1-r) Advantages: • Well known algorithm [Tassiulas-Ephremides 93] • Gives full throughput region (0 < r < 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. Disadvantages: Max-Weight has no tight delay analysis!

  9. Status Quo #2 – Queue Grouping and LCG: Largest Connected Group (LCG) Delay Bound: Capacity Region L l2 “f-balanced” region [Neely, Allerton 2006, TON 2008] l1 Delay is O(1), independent of N c log(1/(1-r)) ≤ E{Delay} (1-r) Advantages: “Largest Connected Group algorithm” (LCG)[Neely06,08] gives O(1) Average Delay, for any 0 < r < 1 in the “f-balanced region”: no individual arrival rate is more than a constant above the average rate. • More Restrictive “balanced” Throughput Region. • Requires pre-organized queue group structure based on knowledge of r and pmin = mini{Pr[Si(t)=ON]}. • Less Adaptive, not clearly connected to backpressure. Disadvantages:

  10. 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 L). • 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). c log(1/(1-r)) c log(1/(1-r)) ≤ E{Delay} E{Delay} ≤ “f-Balanced” Rates in L Anywhere in L (1-r)2 (1-r) l2 l2 Ex: r= 0.95 Ex: r= 0.95 l1 l1 LA: LB:

  11. 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: c log(1/(1-r)) E{Delay} ≤ “f-Balanced” Rates in L l1 m1(t) (1-r) l2 l2 m2(t) Ex: r= 0.95 l3 m3(t) l4 m4(t) l5 m5(t) l6 m6(t) l1 l7 m7(t) lN mN(t) LA: 0

  12. 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: c log(1/(1-r)) E{Delay} ≤ “f-Balanced” Rates in L l1 m1(t) (1-r) l2 l2 m2(t) Ex: r= 0.95 l3 m3(t) l4 m4(t) l5 m5(t) l6 m6(t) l1 l7 m7(t) lN mN(t) LA: 0

  13. Lyap. Drift DA(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!

  14. Proof Sketch: Use Combinatorics to show… Maximized by any work-conserving strategy Maximized by LCQ (“max-weight”) c1 > 0, c2 > 0

  15. Thus: The first Lyapunov function (LA) gives: “f-Balanced” Rates in L l1 m1(t) l2 l2 m2(t) Ex: r= 0.95 l3 m3(t) c log(1/(1-r)) l4 m4(t) E{Delay} ≤ (1-r) l5 m5(t) l6 m6(t) l1 l7 m7(t) lN mN(t) LA: 0

  16. Lyapunov Function 2 (LB): (ON/OFF channel) • A 2-part Lyapunov function, inspired by similar function in [Wu, Srikant, Perkins 2007] for different context. c log(1/(1-r)) ≤ E{Delay} Low delay when # non-empty queues is large (via multi-user diversity) (1-r)2 Stabilizes full L Anywhere in L l2 Ex: r= 0.95 LB: l1

  17. *Extensions: (Multi-Rate Channels) • Si(t) in {0, 0.1, 0.2, …, mmax} • ***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.

  18. Conclusions: Order-Optimal (i.e., O(1)) Delay Analysis for the thruput-optimal Max-Weight (LCQ) Algorithm! c log(1/(1-r)) c log(1/(1-r)) ≤ E{Delay} E{Delay} ≤ “f-Balanced” Rates in L Anywhere in L (1-r)2 (1-r) l2 l2 Ex: r= 0.95 Ex: r= 0.95 • 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. l1 l1 LA: LB:

  19. Conclusions: Order-Optimal (i.e., O(1)) Delay Analysis for the thruput-optimal Max-Weight (LCQ) Algorithm! c log(1/(1-r)) c log(1/(1-r)) ≤ E{Delay} E{Delay} ≤ “f-Balanced” Rates in L Anywhere in L (1-r)2 (1-r) l2 l2 Ex: r= 0.95 Ex: r= 0.95 • 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. l1 l1 LA: LB:

More Related