introduction to network utility maximization (num)tbma/teaching/cs4226y15...maximize ๐‘ˆ๐’™=...

Post on 08-Feb-2020

5 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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.

top related