Top Banner
Delay-Based Network Utility Maximization Michael J. Neely University of Southern California http://www-rcf.usc.edu/~mjneely IEEE INFOCOM, San Diego, March 2010 ored in part by the DARPA IT-MANET Program, NSF Career CCF-0747525 a 1 (t ) a 2 (t ) a K ( t) Utility Thruput x k S 1 (t ) S 2 (t ) S K (t )
23

Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Delay-Based Network Utility Maximization

Michael J. NeelyUniversity of Southern California

http://www-rcf.usc.edu/~mjneelyIEEE INFOCOM, San Diego, March 2010

*Sponsored in part by the DARPA IT-MANET Program, NSF Career CCF-0747525

a1(t)

a2(t)

aK(t)

Util

ity

Thruput xk

S1(t)

S2(t)

SK(t)

Page 2: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Network Model: •1-Hop Network with K Queues --- (Q1(t), …, QK(t))•Slotted time, t in {0, 1, 2, … } •S(t) = (S1(t), …, SK(t)) = “Channel State Vector” (i.i.d. over slots)

•x(t) = (x1(t), …, xK(t)) = “Transmission Decision Vector”•a(t) = (a1(t), …, aK(t)) = “Packet Arrival Vector” (i.i.d. over slots)

•Fixed Length Packets: a(t), x(t) are 0/1 vectors.•Arrival Rates: E{a(t)} = (λ1, …, λK).

Reliability is a Function of Transmission Decision: Observe S(t) every slot. Choose 0/1 transmission vector x(t).

Pr[Success on link k | x(t), S(t)] = Ψk(x(t), S(t))

ak(t) Ψk(x(t), S(t))

Page 3: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Packet Dropping: •We can decide to drop packets at any time.•Packets that fail in transmission can either be retransmitted or dropped.•Thruput on channel k = yk = λk – drop rate on channel k

ak(t) Ψk(x(t), S(t))

Delay-Based Control: •Stamp Head-of-Line (HOL) Packets with their Delays Hk(t).

Utility Maximization Objective: •Maximize: g1( y1 ) + g2( y2 ) + … + gK( yK )

where gk(y) are concave, non-decreasing utility functions

Delay= 4

Delay= 2

Delay= 1

Dropsk(t)Queue k: Hk(t) = 4

Page 4: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Prior work on Stochastic Network Optimization:Stability: (“Max-Weight” = “Min-Lyapunov-Drift”)•Tassiulas, Ephremides [1992, 1993] (Minimize drift Δ(t))•Kahale, Wright [1997]•Andrews et. al. [2001]•Neely, Modiano, Rohrs [2003, 2005]•Kobayashi, Caire, Gesbert [2005]

Joint Stability and Utility Optimization:•Neely, Modiano [2003, 2005] (Minimize Δ(t) + V*Penalty(t))•Georgiadis, Neely, Tassiulas [2006]•Stolyar [2005] (Primal-Dual “Fluid Model” analysis)

Special case of “Infinitely Backlogged Sources”: •Agrawal, Subramanian [2002], Kushner, Whiting [2002]•Eryilmaz, Srikant [2005], Lin, Shroff [2004]

All of these references use queue backlog as weights!

Page 5: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Alternative “Delay-Based” Rules that use HOL Delaysas weights are known only for Network Stability:•Mekkittikul, McKeown [1996]•Shakkottai, Stolyar [2002]•Andrews, Kumaran, Ramanan, Stolyar, Vijaykumar, Whiting [2004]

Our work fills the gap by developing a Delay-BasedRule for Maximizing Network Utility Subject to Stability.

ak(t)Ψk(x(t), S(t))

Delay= 4

Delay= 2

Delay= 1

Dropsk(t)

Util

ityThruput xk

Page 6: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Challenges: •Prior “Drift-Plus-Penalty” Algorithm Admit/Drops Packets Immediately when New Packets Arrive: Δ(t) + V*Penalty(t).•This does not directly Affect the HOL Values!•Tricky Correlation Issues between HOL sizes and Decisions!Key Ideas for this paper:•Queue all packets. Admit/Drop only at HOL.•Use “Drift-Plus-Penalty” with a different queue structure•Use a “concavely extended utility function”

Advantages of Delay-Based Approach:•Provides “Delay-Fairness.” Queue-Based Rules canleave loner packets stranded.•Provides Worst Case Delay Guarantees.

Disadvantage: Must know (λ1, …, λK) to implement.

Page 7: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concavely Extending a Utility Function:

0 1yk

gk(yk)

0 1 yk

fk(yk)

-1

slope = ηkslope= ηk

Function gk(yk):Defined over 0 ≤ yk ≤ 1

Function fk(yk):Defined over -1 ≤ yk ≤ 1

Page 8: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Transformed Stochastic Net Optimization Problem: Maximize: f1( θ1 ) + f2( θ2 ) + … + fK( θK )

Subject to: (1) E{Qk} < infinity , for all k in {1, …, K} (2) yk ≥ θk , for all k in {1, …, K}

(3) -1 ≤ θk(t) ≤ 1 , for all t

(4) yk, θk are time averages achievable on the network

Auxiliary Variables and Thruput Variables: yk(t) = λk – Dropsk(t) Time Avg: yk = λk – Dk

θk(t), choose s.t. -1 ≤ θk(t) ≤ 1 Time Avg: θk

Page 9: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Transformed Stochastic Net Optimization Problem: Maximize: f1( θ1 ) + f2( θ2 ) + … + fK( θK )

Subject to: (1) E{Qk} < infinity , for all k in {1, …, K} (2) yk ≥ θk , for all k in {1, …, K}

(3) -1 ≤ θk(t) ≤ 1 , for all t

(4) yk, θk are time averages achievable on the network

Auxiliary Variables and Thruput Variables: yk(t) = λk – Dropsk(t) Time Avg: yk = λk – Dk

θk(t), choose s.t. -1 ≤ θk(t) ≤ 1 Time Avg: θk

Page 10: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Transformed Stochastic Net Optimization Problem: Maximize: f1( θ1 ) + f2( θ2 ) + … + fK( θK )

Subject to: (1) E{Qk} < infinity , for all k in {1, …, K} (2) yk ≥ θk , for all k in {1, …, K}

(3) -1 ≤ θk(t) ≤ 1 , for all t

(4) yk, θk are time averages achievable on the network

Virtual Queue Zk(t) for enforcing constraint (2):

Zk(t) yk(t) = λk – Dropsk(t)θk(t)

Page 11: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Head-of-Line Delay Update Equation (Queue k):

Hk(t+1) = 1{k full}(t) max[Hk(t) + 1 – (μk(t)+Dk(t))Tk(t), 0]

+ 1{k empty}(t) Ak(t)

Inter-Arrival Time Tk(t)

DropsService

Lyapunov Function: L(t) = (1/2)[H1(t)2 + … + HK(t)2] + (1/2)[Z1(t)2 + … + ZK(t)2]

Drift-Plus-Penalty Approach:•Observe {H1(t), …, HK(t)}, {Z1(t),…,ZK(t)}, {S1(t), …, SK(t)}•Take action to minimize:

Δ(t) – V [f1(θ1(t)) + ... + fK(θK(t))]

Page 12: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Resulting Algorithm: 1) (Aux Variables) Each k observes Zk(t). Choose θk(t) to: Maximize : V f(θk(t)) – Zk(t)θk(t)

Subject to: -1 ≤ θk(t) ≤ 12) (Transmission) Observe S(t), H(t), Z(t). Choose x(t) to: Maximize : xk(t) min[Hk(t), Zk(t)] Ψk(x(t),S(t))

Subject to: (x1(t),…, xK(t)) a 0/1 vector

3) (Packet Dropping) For each queue k with HOL packet that was not successfully transmitted, drop iff Zk(t)≤Hk(t).

4) (Update Virtual and Actual Queues)

Δ(t) – V [f1(θ1(t)) + ... + fL(θL(t))]

Σk

Page 13: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Focus on Auxiliary Variable Update: Choose θk(t) to: Maximize : V f(θk(t)) – Zk(t)θk(t)

Subject to: -1 ≤ θk(t) ≤ 1

Key Lemma: If Zk(t) > Vηk, then…

(a) …the above chooses θk(t) = -1

(b) …hence, Zk(t) cannot increase on that slot:

Zk(t) yk(t) = λk – Dropsk(t)θk(t)

= -1 ≥ -1

[This is why we concavely extended the utility function over -1 ≤ y ≤ 1 ]

-1 1

Zk(t) < Vηk

Page 14: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Focus on Auxiliary Variable Update: Choose θk(t) to: Maximize : V f(θk(t)) – Zk(t)θk(t)

Subject to: -1 ≤ θk(t) ≤ 1

Key Lemma: If Zk(t) > Vηk, then…

(a) …the above chooses θk(t) = -1

(b) …hence, Zk(t) cannot increase on that slot:

Zk(t) yk(t) = λk – Dropsk(t)θk(t)

= -1 ≥ -1

[This is why we concavely extended the utility function over -1 ≤ y ≤ 1 ]

-1 1

Zk(t) > Vηk

Page 15: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 16: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 17: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 18: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 19: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 20: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 21: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 22: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Concluding Theorem: Implementing the above algorithm for any parameterV>0, we have…

(a) Delay: Worst Case Delay in Queue k ≤ Vηk + 2 slots.

(b) Total Utility Satisfies:

g1( y1 ) + … + gK( yK ) ≥ g1( y1*) + … + gK( yK*) – B/V

Achieved Utility Optimal Utility

V V

Util

ity

Del

ay

Page 23: Delay-Based Network Utility Maximization Michael J. Neely University of Southern California mjneely IEEE INFOCOM, San Diego, March.

Example Utility Function

gk( y ) = log( 1 + ηk y )

This approximates “proportionally fair” log-utility when ηk is large.

The log-utility log( y ) has a singularity at y=0, and so is not always a good choice of utility function.

V V

Util

ity

Del

ay