Flow Routing Calculations For Water Resources Management ...
A Stackelberg Strategy for Routing Flow over Time
description
Transcript of A Stackelberg Strategy for Routing Flow over Time
![Page 1: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/1.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/2.jpg)
2
Traffic Routing
• Data network• Road network
![Page 3: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/3.jpg)
3
Traffic Routing
Safe zone
• Evacuation planning
![Page 4: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/4.jpg)
4
Traffic Routing
![Page 5: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/5.jpg)
5
Routing Delays
• Delay on edges increases with usage
delay
delay
![Page 6: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/6.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/7.jpg)
7
Uncoordinated Routing
• But players choose route independently
delay
delay
![Page 8: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/8.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/9.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/10.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/11.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/12.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/13.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/14.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/15.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/16.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/17.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/18.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/19.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/20.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/21.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/22.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/23.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/24.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/25.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/26.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/27.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/28.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/29.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/30.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/31.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/32.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/33.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/34.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/35.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/36.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/37.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/38.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/39.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/40.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/41.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/42.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/43.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/44.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/45.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/46.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/47.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/48.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/49.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/50.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/51.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/52.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/53.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/54.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/55.jpg)
55
Optimal Routing
• Delay on edges increases with usage
delay
delay
![Page 56: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/56.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/57.jpg)
57
Uncoordinated Routing
• But players choose route independently
delay
delay
![Page 58: A Stackelberg Strategy for Routing Flow over Time](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/58.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/59.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/60.jpg)
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](https://reader035.fdocuments.in/reader035/viewer/2022062501/5681662d550346895dd99325/html5/thumbnails/61.jpg)
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