Network Utility Maximization Topics in Data Mining Fall 2015 Bruno Ribeiro 2015 Bruno Ribeiro
Data Mining for Smar t Cities Need congestion control 2
Supply and Demand (A Dating Website [China]) Males Females Need congestion control 3
Internet Need congestion control 4
Internet = Largest Optimization Problem in History } Internet Congestion Control Optimization Largest Optimization Problem in History Daily nearly 9 billion computers join the computation 2015 Bruno Ribeiro 5
Markets } Markets defined by Google Amazon Yahoo! Ebay } Massive computational power available for running these markets } Important to find good models and algorithms for these markets 6
Internet Resource Allocation } network: links {l}, capacities {c l } } sources S: (L(s), U s (x s )), s S L(s) - links used by source s U s (x s ) utility, strictly concave function of source rate x s U s (x s ) x s User 1 U 1 x ( 1 ) User 0 U 0 ( x 0 ) c A User 2 c B U 2 ( x 2 ) 7
Frank Kelly s System Problem subject to 8
Online Dating Resource Allocation Max no. messages from user 1 (per day) Max messages to user 1 (per day) x 1 x 2 < c 1 x 2 x 1 + x 3 + α x 4 < c 2 x 3 (1-α) x 4 < c 3 x 4 0 < c 4 9
Optimization Problem system problem } maximize system utility (note: all sources equal) } constraint: bandwidth used less than capacity } centralized solution to optimization impractical must know all utility functions impractical for large number of sources we ll see: congestion control as distributed asynchronous algorithms to solve this problem 10
Issues } will users truthfully reveal their utility functions? } if not, can we design a pricing scheme (mechanism) to induce truth-telling? } is there a distributed algorithm to compute the prices? } what are good choices for utilities? } fairness among users? 11
Max-min Fairness rates {x r } are max-min fair if for any other feasible rates {y r }, if y s > x s, then p, such that x p x s and y p < x p What is corresponding utility function? U r ( x r ) = lim α 1 1 α xr α 12
Propor tional fairness } rates {x r } are proportionally fair if for any feasible {y r }, } corresponds to U r (x r ) = log x r } weighted proportional fairness if U r (x r ) = w r log x r 13
Primal-Dual Problem Primal: minimize s.t. and Dual: mazimize s.t. and 14
The Duality Theorem (Gale, Kuhn, Tucker 1951) } The primal has an optimal solution iff the dual has an optimal solution } The objective functions of optimal solutions are equivalent 15
Distributed algorithm Optimization problem decouples into (Kelly): greedy optimization problem for every session max U r (x r ) q r x r price q r given by network as function of rates, q r = p l where p l is (shadow) price for link l provides solution to system problem 16
Computing Source Rates 17
Remove constraints: Primal approach } Consider following problem } g l (y) penalty function g l (y) non decreasing, convex and f l (y) = dg l (y)/dy g l (y) as y 18
19
} p l (t) price of link l at time t } optimization problem decouples into: greedy optimization problem for every session price q s given by network as function of rates 20
Controller design } algorithm to maximize h(x) } progressively change x st h(x(t+δ)) > h(x(t)) by choosing direction of maximum ascent } 1-D x(t+δ) = x(t) + k(t) δ dh/dx } as δ 0, described by x! = k( t) dh dx 21
Source Algorithm } source needs only its path price: x! ( xr )( Ur '( xr ) qr ) } k r () nonnegative nondecreasing function r = k r } above algorithm converges to unique solution for any initial condition } can show convergence using Lyapunov functions } example: q r loss/marking probability 22
Pricing } can network choose pricing scheme to achieve fair resource allocation? } suppose network charges price q r ($/message) where q r = p l } user s strategy: spend w r ($/sec.) to maximize 23
Optimal User Strategy } equivalently, 24
Distributed Computation } with optimal choice of w r controller becomes } we have already seen that this solves 25
Price Takers vs. Strategic Users } Kelly Mechanism: users are price takers, i.e., user does not know the impact of its action on the price } strategic users: 26
Efficiency and Competition } price takers: selfish users can maximize social welfare } strategic users: competition leads to loss of efficiency, i.e., social welfare is not maximized 27
Proportionally-Fair Controller If utility function is then a controller that implements it is given by 28
Price functions Mark packet when queue length above threshold B } example - M/M/1 queue < = = l l l l B l l l l l c y, c y, ) c / y ( ) y ( f p 1 Or mark them earlier 29
Price functions Drop packets when queue is full } example - M/M/1 queue Probability of loss where ρ = y l / c l for large B, 1 ρ 1 ρ B+1 ρ B p l = f l ( y l ) = ( y l c y l l ) + 30