price of anarchy is independent of network topology
DESCRIPTION
A presentation on Tim Roughgarden's paper on the price of anarchy.TRANSCRIPT
The Price of Anarchy is Independent of the Network Topology
Tim Roughgarden
(presented by Aleksandr Yampolskiy)
Outline
Motivation The Model Results Conclusion
Q: Which route would you take?
suburb
train station
wide, circuitous road:
1 hour delay
narrow, straight road:
20 minute delay
A: Most drivers would take the narrow road
suburb
train station
resulting in traffic
congestion
What if…there were a dictator who told the cars (or Internet
packets) which route to take?
suburb
train station
red sedan must take the longer
route
Outline
Motivation Model Results Conclusion
The Model
A directed graph G = (V, E) k source-destination pairs {s1, t1}, …, {sk, tk}
A rate ri ≥ 0 of traffic from si to ti
Each edge e has a latency function le(▪) (continuous, non-decreasing)
Pi = a set of simple si-ti paths and
(G, r, l)
s1 t1
v
x
x1
1
0
r1 = 1
w
Simple Paths
s1→v→t1
s1→v→w→t1
s1→w→t1
Flows Flow f: P → R+ = routes of many non-cooperative
agents fp = flow per path
fe = flow per edge =
s1 t1
v
x
x1
1
0
r1 = 1
w
fp2 = ½
fp1 = ½
edge e = (w, t1):fe = ½ + ½ = 1le(fe) = 1
The Cost of a Flow Latency of a path P = sum of latencies of
edges in P
Cost of a flow f = total latency incurred by f :
s1 t1
v
x
x1
1
0
r1 = 1
w
fp2 = ½
fp1 = ½
lp1(f) = ½ + 1 = 1.5
lp2(f) = ½ + 0 + 1 = 1.5
C(f) = ½ * 1.5 + ½ * 1.5 = 1.5
Some Assumptions Finding an optimal routing is difficult Flows behave “selfishly” and “greedily” Each network user controls a negligible
fraction of the overall traffic
In other words: Network routing is a non-
cooperative game and the routes form a
Nash Equilibrium.
Nash FlowsDef: A flow f is a Nash flow iff all traffic is routed on
minimum-latency paths. Formally,
8 i 2 {1, ... , k} and P1, P2 2 Pi with fP1 > 0,
lP1(f) · lP2
(f)
Lemma: [BMW ’56] An acyclic Nash flow exists and is essentially unique.
Lemma: [RT ’00] In a Nash flow f, all si-ti flow paths have equal latency Li(f).
More on Nash Flows
Fact: Nash flow does not optimize the total latency (cf. Prisoner’s Dilemma).
s1 t1
1
x
r1 = 1 flow = ½
flow = ½
s1 t1
1
x
r1 = 1 flow = 0
flow = 1
C(f*) = ½ * 1 + ½ * ½ = ¾ C(f) = 0 * 1 + 1 * 1 = 1
optimal flow Nash flow[Pigou 1920]
Optimal Flows
Def: Marginal latency
Lemma: [BMW ’56] An optimal flow is a Nash flow for the marginal latencies.
s1 t1
1
x
r1 = 1
s1 t1
1
2x
r1 = 1
latency functions marginal cost functions
flow = ½
flow = ½
flow = ½
flow = ½
optimal flow Nash flow
The Price of Anarchy
Def: [KP ’99] Price of anarchy is the worst-case ratio between the cost of a Nash and of an optimal flow.
ρ(G, r, l) =
Outline
Motivation Model Results Conclusion
Linear Latency Functions
Thm: [RT ’00] For linear latency functions, ρ(G, r, l) = C(f) / C(f*) = 4/3.
s1 t1
1
2x
r = 1 flow = ½
flow = ½
s1 t1
1
x
r = 1 flow = 0
flow = 1
C(f*) = ½ * 1 + ½ * ½ = ¾C(f) = 0 * 1 + 1 * 1 = 1
latency functions marginal cost functions
Nash flow: Optimal flow:
Linear Latency Functions (cont.) Linear latencies have the form le(x) = aex + be for
some ae, be ¸ 0. Marginal cost function is le*(x) = 2aex + be.
le*(x/2) = 2ae(x/2) + be = le(x) for each edge e. Thus, lP*(f/2) = lP(f) for each path P.
Corollary: [RT ’00] The Nash flow f/2 is optimal for rate r/2.
Proof Idea Goal: Lower bound C(f*) in terms of C(f) Idea: We create an optimal flow f* for (G, r, l)
via a two-step process:1. Send a scaled down Nash flow f/2 through G. By
corollary, it will be optimal for (G, r/2, l).
2. Augment f/2 to a flow optimal for (G, r, l).
s1 t1
1
x
r = 1
flow = ½
flow = 0
flow = ½
flow =0
r = ½
Proof Idea
cost of f* at rate r
= cost of f/2 at rate r/2
+ cost of augmenting flow to rate r
≥ ¼ C(f) (easy) ≥ ½ C(f) (hard)
≥ ¾ C(f)
Goal: Lower bound C(f*) in terms of C(f). Idea: We create an optimal flow f* for (G, r, l)
via a two-step process:1. Send a scaled down Nash flow f/2 through G. By
corollary, it will be optimal for (G, r/2, l).
2. Augment f/2 to a flow optimal for (G, r, l).
General Latency Functions Can we find a similar bound on ρ(G, r, l) for general
latency functions? Unfortunately, for a general l(·), the price of anarchy may
be much larger than 4/3 even in a simple network:
s1 t1
1
xp
r = 1
s1 t1
1 r = 1
latency functions marginal cost functions
(p +1)xp
flow = 1
flow = 0
flow = (p + 1)-1/p
flow = 1 – (p + 1)-1/p
Nash flow: Optimal flow:
C(f) = 1 C(f*) = 1 – p¢(p +1)-(p+1)/p = ( )
Main Theorem
Def: anarchy value (L) 2 [1, 1) = how “nice” latency functions in class L are
Thm: Price of anarchy is independent of network topology: ρ(G, r, l) = (L) for a standard class of functions L.
Upper Bound: ρ(G, r, l) ≤ (L)
Idea: Mimic the proof for linear latencies. Scale down Nash flow f/c and then augment it to an optimal flow.
Problem: For non-linear latency functions, there is no constant c for which f/c is optimal for reduced rate r/c.
Upper Bound: ρ(G, r, l) ≤ (L) (cont.)
Idea: Scale down Nash flow f by different factors on different edges.
Problem: This violates conservation constraints!
Upper Bound: ρ(G, r, l) ≤ (L) (cont.)
Combining two previous ideas, we create an optimal
flow f* for (G, r, l) via a two-step process:
1. Send a pseudoflow {efe}e2 E such that le*(efe) = le(fe).
2. Augment the pseudoflow to an optimal flow f*
s1 t1
1
x2
r = 1
flow = 1/√3
flow = 1 - 1/√3
l(x) = x2, l*(x) = 3x2.
Want 3( x)2 = x2 ) = √1/3
Upper Bound: ρ(G, r, l) ≤ (L) (cont.)
Lemma: C(f*) ¸ e le(efe)efe + e (fe* - efe)le(fe)
Lower Bound: ρ(G, r, l) ≥ (L)
Computing the Price of Anarchy
So, the price of anarchy, ρ(G, r, l) for l 2 L is easy to compute
It is simply (L ) = the worst-possible ratio of in a two-node network:
s1 t1
constant
·l
r
Computing the Price of Anarchy (cont.)
Conclusion