Routing games
Download
1 / 48

routing games - PowerPoint PPT Presentation


  • 215 Views
  • Uploaded on

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)

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'routing games' - daniel_millan


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Routing games l.jpg

Routing Games

ECON 425/563 & CPSC 455/555

9/30/2008


Nonatomic selfish routing l.jpg
Nonatomic Selfish Routing

  • Directed graph G=(V,E)


Nonatomic selfish routing3 l.jpg
Nonatomic Selfish Routing

  • Directed graph G=(V,E)

  • Cost functions ce (increasing)

0

3x2

x+4

1

x(x+1)


Nonatomic selfish routing4 l.jpg
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)


Nonatomic selfish routing5 l.jpg
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


Nonatomic selfish routing6 l.jpg
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


Nonatomic selfish routing7 l.jpg
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


Nonatomic selfish routing8 l.jpg
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


Routing optima l.jpg
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.


Routing optima10 l.jpg
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


Price of anarchy l.jpg
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*)


Pigou s example l.jpg
Pigou’s Example

1

s

t

x

r = 1


Pigou s example13 l.jpg
Pigou’s Example

1

  • Equilibrium outcome: c( f ) = 1

s

t

x

r = 1

1


Pigou s example14 l.jpg
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


Pigou s example15 l.jpg
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


Braess s paradox l.jpg
Braess’s Paradox

1

x

t

s

x

1

r = 1


Braess s paradox17 l.jpg
Braess’s Paradox

1/2

1

x

t

s

x

1

r = 1

1/2

c( f ) = 3/2


Braess s paradox18 l.jpg
Braess’s Paradox

1/2

1

x

t

s

x

1

r = 1

1/2

c( f ) = 3/2


Braess s paradox19 l.jpg
Braess’s Paradox

1/2

1

x

t

s

x

1

r = 1

1/2

c( f ) = 3/2

c( f ) = 2


Braess s paradox20 l.jpg
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.



Capacity augmentation22 l.jpg
Capacity Augmentation

1

r = 1

s

t

1

x

c( f ) = 1


Capacity augmentation23 l.jpg
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


Capacity augmentation24 l.jpg
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


Capacity augmentation25 l.jpg
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*)


Capacity augmentation26 l.jpg
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 *)


Capacity augmentation27 l.jpg
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


Slide28 l.jpg

Capacity Augmentation

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


Slide29 l.jpg

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


Slide30 l.jpg

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


Slide31 l.jpg

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


Slide32 l.jpg

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


Slide33 l.jpg

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


Slide34 l.jpg

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 )


Slide35 l.jpg

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 )


Slide36 l.jpg

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 )


Existence and uniqueness of equilibria l.jpg
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.


Existence and uniqueness of equilibria38 l.jpg
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


Existence and uniqueness of equilibria39 l.jpg
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


Existence and uniqueness of equilibria40 l.jpg
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


Price of anarchy41 l.jpg
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)


Price of anarchy42 l.jpg
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


Price of anarchy linear functions l.jpg
Price of AnarchyLinear functions

z  c(z)

y  c(y) + (z-y)c(z)

(C) = supcC supy,z0


Price of anarchy linear functions44 l.jpg
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


Price of anarchy linear functions45 l.jpg
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)


Price of anarchy linear functions46 l.jpg
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


Price of anarchy linear functions47 l.jpg
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


Other questions l.jpg
Other questions

  • Design good networks

  • Detect Braess’s paradox

  • Design mechanism to achieve social optimum

  • Confluent flows


ad