You are on page 1of 28

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

KarushKuhnTucker (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: and
=1
How does look like?


Sort marginal
utilities by a
descending order
Assign resource
unit by unit



Utility maximization




Maximize =
=1

subject to: and
=1

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 function convex set non-convex set


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

KarushKuhnTucker (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 ,


0.

=1
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 = = log
=1 =1

is strictly concave
sufficient condition: if is optimal, then


= 0, .

=1
A unified form of utility
Consider the form of -fairness :
1
= for some 0
1
maximize aggregate rate (efficiency) = 0
minimize potential delay = 2
how about = 1? (not defined, use LHospital)

1
= 1 if 1
log if = 1
how about = +?
why does it look so strange? how to remember?

1
Maximize = =
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

KarushKuhnTucker (KKT) conditions


Lagrange multiplier and shadow price
KarushKuhnTucker (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

Max = 1 1 + 2 2 ;

s.t. 1 + 2 , 1 0 and 2 0
1 0
= + 1 + 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

Network Utility


Max = 1 1 + 2 2 + 3 3 ;
s.t. 1 + 2 1 , 2 + 3 2 and 0
1 1 1 0 0
= 1 1 + 2 0 + 1 0 + 2 1 + 3 0
0 1 0 0 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. 3337, 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 ControlI: Basic
Algorithm and Convergence, IEEE/ACM
Transactions on Networking, 7(6), 1999.

You might also like