1 / 48

Routing Games

Routing Games. ECON 425/563 & CPSC 455/555 9/30/2008. Nonatomic Selfish Routing. Directed graph G=(V,E). Nonatomic Selfish Routing. Directed graph G=(V,E) Cost functions c e (increasing). 0. 3x 2. x+4. 1. x(x+1). Nonatomic Selfish Routing. Directed graph G=(V,E)

Download Presentation

Routing Games

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Routing Games ECON 425/563 & CPSC 455/555 9/30/2008

  2. Nonatomic Selfish Routing • Directed graph G=(V,E)

  3. Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) 0 3x2 x+4 1 x(x+1)

  4. Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) 0 3x2 s x+4 t 1 x(x+1)

  5. Nonatomic Selfish Routing • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) • Traffic ri 0 3x2 s x+4 t 1 x(x+1) r = 1

  6. Nonatomic Selfish Routing 2/3 • Directed graph G=(V,E) • Cost functions ce (increasing) • Commodities (si,ti) • Traffic ri • Flow f: iPi R+where Piis all (si,ti) paths • Feasible if all traffic is routed • Equilibrium if cP(f)  cP’(f) for all P,P’Pi, where P has positive flow 0 3x2 s x+4 t 1 x 1/3 r = 1

  7. Nonatomic Selfish Routing 2/3 • Directed graph G=(V,E) • Cost functions ce(increasing) • Commodities (si,ti) • Traffic ri • Flow f: iPi R+where Piis all (si,ti) paths • Feasible if all traffic is routed • Equilibrium if cP(f)  cP’(f) for all si-ti paths P,P’ with positive flow • Social cost: c(f) = iPPicP(f) · f(P) 0 3x2 s x+4 t 1 x 1/3 r = 1

  8. Nonatomic Selfish Routing 2/3 0 3x2 • Models • Network traffic (latency) • Physical traffic • Other? s x+4 t 1 x r = 1 1/3 • Weaknesses • Source routing • Atomicity • Mixed strategies

  9. Routing Optima Theorem: Let f * = minf c( f ). If ce(x)·x is convex, DxcP(x)·xx=fP* DxcP’(x)·xx=fP’*for all P,P’ Pi, fP*> 0.

  10. Routing Optima Theorem: Let f * = minf c( f ). If ce(x)·x is convex, DxcP(x)·xx=fP* DxcP’(x)·xx=fP’*for all P,P’ Pi, fP*> 0. Example: cP(x) = 1DxcP(x)·x = 1DxcP(x)·xx=1/2= 1 1 P 1/2 s t 1/2 cP’(x) = xDxcP’(x)·x = 2xDxcP’(x)·xx=1/2= 1 P’ x r = 1

  11. Price of Anarchy • Equilibria do not in general optimize social welfare • Prisoner’s Dilemma • Tragedy of the Commons • How bad can equilibria outcome be? Let f * be the optimal flow. Let f be highest-cost equilibrium. Let  measure the “price of anarchy.”  = c( f ) / c( f*)

  12. Pigou’s Example 1 s t x r = 1

  13. Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 s t x r = 1 1

  14. Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 • Optimal outcome: c( f*) = 3/4 1/2 s t 1/2 x r = 1 1

  15. Pigou’s Example 1 • Equilibrium outcome: c( f ) = 1 • Optimal outcome: c( f*) = 3/4 • Price of anarchy:  = 4/3 1/2 s t 1/2 x r = 1 1

  16. Braess’s Paradox 1 x t s x 1 r = 1

  17. Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2

  18. Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2

  19. Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2 c( f ) = 2

  20. Braess’s Paradox 1/2 1 x t s x 1 r = 1 1/2 c( f ) = 3/2 c( f ) = 2 Adding edges can make equilibria worse.

  21. Capacity Augmentation

  22. Capacity Augmentation 1 r = 1 s t 1 x c( f ) = 1

  23. Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x c( f) = 1 c( f*) = 7/4

  24. Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x  c( f) = 1 c( f*) = 7/4

  25. Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x  c( f ) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*)

  26. Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x  c( f) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*)  Theorem 1b: Let c’(f) = c(f/2)/2. c’( f )  c( f *)

  27. Capacity Augmentation 1 1 r = 1 r’ = 2 3/2 s t s t 1 1/2 x x  c( f) = 1 c( f*) = 7/4 Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*)  Theorem 1b: Let c’(f) = c(f/2)/2. c’( f )  c( f *) 1/2 1 r = 1 r’ = 1 1/2 s t s t 1 1/2 x/4 x  c’( f) = 1/4 c( f*) = 3/4

  28. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*)

  29. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic

  30. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic

  31. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) fe traffic fe traffic

  32. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *) ce c’e cost cost ce( fe) ce( fe) ce( fe) fe fe traffic fe traffic

  33. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *)  ece( fe) fe = c( f ) ce c’e cost cost ce( fe) ce( fe) ce( fe) fe fe traffic fe traffic

  34. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *)  ece( fe) fe = c( f )

  35. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *)  ece( fe) fe = c( f ) 2. Let di be the (equal) path costs for commodity i. c’( f *) = i PPic’P( fP*) fP*  i PPicP( fP) fP* = i 2ridi= 2 c( f )

  36. Capacity Augmentation Theorem 1a: Let f (f *) route r (2r). c(f)  c( f*) Proof: 1. Let ce’(x) = ce(fe) if x fe ce(x) otherwise c’( f*) – c( f *)  ece( fe) fe = c( f ) 2. Let di be the (equal) path costs for commodity i. c’( f *) = i PPic’P( fP*) fP*  i PPicP( fP) fP* = i 2ridi= 2 c( f ) 3. c( f*)  c’( f*) - c( f ) (1)  2 c( f ) - c( f ) (2) = c( f )

  37. Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e.

  38. Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 s t 1 x

  39. Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 • Proof: • Let he(x) = 0xce(y) dy.Let (f) = ehe(fe). s t 1 x

  40. Existence and Uniqueness of Equilibria Theorem: For every nonatomic, selfish-routing instance: a. There is at least one equilibrium flow f. b. For equilibrium flows f, f’, ce(fe) = ce(fe’) for all edges e. 1 r = 1 • Proof: • Let he(x) = 0xce(y) dy.Let (f) = ehe(fe). • Observe that he(x) is convex and Dxhe(x) =ce(x). As with optima,  is minimized when ce(fe)  ce’(fe’), if fe>0. These conditions are exactly the equilibrium conditions. s t 1 x

  41. Price of Anarchy Theorem (Pigou bound): Let C be a nonempty set of cost functions. The price of anarchy is at most the Pigou bound:(C) = supcC supy,z0 z  c(z) y  c(y) + (z-y)c(z)

  42. Price of Anarchy Theorem (Pigou bound): Let C be a nonempty set of cost functions. The price of anarchy is at most the Pigou bound:(C) = supcC supy,z0 z  c(z) y  c(y) + (z-y)c(z) 1 1 r = 1 r = 1 z-y s t s t z y x x

  43. Price of AnarchyLinear functions z  c(z) y  c(y) + (z-y)c(z) (C) = supcC supy,z0

  44. Price of AnarchyLinear functions z  c(z) y  c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b

  45. Price of AnarchyLinear functions z  c(z) y  c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b)

  46. Price of AnarchyLinear functions z  c(z) y  c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b) -z (az+b)(2ay-ab) f’(y) = = 0  y=z/2 (y (ay+b) + (z-y)(az+b))2

  47. Price of AnarchyLinear functions z  c(z) y  c(y) + (z-y)c(z) (C) = supcC supy,z0 Let c(x) = ax+b z (az+b) f(y) = y (ay+b) + (z-y)(az+b) -z (az+b)(2ay-ab) f’(y) = = 0  y=z/2 (y (ay+b) + (z-y)(az+b))2 4az+b  4/3 f(z/2) = 3az+4b

  48. Other questions • Design good networks • Detect Braess’s paradox • Design mechanism to achieve social optimum • Confluent flows

More Related