Non-Atomic Selfish Routing Course: Price of Anarchy Professor: Michal Feldman Student: Iddan Golomb 26/02/2014 Talk Outline Introduction What are non-atomic selfish routing games PoA interpretation Main result – Reduction to Pigou-like networks Pigou-like networks Proof of the main result Analysis of consequences How to improve the situation Capacity augmentation Marginal cost pricing Summing-up Motivation Non-Atomic Selfish Routing (1) Directed graph (network): G(V,E) Source-target vertex pairs: (s1,t1),…, (sk,tk) Paths: Pi from si to ti Flow: Non-negative vector over paths. Rate: Total flow. f is feasible for r if: i : f P ri Latency: Function over E: le : R R Non-negative Non-decreasing Continuous (differentiable) Instance: (G,r,l) PPi Non-Atomic Selfish Routing (2) Utilitarian cost: Edges: C f le f e f e eE Paths: C ( f ) l p ( f ) f P P Non-atomic: Many players, negligible influence each Examples – Driving on roads, packet routing over the internet, etc. Price of Anarchy Interpretation PoA: Cost ( N.E. flow) Cost (optimal flow) Pure N.E. (non-atomic) In our case, we will show: N.E. exists All N.E. flows have same total cost Examples when PoA is interesting: Limited influence on starting point (“in the wild”) Limited traffic regulation Optimal flow is instable PoA ≥ 1 The smaller, the better If grows with #players bad sign… Pigou’s Example l(r) N.E: C(f)=1 Optimal: Source f ( x) x (1 x) 1 2 x* 0.5 C ( f * ) 0.75 PoA=4/3 Questions: General graphs? General latency functions? Target l(x)=x Pigou-like Networks l(r) Pigou-like network: 2 vertices: s,t 2 edges: st Source Target l(∙) Rate: r>0 Edge #1: General – l(∙) Edge #2: Constant – l(r) 2 free parameters: r, l Main result (informal): Among all networks, the largest PoA is achieved in a Pigou-like network Pigou Bound l(r) Minimal cost: inf {x l ( x) ( r x) l (r )} Source 0 x r Target l(∙) PoA: r l (r ) sup x0 x l ( x) (r x) l (r ) Pigou bound (α): For any set L of latency functions: r l (r ) x l ( x ) ( r x ) l ( r ) ( L) supsupsup lL r 0 x0 Main Result – Statement and Outline Theorem: For every set L of latency functions, and every selfish routing network with latency functions in L, the PoA is at most α(L) Proof outline: Preliminaries: Flows in N.E. N.E. existence Singular cost at N.E Proof: Freezing edge latencies in N.E. Comparing f* with flow in N.E Flows in N.E. Clarification: N.E. with respect to pure strategies Claim: A flow f feasible for instance (G,r,l) is at N.E. iff i,P1, P2 Pi : f (P1) 0 l(P1( f )) l(P2 ( f )) Proof: Trivial Corollary: In N.E., for each i, the latency is the same for all paths: Li(f). C( f ) k L ( f ) r i 1 i i N.E. Existence (1) Goal: Min i : f PPi p e : f e c ( f ) l ( f ) f eE e e eE e e e s.t: ri pP:eP fP P : f P 0 d Define: le ' le ( x) dx and lP '( f ) le '( fe ) eP Assumptions: le is differentiable, x le ( x)is convex f is a solution iff i,P1, P2 Pi : f (P1) 0 lP1 '( f ) lP2 '( f ) Example: Pigou optimal when le1 ' 2x,le2 ' 2x N.E. Existence (2) t Now, set he ( x) le (t )dt , change goal to: Min 0 h ( f ) eE e e Same constraints for flows in N.E. and for convex program Optimal solutions for convex program are precisely flows at N.E. for (G,r,l)! Corollary: Under same conditions, f* is an optimal flow for (G,r,l) iff it is an equilibrium flow for (G,r,l’) Interpretation: Optimal flow and latency function ≈ Equilibrium flow and latency derivative Singular Value at N.E. Claim: If f , f are flows in N.E then C( f ) C( f ) Proof: The objective function is convex e : le ( f e ) le f e Otherwise: A convex combination of fe , fe would dominate Li ( f e ) Li f e C( f ) L ( f ) r C( f ) C f k i1 i i “Freezing” Latency at N.E Notations: Optimal flow: f, N.E. flow: f* We’ve shown: P, P Pi : f P 0 lP ( f ) lP ( f ) P Pi : lP ( f ) Li Now: k f i1 PPi k k P lP ( f ) ri Li i1 k * f P lP ( f ) ri Li i 1 PPi i 1 * f e f e le ( f e ) 0 eE How much is f* better than f? r l (r ) Pigou bound: ( L) supsupsup lL r 0 x0 x l ( x) (r x) l ( r ) For each edge e Set: l le , r fe , x fe* f l ( f ) e e e (L) * * fe le ( fe ) ( fe fe* ) le ( fe ) f l ( f ) * * * fe le ( fe ) ( fe fe ) le ( fe ) e e e (L) f l ( f ) f le ( f ) e e e ( fe* fe ) le ( fe ) (L) * e * e * Sum for all edges: C f C( f ) ( L) : QED * C f f eE * e f e le ( f e ) 0 C( f ) C( f ) ( fe* fe ) le ( fe ) (L) ( L) Interpretation of Main Result Questions from earlier: General graphs? General latency functions? Result for polynomial latency functions: Degree Representative PoA 1 ax+b (Affine) 4/3 2 ax2+bx+c d d ai x i 0 i 3 3 3 32 d 1 d d 1 d 1 d d 1 d d ln( d ) Result as d goes to infinity the PoA goes to infinity Capacity Augmentation (1) Different comparison from PoA Claim: If f is an equilibrium flow for (G,r,l), and f* is feasible for (G,2r,l), then: C(f) ≤ C(f*) Proof: Li: Minimal cost for f in siti path C ( f ) ri Li i We will define new latency functions l(x) “Close” to current latency function Allows to lower bound a flow f* with respect to C(f) Capacity Augmentation (2) Definition: le ( fe ) if x fe l e ( x) le ( x) otherwise * * * l f f C ( f ) C f e : 1) e e e * * * * * * l ( f ) f C ( f ) f l f l f e e e e e e e e eE eE le ( fe ) f e C ( f ) eE * * * l f f C ( f ) C f e e e e Capacity Augmentation (3) l Allows to lower bound a flow f* with respect to C(f) * * l f f P P 2C f : 2) P l f L f l f f L f f P 0 i * * P P P P i PPi i 2 Li f ri 2 C f i * P Capacity Augmentation (4) 1) * * * l ( f ) f C ( f ) C( f ) e e e e 2) * * l f f P P 2C f eE 1) C f * l e ( fe* ) fe* C( f ) l P ( f * ) f P* C( f ) eE P 2C f C f C f * C f C f : QED Generalization: If f is N.E flow for (G,r,l) and f* is feasible for (G,(1+γ)r,l), then: C f C f * Interpretation: Helpful if we can increase route/link speed (without resorting to central routing) 2) Marginal Cost Pricing (1) We can’t always increase route speed We can (almost) always charge more… Tax e le ' f e f e le le ( x) e le ( x) le ' f e f e Claim: Given (G,r,l), f , e as defined, then: f is an * * equilibrium flow for (G,r,(l+τ)) Reminder: f* is an optimal flow for (G,r,l) iff it is an equilibrium flow for (G,r,l’) Marginal Cost Pricing (2) e le ' f e f e le ' f e : Marginal increase caused by a user f e : Amount of traffic suffering from the increase Tax “aligns” the derivative to fit utilitarian goal Interpretation: PoA is reduced to 1! However, the costs were artificially raised (“sticks” as opposed to “carrots”). Might cause users to leave. Summing Up Realistic problem PoA interpretation Main result – Reduction to Pigou-like networks Every network is easy to compute For some cost functions, PoA is arbitrarily high How to improve the situation Choose specific cost functions Capacity augmentation (“carrot”) – Make better roads Marginal cost pricing (“stick”) – Collect taxes Questions? Bibliography Roughgarden T, Tardos E – How bad is selfish routing? J.ACM, 49(2): 236259, 2002. Stanford AGT course by Roughgarden http://theory.stanford.edu/~tim/f13/f13.html (Lecture 11) Nisan, Roughgarden, Tardos, Vazirani - Algorithmic Game Theory, Cambridge University Press. Chapter 18 (routing games) – 461-486. Cohen J.E., Horowitz P - Paradoxical behavior of mechanical and electrical networks. Nature 352, 699– 701. 1991.