1 P T I M A
i Mathematical Programming Society Newsletter
Selfish Routing and the Price of Anarchy
Tim Roughgarden*
May 15, 2007
MAY2007
Abstract
Selfish routing is a classical mathematical model
of how selfinterested users might route traffic
through a congested network. The outcome of
selfish routing is generally inefficient, in that
it fails to optimize natural objective functions.
The price of anarchy is a quantitative measure
of this inefficiency. We survey recent work that
analyzes the price of anarchy of selfish routing.
We also describe related results on bounding the
worstpossible severity of a phenomenon called
Braess's Paradox, and on three techniques for
reducing the price of anarchy of selfish routing.
This survey concentrates on the contributions
of the author's PhD thesis, but also discusses
several more recent results in the area.
1 Introduction
Over the past several years, there has been a
tremendous surge of activity at the interface of
computer science and economics. This survey is
a brief introduction to two intertwined facets of
this emerging research area, theprice ofanarchy
and selfish routing. The price of anarchy, first
defined by Koutsoupias and Papadimitriou [43,
55], measures the extent to which competition
approximates cooperation. It is motivated by the
wellknown fact that noncooperative equilibria
can be inefficient, in that they need not optimize
natural objective functions [24, 60]. Selfish
routing refers to a mathematical model of traffic
in a congested network. This model has a long
history in the transportation science literature [6,
10, 58, 85] and has also been widely studied by
the computer networking community (see e.g.
[8, 13, 28, 29, 52, 59]). The price of anarchy has
recently been extensively studied in this model.
This survey concentrates on the contributions
of the author's PhD thesis [66], but also discusses
several more recent results on the price of anarchy
of selfish routing. In most cases, we provide self
contained proofs. Many more details, results, and
references can be found in the recent book [70],
which is an expanded and revised version of [66].
1.1 Two Motivating Examples
We now introduce selfish routing and
motivate the results described in this survey by
informally exploring two important examples.
Pigou discovered the first example in 1920
[58]; Braess found the second in 1968 [11].
(x) = 1
c(x) = x
(a) Pigou's example
c(x) = 1
s t
c(x) = x
(b) A nonlinear variant
Figure 1: Pigou's example and a nonlinear
variant. The cost function c(x) describes the
cost incurred by users of an edge, as a function
of the amount of traffic routed on the edge.
*Department of Computer Science, Stanford University, 462 Gates Building, 353 Serra Mall, Stanford, CA 94305.
Supported in part by ONR grant N000140410725, DARPA grant W911NF0490001, an NSF CAREER Award,
and an Alfred P. Sloan Fellowship. Email: tim@cs.stanford.edu.
74 s .6 s~ s. s
L
'74
L
i
MAY 2007
Example 1.1 (Pigou's example [58])
Consider the simple network shown in
Figure l(a). Two disjoint edges connect a
source vertex s to a sink vertex t. Each
edge is labeled with a cost function c(.),
which describes the cost (e.g., travel time)
incurred by users of the edge, as a function
of the amount of traffic routed on the
edge. The upper edge has the constant
cost function c(x) = 1, and thus represents
a route that is relatively long but immune
to congestion. The cost of the lower edge,
by contrast, is governed by the function
c(x) = x and thus increases as the edge gets
more congested. In particular, the lower
edge is cheaper than the upper edge if and
only if less than one unit of traffic uses it.
Suppose there is one unit of traffic,
representing a very large population of
network users, and that each user chooses
independently between the two routes
from s to t. Assuming that each network
user aims to minimize its cost, we should
expect all traffic to follow the lower edge.
Indeed, each network user should reason
as follows: the lower route is never worse
than the upper one, even when it is fully
congested, and it is superior whenever some
of the other users are foolish enough to
take the upper route. In the "selfish routing
outcome", we therefore expect all networks
users to incur one unit of cost.
Now suppose that, by whatever means,
we can choose how the traffic is routed.
Can we leverage this power to improve over
the selfish routing outcome? To see that we
can, consider assigning half of the traffic to
each of the two routes. The network users
forced onto the upper edge experience one
unit of cost, and are thus no worse off than
in the previous outcome. On the other
hand, users permitted on the lower edge now
enjoy lighter traffic conditions, and incur
a mere 1/2 unit of cost. We have therefore
lowered the cost of half of the users while
making no one worse off. Moreover, the
average cost incurred by traffic has decreased
from 1 to 3/4.
Pigou's example demonstrates that
selfish routing need not produce an
optimal outcome. This phenomenon can
be amplified with a seemingly minor
modification to Example 1.1. Suppose we
replace the previously linear cost function
c(x) = x with the highly nonlinear one
c(x) = x9 forp large (Figure l(b)). As in
Example 1.1, selfish users will all travel on
the lower route, incurring a cost of 1. On
the other hand, if we could force a small
fraction of the traffic to travel along the
upper route, then the average cost would
drop to e + (1 e f which approaches 0 as
e tends to 0 andp tends to infinity.
In Section 2, we will define the price of
anarchy of selfish routing as the average cost
of traffic in a selfish outcome divided by
the minimumpossible average cost. If the
price of anarchy of a network is close to 1,
then we conclude that the negative impact
of selfish routing is relatively small. The
price of anarchy in Example 1.1 is at least
4/3, and it tends to infinity with in the
nonlinear variant of Pigou's example.
The price of anarchy of selfish routing
can therefore be large if the network cost
functions are "sufficiently nonlinear".
Pigou's example and its nonlinear variant
motivate the following questions, which
are central to Section 2 of this survey. Can
the price of anarchy be large even when
cost functions are "not too nonlinear"?
Is the price of anarchy larger in bigger,
more complicated networks? Is it larger in
multicommodity networks, where traffic
emanates from and terminates at multiple
locations? In Section 2 we will prove that
the answer to all of these questions is "no"
in fact, Pigou's example and simple variants
are in some sense universal bad examples for
the price of anarchy of selfish routing.
While the price of anarchy in our
next example is no larger than in Pigou's
example, it is arguably a more startling and
unintuitive display of the suboptimality of
selfish routing.
Example 1.2 (Braess's Paradox [11])
Consider the fournode network shown in
Figure 2(a). There are two disjoint routes
from s to t, each with combined cost 1 + x,
where x is the amount of traffic that uses the
route. The routes are therefore identical, and
selfish traffic should split evenly between
them. Assuming that there is one unit of
traffic, all network users experience 3/2
units of cost in the selfish routing outcome.
Now suppose that, in an effort to decrease
the cost encountered by the traffic, we build
a short, highcapacity edge connecting the
midpoints of the two existing routes. The
new network is shown in Figure 2(b), with
the new edge (v,w) possessing the constant
cost function c(x) = 0. How will selfish
traffic react?
We cannot expect the previous traffic
pattern to persist in the new network. As
in Pigou's example, the cost of the new
route s > v > w > t is never worse than
that along the two original paths, and it is
strictly less whenever some traffic fails to
use it. We therefore expect all network users
to deviate to the new route. Because of the
ensuing heavy congestion on the edges (s, v)
and (w, t), all of the traffic now experiences
two units of cost. Braess's Paradox thus
shows that the intuitively helpful action of
adding a new zerocost edge can increase the
cost experienced by all of the traffic!
c(x)= x
(a) Initial network
c(x)= x
c(x) 1
c(x) 1
c(x) 0 t
c(x) x
(b) Augmented network
Figure 2: Braess' Paradox. The addition
of an intuitvely helpful edge can
adversely affect all of the Traffic
Example 1.2 shows that adding a new
edge to a network can increase the cost
incurred by selfish traffic. Equivalently,
removing one edge from a network with
linear cost functions can decrease this cost
by a factor of at least 4/3. Can removing
edges from a network decrease the cost
incurred by selfish traffic by a larger factor
in larger networks, or with nonlinear cost
functions, or with multiple commodities,
or with multiple edge removals allowed?
If so, by how much? In Section 3 we give
precise answers to all of these questions.
1.2 Overview
We begin in Section 2 by proving matching
upper and lower bounds on the price of
anarchy of selfish routing. After defining
the classical model of selfish routing that
0PTIMA74
PAGE 2
MAY 2007
we study, we formalize the lower bound
on the price of anarchy provided by simple
variants of Pigou's example. As suggested
by Example 1.1 and the subsequent
nonlinear variants, this lower bound will
depend on the set of allowable edge cost
functions. We then show a matching upper
bound for essentially every set of allowable
cost functions. For example, the price of
anarchy in every multicommodity network
with linear cost functionsfunctions of
the form ax+b with a, b > 0is at most
4/3. Thus the price of anarchy in such
networks is maximized by Pigou's example
(Example 1.1). Similarly, the price of
anarchy of multicommodity networks with
cost functions that are polynomials with
nonnegative coefficients and degree at most
p is maximized by the nonlinear variant
of Pigou's example shown in Figure l(b).
We also explicitly compute the largest
possible price of anarchy with respect to
several different types of cost functions.
Section 3 studies the worstpossible
severity of Braess's Paradox. We show that
Braess's Paradox can be arbitrarily severe,
even in singlecommodity networks,
provided nonlinear cost functions, large
networks, and multiple edge removals are
permitted. Precisely, for every n > 2, there is
a singlecommodity, nvertex network such
that removing [n/21 1 edges decreases the
cost incurred by selfish traffic by an [n/21
factor. We also show that this construction
is optimal in several senses, discuss
extensions to multicommodity networks,
and show that Braess's Paradox is impossible
to detect efficiently (assuming P # NP).
Section 4 tackles the problem of reducing
the price of anarchy in networks where it is
unacceptably high. It surveys positive results
for three distinct approaches: increasing the
network capacity, routing a small portion
of the traffic centrally, and influencing
network users by taxing network edges.
Finally, Section 5 describes the broader
research context for the results of this
survey, and discusses other recent work that
quantifies the inefficiency of noncooperative
equilibria.
2 Bounding the Price of Anarchy
This section formally defines selfish
routing networks, equilibria, and the price
of anarchy (Subsection 2.1); introduces a
simple lower bound on the price of anarchy
that is based on Pigou's example (Subsection
2.2); and proves a matching upper bound
on the price of anarchy (Subsection 2.3).
2.1 Preliminaries
Selfish Routing Networks
We begin by reviewing the terminology of
classical multicommodity flow networks.
See [2], for example, for more details and
for historical notes on network flows.
A multicommodity flow network is
described by a directed graph G = (VE),
with vertex set Vand edge set E, and a set
(s, tl), . ., (s, t,) of sourcesink vertex
pairs, also called commodities. Parallel
edges are allowed, and a vertex can
participate in multiple sourcesink pairs.
For a multicommodity network G, let P
denote the set of simple s,t, paths and P the
union u ki=P,. We always assume that
P 0 for every i. A flow in G is a
nonnegative vector, indexed by T. For a
flowfand a path P E P, we interpret, as
the amount of traffic of commodity i that
chooses the path P to navigate from s, to t.
A flowf induces a flow on edges
{eO E' where = lp,:,pfp denotes the
total amount of flow using the edge e.
Finally, we use r to denote a nonnegative
vector of traffic rates, indexed by the
commodities of G. A flowfin G is feasible
for r if it routes all of the prescribed traffic:
for each i E {1, 2, . k}, 2cf,= r.
To model the negative consequences of
increasing congestion, we give each edge e
of a network G a nonnegative, continuous,
and nondecreasing cost function c,. A cost
function c,(.) denotes the cost (e.g. travel
time) incurred by traffic that traverses edge
e, as a function of the edge congestion.
A selfish routing network is then given by
a triple of the form (G, r, c), where G is a
multicommodity flow network, r is a vector
of traffic rates, and c is a vector of cost
functions, indexed by the edges of G. We
often call such a triple an instance.
Equilibria
We next discuss equilibria in selfish
routing networks. Letf be a flow feasible
for the instance (G, r, c). The overall cost
c, (f) incurred by traffic on the path
P in the flowf is defined as the sum
of the costs of the constituent edges:
cp(f) = ,tp c(f ). Naturally, we expect
selfish traffic to attempt to minimize its
cost. This leads to the following definition,
which was first formulated by Wardrop [85].
Definition 2.1 ([85]) Letf be a feasible
flow for the instance (G, r, c). The flow
f is a Wardrop equilibrium if, for every
commodity i E {1, 2, .. ,k} and every pair
P,P E P of sti paths with, > 0,
c(f) < c(f).
In other words, all paths in use by a
Wardrop equilibrium f have minimum
possible cost (given their source, sink, and
the congestion caused byf ). In particular,
all paths of a given commodity used by a
Wardrop equilibrium have equal cost. In
the theoretical computer science literature,
Wardrop equilibria are also called Nash
flows. Haurie and Marcotte [32] formalized
the precise correspondence between
Wardrop equilibria and Nash equilibria
of finite normalform games [50].
Remark 2.2 In Definition 2.1, we are
implicitly assuming that every network
user controls a negligible portion of the
overall traffic, so that the actions of an
individual user have essentially no effect on
the network congestion. In the game theory
literature, games with this property are
called nonatomic [76]. Several recent papers
have analyzed the price of anarchy in atomic
variants of the selfish routing model studied
in this survey; see Section 5 for references.
Beckmann, McGuire, and Winsten [6]
resolved the important issues of existence
and uniqueness of Wardrop equilibria.
Proposition 2.3 ([6])
Let (G, r, c) be an instance.
(a) The instance (G, r, c) admits at
least one Wardrop equilibrium.
(b) Iff andf are Wardrop equilibria for
(G, r, c), then c(f) = c)(f)for every edge e.
The first part of Proposition 2.3 guarantees
that a Wardrop equilibrium exists in
every instance. The second part states
that every two Wardrop equilibria induce
identical edge costs. While two Wardrop
equilibria need not induce identical
flows on edges, Proposition 2.3(b) is
strong enough for our purposes.
The proof of Proposition 2.3 in [6] is
remarkable. Beckmann, McGuire, and
Winsten [6] showed, by invoking the
KarushKuhnTucker conditions (see e.g.
[57]), that the Wardrop equilibria of an
instance (G, r, c) are precisely the flows that
minimize the potential function
10LIPT I MS741
PAGE 3
MAY 2007
4(f) = f ce(x)d
eE(
eE (1)
over all feasible flows for (G, r, c). Since
cost functions are continuous and the
space of all flows is compact, Weierstrass's
Theorem then implies Proposition 2.3(a).
Since cost functions are nondecreasing,
the function D is convex, and Proposition
2.3(b) then follows without much difficulty.
This use of a potential function has been
influential in both game theory and
theoretical computer science. Led by the
work of Rosenthal [62] and Monderer
and Shapley [49], potential functions have
become a standard tool in noncooperative
game theory for proving the existence of
purestrategy Nash equilibria in certain
classes of games. In theoretical computer
science, potential functions have been used
to bound the price of anarchy in several
applications [3, 36, 73, 74]. Intuitively, if
equilibria optimize a potential function
that is "close to" the objective function,
then equilibria cannot be too inefficient.
Indeed, the proximity between the potential
function D in (1) and our objective
function (3) below implies nearoptimal
upper bounds on the price of anarchy of
selfish routing [74]. In this survey we focus
only on optimal bounds, however, which
follow from a different proof approach.
Speaking of which, the following
variational inequality characterization of
Wardrop equilibria, due to Smith [78], will
play a crucial role in our upper bound on
the price of anarchy.
Proposition 2.4 ([78]) Aflowf
feasiblefor (G, r, c) is a Wardrop
equilibrium if and only if
Zcf,(fe)f, < Z (ffe~)
E < E
eEE eEE
for every flowf *feasible for (G, r, c).
Proposition 2.4 can easily be derived as
an optimality condition for minimizers of
the potential function (1). For simplicity,
we instead give a short direct proof.
Proof: Definition 2.1 easily
implies that a flowfis a Wardrop
equilibrium if and only if
Scp(f)fp <_ cp(f)f
PEP PEP
for every flowf* feasible for (G, r, c).
Writing c,(f) = CY c(f ) and reversing
the order of summation on both sides
of (2) then proves the proposition. U
The Price of Anarchy
We conclude the preliminaries by defining
the price of anarchy. Since this definition
aims to quantify the inefficiency of an
equilibrium, it requires an objective
function. We adopt the usual objective
function from mincost network flow, and
define the cost C(f) of a flow fin (G, r, c) as
c(f) = rp(f)f, = ce(fe)f.e
P'P eEE (3)
The first equality in (3) is a definition;
the second follows from the same reversal
of sums as in the proof of Proposition
2.4. A flow feasible for an instance
(G, r, c) is optimal if it minimizes the
cost over all feasible flows. Because
cost functions are continuous and
the space of flows is compact, every
instance admits an optimal flow.
We now define the price of anarchy as
the ratio between the cost of a Wardrop
equilibrium and of an optimal flow.
Definition 2.5 ([43, 55]) Theprice of
anarchy p(G, r, c) of an instance (G, r, c) is
C(f)
p(G,r,c) 
c(f*) '
where is a Wardrop equilibrium and
f* is an optimal flow for (G, r, c). The
price ofanarchy p(l) of a nonempty set
I of instances is sup(G, c) p(G, r, c).
Definition 2.1 and Proposition 2.3(b)
easily imply that all Wardrop equilibria
have equal cost, and thus the price of
anarchy of an instance is well defined
unless there is a flow with zero cost. In
this case, all Wardrop equilibria also
have zero cost, and we define the price
of anarchy of the instance to be 1.
2.2 The Pigou Bound
Definition of the Pigou Bound
Pigou's example and its nonlinear variant
(Subsection 1.1) show that the price of
anarchy of selfish routing depends, at the
very least, on the type of cost functions
allowed. We will therefore aim for a
bound on the price of anarchy that is
parameterized by the set of allowable
cost functions, and that is optimal for
each such set. Common examples of sets
of cost functions include linear functions,
polynomials, and queueing delay functions.
For every set C of allowable cost functions,
Pigoulike examples provide a natural lower
bound on the price of anarchy of instances
with cost functions in C. Specifically, suppose
C contains all of the constant cost functions,
and choose a cost function c2 E C and a
traffic rate r > 0. Let c1 e C denote the cost
function everywhere equal to c,(r). Consider
the usual twonode, twolink network of
Pigou's example (Figure 1), give the upper
and lower edges the cost functions c, and c2,
respectively, and set the traffic rate to be r.
Routing all traffic on the lower edge yields a
Wardrop equilibrium with cost c2(r) r. The
price of anarchy in this instance is thus
r C2(r)
max
o0<
Definition 2.6 below uses this expression
but does not constrain x from above by r;
since c2 is nondecreasing, this modification
does not affect the value of the maximum.
We can now obtain a lower bound on
the price of anarchy by choosing the cost
function c, and the traffic rate r in the most
pernicious way possible.
Definition 2.6 ([22, 67]) Let C be
a nonempty set of cost functions.
The Piyou bound a(C) for C is
a(C) = sup sup T (r )
EC x,r>OX c(x) + (r )c(r)(4)
with the understanding that 0/0 = 1.
Examples
While the defining equation (4) of the Pigou
bound may appear fearsome to evaluate, it
simplifies to a closedform expression for
many interesting sets of cost functions.
Example 2.7 ([67, 74]) If C = {ax + b:
a, b > 0} is the set of linear cost
functions, then elementary
calculations show that a(C) = 4/3.
Thus Example 1.1 determines the Pigou
bound for linear cost functions.
Example 2.8 ([22]) Similarly, if Cis the set
of concave cost functions, then a(C) = 4/3.
Example 2.9 ([67]) If C is the set
of polynomials with nonnegative
coefficients and degree at mostp, then
0PTIMA74
PAGE4
MAY 2007
a(c) = [1 p (p + 1) 1] (5)
Asp grows large, the righthand side of
(5) tends to infinity asp / Inp [67, 84].
The righthand side of (5) is simply
the price of anarchy in the nonlinear
variant of Pigou's example discussed
in Subsection 1.1. The Pigou bound
for (nondecreasing) boundeddegree
polynomials with arbitrary coefficients is
not well understood, though partial results
have recently been obtained by So [79].
Remark 2.10 One of the most popular
types of cost functions in transportation
science applications is quartic functions
with nonnegative coefficients (see e.g.
Sheffi [77]). The Pigou bound (5) for
such functions is roughly 2.15.
Our final example is for the delay functions
of M/M/1 queuesqueues with Poisson
arrivals and exponentially distributed
service timeswhich are common in
computer network applications (see e.g.
[7, 8]). These delay functions correspond
to cost functions of the form c(x) =
1/(u x), where u can be interpreted as an
edge capacity or a queue service rate. The
value of such a function is defined to be
+oo when x > u. Allowing infinite costs
requires some technical modifications to
the selfish routing model that we ignore
in this survey; see [66] for more details.
The Pigou bound for the set of M/M/1
delay functions is +oo [28]. Intuitively,
this follows from Example 2.9 because
an M/M/1 delay function behaves like a
polynomial with arbitrarily large degree
when it is nearly saturated. In analogy
to restricting the polynomial degree in
Example 2.9, we impose a lower bound
ui, on all queue service rates and an upper
bound R on the value that the traffic rate
r can take on in (4).
Example 2.11 ([67]) Suppose R ,, < Um,
and let C = {(u x)1 : u > ui,} be the set
of M/M/1 delay functions with service
rate at least u i. Let a(C) denote the
largest possible price of anarchy in Pigou
like networks with cost functions in C
and traffic rate at most R ax. (Formally,
a(C) is given by (4) with the additional
restriction that x, r < R .) Then
I n (6)
a(C) 2 1 + .Ui (6)
The righthand side of (6) tends to infinity
as R > u ,,,a, but is bounded by a constant
if R,,, is at most a constant fraction of u n.
Simple WorstCase Networks
The Pigou bound uses only simple
networks to provide a lower bound on
the price of anarchy. Specifically, the
next proposition follows immediately
from the definition of the bound.
Proposition 2.12 ([67]) Let C be a set
ofcost functions that includes all of the
constant functions, and let I denote the single
commodity instances with a twonode, two
link network and cost functions in C. Then
p(I) > a(C).
If the set C does not contain all of the
constant cost functions, then we can
obtain similar results using modestly more
complex networks. For example, suppose
the set C of cost functions is diverse in
the sense that {c(0) : c E C} = [0,oo). Then
an edge with the constant cost function
c(x) = a can, for all practical purposes, be
"simulated" by a large number of parallel
edges that each have a cost function
satisfying c(0) = a. This observation means
that a Pigoulike network with a constant
cost function can be replaced by a network
with two nodes, (an unrestricted number
of) parallel links, and cost functions in C
without affecting the price of anarchy.
Figure 3: Worstcase networks for
inhomogeneous sets of cost functions. The
number of paths and the number of edges
in each path can be arbitrarily large.
Proposition 2.13 ([67]) Let C be a diverse
set of cost functions, and let I denote the
singlecommodity instances with a network of
parallel links and cost functions in C. Then
p(I) > a(C).
The set of cost functions in Example
2.11 is not diverse when u > 0, but
it is inhomogeneous in the sense that it
contains a function c with c(0) > 0. As
in Proposition 2.13, the Pigou bound
remains valid for such sets of cost functions
provided we allow somewhat more complex
networks. Specifically, let a union ofpaths
mean a network with one source, one
sink, and an arbitrarily large number of
internally vertexdisjoint paths directed
from the source to the sink (Figure 3).
Proposition 2.14 ([67]) Let C be an
inhomogeneous set of cost functions, and
let I denote the singlecommodity instances
with a network that is a union ofpaths
and with cost functions in C. Then
p(I) > a(C).
The idea of the proof of Proposition 2.14
is to impose diversity by considering
the closure C of C under multiplication
by positive scalars, apply Proposition
2.13, and use multiple copies of edges
with cost functions in C to simulate
edges with cost functions in C.
Remark 2.15 The Pigou bound does
not apply to homogeneous sets C of cost
functions, where c(0) = 0 for all c E C. The
price of anarchy of selfish routing is not
completely understood for such sets; the
upper bound in the next subsection holds
for these sets, but it is not optimal. See [23]
for refined upper bounds on the price of
anarchy with respect to homogeneous sets
of sufficiently lowdegree polynomials.
2.3 Optimality of the Pigou Bound
With all the preliminaries in place, we
can now easily prove an upper bound on
the price of anarchy of selfish routing
that matches the Pigou bound. For
convenience, we first state a lemma that
follows immediately from Definition 2.6.
Lemma 2.16 Let C be a set of cost
functions and a(C) the Pigou bound
for C. For ce C and x, r > 0,
x c(x) > (r) + (x r)c(r).
a(C)
We now use this lemma and the variational
inequality of Proposition 2.4 to prove
the optimality of the Pigou bound.
Theorem 2.17 ([22, 67]) Let C be a
set of cost functions and a(C) the Pigou
bound for C. If(G, r, c) is an instance
with cost functions in C, then
p(G, r, c) < a(C).
1LI0TSI M 7 1
PAGE 5
JANUARY 2007
Proof: Letf* andf be an optimal flow and
a Wardrop equilibrium, respectively, for
an instance (G, r, c) with cost functions in
the set C. The theorem follows by writing
c(f') = E'( )f);
cCE
I ; A,), E 'f, + E((' f^)c(/)
c(f)
a(C)'
where for the first inequality we have
applied Lemma 2.16 to each edge e
with x = f* and r = f, and the second
inequality follows from Proposition 2.4. U
Theorem 2.17 implies that the lower
bounds on the price of anarchy in Examples
2.7 2.11 are the best possible. Thus the
price of anarchy of networks with linear
(or concave) cost functions is precisely
4/3; the price of anarchy of networks with
cost functions that are polynomials with
nonnegative coefficients and degree at most
p is precisely the righthand side of (5);
and the price of anarchy of instances with
sum of all traffic rates at most R cost
functions that are M/M/1 delay functions,
and service rates bounded below by u >
R is precisely the righthand side of (6).
Moreover, since the Pigou bound is
based only on the simplest of instances, the
matching upper bound of Theorem 2.17
implies that simple networks always furnish
worstpossible examples of the inefficiency
of selfish routing. Precisely, Propositions
2.122.14 and Theorem 2.17 give the
following corollary.
Corollary 2.18 Let C be a
set of cost functions.
(a) If C contains the constant functions,
then the price ofanarchy of instances
with cost functions in C is achieved,
up to an arbitrarily small factor, by
a singlecommodity instance with
a twonode, twolink network.
(b) IfC is diverse, then the price ofanarchy
of instances with cost functions in C
is achieved, up to an arbitrarily small
factor, by a singlecommodity instance
with a network ofparallel links.
(c) If C is inhomogeneous, then the price of
anarchy of instances with cost functions in
C is achieved, up to an arbitrarily small
factor, by a singlecommodity instance
with a network that is a union ofpaths.
Informally, Corollary 2.18 states that
the price of anarchy is controlled only by
the set of allowable cost functions, and
is essentially independent of the number
of commodities and of the complexity
of the allowable network topologies.
Remark 2.19 Theorem 2.17 has undergone
several iterations in just a few short years.
It was first proved for the special case
of linear cost functions in Roughgarden
and Tardos [74]. Roughgarden [63] then
proved Theorem 2.17 for boundeddegree
polynomials with nonnegative coefficients.
The proof in [63] was fairly complex and
did not explicitly take advantage of the
variational inequality given in Proposition
2.4. Roughgarden [65] extended this
proof and established Theorem 2.17 for all
sets of cost functions that satisfy a weak
technical condition (met by essentially all
cost functions that arise in applications).
Ronen [61] pointed out that Proposition 2.4
could be used to vastly simplify the proof
of Theorem 2.17, under the same technical
condition. This revised analysis appears in
[67]. Correa, Schulz, and Stier Moses [22]
then showed that, once the proof is based
on Proposition 2.4, it can be modified so
that no technical conditions whatsoever
are needed. The proof of Theorem 2.17
given above is taken from [22]. More
recently, two more proofs of Theorem
2.17 have been given by Tardos [82] and
Correa, Schulz, and Stier Moses [23].
3 Bounding Braess's Paradox
This section studies the worstpossible
severity of Braess's Paradox. Subsection
3.1 gives a construction that shows
that the severity of Braess's Paradox
can grow with the network size when
nonlinear cost functions and multiple
edge removals are permitted. Subsection
3.2 proves matching upper bounds for
singlecommodity networks. Subsection
3.3 gives a brief overview of Braess's
Paradox in multicommodity networks.
Finally, Subsection 3.4 presents negative
results for the computational problem
of efficiently detecting Braess's Paradox.
We omit many proofs from this section;
see [70] for the technical details.
3.1 A Bigger Braess's Paradox
The discovery of Braess's Paradox [11]
immediately intrigued researchers and
catalyzed numerous research directions
(see [72] for a survey). However, nearly all
of this work focused on Braess's original
fournode network (Figure 2) and variants
thereof. We next show that Braess's original
example is merely the tip of the iceberg:
Braess's Paradox can be arbitrarily severe
in large singlecommodity networks.
We measure the severity of Braess's
Paradox with the Braess ratiothe factor
by which the cost of a Wardrop equilibrium
exceeds that of an equilibrium in a
subnetwork.
Definition 3.1 The Braess ratio f(G, r, c)
of a singlecommodity instance (G, r, c) is
3(G, r, c) = max C(
HuCG C(f):
(7)
where H ranges over subnetworks of
G that contain an st path, andfand
fH denote Wardrop equilibria for (G,
r, c) and (H, r, c), respectively.
As with Definition 2.5, the Braess ratio
of an instance (G, r, c) is well defined
unless it admits a flow with zero cost, in
which case we define f(G, r, c) to be 1.
The Braess ratio in Example 1.2 is 4/3.
No larger Braess ratio is possible in single
commodity networks with linear cost
functions. This fact is a consequence of the
following close connection between the
price of anarchy and the Braess ratio.
Proposition 3.2 If(G, r, c) is a
singlecommodity instance, then
P(G, r, c) < p(G, r, c).
Proof: For every subgraph H of G, a
Wardrop equilibrium fH of (H, r, c) is a
feasible flow for (G, r, c); by the definition
of the price of anarchy, the cost offH is
at most a p(G, r, c) factor less than that of
a Wardrop equilibrium for (G, r, c). U
As promised, Theorem 2.17 and
Proposition 3.2 imply that every single
commodity instance with linear cost
functions has a Braess ratio of at most 4/3.
Exhibiting a family of instances with
arbitrarily large Braess ratios requires a new,
more complicated construction than those
we have seen so far. Proposition 3.2 implies
that such a family must make use of cost
0SP T I MA73
PAGE
1LI M 2I M00 7 AG
functions drawn from a sufficiently rich
set (such as polynomials with unbounded
degree). We encountered one such family
in the nonlinear variant of Pigou's example
(Subsection 1.1), but it is easy to see that all
of these instances have a Braess ratio of 1.
There is also an analogous nonlinear variant
of Example 1.2, obtained by replacing the
linear cost functions on the edges (s, v) and
(w, t) with the functions c(x) = x^ forp large.
The Braess ratios of these instances approach
2 as p > oo. As we will see in Subsection
3.2, a Braess ratio larger than 2 cannot
arise without allowing larger networks and
multiple edge removals.
Our main result in this subsection is the
following.
Theorem 3.3 ([72]) For every n > 2,
there is a singlecommodity instance
(G, r, c) with n vertices and
s( r. r.c) > ] .
S2
(b) B'
Figure 4: The second and third Braess
graphs. Edges are labeled with their types.
Proof: We can assume that n is even,
since the odd case reduces to the even
case by adding an isolated vertex. We
can also assume that n is at least 4. Write
n = 2k + 2 for a positive integer k.
We next define the kth Braess graph B.
Start with a set of 2k + 2 vertices V =
{s, v,1 ... ., ... t}. The edge set Ek
is the union of the sets {(s, vi), (vi, wi),
(wi, t) :1 < i k}, {(v,wi) : 2< i k}, and
{(v1, t)} u ( } (see Figure 4). Call edges
of the form (v ) the type A edges, edges of
the form (v .',,), ), and (v1, t) the type
B edges, and edges of the form (s, vi) and
(wi, t) the type C edges (see Figure 4). Note
that B1 is the graph in the original Braess's
Paradox (Figure 2(b)).
Define cost functions on the edges of B'
as follows.
(A) Type A edges are given the
cost function ck (x) = 0.
(B) Type B edges are given the
cost function ck (x) = 1.
(C) For each i E {1, 2 .. ., k}, the type
C edges (w, t) and (s, v, i+) are
given a continuous, nondecreasing
cost function ck (x) with
c (kl(k + 1)) = 0 and c (1) = i.
For i = 1, . k, let P denote the path
s > v. w > t. For i = 2, . k, let
Q, denote the path s > v, wi, t.
Define Q to be the path s v > t and
Qk+ the path s > > t. On one hand,
routing one unit of flow on each of
P,, . ., Pk yields a Wardrop equilibrium
f for (B k, c ) in which all traffic incurs
cost k + 1 (Figure 5(a)). On the other
hand, if His the subgraph obtained from
Bk by deleting the k type A edges, then
routing k/(k +1) units of flow on each of
Q, ... Qk yields a Wardrop equilibrium
fH for (H, k, Ck) in which all traffic incurs
only one unit of cost (Figure 5(b)). Thus
P(G, r, c) > C(f )C(fH) = k + 1 = n/2,
completing the proof. U
Remark 3.4 In the proof of Theorem
3.3, the subgraph Hwas obtained from
Bk by removing k edges. Thus, for
every positive integer k, there is a single
commodity instance for which removing k
edges can decrease the cost of a Wardrop
equilibrium by a factor of k +1.
Remark 3.5 The construction in
the proof of Theorem 3.3 can also
be adapted for restricted sets of cost
functions, such as polynomials. See [72]
for more details and further examples.
1 
3 3
(a) Wardrop equilibrium in (B 3, c )
1 0
(b) Wardrop equilibrium in
the optimal subgraph
Figure 5: Proof of Theorem 3.3, when
k = 3. Solid edges carry traffic in the
Wardrop equilibrium, dashed edges
do not. Edge costs are with respect
to the Wardrop equilibrium
3.2 A Matching Upper Bound
This subsection shows that, among
singlecommodity networks, the Braess
ratio is maximized by the networks
constructed in the proof of Theorem 3.3.
Theorem 3.6 ([72]) If(G, r, c) is a single
commodity instance with n vertices, then
,3(G, r, c) [ [ .
Following Lin, Roughgarden, and Tardos
[45], we will obtain Theorem 3.6 as a
consequence of a more general theorem. The
statement of this more general result uses the
following definition.
Definition 3.7 Let (G, r, c) be a single
commodity instance and S a subset of
the edges of G. The set S is sparse if no
two edges of S share an endpoint, and in
addition no edge of S is incident to s or t.
MAY 2007
PAGE /
0 MAY 2 P 8 A741
In other words, a set of edges is
sparse if and only if they form an
(undirected) matching of V\ {s, t}.
Our general bound on Braess's Paradox
states that the size of the largest sparse set
removed controls how much the cost of a
Wardrop equilibrium can decrease.
Theorem 3.8 ([45]) Let (G, r, c) be a
singlecommodity instance, H a subgraph
ofG, and fandf Wardrop equilibria for
(G, r, c) and (H, r, c), respectively. Let S
denote the edges in G but not H. If every
sparse subset ofS contains at most k edges, then
C(f) < (k+ 1). C(f).
Theorem 3.8 easily implies Theorem 3.6,
as well as an upper bound on the severity of
Braess's Paradox that is parameterized by the
number of edges removed.
Proof of Theorem 3.6: Since there are
only n 2 vertices of G that are not s or
t, every sparse set of edges has at most
L(n 2)/2 ] = [ n2 ] 1 edges. Theorem
3.8 now implies the theorem. E
The next corollary implies that the only
way to achieve arbitrarily large Braess ratios
is to allow an unlimited number of edge
removals, answering a question of Kameda
[37].
Corollary 3.9 ([45]) Removing k
edges from a singlecommodity network
decreases the cost ofa Wardrop equilibrium
by at most a factor ofk + 1.
Proof: Obvious from Definition
3.7 and Theorem 3.8. U
In particular, we noted earlier that simple
nonlinear variants on Braess's original
example achieve a Braess ratio arbitrarily
close to 2; if only a single edge removal
is allowed, then no singlecommodity
instance has a larger Braess ratio. More
generally, the construction in the proof
of Theorem 3.3 matches the bound of
Corollary 3.9 for every k (see Remark 3.4).
We now outline the proof of Theorem
3.8, which is more delicate than the upper
bounds on the price of anarchy given in
Section 2. In particular, the proof must be
sensitive to the number of network vertices,
whereas twonode networks typically
determine the price of anarchy (Corollary
2.18). Because of this, the proof of Theorem
3.8 has a stronger combinatorial flavor than
those in Section 2.
A key tool in the proof of Theorem 3.8 is
the following notion of an alternating path.
Definition 3.10 Letfand f be feasible
flows for the instance (G, r, c).
(a) An edge e of G is (ff )light if
f zf andf > 0, (ff)heavy iff >f, and
(ff)useless iff =4 = 0.
(b) An undirected path is (ff )alternating
if it comprises only forward (ff )light
edges and backward (ff )heavy edges.
When the context is clear, we drop
the dependence onfand from
the terms in Definition 3.10.
Example 3.11 Consider the Braess's Paradox
network (Figure 2(b)). Letf be the Wardrop
equilibrium and f the optimal flow, which
splits the traffic evenly between the paths
s > v > t and s > w > t. Then, edges
(s, v), (v,w), and (w, t) are (ff )heavy
while edges (s,w) and (v, t) are (ff )light.
The unique (ff )alternating st
path is s > w > v > t.
The next lemma states that, for every
pair of feasible flows, an st alternating path
exists. It is an easy consequence of flow
conservation arguments.
Lemma 3.12 Let fand f beflowsfeasible
for the singlecommodity instance
(G, r, c). Then, there is an (ff )alternating
st path. Moreover, iffis directed
acyclic, then every such path begins
and ends with an (ff )light edge.
The proof of Theorem 3.8 then proceeds
by induction along an alternating path,
repeatedly using the shortestpath structure
of a Wardrop equilibrium. Details are in
[70].
3.3 Multicommodity Networks
So far, this section has only studied Braess's
Paradox in singlecommodity networks.
We next briefly survey very recent results
ofLin et al. [46] on Braess's Paradox in
multicommodity networks. We define the
Braess ratio for such networks as follows.
For a multicommodity instance (G, r, c)
and a commodity i, let d(G, r, c) denote
the common cost incurred by all traffic of
commodity i in a Wardrop equilibrium
for (G, r, c). Note d(G, r, c) is well defined
by Definition 2.1 and Proposition 2.3.
Definition 3.13 The Braess ratio P(G, r, c)
of a multicommodity instance (G, r, c) is
k d,(G,r, c)
3(G, r. c) = max m r in
fci I=1 di(H,r, c)
where H ranges over the subnetworks of
G that contain an siti path for each i.
Thus the Braess ratio of a multicommodity
instance is large only if removing some
set of edges decreases the cost incurred
by the traffic of every commodity by a
large amount. Definitions 3.1 and 3.13
coincide in singlecommodity networks.
The upper bound on the Braess ratio
in Theorem 3.6 does not carry over to
multicommodity networks: Lin et al. [46]
showed that the Braess ratio can grow
exponentially with the network size, even in
twocommodity networks.
Theorem 3.14 ([46]) There is a family of
twocommodity networks {(G", r", c")}T1
such that G has O(n) vertices and edges
and p(G", r", c") = 2( as n > o.
In fact, the construction in the proof
of Theorem 3.14 shows the following:
adding a single edge to a twocommodity
network (G", r", c") with O(n) vertices
and edges, d,(G", r", c") = 0, and
d(G", r", c") = 1 can increase the common
cost incurred by traffic of the two
commodities to roughly the (n 1)th and
nth Fibonacci numbers, respectively.
On the other hand, the Braess ratio is
always at most exponential in the network
size.
Theorem 3.15 ([46]) There is a constant
a > 0 such that for every k, n > 1 and
every instance (G, r, c) with k commodities
and n vertices, P(G, r, c) < 2"A.
The proof of Theorem 3.15 actually
shows the stronger statement that iff is a
Wardrop equilibrium for the kcommodity,
nvertex instance (G, r, c) andf is feasible
for (G, r, c), then the maximum cost
max, d(G, r, c) incurred by traffic infis
20(k) times the maximum cost incurred
by traffic inf. The question of whether
or not the 1 o''rp. . lp Braess ratio of
multicommodity networks depends on
the number of commodities is open.
MAY 2007
PAGER
MAY 2007
3.4 Detecting Braess's Paradox Is
Hard
Previous results of this section were
devoted to the analysis of the worst
case severity of Braess's Paradox. Braess's
Paradox also suggests a natural algorithmic
question: given a network, is it suffering
from the paradox? If so, which edges
should be removed to recover the best
possible Wardrop equilibrium?
This innocuous question turns out to
be extremely difficult to answer, in a sense
we make precise below. To keep things
simple, we will initially consider only
singlecommodity networks with linear cost
functions. Detecting Braess's Paradox can
be phrased as an optimization problem as
follows: given a singlecommodity instance
(G, r, c) with linear cost functions, find
a subnetwork that minimizes the cost
of a Wardrop equilibrium for (H, r, c)
over all subnetworks H c G. We call this
optimization problem LINEAR NETWORK
DESIGN.
LINEAR NETWORK DESIGN can be
solved by enumerating all subgraphs H of
G, computing a Wardrop equilibrium in
each, and picking the best solution. (Since
Wardrop equilibria are the minima of the
convex function in (1), one can be computed
using convex programming.) On the other
hand, there may be an exponential number
of candidate subnetworks H. How well can
we solve this optimization problem if we use
only a reasonable amount of computational
resources?
We will use basic concepts of
computational complexity theory as
described in, for example, Garey and
Johnson [30]. Recall that a yapproximation
algorithm for a minimization problem runs
in polynomial time and returns a solution
no more than y times as costly as an optimal
solution. The value yis the approximation
ratio or performance guarantee of the
algorithm.
While we would obviously like to solve
LINEAR NETWORK DESIGN optimally in
polynomial time, a natural weaker goal is
to design a yapproximation algorithm with
yas close to 1 as possible. Of course, even
the trivial algorithm, which always returns
the entire network G, can be viewed as
an approximation algorithm for LINEAR
NETWORK DESIGN. Because the Braess ratio
of every network with linear cost functions
is at most 4/3 (Proposition 3.2), we have the
following guarantee on the trivial algorithm.
Proposition 3.16 The trivial algorithm
is a 4approximation algorithm for
LINEAR NETWORK DESIGN.
Needless to say, we should aspire to design
better, more clever approximation algorithms.
Alas, none exist, assuming P NP.
Theorem 3.17 ([72]) For every e > 0, there
is no (t e)approximation algorithm for
Linear Network Design (unless P = NP).
Proof: We give a polynomialtime "gap
reduction" from the NPcomplete problem
2 DIRECTED DISJOINT PATHS (2DDP)
[26]: given a directed graph G = (VE)
and distinct vertices s s,, t, t E V,
are there sit, paths P for i = 1, 2, such
that P1 and P2 are vertexdisjoint? We
can prove the theorem by showing how
a ( e)approximation algorithm for
LINEAR NETWORK DESIGN can be used
to differentiate between "yes" and "no"
instances of 2DDP in polynomial time.
Figure 6: Proof of Theorem 3.17.
In a "no" instance of 2DDP, the
existence of s,t, and s,t, paths implies
the existence of an slt, path.
Consider an instance I of 2DDP, as
above. Augment the vertex set Vby an
additional source s and sink t, and include
the directed edges (s, s1), (s, s2), (t1, t),
and (t, t) (see Figure 6). Denote the new
network by G'= (V',E') and endow the
edges of E'with the following linear cost
functions c: edges of are given the cost
function c(x) = 0, edges (s, s,) and (t1, t) are
given the cost function c(x) = x, and edges
(s, s,) and (t2, t) are given the cost function
c(x) = 1. The instance (G', 1, c) can be
constructed from in polynomial time.
The theorem is implied by the following
two statements (the brief proofs of which
we omit): if is a "yes" instance of 2DDP,
then G'admits a subnetwork H such that
a Wardrop equilibrium for (H, 1, c) has
cost 3/2; and if is a "no" instance, then
for every subnetwork H of G', a Wardrop
equilibrium for (H, 1, c) has cost at least 2. E
Thus, no polynomialtime algorithm
for LINEAR NETWORK DESIGN has an
approximation ratio superior to that of
the trivial algorithm. Equivalently, it is
NPhard to distinguish between "paradox
free" instances (with Braess ratio 1) and
instances suffering from the most severe
manifestations of the paradox (with Braess
ratio 4/3).
While we have only established the
optimality of the trivial algorithm for
networks with linear cost functions,
similar results hold with other sets of
allowable edge cost functions. For example,
let GENERAL NETWORK DESIGN be the
analogous optimization problem for single
commodity networks with arbitrary cost
functions. Theorem 3.6 implies that the
trivial algorithm is a L n/2 approximation
algorithm for GENERAL NETWORK
DESIGN, where n is the number of network
vertices. On the other hand, the following
inapproximability result holds.
Theorem 3.18 ([72]) Assuming
P NP, for every e > 0 there is no
(L ni2 1 ) approximation algorithm
for General Network Design.
The proof of Theorem 3.18 is somewhat
involved and makes use of the Braess
graphs that were introduced in the
proof of Theorem 3.3. For the proof,
and similar results for other sets of
allowable cost functions, see [72]. For
analogous intractability results for
multicommodity networks, which build
on the twocommodity networks alluded
to in Theorem 3.15, see Lin et al. [46].
4 Coping with Selfishness: How To
Reduce the Price of Anarchy
We have seen that the price of anarchy of
selfish routing can be large in networks
with highly nonlinear cost functions,
including with functions that are common
in applications, such as M/M/1 delay
functions. This final technical section
asks: other than somehow enforcing
optimal routing, what can we do about
it? Can modest intervention, when
feasible, significantly reduce the price
of anarchy? We briefly discuss three
techniques for mitigating the inefficiency
of selfish routing: increasing the capacity
of the network (Subsection 4.1), routing
1LII PI "4
PAGE 9
0PTIMA74
MAY 2007
a small amount of traffic centrally
(Subsection 4.2), and influencing traffic
with edge taxes (Subsection 4.3).
4.1 Capacity Augmentation
For the rest of this survey we study networks
with arbitrary cost functions, where the
price of anarchy is unbounded. We next
show that a bound on the inefficiency
of selfish routing in such networks is
nonetheless possible, via a socalled bicriteria
approach. Specifically, our next result is
that the cost of a Wardrop equilibrium
is at most that of an optimal flow that
is forced to route twice as much traffic
between each sourcesink pair. We will see
that this result has the following alternative
interpretation: in lieu of centralized control,
the inefficiency of selfish routing can be
offset by a moderate increase in link speed.
Example 4.1 Consider the nonlinear variant
of Pigou's example (Figure l(b)): a twonode,
twolink network with cost functions
c(x) = 1 and c(x) = x forp large. Recall
that with one unit of traffic, the Wardrop
equilibrium routes all flow on the lower
edge, while the optimal flow routes e
units of flow on the upper edge and
the rest on the lower edge (where
e > 0 as p > o). When the traffic rate
r exceeds one, an optimal flow assigns
the additional r 1 units of traffic to the
upper link, incurring a cost that tends to
r 1 asp > oo. In particular, for every
p an optimal flow feasible for twice the
original traffic rate (r = 2) has cost at least
1, which equals the cost of the Wardrop
equilibrium in the original instance.
We now show that the bound stated in
Example 4.1 holds for all instances.
Theorem 4.2 ([74]) Iff is a Wardrop
equilibrium for (G, r, c) andf*
isfeasiblefor (G, 2r, c), then
C(f) C(f*).
Proof Letfandf* denote a Wardrop
equilibrium for (G, r, c) and a feasible
flow for (G, 2r, c), respectively. For each
commodity i, let d(G, r, c) denote the
common cost incurred by the traffic of
commodity i in the flowf (see Definition
3.13). Definition 2.1 and the definition of
cost (3) imply that C(f) = 1i rd(G, r, c).
t cjfj/
0
flow 
(a) Graph of the cost function ce and
its value at the flow value
i c( 
flow 
(b) Graph of the cost function c
Figure 7: Construction in the proof of
Theorem 4.2 of the modified cj given
the original cost function c and the
Wardrop equilibrium value. Solid
lines denote graphs of functions.
The key idea is to define a set of cost
functions c that satisfies two properties:
lower bounding the cost off relative to that
off is easy with respect to c; and the new
cost functions c approximate the original
ones c, in the sense that the cost off*with
respect to c is close to its original cost.
Specifically, we define c(x) = max{c (x),
cj(f)} for each edge e and x > 0. Figure 7
illustrates this construction. Let C(.) denote
the cost of a flow in the instance (G, r, c).
Note that C(f*) > C(f*) while C(f) = C(f).
We first upper bound the amount by
which the new cost C(f*) off* can exceed
its original cost C(f*). For every edge e,
c(x)c(x) is zero for x >f and bounded
above by c (f) for x
x(,(x) < c(f )f (8)
for all x > 0. The lefthand side of (8)the
discrepancy between x c(x) and xc (x)is
maximized when x is slightly smaller
than and when c (x) = 0. In this case,
the value of the lefthand side of (8) is
essentially the area of the rectangle enclosed
by dashed lines in Figure 7(a), which in
turn is the cost incurred by the Wardrop
equilibriumfon the edge e. Thus
('(f) ( f*) = ( )
S E
In other words, evaluating f* with cost
functions c, rather than c, increases its
cost by at most an additive C(f) factor.
Now we lower bound C(f*). By
construction, the modified cost c'(.) of
an edge e is always at least c (f), so the
modified cost c,(.) of a path P E P is
always at least c, (f), which in turn is at
least d(G, r, c). Therefore,
k
PEP I=1 I' P
S2rid,(G,r. c) = 2C(f). (10)
i=1
The theorem now follows immediately
from inequalities (9) and (10). E
Remark 4.3 Example 4.1 shows that the
bound in Theorem 4.2 is the best possible.
Another interpretation of Theorem 4.2
is that the benefit of centralized control
is equaled or exceeded by the benefit of a
sufficient improvement in link technology.
Corollary 4.4 ([66]) Let (G, r, c) be an
instance and define the modified cost function
c by c(x) = c(x/2)/2 for each edge e. Letfbe
a Wardrop equilibrium for (G, r, c)
with cost C(f ), andf* a feasible flow for
(G, r, c) with cost C(f*). Then C( f) C(f*).
Simple calculations show that Theorem
4.2 and Corollary 4.4 are equivalent;
for details, see [66] or [70].
Corollary 4.4 takes on a particularly nice
form in instances in which all cost functions
are M/M/1 delay functions (Example 2.11).
In this case, if the cost function c of edge
e is ce(x) = (u, x) then the modified
function c is c(x) = 1/2(ue x/2) =
1/(2u x). Corollary 4.4 thus offers the
following advice for networks where cost
functions are M/M/1 delay functions and
capacity is cheap: to outperform optimal
routing, just double the capacity of every edge.
4.2 Stackelberg Routing
A second approach to reducing the price of
anarchy, also explored in [66], is to allow a
small portion of the network traffic to be
routed centrally. We will call this Stn ckelbe: g
PAGE 10
1L0 PTI MP E 4
MAY 2007
routing, after a concept from noncooperative
game theory called Stackelberg games
[83]. In the interest of space, we only
describe our model of Stackelberg
routing informally, via two examples.
Example 4.5 To understand the potential
power of Stackelberg routing, consider
the nonlinear variant of Pigou's example
(Figure l(b)) with p large. Suppose we are
granted the ability to route a ye [0, 1]
fraction of the traffic as we wish, knowing
that the other (1 y) fraction of the traffic
will then choose routes selfishly, as usual.
(Definition 2.1 thus governs the routes
chosen by selfish traffic, but not by the
centrally routed traffic.) We will call a
routing of the centrally controlled traffic a
Srnckelbeg . ..i Observe that for every
Stackelberg strategy, the selfish traffic
will use the lower edgethe upper route
is never attractive to selfish users, even if
the lower one is fully congested. On the
other hand, if we route some traffic on the
upper edge ourselves, the cost of the overall
solution decreases. In particular, if yis
sufficiently large, we can mimic the optimal
flow on the upper edge (routing excess
traffic on the lower edge) and induce the
optimal flow. Thus Stackelberg routing can
decrease, or even eradicate, the inefficiency
of selfish routing in this example.
Example 4.6 Stackelberg routing also has
its limitations. Suppose we modify Example
4.5 by replacing the cost function c(x) =
X of the lower edge in Figure l(b) by the
cost function c(x) = //(1yf, where yis
the fraction of traffic that we are permitted
to route centrally. The key observation is
that no matter how the centrally controlled
traffic is routed, there is enough selfish
traffic to fully congest the lower edge.
Therefore, Stackelberg strategies that
route at most y units of traffic cannot
produce a flow with cost less than 1. On
the other hand, the optimal flow, which
routes y+ e units of flow on the upper
edge and the rest on the lower edge, has
cost approaching yasp > o and e > 0.
Stackelberg routing was first proposed
by Korilis, Lazar, and Orda [42], who
were motivated by socalled virtual
private networks (see e.g. Birman [9] for
a discussion ofVPNs). The main goal in
[42] was to characterize the instances in
which some Stackelberg strategy induces
an optimal flow (as in Example 4.5).
This problem has also been studied more
recently by Kaporis, Politopoulou, and
Spirakis [38]. Here we follow Roughgarden
[69] and seek worstcase bounds on the
ratio between the cost of the best flow
possible with Stackelberg routing and
that of an optimal flow. Example 4.6
shows that, for each ye(0, 1], this ratio
can be arbitrarily close to 1/y even in
twonode, twolink networks. One of the
main results of [69] is a matching upper
bound for networks of parallel links.
Theorem 4.7 ([69]) For every instance
(G, r, c) with a network ofparallel links
and every y (0, 1], there is a St.ackelbc:g
;, that routes yr units of traffic and
yields a flow with cost at most 1/y times
the cost ofan optimal flow for (G, r, c).
Theorem 4.7 provides a smooth trade
off between optimal flows and Wardrop
equilibria, as a function of the fraction of
centrally controlled traffic. When y= 0,
we are stuck with a Wardrop equilibrium,
which can cost arbitrarily more than an
optimal flow in a network with arbitrary
cost functions. When y= 1 and we control
all of the traffic, we can of course route the
traffic optimally. Example 4.6 and Theorem
4.7 precisely quantify the inefficiency of
selfish routing for all intermediate values
of y (in networks of parallel links).
Remark 4.8 The proof of Theorem
4.7 is constructive, and uses a simple
iterative algorithm to compute a good
Stackelberg strategy. This algorithm runs
in polynomial time as long as the network
cost functions satisfy a mild convexity
condition (see [69] for details). While this
algorithm is sufficient to obtain the best
possible worstcase guarantee in Theorem
4.7, it does not compute the optimal
Stackelberg strategy in every instance.
Indeed, the optimization problem of
computing an optimal Stackelberg strategy
is NPhard [69], though it can be closely
approximated in polynomial time [44].
Theorem 4.7 applies only to networks of
parallel links, and the power of Stackelberg
routing in more general networks is not
fully understood. The 1/yupper bound of
Theorem 4.7 does not hold in general single
commodity networks, and no interesting
bounds are possible in multicommodity
networks [70]. Very recently, Swamy [81]
proved an analogue of Theorem 4.7, with
1/yreplaced by a somewhat larger function
of y for a wide class of networks, including
seriesparallel networks and the Braess
graphs of Subsection 3.1. The question
of whether or not such a result holds for
general singlecommodity networks is open.
4.3 Pricing Network Edges
We conclude with a third, very natural
approach to reducing the price of anarchy of
selfish routing: influencing selfish behavior
with edge taxes. While not discussed in
[66], this idea has been extensively studied
since the earliest papers on selfish routing.
The literature on pricing selfish routing
networks is vast, and we will confine our
attention to only one classical result and
two currently active research directions.
See Yang and Huang [88], for example,
for an introduction to this research area.
Pigou [58] suggested what are often
called marginal cost taxes or Pigouvian
taxes. The idea of marginal cost pricing is
to charge each network user on each edge
for the additional cost its presence causes
for the other users of the edge. To discuss
this idea formally, we now allow each edge
e of a selfish routing network to possess
a nonnegative tax T. We denote a selfish
routing instance (G, r, c) with edge taxes z
by (G, r, c + r). A Wardrop equilibrium for
such an instance (G, r, c+ z) is defined as in
Definition 2.1, with all traffic traveling on
routes that minimize the sum of the edge
costs and edge taxes. Equivalently, it is a
Wardrop equilibrium for the instance
(G, r, c), where the cost function I is a
shifted version of the original cost function
c: c (x) = c (x) + 7 for all x > 0.
Mathematically, the principle of marginal
cost pricing asserts that for a flowf feasible
for an instance (G, r, c), the tax 7 assigned
to the edge e should be 7 =f c'(f), where
c' denotes the derivative of c. (Assume
for simplicity that the cost functions are
differentiable.) The term c'(f ) corresponds
to the marginal increase in cost caused by
one user of the edge, and the term is the
amount of traffic that suffers from this
increase. Pigou [58] suggested that these
taxes should eliminate all of the inefficiency
of selfish routing, and Beckmann, McGuire,
and Winsten [6] made this idea rigorous.
PAGE 11
0PTIMA74
MAY 2007
Proposition 4.9 ([6, 58]) Let (G, r, c)
be an instance with differentiable cost
functions, admitting an optimalflow f .
Let 7 = f* c'(f* ) denote the marginal
cost tax for edge e with respect f Then f*
is a Wardrop equilibrium for (G, r, c + r).
In words, marginal cost taxes induce an
optimal flow as a Wardrop equilibrium.
Much more recently, researchers have
extended Proposition 4.9 to the setting of
heterogeneous traffic, where different classes
of traffic trade of the cost incurred; see [18,
25, 40, 87] for work along these lines. In
another research direction, Acemoglu and
Ozdaglar [1], Hayrapetyan, Tardos, and
Wexler [33], and Ozdaglar [54] study how
edge pricing by profitmaximizing firms
affects the price of anarchy. See Yang and
Huang [88] for much more on the topic of
pricing selfish routing networks.
5 Recent Related Work
This survey describes the basic results on the
price of anarchy of selfish routing. However,
we have only scratched the surface of a
broader issue: quantifying the inefficiency
of noncooperative equilibria in applications
with selfish users. This fundamental problem
has only recently been systematically
studied, but there is already a large literature
addressing many aspects of it. We conclude
this survey by briefly discussing some of
the recent work in this lively research area.
First, the price of anarchy has been
analyzed in numerous variants and
generalizations of the basic selfish routing
model studied in this survey. Several recent
papers have extended Theorem 2.17 to
more general classes of games [14, 56, 75].
The price of anarchy of selfish routing has
also been studied with objective functions
other than (3) [21, 46, 64, 68, 86]; with
edge capacities and other types of "side
constraints" [22, 34, 39]; when the traffic
rates can vary with the network congestion
[14, 19]; when network users can have non
negligible size [3, 4, 5, 17, 20, 23, 27, 41, 71,
74, 80]; and with definitions of path cost
c, (f ) other than the sum of all edge costs
[5, 19].
Second, the price of anarchy is a very
general conceptapplicable to every
noncooperative game with a notion of
equilibrium and a nonnegative objective
function. In games where different equilibria
can have different objective function values,
the price of anarchy is usually defined as
the ratio between the objective function
value of the worst equilibrium and that
of an optimal solution [43]. The related
concept of the price of stability [3] instead
considers the objective function value of
the best equilibrium. The price of anarchy
and price of stability have been successfully
analyzed in a diverse array of applications
with selfish users over the past few years. See
[51, Chapters 1721] for several surveys of
this work.
Third, researchers have begun to study
the inefficiency of different notions of a
selfish outcome. For example, Goemans,
Mirrokni, and Vetta [31, 48] have extended
the concept of the price of anarchy to
games in which equilibria need not exist.
The work in [31, 48] is also motivated by
the important problem of understanding
when a small price of anarchy implies that
selfish users can "learn", by independent
and repeated experimentation from an
arbitrary initial state, an approximately
optimal outcome. Another example is given
by Christodoulou and Koutsoupias [16],
who studied the inefficiency of correlated
equilibria in scheduling games.
Finally, an emerging research direction
is to use the price of anarchy as a measure
for the performance of a network
protocol that interacts with selfish users.
This idea connects the analysis of the
inefficiency of gametheoretic equilibria
with mechanism design, a classical subfield
of microeconomics that studies how to
design games that possess equilibria with
good properties (see e.g. [47, Chapter 23]
or [53, Chapter 10]). For example, Johari
[35, Chapter 5] considers a class of network
resource allocation protocols, each of which
can be viewed as a game with selfish users,
and proves that a natural "proportional
sharing" protocol minimizes the (worstcase)
inefficiency of equilibria. A second example
is the recent work by Chen, Roughgarden,
and Valiant [15] that analyzes how the price
of stability in a class of network design
games [3] depends on the choice of an
underlying costsharing protocol.
Acknowledgements
I have been lucky to benefit from the advice
and assistance of many individuals while
working on the research described in this
survey. The list is too long to give here, but
I must mention Eva Tardos, who supervised
my doctoral thesis [66] and collaborated
with me on much of the work described
in this survey; Leonard Schulman, who
introduced me to selfish routing; and
Christos Papadimitriou, who asked about
the price of anarchy of selfish routing.
In addition, I thank Jos6 Correa, Henry
Lin, David Shmoys, Mukund Sundararajan,
and Greg Valiant for helpful comments on
an earlier draft. Finally, I thank Alberto
Caprara for inviting me to write this survey,
and for his patience throughout the writing
process.
References
[1] D. Acemoglu and A. Ozdaglar. Flow control,
routing, and performance from service
provider viewpoint. Technical Report
WP1696, MIT LIDS, 2003.
[2] R. K. Ahuja, T. L. Magnanti, and J. B.
Orlin. Network Flows: Theory, Algorithms,
andApplications. PrenticeHall, 1993.
[3] E. Anshelevich, A. Dasgupta, J. Kleinberg,
E. Tardos, T. Wexler, and T. Roughgarden.
The price of stability for network design
with fair cost allocation. In Proceedings of
the 45th Annual Symposium on Foundations
of Computer Science (FOCS), pages 295
304, 2004.
[4] B. Awerbuch, Y. Azar, and L. Epstein.
The price of routing unsplittable flow.
In Proceedings of the 37th AnnualACM
Symposium on Theory of Computing (STOC),
pages 5766, 2005.
[5] R. Banner and A. Orda. Bottleneck routing
games in communication networks.
In Proceedings of the 25th INFOCOM
Conference, 2006.
[6] M. J. Beckmann, C. B. McGuire, and C.
B. Winsten. Studies in the Economics of
Transportation. Yale University Press, 1956.
[7] D. P. Bertsekas and R. G. Gallager. Data
Networks. PrenticeHall, 1987. Second
Edition, 1991.
[8] D. P. Bertsekas and J. N. Tsitsiklis. Parallel
and Distributed Computation: Numerical
Methods. PrenticeHall, 1989. Second
Edition, Athena Scientific, 1997.
[9] K. P. Birman. Building Secure and Reliable
Network Applications. Manning, 1996.
[10] D. E. Boyce, H. S. Mahmassani, and A.
Nagurney. A retrospective of Beckmann,
McGuire, and Winsten's Studies in the
Economics of Transportation. Papers in
RegionalScience, 84(1):85103, 2005.
[11] D. Braess. Ober ein Paradoxon aus der
Verkehrsplanung. Unternehmensforschung,
12:258268, 1968. English translation in
[12].
[12] D. Braess. On a paradox of traffic planning.
Transportation Science, 39(4):446450,
2005.
PAGE 12
MAY 2007
[13] D. G. Cantor and M. Gerla. Optimal
routing in a packetswitched computer
network. IEEE Transactions on Computers,
23(10):10621069, 1974.
[14] C. K. Chau and K. M. Sim. The price of
anarchy for nonatomic congestion games
with symmetric cost maps and elastic
demands. Operations Research Letters,
31(5):327334, 2003.
[15] H. Chen, T. Roughgarden, and G. Valiant.
Designing networks with good equilibria.
Submitted, 2007.
[16] G. Christodoulou and E. Koutsoupias.
On the price of anarchy and stability of
correlated equilibria of linear congestion
games. In Proceedings of the 13th Annual
European Symposium on Algorithms (ESA),
pages 5970, 2005.
[17] G. Christodoulou and E. Koutsoupias. The
price of anarchy of finite congestion games.
In Proceedings of the 37th AnnualACM
Symposium on Theory of Computing (STOC),
pages 6773, 2005.
[18] R. Cole, Y. Dodis, and T. Roughgarden.
Pricing network edges for heterogeneous
selfish users. In Proceedings of the 35th
AnnualACM Symposium on Theory of
Computing (STOC), pages 521530, 2003.
[19] R. Cole, Y. Dodis, and T. Roughgarden.
Bottleneck links, variable demand, and the
tragedy of the commons. In Proceedings of
the 16th AnnualACMSIAM Symposium
on Discrete Algorithms (SODA), pages
668677, 2006.
[20] R. Cominetti, J. R. Correa, and N. E.
Stier Moses. Network games with atomic
players. In Proceedings of the 33rdAnnual
International Colloquium in Automata,
Languages, and Programming (ICALP),
volume 4051 of Lecture Notes in Computer
Science, pages 525536, 2006.
[21] J. R. Correa, A. S. Schulz, and N. E. Stier
Moses. Computational complexity, fairness,
and the price of anarchy of the maximum
latency problem. In Proceedings of the
10th Conference on Integer Programming
and Combinatorial Optimization (IPCO),
volume 3064 of Lecture Notes in Computer
Science, pages 5973, 2004.
[22] J. R. Correa, A. S. Schulz, and N. E.
Stier Moses. Selfish routing in capacitated
networks. Mathematics of Operations
Research, 29(4):961976, 2004.
[23] J. R. Correa, A. S. Schulz, and N. E. Stier
Moses. On the inefficiency of equilibria
in congestion games. In Proceedings of the
11th Conference on Integer Programming and
Combinatorial Optimization (IPCO), pages
167181, 2005.
[24] P. Dubey. Inefficiency of Nash equilibria.
Mathematics of Operations Research, 11(1):1
8, 1986.
[25] L. K. Fleischer, K. Jain, and M. Mahdian.
Tolls for heterogeneous selfish users in
multicommodity networks and generalized
congestion games. In Proceedings of the
45th Annual Symposium on Foundations of
Computer Science (FOCS), pages 277285,
2004.
[26] S. Fortune, J. E. Hopcroft, and J. Wyllie.
The directed subgraph homeomorphism
problem. Theoretical Computer Science,
10(2):111121, 1980.
[27] D. Fotakis, S. C. Kontogiannis, and P.
G. Spirakis. Selfish unsplittable flows.
Theoretical Computer Science, 348(23):
226239, 2005.
[28] E. J. Friedman. Genericity and congestion
control in selfish routing. In Proceedings
of the 43rdAnnual IEEE Conference on
Decision and Control (CDC), pages 4667
4672, 2004.
[29] R. G. Gallager. A minimum delay routing
algorithm using distributed computation.
IEEE Transactions on Communications,
25(1):7385, 1977.
[30] M. R. Garey and D. S. Johnson. Computers
and Intractability: A Guide to the Theory of
NPCompleteness. Freeman, 1979.
[31] M. X. Goemans, V. S. Mirrokni, and A.
Vetta. Sink equilibria and convergence. In
Proceedings of the 46th Annual Symposium
on Foundations of Computer Science (FOCS),
pages 142151, 2005.
[32] A. Haurie and P. Marcotte. On the
relationship between NashCournot and
Wardrop equilibria. Networks, 15(3):295
308, 1985.
[33] A. Hayrapetyan, E. Tardos, and T. Wexler.
A network pricing game for selfish traffic.
In Proceedings of the 24th ACM Symposium
on Principles ofDistributed Computing
(PODC), pages 284291, 2005.
[34] O. Jahn, R. Mohring, A. S. Schulz, and
N. E. Stier Moses. Systemoptimal routing
of traffic flows with user constraints in
networks with congestion. Operations
Research, 53(4):600616, 2005.
[35] R. Johari. "" Loss in Market
Mechanisms for Resource Allocation. PhD
thesis, MIT, 2004.
[36] R. Johari and J. N. Tsitsiklis. Efficiency
loss in a network resource allocation
game. Mathematics of Operations Research,
29(3):407435, 2004.
[37] H. Kameda. Private communication, June,
2002.
[38] A. C. Kaporis, E. I. Politopoulou, and
P. G. Spirakis. The price of optimum
in Stackelberg games. Technical Report
TR05055, ECCC, 2005.
[39] G. Karakostas and S. G. Kolliopoulos.
Selfish routing in the presence of side
constraints. Technical Report CAS03
13GK, Department of Computing and
Software, McMaster University, 2003.
[40] G. Karakostas and S. G. Kolliopoulos.
Edge pricing of multicommodity networks
for heterogeneous selfish users. In
Proceedings of the 45th Annual Symposium
on Foundations of Computer Science (FOCS),
pages 268276, 2004.
[41] S. C. Kontogiannis and P. G. Spirakis.
Atomic selfish routing in networks: A
survey. In Proceedings of the FirstAnnual
International Workshop on Internet and
Network Economics (WINE), volume 3828
of Lecture Notes in Computer Science, pages
989 1002, 2005.
[42] Y. A. Korilis, A. A. Lazar, and A.
Orda. Achieving network optima using
Stackelberg routing strategies. IEEE/ACM
Transactions on Networking, 5(1):161173,
1997.
[43] E. Koutsoupias and C. H. Papadimitriou.
Worstcase equilibria. In Proceedings of
the 16th Annual Symposium on Theoretical
Aspects of Computer Science (STACS),
volume 1563 of Lecture Notes in Computer
Science, pages 404413, 1999.
[44] V. S. Anil Kumar and M. V. Marathe.
Improved results for Stackelberg scheduling
strategies. In Proceedings of the 29th Annual
International Colloquium on Automata,
Languages, and Programming (ICALP),
volume 2380 of Lecture Notes in Computer
Science, pages 776787, 2002.
[45] H. Lin, T. Roughgarden, and E. Tardos.
A stronger bound on Braess's Paradox. In
Proceedings of the 15th AnnualACMSIAM
Symposium on Discrete Algorithms (SODA),
pages 333334, 2004.
[46] H. Lin, T. Roughgarden, E. Tardos,
and A. Walkover. Braess's Paradox,
Fibonacci numbers, and exponential
inapproximability. In Proceedings ofthe
32ndAnnual International Colloquium on
Automata, Languages, and Programming
(ICALP), volume 3580 of Lecture Notes in
Computer Science, pages 497512, 2005.
[47] A. MasColell, M. D. Whinston, and J.
R. Green. Microeconomic Theory. Oxford
University Press, 1995.
[48] V. S. Mirrokni and A. Vetta. Convergence
issues in competitive games. In Proceedings
of the 7th International Workshop on
Approximation Algorithms for Combinatorial
Optimization Problems (APPROX), pages
183194, 2004.
[49] D. Monderer and L. S. Shapley. Potential
games. Games andEconomic Behavior,
14(1):124143, 1996.
[50] J. F. Nash. Noncooperative games. Annals
ofMathematics, 54(2):286295, 1951.
[51] N. Nisan, T. Roughgarden, E. Tardos, and
V. V. Vazirani, editors. Algorithmic Game
Theory. Cambridge, 2007.
[52] A. Orda, R. Rom, and N. Shimkin.
Competitive routing in multiuser
communication networks. IEEE/ACM
Transactions on Networking, 1(5):510521,
1993.
[53] M. J. Osborne and A. Rubinstein. A Course
in Game Theory. MIT Press, 1994.
10 P T I MA 4
PAGE 13
MAY 2007
MIP 2007: Workshop on Mixed Integer Programming
July 30August 2, 2007
The fourth Workshop on Mixed
Integer Programming (MIP 2007)
will be held at the CRM, Universit6
de Montr&al, Canada during July
30August 2, 2007. The workshop is
open for participation. The program
will be composed of a limited
number of invited talks organized in
a single track. In addition, there will
be a contributed poster session and
all participants are invited to submit
an abstract for the poster session.
Conference Web site www.crm.umontreal.ca/MIP2007
Speakers
Shabbir Ahmed
Egon Balas
Dimitris Bertsimas
Dan Bienstock
Jacques Desrosiers
Ismael de Farias
Volker Kaibel,
Simge Kucukyavuz
Eva Lee
Yanjun Li
Jeff Linderoth
Andrea Lodi
Quentin Louveaux
Francois Margot
George Nemhauser
Gabor Pataki
Ron Rardin
Suvrajeet Sen
Cole Smith
Francois Soumis
Mohit Tawarmalani
Annegret Wagler
Laurence Wolsey
Program Committee
Oktay Gunluk
Matthias Koeppe
Andrew Miller
JeanPhilippe Richard
Local Committee
Odile Marcotte
Jacques Desrosiers.
[54] A. Ozdaglar. Price competition with elastic
traffic. Submitted, 2006.
[55] C. H. Papadimitriou. Algorithms, games,
and the Internet. In Proceedings of the
33rdAnnualACM Symposium on Theory of
Computing (STOC), pages 749753, 2001.
[56] G. Perakis. The price of anarchy when
costs are nonseparable and asymmetric.
In Proceedings of the 10th Conference on
Integer Programming and Combinatorial
Optimization (IPCO), volume 3064 of
Lecture Notes in Computer Science, pages
4658, 2004.
[57] A. L. Peressini, F. E. Sullivan, and J. J.
Uhl, Jr. The Mathematics ofNonlinear
Programming. Springer, 1988.
[58] A. C. Pigou. The Economics of Welfare.
Macmillan, 1920.
[59] L. Qiu, Y. R. Yang, Y. Zhang, and S.
Shenker. On selfish routing in Internet
like environments. In Proceedings of
SIGCOMM, pages 151162, 2003.
[60] A. Rapoport and A. M. Chammah.
Prisoner's Dilemma. University of Michigan
Press, 1965.
[61] A. Ronen. Private communication, March,
2002.
[62] R. W. Rosenthal. A class of games
possessing purestrategy Nash equilibria.
InternationalJournal of Game Theory,
2(1):6567, 1973.
[63] T. Roughgarden. The price of anarchy in
networks with polynomial edge latency.
Technical Report 20011847, Cornell
University, 2001.
[64] T. Roughgarden. How unfair is optimal
routing? In Proceedings of the 13th Annual
ACMSIAM Symposium on Discrete
Algorithms (SODA), pages 203204, 2002.
[65] T. Roughgarden. The price of anarchy
is independent of the network topology.
In Proceedings of the 34th AnnualACM
Symposium on Theory of Computing
(STOC), pages 428437, 2002.
Preliminary version of [67].
[66] T. Roughgarden. Selfish Routing. PhD
thesis, Cornell University, 2002.
[67] T. Roughgarden. The price of anarchy
is independent of the network topology.
Journal of Computer and System Sciences,
67(2):341364, 2003.
[68] T. Roughgarden. The maximum latency
of selfish routing. In Proceedings of the 15th
AnnualACMSIAM Symposium on Discrete
Algorithms (SODA), pages 973974, 2004.
[69] T. Roughgarden. Stackelberg scheduling
strategies. SIAM Journal on Computing,
33(2):332350, 2004.
[70] T. Roughgarden. Selfsh Routing and the
Price ofAnarchy. MIT Press, 2005.
[71] T. Roughgarden. Selfish routing with
atomic players. In Proceedings of the 16th
AnnualACMSIAM Symposium on Discrete
Algorithms (SODA), pages 11841185,
2005.
[72] T. Roughgarden. On the severity of Braess's
Paradox: Designing networks for selfish
users is hard. Journal of Computer and
System Sciences, 72(5):922953, 2006.
[73] T. Roughgarden. Potential functions
and the inefficiency of equilibria. In
Proceedings of the International Congress of
Mathematicians (ICM), volume III, pages
10711094, 2006.
[74] T. Roughgarden and E. Tardos. How bad
is selfish routing? Journal of the ACM,
49(2):236259, 2002.
[75] T. Roughgarden and E. Tardos. Bounding
the inefficiency of equilibria in nonatomic
congestion games. Games and Economic
Behavior, 49(2):389403, 2004.
[76] D. Schmeidler. Equilibrium points of
nonatomic games. Journal ofStatistical
Physics, 7(4):295300, 1973.
[77] Y. Sheffi. Urban Transportation Networks:
Equilibrium Analysis with Mathematical
Programming Methods. PrenticeHall, 1985.
[78] M. J. Smith. The existence, uniqueness and
stability of traffic equilibria. Transportation
Research, Part B, 13(4):295304, 1979.
[79] M. A. So. Private communication, March,
2005.
[80] S. Suri, C. T'oth, and Y. Zhou. Selfish load
balancing and atomic congestion games.
Algorithmica, 2006. To appear.
[81] C. S. Swamy. The effectiveness of
Stackelberg strategies and tolls for network
congestion games. In Proceedings of the 17th
AnnualACMSIAM Symposium on Discrete
Algorithms (SODA), 2007. To appear.
[82] E. Tardos. CS684 course notes. Cornell
University, 2004.
[83] H. von Stackelberg. Marktform und
Gleichgewicht. Springer, 1934.
[84] B. von Stengel. Private communication,
July, 2004.
[85] J. G. Wardrop. Some theoretical aspects of
road traffic research. In Proceedings of the
Institute of Civil Engineers, Pt. II, volume 1,
pages 325378, 1952.
[86] D. Weitz. The price of anarchy.
Manuscript, 2001.
[87] H. Yang and H. Huang. The multi
class, multicriteria traffic network
equilibrium and systems optimum problem.
Transportation Research, Part B, 38(1):115,
2004.
[88] H. Yang and H. Huang. Mathematical and
Economic Theory ofRoadPricing. Elsevier
Science, 2005.
0PTIMA74
PAGE 14
Second Mathematical Programming Society
International Conference on Continuous Optimization
August 1216, 2007
McMaster University, Hamilton, ON Canada
ICCOPT is held every three years and is a forum for researchers interested in all
aspects of continuous optimization. ICCOPT07 will be held together with MOPTA07.
The conference will be preceded by graduatelevel tutorials on nonlinear programming,
modeling languages, and applications.
Distinguished researchers will give featured invited talks on topics of wide interest.
Confirmed invited speakers include:
Larry Biegler, Carnegie Mellon University Optimization Methods for Process Design
Adrian Lewis, Cornell University Nonconvex, Nonsmooth Optimization
Summer School for Graduate Students: August 1112, 2007
Please visit the conference website for more details.
iccoptmopta.mcmaster.ca
Early registration deadline: May 28, 2007
Application for Membership
I wish to enroll as a member of the Society.
My subscription is for my personal use and not for the benefit of any library or institution.
O I will pay my membership dues on receipt of your invoice.
O I wish to pay by credit card (Master/Euro or Visa).
CREDIT CARD NO.
EXPIRATION DATE
FAMILY NAME
MAILING ADDRESS
Mail to:
Mathematical Programming Society
3600 University City Sciences Center
Philadelphia, PA 191042688 USA
Cheques or money orders should be
made payable to The Mathematical
Programming Society, Inc. Dues for
2007, including subscription to the
journal Mathematical Programming,
are US 80. Retired are 50.
Student applications: Dues are 25.
Have a faculty member verify your
student status and send application
with dues to above address.
Faculty verifying status
Institution
10 IM 41
MAY 2007
PAGE 15
TELEPHONE NO. TELEFAX NO.
EMAIL
SIGNATURE 0
O P T I M A
MATHEMATICAL PROGRAMMING SOCIETY
TUF UNIVERSITY of
UFIFLORIDA
Center for Applied Optimization
401 Weil Hall
PO Box 116595
Gainesville, FL 326116595 USA
FIRST CLASS MAIL
EDITOR:
Andrea Lodi
DEIS University of Bologna,
Viale Risorgimento 2,
I 40136 Bologna, Italy
email: andrea.lodi@unibo.it
COEDITORS:
Alberto Caprara
DEIS University of Bologna,
Viale Risorgimento 2,
I 40136 Bologna, Italy
email: acaprara@deis.unibo.it
Katya Scheinberg
IBM T.J. Watson Research Center
PO Box 218
Yorktown Heights, NY 10598, USA
email: katyas@us.ibm.com
FOUNDING EDITOR:
Donald W. Hearn
PUBLISHED BY THE
MATHEMATICAL PROGRAMMING SOCIETY &
University of Florida
Journal contents are subject to
change by the publisher.
