Encyclopedia of Systems and Control

Living Edition
| Editors: John Baillieul, Tariq Samad

Mechanism Design

  • Ramesh JohariEmail author
Living reference work entry
DOI: https://doi.org/10.1007/978-1-4471-5102-9_38-1


Mechanism design is concerned with the design of strategic environments to achieve desired outcomes at equilibria of the resulting game. We briefly overview central ideas in mechanism design. We survey both objectives the mechanism designer may seek to achieve, as well as equilibrium concepts the designer may use to model agents. We conclude by discussing a seminal example of mechanism design at work: the Vickrey-Clarke-Groves (VCG) mechanisms.


Mechanism design Incentive compatibility Game theory 


Informally, mechanism design might be considered “inverse game theory.” In mechanism design, a principal (the “designer”) creates a system (the “mechanism”) in which strategic agents interact with each other. Typically, the goal of the mechanism designer is to ensure that at an “equilibrium” of the resulting strategic interaction, a “desirable” outcome is achieved. Examples of mechanism design at work include the following:
  1. 1.

    The FCC chooses to auction spectrum among multiple competing, strategic bidders to maximize the revenue generated. How should the FCC design the auction?

  2. 2.

    A search engine decides to run a market for sponsored search advertising. How should the market be designed?

  3. 3.

    The local highway authority decides to charge tolls for certain roads to reduce congestion. How should the tolls be chosen?


In each case, the mechanism designer is shaping the incentives of participants in the system. The mechanism designer must first define the desired objective and then choose a mechanism that optimizes that objective given a prediction of how strategic agents will respond. The theory of mechanism design provides guidance in solving such optimization problems.

We provide a brief overview of some central concepts in mechanism design. In the first section, we delve into more detail on the structure of the optimization problem that a mechanism designer solves. In particular, we discuss two central features of this problem: (1) What is the objective that the mechanism designer seeks to achieve or optimize? (2) How does the mechanism designer model the agents, i.e., what equilibrium concept describes their strategic interactions? In the second section, we study a specific celebrated class of mechanisms, the Vickrey-Clarke-Groves mechanisms.

Objectives and Equilibria

A mechanism design problem requires two essential inputs, as described in the introduction. First, what is the objective the mechanism designer is trying to achieve or optimize? And second, what are the constraints within which the mechanism designer operates? On the latter question, perhaps the biggest “constraint” in mechanism design is that the agents are assumed to act rationally in response to whatever mechanism is imposed on them. In other words, the mechanism designer needs to model how the agents will interact with each other. Mathematically, this is modeled by a choice of equilibrium concept. For simplicity, we focus only on static mechanism design, i.e., mechanism design for settings where all agents act simultaneously.


In this section we briefly discuss three objectives the mechanism designer may choose to optimize for: efficiency, revenue, and a fairness criterion.
  1. 1.

    Efficiency. When the mechanism designer focuses on “efficiency,” they are interested in ensuring that the equilibrium outcome of the game they create is a Pareto efficient outcome. In other words, at an equilibrium of the game, there should be no individual that can be made strictly better off while leaving all others at least as well off as they were before. The most important instantiation of the efficiency criterion arises in quasilinear settings, i.e., settings where the utility of all agents is measured in a common, transferable monetary unit. In this case, it can be shown that achieving efficient outcomes is equivalent to maximizing the aggregate utility of all agents in the system. See Chap. 23 in Mas-Colell et al. (1995) for more details on mechanism design for efficient outcomes.

  2. 2.

    Revenue. Efficiency may be a reasonable goal for an impartial social planner; on the other hand, in many applied settings, the mechanism designer is often herself a profit-maximizing party. In these cases, it is commonly the goal of the mechanism designer to maximize her own payoff from the mechanism itself.

    A common example of this scenario is in the design of optimal auctions. An auction is a mechanism for the sale of a good (or multiple goods) among many competing buyers. When the principal is self-interested, she may wish to choose the auction design that maximizes her revenue from sale; the celebrated paper of Myerson (1981) studies this problem in detail.

  3. 3.

    Fairness. Finally, in many settings, the mechanism designer may be interested more in achieving a “fair” outcome – even if such an outcome is potentially not Pareto efficient. Fairness is subjective, and therefore, there are many potential objectives that might be viewed as fair by the mechanism designer. One common setting where the mechanism design strives for fair outcomes is in cost sharing: in a canonical example, the cost of a project must be shared “fairly” among many participants. See Chap. 15 of Nisan et al. (2007) for more discussion of such mechanisms.


Equilibrium Concepts

In this section we briefly discuss a range of equilibrium concepts the mechanism designer might use to model the behavior of players. From an optimization viewpoint, mechanism design should be viewed as maximization of the designer’s objective, subject to an equilibrium constraint. The equilibrium concept used captures the mechanism designer’s judgment about how the agents can be expected to interact with each other, once the mechanism designer has fixed the mechanism. Here we briefly discuss three possible equilibrium concepts that might be used by the mechanism designer.
  1. 1.

    Dominant strategies. In dominant strategy implementation, the mechanism designer assumes that agents will play a (weak or strict) dominant strategy against their competitors. This equilibrium concept is obviously quite strong, as dominant strategies may not exist in general. However, the advantage is that when the mechanism possesses dominant strategies for each player, the prediction of play is quite strong. The Vickrey-Clarke-Groves mechanisms described below are central in the theory of mechanism design with dominant strategies.

  2. 2.

    Bayesian equilibrium. In a Bayesian equilibrium, agents optimize given a common prior distribution about the other agents’ preferences. In Bayesian mechanism design, the mechanism designer chooses a mechanism taking into account that the agents will play according to a Bayesian equilibrium of the resulting game. This solution concept allows the designer to capture a lack of complete information among players, but typically allows for a richer family of mechanisms than mechanism design with dominant strategies. Myerson’s work on optimal auction design is carried out in a Bayesian framework (Myerson 1981).

  3. 3.

    Nash equilibrium. Finally, in a setting where the mechanism designer believes the agents will be quite knowledgeable about each other’s preferences, it may be reasonable to assume they will play a Nash equilibrium of the resulting game. Note that in this case, it is typically assumed the designer does not know the utilities of agents at the time the mechanism is chosen – even though agents do know their own utilities at the time the resulting game is actually played. See, e.g., Moore (1992) for an overview of mechanism design with Nash equilibrium as the solution concept.


The Vickrey-Clarke-Groves Mechanisms

In this section, we describe a seminal example of mechanism design at work: the Vickrey-Clarke-Groves (VCG) class of mechanisms. The key insight behind VCG mechanisms is that by structuring payment rules correctly, individuals can be incentivized to truthfully declare their utility functions to the market and in turn achieve an efficient allocation. VCG mechanisms are an example of mechanism design with dominant strategies and with the goal of welfare maximization, i.e., efficiency. The presentation here is based on the material in Chap. 5 of Berry and Johari (2011), and the reader is referred there for further discussion. See also Vickrey (1961), Clarke (1971), and Groves (1973) for the original papers discussing this class of mechanisms.

To illustrate the principle behind VCG mechanisms, consider a simple example where we allocate a single resource of unit capacity among R competing users. Each user’s utility is measured in terms of a common currency unit; in particular, if the allocated amount is x r and the payment to user r is t r , then her utility is \(U_{r}(x_{r}) + t_{r}\); we refer to U r as the valuation function, and let the space of valuation functions be denoted by \(\mathcal{U}\). For simplicity we assume the valuation functions are continuous. In line with our discussion of efficiency above, it can be shown that the Pareto efficient allocation is obtained by solving the following:
$$\displaystyle\begin{array}{rcl} \text{maximize}& & \displaystyle\sum _{r}U_{r}(x_{r})\end{array}$$
$$\displaystyle\begin{array}{rcl} \text{subject to}& & \displaystyle\sum _{r}x_{r} \leq 1;\end{array}$$
$$\displaystyle\begin{array}{rcl} & & \mathbf{x} \geq 0.\end{array}$$
However, achieving the efficient allocation requires knowledge of the utility functions; what can we do if these are unknown? The key insight is to make each user act as if they are optimizing the aggregate utility, by structuring payments appropriately. The basic approach in a VCG mechanism is to let the strategy space of each user r be the set \(\mathcal{U}\) of possible valuation functions and make a payment t r to user r so that her net payoff has the same form as the social objective (1). In particular, note that if user r receives an allocation x r and a payment t r , the payoff to user r is
$$U_{r}(x_{r}) + t_{r}.$$
On the other hand, the social objective (1) can be written as
$$U_{r}(x_{r}) +\displaystyle\sum _{s\neq r}U_{s}(x_{s}).$$
Comparing the preceding two expressions, the most natural means to align user objectives with the social planner’s objectives is to define the payment t r as the sum of the valuations of all users other than r.
A VCG mechanism first asks each user to declare a valuation function. For each r, we use \(\hat{U}_{r}\) to denote the declared valuation function of user r and use \(\hat{\mathbf{U}} = (\hat{U}_{1},\ldots,\hat{U}_{R})\) to denote the vector of declared valuations. Formally, given a vector of declared valuation functions \(\hat{\mathbf{U}}\), a VCG mechanism chooses the allocation \(\mathbf{x}(\hat{\mathbf{U}})\) as an optimal solution to (1)–(3) given \(\hat{\mathbf{U}}\), i.e.,
$$\mathbf{x}(\hat{\mathbf{U}}) \in \arg \max _{\mathbf{x}\geq 0:\displaystyle\sum _{r}x_{r}\leq 1}\displaystyle\sum _{r}\hat{U}_{r}(x_{r}).$$
The payments are then structured so that
$$t_{r}(\hat{\mathbf{U}}) =\displaystyle\sum _{s\neq r}\hat{U}_{s}(x_{s}(\hat{\mathbf{U}})) + h_{r}(\hat{\mathbf{U}}_{-r}).$$
Here h r is an arbitrary function of the declared valuation functions of users other than r, and various definitions of h r give rise to variants of the VCG mechanisms. Since user r cannot affect this term through the choice of \(\hat{U}_{r}\), she chooses \(\hat{U}_{r}\) to maximize
$$U_{r}(x_{r}(\hat{\mathbf{U}})) +\displaystyle\sum _{s\neq r}\hat{U}_{s}(x_{s}(\hat{\mathbf{U}})).$$
Now note that given \(\hat{\mathbf{U}}_{-r}\), the above expression is bounded above by
$$\max _{\mathbf{x}\geq 0:\displaystyle\sum _{r}x_{r}\leq 1}\left [U_{r}(x_{r}) +\displaystyle\sum _{s\neq r}\hat{U}_{s}(x_{s})\right ].$$
But since \(\mathbf{x}(\hat{\mathbf{U}})\) satisfies (4), user r can achieve the preceding maximum by truthfully declaring \(\hat{U}_{r} = U_{r}\). Since this optimal strategy does not depend on the valuation functions \((\hat{U}_{s},s\neq r)\) declared by the other users, we recover the important fact that in a VCG mechanism, truthful declaration is a weak dominant strategy for user r.

For our purposes, the interesting feature of the VCG mechanism is that it elicits the true utilities from the users and in turn (because of the definition of \(\mathbf{x}(\hat{\mathbf{U}})\)) chooses an efficient allocation. The feature that truthfulness is a dominant strategy is known as incentive compatibility: the individual incentives of users are aligned, or “compatible,” with overall efficiency of the system. The VCG mechanism achieves this by effectively paying each agent to tell the truth. The significance of the approach is that this payment can be properly structured even if the resource manager does not have prior knowledge of the true valuation functions.

Summary and Future Directions

Mechanism design provides an overarching framework for the “engineering” of economic systems. However, many significant challenges remain. First, VCG mechanisms are not computationally tractable in complex settings, e.g., combinatorial auctions (Hajek 2013); finding computationally tractable yet efficient mechanisms is a very active area of current research. Second, VCG mechanisms optimize for overall welfare, rather than revenue, and finding simple mechanisms that maximize revenue also presents new challenges. Finally, we have only considered implementation in static environments. Most practical mechanism design settings are dynamic. Dynamic mechanism design remains an active area of fruitful research.



  1. Berry RA, Johari R (2011) Economic modeling in networking: a primer. Found Trends Netw 6(3):165–286CrossRefzbMATHGoogle Scholar
  2. Clarke EH (1971) Multipart pricing of public goods. Public Choice 11(1):17–33CrossRefGoogle Scholar
  3. Groves T (1973) Incentives in teams. Econometrica 41(4):617–631CrossRefzbMATHMathSciNetGoogle Scholar
  4. Hajek B (2013) Auction theory. In: Encyclopedia of systems and control. SpringerGoogle Scholar
  5. Mas-Colell A, Whinston M, Green J (1995) Microeconomic theory. Oxford University Press, New YorkzbMATHGoogle Scholar
  6. Moore J (1992) Implementation, contracts, and renegotiation in environments with complete information. Adv Econ Theory 1:182–281Google Scholar
  7. Myerson RB (1981) Optimal auction design. Math Oper Res 6(1):58–73CrossRefzbMATHMathSciNetGoogle Scholar
  8. Nisan N, Roughgarden T, Tardos E, Vazirani V (eds) (2007) Algorithmic game theory. Cambridge University Press, Cambridge/New YorkzbMATHGoogle Scholar
  9. Vickrey W (1961) Counterspeculation, auctions, and competitive sealed tenders. J Financ 16(1): 8–37CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London 2013

Authors and Affiliations

  1. 1.Stanford UniversityStanfordUSA