congestion games

33
Congestion games Computational game theory Fall 2010 by Rotem Arnon & Eytan Kidron

Upload: basil

Post on 07-Jan-2016

86 views

Category:

Documents


1 download

DESCRIPTION

Congestion games. Computational game theory Fall 2010 by Rotem Arnon & Eytan Kidron. Congestion Games. In a Congestion Game, each agent chooses a set of resources . The cost function for each resource depends only on the number of agents who chose the resource. Agents : A,B,C - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Congestion games

Congestion games

Computational game theoryFall 2010

by Rotem Arnon & Eytan Kidron

Page 2: Congestion games

Congestion Games

In a Congestion Game, each agent chooses a set of resources.

The cost function for each resource depends only on the number of agents who chose the resource.

Agents: A,B,CResources: the EdgesCost function: (for ex.)

35

23

12

)),((

nif

nif

nif

xsCost

Page 3: Congestion games

• In the Multicast Routing problem, we are given a graph G=(V,E).

• Each agent i must buy edges connecting si∊V to ti∊V.

• The cost of an edge e∊E is distributed equally between the agents that bought it ⇒ The more agents buy e, the cheaper it is for each agent.

• The cost of path P:siti is ∑e∊P(Ce / Ne) where Ce is the cost of e and Ne is the number of agents that bought e.

• The goal is to minimize the cost.

Example 1: Multicast Routing

Page 4: Congestion games

s21

t2

s1

t1

2

64

13

7

agent 1 cost:

agent 2 cost:

7

6

1+4/2+3=6

2+4+1=72+4/2+1=5

Example 1: Multicast Routing

Page 5: Congestion games

• In the Traffic problem, we are given a graph G=(V,E).

• Each agent i must choose a path connecting si∊V to ti∊V.

• The delay on an edge e∊E is proportional to the number of agents using this edge ⇒ The more agents use e, the higher the delay for each agent.

• The cost for using path P:siti is ∑e∊P(Ce * Ne) where Ce is the cost of e and Ne is the number of agents that use e.

• The goal is to minimize the cost (delay).

Example 2: Traffic

Page 6: Congestion games

s21

t2

s1

t1

2

62

13

7

agent 1 cost

agent 2 cost

7

6

1+2*2+3=8

2+2+1=52+2*2+1=7

Example 2: Traffic

Page 7: Congestion games

• Let R be the set of all resources.

• Let Si⊂2R be the set of strategies from which agent i can choose. Each strategy si∊Si is a set of resources.

• For each resource r∊R, let Nr denote the number of agents that choose resource r. Let cr be a cost function for resource r. cr=f(Nr), meaning, cr depends only on Nr

and not on the agent i.

• The cost function for agent i is ∑r∊s(i)cr(Nr)

Congestion Games – Formal Definition

Page 8: Congestion games

Congestion Games vs. Potential Games

Theorem 1: Every congestion game is an (exact) potential game.

Theorem 2: Every finite (exact) potential game is isomorphic to a congestion game.

Page 9: Congestion games

Congestion Game ⇒ Potential Game Given: a congestion game with a set of resources R and cost functions cr.

Goal: define an exact potential function which describes the game.

The potential function is (S) = Σr Σ1 ≤ j ≤ Nr(S) cr(j)Where:• S=(s1,…, sn) is the combined strategy of all agents• Nr(S) is the number of agents using resource r in S.

One interpretation: the sum of the costs that the agents would have received if each agent were unaffected by all later agents.

Page 10: Congestion games

(S) = Σr Σ1 ≤ j ≤ Nr(S) cr(j)Why is this a correct potential function?

Suppose: agent i changes it’s strategy from si to si’. ⇒ the combined strategy changes from S =(si,s-i) to S’=(si’,s-i)

• Let R+ = si’-si be the new resources the agent added.

• Let R- = si-si’ be the resources the agent removed.• The increase in the agent’s cost equals to:

ΣrR+ cr(Nr(S) + 1) - ΣrR- cr(Nr(S))

This is exactly the change in the potential function above!

Conclusion: congestion games are exact potential games

Congestion Game ⇒ Potential Game

Page 11: Congestion games

Congestion Games vs. Potential Games

Theorem 1: Every congestion game is an (exact) potential game.

Theorem 2: Every finite (exact) potential game is isomorphic to a congestion game.

Page 12: Congestion games

Given: a potential game with a potential function (S).Goal: define the game as a congestion game.

What does it mean to define the game as acongestion game?

We need to define:1. The resources R2. The cost functions cr for every r∊R such that:

∀combined strategy S and ∀ player i, ui(S) will be the same as in the potential game.

Potential Game ⇒ Congestion Game

Page 13: Congestion games

Define The Resources Let:• n be the number of agents in the potential game• k be the number of possible strategies (for a single

agent)

Define the resources R as all the sequences of nk bits, R={0,1}nk.

Which subset of resources will agent i choose?

If an agent i chooses strategy si in the potential game,he will choose all resources which have a 1 bit in the (i*k+si)-th bit in the congestion game.⇒ In total, each agent will choose 2nk-1 resources.

Page 14: Congestion games

Type A resources are resources with the following format: ∀ agent, in the k bits associated with that agent, there is exactly one set bit (1 bit).

Example: for n=3 and k=4, the string:• “0100 0010 1000” is a type A resource• “1100 0010 1000” is not a type A resource• “0100 0010 0000” is not a type A resource

For a resource r of type A, let si denote the index of the set bit of the i-th agent.

Example: “0100 0010 1000”

Type A Resources

s0=1 s1=2 s2=0

Page 15: Congestion games

Reminder:1. Let n be the number of agents in the potential

game.2. For a resource r of type A, let si denote the index

of the set bit of the i-th agent.

Now we can define the cost function for type A resources:The cost function of r is:

cr(n)=(s0,…, sn-1)

cr(x)=0 for x≠n

Note: there is exactly one type A resource for which each agent receives cost, and it is the same resource for all agents.

Cost Function: Type A Resources

Page 16: Congestion games

Type B resources are resources with the following format: ∃agent i, such that the k bits associated with agent i are set. For all other agents, k-1 out of the k bits are set.

Example: for n=3 and k=4, the string:• “1110 1111 1101” is a type B resource• “1111 1111 1101” is not a type B resource• “1110 1101 1011” is not a type B resource

For a resource r of type B, let i denote the agent whose bits are all set and for ∀j≠i let sj denote the index of the unset bit of the j-th agent.

Example: “1110 1111 1101” i=1

Type B Resources

s0=3 s2=2

Page 17: Congestion games

Reminder: For a resource r of type B, let i denote the agent whose bits are all set and for ∀j≠i let sj denote the index of the unset bit of the j-th agent.

Now we can define the cost function for type B resources:The cost function of r is:

cr(1)=ui(s0,…, sn-1) - (s0,…, sn-1)

cr(x)=0 for x≠1

Note: for any combined strategy S=(s0,…, sn-1), each agent gets a non-zero cost for exactly one type B resource, a resource in which i is the agents index and the sj values are the other agents’ strategies.

But what is si? si is undefined...

Cost Function: Type B Resources

Page 18: Congestion games

Interestingly, the value of ui(s0,…, sn-1) - (s0,…, sn-1)

does not depend on si!

Why?

Cost Function: Type B Resources

is a potential function ⇒ for every si and si’:

ui(si,s-i) - ui(si’,s-i) = (si,s-i) - (si’,s-i)

⇒ ui(si,s-i) - (si,s-i) = ui(si’,s-i) - (si’,s-i)

Hence ui(s0,…, sn-1) - (s0,…, sn-1) does not depend on si.

Page 19: Congestion games

∀resource r which is not a type A or type B resource the cost function is 0, cr(x)=0.

What cost does agent i receive for the combined strategy S=(s0,…, sn-1)?

In the potential game, he receives ui(s0,…, sn-1).In the congestion game, he receives:• 1 type A resource (s0,…, sn-1) • 1 type B resource ui(s0,…, sn-1) - (s0,…, sn-1)

⇒ In total he receives ui(s0,…, sn-1), exactly the same utility as in the potential game.

Conclusion: exact potential games are congestion games

Potential Game ⇒ Congestion Game

Page 20: Congestion games

Congestion Games vs. Potential Games

Theorem 1: Every congestion game is an (exact) potential game.

Theorem 2: Every finite (exact) potential game is isomorphic to a congestion game.

Page 21: Congestion games

Pure Nash equilibrium

Theorem: Every finite congestion game has a pure Nash equilibrium.

Why?

Congestion game ⇒

Exact potential game ⇒

Every exact potiential game has a pure Nash equilibrium

Page 22: Congestion games

Price of Anarchy

Intrinsic Robustness of the Price of Anarchy

Tim RoughgardenStanford University

Page 23: Congestion games

Inefficiency of Nash Flows

Note: Nash flows do not minimize the cost - observed informally by [Pigou 1920]

•Cost of Nash flow = 1•1 + 0•1 = 1•Cost of optimal (min-cost) flow = ½•½ +½•1 = ¾•Price of anarchy := Nash/OPT ratio = 4/3

s t

x

10

1 ½

½

Page 24: Congestion games

Unbounded POA

s t

xd

10

1 1-Є

Є

Nash flow has cost 1Min cost 0

⇒ Nash flow can cost arbitrarily more than the optimal (min-cost) flow– even if cost functions are polynomials

Example:

Page 25: Congestion games

Linear Cost Functions

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

Theorem: [Roughgarden/Tardos 00] for every network with linear cost fns:

≤ 4/3 ×

i.e., price of anarchy ≤ 4/3 in the linear case.

cost of Nash flow

cost of opt

flow

Page 26: Congestion games

Corollary of previous Theorem:• For linear cost fns, worst Nash/OPT ratio is

realized in a two-link network!

• simple explanation for worst inefficiency– confronted w/two routes, selfish users overcongest

one of them

s t

x

10

1 ½

½

• Cost of Nash = 1

• Cost of OPT = ¾

Sources of Inefficiency

Page 27: Congestion games

pureNash

mixed Nash

correlated eq

no regret

best-responsedynamics

Weaker Equilibrium Concepts

Page 28: Congestion games

Informal Theorem: [Roughgarden 09] under “surprisingly general” conditions, a bound on the price of anarchy (for pure Nash) extends automatically to all 5 bigger sets.

Example Application: selfish routing games (nonatomic or atomic) with cost functions in an arbitrary fixed set.

Main Result (Informal)

Page 29: Congestion games

• n players, each picks a strategy si

• player i incurs a cost Ci(s)

Important Assumption: objective function is cost(s) := i Ci(s)

Next: generic template for upper bounding price of anarchy of pure Nash equilibria.

• notation: s = a Nash eq; s* = an optimal

The Setup

Page 30: Congestion games

Suppose we have: cost(s) = i Ci(s) [defn of cost]

≤ i Ci(s*

i,s-i) [s a Nash eq]

≤ λ●cost(s*) + μ●cost(s) [(*)]

Then: POA (of pure Nash eq) ≤ λ/(1-μ).

Definition: A game is (λ,μ)-smooth if (*) holds for every pair s,s* outcomes.

• not only when s is a pure Nash eq!

An Upper Bound Template

Page 31: Congestion games

31

Examples: selfish routing, linear cost fns.• every nonatomic game is (1,1/4)-smooth• every atomic game is (5/3,1/3)-smooth

Theorem 1: in a (λ,μ)-smooth game, expected cost of each outcomes in the 5 sets above is at most λ/(1-μ).– such a POA bound “automatically” far more

general

Main Result #1

Page 32: Congestion games

32

worstcorrelated equilibium

worstno regretsequence

1

optimaloutcome

worstpureNash

worstmixedNash

λ/(1-μ)

So: in every (λ,μ)-smooth game with a sum objective, inefficiency of outcomes in the 5 sets looks like:

Illustration

Page 33: Congestion games

33

Theorem 2 (informal): in sufficiently rich classes of games, smoothness arguments suffice for a tight worst-case bound (even for pure Nash equilibria).

correlated equilibium

no regretsequence

1

optimaloutcome

pureNash

mixedNash

λ/(1-μ)for tightestchoice of λ,μ

Main Result #2