Loading in 2 Seconds...

Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems

Loading in 2 Seconds...

- 88 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' Delay Analysis for Max Weight Opportunistic Scheduling in Wireless Systems' - melora

**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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

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

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

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

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

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

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

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

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!

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:

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:

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

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

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!

Proof Sketch: Use Combinatorics to show…

Maximized by any

work-conserving

strategy

Maximized by LCQ

(“max-weight”)

c1 > 0, c2 > 0

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

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

*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.

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:

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:

Download Presentation

Connecting to Server..