The Price of Selfish Routing

How Bad is Selfish Routing
A survey on existing
models for selfish routing
Professor John Lui, David Yau
and Dah-Ming Qiu
presented by Joe W.J. Jiang
2004-05-18
Outline of my talk
•
•
•
•
Introduction to selfish routing
Preliminaries and Nash equilibrium
How bad is selfish routing
Other models on selfish routing &
related work
• Conclusions and problems
Introduction to selfish routing
•
Routing in the Internet:
•
•
•
•
•
•
RIP (distance vector routing, Bellman-Ford)
OSPF (link state routing, Dijkstra)
BGP (exterior gateway protocol)
These routing metrics of the above
protocols are generally based on hop
counts.
There is an inherent inefficiency from
the users’ perspective: bandwidth,
latency, jitter.
There is an incentive for users to
choose routes themselves.
Selfish routing in the Internet
• Source routing : Nimrod -- route
information is contained in the header of
route request
• Overlay routing: Detour or RON –
routing via peer nodes in the overlay
network
• Such end-to-end route selection is
selfish by nature, optimizing their own
performance without considering others’.
Selfishness in the Internet
• Internet: users with a multitude of
diverse economic interests
browsers
routers
servers
• Selfishness: parties will deviate from
their protocol if it is in their interest.
• How to study these problems:
Algorithmic Game Theory – algorithms +
game theory
Where are you?
•
•
•
•
Introduction to selfish routing
Preliminaries and Nash equilibrium
How bad is selfish routing
Other models on selfish routing &
related work
• Conclusions and problems
Routing Problems
Optimization problem:
•
•
•
given a network, a
traffic rate
between each pair
of nodes
latency function of
each edge
objective: the total
latency is
minimized
Nash Equilibrium
• A Nash Equilibrium is a set of strategies
(one status) one for each player, such
that no player has incentive to
unilaterally change his action.
• Players are in equilibrium if a change in
strategies by any one of them would lead
that player to earn less than current
strategy.
• It is well known that Nash equilibria do
not in general optimize social welfare –
“Prisoner’s Dilemma”.
Braess’s Paradox
1
x
1
1/2
0
s
1
1/2
t
x
average
average
latency=
latency=
1+0.5
1+1 =2
=1.5
• the price of anarchy:
2/1.5 = 4/3!
Some Algorithmic Issues
• Price of Anarchy
A measure of degradation of
performance caused by lack of
cooperation (regulation) – selfishness.
• Mechanism Design
How to design games so that selfish
behaviors would lead to desire outcome.
• Coalitional Games
E.g., how to share costs incurred by a
group of users.
Mathematical Models
• A directed graph G=(V, E)
• source-sink pairs {si, ti} for i=1,..,k
• rate ri  0 of traffic between si and ti for
each i=1,..,k
• set of si-ti paths Pi
• P  i Pi
• for each edge e, a latency function le(•)
– nonnegative, differentiable, nondecreasing.
Mathematical Model – Traffic
and Flows
• A flow vector specifies a traffic pattern fp
= amount of flow on si-ti path P
• flow of an edge e f e  P:eP f P
• A flow f is said to be feasible if for all i,

PPi
f P  ri
• We call triple (G, r, l) an instance.
• The latency of a path P lP ( f )  eP le ( f e )
• cost of all flows C(f) -- total latency
C ( f )   lP ( f ) f P  eE le ( f e ) f e
PP
Flows and game theory
• Flow represents routes of many
noncooperative agents
– each agent controlling infinitesimally small
amount
• cars in a highway system
• packets in a network
• The cost (total latency) of a flow
represents social welfare.
• Agents are selfish in that
• minimize personal latency
• do not care about social welfare
Flows at Nash equilibrium
• A flow is at Nash equilibrium (or is a Nash flow)
if no agent can improve its latency by changing
its path.
Definition : A flow f feasible for instance (G, r , l ) is
at Nash equilibriu m if for all i  { 1,...,k}, P1  P2 , and
~
  [0, f P1 ], we have lP1 ( f )  l P2 ( f ), where
 fP  
~ 
fP   fP  
f
 P
if P  P1
if P  P2
otherwise
Wardrop’s Principle
Lemma: A flow f feasible for instance (G,r,l) is at
Nash equilibriu m if and only if for every i  { 1,...,k}
and P1,P2  Pi with f P1  0, lP1 ( f )  lP2 ( f ).
In particular, all paths to which f assigns positive
amount of flow, have equal latency, say Li(f)
Lemma : If f is a flow at Nash equilibriu m for instance
k
(G,r,l), then
C ( f )   Li ( f )  ri
i 1
Optimal Flow
• An optimal flow is a flow that minimizes
total latency/ average latency.
• Convex programming:


MinC ( f )  Min   ce ( f e ) 
 eE

f
PPi
fe 
 ri
P
f
PP:eP
fP  0
ce ( f e )  le ( f e )  f e
i  { 1,...,k}
p
e  E
P  P
Optimal Flow (Solution)
• If the objective function ce(fe)=le(fe)fe is convex, global
optimal = local optimal
• We expect a flow to be locally optimal if and only if the
marginal benefit of decreasing flow along any si-ti path ≤
the marginal cost of increasing flow along any other si-ti
path.
d
ce  ce (x)
dx
cP ( f )   ce ( f e )
eP
Lemma : A flow f is optimal for a convex program
of the form (NLP) if and only if for every i  { 1,...,k}
and P1,P2  Pi with f P1  0, cP1(f)  cP2 (f) .
Beckman’s Interpretation
le* ( f e )  ce ( f e )  (le ( f e )  f e )  le ( f e )  le ( f e )  f e
Corollary : Let (G,r,l) be an instance in which x  le(x)
is a convex function for each edge e, with marginal cost
function l * defined as above. Then a flow f feasible for
(G,r,l) is optimal if and only if it is at Nash equilibriu m
for instance (G,r,l * ).
Existence of Nash Equilibrium
Lemma : An instance (G,r,l) with continuous ,
nondecreas ing latency functions admits a feasible
~
flow at Nash equilibriu m. Moreover, if f, f are
~
flows at Nash equilibriu m, then C(f)  C(f ).
Proof : set he ( x)   le t dt , he ( x) is convex
x
Min
f
PPi
fe 
 h  f ,
eE
e
e
 ri
P
f
PP:eP
fP  0
0
subject to :
i  { 1,...,k}
p
e  E
P  P
A good but not optimal upper
bound
Definition : For an instance (G,r,l) with an optimal flow f * ,
and a flow at Nash equilibriu m f , the coordinati on ratio
C(f)
ρ(G,r,l) 
C(f * )
Corollary if x  le x      le t dt ,  (G, r , l )  
x
0
Proof : C ( f )   le ( f e ) f e
eE
    le (t )
fe
eE
0

eE
f *e
0
le (t )
   le ( f * e ) f * e    C ( f * )
eE
A good but not optimal upper
bound (cont)
Corollary : if le ( x)  i 0 ae ,i x i
p
for a positive integer p and nonnegativ e reals ae ,i
then  (G , r , l )  p  1
e.g . le ( x)  x 2 , p  2,  (G, r , l )  3
Where are you?
•
•
•
•
Introduction to selfish routing
Preliminaries and Nash equilibrium
How bad is selfish routing
Other models on selfish routing &
related work
• Conclusions and problems
A simple bad example
1
½*1=1/2
1  ( p  1) 1/ p
1
s
t
( p  1) 1/ p
1
1*1=1
½*1/2=1/4
x
p 1

the price of anarchy = 1/ (3/4)
=4/3 !
p
the total latency :1  p( p  1)
 0, when p  
Bicriteria Results
Theorem : If f is a flow at Nash equilibriu m for (G,r,l)
and f * is feasible for (G,2r,l), then C(f)  C(f * ).
le ( f e ) if x  f e
le ( x)  
le ( x) if x  f e

* **
** *
*
*
*
*
l
(
f
)
f

C
(
f
)

C
(
f
)
l
(
0
)

L
(
f
)
l
(
f
)

l
(
0

L
(
f
)
l
(
f
)
f

C
(
f
)

f
l
(
f
)

l
(
f
P
 Pe e ei e e e 
e e P e
ei e )
e
e l ( f ) f


x
l
(
x
)

l
(
x
)
l
(
f
)
f

L
e
e
  l ( f ) f 2C( f(l)f ()fe f ) fe e
e
*
*
*
P
P
P
i
P
*
PPi

*
P
i
e
e
e
)  2ri  2C ( f )
C ( f )
C (Lfi ()f C
(f)
eE
*
i

Bicriteria Results (cont)
Theorem : If f is a flow at Nash equilibriu m for (G,r,l)
and f * is feasible for (G,2r,l), then C(f)  C(f * ).
Theorem : If f is a flow at Nash equilibriu m for (G,r,l)
1
and f * is feasible for (G,( 1  γ)r,l), then C(f)  C(f * ).
γ
Worst-Case Ratio of 4/3 with
Linear Latency Functions
For each edge e  E
le(x)  ae x  be
(ae , be  0)
C ( f )  e ae f e2  be f e
denote the marginal cost function le* ( x)  2ae x  be
Lemma : Let (G,r,l) be an instance with edge latency functions
le(x)  ae x  be for each e  E. Then,
(a) a flow f is at Nash equilibriu m in G iff for each source - sink
pair i and P,P  Pi with f P  0,
a
eP
f  be   ae f e  be
e e
eP
(b) a flow f * if (globally) optimal in G iff for each source - sink
pair i and P,P  Pi with f P*  0,
*
*
2
a
f

b

2
a
f
 e e e  e e  be
eP
eP
corollary
Corollary : Let G ba a network in which each edge latency
function le is of the form le(x)  ae x , then for any rate
vector r , a flow feasible for (G,r,l) is optimal iff it is at
Nash equilibriu m.
Important results
Lemma : Suppose (G,r,l) has linear latency functions
and f is a flow at Nash equilibriu m, then
(a) the flow f 2 is optimal for (G, r 2 ,l),
(b) the marginal cost of increasing the flow on path P with
respect to f 2 equals the latency of P with respect to f .
The most important theorem:
Theorem If (G, r, l) has linear latency functions,
then ρ(G, r, l)≤4/3
Proof of 4/3 coordination ratio
cost of
optimal
at rate r
=
cost of
optimal
at rate
r/2
optimal at r/2
C(f/2)≥1/4 • C(f)
+
cost of increasing
from optimal at rate
r/2 to optimal at rate
r
At least (r/2) •L
≥1/2 • C(f)
Lemma
Lemma : Suppose (G,r,l) is an instance with linear latency
functions for which f * is an optimal flow. Let L*i(f * ) be the
minimum marginal cost of increasing flow on an si  ti path
with respect to f * . Then, for any δ  0, a feasible flow for
the problem instance (G,( 1  δ)r,l) has cost at least
k
C(f )  δ  L*i(f * )ri
*
i 1
note that if each L*i is nondecreas ing in ri
then routing ri additional units of flow from
si to ti would cost at least ri  L*i ( f * )
A simple example
1
x
1
0
s
1
t
x
L*i ( f *)  (( x  x)  x) x 1/ 2  4 x x 1/ 2  2
1
1
Cost increase by additional flow   2  1
2
2
1
3
*
total cost  C ( f )  1  1   1 
2
2
Proof of lemma
convexity of the cost function x  le ( x)  ae x 2  be x
le ( f e ) f e  le ( f e* ) f e*  ( f e  f e* )le* ( f e* )
C ( f )   le ( f e ) f e
eE
  le ( f e* ) f e*   ( f e  f e* )le* ( f e* )
eE
eE
k
 C ( f * )    l P* ( f * )( f P  f P* )
i 1 PPi
k
 C ( f * )    L*i ( f * )( f P  f P* )
i 1 PPi
Proof of ρ(G, r, l)≤4/3
k
C ( f )  C ( f / 2)   L*i ( f / 2)
*
i 1
k
 C ( f / 2)   Li ( f )
i 1
ri
2
ri
2
1
C( f )
2
1
1
C ( f / 2)   ae f e2  be f e
2
e 4
1
  ae f e2  be f e
4 e
1
 C( f )
Recall : the marginal cost of increasing
4
the flow on path P with respect to f 2
3
C( f *)  C( f )
equals the latency of P with respect to f .
4
 C ( f / 2) 
Extensions
• Flows at Approximate Nash
Equilibrium
• Finitely Many Agents: Splittable
Flow
• Finitely Many Agents: Unsplittable
Flow
• Central regulation.
Where are you?
•
•
•
•
Introduction to selfish routing
Preliminaries and Nash equilibrium
How bad is selfish routing
Other models on selfish routing &
related work
• Conclusions and problems
Related Papers
• How bad is selfish routing -Roughgarden & Tardos
• Worst-case Equilibrium -Koutsoupias & Papadimitriou
• The Price of Selfish Routing -Mavronicolas & Spirakis
• Realistic Models for Selfish Routing
in the Internet -- Akella
KP model (task allocation
model)
Main emphasizes on service cost
(routing cost neglected)
n jobs
Cost = service cost
m servers
KP model (cont)
Main emphasizes on service cost
(routing cost neglected)
Routing in a network consisting of parallel links only
Scheduling-type problems:
Schedule tasks to minimize the execution time (cost)
KP model (cont)
• simple routing model:
– two nodes
– m parallel links with speeds si
– (1 · i · m)
– n jobs with weights wj
– (1 · j · n)
• service cost:
– the delay of a connection is
proportional to load on link
Cost measure
• After each job selects a link:
Jobs(j) = jobs assigned to link j
Cost of jobs assigned to link j:
• Total weight of jobs assigned to link j over the speed of
link j
• (Total) cost of a configuration
maxj {Cj}
• Social optimum (minimized cost)
min maxj {Cj }
Results
• Koutsoupias and Papadimitriou’99
– defined the problem
– solved some of most basic cases
• for 2 identical links price of anarchy = 1.5
• for 2 links price of anarchy is ¸  ¼ 1.618
• for m identical links price of anarchy is
• for m links price of anarchy is
KP’s conjecture
•
Koutsoupias-Papadimitriou conjecture
– for m identical links
– price of anarchy is
– “most natural behavior (random) is worst”
– proved by Mavronicolas & Spirakis
Akella’s Model
• Selfish users choose routes that
maximize the bandwidth available to the
flow.
• Bandwidth available to agent i
1 / ri
be 
, where ri is RTT of agent i
1 / ri
i
• Objective function is total bandwidth used
by all users
• The price of anarchy in a network with n
flows ban be as large as Ω(n)
Where are you?
•
•
•
•
Introduction to selfish routing
Preliminaries and Nash equilibrium
How bad is selfish routing
Other models on selfish routing &
related work
• Conclusions and problems
Conclusions & Problems
• Selfish behaviors would degrade the
performance of the network.
• However, some simulation results on
Internet show that selfish routing is close
to optimal routing. ???
• Other problem: route oscillation (Internet/
overlay network)
• Goal: how to design network or design
games (what information should users
know? ) so that selfish behavior would
lead to desired outcome
?
Thank you for your attention!
The End