• Background • Primal Algorithm • Dual Algorithm • Primal

Outline
Tokyo Institute of Technology
Tokyo Institute of Technology
Network Optimization and Control
Srinivas Shakkottai and R. Srikant
Foundations and Trends in Networking,
Vol.2,No.3,2007.
Primal-Dual Algorithm for Utility Maximization
• Background
• Primal Algorithm
• Dual Algorithm
• Primal-Dual Algorithm
• Power network
Yosuke Hoshi
FL 10 – 06 – 01
7th,June,2010
1
Tokyo Institute of Technology
Fujita Laboratory
Tokyo Institute of Technology
Background - Network
Fujita Laboratory
Background – Lagrangian
Tokyo Institute of Technology
n3
Tokyo Institute of Technology
Network
Concave function
: traffic source
n1
n4
Strictly concave function
: rate of source
route r’s transmission
link1
x2
s : x1
a strictly concave function has
a unique maximum
: the utility that the source
obtains from transmitting
data on route r at rate xr
link2
n2
example
Lagrangian
Utility Maximization in Networks
Utility
Constraints
Convex function
each source is associated
with a route r
link3
x3
: link 1
: link 2
Lagrangian
Utility
Constraints
strictly concave
: link 3
Tokyo Institute of Technology
Fujita Laboratory
3
Utility
constraints
strictly concave
Tokyo Institute of Technology
Background – Karush-Kuhn-Tucker heorem
x2
convex
Fujita Laboratory
4
Outline
Tokyo Institute of Technology
example
min
constraints
2
Tokyo Institute of Technology
(1,2)
strictly convex
x1
Karush-Kuhn-Tucker theorem
• Background
• Primal Algorithm
• Dual Algorithm
• Primal-Dual Algorithm
• Power network
the optimal value and constraint’s grad is Linear independence,
then there exists constants such that
Tokyo Institute of Technology
Fujita Laboratory
5
Tokyo Institute of Technology
Fujita Laboratory
6
Primal Algorithm - example
Primal Algorithm - example
Tokyo Institute of Technology
Tokyo Institute of Technology
Bl = xr2
Primal Algorithm - rate-update functions at source side
example
strictly
concave
Utility
strictly concave
convex
∗
1
U r = log xr
∗
2
cl
when V(xr) is maximum at point x and x ,
link Penalty
xr
V ( xr )
: link 1
Penalty
: link 2
not to exceed link capacity cl
V (x )
Utility
xr
cl
:Utility
Primal algorithm
( )
V x∗
:Penalty
k r (xr ) : non-negative,increasing and continuous
We want to maximize
Tokyo Institute of Technology
7
Fujita Laboratory
Tokyo Institute of Technology
Primal Algorithm - example
Fujita Laboratory
8
Primal Algorithm – Penalty function
Tokyo Institute of Technology
Tokyo Institute of Technology
Primal algorithm
Network utility maximization problem
: utility (strictly concave)
k1(x1) = 0.01
k2(x2) = 0.01
: the arrival rate on a link l
Penalty function
Bl(.) increases when the arrival rate on a link l
approaches the link capacity cl
x1 = 0.3827
x2 = 0.5412
congestion
price function
: increasing, continuous
function
: convex function
Tokyo Institute of Technology
9
Fujita Laboratory
Tokyo Institute of Technology
y
Fujita Laboratory
Tokyo Institute of Technology
convex
cl
10
Outline
Primal Algorithm
strictly concave
Bl ( y )
fl ( y )
Tokyo Institute of Technology
• Background
• Primal Algorithm
• Dual Algorithm
• Primal-Dual Algorithm
• Power network
strictly concave
the condition of miximization
drive x towards the solution of
Primal algorithm
: non-negative,increasing
and continuous
drive xr towards the direction of ascent
Tokyo Institute of Technology
Fujita Laboratory
11
Tokyo Institute of Technology
Fujita Laboratory
12
Dual Algorithm - example
Dual Algorithm - example
Tokyo Institute of Technology
Tokyo Institute of Technology
Lagrange dual
Dual Algorithm - price-update functions on each of links
example
Utility
The Dual problem
Link capacity
: link 1
: link 2
calculate
Lagrange dual
: Lagrange multiplier
constraints
We need to descend down to gradient
Dual algorithm
!
The Dual problem
Tokyo Institute of Technology
Fujita Laboratory
13
Tokyo Institute of Technology
Dual Algorithm - example
Fujita Laboratory
14
Dual Algorithm
Tokyo Institute of Technology
Tokyo Institute of Technology
Dual algorithm
resource allocation problem
utility
constraints
Each link has a capacity
c1 = 1.0
c2 = 1.5
ω1 = 1.0
ω2 = 3.0
The Lagrange dual
costraints
: Lagrange multiplier
x1 =
x2 =
p1 =
p2 =
0.3750
1.1250
-1.2723e-013
2.6667
The Dual problem
price
To find the direction of a gradient descent, we need to know
Tokyo Institute of Technology
Fujita Laboratory
15
Tokyo Institute of Technology
Fujita Laboratory
Outline
Dual Algorithm
Tokyo Institute of Technology
Before derive
, we calculate
16
Tokyo Institute of Technology
and
Q
• Background
• Primal Algorithm
• Dual Algorithm
• Primal-Dual Algorithm
• Power network
The price of route r
Q
The load on link l
We need to descend down to gradient
!
Dual algorithm
pl increases when the arrival rate is larger than the capacity
Tokyo Institute of Technology
Fujita Laboratory
17
Tokyo Institute of Technology
Fujita Laboratory
18
Primal-Dual Algorithm
Primal-Dual Algorithm
Tokyo Institute of Technology
Primal
rate-update functions
at source side
Tokyo Institute of Technology
Dual
price-update functions
on each of links
Primal-Dual Algorithm - flow base functions
⎧a beginning node b( f )
each flow has ⎨a ending node
e( f )
⎩
Exact form of the update were different in the two cases!
in wireless network,
interference among various
links necessitates scheduling
of links
scheduling
: time of rate
Rind (i ) : inflow rate (destination d at node i)
n3
x3
n4
x2
b( f )
Rij
n1
s : x1
n2
Rind (i )
i
d
Rout
(i )
43
42
24
14
d
Rout
(i ) : outflow rate (destination d at node i)
d
e( f )
time
the arrival rate is less than the departure rate
Primal-Dual Algorithm
Tokyo Institute of Technology
Fujita Laboratory
19
Tokyo Institute of Technology
Primal-Dual Algorithm example
Fujita Laboratory
Primal-Dual Algorithm example
Tokyo Institute of Technology
Tokyo Institute of Technology
Utility
Constraints
20
the congestion control problem
1→3
the scheduling problem
3→2
2→3
Primal-Dual Algorithm
the primal algorithm
Lagrange function
the dual algorithm
at each ⎧ node i
⎨
⎩ destination d
at each source f
Utility
constraints
Decoupled
calculated at each time instant by solving the scheduling problem
Tokyo Institute of Technology
Fujita Laboratory
21
Tokyo Institute of Technology
Primal-Dual Algorithm
Fujita Laboratory
22
Primal-Dual Algorithm
Tokyo Institute of Technology
Tokyo Institute of Technology
Lagrange function
the optimization problem
each flow constraints
the congestion control problem
the scheduling problem
i→d
Primal-Dual Algorithm to solve the congestion control problem
the primal algorithm
Lagrange function
Decoupled
xf’s terms
Tokyo Institute of Technology
at each source f
the dual algorithm
at each ⎧ node i
⎨
⎩ destination d
pid : Lagrange multiplier
calculated at each time instant by solving the scheduling problem
R’s terms
Fujita Laboratory
23
Tokyo Institute of Technology
Fujita Laboratory
24
Power network
Outline
Tokyo Institute of Technology
Tokyo Institute of Technology
purpose
to supply each building demands
for energy ri
• Background
• Primal Algorithm
• Dual Algorithm
• Primal-Dual Algorithm
• Power network
constraints
battery
Utility function
purpose
Tokyo Institute of Technology
Fujita Laboratory
25
Tokyo Institute of Technology
Power network
battery
Fujita Laboratory
26
Power network
Tokyo Institute of Technology
Tokyo Institute of Technology
constraints
energy to building
line to charge battery
a→e
b→f
the congestion control problem
c→g
battery to building
energy to charge battery
e→a
d→e
f→b
d→f
g→c
d→g
the scheduling problem
Lagrange function
Tokyo Institute of Technology
Fujita Laboratory
27
Tokyo Institute of Technology
Fujita Laboratory
28