a stackelberg strategy for routing flow over time

61
A Stackelberg Strategy for Routing Flow over Time Umang Bhaskar, Lisa Fleischer Dartmouth College Elliot Anshelevich Rensselaer Polytechnic Institute

Upload: hua

Post on 24-Feb-2016

49 views

Category:

Documents


0 download

DESCRIPTION

A Stackelberg Strategy for Routing Flow over Time. Umang Bhaskar , Lisa Fleischer Dartmouth College Elliot Anshelevich Rensselaer Polytechnic Institute. Traffic Routing. Road network. Data network. Traffic Routing. Safe zone. Evacuation planning. Traffic Routing. Routing Delays. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: A  Stackelberg  Strategy for Routing Flow over Time

A Stackelberg Strategy for Routing Flow over TimeUmang Bhaskar, Lisa Fleischer

Dartmouth CollegeElliot Anshelevich

Rensselaer Polytechnic Institute

Page 2: A  Stackelberg  Strategy for Routing Flow over Time

2

Traffic Routing

• Data network• Road network

Page 3: A  Stackelberg  Strategy for Routing Flow over Time

3

Traffic Routing

Safe zone

• Evacuation planning

Page 4: A  Stackelberg  Strategy for Routing Flow over Time

4

Traffic Routing

Page 5: A  Stackelberg  Strategy for Routing Flow over Time

5

Routing Delays

• Delay on edges increases with usage

delay

delay

Page 6: A  Stackelberg  Strategy for Routing Flow over Time

6

Optimal Routing

• Delay on edges increases with usage

delay

delay

• Optimal routing minimizes f(delay)

Page 7: A  Stackelberg  Strategy for Routing Flow over Time

7

Uncoordinated Routing

• But players choose route independently

delay

delay

Page 8: A  Stackelberg  Strategy for Routing Flow over Time

8

Routing Games

• Each player picks route to minimize delay

• Delays depend on other players

delay

delay

Page 9: A  Stackelberg  Strategy for Routing Flow over Time

9

Equilibria

• Equilibrium:- every player minimizes

delay w.r.t. others

• Studied in many contexts

- no player can unilaterally reduce delay

Page 10: A  Stackelberg  Strategy for Routing Flow over Time

10

Price of Anarchy

• How does equilibrium compare to optimal routing?

• Price of Anarchy(PoA)

=f(delay) of worst equilibriaf(delay) of optimal routing

quality ofequilibria

measures system efficiency

Page 11: A  Stackelberg  Strategy for Routing Flow over Time

11

Static Flows

s t

xe

• Static: time-invariant• Most routing games assume static flows

xe

xe

Page 12: A  Stackelberg  Strategy for Routing Flow over Time

12

Flows over Time

s t

• Edges have fixed capacities and delays

• Flow on an edge may vary with time

ce, de

Page 13: A  Stackelberg  Strategy for Routing Flow over Time

13

Flows over Time

M = 1000 bits

Total time: 12 seconds

d = 2 seconds

c = 100 bps

Bitsper

second

1 2 3 4 5 6 7 8 9 10 11 12

100

Arrival graph:

Time

Quickest flow: flow that gets to destination as soon as possible

A B

Page 14: A  Stackelberg  Strategy for Routing Flow over Time

14

Temporal Routing Games

M = 1000 bitsd = 2 seconds

c = 100 bps

• Routing Games + Flows over Time = Temporal Routing Games

• Player minimizes time it reaches destination

A B

Page 15: A  Stackelberg  Strategy for Routing Flow over Time

15

Temporal Routing GamesAssumptions:

• Players are infinitesimal

Model:

• Players are ordered at s• Each player picks a path from s to t• Minimizes the time it arrives at t

s t

M

Time

Flowrateat t

Arrival Graph:M

Page 16: A  Stackelberg  Strategy for Routing Flow over Time

16

Temporal Routing Games

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vTime

M

12

Flow rate at t

Page 17: A  Stackelberg  Strategy for Routing Flow over Time

17

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Queue

M

12

Flow rate at t

Page 18: A  Stackelberg  Strategy for Routing Flow over Time

18

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Queue

• Queues grow when inflow exceeds capacity on an edge• Queues are first in, first out (FIFO)• Queuing models used in modeling traffic [Vickrey ‘69, Yagar ‘71]

M

12

Flow rate at t

Page 19: A  Stackelberg  Strategy for Routing Flow over Time

19

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vM

12

Flow rate at t

Page 20: A  Stackelberg  Strategy for Routing Flow over Time

20

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vM

12

Flow rate at t

Page 21: A  Stackelberg  Strategy for Routing Flow over Time

21

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vM

12

Flow rate at t

Page 22: A  Stackelberg  Strategy for Routing Flow over Time

22

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vM

12

MFlow rate

at t

Page 23: A  Stackelberg  Strategy for Routing Flow over Time

23

Temporal Routing Games

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

fp = 1

fp = 1

Quickest Flow:

M

M

M

M

12

12

Flow rate at t

Page 24: A  Stackelberg  Strategy for Routing Flow over Time

24

Temporal Routing Games

• For single-source, single sink, equilibrium exists [Koch, Skutella, ’09; Cominetti, Correa, Larre ‘11]

our case

• How does equilibrium in these games compare with optimal?

• What is the PoA?

Flow rate at t

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vM

M

12

Page 25: A  Stackelberg  Strategy for Routing Flow over Time

25

Objectives

|Flow| reaching t by time T

Time for M to reach t

Sum of times for M to reach t

Evacuation Price of Anarchy:

Time Price of Anarchy:

Total Delay Price of Anarchy:

Flow rateat t

Time T

M’ = ?

Maximum delay of a player?Flow rate

at t

Time

Flow rateat t

Time ?

Time

Flow rateat t

∫ = ?

M

Page 26: A  Stackelberg  Strategy for Routing Flow over Time

26

Results

|Flow| reaching t by time T

Time for M to reach t

Flow rateat t

Time T

M’ = ?

Sum of times for M to reach t

Evacuation Price of Anarchy:

Time Price of Anarchy:

Total Delay Price of Anarchy:

Flow rateat t

Time

?

Flow rateat t

Time ?

Maximum delay of a player

Ω(log n) [KS ‘09]

Ω(n) [MLS ‘10]

≥ e/(e-1) [KS ‘09]

Flow rateat t

Time

∫ = ?

M

Page 27: A  Stackelberg  Strategy for Routing Flow over Time

27

Results

|Flow| reaching t by time T

Time for M to reach t

Sum of times for M to reach t

Evacuation Price of Anarchy:

Time Price of Anarchy:

Total Delay Price of Anarchy:

Maximum delay of a player

Ω(log n) [KS ‘09]

≥ e/(e-1) [KS ‘09]

Ω(n) [MLS ‘10]

Our Results

= e/(e-1) †

= 2 e/(e-1) †

† can be enforced by reducing capacities

Flow rateat t

Time T

M’ = ?

Flow rateat t

Time

?

Flow rateat t

Time ?

Flow rateat t

Time

∫ = ?

M

Page 28: A  Stackelberg  Strategy for Routing Flow over Time

28

Temporal Routing Games

- compute quickest flow (can compute in poly time [FF ’62])- reduce edge capacities to that used by quickest flow

Can enforce bound of e / (e-1) on Time PoAby reducing edge capacities

• Main Result:

• Procedure:

s tc = 2, d = 0 c = 1.5

c = 1, d = 1

vc = 1, d = 0

wfp = 1

fp = 1 , d = 0

?

M

Page 29: A  Stackelberg  Strategy for Routing Flow over Time

29

Temporal Routing Games

- reduce edge capacities to that used by quickest flow

s tc = 2, d = 0 c = 1

c = 1, d = 1

vc = 1, d = 0

wfp = 1

fp = 1

• Main Result:

• Procedure:- compute quickest flow (can compute in poly time [FF ’62])

, d = 0

Can enforce bound of e / (e-1) on Time PoAby reducing edge capacities

?

M

Page 30: A  Stackelberg  Strategy for Routing Flow over Time

30

Temporal Routing Games• Main Result:

- reduce edge capacities to that used by quickest flow

• Procedure:

If quickest flow saturates graph, thenTime PoA ≤ e / (e-1)

• Main Theorem:

- compute quickest flow (can compute in poly time [FF ’62])

Can enforce bound of e / (e-1) on Time PoAby reducing edge capacities

?

M

Page 31: A  Stackelberg  Strategy for Routing Flow over Time

31

Temporal Routing Games

If quickest flow saturates graph, thenTime PoA ≤ e / (e-1)

Can enforce bound of e / (e-1) on Time PoAby reducing edge capacities

Theorem 1:

If quickest flow saturates graph, thenTotal Delay PoA ≤ 2 e / (e-1)

Can enforce bound of 2 e / (e-1) on Total Delay PoAby reducing edge capacities

Theorem 2:∫ = ?

M

?

Page 32: A  Stackelberg  Strategy for Routing Flow over Time

32

Talk Outline

For this talk:

• Structure of equilibria

• Sketch weaker version of Theorem 1.

• Structure of Quickest flow

Page 33: A  Stackelberg  Strategy for Routing Flow over Time

33

Quickest Flows

OPT:Flow rate

at t

Times t

c = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

• Quickest flow is static flow repeated over time [FF ‘62]

12

M

Page 34: A  Stackelberg  Strategy for Routing Flow over Time

34

Quickest Flows

OPT:

Times t

c = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

• Quickest flow is static flow repeated over time [FF ‘62]

fp = 1

Flow rate at t

12

M

Page 35: A  Stackelberg  Strategy for Routing Flow over Time

35

Quickest Flows

OPT:

Times t

c = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

• Quickest flow is static flow repeated over time [FF ‘62]

fp = 1

fp = 1

Flow rate at t

12

M

Page 36: A  Stackelberg  Strategy for Routing Flow over Time

36

Phases in Equilibria

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

QueueFlow rate

at t

12

M

Page 37: A  Stackelberg  Strategy for Routing Flow over Time

37

Phases in Equilibria

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

12

M

Page 38: A  Stackelberg  Strategy for Routing Flow over Time

38

Phases in Equilibria

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

12

M

Page 39: A  Stackelberg  Strategy for Routing Flow over Time

39

• Equilibrium proceeds in “phases” [KS ‘09]

• Phase characterized by

• edges being used • edges with queue

• Within phase, flow rate at t is fixed

Phases in Equilibria

Page 40: A  Stackelberg  Strategy for Routing Flow over Time

40

1-Phase Equilibrium

For one-phase equilibrium, Time PoA ≤ 2

For this talk:

• Phases in equilibria

• Sketch of proof

• Quickest flow

Page 41: A  Stackelberg  Strategy for Routing Flow over Time

41

A Bound on EQ

EQ

Arrival Graphs:

Equilibrium

M M

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vTime

ce = 1

Flow rate at t

Page 42: A  Stackelberg  Strategy for Routing Flow over Time

42

A Bound on EQArrival Graphs:

Equilibrium

Quickest Flow

M M

Flow rate at t

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

fp = 1

fp = 1

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vTime

Time

co = 2

OPT

EQ

ce = 1

Flow rate at t

Page 43: A  Stackelberg  Strategy for Routing Flow over Time

43

A Bound on EQ

Time

Arrival Graphs:

Equilibrium

Quickest Flow

M M

Time

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

fp = 1

fp = 1

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Claim 1: ce EQ ≤ co OPT

Flow rate at t

Flow rate at t

EQ ≤ OPT ce

co

co = 2

OPT

EQ

ce = 1

Page 44: A  Stackelberg  Strategy for Routing Flow over Time

44

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

EQ

ce = 1

Page 45: A  Stackelberg  Strategy for Routing Flow over Time

45

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

EQ

ce = 1

Page 46: A  Stackelberg  Strategy for Routing Flow over Time

46

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

vτ(θ) increasing

τ(θ) : minimum time taken to reach t at time θ

Flow rate at t

EQ

ce = 1

Page 47: A  Stackelberg  Strategy for Routing Flow over Time

47

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Flow rate at t

τ(θ) increasing

τ(θ) : minimum time taken to reach t at time θ

Claim 2: τ(EQ) ≥ EQco

co - ce

EQ

ce = 1

Page 48: A  Stackelberg  Strategy for Routing Flow over Time

48

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

• But graph has path p of length ≤ OPT not being used (ce < co)• When τ(θ) ≥ OPT, this path p should be used (phase ends)

Flow rate at t

τ(θ) increasing

τ(θ) : minimum time taken to reach t at time θ

Claim 2: τ(EQ) ≥ EQco

co - ce

EQ

ce = 1

Page 49: A  Stackelberg  Strategy for Routing Flow over Time

49

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Claim 3: τ(EQ) ≤ OPTco

co - ce

Flow rate at t

Claim 2: θ ≥ EQClaim 2: τ(EQ) ≥ EQco

co - ce

τ(θ) increasing

τ(θ) : minimum time taken to reach t at time θ

• But graph has path p of length ≤ OPT not being used (ce < co)• When τ(θ) ≥ OPT, this path p should be used (phase ends)

EQ

ce = 1

Page 50: A  Stackelberg  Strategy for Routing Flow over Time

50

A Second Bound on EQ

Time

Arrival Graphs:

Equilibrium

s tc = 2, d = 0 c = 1, d = 0

c = 1, d = 1

v

Claim 4: EQ ≤ OPTco - ce

co

Flow rate at t

τ(θ) increasing

τ(θ) : minimum time taken to reach t at time θ

Claim 2: τ(EQ) ≥ EQco

co - ce Claim 3: τ(EQ) ≤ OPT+

EQ

ce = 1

Page 51: A  Stackelberg  Strategy for Routing Flow over Time

51

Proof Sketch for 1-Phase

Claim 4: EQ ≤ OPTco - ce

co

EQ ≤ 2 OPT

+

(upper bounds equalwhen ce = co / 2)

Claim 1: EQ ≤ OPT ce

co

For one-phase equilibrium, Time PoA ≤ 2

Page 52: A  Stackelberg  Strategy for Routing Flow over Time

52

1-Phase Examples

|Flow| reaching t by time T

Time for M to reach t

Flow rateat t

Time T

M’ = ?

Sum of times for M to reach t

Evacuation Price of Anarchy:

Time Price of Anarchy:

Total Delay Price of Anarchy:

Flow rateat t

Time

?

Flow rateat t

Time ?

Maximum delay of a player

Ω(log n) [KS ‘09]

Ω(n) [MLS ‘10]

≥ e/(e-1) [KS ‘09]

Flow rateat t

Time

∫ = ?

All 1-phase examples!

Page 53: A  Stackelberg  Strategy for Routing Flow over Time

53

Summary

In paper: If quickest flow saturates graph, for arbitrary phases,

• Time PoA ≤ e/(e-1)

• Total Delay PoA ≤ 2 e/(e-1)

Thus, network administrator can enforce these bounds,by reducing edge capacities.

Page 54: A  Stackelberg  Strategy for Routing Flow over Time

54

Open Questions1. Can PoA exceed e/(e-1) if capacity is not restricted?

3. What if players have imperfect information?

4. ...

2. PoA for multiple sources

Thanks for listening!

Page 55: A  Stackelberg  Strategy for Routing Flow over Time

55

Optimal Routing

• Delay on edges increases with usage

delay

delay

Page 56: A  Stackelberg  Strategy for Routing Flow over Time

56

Optimal Routing

• Optimal routing minimizes f(delay)• Delay on edges increases with usage

delay

delay

Page 57: A  Stackelberg  Strategy for Routing Flow over Time

57

Uncoordinated Routing

• But players choose route independently

delay

delay

Page 58: A  Stackelberg  Strategy for Routing Flow over Time

58

Routing Games

• Each player picks route to minimize delay• Delays depend on other players

delay

delay

Page 59: A  Stackelberg  Strategy for Routing Flow over Time

59

Equilibrium

• Equilibrium: every player minimizes delay w.r.t. others- no player can unilaterally reduce delay

• Equilibria in routing games studied in many contexts

Page 60: A  Stackelberg  Strategy for Routing Flow over Time

60

Equilibrium

• How does equilibrium compare to optimal routing?

• Price of Anarchy(PoA)

=f(delay) of worst equilibriaf(delay) of optimal routing

quality ofequilibria measures system efficiency

Page 61: A  Stackelberg  Strategy for Routing Flow over Time

61

A 1-Phase Lower Bound on PoA

1-Phase example with PoA of e/(e-1) ~ 1.6 [KS ‘09]

s t

Flow rate at t

Time