Price Of Anarchy: Routing Lecturer: Yishay Mansour Ido Trivizki and Mille Gandelsman Routing – Lecture Overview Optimize the performance of a congested and unregulated network: Network. Rate of traffic between each pair of nodes. Latency function. Selfish behavior does not perform as well as an optimized regulated network. Investigating the price of anarchy (PoA) by exploring the characteristics of Nash Equilibrium and mininal latency optimal flow. Lecture overview – cont. We will prove that: If the latency of each edge is a linear function, PoA is at most 4/3. In atomic routing the PoA is bounded by 2.6. I the latency function is known to be continuous, non-decreasing and differentiable, there is no bounded coordination ratio. Introduction Job scheduling, discussed last time, can be viewed as a private case of routing. Each player has to choose exactly one line to pass his traffic through. Parallel lines routing: Introduction – cont. Today – the problem of routing traffic in a network: Given a rate of traffic between pairs of nodes in the network, find an assignment of the traffic to paths so that the total latency is minimized. It is often impossible to impose regulation, so we are interested in those settings where each user selects his minimum latency path: Non-cooperative game in which each player plays best response – expect the routes to form a Nash Equilibrium. Two player models Non-atomic: we can split up traffic to several paths. Atomic: each user chooses a single path on which he transports all of his traffic. The global target function in both cases is to minimize the total latency suffered by all users. Reminder: The Price of Anarchy The ration between the worst value of an equilibrium and that of the optimal: PoA max xPNE C ( x) OPT Where OPT denotes the minimum latency among all feasible flows and C(x) is total cost of flow x. Our goal is to bound the PoA. Example 1: routing on parallel lines n players with weights w , i 1,..., n (w 0) m lines with speeds s , i 1,..., m The players are allowed to split their flow between different lines. Nash Equilibrium is achieved when the load on each line is: w W i i i n Li (a ) i 1 m j 1 i sj S Example 1 – cont. Routing on parallel lines The optimum is achieved by dividing the flow equally between the lines. Therefore – we achieve a PoA=1 Example 2: Pigou’s Network C(x)=1 T S C(x)=x Nash flow will only traverse in the lower path. OPT will divide the flow equally among the two paths. Example 2 – cont. The target function is 1 (1 x) x x and it reaches minimum with value ¾, when x=1/2, giving a PoA of 4/3. Combing the example with the tighter upper bound to be shown, it is a demonstration of a tight bound of 4/3 for linear latency functions. Example 3: Pigou’s Non-Linear Network C(x)=1 T S c( x) x p The flow at Nash will continue to use only the lower path. Example 3 – cont. Let (1-x) be the flow on the upper path in the optimum solution, and x - the flow on the lower path, respectively. The overall cost is (1 x) 1 x x 1 x x . Proof that lim OPT 0: p p if we choose (1 x) log p : p 1 log p 1 0 p p 1 p lim OPT lim (1 x x p 1 ) lim p p p 1 Example 3 – summary In this case lim PoA It means that the PoA cannot be bounded from above in some cases when nonlinear latency functions are allowed. p Example 4 – Braess’s paradox There are exactly two disjoint paths from s to t, each of them follows exactly two edges. Example 4 – cont. The optimal flow coincides with the Nash equilibrium: half of the traffic takes the upper path, and the half the lower. The latency perceived by each user is 3/2. In any other non-equal distribution, there will be a difference in the total latency. Users will be motivated to reroute to the less congested path. Example 4 – cont. Consider adding a fifth edge with latency 0. The optimal flow stays 3/2. Nash will only occur by routing the entire traffic on the single svwt path. Example 4 – cont. The latency each user experiences increases to 2. Amazingly, adding a new zero latency link had a negative effect for all agents. Formal Definition of the Problem Consider a directed graph Input: G (V , E ) k pairs of source and destination vertices (si , ti ) Demand r ( the amount of required flow between si and ti ). Assume: r 0 . Each edge e E is given a load dependant non decreasing and differentiable latency function l : R R i i e Output: Flow f - a function that defines for each path flow f . f induces flow on edge e : f f p e p:e p p p a Formal Definition – cont. We denote the set of simple paths connecting the pair (si , ti ) by and let . Solution is feasible if i : f r . The latency of the a path is defines as: l (f) l (f ) i i i pi p i e Our goal is to find a flow that will minimize the total social cost of a flow is defined as: C( f ) l ( f ) f l ( f ) f pP p e p e p p eE e e e The cost of player i : ci ( f ) pP l p ( f ) f p i Flows at Nash equilibrium Lemma: A feasible flow f for instance (G, r , l ) is Nash Equilibrium if for every i {1,..., k} and p, p' i : if f p 0 then l p ( f ) l p ' ( f ) Corollary: is a flow at Nash Equilibrium for instance (G , r , l ) if and only if C ( f ) Li ( f ) ri , where i f Li ( f ) min pi lp ( f ) Optimal Solution – flow Our goal is find a feasible flow f that will minimize the total cost. Let ce ( x) le ( x) x . Clearly, it follows that C ( f ) eE ce ( f e ) To find the optimal flow c*e ( x) , we will look at ce ' ( x) le ( x) x le ' ( x) . We assume that for each edge e E: ce (x) is convex and therefore C ( f ) is also convex. ce (x) is differentiable. The Optimality Condition Define: and c p ' ( x) e p ce ' ( x) Let (G, r , l ) be a dividable game. For each edge e E the function ce ( x) le ( x) x is convex, continuous and differentiable function. A flow f is optimal for (G, r , l ) if and only if: ce ' ( x ) d ce ( x ) dx p, p' i : f p 0 c p ' ( f ) c p ' ' ( f ) The Optimality Condition – cont. Notice the resemblance between the characterization of optimality conditions and Nash Equilibrium. An optimal flow can be interpreted as a Nash Equilibrium with respect to a different edge latency functions. We will use this resemblance to reach the bound on PoA. The Optimality Condition – cont. le * (c) ce ' ( x) (le ( x) x)' le ( x) x le ' ( x) Let: l * ( x) Corollary: p l * ( x) e p e is an optimal flow for (G, r , l ) if and only if it is Nash Equilibrium for the instance (G , r , l*) f Proof: By the optimality condition: f is optimal for l if and only if i, p, p' : f 0 c ' ( f ) c ' ( f ) , if and only if (by def.) i, p, p' : f 0 l * ( f ) l * ( f ) , if and only if f is Nash Equilibrium for l * . i p i p p p' p p' The optimality condition - proof Definition: a set S is called a convex set if A, B S ,0 1, A (1 ) B S Intuitively it means that a set S is convex if the linear segment connecting two points in the set, is entirely in the set. The optimality condition - proof Definition: a function f is called convex function if x, y,0 1 : f (x (1 ) y ) f ( x) (1 ) f ( y ) The optimality condition - proof Let F (x) be a convex function, and S a convex set. A convex programming is of the form: min F ( x), s.t. x S Lemma: If F (x ) is strictly convex, then the solution is unique. Proof: Assume that x y are both minimum solutions. 1 1 z x y z S . Let 2 2 , because S is convex: 1 1 F ( z ) F ( x ) F ( y) , F (x ) Since is strictly convex: 2 2 contradicting F (x) and F ( y ) being minimal . The optimality condition - proof Lemma: Lemma: If F (x) is convex, then the solution set U is convex. If F (x) is convex and y is not optimal then y is not a local minimum. Consequently, any local minimum is also a global minimum. Proof: Assume that y is not optimal, i.e. x : F ( x) F ( y ) let z x (1 ) y , Since F is convex: F ( z ) F ( x) (1 ) F ( y ) F ( y ) for every 0 1 . Existence of flows at Nash Equilibrium Theorem: For every splittable game (G, r , l ) There exists at least one Nash Equilibrium If f and f ' are Nash equilibria then for every e, ce ( f ) ce ( f ) Existence of flows at Nash Equilibrium - Proof Define: h ( x) l ( y)dy , so that h 'e ( x) le ( x) Further define a potential function: x e 0 e ( f ) he ( f e ) e is non-negative, monotonous, increasing and differential. Is a convex function. Nash equillibrium flows are global minimizers of he Existence of flows at Nash Equilibrium – Proof Cont. By Weierstrass’s Theorem, has a minimum, and therefore Nash equilibrium exists. Let f and f ' be Nash equillibria: Define g f (1 ) f for [0,1] is convex ( g ) ( f ) (1 )( f ) f and f ' minimize , and we get ( f ) ( f ) ( g ) is sum of convex functions, and therefore it’s possible only if all members of the sum are equal, and therefore: ce ( g ) ce ( f ) ce ( f ) Bounding the Price of Anarchy PoA Nash OPT Theorem: If there exists a constant 1 such that x : he ( x) ce ( x) then PoA Nash C ( f ) ce ( f e ) ( by assumption) e he ( f e ) ( f is OPT for he ) e he ( f e *) (le is non decreasing he ( x) ce ( x)) e ce ( f e *) C ( f *) OPT e Corollary: If the latency function is polynomial function of degree d , then PoA d 1 A tight bound for linear latency functions A natural example for such a model: Network with congestion control (e.g.: TCP) Using the corollary, we get a bound of 2 We’ll show a bound of 4/3 (which is tight, as we’ve seen in Example 2) le ae x be When le be , both Nash and OPT (equal) will route all the flow in the shortest paths. A tight bound for linear latency functions - Proof Lemma (proof is trivial and omitted): 2 y xy x 2 4 is a flow at Nash equilibrium, and f * is an optimal flow. Given a flow f let f l ae fe be and C ( x) l e xe f e f f A tight bound for linear latency functions – Proof Cont C f ( x) (ae f e be )xe (ae f e xe be xe ) (by the lemma) (ae xe2 be xe ) ae fe2 1 1 C ( x) C ( f ) 4 4 As x : C f ( f ) C f ( x) : 1 C f ( f ) C ( f ) C ( f *) C ( f ) 4 3 C ( f ) C ( f *) 4 4 C ( f ) C ( f *) 3 4 PoA 3 Unsplittable (Atomic) Routing Example 1: 4 players, all with demand 1 (r = 1): (U,V), (U,W), (V,W), (W,V) An optimal and Nash equilibrium flow would use only edges with l ( x) x at total cost of 4 Unsplittable (Atomic) Routing – Exmaple 1 Cont. Example 1 (cont.): But the optimal solution is not the only NE. Another Nash equilibrium: Player 1: U->W->V; Player 2: U->V->W; Player 3: V->U->W; Player 4: W->U->V With total cost of 10, which gives PoA = 2.5. Unsplittable (Atomic) Routing – Exmaple 2 Both players have s=S and t=T, but, player 1 has r=1, While player 2, r=2. Possible paths S->T: p1: S->T; p2: S->V->T; p3: S->W->T; p4: S->V->W->T Unsplittable (Atomic) Routing – Exmaple 2 Cont. In this example there is no pure equilibrium. Easy to show the following facts: If player 2 chooses p1 or p2, player 1 will choose p4. If player 1 chooses p4, player 2 will choose p3. If player 2 chooses p3 or p4, player 1 will choose p1. If player 1 chooses p1, player 2 will choose p2. Unsplittable (Atomic) Routing – Existence of Nash Equilibrium We’ve shown that NE does not always exist. Theorem: If (G, r , l ) is an unsplittable game with i N : ri 1 then there exists a Nash equilibrium. Proof: f (e) Define a potential function a ( f ) le (i) e i 1 When player I moves from p to p’: l p ( f ) l p ( f ) e p p l ( f e 1) e p p l ( fe ) Unsplittable (Atomic) Routing – Existence of Nash Equilibrium Cont. And: a ( f ') a ( f ) le ( fe 1) if e p p le ( fe ) if e p p ' 0 otherwise So: l p ( f ) l p ( f ) a ( f ) a ( f ) So when the players plays “best response” the potential decreases, and as it’s non-negative, s series of “best responses” will converge to a Nash equilibrium. Bounding the price of anarchy for unsplittable linear games Theorem: let (G, r , l ) be an unsplittable routing game with linear cost functions, then 3 5 PoA 3 2.618 Proof: Let f be a nash equillibirim (we assume it exists) flow, and f * be an optimal flow. c pi ( f ) (ae fe be ) e pi (a ( f e p*i e e ri ) be ) Bounding the price of anarchy for unsplittable linear games – Cont. Lemma: C ( f ) C ( f * ) ae fe fe* Proof (of lemma): e C ( f ) ri ( ae ( f e ri ) be ) e pi* i * * * r ( a ( f f ) b ) ( a ( f f ) b ) f i e e e e e e e e e eE e pi* i (ae ( f e* ) 2 be f e* ae f e f e* eE eE C ( f * ) ae f e f e* eE Using Cauchy-Schwartz: * a f f eee e 2 a f ee e * 2 * a ( f ) C ( f ) C ( f ) e e e Bounding the price of anarchy for unsplittable linear games – Cont. We get: C ( f ) C ( f * ) C ( f )C ( f * ) C( f ) C( f ) 1 * C( f ) C( f *) C( f ) Solving the equation for C ( f * ) We get : C( f ) 3 5 * C( f ) 2 2.618