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
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
Inefficient outcomes Guido Schäfer Selfish Routing 11
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
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
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
Approach Game theory: provides mathematical toolbox to study situations of strategic interaction • different models of games • several solution concepts for the prediction of “rational outcomes” 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
Approach Game theory: provides mathematical toolbox to study situations of strategic interaction • different models of games • several solution concepts for the prediction of “rational outcomes” 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
Approach Game theory: provides mathematical toolbox to study situations of strategic interaction • different models of games • several solution concepts for the prediction of “rational outcomes” 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
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
Examples of Some Phenomena
Cost minimization games A cost minimization game G is given by • set of players N = { 1 , . . . , n } • set of strategies S i for every player i ∈ N • cost function C i : S 1 × · · · × S n → R S = S 1 × · · · × S n is called the set of strategy profiles. Interpretation: • every player i ∈ N chooses a strategy s i ∈ S i so as to minimize his individual cost C i ( s 1 , . . . , s n ) • 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
[World Cup 2006 Example]
Example: Congestion game n = 4 S i = { e 1 , e 2 } ℓ e 1 ( x ) = x s t ℓ e 2 ( x ) = 4 Guido Schäfer Selfish Routing 18
Example: Congestion game n = 4 S i = { e 1 , e 2 } ℓ e 1 ( x ) = x s t 4 ℓ e 2 ( x ) = 4 Guido Schäfer Selfish Routing 18
Example: Congestion game n = 4 S i = { e 1 , e 2 } ℓ e 1 ( x ) = x 1 s t 3 ℓ e 2 ( x ) = 4 Guido Schäfer Selfish Routing 18
Example: Congestion game n = 4 S i = { e 1 , e 2 } ℓ e 1 ( x ) = x 2 s t 2 ℓ e 2 ( x ) = 4 Guido Schäfer Selfish Routing 18
Example: Congestion game n = 4 S i = { e 1 , e 2 } ℓ e 1 ( x ) = x 3 s t 1 ℓ e 2 ( x ) = 4 Guido Schäfer Selfish Routing 18
Nash equilibrium and social cost Nash equilibrium: strategy profile s = ( s 1 , . . . , s n ) ∈ S is a pure Nash equilibrium (PNE) if no player has an incentive to unilaterally deviate C i ( s i , s − i ) ≤ C i ( s ′ ∀ s ′ ∀ i ∈ N : i , s − i ) i ∈ S i ( s − i refers to ( s 1 , . . . , s i − 1 , s i + 1 , . . . , s n ) ) Social cost of strategy profile s = ( s 1 , . . . , s n ) ∈ S is � C ( s ) = C i ( s ) i ∈ N A strategy profile s ∗ that minimizes the social cost function C ( · ) is called a social optimum. Guido Schäfer Selfish Routing 19
Nash equilibrium and social cost Nash equilibrium: strategy profile s = ( s 1 , . . . , s n ) ∈ S is a pure Nash equilibrium (PNE) if no player has an incentive to unilaterally deviate C i ( s i , s − i ) ≤ C i ( s ′ ∀ s ′ ∀ i ∈ N : i , s − i ) i ∈ S i ( s − i refers to ( s 1 , . . . , s i − 1 , s i + 1 , . . . , s n ) ) Social cost of strategy profile s = ( s 1 , . . . , s n ) ∈ S is � C ( s ) = C i ( s ) i ∈ N A strategy profile s ∗ that minimizes the social cost function C ( · ) is called a social optimum. Guido Schäfer Selfish Routing 19
Example: Congestion game n = 4 x s t 4 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x 4 s t 4 Nash equilibrium: C ( s ) = 4 · 4 = 16 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x 2 s t 2 4 social optimum: C ( s ∗ ) = 4 + 8 = 12 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x 2 s t 2 4 C ( s ) C ( s ∗ ) = 16 12 = 4 inefficiency: 3 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x s t 4 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x 3 s t 1 4 Nash equilibrium: C ( s ) = 9 + 4 = 13 Guido Schäfer Selfish Routing 20
Example: Congestion game n = 4 x 3 s t 1 4 C ( s ) C ( s ∗ ) = 13 inefficiency: 12 ≈ 1 . 08 Guido Schäfer Selfish Routing 20
Inefficiency of equilibria Price of anarchy: worst-case inefficiency of equilibria C ( s ) POA ( G ) = max C ( s ∗ ) s ∈ PNE ( G ) [Koutsoupias, Papadimitriou, STACS ’99] Price of stability: best-case inefficiency of equilibria C ( s ) POS ( G ) = min C ( s ∗ ) s ∈ PNE ( G ) [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
Inefficiency of equilibria Price of anarchy: worst-case inefficiency of equilibria C ( s ) POA ( G ) = max C ( s ∗ ) s ∈ PNE ( G ) [Koutsoupias, Papadimitriou, STACS ’99] Price of stability: best-case inefficiency of equilibria C ( s ) POS ( G ) = min C ( s ∗ ) s ∈ PNE ( G ) [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
Inefficiency of equilibria Price of anarchy: worst-case inefficiency of equilibria C ( s ) POA ( G ) = max C ( s ∗ ) s ∈ PNE ( G ) [Koutsoupias, Papadimitriou, STACS ’99] Price of stability: best-case inefficiency of equilibria C ( s ) POS ( G ) = min C ( s ∗ ) s ∈ PNE ( G ) [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
Example: Braess Paradox n = 4 x 4 s t x 4 Guido Schäfer Selfish Routing 22
Example: Braess Paradox n = 4 x 4 2 s t 2 x 4 Nash equilibrium: C ( s ) = 24 Guido Schäfer Selfish Routing 22
Example: Braess Paradox n = 4 x 4 s t x 4 Guido Schäfer Selfish Routing 22
Example: Braess Paradox n = 4 x 4 s 0 t x 4 Guido Schäfer Selfish Routing 22
Example: Braess Paradox n = 4 x 4 s 0 0 t 4 4 x Nash equilibrium: C ( s ) = 32 Guido Schäfer Selfish Routing 22
Example: Braess Paradox n = 4 x 4 s 0 0 t 4 4 x cost increase: 32 24 = 4 3 Guido Schäfer Selfish Routing 22
[New York Times Article]
Example: Network tolls n = 4 x s t 4 Guido Schäfer Selfish Routing 24
Example: Network tolls n = 4 x + 2 s t 4 Guido Schäfer Selfish Routing 24
Example: Network tolls n = 4 x + 2 2 s t 2 4 Nash equilibrium = social optimum Guido Schäfer Selfish Routing 24
Wardrop Model and the Price of Anarchy
Wardrop model ℓ a ( x ) Given: • directed network G = ( V , A ) • k commodities ( s 1 , t 1 ) , . . . , ( s k , t k ) • demand r i for commodity i ∈ [ k ] x • flow-dependent latency function ℓ a ( · ) for every arc a ∈ A (non-decreasing, differentiable, semi-convex) Interpretation: • send r i units of flow from s i to t i , 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
Wardrop model ℓ a ( x ) Given: • directed network G = ( V , A ) • k commodities ( s 1 , t 1 ) , . . . , ( s k , t k ) • demand r i for commodity i ∈ [ k ] x • flow-dependent latency function ℓ a ( · ) for every arc a ∈ A (non-decreasing, differentiable, semi-convex) Interpretation: • send r i units of flow from s i to t i , 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
Optimal flows Notation: • P i = set of all (simple) directed s i , t i -paths • P = ∪ i ∈ [ k ] P i = set of all relevant paths • flow f is a function f : P → R + • f is a feasible flow if � P ∈P i f P = r i for all i • flow on arc a : f a := � P ∈P : a ∈ P f P • latency of path P : ℓ P ( f ) := � a ∈ P ℓ a ( f a ) Social cost of flow: � � � C ( f ) = f P ℓ P ( f ) = f a ℓ a ( f a ) i ∈ [ k ] P ∈P i a ∈ A Optimal flow: feasible flow f ∗ that minimizes C ( · ) Guido Schäfer Selfish Routing 27
Optimal flows Notation: • P i = set of all (simple) directed s i , t i -paths • P = ∪ i ∈ [ k ] P i = set of all relevant paths • flow f is a function f : P → R + • f is a feasible flow if � P ∈P i f P = r i for all i • flow on arc a : f a := � P ∈P : a ∈ P f P • latency of path P : ℓ P ( f ) := � a ∈ P ℓ a ( f a ) Social cost of flow: � � � C ( f ) = f P ℓ P ( f ) = f a ℓ a ( f a ) i ∈ [ k ] P ∈P i a ∈ A Optimal flow: feasible flow f ∗ that minimizes C ( · ) Guido Schäfer Selfish Routing 27
Optimal flows Notation: • P i = set of all (simple) directed s i , t i -paths • P = ∪ i ∈ [ k ] P i = set of all relevant paths • flow f is a function f : P → R + • f is a feasible flow if � P ∈P i f P = r i for all i • flow on arc a : f a := � P ∈P : a ∈ P f P • latency of path P : ℓ P ( f ) := � a ∈ P ℓ a ( f a ) Social cost of flow: � � � C ( f ) = f P ℓ P ( f ) = f a ℓ a ( f a ) i ∈ [ k ] P ∈P i a ∈ A Optimal flow: feasible flow f ∗ that minimizes C ( · ) Guido Schäfer Selfish Routing 27
Nash flows Nash flow: feasible flow f that satisfies for every i ∈ [ k ] ℓ P 1 ( f ) ≤ ℓ P 2 (˜ ∀ P 1 , P 2 ∈ P i with f P 1 > 0 , ∀ δ ∈ ( 0 , f P 1 ] : f ) , where f P − δ if P = P 1 ˜ f P := f P + δ if P = P 2 f P otherwise. Exploiting continuity of ℓ a ( · ) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [ k ] ∀ P 1 , P 2 ∈ P i with f P 1 > 0 : ℓ P 1 ( f ) ≤ ℓ P 2 ( f ) Guido Schäfer Selfish Routing 28
Nash flows Nash flow: feasible flow f that satisfies for every i ∈ [ k ] ℓ P 1 ( f ) ≤ ℓ P 2 (˜ ∀ P 1 , P 2 ∈ P i with f P 1 > 0 , ∀ δ ∈ ( 0 , f P 1 ] : f ) , where f P − δ if P = P 1 ˜ f P := f P + δ if P = P 2 f P otherwise. Exploiting continuity of ℓ a ( · ) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [ k ] ∀ P 1 , P 2 ∈ P i with f P 1 > 0 : ℓ P 1 ( f ) ≤ ℓ P 2 ( f ) Guido Schäfer Selfish Routing 28
Nash flows Nash flow: feasible flow f that satisfies for every i ∈ [ k ] ℓ P 1 ( f ) ≤ ℓ P 2 (˜ ∀ P 1 , P 2 ∈ P i with f P 1 > 0 , ∀ δ ∈ ( 0 , f P 1 ] : f ) , where f P − δ if P = P 1 ˜ f P := f P + δ if P = P 2 f P otherwise. Exploiting continuity of ℓ a ( · ) and letting δ → 0, we obtain the following equivalent definition: Wardrop flow: feasible flow f that satisfies for every i ∈ [ k ] ∀ P 1 , P 2 ∈ P i with f P 1 > 0 : ℓ P 1 ( f ) ≤ ℓ P 2 ( f ) Guido Schäfer Selfish Routing 28
Inefficiency of equilibria Guido Schäfer Selfish Routing 29
Inefficiency of equilibria Nash flow f : C ( f ) = 1 Guido Schäfer Selfish Routing 29
Inefficiency of equilibria Optimal flow f ∗ : C ( f ∗ ) = 1 2 · 1 2 + 1 2 · 1 = 3 4 Guido Schäfer Selfish Routing 29
Existence and computation of optimal flows � min ℓ a ( f a ) f a a ∈ A � s.t. f P = r i ∀ i ∈ [ k ] P ∈P i � f a f P ∀ a ∈ A = P ∈P : a ∈ P f P ≥ 0 ∀ 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
Existence and computation of optimal flows � min ℓ a ( f a ) f a a ∈ A � s.t. f P = r i ∀ i ∈ [ k ] P ∈P i � f a f P ∀ a ∈ A = P ∈P : a ∈ P f P ≥ 0 ∀ 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
KKT optimality conditions � h a ( f a ) min a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = (CP) P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ ∀ P ∈ P 0 Theorem (KKT optimality conditions) Suppose ( h a ) a ∈ A are continuously differentiable and convex. f is an optimal solution for (CP) if and only if for every i ∈ [ k ] � h ′ � h ′ ∀ P 1 , P 2 ∈ P i , f P 1 > 0 : a ( f a ) ≤ a ( f a ) a ∈ P 1 a ∈ P 2 Guido Schäfer Selfish Routing 31
KKT optimality conditions � h a ( f a ) min a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = (CP) P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ ∀ P ∈ P 0 Theorem (KKT optimality conditions) Suppose ( h a ) a ∈ A are continuously differentiable and convex. f is an optimal solution for (CP) if and only if for every i ∈ [ k ] � h ′ � h ′ ∀ P 1 , P 2 ∈ P i , f P 1 > 0 : a ( f a ) ≤ a ( f a ) a ∈ P 1 a ∈ P 2 Guido Schäfer Selfish Routing 31
Existence and computation of Nash flows Idea: Can we determine functions ( h a ) a ∈ A such that KKT optimality conditions reduce to Nash flow conditions? � f a � ℓ a ( x ) dx min 0 a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ 0 ∀ 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
Existence and computation of Nash flows Idea: Can we determine functions ( h a ) a ∈ A such that KKT optimality conditions reduce to Nash flow conditions? � f a � ℓ a ( x ) dx min 0 a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ 0 ∀ 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
Existence and computation of Nash flows Idea: Can we determine functions ( h a ) a ∈ A such that KKT optimality conditions reduce to Nash flow conditions? � f a � ℓ a ( x ) dx min 0 a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ 0 ∀ 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
Characterization of optimal flows � ℓ a ( f a ) f a min a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ 0 ∀ 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
Characterization of optimal flows � ℓ a ( f a ) f a min a ∈ A � f P r i ∀ i ∈ [ k ] s.t. = P ∈P i � f a = f P ∀ a ∈ A P ∈P : a ∈ P f P ≥ 0 ∀ 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
Price of anarchy in selfish routing Price of anarchy: given an instance I = ( G , ( s i , t i ) , ( r i ) , ( ℓ a )) C ( f ) POA ( I ) = max C ( f ∗ ) f Nash flow 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
Price of anarchy in selfish routing Price of anarchy: given an instance I = ( G , ( s i , t i ) , ( r i ) , ( ℓ a )) C ( f ) POA ( I ) = max C ( f ∗ ) f Nash flow 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
[Upper bound on POA for linear latency functions]
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. � p � − 1 � p � POA ≤ 1 − = Θ ( p + 1 ) ( p + 1 ) / p ln p [Roughgarden, Tardos, JACM ’02] Guido Schäfer Selfish Routing 36
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. � p � − 1 � p � POA ≤ 1 − = Θ ( p + 1 ) ( p + 1 ) / p ln p [Roughgarden, Tardos, JACM ’02] Guido Schäfer Selfish Routing 36
Problem 1 Let L d = { g : R + → R + | g ( x ) = qx d with q ∈ R + } Problem 1: Consider the class of non-atomic selfish routing games with latency functions ( ℓ a ) a ∈ A ∈ L A d . Provide a tight bound on the price of anarchy for these games. Guido Schäfer Selfish Routing 37
Example: Unbounded POA Guido Schäfer Selfish Routing 38
Example: Unbounded POA Nash flow f : C ( f ) = 1 Guido Schäfer Selfish Routing 38
Example: Unbounded POA Optimal flow f ∗ : C ( f ∗ ) = ( 1 − ǫ ) 1 + p + ǫ · 1 → 0 Guido Schäfer Selfish Routing 38
Example: Unbounded POA POA → ∞ p → ∞ as Guido Schäfer Selfish Routing 38
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
Coping with the Braess Paradox
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 T RIVIAL : simply return the original graph G Theorem T RIVIAL is a 4 3 -approximation algorithm for the Braess subgraph problem. Guido Schäfer Selfish Routing 41
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 T RIVIAL : simply return the original graph G Theorem T RIVIAL is a 4 3 -approximation algorithm for the Braess subgraph problem. Guido Schäfer Selfish Routing 41
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 T RIVIAL : simply return the original graph G Theorem T RIVIAL is a 4 3 -approximation algorithm for the Braess subgraph problem. Guido Schäfer Selfish Routing 41
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 T RIVIAL : simply return the original graph G Theorem T RIVIAL is a 4 3 -approximation algorithm for the Braess subgraph problem. Guido Schäfer Selfish Routing 41
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 T RIVIAL : simply return the original graph G Theorem T RIVIAL is a 4 3 -approximation algorithm for the Braess subgraph problem. Guido Schäfer Selfish Routing 41
Recommend
More recommend