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

28
Introduction to Network Utility Maximization (NUM) Richard T. B. Ma School of Computing National University of Singapore CS 4226: Internet Architecture

Upload: others

Post on 08-Feb-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Introduction to Network Utility Maximization (NUM)

Richard T. B. Ma School of Computing

National University of Singapore

CS 4226: Internet Architecture

Page 2: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 3: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

How Does Utility Look Like?

Page 4: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 5: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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 ๐’™ โ‰ฅ ๐ŸŽ

๐’™๐Ÿ ๐’™๐Ÿ

๐‘ช

Page 6: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

How does ๐’™โˆ— look like? ๐’™๐Ÿ ๐’™๐Ÿ

๐‘ช

๐Ÿ ๐Ÿ

๐Ÿ‘ ๐Ÿ’

๐Ÿ“ ๐Ÿ”

๐Ÿ• ๐Ÿ–

๐Ÿ—

๐‘ผ๐Ÿ

๐Ÿ ๐Ÿ

๐Ÿ‘ ๐Ÿ’

๐Ÿ“ ๐Ÿ”

๐Ÿ• ๐Ÿ–

๐Ÿ—

๐ŸŽ ๐Ÿ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿ“ ๐Ÿ” ๐Ÿ• ๐Ÿ–

๐‘ผ๐Ÿ

๐Ÿ ๐Ÿ

๐Ÿ‘ ๐Ÿ’

๐ŸŽ ๐Ÿ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿ“ ๐Ÿ” ๐Ÿ• ๐Ÿ–

๐‘ผ๐Ÿโ€ฒ

๐Ÿ ๐Ÿ

๐Ÿ‘ ๐Ÿ’

๐ŸŽ ๐Ÿ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿ“ ๐Ÿ” ๐Ÿ• ๐Ÿ–

๐‘ผ๐Ÿโ€ฒ

Sort marginal utilities by a descending order

Assign resource unit by unit

๐Ÿ ๐Ÿ

๐Ÿ‘ ๐Ÿ’

๐ŸŽ ๐Ÿ ๐Ÿ ๐Ÿ‘ ๐Ÿ’ ๐Ÿ“ ๐Ÿ” ๐Ÿ• ๐Ÿ– ๐Ÿ—

๐‘ผโ€ฒ

Page 7: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Utility maximization

Maximize ๐‘ˆ ๐’™ = ๏ฟฝ ๐‘ˆ๐‘– ๐‘ฅ๐‘–๐‘›

๐‘–=1

subject to: ๏ฟฝ ๐‘ฅ๐‘–๐‘›

๐‘–=1โ‰ค ๐ถ and ๐’™ โ‰ฅ ๐ŸŽ

A necessary condition: ๐’™โˆ— = ๐‘ฅ1โˆ—,โ‹ฏ , ๐‘ฅ๐‘›โˆ— is optimal only if for any ๐‘–

๐‘ˆ๐‘–โ€ฒ ๐‘ฅ๐‘–โˆ— โ‰ฅ ๐‘ˆ๐‘—โ€ฒ ๐‘ฅ๐‘—โˆ— โˆ€๐‘— unless ๐‘ฅ๐‘–โˆ— = 0

๐’™๐Ÿ ๐’™๐Ÿ

๐‘ช

Page 8: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 9: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 10: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 11: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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, โˆ€๐’™ โˆˆ ๐‘บ.

Page 12: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Local and global maxima

Page 13: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 14: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 15: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Different objectives

Maximize efficiency (aggregate data rate)

๐‘ˆ๐‘– ๐‘ฅ๐‘– = ๐‘ฅ๐‘–

Minimize potential delay

๐‘ˆ๐‘– ๐‘ฅ๐‘– = โˆ’1๐‘ฅ๐‘–

Proportional fairness

๐‘ˆ๐‘– ๐‘ฅ๐‘– = log ๐‘ฅ๐‘–

How about max-min fairness?

Page 16: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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.

Page 17: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Proportional fairness

The objective function becomes

Maximize ๐‘ˆ ๐’™ = ๏ฟฝ๐‘ˆ๐‘– ๐‘ฅ๐‘–

๐‘›

๐‘–=1

= ๏ฟฝ log ๐‘ฅ๐‘–

๐‘›

๐‘–=1

๐‘ˆ ๐’™ is strictly concave sufficient condition: if ๐’™โˆ— is optimal, then

๐›ป๐‘ˆ ๐’™โˆ— ๐‘ป ๐’™ โˆ’ ๐’™โˆ— = ๏ฟฝ๐‘ฅ๐‘– โˆ’ ๐‘ฅ๐‘–โˆ—

๐‘ฅ๐‘–โˆ—

๐‘›

๐‘–=1

โ‰ค 0, โˆ€๐’™ โˆˆ ๐‘บ.

Page 18: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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?

Page 19: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Maximize ๐‘ˆ ๐’™ = ๏ฟฝ๐‘ˆ๐‘– ๐‘ฅ๐‘–

๐‘›

๐‘–=1

= ๏ฟฝ๐‘ฅ๐‘–1โˆ’๐›ผ

1 โˆ’ ๐›ผ

๐‘›

๐‘–=1

๐œต๐‘ผ ๐’™โˆ— =๐’™๐Ÿโˆ’๐œถโ‹ฎ

๐’™๐’โˆ’๐œถ; ๐œต๐‘ผ ๐’™โˆ— ๐‘ป ๐’™ โˆ’ ๐’™โˆ— = ๏ฟฝ

๐’™๐’Š โˆ’ ๐’™๐’Šโˆ—

๐’™๐’Šโˆ— ๐œถ

๐’

๐’Š=๐Ÿ

โ‰ค ๐ŸŽ

Consider a flow ๐‘ 

๏ฟฝ๐‘ฅ๐‘– โˆ’ ๐‘ฅ๐‘–โˆ—

๐‘ฅ๐‘–โˆ—๐›ผ

๐‘–:๐‘ฅ๐‘–โˆ—โ‰ค๐‘ฅ๐‘ โˆ—

+๐‘ฅ๐‘  โˆ’ ๐‘ฅ๐‘ โˆ—

๐‘ฅ๐‘ โˆ— ๐›ผ + ๏ฟฝ๐‘ฅ๐‘— โˆ’ ๐‘ฅ๐‘—โˆ—

๐‘ฅ๐‘—โˆ—๐›ผ

๐‘—:๐‘ฅ๐‘—โˆ—>๐‘ฅ๐‘ โˆ—

โ‰ค 0

โ‡’ ๏ฟฝ ๐’™๐’Š โˆ’ ๐’™๐’Šโˆ—๐’™๐’”โˆ—

๐’™๐’Šโˆ—๐œถ

๐’Š:๐’™๐’Šโˆ—โ‰ค๐’™๐’”โˆ—

+ ๐’™๐’” โˆ’ ๐’™๐’”โˆ— + ๏ฟฝ ๐’™๐’‹ โˆ’ ๐’™๐’‹โˆ—๐’™๐’”โˆ—

๐’™๐’‹โˆ—๐œถ

๐’‹:๐’™๐’‹โˆ—>๐’™๐’”โˆ—

โ‰ค ๐ŸŽ

need to decrease users who got less resource

Page 20: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 21: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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,โ‹ฏ ,๐‘š

Page 22: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

Unconstrained problems

Maximize ๐‘ˆ ๐’™ subject to: ๐‘”๐‘– ๐’™ โ‰ค 0,โˆ€๐‘– = 1,โ‹ฏ ,๐‘š

the KKT necessary conditions ๐›ป๐‘ˆ ๐’™โˆ— = ๏ฟฝ ๐œ‡๐‘–๐›ป๐‘”๐‘– ๐’™โˆ—

๐‘š

๐‘–=1= ๐ŸŽ

๐‘”๐‘– ๐’™โˆ— โ‰ค 0, โˆ€๐‘– = 1,โ‹ฏ ,๐‘š๐œ‡๐‘– โ‰ฅ 0, โˆ€๐‘– = 1,โ‹ฏ ,๐‘š

๐œ‡๐‘–๐‘”๐‘– ๐’™โˆ— = 0, โˆ€๐‘– = 1,โ‹ฏ ,๐‘š

โ‡’๐œ•๐‘“ ๐’™โˆ—

๐‘ฅ๐‘–= 0 โˆ€๐‘– = 1,โ‹ฏ ,๐‘›

Page 23: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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โˆ— = ๐œ‡

๐’™๐Ÿ ๐’™๐Ÿ

๐‘ช

Page 24: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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โˆ— = ๐œ‡

๐’™๐Ÿ ๐’™๐Ÿ

๐‘ช

Page 25: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 26: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

๐’™๐Ÿ

๐’™๐Ÿ‘

๐‘ช๐Ÿ ๐‘ช๐Ÿ

๐’™๐Ÿ

Page 27: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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

Page 28: Introduction to Network Utility Maximization (NUM)tbma/teaching/cs4226y15...Maximize ๐‘ˆ๐’™= ๐‘ˆ๐‘–๐‘ฅ๐‘– ๐‘› ๐‘–=1 subject to: ๐‘ฅ๐‘– ๐‘› ๐‘–=1 โ‰ค๐ถ and ๐’™โ‰ฅ๐ŸŽ

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.