The Price of Anarchy

Tim Roughgarden UC Berkeley + Stanford University

also featuring some slides contributed by (UC Berkeley) The Price of Anarchy OR, a rendezvouz of computer science and

Tim Roughgarden UC Berkeley + Stanford University

also featuring some slides contributed by Christos Papadimitriou (UC Berkeley) The Price of Anarchy OR, a rendezvouz of computer science and game theory OR, how free food can lead to a thesis topic

Tim Roughgarden UC Berkeley + Stanford University

also featuring some slides contributed by Christos Papadimitriou (UC Berkeley) (Very) Brief Overview

• basic object of study: noncooperative games • widespread phenomenon: selfish (or “rational”) behavior is inefficient – could improve natural objective functions by dictating behavior •price of anarchy-- “competitive analysis for noncooperative games” – when does noncooperative behavior lead to an approximately optimal outcome? Example: Load-Balancing

• setup: 4 jobs self-schedule on 2 machines – each wants a lightly loaded machine • with coordination, can achieve the following “good” outcome (makespan = 5)

1 2

4 3

m1 m2 Example: Load-Balancing

• if they cannot be centrally scheduled? Example: Load-Balancing

• if they cannot be centrally scheduled? • e.g., the following outcome is “stable” – no job has incentive to switch machines

2 1 4 3

m1 m2 Example: Braess’s Paradox

• setup: traffic (e.g., many cars or packets) pick s-t paths to minimize travel time • travel time increases with congestion

c(x)=x c(x)=1 s t c(x)=1 c(x)=x Example: Braess’s Paradox

• setup: traffic (e.g., many cars or packets) pick s-t paths to minimize travel time • travel time increases with congestion

c(x)=x c(x)=1 ½ of traffic s t c(x)=1 c(x)=x ½ of traffic

• at “equilibrium”: travel time = 3/2 for all Braess’s Paradox

Initial Network:

½ ½ x1 s ½ ½ t 1 x Travel time = 1.5 Braess’s Paradox

Initial Network: Augmented Network:

½ ½ ½ ½ x1x1 0 s ½ ½ t s ½ ½ t 1 x 1 x Travel time = 1.5 Now what? Braess’s Paradox

Initial Network: Augmented Network:

½ ½ x1 x 1 s 0 t s ½ ½ t 1 x 1 x Travel time = 1.5 Travel time = 2 Braess’s Paradox

Initial Network: Augmented Network:

½ ½ x1 x 1 s 0 t s ½ ½ t 1 x 1 x Travel time = 1.5 Travel time = 2

All traffic worse off! [Braess 68] • (with thanks to Leonard Schulman) The Price of Anarchy

• both examples: selfish behavior inefficient – e.g., equilibria need not minimize avg/max cost

vs. vs. The Price of Anarchy

• both examples: selfish behavior inefficient – e.g., equilibria need not minimize avg/max cost

vs. vs.

• price of anarchy: worst-case ratio between “” of equilibrium and of optimum – w.r.t. a game + a definition of social cost Agenda of Tutorial

• small price of anarchy: – selfish behavior benign; little benefit of centralized control over “laissez-faire”

• our focus: bounding the price of anarchy--- when, what, how, why? – want techniques that cut across applications Caveats

• price of anarchy = active subfield bordering theoretical CS, game theory – we will only scratch the surface – will focus on the two most well-studied models – even for these models, will only discuss results that I can describe simply – see also bibliography to appear on my Web page • will not have many proofs or all the details – 3 hours only seems long to audience! Road Map: First Half

• Part I: Basic Notions – games, strategies, Nash equilibria, the price of anarchy, examples next

• Part II: The KP Model (load-balancing) – upper and lower bounds on the price of anarchy – extensions and open questions Road Map: Second Half

• Part III: Selfish Routing – the potential function technique – tight bounds on the price of anarchy – extensions and open questions

• Part IV: Other cool models: a brief tour – resource allocation, submodular, facility location, and network design games Part I: Basic Notions

• finite (normal-form) games • strategies • Nash equilibria • nonatomic games + their equilibria – models large population of players •price of anarchy – pessimistic vs. optimistic Games

In a (finite, normal-form) game there is: • a finite set of players • for each player, a finite set of strategies • for each profile (each player picks a strategy), a payoff to each player Games

In a (finite, normal-form) game there is: • a finite set of players • for each player, a finite set of strategies • for each strategy profile (each player picks a strategy), a payoff to each player

Row 12 Column 12 player: 1 -2 -1 player: 1 -2 -1

2 -1 -2 2 -1 -2 Pure vs. Mixed Strategies

Pure strategy: player picks single strategy Mixed strategy: player picks probability distribution over its strategies Pure vs. Mixed Strategies

Pure strategy: player picks single strategy Mixed strategy: player picks probability distribution over its strategies • allowing randomization has pros and cons – permits universal existence of equilibria – seems to model some real behavior • e.g., bluffing in poker – still, conceptually problematic • how often to people really randomize? Example: Load-Balancing

Example: 2 jobs scheduled on 2 machines • players = jobs; strategies = machines • payoff to job = -1 × #jobs on its machine

j2 j1 j2 vs. j1 Example: Load-Balancing

Example: 2 jobs scheduled on 2 machines • players = jobs; strategies = machines • payoff to job = -1 × #jobs on its machine

j2 j1 j2 vs. j1

m1 m2 m1 m2

m1 -2 -1 m1 -2 -1 Job 1: Job 2: m2 -1 -2 m2 -1 -2 Nash Equilibria

Defn: a set of mixed strategies (one per player) is a if no player has a unilateral incentive to change its strategy. – no player can increase expected payoff w/some other strategy, if strategies of others are fixed Nash Equilibria

Defn: a set of mixed strategies (one per player) is a Nash equilibrium if no player has a unilateral incentive to change its strategy. – no player can increase expected payoff w/some other strategy, if strategies of others are fixed Fact 1: pure-strategy Nash eq need not exist. – “” Fact 2: mixed-strategy Nash eq always exist. – Nash’s theorem (1950) Example: Load-Balancing

Back to: two-machine, two-job example. Two pure-strategy Nash eq, with jobs on different machines.

j1 j2 j2 j1 m1 m2 m1 m2 Example: Load-Balancing

Back to: two-machine, two-job example. Two pure-strategy Nash eq, with jobs on different machines.

j1 j2 j2 j1 m1 m2 m1 m2 One mixed-strategy Nash eq:

j1 50% 50% j2 50% 50% m1 m2 Nonatomic Games

• nonatomic game = model large population with infinitely many players • sounds scary, but can increase analytical tractability – (continuous math a good thing) • could define a payoff per strategy profile – but we will only care what fraction of population picks each strategy; we will only model this Nonatomic Games (con'd)

Ingredients (abstract and in selfish routing):

• finite # of player types [(si,ti) pairs] • population sizes [amt of traffic per pair]

• finite strategy sets [(si,ti) paths] • for each distribution (fraction of population using each strategy), payoffs corresponding to each strategy – given traffic pattern, cost of each path Equilibria in Nonatomic Games

• like Nash eq, though note that individual deviations do not affect payoffs – strategies used by a player type have equal cost

x 1 x 1 s 0 t vs. s 0 t 1 x 1 x – cf., load-balancing: Equilibria in Nonatomic Games

• like Nash eq, though note that individual deviations do not affect payoffs – strategies used by a player type have equal cost

x 1 x 1 s 0 t vs. s 0 t 1 x 1 x – cf., load-balancing:

• existence in general: [Schmeidler 73], etc. • WLOG, can focus on pure-strategy eq The Price of Anarchy

Defn: price of obj fn value of a Nash eq = sup anarchy optimal obj fn value

⇒ with respect to a game + an objective fn

⇒ supremum is over the set of equilibria ⇒ price of anarchy of a collection C of games = take supremum over games in C Comparison to Other Notions

• approximation ratio = quantifies cost of not having exponential computing time • competitive ratio = quantifies cost of not knowing the future •price of anarchy= quantifies cost of not being able to dictate behavior – also called coordination ratio [Koutsoupias/Papadimitriou 99] Optimistic Price of Anarchy

• optimistic price of anarchy: compare best Nash equilibrium with the social optimum • interpretation: what is achievable with “single-shot” centralized control – e.g., for network design (later) • can often upper bound the optimistic p.o.a. but not the pessimistic p.o.a. Road Map: First Half

• Part I: Basic Notions – games, strategies, Nash equilibria, the price of anarchy, examples next

• Part II: The KP Model (load-balancing) – upper and lower bounds on the price of anarchy – extensions and open questions The KP Model: Overview

• formal definition of model • special case: uniform machine speeds • non-uniform speeds • extensions + open problems The KP Model

•nplayers/jobs, each with weight wj

•mstrategies/machines, each with speed si • outcomes: assignment of jobs to machines The KP Model

•nplayers/jobs, each with weight wj

•mstrategies/machines, each with speed si • outcomes: assignment of jobs to machines

• J(i) = jobs on machine i 2 • L(i) = load of i = 1 Σ 1/si j in J(i) wj 4 • [Koutsoupias/ 3 Papadimitriou 99] m1 m2 Costs with Mixed Strategies

i • mixed strategy pj = Pr[job j on machine i] • expected load of machine i: i EL(i) = 1/si Σj wj pj • Cost of i from job j’s perspective: i Cj(i) = 1/si [(Σk not j wk pk ) + wj]

j1 50% 50% j2 50% 50% m1 m2 What is a Nash equilibrium?

i • no job j has incentive to change its pj ‘s • equivalently: for each job j, i pj > 0 ⇒ Cj(i) = min all machines i’ Cj(i’)

j1 50% 50% j2 50% 50% m1 m2 • i.e., each job hedges its bets from among its optimal strategies (optimal given the other players’ choices) Social cost

• social cost = makespan = maxi L(i) • with mixed strategies: expected makespan

• which is bigger, E[maxi L(i)] or maxi EL(i)? Social cost

• social cost = makespan = maxi L(i) • with mixed strategies: expected makespan

• which is bigger, E[maxi L(i)] or maxi EL(i)?

j1 50% 50% j2 50% 50% m1 m2 Social cost

• social cost = makespan = maxi L(i) • with mixed strategies: expected makespan

• which is bigger, E[maxi L(i)] or maxi EL(i)?

j1 50% 50% j2 50% 50% m1 m2 • social optimum = smallest-possible makespan: minall job assignments maxi L(i) Price of Anarchy

Question: what is the price of anarchy in the KP model? Price of Anarchy

Question: what is the price of anarchy in the KP model?

j1 50% 50% j2 50% 50% m1 m2 At least 3/2. Price of Anarchy

Question: what is the price of anarchy in the KP model?

j1 50% 50% j2 50% 50% m1 m2 At least 3/2. – exactly 3/2 for uniform speeds and m=2 [KP99] What about for a large number of machines? Many machines?

Easy to generalize 3/2 example: [KP99] •m jobs, m machines • all weights and speeds equal to 1 • one Nash eq = each job picks machine u.a.r.

j1 j2 ...

m1 m2 m3 ... Many machines?

Easy to generalize 3/2 example: [KP99] •m jobs, m machines • all weights and speeds equal to 1 • one Nash eq = each job picks machine u.a.r.

j1 j2 ...

m1 m2 m3 ... This is classical balls and bins! A Lower Bound via Balls and Bins

• Social optimum still has makespan 1 • For balls and bins, expected maximum is known to be ≈ log m/log log m. – Proof: [Gonnet81] use Hoeffding bound ⇒ price of anarchy ≥ log m/log log m A Lower Bound via Balls and Bins

• Social optimum still has makespan 1 • For balls and bins, expected maximum is known to be ≈ log m/log log m. – Proof: [Gonnet81] use Hoeffding bound ⇒ price of anarchy ≥ log m/log log m

Conjecture: [KP99]This lower bound is tight. Initial Progress

Theorem: [Mavronicolas/Spirakis 01] for equal machine speeds, “fully mixed” Nash i equilibria (pj > 0 for all i,j), price of anarchy is always O(log m/log log m).

j1 j2 ...

m1 m2 m3 ... The very next year…

Independently:

Theorem: [Koutsoupias/Mavronicolas/Spirakis 02] w/uniform speeds, p.o.a = O(log m/loglog m) The very next year…

Independently:

Theorem: [Koutsoupias/Mavronicolas/Spirakis 02] w/uniform speeds, p.o.a = O(log m/loglog m)

Theorem: [Czumaj/Vöcking 02] • w/uniform speeds, p.o.a ≤ log m/log log m • w/general speeds, worst-case p.o.a. is Θ(log m/log log log m) The very next year…

Independently:

Theorem: [Koutsoupias/Mavronicolas/Spirakis 02] w/uniform speeds, p.o.a = O(log m/loglog m)

Theorem: [Czumaj/Vöcking 02] • w/uniform speeds, p.o.a ≤ log m/log log m • w/general speeds, worst-case p.o.a. is Θ(log m/log log log m) (whoa!) Proof for Uniform Speeds

Step 1: upper bound p.o.a. w.r.t. maxi EL(i) Step 2: translate to bound for exp makespan Proof for Uniform Speeds

Step 1: upper bound p.o.a. w.r.t. maxi EL(i) Step 2: translate to bound for exp makespan

Proof of Step 1: scale wts s.t. OPT = 1 (wj ≤ 1)

• claim 1: mini EL(i) ≤ 1 –else m < Σi EL(i) = Σj wj – contradicts OPT = 1 m1 m2 Proof for Uniform Speeds

Step 1: upper bound p.o.a. w.r.t. maxi EL(i) Step 2: translate to bound for exp makespan

Proof of Step 1: scale wts s.t. OPT = 1 (wj ≤ 1)

• claim 1: mini EL(i) ≤ 1 –else m < Σi EL(i) = Σj wj – contradicts OPT = 1 m1 m2 • claim 2: EL(i) ≤ 2 for all machines i – if EL(i) > 2, then jobs on i want to switch to a machine with load ≤ 1 (all job wts ≤ 1) Proof for Uniform Speeds

Proof of Step 2: •Step 1 ⇒ each L(i) is a random variable with constant expectation that is the sum of independent bounded variables. Proof for Uniform Speeds

Proof of Step 2: •Step 1 ⇒ each L(i) is a random variable with constant expectation that is the sum of independent bounded variables. • Hoeffding bound: [Hoeffding 63] Prob[L(i) > x] < (2e/x)x which is << 1/m2 if x >> log m/log log m • The expected maximum (= price of anarchy) cannot be larger than this Arbitrary Speeds

Similar proof structure for general speeds:

Step 1: upper bound p.o.a. w.r.t. maxi EL(i) Step 2: translate to bound for exp makespan Arbitrary Speeds

Similar proof structure for general speeds:

Step 1: upper bound p.o.a. w.r.t. maxi EL(i) Step 2: translate to bound for exp makespan

[Czumaj/Vöcking 02] show: • bound of Θ(log m/log log m) in Step 1 – clever combinatorial pf, also applies to pure Nash • bound of Θ(log m/log log log m) in Step 2 – again, based on Hoeffding More on the KP Model

• extensions/variants – more general cost functions, etc. • complexity of computing Nash equilibrium • fully mixed conjecture •much more • see (forthcoming) bibliography for details Two Open Questions

My favorite: general networks? • scheduling parallel links • is the p.o.a. in networks polylog or polynomial? Two Open Questions

My favorite: general networks? • scheduling parallel links • is the p.o.a. in networks polylog or polynomial?

Fully mixed conjecture: The worst Nash eq is always the one with maximal support. • partial solutions in [Gairing et al ICTCS 03], [Lücking et al MFCS 03] Pure Nash equilibria (an aside)

Theorem: [Fotakis et al 02] In the KP model, there is always at least one pure-strategy Nash equilibrium. Pure Nash equilibria (an aside)

Theorem: [Fotakis et al 02] In the KP model, there is always at least one pure-strategy Nash equilibrium. 1

Proof: 2 • start with any job assignment • sort machines in decreasing L(i) 4 3 • unhappy jobs can switch

m1 m2 Proof of Existence (con’d)

• if j wants to switch from 1 a to b, then L(b) < L(a) • L(b) will increase and 2 L(a) will decrease 4 3

m1 m2 Proof of Existence (con’d)

• if j wants to switch from 1 a to b, then L(b) < L(a) • L(b) will increase and 2 L(a) will decrease • But L(b) will not become 4 as large as what L(a) was 3 • ⇒ {L(i)} decreases m m lexicographically! 1 2 Proof of Existence (con’d)

• if j wants to switch from 1 a to b, then L(b) < L(a) • L(b) will increase and 2 L(a) will decrease • But L(b) will not become 4 as large as what L(a) was 3 • ⇒ {L(i)} decreases m m lexicographically! 1 2 • switching process must halt (at a Nash eq) Road Map: Second Half

• Part III: Selfish Routing – the potential function technique – tight bounds on the price of anarchy – extensions and open questions

• Part IV: Other cool models: a brief tour – resource allocation, submodular, facility location, and network design games The Selfish Routing Game

•directed graph G = (V,E)

• source-destination pairs (s1,t1), …, (sk,tk)

• ri = fraction of traffic going from si to ti

• for each edge e, a cost function ce(•) – assumed continuous and nondecreasing The Selfish Routing Game

•directed graph G = (V,E)

• source-destination pairs (s1,t1), …, (sk,tk)

• ri = fraction of traffic going from si to ti

• for each edge e, a cost function ce(•) – assumed continuous and nondecreasing

Examples: (k=1) c(x)=x c(x)=x c(x)=1 ½ ½ s1 t1 s1 t1 c(x)=1 c(x)=1 c(x)=x ½ ½ Outcomes = Network Flows

Possible outcomes of a selfish routing game:

•fP = amount of traffic choosing si-ti path P • outcomes of game flow vectors f

– flow vector: nonnegative and total flow Σ fP on si-ti paths equals traffic rate ri (for all i)

s t Outcomes = Network Flows

Possible outcomes of a selfish routing game:

•fP = amount of traffic choosing si-ti path P • outcomes of game flow vectors f

– flow vector: nonnegative and total flow Σ fP on si-ti paths equals traffic rate ri (for all i)

s t

Question: What are the equilibria of this nonatomic game? Nash Flows

Def: A flow is at Nash equilibrium (or is a Nash flow) if no one can switch to a path of smaller cost. I.e., all flow is routed on min-cost paths. [given current edge congestion]

Examples: ½ 1 x x s t s t 1 1 ½

x1½ x1 s 0 t s 0 1 t 1 x ½ 1 x Our Objective Function

Definition of social cost: average cost C(f) incurred by the traffic in a flow f. Our Objective Function

Definition of social cost: average cost C(f) incurred by the traffic in a flow f.

Formally: if cP(f) = sum of costs of edges of P (w.r.t. flow f), then: s t

C(f) = ΣP fP •cP(f) (scale so that one unit of traffic) Our Objective Function

Definition of social cost: average cost C(f) incurred by the traffic in a flow f.

Formally: if cP(f) = sum of costs of edges of P (w.r.t. flow f), then: s t

C(f) = ΣP fP •cP(f) (scale so that one unit of traffic)

x Example: ½ s t Cost = ½•½ +½•1 = ¾ 1 ½ Comparison to KP Model

• KP model atomic, selfish routing nonatomic • no need to consider mixed strategies in SR • maximum cost in KP model, avg cost in SR • only consider scheduling (networks of parallel links) in KP model, general multicommodity networks in SR • linear cost fns in KP model, nonlinear in SR Some History

• traffic model, definition of Nash flows given by [Wardrop 52] – historically called Wardrop equilibria • other seminal references: – [Beckmann/McGuire/Winsten 56] – [Dafermos/Sparrow 69] – see bibliography for more • also studied in EECS + OR communities – [Bertsekas/Tsitsiklis 89] is good reference Pigou’s Example

Note: price of anarchy is 4/3 in Pigou’s example • same as in Braess’s Paradox • inefficiency observed informally by [Pigou 1920] x 1 ½ s t 1 0 ½ • Cost of Nash flow = 1•1 + 0•1 = 1 • Cost of optimal flow = ½•½ +½•1 = ¾ Nonlinear Pigou’s Example

Bad Example: (d large) xd 1 1-Є s t 1 0 Є Nonlinear Pigou’s Example

Bad Example: (d large) xd 1 1-Є s t 1 0 Є Nash flow has cost 1, min cost ≈ 0

⇒ Nash flow can cost arbitrarily more than the optimal (min-cost) flow – even if cost functions are polynomials When Is the Price of Anarchy Bounded?

Examples so far:

x1 x xd s 0 t s t s t 1 x 1 1

Hope: imposing additional structure on the cost functions helps – worry: bad things happen in larger networks Polynomial Cost Functions

Def: linear cost fn is of form ce(x)=aex+be

Theorem: [Roughgarden/Tardos 00] for every network with linear cost functions: cost of cost of x ≤ 4/3 × s t Nash flow opt flow 1 Polynomial Cost Functions

Def: linear cost fn is of form ce(x)=aex+be

Theorem: [Roughgarden/Tardos 00] for every network with linear cost functions: cost of cost of x ≤ 4/3 × s t Nash flow opt flow 1 Bounded-deg polys: (w/nonneg coeffs) replace

4/3 by Θ(d/log d) xd tight s t example 1 A General Theorem

Note: for polynomials, the nonlinear Pigou's ex is a worst-possible example. A General Theorem

Note: for polynomials, the nonlinear Pigou's ex is a worst-possible example. In fact:

Thm: [Roughgarden 02], [Correa/Schulz/Stier Moses 03] fix any set of cost fns containing all constant fns. Then, a Pigou-like example (2 nodes, 2 links, 1 link w/constant cost fn) achieves worst p.o.a. xd tight • "succinct certificate" of s t exam ple worst-case inefficiency 1 Proving these Upper Bounds

• we will prove all of these upper bounds • first: potential function argument – bounds not tight, but close – fairly general type of argument • then: convexity + a graph transformation – will achieve tight bounds – but more ad hoc, seems less generally applicable – will follow exposition of [Tardos 04] Potential Functions

• potential games: equilibria are actually optima of a related optimization problem – will study this for selfish routing in detail – has immediate consequences for price of anarchy – will follow exposition of [Beckmann/McGuire/Winsten 56] – more general theory developed by [Rosenthal 73], [Monderer/Shapley 96], etc. Optimal Flows

• warm-up: can formulate optimal flows as minima of a nonlinear function over a set of linear (flow) constraints

• decision variables: fe = total flow on edge e • objective function (nonlinear):

minimize C(f) = Σe fe •ce(fe) Optimal Flows

• (linear) constraints: – conservation: e.g., flow in = flow out for all

commodities i, vertices v, unless v = si or ti – nonnegativity constraints flows

• feasible solutions correspond to flows – via a path decomposition – optimal solns correspond to optimal flows The Potential Function

Key fact: [Beckmann/McGuire/Winsten 56] Nash flows minimize related “potential function” over same constraints. – interpretation: Nash flows in some sense not too different from optimal ones The Potential Function

Key fact: [Beckmann/McGuire/Winsten 56] Nash flows minimize related “potential function” over same constraints. – interpretation: Nash flows in some sense not too different from optimal ones

Specifically: Nash flows minimize

Σ fe e ∫0 ce(x)dx (N) The Potential Function

Key fact: [Beckmann/McGuire/Winsten 56] Nash flows minimize related “potential function” over same constraints. – interpretation: Nash flows in some sense not too different from optimal ones

Specifically: Nash flows minimize

Σ fe e ∫0 ce(x)dx (N) (whoa!) Proof of Key Fact

Lemma 1: locally optimal solutions to (N) are precisely the Nash flows – follows from a derivative test

Lemma 2: all locally optimal solutions to (N) are also globally optimal – follows from convexity Nash flows = Locally Optimal

Proof of Lemma 1: • recall flow is Nash if and only if all flow routed on min-cost paths

Σ fe •gradient of e ∫0 ce(x)dx is just vector of costs ce(fe) • so defn of local optimality (gradient makes nonnegative inner product w/all feasible directions) same as defn of Nash flow Local optima = Global optima

Note: potential fn Σe ∫ ce(x)dx is convex (each ce(x) nondecreasing)

convex function:

Recall: convex chords lie above graph

Pf of Lemma 2: if there is a local opt and a better point, then chord between them must go below graph Consequences

Summary: Nash flows are precisely those solving the convex program (N). Consequences

Summary: Nash flows are precisely those solving the convex program (N).

Corollary: [BMW56] Nash flows exist. Proof: since (N) has a continuous objective fn + closed, bounded (i.e., compact) feasible region, it admits an optimal soln.

flows Consequences (con’d)

Corollary: [BMW56] Nash flows are unique. Proof: if all cost fns strictly increasing, then (N) has strictly convex obj fn, can only have one optimal solution • with constant fns, can have degeneracy: 1 s t 1 • but all optimal/Nash flows have equal cost Consequences for the Price of Anarchy

Example: linear cost functions. Compare cost + potential function:

2 C(f) = Σe fe •ce(fe) = Σe ae fe + be fe 2 PF(f) = Σ ∫fe c (x)dx = Σ (a f )/2 + b f e 0 e e e e e e Consequences for the Price of Anarchy

Example: linear cost functions. Compare cost + potential function:

2 C(f) = Σe fe •ce(fe) = Σe ae fe + be fe 2 PF(f) = Σ ∫fe c (x)dx = Σ (a f )/2 + b f e 0 e e e e e e • cost, potential fn differ by factor of ≤ 2 • gives upper bound of 2 on price on anarchy – C(f) ≤ 2×PF(f) ≤ 2×PF(f*) ≤ 2×C(f*) Better Bounds?

Similarly: proves bound of d+1 for degree-d polynomials (w/nonnegative coefficients). • not tight, but qualitatively accurate – e.g., price of anarchy goes to infinity with degree bound, but somewhat slowly • to get tight bounds, will use equivalence of Nash and optimal flows in reverse... – this will be more ad-hoc Marginal Cost Functions

Defn: let c be differentiable. The marginal cost fn c* is (x • c(x))' = c(x) + x • c'(x).

"selfish term" "altruistic term" Marginal Cost Functions

Defn: let c be differentiable. The marginal cost fn c* is (x • c(x))' = c(x) + x • c'(x).

"selfish term" "altruistic term"

Defn: a differentiable cost fn c is semi- convex if c* is continuous, nondecreasing. • true e.g. if c is differentiable + convex Optimal Flows as Nash Flows

Prop: in a network w/semi-convex cost fns, the optimal flows are precisely the Nash flow w.r.t. the marginal cost functions – i.e., all flow on paths of minimum marginal cost – only one direction true w/out semi-convexity Optimal Flows as Nash Flows

Prop: in a network w/semi-convex cost fns, the optimal flows are precisely the Nash flow w.r.t. the marginal cost functions – i.e., all flow on paths of minimum marginal cost – only one direction true w/out semi-convexity

Proof: same equivalence as in potential function argument (viewed backwards). Pigou's Example Revisited

Pigou's example: x s t 1 Pigou's Example Revisited

Pigou's example: x s t 1

Replacing cost fns w/marginal cost fns: 2x s t 1 Pigou's Example Revisited

Pigou's example: x s t 1

Replacing cost fns w/marginal cost fns:

2x ½ s t 1 ½ Nash flow in new network = opt flow in original network = route half on each A Graph Transformation

Given: network, Nash flow f. Consider: for each edge, add parallel copy:

fe ce(x) ce(x) s t fe ce(fe) A Graph Transformation

Given: network, Nash flow f. Consider: for each edge, add parallel copy:

fe ce(x) ce(x) s t fe ce(fe)

Note: Nash unaffected • opt flow can only get better – price of anarchy can only increase Proof of General Theorem

Key point: after transformation, easy to compute opt. On each edge, opt splits

flow: βfe ce(x) s t ce(fe) (1-β)fe so that marginal costs are equalized. – exercise: such a splitting point must exist • new marginal costs = costs w.r.t. Nash flow; new flow must be opt End of Proof

Finally: price of anarchy in this network is at most worst price of anarchy among the two-node, two-link subnetworks ⇒worst-possible price of anarchy can always occur in Pigou-like networks (two nodes, two links, one link with a constant cost fn) ⇒can usually determine worst Pigou-like network analytically (e.g., for polynomials) Extensions

• don’t need convexity assumption; use “variational inequality” instead [Correa/Schulz/Stier Moses 03] • if set is “diverse”, simulate constant fn with many parallel links [Roughgarden 02] • if class is “inhomogeneous”, simulate diverse cost fns by subdividing edges [Roughgarden 02] • proof also implies the “double the capacity” result of [Roughgarden/Tardos 00] More Extensions

Fact: positive results continue to hold for: • nonatomic congestion games [Roughgarden/Tardos 04]

• symmetric cost maps [Chau/Sim 03] • asymmetric cost maps [Perakis 04] – bounds degrade with “amount of asymmetry” – see talk tomorrow

• atomic players, splittable flow [Roughgarden 04] Still More Extensions

Fact: positive results continue to hold for optimistic price of anarchy even with: • capacities [Correa/Schulz/Stier Moses 03] • atomic players, unsplittable flow – [Anshelevich/DasGupta/Kleinberg/Tardos/Wexler /Roughgarden 04] • see bibliography for still more references – Braess’s Paradox, other objective functions, fairness, pricing, etc. Open Questions

Question 1: what is “average-case” price of anarchy? – does a random graph have Braess’s Paradox?

Question 2: Related to next model... Road Map: Second Half

• Part III: Selfish Routing – the potential function technique – tight bounds on the price of anarchy – extensions and open questions

• Part IV: Other cool models: a brief tour – resource allocation, submodular, facility location, and network design games Resource Allocation Games

• based on model of [Kelly 97] • players submit bids, price-based mechanism responds by allocating capacity to players • Kelly's assumption: players are "price- takers", don't anticipate how their bid affects price computed by mechanism – standard assumption when many players •Thm:selfish behavior ⇒ optimal allocation Resource Allocation Games

• [Johari/Tsitsiklis 04]: but what if players are price-anticipating? – selfish behavior no longer achieves optimal solution • main result: price of anarchy is exactly 4/3 • as in selfish routing, analysis informed by existence of a potential function – also, worst-case network is a single link! Open Question

• deeper connection between the selfish routing and resource allocation models? • can a common analysis determine the price of anarchy in both models? • can p.o.a. bounds carry over when there is both resource allocation and congestion? Facility Location Games

• [Vetta 02]: tight analysis of profit- maximization games that exhibit submodularity (economies of scale) – for a natural facility location game, price of anarchy is exactly 2

• [Devanur/Garg/Khandekar/Pandit/Saberi 04]: price of anarchy bounded by a constant for facility location games with a min-cost objective Network Design Games

• [Anshelevich/DasGupta/Tardos/Wexler 03], [Anshelevich et al 04] • [Fabrikant/Luthra/Maneva/Papadimitriou/Shenker 03] – how do networks formed by selfish agents compare to the best-possible network? • for these games, need to resort either to – optimistic price of anarchy [ADTW], [A+] or – restrictions on the topology [FLMPS] Epilogue

•very new area – already have strong results for classical models – nice connections to optimization – tons of open questions, unexplored directions – for every game + objective fn, can study p.o.a. Epilogue

•very new area – already have strong results for classical models – nice connections to optimization – tons of open questions, unexplored directions – for every game + objective fn, can study p.o.a.

• advice to graduate students – relish the free food, but don’t forget to listen to the talk!