Near Optimal Network Design With Selfish Agents Eliot Anshelevich Anirban Dasupta Eva Tardos Tom Wexler Cornell University Presented by: Andrey Stolyarenko School of CS, Tel-Aviv University Some of the slides are taken from E.Anshelevich and L.Kaiser presentations Selfish Agents in Networks Traditional network design problems are centrally controlled What if network is instead built by many self-interested agents? As we saw on previous lectures, properties of resulting network may be very different from the globally optimum one Connection Games The Connection Game – A Story Think of sea transport companies or broadband internet providers. These are our agents each company needs to connect a few ports or users every connection has a constant cost connection is bought if all together pay for it The Connection Game – Selfish as usual We do not consider negotiations, communication No external mechanism or regulation All desired users must be connected, no tradeoff Everyone will go for a cheaper price if possible The Connection Game – Model The Connection Game – Example s1 t3 s2 t2 s3 t1 The Connection Game – Example s1 t3 s2 t2 s3 t1 Sharing Edge Costs How should multiple players on a single edge split costs? One approach: no restrictions... ...any division of cost agreed upon by players is OK. TODAY Near-Optimal Network Design with Selfish Agents STOC ‘03 Anshelevich, Dasgupta, Tardos, Wexler. Another approach: try to ensure some sort of fairness. The Price of Stability for Network Design with Fair Cost Allocation FOCS ’04 Anshelevich, Dasgupta, Kleinberg, Tardos, Wexler, Roughgarden NEXT WEEK… What are we interested in? From Nash’s Theorem (1950) we know that mixed-strategy (non deterministic) Nash Equilibria always exist There for We are interested in purestrategy (deterministic) Nash Equilibria From now and on “Nash Equilibria” (“NE”) will mean: Deterministic Nash Equealibira What are we interested in? How bad can NE be? – Price of Anarchy How good can NE be? – Price of Stability (1+ e)-approx. NE Nash Equilibrium t2 A NE is a set of payments for players such that no player wants to deviate. A player must connect his terminals t1 s3 A player does not care whether other players connect. When considering deviations, s1 a player assumes that other players’ payments are fixed. t3 s2 Nash Equilibrium t2 A NE is a set of payments for players such that no player wants to deviate. A player must connect his terminals t1 s3 A player does not care whether other players connect. When considering deviations, s1 a player assumes that other players’ payments are fixed. t3 s2 Nash Equilibria - Formal Three Observations Example 1 - Two Different NEs t1, t2, … tk t t 1 k s s1 , s2 , … sk 1 t k s One NE: each player pays 1/k 1 k s Another NE: each player pays 1 Reminder: The POA and POS Price of Anarchy = [Koutsoupias, Papadimitriou] [Roughgarden, Tardos] cost(worst NE) s1…sk cost(OPT) (Min cost Steiner forest) 1 Price of Stability = k cost(best NE) cost(OPT) t1…tk Question: What were the POA and POS in Example 1 ? NE Doesn’t have to Exits! Don’t forget NE=pure-NE for now Example 2 - No Nash s1 t2 a all edges cost 1 d s2 b c t1 Example 2 - No Nash s1 t2 a all edges cost 1 d s2 b c t1 We know that any NE must be a tree: WLOG assume the tree is a,b,c. Example 2 - No Nash s1 t2 a all edges cost 1 d s2 b c t1 We know that any NE must be a tree: WLOG assume the tree is a,b,c. Only player 1 can contribute to a. Only player 2 can contribute to c. Example 2 - No Nash s1 t2 a all edges cost 1 d s2 b c t1 We know that any NE must be a tree: WLOG assume the tree is a,b,c. Only player 1 can contribute to a. Only player 2 can contribute to c. Neither player can contribute to b, since d is a tempting deviation. When NE exist, how bad can it be? In The Connection Game the POA is at most N - The number of agents If the worst NE p const more than N times OPT then there must be a player i whose payments pi are strictly more then OPT Player i could deviate by purchasing the entire optimal solution by himself When NE exist, how good can it be? In Exaple 1 we saw that POS was 1 NEXT! Single Source Games Simple Case - MST Easy if all nodes are terminals: Players buy edge above them in OPT. Claim: This is a Nash Equilibrium. ( i unhappy => can build cheaper tree ) • Typically we will have Steiner nodes. Who buys the edge above these? Attempts to Buy Edges 1) Can we get a single player to pay? Both players must help buy top edge. 3 5 3 5 3 2) Can we split edge costs evenly? 4 4 4 4 4 5 4 Second node won’t pay more than 5 in total. Greedy Algorithm In both examples, players were limited by possible deviations. e Given OPT, pay for edges in OPT from the bottom up, greedily (openhanded) , as constrained by deviations. If we buy all edges, we’re done! Single Source Games Notation e The Greedy Algorithm Example 4 4 3 5 4 4 4 5 4 3 5 3 We get NE! If we buy all edges we are done! Proof Idea If greedy fails to pay for e, we will show that the tree is not OPT. All players have possible deviations. Deviations and current payments must be equal. If all players deviate, all connect, but pay less. e Proof Path Lemma Path Lemma Proof Finale e But, Wait! Suppose greedy algorithm cannot pay for e e e’ 1 4 2 3 Further, suppose 1 & 2 share cost(e’) Consider 1 & 2 both deviating… Player 1 stops contributing to e’ Danger: 2 still needs this edge! Don’t Worry, Everything is fine. Just, e e’ 1 2 3 4 Shouldn’t allow player 1 to deviate: If only 2 deviates, all players reach the source. Idea: should use the “highest” deviating paths first. (1+ e)-approx. NE in Polytime Theorem: For single source, can find a (1+ε)-approx. NE in polytime on an α-approx. Steiner tree. α = best Steiner tree approx. (1.55) ε > 0, running time depends on ε. Proof Sketch: • Greedy algorithm from previous proof either finds a NE or a cheaper tree than it was given. • Only take significant improvements. Multi Source Games Price of Anarchy in Multi-Source Games s1 ε O(k) ε s2 t2 ε ε t1 O(k) s3…sk 1 t3…tk OPT costs ~1, but it’s not a NE. The only NE costs O(k), so optimistic price of anarchy is almost k. Result for Multi Source Games We know a NE may not exist, so settle for approximate NE. 2 3 1 How bad an approximation must we have if we insist on buying OPT? 1 2 3 Theorem: For any game, there exists a 3-approx NE that buys OPT. Note: this is true even for games where players may have more than 2 terminals. Proof Idea • Break up OPT into chunks. • Use optimality of OPT to show that any player buying a single chunk has no incentive to deviate. 2 3 1 • Each chunk is paid for by a single player. • Each player pays for at most 3 chunks. 1 2 3 Connection Sets 1 A connection set C of player i is a set of edges such that: C only includes edges on the path Pi from si to ti in OPT. If OPT is bought, and i pays only for C, then i has no incentive to deviate. b a Connection set = chunk 1 Connection Sets 1 A connection set C of player i is a set of edges such that: C only includes edges on the path Pi from si to ti in OPT. If OPT is bought, and i pays only for C, then i has no incentive to deviate. b a Connection set = chunk 1 Main Challenge Form a payment scheme where each player pays for at most 3 connection sets. i pays for edges that no other players would pay for in OPT. Another connection set for each terminal of i. 2 1 3 1 2 3 Tree Decomposition Decompose OPT into hierarchical paths, where each path begins at a terminal and ends at a path of higher level. 4 1 3 2 2 3 1 5 4 5 Tree Decomposition Decompose OPT into hierarchical paths, where each path begins at a terminal and ends at a path of higher level. 4 1 3 2 2 3 1 5 4 5 Tree Decomposition Decompose OPT into hierarchical paths, where each path begins at a terminal and ends at a path of higher level. 4 1 3 2 2 3 1 5 4 5 Tree Decomposition Decompose OPT into hierarchical paths, where each path begins at a terminal and ends at a path of higher level. 4 1 3 2 2 3 1 5 4 5 Payment Scheme Connection sets in each path P are paid for by terminals associated with paths entering P. 2 2 1 3 4 Payment Scheme Connection sets in each path P are paid for by terminals associated with paths entering P. 2 2 1 3 4 Payment Scheme Connection sets in each path P are paid for by terminals associated with paths entering P. 4 3 1 3 2 3 2 5 2 3 2 1 1 5 4 5 Approximation Algorithm Theorem: For multi-source 2-terminal games, can find a (3+ε)-approx. NE in polytime on an 1.55-approx. to OPT. For >2 terminals, above approximation becomes (4.65+ε), since need to use best known approx for Steiner tree. Results and More Single Source POS = 1 Polytime NE approx What happens in directed graphs? What happens if we add a maximum payment that a player is willing to may in order to stay connected? Results and More Multi Source The existence of NE is NPC if the number of players is a part of the input. Show by 3-SAT reduction POS can be O(n) (3+ε)-NE approx. always exist (4.65+ε)-NE approx algorithm for 1.55OPT There are games which the best NE is 1.5approx. Lower bound is 1.5. THANK YOU!