Algorithmic Game Theory Selfish Routing Guido Schfer CWI Amsterdam - - PowerPoint PPT Presentation

algorithmic game theory
SMART_READER_LITE
LIVE PREVIEW

Algorithmic Game Theory Selfish Routing Guido Schfer CWI Amsterdam - - PowerPoint PPT Presentation

PhD Course Algorithmic Game Theory Selfish Routing Guido Schfer CWI Amsterdam / VU University Amsterdam g.schaefer@cwi.nl LNMB PhD Course 2014 Utrecht University Organizational Issues Organizational Issues Course Website:


slide-1
SLIDE 1

PhD Course

Algorithmic Game Theory

Selfish Routing

Guido Schäfer

CWI Amsterdam / VU University Amsterdam g.schaefer@cwi.nl LNMB PhD Course 2014 Utrecht University

slide-2
SLIDE 2

Organizational Issues

slide-3
SLIDE 3

Organizational Issues

Course Website: http://www.cwi.nl/˜schaefer/courses/lnmb-agt14 (Please check this website regularly; changes, updates, etc. will be announced there.) Online Material: password protected! Login: lnmb-agt14 Password: lnmb-@gti4 List of Participants:

  • please check/add your data
  • participation will be checked

Guido Schäfer Selfish Routing 3

slide-4
SLIDE 4

Organizational Issues

Course Website: http://www.cwi.nl/˜schaefer/courses/lnmb-agt14 (Please check this website regularly; changes, updates, etc. will be announced there.) Online Material: password protected! Login: lnmb-agt14 Password: lnmb-@gti4 List of Participants:

  • please check/add your data
  • participation will be checked

Guido Schäfer Selfish Routing 3

slide-5
SLIDE 5

Organizational Issues

Course Website: http://www.cwi.nl/˜schaefer/courses/lnmb-agt14 (Please check this website regularly; changes, updates, etc. will be announced there.) Online Material: password protected! Login: lnmb-agt14 Password: lnmb-@gti4 List of Participants:

  • please check/add your data
  • participation will be checked

Guido Schäfer Selfish Routing 3

slide-6
SLIDE 6

Organizational Issues

Lectures

  • 8 lectures, 90 minutes each
  • Mondays, 13:00–14:45, room 611AB, Math Building
  • Lecture Notes will be provided online

Assignments:

  • issued bi-weekly (starting next week)
  • contain a few tough problems which will be graded
  • precise format announced later

Guido Schäfer Selfish Routing 4

slide-7
SLIDE 7

Organizational Issues

Lectures

  • 8 lectures, 90 minutes each
  • Mondays, 13:00–14:45, room 611AB, Math Building
  • Lecture Notes will be provided online

Assignments:

  • issued bi-weekly (starting next week)
  • contain a few tough problems which will be graded
  • precise format announced later

Guido Schäfer Selfish Routing 4

slide-8
SLIDE 8

Topics

  • computation of equilibria
  • inefficiency of equilibria
  • reducing the inefficiency
  • selfish routing games
  • congestion/potential games
  • smoothness of games
  • cost sharing games
  • approximation and mechanism design
  • combinatorial auctions
  • generalized second-price auction
  • revenue maximization and the Bayesian setting

Guido Schäfer Selfish Routing 5

slide-9
SLIDE 9

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-10
SLIDE 10

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-11
SLIDE 11

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-12
SLIDE 12

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-13
SLIDE 13

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-14
SLIDE 14

Course goals

Goals:

  • learn fundamental results of algorithmic game theory
  • get an idea of the phenomena and questions that arise
  • familiarize with standard approaches and techniques
  • get acquainted with state-of-the-art techniques
  • trigger some new research questions (hopefully)

Algorithmic game theory ... ... is a young, challenging, interdisciplinary research field ... addresses many aspects of practical relevance ... can have an impact on real-world applications ... unites ideas from game theory, algorithms, combinatorial

  • ptimization, complexity theory, etc.

... is fun!

Guido Schäfer Selfish Routing 6

slide-15
SLIDE 15

AGT book

  • N. Nisan, T. Roughgarden, E. Tardos,

and V. Vazirani (Eds.) Algorithmic Game Theory Cambridge University Press, 2007. Available online (free!) at:

http://www.cambridge.org/us/9780521872829

Guido Schäfer Selfish Routing 7

slide-16
SLIDE 16

Motivation

slide-17
SLIDE 17

Situations of strategic interaction

Viewpoint: many real-world problems are complex and distributed in nature:

1 involve several independent decision makers

(lack of coordination)

2 each decision maker attempts to achieve his own goals

(strategic behavior)

3 individual outcome depends on decisions made by others

(interdependent) Examples:

  • routing in networks
  • network design
  • auctions
  • ...

Guido Schäfer Selfish Routing 9

slide-18
SLIDE 18

Situations of strategic interaction

Viewpoint: many real-world problems are complex and distributed in nature:

1 involve several independent decision makers

(lack of coordination)

2 each decision maker attempts to achieve his own goals

(strategic behavior)

3 individual outcome depends on decisions made by others

(interdependent) Examples:

  • routing in networks
  • network design
  • auctions
  • ...

Guido Schäfer Selfish Routing 9

slide-19
SLIDE 19

Situations of strategic interaction

Viewpoint: many real-world problems are complex and distributed in nature:

1 involve several independent decision makers

(lack of coordination)

2 each decision maker attempts to achieve his own goals

(strategic behavior)

3 individual outcome depends on decisions made by others

(interdependent) Examples:

  • routing in networks
  • network design
  • auctions
  • ...

Guido Schäfer Selfish Routing 9

slide-20
SLIDE 20

Situations of strategic interaction

Viewpoint: many real-world problems are complex and distributed in nature:

1 involve several independent decision makers

(lack of coordination)

2 each decision maker attempts to achieve his own goals

(strategic behavior)

3 individual outcome depends on decisions made by others

(interdependent) Examples:

  • routing in networks
  • network design
  • auctions
  • ...

Guido Schäfer Selfish Routing 9

slide-21
SLIDE 21

Situations of strategic interaction

Viewpoint: many real-world problems are complex and distributed in nature:

1 involve several independent decision makers

(lack of coordination)

2 each decision maker attempts to achieve his own goals

(strategic behavior)

3 individual outcome depends on decisions made by others

(interdependent) Examples:

  • routing in networks
  • network design
  • auctions
  • ...

Guido Schäfer Selfish Routing 9

slide-22
SLIDE 22

Network routing

Network routing: (think of urban road traffic)

  • large number of commuters want to travel from their origins

to their destinations in a given network

  • commuters are autonomous and choose their routes so as to

minimize their individual travel times

  • travel time along a network link is affected by congestion
  • individual travel time depends on the choices made by others

Applications: road traffic, public transportation, Internet routing, etc. Observation: selfish route choices lead to inefficient outcomes

Guido Schäfer Selfish Routing 10

slide-23
SLIDE 23

Network routing

Network routing: (think of urban road traffic)

  • large number of commuters want to travel from their origins

to their destinations in a given network

  • commuters are autonomous and choose their routes so as to

minimize their individual travel times

  • travel time along a network link is affected by congestion
  • individual travel time depends on the choices made by others

Applications: road traffic, public transportation, Internet routing, etc. Observation: selfish route choices lead to inefficient outcomes

Guido Schäfer Selfish Routing 10

slide-24
SLIDE 24

Network routing

Network routing: (think of urban road traffic)

  • large number of commuters want to travel from their origins

to their destinations in a given network

  • commuters are autonomous and choose their routes so as to

minimize their individual travel times

  • travel time along a network link is affected by congestion
  • individual travel time depends on the choices made by others

Applications: road traffic, public transportation, Internet routing, etc. Observation: selfish route choices lead to inefficient outcomes

Guido Schäfer Selfish Routing 10

slide-25
SLIDE 25

Inefficient outcomes

Guido Schäfer Selfish Routing 11

slide-26
SLIDE 26

Consequences

Negative consequences:

  • environmental pollution
  • waste of natural resources, time

and money

  • stress on the traffic participants
  • ...

“In 2010, congestion caused urban Americans to travel 4.8 billion hours more and to purchase an extra 1.9 billion gallons of fuel for a congestion cost of $101 billion.”

[Texas Transportation Institute, 2011 Urban Mobility Report]

Need: gain fundamental understanding of the effect of strategic interactions in such applications

Guido Schäfer Selfish Routing 12

slide-27
SLIDE 27

Consequences

Negative consequences:

  • environmental pollution
  • waste of natural resources, time

and money

  • stress on the traffic participants
  • ...

“In 2010, congestion caused urban Americans to travel 4.8 billion hours more and to purchase an extra 1.9 billion gallons of fuel for a congestion cost of $101 billion.”

[Texas Transportation Institute, 2011 Urban Mobility Report]

Need: gain fundamental understanding of the effect of strategic interactions in such applications

Guido Schäfer Selfish Routing 12

slide-28
SLIDE 28

Consequences

Negative consequences:

  • environmental pollution
  • waste of natural resources, time

and money

  • stress on the traffic participants
  • ...

“In 2010, congestion caused urban Americans to travel 4.8 billion hours more and to purchase an extra 1.9 billion gallons of fuel for a congestion cost of $101 billion.”

[Texas Transportation Institute, 2011 Urban Mobility Report]

Need: gain fundamental understanding of the effect of strategic interactions in such applications

Guido Schäfer Selfish Routing 12

slide-29
SLIDE 29

Approach

Game theory: provides mathematical toolbox to study situations of strategic interaction

  • different models of games
  • several solution concepts for the prediction of “rational
  • utcomes”

Algorithmic game theory:

  • use game-theoretical models and solution concepts
  • take computational/algorithmic issues into account

Goals:

  • study the effect of strategic behavior
  • analyze the efficiency loss due to lack of coordination
  • provide algorithmic means to reduce the inefficiency

Guido Schäfer Selfish Routing 13

slide-30
SLIDE 30

Approach

Game theory: provides mathematical toolbox to study situations of strategic interaction

  • different models of games
  • several solution concepts for the prediction of “rational
  • utcomes”

Algorithmic game theory:

  • use game-theoretical models and solution concepts
  • take computational/algorithmic issues into account

Goals:

  • study the effect of strategic behavior
  • analyze the efficiency loss due to lack of coordination
  • provide algorithmic means to reduce the inefficiency

Guido Schäfer Selfish Routing 13

slide-31
SLIDE 31

Approach

Game theory: provides mathematical toolbox to study situations of strategic interaction

  • different models of games
  • several solution concepts for the prediction of “rational
  • utcomes”

Algorithmic game theory:

  • use game-theoretical models and solution concepts
  • take computational/algorithmic issues into account

Goals:

  • study the effect of strategic behavior
  • analyze the efficiency loss due to lack of coordination
  • provide algorithmic means to reduce the inefficiency

Guido Schäfer Selfish Routing 13

slide-32
SLIDE 32

Outline

1 Examples of Some Phenomena 2 Wardrop Model and the Price of Anarchy 3 Coping with the Braess Paradox

Guido Schäfer Selfish Routing 14

slide-33
SLIDE 33

Examples of Some Phenomena

slide-34
SLIDE 34

Cost minimization games

A cost minimization game G is given by

  • set of players N = {1, . . . , n}
  • set of strategies Si for every player i ∈ N
  • cost function Ci : S1 × · · · × Sn → R

S = S1 × · · · × Sn is called the set of strategy profiles. Interpretation:

  • every player i ∈ N chooses a strategy si ∈ Si so as to

minimize his individual cost Ci(s1, . . . , sn)

  • one-shot, simultaneous-move: players choose their

strategies once and at the same time

  • full-information: every player knows the strategies and cost

function of every other player

Guido Schäfer Selfish Routing 16

slide-35
SLIDE 35

[World Cup 2006 Example]

slide-36
SLIDE 36

Example: Congestion game

n = 4 Si = {e1, e2} s t ℓe1(x) = x ℓe2(x) = 4

Guido Schäfer Selfish Routing 18

slide-37
SLIDE 37

Example: Congestion game

n = 4 Si = {e1, e2} s t ℓe1(x) = x ℓe2(x) = 4 4

Guido Schäfer Selfish Routing 18

slide-38
SLIDE 38

Example: Congestion game

n = 4 Si = {e1, e2} s t ℓe1(x) = x 1 ℓe2(x) = 4 3

Guido Schäfer Selfish Routing 18

slide-39
SLIDE 39

Example: Congestion game

n = 4 Si = {e1, e2} s t ℓe1(x) = x 2 ℓe2(x) = 4 2

Guido Schäfer Selfish Routing 18

slide-40
SLIDE 40

Example: Congestion game

n = 4 Si = {e1, e2} s t ℓe1(x) = x 3 ℓe2(x) = 4 1

Guido Schäfer Selfish Routing 18

slide-41
SLIDE 41

Nash equilibrium and social cost

Nash equilibrium: strategy profile s = (s1, . . . , sn) ∈ S is a pure Nash equilibrium (PNE) if no player has an incentive to unilaterally deviate ∀i ∈ N : Ci(si, s−i) ≤ Ci(s′

i, s−i)

∀s′

i ∈ Si

(s−i refers to (s1, . . . , si−1, si+1, . . . , sn)) Social cost of strategy profile s = (s1, . . . , sn) ∈ S is C(s) =

  • i∈N

Ci(s) A strategy profile s∗ that minimizes the social cost function C(·) is called a social optimum.

Guido Schäfer Selfish Routing 19

slide-42
SLIDE 42

Nash equilibrium and social cost

Nash equilibrium: strategy profile s = (s1, . . . , sn) ∈ S is a pure Nash equilibrium (PNE) if no player has an incentive to unilaterally deviate ∀i ∈ N : Ci(si, s−i) ≤ Ci(s′

i, s−i)

∀s′

i ∈ Si

(s−i refers to (s1, . . . , si−1, si+1, . . . , sn)) Social cost of strategy profile s = (s1, . . . , sn) ∈ S is C(s) =

  • i∈N

Ci(s) A strategy profile s∗ that minimizes the social cost function C(·) is called a social optimum.

Guido Schäfer Selfish Routing 19

slide-43
SLIDE 43

Example: Congestion game

n = 4 s t x 4

Guido Schäfer Selfish Routing 20

slide-44
SLIDE 44

Example: Congestion game

n = 4 s t x 4 4 Nash equilibrium: C(s) = 4 · 4 = 16

Guido Schäfer Selfish Routing 20

slide-45
SLIDE 45

Example: Congestion game

n = 4 s t x 2 4 2 social optimum: C(s∗) = 4 + 8 = 12

Guido Schäfer Selfish Routing 20

slide-46
SLIDE 46

Example: Congestion game

n = 4 s t x 2 4 2 inefficiency:

C(s) C(s∗) = 16 12 = 4 3

Guido Schäfer Selfish Routing 20

slide-47
SLIDE 47

Example: Congestion game

n = 4 s t x 4

Guido Schäfer Selfish Routing 20

slide-48
SLIDE 48

Example: Congestion game

n = 4 s t x 3 4 1 Nash equilibrium: C(s) = 9 + 4 = 13

Guido Schäfer Selfish Routing 20

slide-49
SLIDE 49

Example: Congestion game

n = 4 s t x 3 4 1 inefficiency:

C(s) C(s∗) = 13 12 ≈ 1.08

Guido Schäfer Selfish Routing 20

slide-50
SLIDE 50

Inefficiency of equilibria

Price of anarchy: worst-case inefficiency of equilibria POA(G) = max

s∈PNE(G)

C(s) C(s∗)

[Koutsoupias, Papadimitriou, STACS ’99]

Price of stability: best-case inefficiency of equilibria POS(G) = min

s∈PNE(G)

C(s) C(s∗)

[Schulz, Moses, SODA ’03]

Define the price of anarchy/stability of a class of games G as POA(G) = max

G∈G POA(G)

and POS(G) = max

G∈G POS(G)

Guido Schäfer Selfish Routing 21

slide-51
SLIDE 51

Inefficiency of equilibria

Price of anarchy: worst-case inefficiency of equilibria POA(G) = max

s∈PNE(G)

C(s) C(s∗)

[Koutsoupias, Papadimitriou, STACS ’99]

Price of stability: best-case inefficiency of equilibria POS(G) = min

s∈PNE(G)

C(s) C(s∗)

[Schulz, Moses, SODA ’03]

Define the price of anarchy/stability of a class of games G as POA(G) = max

G∈G POA(G)

and POS(G) = max

G∈G POS(G)

Guido Schäfer Selfish Routing 21

slide-52
SLIDE 52

Inefficiency of equilibria

Price of anarchy: worst-case inefficiency of equilibria POA(G) = max

s∈PNE(G)

C(s) C(s∗)

[Koutsoupias, Papadimitriou, STACS ’99]

Price of stability: best-case inefficiency of equilibria POS(G) = min

s∈PNE(G)

C(s) C(s∗)

[Schulz, Moses, SODA ’03]

Define the price of anarchy/stability of a class of games G as POA(G) = max

G∈G POA(G)

and POS(G) = max

G∈G POS(G)

Guido Schäfer Selfish Routing 21

slide-53
SLIDE 53

Example: Braess Paradox

n = 4 s t x 4 4 x

Guido Schäfer Selfish Routing 22

slide-54
SLIDE 54

Example: Braess Paradox

n = 4 s t x 2 4 4 2 x Nash equilibrium: C(s) = 24

Guido Schäfer Selfish Routing 22

slide-55
SLIDE 55

Example: Braess Paradox

n = 4 s t x 4 4 x

Guido Schäfer Selfish Routing 22

slide-56
SLIDE 56

Example: Braess Paradox

n = 4 s t x 4 4 x

Guido Schäfer Selfish Routing 22

slide-57
SLIDE 57

Example: Braess Paradox

n = 4 s t 4 4 x 4 x Nash equilibrium: C(s) = 32

Guido Schäfer Selfish Routing 22

slide-58
SLIDE 58

Example: Braess Paradox

n = 4 s t 4 4 x 4 x cost increase: 32

24 = 4 3

Guido Schäfer Selfish Routing 22

slide-59
SLIDE 59

[New York Times Article]

slide-60
SLIDE 60

Example: Network tolls

n = 4 s t x 4

Guido Schäfer Selfish Routing 24

slide-61
SLIDE 61

Example: Network tolls

n = 4 s t x +2 4

Guido Schäfer Selfish Routing 24

slide-62
SLIDE 62

Example: Network tolls

n = 4 s t x +2 4 2 2 Nash equilibrium = social optimum

Guido Schäfer Selfish Routing 24

slide-63
SLIDE 63

Wardrop Model and the Price of Anarchy

slide-64
SLIDE 64

Wardrop model

x ℓa(x)

Given:

  • directed network G = (V, A)
  • k commodities (s1, t1), . . . , (sk, tk)
  • demand ri for commodity i ∈ [k]
  • flow-dependent latency function ℓa(·) for every arc a ∈ A

(non-decreasing, differentiable, semi-convex) Interpretation:

  • send ri units of flow from si to ti, corresponding to an

infinitely large population of non-atomic players

  • latency experienced on arc a ∈ A is ℓa(x), where x is the

amount of flow on arc a

  • selfishness: players choose minimum-latency paths
  • one-shot, simultaneous-move, full information game

Guido Schäfer Selfish Routing 26

slide-65
SLIDE 65

Wardrop model

x ℓa(x)

Given:

  • directed network G = (V, A)
  • k commodities (s1, t1), . . . , (sk, tk)
  • demand ri for commodity i ∈ [k]
  • flow-dependent latency function ℓa(·) for every arc a ∈ A

(non-decreasing, differentiable, semi-convex) Interpretation:

  • send ri units of flow from si to ti, corresponding to an

infinitely large population of non-atomic players

  • latency experienced on arc a ∈ A is ℓa(x), where x is the

amount of flow on arc a

  • selfishness: players choose minimum-latency paths
  • one-shot, simultaneous-move, full information game

Guido Schäfer Selfish Routing 26

slide-66
SLIDE 66

Optimal flows

Notation:

  • Pi = set of all (simple) directed si, ti-paths
  • P = ∪i∈[k]Pi = set of all relevant paths
  • flow f is a function f : P → R+
  • f is a feasible flow if

P∈Pi fP = ri for all i

  • flow on arc a: fa :=

P∈P:a∈P fP

  • latency of path P: ℓP(f) :=

a∈P ℓa(fa)

Social cost of flow: C(f) =

  • i∈[k]
  • P∈Pi

fPℓP(f) =

  • a∈A

faℓa(fa) Optimal flow: feasible flow f ∗ that minimizes C(·)

Guido Schäfer Selfish Routing 27

slide-67
SLIDE 67

Optimal flows

Notation:

  • Pi = set of all (simple) directed si, ti-paths
  • P = ∪i∈[k]Pi = set of all relevant paths
  • flow f is a function f : P → R+
  • f is a feasible flow if

P∈Pi fP = ri for all i

  • flow on arc a: fa :=

P∈P:a∈P fP

  • latency of path P: ℓP(f) :=

a∈P ℓa(fa)

Social cost of flow: C(f) =

  • i∈[k]
  • P∈Pi

fPℓP(f) =

  • a∈A

faℓa(fa) Optimal flow: feasible flow f ∗ that minimizes C(·)

Guido Schäfer Selfish Routing 27

slide-68
SLIDE 68

Optimal flows

Notation:

  • Pi = set of all (simple) directed si, ti-paths
  • P = ∪i∈[k]Pi = set of all relevant paths
  • flow f is a function f : P → R+
  • f is a feasible flow if

P∈Pi fP = ri for all i

  • flow on arc a: fa :=

P∈P:a∈P fP

  • latency of path P: ℓP(f) :=

a∈P ℓa(fa)

Social cost of flow: C(f) =

  • i∈[k]
  • P∈Pi

fPℓP(f) =

  • a∈A

faℓa(fa) Optimal flow: feasible flow f ∗ that minimizes C(·)

Guido Schäfer Selfish Routing 27

slide-69
SLIDE 69

Nash flows

Nash flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0, ∀δ ∈ (0, fP1] : ℓP1(f) ≤ ℓP2(˜ f), where ˜ fP :=      fP − δ if P = P1 fP + δ if P = P2 fP

  • therwise.

Exploiting continuity of ℓa(·) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0 : ℓP1(f) ≤ ℓP2(f)

Guido Schäfer Selfish Routing 28

slide-70
SLIDE 70

Nash flows

Nash flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0, ∀δ ∈ (0, fP1] : ℓP1(f) ≤ ℓP2(˜ f), where ˜ fP :=      fP − δ if P = P1 fP + δ if P = P2 fP

  • therwise.

Exploiting continuity of ℓa(·) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0 : ℓP1(f) ≤ ℓP2(f)

Guido Schäfer Selfish Routing 28

slide-71
SLIDE 71

Nash flows

Nash flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0, ∀δ ∈ (0, fP1] : ℓP1(f) ≤ ℓP2(˜ f), where ˜ fP :=      fP − δ if P = P1 fP + δ if P = P2 fP

  • therwise.

Exploiting continuity of ℓa(·) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [k] ∀P1, P2 ∈ Pi with fP1 > 0 : ℓP1(f) ≤ ℓP2(f)

Guido Schäfer Selfish Routing 28

slide-72
SLIDE 72

Inefficiency of equilibria

Guido Schäfer Selfish Routing 29

slide-73
SLIDE 73

Inefficiency of equilibria Nash flow f: C(f) = 1

Guido Schäfer Selfish Routing 29

slide-74
SLIDE 74

Inefficiency of equilibria Optimal flow f ∗: C(f ∗) = 1

2 · 1 2 + 1 2 · 1 = 3 4

Guido Schäfer Selfish Routing 29

slide-75
SLIDE 75

Existence and computation of optimal flows

min

  • a∈A

ℓa(fa)fa s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Observations:

  • minimize a continuous function (social cost) over a compact

set (feasible flows)

  • optimal flow must exist (extreme value theorem)
  • optimal flow can be computed efficiently (convex program)

Guido Schäfer Selfish Routing 30

slide-76
SLIDE 76

Existence and computation of optimal flows

min

  • a∈A

ℓa(fa)fa s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Observations:

  • minimize a continuous function (social cost) over a compact

set (feasible flows)

  • optimal flow must exist (extreme value theorem)
  • optimal flow can be computed efficiently (convex program)

Guido Schäfer Selfish Routing 30

slide-77
SLIDE 77

KKT optimality conditions

min

  • a∈A

ha(fa) s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P (CP)

Theorem (KKT optimality conditions)

Suppose (ha)a∈A are continuously differentiable and convex. f is an optimal solution for (CP) if and only if for every i ∈ [k] ∀P1, P2 ∈ Pi, fP1 > 0 :

  • a∈P1

h′

a(fa) ≤

  • a∈P2

h′

a(fa)

Guido Schäfer Selfish Routing 31

slide-78
SLIDE 78

KKT optimality conditions

min

  • a∈A

ha(fa) s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P (CP)

Theorem (KKT optimality conditions)

Suppose (ha)a∈A are continuously differentiable and convex. f is an optimal solution for (CP) if and only if for every i ∈ [k] ∀P1, P2 ∈ Pi, fP1 > 0 :

  • a∈P1

h′

a(fa) ≤

  • a∈P2

h′

a(fa)

Guido Schäfer Selfish Routing 31

slide-79
SLIDE 79

Existence and computation of Nash flows

Idea: Can we determine functions (ha)a∈A such that KKT

  • ptimality conditions reduce to Nash flow conditions?

min

  • a∈A

fa ℓa(x)dx s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Observations:

  • optimal solutions of (CP) above coincides with Nash flows
  • Nash flow must exist (extreme value theorem)
  • similar argument: cost of Nash flow is unique
  • Nash flow can be computed efficiently (convex program)

Guido Schäfer Selfish Routing 32

slide-80
SLIDE 80

Existence and computation of Nash flows

Idea: Can we determine functions (ha)a∈A such that KKT

  • ptimality conditions reduce to Nash flow conditions?

min

  • a∈A

fa ℓa(x)dx s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Observations:

  • optimal solutions of (CP) above coincides with Nash flows
  • Nash flow must exist (extreme value theorem)
  • similar argument: cost of Nash flow is unique
  • Nash flow can be computed efficiently (convex program)

Guido Schäfer Selfish Routing 32

slide-81
SLIDE 81

Existence and computation of Nash flows

Idea: Can we determine functions (ha)a∈A such that KKT

  • ptimality conditions reduce to Nash flow conditions?

min

  • a∈A

fa ℓa(x)dx s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Observations:

  • optimal solutions of (CP) above coincides with Nash flows
  • Nash flow must exist (extreme value theorem)
  • similar argument: cost of Nash flow is unique
  • Nash flow can be computed efficiently (convex program)

Guido Schäfer Selfish Routing 32

slide-82
SLIDE 82

Characterization of optimal flows

min

  • a∈A

ℓa(fa)fa s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Applying KKT optimality conditions yields:

Theorem

f is an optimal flow with respect to (ℓa)a∈A if and only if f is a Nash flow with respect to (ℓ∗

a)a∈A, where ℓ∗ a(x) = (x · ℓa(x))′.

Guido Schäfer Selfish Routing 33

slide-83
SLIDE 83

Characterization of optimal flows

min

  • a∈A

ℓa(fa)fa s.t.

  • P∈Pi

fP = ri ∀i ∈ [k] fa =

  • P∈P:a∈P

fP ∀a ∈ A fP ≥ ∀P ∈ P

Applying KKT optimality conditions yields:

Theorem

f is an optimal flow with respect to (ℓa)a∈A if and only if f is a Nash flow with respect to (ℓ∗

a)a∈A, where ℓ∗ a(x) = (x · ℓa(x))′.

Guido Schäfer Selfish Routing 33

slide-84
SLIDE 84

Price of anarchy in selfish routing

Price of anarchy: given an instance I = (G, (si, ti), (ri), (ℓa)) POA(I) = max

f Nash flow

C(f) C(f ∗) POA for selfish routing is independent of the network topology, but depends on the class of latency functions:

  • POA = 4

3 for linear latency functions

  • POA = Θ( p

ln p) for polynomial latency functions of degree p

  • POA is unbounded in general

[Roughgarden, Tardos, JACM ’02]

Guido Schäfer Selfish Routing 34

slide-85
SLIDE 85

Price of anarchy in selfish routing

Price of anarchy: given an instance I = (G, (si, ti), (ri), (ℓa)) POA(I) = max

f Nash flow

C(f) C(f ∗) POA for selfish routing is independent of the network topology, but depends on the class of latency functions:

  • POA = 4

3 for linear latency functions

  • POA = Θ( p

ln p) for polynomial latency functions of degree p

  • POA is unbounded in general

[Roughgarden, Tardos, JACM ’02]

Guido Schäfer Selfish Routing 34

slide-86
SLIDE 86

[Upper bound on POA for linear latency functions]

slide-87
SLIDE 87

POA for polynomial latency functions

p 1 2 3 . . . POA ≈ 1.333 ≈ 1.626 ≈ 1.896

Table : POA for polynomial latency functions of degree p

Theorem

Let (ℓa)a∈A be polynomial latency functions of degree at most p. POA ≤

  • 1 −

p (p + 1)(p+1)/p −1 = Θ p ln p

  • [Roughgarden, Tardos, JACM ’02]

Guido Schäfer Selfish Routing 36

slide-88
SLIDE 88

POA for polynomial latency functions

p 1 2 3 . . . POA ≈ 1.333 ≈ 1.626 ≈ 1.896

Table : POA for polynomial latency functions of degree p

Theorem

Let (ℓa)a∈A be polynomial latency functions of degree at most p. POA ≤

  • 1 −

p (p + 1)(p+1)/p −1 = Θ p ln p

  • [Roughgarden, Tardos, JACM ’02]

Guido Schäfer Selfish Routing 36

slide-89
SLIDE 89

Problem 1

Let Ld = {g : R+ → R+ | g(x) = qxd with q ∈ R+} Problem 1: Consider the class of non-atomic selfish routing games with latency functions (ℓa)a∈A ∈ LA

  • d. Provide a tight

bound on the price of anarchy for these games.

Guido Schäfer Selfish Routing 37

slide-90
SLIDE 90

Example: Unbounded POA

Guido Schäfer Selfish Routing 38

slide-91
SLIDE 91

Example: Unbounded POA Nash flow f: C(f) = 1

Guido Schäfer Selfish Routing 38

slide-92
SLIDE 92

Example: Unbounded POA Optimal flow f ∗: C(f ∗) = (1 − ǫ)1+p + ǫ · 1 → 0

Guido Schäfer Selfish Routing 38

slide-93
SLIDE 93

Example: Unbounded POA

POA → ∞ as p → ∞

Guido Schäfer Selfish Routing 38

slide-94
SLIDE 94

Reducing inefficiency

Means to reduce inefficiency:

  • infrastructure improvement (expensive, Braess paradox)
  • centralized routing (difficult to implement)
  • Stackelberg routing (control part of the traffic)
  • traffic regulation (taxes on fuel, pay-as-you-go tax)
  • network tolls

Guido Schäfer Selfish Routing 39

slide-95
SLIDE 95

Coping with the Braess Paradox

slide-96
SLIDE 96

Braess subgraph problem

Consider a single-commodity instance I = (G, (s, t), r, (ℓa)) with linear latency functions. Define d(H) = common latency of flow carrying paths in a Nash flow for H ⊆ G Braess subgraph problem: Given (G, (s, t), r, (ℓa)), find a subgraph H ⊆ G that minimizes d(H). Algorithm TRIVIAL: simply return the original graph G

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem.

Guido Schäfer Selfish Routing 41

slide-97
SLIDE 97

Braess subgraph problem

Consider a single-commodity instance I = (G, (s, t), r, (ℓa)) with linear latency functions. Define d(H) = common latency of flow carrying paths in a Nash flow for H ⊆ G Braess subgraph problem: Given (G, (s, t), r, (ℓa)), find a subgraph H ⊆ G that minimizes d(H). Algorithm TRIVIAL: simply return the original graph G

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem.

Guido Schäfer Selfish Routing 41

slide-98
SLIDE 98

Braess subgraph problem

Consider a single-commodity instance I = (G, (s, t), r, (ℓa)) with linear latency functions. Define d(H) = common latency of flow carrying paths in a Nash flow for H ⊆ G Braess subgraph problem: Given (G, (s, t), r, (ℓa)), find a subgraph H ⊆ G that minimizes d(H). Algorithm TRIVIAL: simply return the original graph G

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem.

Guido Schäfer Selfish Routing 41

slide-99
SLIDE 99

Braess subgraph problem

Consider a single-commodity instance I = (G, (s, t), r, (ℓa)) with linear latency functions. Define d(H) = common latency of flow carrying paths in a Nash flow for H ⊆ G Braess subgraph problem: Given (G, (s, t), r, (ℓa)), find a subgraph H ⊆ G that minimizes d(H). Algorithm TRIVIAL: simply return the original graph G

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem.

Guido Schäfer Selfish Routing 41

slide-100
SLIDE 100

Braess subgraph problem

Consider a single-commodity instance I = (G, (s, t), r, (ℓa)) with linear latency functions. Define d(H) = common latency of flow carrying paths in a Nash flow for H ⊆ G Braess subgraph problem: Given (G, (s, t), r, (ℓa)), find a subgraph H ⊆ G that minimizes d(H). Algorithm TRIVIAL: simply return the original graph G

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem.

Guido Schäfer Selfish Routing 41

slide-101
SLIDE 101

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-102
SLIDE 102

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-103
SLIDE 103

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-104
SLIDE 104

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-105
SLIDE 105

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-106
SLIDE 106

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-107
SLIDE 107

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-108
SLIDE 108

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-109
SLIDE 109

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-110
SLIDE 110

Braess subgraph problem

Theorem

TRIVIAL is a 4

3-approximation algorithm for the Braess subgraph

problem. Proof:

1 Algorithm computes a feasible solution in polynomial time. 2 Consider an arbitrary subgraph H of G. Let

f = Nash flow for G and h = Nash flow for H The bound of 4

3 on the price of anarchy yields

C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) r · d(G) = C(f) ≤ 4 3 · C(f ∗) ≤ 4 3 · C(h) = 4 3 · r · d(H)

Guido Schäfer Selfish Routing 42

slide-111
SLIDE 111

As good as it gets...

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof: We show that a (4

3 − ε)-approximation algorithm can

solve the following NP-complete problem in polynomial time. 2-DIRECTED VERTEX-DISJOINT PATHS PROBLEM (2DDP): Given: A directed graph G = (V, A) and two vertex pairs (s1, t1), (s2, t2). Goal: Decide whether there exist two disjoint paths P1 and P2 between (s1, t1) and (s2, t2), respectively.

Guido Schäfer Selfish Routing 43

slide-112
SLIDE 112

As good as it gets...

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof: We show that a (4

3 − ε)-approximation algorithm can

solve the following NP-complete problem in polynomial time. 2-DIRECTED VERTEX-DISJOINT PATHS PROBLEM (2DDP): Given: A directed graph G = (V, A) and two vertex pairs (s1, t1), (s2, t2). Goal: Decide whether there exist two disjoint paths P1 and P2 between (s1, t1) and (s2, t2), respectively.

Guido Schäfer Selfish Routing 43

slide-113
SLIDE 113

Inapproximability

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof:

1 If I is a yes-instance of 2DDP then d(H) = 3 2 for some

subgraph H ⊆ G′.

2 If I is a no-instance of 2DDP then d(H) ≥ 2 for every

subgraph H ⊆ G′. A (4

3 − ǫ)-approximation algorithm computes in polynomial time

a subnetwork H′ with d(H′) < 2 in case (1) and d(H′) ≥ 2 in case (2). Thus, P = NP.

Guido Schäfer Selfish Routing 44

slide-114
SLIDE 114

Inapproximability

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof:

1 If I is a yes-instance of 2DDP then d(H) = 3 2 for some

subgraph H ⊆ G′.

2 If I is a no-instance of 2DDP then d(H) ≥ 2 for every

subgraph H ⊆ G′. A (4

3 − ǫ)-approximation algorithm computes in polynomial time

a subnetwork H′ with d(H′) < 2 in case (1) and d(H′) ≥ 2 in case (2). Thus, P = NP.

Guido Schäfer Selfish Routing 44

slide-115
SLIDE 115

Inapproximability

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof:

1 If I is a yes-instance of 2DDP then d(H) = 3 2 for some

subgraph H ⊆ G′.

2 If I is a no-instance of 2DDP then d(H) ≥ 2 for every

subgraph H ⊆ G′. A (4

3 − ǫ)-approximation algorithm computes in polynomial time

a subnetwork H′ with d(H′) < 2 in case (1) and d(H′) ≥ 2 in case (2). Thus, P = NP.

Guido Schäfer Selfish Routing 44

slide-116
SLIDE 116

Inapproximability

Theorem

Assuming P = NP, there is no (4

3 − ε)-approximation algorithm

for the Braess subgraph problem for every ε > 0. Proof:

1 If I is a yes-instance of 2DDP then d(H) = 3 2 for some

subgraph H ⊆ G′.

2 If I is a no-instance of 2DDP then d(H) ≥ 2 for every

subgraph H ⊆ G′. A (4

3 − ǫ)-approximation algorithm computes in polynomial time

a subnetwork H′ with d(H′) < 2 in case (1) and d(H′) ≥ 2 in case (2). Thus, P = NP.

Guido Schäfer Selfish Routing 44

slide-117
SLIDE 117

Inapproximability

G

s t t1 t2 s1 s2 1 x x 1 P

1

P

2

Guido Schäfer Selfish Routing 45

slide-118
SLIDE 118

Inapproximability

G

s t t1 t2 s1 s2 1 x x 1 P

1

P

2

Guido Schäfer Selfish Routing 46

slide-119
SLIDE 119

Final remarks

Other variants of network routing games

  • atomic players
  • atomic weighted players
  • atomic weighted players with splittable flow
  • . . .

(see AGT book for more details)

Guido Schäfer Selfish Routing 47