Price of anarchy

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The Price of Anarchy (PoA) [1] is a concept in economics and game theory that measures how the efficiency of a system degrades due to selfish behavior of its agents. It is a general notion that can be extended to diverse systems and notions of efficiency. For example, consider the system of transportation of a city and many agents trying to go from some initial location to a destination. Let efficiency in this case mean the average time for an agent to reach the destination. In the 'centralized' solution, a central authority can tell each agent which path to take in order to minimize the average travel time. In the 'decentralized' version, each agent chooses its own path. The Price of Anarchy measures the ratio between average travel time in the two cases.

Usually the system is modeled as a game and the efficiency is some function of the outcomes (e.g. maximum delay in a network, congestion in a transportation system, social welfare in an auction, ...). Different concepts of equilibrium can be used to model the selfish behavior of the agents, among which the most common is the Nash equilibrium. Different flavors of Nash equilibrium lead to variations of the notion of Price of Anarchy as Pure Price of Anarchy (for deterministic equilibria), Mixed Price of Anarchy (for randomized equilibria), and Bayes-Nash Price of Anarchy (for games with incomplete information). Solution concepts other than Nash equilibrium lead to variations such as the Price of Sinking.[2]

The term Price of Anarchy was first used by Koutsoupias and Papadimitriou,[1] but the idea of measuring inefficiency of equilibrium is older.[3] The concept in its current form was designed to be the analogue of the 'approximation ratio' in an approximation algorithm or the 'competitive ratio' in an online algorithm. This is in the context of the current trend of analyzing games using algorithmic lenses (algorithmic game theory).

Mathematical definition[edit]

Consider a game G=(N,S,u), defined by a set of players N, strategy sets S_i for each player and utilities u_i: S \rightarrow \mathbb{R} (where S = S_1 \times ... \times S_n also called set of outcomes). We can define a measure of efficiency of each outcome which we call welfare function W: S \rightarrow \mathbb{R}. Natural candidates include the sum of players utilities (utilitarian objective) W(s) = \sum_{i \in N} u_i(s), minimum utility (fairness or egalitarian objective) W(s) = \min_{i \in N} u_i(s), ..., or any function that is meaningful for the particular game being analyzed and is desirable to be maximized.

We can define a subset E \subseteq S to be the set of strategies in equilibrium (for example, the set of Nash equilibria). The Price of Anarchy is then defined as the ratio between the optimal 'centralized' solution and the 'worst equilibrium':

PoA = \frac{\max_{s \in S} W(s)}{\min_{s \in E} W(s)}

If, instead of a 'welfare' which we want to 'maximize', the function measure efficiency is a 'cost function'  C : S \rightarrow \mathbb{R} which we want to 'minimize' (e.g. delay in a network) we use (following the convention in approximation algorithms):

PoA = \frac{\max_{s \in E} C(s)}{\min_{s \in S} C(s)}

A related notion is that of the Price of Stability (PoS) which measures the ratio between the 'best equilibrium' and the optimal 'centralized' solution:

PoS = \frac{\max_{s \in S} W(s)}{\max_{s \in E} W(s)}

or in the case of cost functions:

PoS = \frac{\min_{s \in E} C(s)}{\min_{s \in S} C(s)}

We know that 1 \leq PoS \leq PoA by the definition. It is expected that the loss in efficiency due to game-theoretical constraints is somewhere between 'PoS' and 'PoA'.


Prisoner's dilemma[edit]

Consider the 2x2 game called prisoner's dilemma, given by the following cost matrix:

Cooperate Defect
Cooperate 1, 1 7, 0
Defect 0, 7 5, 5

and let the cost function be C(s_1, s_2) = u_1(s_1,s_2) + u_2(s_1,s_2). Now, the minimum cost would be when both players cooperate and the resulting cost is 1+1 = 2. However, the only Nash equilibrium occurs when both defect, in which case the cost is 5 + 5 = 10. Thus the Price of Anarchy of this game will be 10/2 = 5.

Job scheduling[edit]

A more natural example is the one of job scheduling. There are N players and each of them has a job to run. They can choose one of M machines to run the job. The Price of Anarchy compares the situation where the selection of machines is guided/directed centrally to the situation where each player chooses the machine that will make its job run fastest.

Each machine has a speed s_1,\ldots,s_M>0. Each job has a weight w_1,\ldots,w_N>0. A player picks a machine to run his or her job on. So, the strategies of each player are A_i=\{1,2,\ldots,M\}. Define the load on machine j to be:

L_j(a)=\frac{\sum_{i:a_i=j} w_i}{s_j}.

The cost for player i is c_i(a)=L_{a_i}(a), i.e., the load of the machine they chose. We consider the egalitarian cost function \mbox{MS}(a)=\max_j L_j(a), here called the makespan.

We consider two concepts of equilibrium: pure Nash and mixed Nash. It should be clear that mixed PoA ≥ pure PoA, because any pure Nash equilibrium is also a mixed Nash equilibrium (this inequality can be strict: e.g. when N=2, w_1=w_2=1, M=2, and s_1=s_2=1, the mixed strategies \sigma_1=\sigma_2=(1/2,1/2) achieve an average makespan of 1.5, while any pure-strategy PoA in this setting is \leq 4/3). First we need to argue that there exist pure Nash equilibria.

Claim. For each job scheduling game, there exists at least one pure-strategy Nash equilibrium.

Proof. We would like to take a socially optimal action profile a^*. This would mean simply an action profile whose makespan is minimum. However, this will not be enough. There may be several such action profiles leading to a variety of different loads distributions (all having the same maximum load). Among these, we further restrict ourselves to one that has a minimum second-largest load. Again, this results in a set of possible load distributions, and we repeat until the Mth-largest (i.e., smallest) load, where there can only be one distribution of loads (unique up to permutation). This would also be called the lexicographic smallest sorted load vector.

We claim that this is a pure-strategy Nash equilibrium. Reasoning by contradiction, suppose that some player i could strictly improve by moving from machine j to machine k. This means that the increased load of machine k after the move is still smaller than the load of machine j before the move. As the load of machine j must decrease as a result of the move and no other machine is affected, this means that the new configuration is guaranteed to have reduced the jth-largest (or higher ranked) load in the distribution. This, however, violates the assumed lexicographic minimality of a. Q.E.D.

Claim. For each job scheduling game, the pure PoA is at most M.

Proof. It is easy to upper-bound the welfare obtained at any mixed-strategy Nash equilibrium \sigma by

w(\sigma) \leq \frac{\sum_i{w_i}}{\max_j{s_j}}.

Consider, for clarity of exposition, any pure-strategy action profile a: clearly

w(a) \geq \frac{\sum_i{w_i}}{\sum_j{s_j}} \geq \frac{\sum_i{w_i}}{M \cdot \max_j{s_j}}.

Since the above holds for the social optimum as well, comparing the ratios w(\sigma) and w(a) proves the claim. Q.E.D

Selfish Routing[edit]

Braess' paradox[edit]

Main article: Braess' paradox

Consider a road network in which a fixed number of drivers need to move from a common source to a common destination; assume that each driver chooses its route selfishly, and that the time to traverse a road depends linearly on the number of drivers choosing that road.

We can formalize this setting as a routing problem in a directed, connected graph G=(V, E), in which we want to send one unit of flow from a source node s \in V to a destination node t \in V (imagine the flow to be composed of the travel decisions of the different drivers). In particular, let the flow be a function f: E \mapsto \Re assigning to each edge a non-negative real number, and consider the set of linear functions L = \{ l_e(f_e) = a \cdot f_e + b \; | \; e \in E, \; a \geq 0, \; b \geq 0\} that map the flow traversing each edge to the latency to traverse the edge. Let's also define the social welfare of a flow f as w(f) = \sum_e{f_e \cdot l_e(f_e)}

Consider the example in the figure: if the dashed road is not available, the mixed-strategy Nash equilibrium happens when each player chooses the top route and the bottom route with the same probability: this equilibrium has social cost 1.5, and it takes 1.5 units of time to each driver to go from s to t. Hoping to improve the performance of the network, a legislator could decide to make the dashed, low-latency edge available to the drivers: in this case, the only Nash equilibrium would happen when every driver uses the new road, therefore the social cost would increase to 2 and now it would take 2 units of time to each player to go from s to t.

Hence, the uncommon result of denying access to the fastest road by central control to be beneficial to the public in some cases.

Generalized routing problem[edit]

The routing problem introduced in the Braess' paradox can be generalized to many different flows traversing the same graph at the same time.

Definition (Generalized flow). Let G=(V, E), L and w be as defined above, and suppose that we want to route the quantities R = \{ r_1, r_2, \dots, r_k, \; | \; r_i > 0\} through each distinct pair of nodes in \Gamma = \{(s_1,t_1), (s_2,t_2), \dots, (s_k,t_k) \} \subseteq (V \times V). A flow f_{\Gamma, R} is defined as an assignment p \mapsto \Re of a real, nonnegative number to each path p going from s_i to t_i \in \Gamma, with the constraint that

\sum_{p: \, s_i \rightarrow t_i}{f_p} = r_i \; \; \forall (s_i,t_i) \in \Gamma.

The flow traversing a specific edge of G is defined as

f_{e,\Gamma, R}=\sum_{p: \, e \in p}{f_p}.

For succinctness, we write f_e when \Gamma,R are clear from context.

Definition (Nash-equilibrium flow). A flow f_{\Gamma, R} is a Nash-equilibrium flow iff \forall (s_i, t_i) \in \Gamma and \forall p, q from s_i to t_i

f_{p}>0 \Rightarrow \sum_{e \in p}{l_e(f_e)} \leq \sum_{e \in q}{l_e(f_e)}.

This definition is closely related to what we said about the support of mixed-strategy Nash equilibria in normal-form games.

Definition (Conditional welfare of a flow). Let f_{\Gamma, R} and f_{\Gamma, R}^{*} be two flows in G associated with the same sets \Gamma and R. In what follows, we will drop the subscript to make the notation clearer. Assume to fix the latencies induced by f on the graph: the conditional welfare of f^{*} with respect to f is defined as

w^{f}(f^{*}) = \sum_{e \in E}{f^{*}_e \cdot l_{e}(f_{e})}

Fact 1. Given a Nash-equilibrium flow f and any other flow f^{*}, w(f) = w^{f}(f) \leq w^{f}(f^{*}).

Proof (By contradiction). Assume that w^{f}(f^{*}) < w^{f}(f). By definition,

\sum_{i=1}^{k} \sum_{p: s_i \rightarrow t_i} f_p^{*} \cdot \sum_{e \in p} l_e(f_e) < \sum_{i=1}^{k} \sum_{p: s_i \rightarrow t_i} f_p \cdot \sum_{e \in p} l_e(f_e).

Since f and f^{*} are associated with the same sets \Gamma, R, we know that

\sum_{p: s_i \rightarrow t_i}f_p = \sum_{p: s_i \rightarrow t_i} f_p^{*} = r_i \; \; \forall i.

Therefore, there must be a pair (s_i, t_i) and two paths p, q from s_i to t_i such that f_p^{*} > f_p, f_q^{*} < f_q, and

\sum_{e \in p}l_e(f_e) < \sum_{e \in q}l_e(f_e).

In other words, the flow f^{*} can achieve a lower welfare than f only if there are two paths from s_i to t_i having different costs, and if f^{*} reroutes some flow of f from the higher-cost path to the lower-cost path. This situation is clearly incompatible with the assumption that f is a Nash-equilibrium flow. Q.E.D.

Note that Fact 1 does not assume any particular structure on the set L.

Fact 2. Given any two real numbers x and y, x \cdot y \leq x^2 + y^{2}/4.

Proof. This is another way to express the true inequality (x-y/2)^2 \geq 0. Q.E.D.

Theorem. The pure PoA of any generalized routing problem (G, L) with linear latencies is \leq 4/3.

Proof. Note that this theorem is equivalent to saying that for each Nash-equilibrium flow f, w(f) \leq (4/3) \cdot \min_{f^{*}} \{ w(f^{*}) \}, where f^{*} is any other flow. By definition,

w^{f}(f^{*}) = \sum_{e \in E} f_e^{*}(a_e \cdot f_e + b_e)
= \sum_{e}(a_{e}f_{e}f_{e}^{*}) + \sum_{e \in E}f_e^{*}b_e.

By using Fact 2, we have that

w^{f}(f^{*}) \leq \sum_{e \in E} \left( a_e \cdot \left( (f_e^{*})^2 + (f_e)^{2}/4 \right) \right) + \sum_{e \in E} f_e^{*} \cdot b_e
= \left( \sum_{e \in E} a_e(f_e^{*})^2 + f_e^{*}b_e \right) + \sum_{e \in E} a_{e}(f_e)^{2}/4
\leq w(f^{*}) + \frac{w(f)}{4},


(1/4) \cdot w(f) = (1/4) \cdot \sum_{e \in E}f_e(a_{e}f_{e}+b_{e})
= (1/4) \cdot \sum_{e \in E}(f_{e})^2 + \underbrace{(1/4) \cdot \sum_{e \in E}f_{e}b_{e}}_{\geq 0}.

We can conclude that w^{f}(f^{*}) \leq w(f^{*}) + w(f)/4, and prove the thesis using Fact 1. Q.E.D.

Note that in the proof we have made extensive use of the assumption that the functions in L are linear. Actually, a more general fact holds.

Theorem. Given a generalized routing problem with graph G and polynomial latency functions of degree d with nonnegative coefficients, the pure PoA is \leq d+1.

Note that the PoA can grow with d. Consider the example shown in the following figure, where we assume unit flow: the Nash-equilibrium flows have social welfare 1; however, the best welfare is achieved when x=1-1/{\sqrt{d+1}}, in which case

w = \left( 1-\frac{1}{\sqrt{d+1}} \right)^d \cdot \left( 1-\frac{1}{\sqrt{d+1}} \right) + 1 \cdot \frac{1}{\sqrt{d+1}}
=\left(\left( 1-\frac{1}{\sqrt{d+1}} \right)^{\sqrt{d+1}}\right)^\sqrt{d+1}+\frac{1}{\sqrt{d+1}}
\leq e^{-\sqrt{d+1}} + \frac{1}{\sqrt{d+1}}.

This quantity tends to zero when d tends to infinity.

See also[edit]


  1. ^ a b E. Koutsoupias, C. H. Papadimitriou Worst-case equilibria, STACS 99
  2. ^ M. Goemans, V. Mirrokni, A. Vetta, Sink equilibria and convergence, FOCS 05
  3. ^ P. Dubey. Inefficiency of Nash equilibria. Math. Operat. Res., 11(1):1–8, 1986

Further reading[edit]

  • Fabio Cunial, Price of anarchy. [1]