Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐๐=...
Transcript of Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐๐=...
Introduction to Network Utility Maximization (NUM)
Richard T. B. Ma School of Computing
National University of Singapore
CS 4226: Internet Architecture
Outline
Utility maximization and convex optimization Assumptions of utility functions Intuitive solutions of utility maximization Convex set, function and optimization framework
Utility maximization and fairness Max-min, proportional fairness and ๐ผ-fairness
KarushโKuhnโTucker (KKT) conditions Lagrange multiplier and shadow price
How Does Utility Look Like?
Assumptions on utility function
We assume that each ๐๐ โ is defined over 0, +โ continuously differentiable non-decreasing (not critical) concave (most intriguing)
Interpretations and reasons non-negative resource allocation the more you get, the happier you are marginal happiness decreases (diminishing return) guarantee existence of optimal solution
Utility maximization
Multiple flows share a resource:
Maximize ๐1 ๐ฅ1 + ๐2 ๐ฅ2 subject to: ๐ฅ1 + ๐ฅ2 โค ๐ถ, ๐ฅ1 โฅ 0 and ๐ฅ2 โฅ 0
Maximize ๐ ๐ = ๏ฟฝ ๐๐ ๐ฅ๐๐
๐=1
subject to: ๏ฟฝ ๐ฅ๐๐
๐=1โค ๐ถ and ๐ โฅ ๐
๐๐ ๐๐
๐ช
How does ๐โ look like? ๐๐ ๐๐
๐ช
๐ ๐
๐ ๐
๐ ๐
๐ ๐
๐
๐ผ๐
๐ ๐
๐ ๐
๐ ๐
๐ ๐
๐
๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐
๐ผ๐
๐ ๐
๐ ๐
๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐
๐ผ๐โฒ
๐ ๐
๐ ๐
๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐
๐ผ๐โฒ
Sort marginal utilities by a descending order
Assign resource unit by unit
๐ ๐
๐ ๐
๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐
๐ผโฒ
Utility maximization
Maximize ๐ ๐ = ๏ฟฝ ๐๐ ๐ฅ๐๐
๐=1
subject to: ๏ฟฝ ๐ฅ๐๐
๐=1โค ๐ถ and ๐ โฅ ๐
A necessary condition: ๐โ = ๐ฅ1โ,โฏ , ๐ฅ๐โ is optimal only if for any ๐
๐๐โฒ ๐ฅ๐โ โฅ ๐๐โฒ ๐ฅ๐โ โ๐ unless ๐ฅ๐โ = 0
๐๐ ๐๐
๐ช
Convex set and convex function
A set ๐บ is convex iff โ๐,๐ โ ๐บ and ๐ผ โ 0,1 , 1 โ ๐ผ ๐ + ๐ผ๐ โ ๐บ
A function ๐ is convex iff for any ๐ผ โ 0,1
๐ 1 โ ๐ผ ๐ + ๐ผ๐ โค 1 โ ๐ผ ๐ ๐ + ๐ผ๐ ๐
if and only if its epigraph is a convex set
convex set non-convex set convex function
Concave function and property
A function ๐ is concave if for any ๐ผ โ 0,1
๐ 1 โ ๐ผ ๐ + ๐ผ๐ โฅ 1 โ ๐ผ ๐ ๐ + ๐ผ๐ ๐
Properties of concave functions: A function ๐ ๐ is concave over a convex set iff โ ๐ ๐ is a convex function over the set.
Sum of concave functions is also concave
A differentiable function ๐ ๐ฅ is concave if ๐โฒ ๐ฅ is monotonically decreasing: a concave function has a decreasing slope
Optimality for convex optimization
Minimize ๐ ๐ subject to: ๐ โ ๐บ โ ๐น๐
If ๐บ is convex and ๐ ๐ is convex over ๐บ any local minimum of ๐(ยท) is a global minimum if ๐ โ is strictly convex, then there exists at
most one global minimum
Necessary condition: if ๐โ is optimal, then
๐ป๐ ๐โ ๐ป ๐ โ ๐โ โฅ 0, โ๐ โ ๐บ. it becomes sufficient under convex optimization
Our utility maximization problem
Maximize ๐ ๐ โ Minimize โ ๐ ๐ subject to: ๐ โ ๐บ = ๐:๐๐ ๐ โค 0,โ๐ = 1,โฏ ,๐
Functions ๐๐ ๐ are linear, so ๐บ is convex ๐ ๐ is concave over ๐บ
any local maximum of ๐(ยท) is a global maximum strictly concave ๐ โ unique global maximum
Sufficient condition: ๐โ is optimal if
๐ป๐ ๐โ ๐ป ๐ โ ๐โ โค 0, โ๐ โ ๐บ.
Local and global maxima
Outline
Utility maximization and convex optimization Assumptions of utility functions Intuitive solutions of utility maximization Convex set, function and optimization framework
Utility maximization and fairness Max-min, proportional fairness and ๐ผ-fairness
KarushโKuhnโTucker (KKT) conditions Lagrange multiplier and shadow price
A different point of view
utility: a measure of user satisfaction when getting a data rate from the network need to know usersโ applications and utility
functions in practice
A new view: utility function is assigned to user in the network by a service provider with the goal of achieving a certain goal maximize efficiency maximize fairness
Different objectives
Maximize efficiency (aggregate data rate)
๐๐ ๐ฅ๐ = ๐ฅ๐
Minimize potential delay
๐๐ ๐ฅ๐ = โ1๐ฅ๐
Proportional fairness
๐๐ ๐ฅ๐ = log ๐ฅ๐
How about max-min fairness?
Proportional fairness
Definition: a feasible allocation solution ๐โ is proportional fair if for any feasible ๐,
๏ฟฝ๐ฅ๐ โ ๐ฅ๐โ
๐ฅ๐โ
๐
๐=1
โค 0.
for any allocation, the sum of proportional changes in the utilities will be non-positive.
if some rate increases, there is another user whose rate will decrease and the proportion by which it decreases is larger.
Proportional fairness
The objective function becomes
Maximize ๐ ๐ = ๏ฟฝ๐๐ ๐ฅ๐
๐
๐=1
= ๏ฟฝ log ๐ฅ๐
๐
๐=1
๐ ๐ is strictly concave sufficient condition: if ๐โ is optimal, then
๐ป๐ ๐โ ๐ป ๐ โ ๐โ = ๏ฟฝ๐ฅ๐ โ ๐ฅ๐โ
๐ฅ๐โ
๐
๐=1
โค 0, โ๐ โ ๐บ.
A unified form of utility
Consider the form of ๐ผ-fairness : ๐๐ ๐ฅ๐ =
๐ฅ๐1โ๐ผ
1 โ ๐ผ for some ๐ผ โฅ 0
maximize aggregate rate (efficiency) ๐ผ = 0 minimize potential delay ๐ผ = 2 how about ๐ผ = 1? (not defined, use LโHospital)
๐๐ ๐ฅ๐ = ๏ฟฝ๐ฅ๐1โ๐ผ
1 โ ๐ผif ๐ผ โ 1
log ๐ฅ๐ if ๐ผ = 1
how about ๐ผ =โ +โ? why does it look so strange? how to remember?
Maximize ๐ ๐ = ๏ฟฝ๐๐ ๐ฅ๐
๐
๐=1
= ๏ฟฝ๐ฅ๐1โ๐ผ
1 โ ๐ผ
๐
๐=1
๐ต๐ผ ๐โ =๐๐โ๐ถโฎ
๐๐โ๐ถ; ๐ต๐ผ ๐โ ๐ป ๐ โ ๐โ = ๏ฟฝ
๐๐ โ ๐๐โ
๐๐โ ๐ถ
๐
๐=๐
โค ๐
Consider a flow ๐
๏ฟฝ๐ฅ๐ โ ๐ฅ๐โ
๐ฅ๐โ๐ผ
๐:๐ฅ๐โโค๐ฅ๐ โ
+๐ฅ๐ โ ๐ฅ๐ โ
๐ฅ๐ โ ๐ผ + ๏ฟฝ๐ฅ๐ โ ๐ฅ๐โ
๐ฅ๐โ๐ผ
๐:๐ฅ๐โ>๐ฅ๐ โ
โค 0
โ ๏ฟฝ ๐๐ โ ๐๐โ๐๐โ
๐๐โ๐ถ
๐:๐๐โโค๐๐โ
+ ๐๐ โ ๐๐โ + ๏ฟฝ ๐๐ โ ๐๐โ๐๐โ
๐๐โ๐ถ
๐:๐๐โ>๐๐โ
โค ๐
need to decrease users who got less resource
Outline
Utility maximization and convex optimization Assumptions of utility functions Intuitive solutions of utility maximization Convex set, function and optimization framework
Utility maximization and fairness Max-min, proportional fairness and ๐ผ-fairness
KarushโKuhnโTucker (KKT) conditions Lagrange multiplier and shadow price
KarushโKuhnโTucker (KKT) conditions
we know a necessary/sufficient condition:
๐ป๐ ๐โ ๐ป ๐ โ ๐โ โค 0, โ๐ โ ๐บ. if the constraint set can be written as
subject to: ๐๐ ๐ โค 0,โ๐ = 1,โฏ ,๐
KKT: if ๐โ is optimal, for each ๐๐ โ , there is a Lagrange multiplier ๐๐ โฅ 0 such that
๐ป๐ ๐โ = ๏ฟฝ ๐๐๐ป๐๐ ๐โ๐
๐=1๐๐ ๐โ โค 0, โ๐ = 1,โฏ ,๐๐๐๐๐ ๐โ = 0, โ๐ = 1,โฏ ,๐
Unconstrained problems
Maximize ๐ ๐ subject to: ๐๐ ๐ โค 0,โ๐ = 1,โฏ ,๐
the KKT necessary conditions ๐ป๐ ๐โ = ๏ฟฝ ๐๐๐ป๐๐ ๐โ
๐
๐=1= ๐
๐๐ ๐โ โค 0, โ๐ = 1,โฏ ,๐๐๐ โฅ 0, โ๐ = 1,โฏ ,๐
๐๐๐๐ ๐โ = 0, โ๐ = 1,โฏ ,๐
โ๐๐ ๐โ
๐ฅ๐= 0 โ๐ = 1,โฏ ,๐
Utility maximization
Max ๐ ๐ = ๐1 ๐ฅ1 + ๐2 ๐ฅ2 ; s.t. ๐ฅ1 + ๐ฅ2 โค ๐ถ
๐ป๐ ๐โ = ๐๐ป๐ ๐โ๐ ๐โ = ๐ฅ1โ + ๐ฅ2โ โ ๐ถ โค 0
๐ โฅ 0๐๐ ๐โ = ๐ ๐ฅ1โ + ๐ฅ2โ โ ๐ถ = 0
Either 1) ๐ = 0 & ๐ป๐ ๐โ = 0 or 2) ๐ > 0 &
๐ป๐ ๐โ = ๐๐ป๐ ๐โ โ ๏ฟฝ๐1โฒ ๐ฅ1โ = ๐๐2โฒ ๐ฅ2โ = ๐
๐๐ ๐๐
๐ช
Lagrange multiplier and shadow price
Max ๐ ๐ = ๐1 ๐ฅ1 + ๐2 ๐ฅ2 ; s.t. ๐ฅ1 + ๐ฅ2 โค ๐ถ
the Lagrange multiplier ๐ corresponds to the marginal utility achieved at the maximum
โshadow priceโ: if we can add additional resource, how much can we increase utility
Either 1) ๐ = 0 & ๐ป๐ ๐โ = 0 or 2) ๐ > 0 &
๐ป๐ ๐โ = ๐๐ป๐ ๐โ โ ๏ฟฝ๐1โฒ ๐ฅ1โ = ๐๐2โฒ ๐ฅ2โ = ๐
๐๐ ๐๐
๐ช
Utility maximization
๐ป๐ ๐โ = ๐๐ป๐ ๐โ + ๐1โ10 + ๐2
0โ1
๐ ๐โ = ๐ฅ1โ + ๐ฅ2โ โ ๐ถ โค 0;โ๐ฅ1 โค 0;โ๐ฅ2 โค 0๐ โฅ 0; ๐1 โฅ 0; ๐2 โฅ 0
๐๐ ๐โ = ๐ ๐ฅ1โ + ๐ฅ2โ โ ๐ถ = ๐1๐ฅ1โ = ๐2๐ฅ2โ = 0
for the non-trivial case of ๐ > 0
โ ๏ฟฝ๐1โฒ ๐ฅ1โ = ๐ โ ๐1๐2โฒ ๐ฅ2โ = ๐ โ ๐2
๐๐ ๐๐
๐ช Max ๐ ๐ = ๐1 ๐ฅ1 + ๐2 ๐ฅ2 ; s.t. ๐ฅ1 + ๐ฅ2 โค ๐ถ, ๐ฅ1 โฅ 0 and ๐ฅ2 โฅ 0
Network Utility
Max ๐ ๐ = ๐1 ๐ฅ1 + ๐2 ๐ฅ2 + ๐3 ๐ฅ3 ; s.t. ๐ฅ1 + ๐ฅ2 โค ๐ถ1, ๐ฅ2 + ๐ฅ3 โค ๐ถ2 and ๐ โฅ 0
๐ป๐ ๐โ = ๐๐ถ1110
+ ๐๐ถ2101
+ ๐1โ100
+ ๐20โ10
+ ๐300โ1
๐ฅ1 + ๐ฅ2 โ ๐ถ1 โค 0, ๐ฅ2 + ๐ฅ3 โ ๐ถ2 โค 0 and โ ๐ฅ๐ โค 0๐๐ถ1 โฅ 0; ๐๐ถ2 โฅ 0; ๐1 โฅ 0; ๐2 โฅ 0; ๐3 โฅ 0
๐๐ถ1 ๐ฅ1โ + ๐ฅ2โ โ ๐ถ1 = ๐๐ถ2 ๐ฅ1
โ + ๐ฅ3โ โ ๐ถ2 = ๐๐๐ฅ๐โ = 0
โ ๏ฟฝ๐1โฒ ๐ฅ1โ = ๐๐ถ1 + ๐๐ถ2 โ ๐1
๐2โฒ ๐ฅ2โ = ๐๐ถ1 โ ๐2๐3โฒ ๐ฅ3โ = ๐๐ถ2 โ ๐3
๐๐
๐๐
๐ช๐ ๐ช๐
๐๐
Further topics
We have characterized the optimization solution. How can we find it? Different optimization algorithms
In practice, global information might not
be available. How can we solve it in a distributed manner? Primal-dual decomposition โฆ another course Convergence of the algorithms
Further Readings F. P. Kelly, โCharging and rate control for
elastic trafficโ, Euro. Trans. Telecommun., vol. 8, pp. 33โ37, 1997.
F. P. Kelly, A. Maulloo, and D. Tan, โRate control for communication networks: Shadow prices, proportional fairness and stabilityโ, J. Oper. Res. Soc., 49(3), 1998.
Steven H. Low and David E. Lapsley, โOptimization Flow ControlโI: Basic Algorithm and Convergenceโ, IEEE/ACM Transactions on Networking, 7(6), 1999.