Introduction to Mechanism Design

Social choice, Arrow and Gibbard–Satterthwaite; VCG and the Clarke pivot rule; the revelation principle; weak monotonicity, Roberts' theorem and single-parameter domains; Bayesian–Nash and revenue equivalence; and design without money — single-peaked preferences, house allocation, stable matching

· 58 min read · 11,514 words

Motivation: economics with an engineering perspective

Mechanism Design is a subfield of economic theory that is rather unique within economics in having an engineering perspective. It is interested in designing economic mechanisms, just as computer scientists are interested in designing algorithms, protocols, or systems.

ImportantThe goal, abstractly

The goals are best viewed in the very abstract terms of social choice: an aggregation of the preferences of different participants toward a single joint decision. Mechanism Design attempts to implement desired social choices in a strategic setting — assuming each member of society acts rationally in a game-theoretic sense. Such strategic design is necessary because the preferences of the participants are usually private.

SettingThe social choice being made
Electionseach voter has preferences among candidates; the outcome is one choice
Marketsclassical theory assumes a “perfect market”; in reality there are only interactions governed by protocols, whose outcome is a reallocation of goods and money
Auctionsthe extreme opposite of a perfect market — a single seller; the auction rules define the social choice, namely the identity of the winner
Government policybuild the bridge? how much pollution to allow? each citizen differs, one choice is made

IntuitionWhy the Internet made this a computer science subject

The main new ingredient found on the Internet is that it is owned and operated by different parties with different goals. These preferences, and the behavior they induce, must be taken into account by every protocol in such an environment — so a protocol should be viewed as aggregating the participants’ preferences into a social choice: the outcome of its run.

Two complementary motivations:

  • Economics for CS. Take any algorithmic challenge in a network — routing messages, scheduling tasks, allocating memory. With multiple owners of resources or requests, the algorithm must function well assuming strategic selfish behavior. This is Algorithmic Mechanism Design.
  • CS for economics. Take any economic interaction — a market, an auction, a supply chain. Implemented over a computerized platform, it admits unprecedented sophistication handled by hyperrationally designed software. This is Electronic Market Design.

NoteThe bias of this treatment

The presentation is not very different from the standard economic approach, but is somewhat biased toward the worst-case (non-Bayesian) point of view common in computer science — dominant strategies first, Bayesian analysis later.


Social choice, and two impossibility theorems

Condorcet’s paradox

ExampleMajority fails with three candidates

With two candidates, majority vote is intuitively fine. With three, Condorcet (1785) pointed out the problem. Three candidates a,b,ca,b,c and three voters:

a≺1b≺1creading a≻1b≻1ca\prec_1 b\prec_1 c \quad\text{reading } a\succ_1 b\succ_1 c

— more precisely, voter 1 prefers aa to bb to cc; voter 2 prefers bb to cc to aa; voter 3 prefers cc to aa to bb.

A majority (1 and 3) prefers aa to bb; a majority (1 and 2) prefers bb to cc; a majority (2 and 3) prefers cc to aa. The joint majority choice is a≻b≻c≻aa\succ b\succ c\succ a — inconsistent. For any candidate chosen, a majority would want to change the outcome.

So whenever there are more than two alternatives we must design some more complex voting method.

WarningVoting methods invite strategic voting

Two simple methods: plurality (the candidate placed first by the most voters wins) and Borda count (a candidate gets n−in-i points from each voter ranking him iith). Each has nice properties and problematic ones.

The main difficulty is strategic voting. Suppose a voter’s true preference is a≻b≻ca\succ b\succ c but he knows aa will not win. He may be motivated to vote for bb instead, so that bb is chosen rather than cc. This is problematic because it is not transparent, depends closely on others’ votes, and the interaction of many strategic voters is complex.

The Gibbard–Satterthwaite theorem says this vulnerability is unavoidable.

DefinitionSocial welfare and social choice functions

With alternatives AA, voters II of size nn, and LL the set of linear orders on AA (total, antisymmetric, transitive):

  • F:Ln→LF : L^n\to L is a social welfare function — it aggregates preferences into a full social order.
  • f:Ln→Af : L^n\to A is a social choice function — it aggregates into a single chosen candidate.

Arrow’s theorem

DefinitionThree desiderata for a social welfare function

  • Unanimity: F(≺,…,≺)=≺F(\prec,\ldots,\prec) = \prec — if all voters agree, the social preference is theirs.
  • Dictatorship: voter ii is a dictator if F(≺1,…,≺n)=≺iF(\prec_1,\ldots,\prec_n) = \prec_i always, ignoring everyone else. FF is not a dictatorship if no ii is a dictator.
  • Independence of irrelevant alternatives (IIA): the social preference between aa and bb depends only on the voters’ preferences between aa and bb.

IntuitionWhat IIA is really doing

The first two are simple and clearly desirable. IIA is trickier. Intuitively it seems natural — why should my preferences about cc affect the social ranking of aa and bb? More careful inspection reveals it captures a consistency property of the voting system, and lack of such consistency is exactly what enables strategic manipulation.

TheoremArrow

Every social welfare function over ∣A∣≥3|A|\ge3 candidates satisfying unanimity and IIA is a dictatorship.

ProofPairwise neutrality, then find the pivotal voter

Claim (pairwise neutrality). Let ≺1,…,≺n\prec_1,\ldots,\prec_n and ≺1′,…,≺n′\prec_1',\ldots,\prec_n' be profiles with a≺ib  ⟺  c≺i′da\prec_i b\iff c\prec_i' d for every ii. Then a≺b  ⟺  c≺′da\prec b\iff c\prec' d.

WLOG assume a≺ba\prec b and c≠bc\ne b. Merge each ≺i\prec_i and ≺i′\prec_i' into a single ≺i′′\prec_i'' by putting cc just above aa (unless c=ac=a) and dd just below bb (unless d=bd=b), preserving the internal order within the pairs (a,b)(a,b) and (c,d)(c,d). By unanimity c≺′′ac\prec'' a and b≺′′db\prec'' d, and by transitivity c≺′′dc\prec'' d. IIA then transfers this to the original profiles.

Finding the dictator. Fix a≠ba\ne b and for 0≤i≤n0\le i\le n let πi\pi^i be the profile in which exactly the first ii voters rank aa above bb (other rankings irrelevant). By unanimity b≺ab\prec a in F(π0)F(\pi^0) is false — we have b≻ab\succ a — while in F(πn)F(\pi^n), a≻ba\succ b. Somewhere the ranking flips: there is i∗i^* with b≻ab\succ a in F(πi∗−1)F(\pi^{i^*-1}) and a≻ba\succ b in F(πi∗)F(\pi^{i^*}).

Claim: i∗i^* is a dictator. Take any c≠dc\ne d with c≻i∗dc\succ_{i^*}d, and an alternative e∉{c,d}e\notin\{c,d\}. For i<i∗i<i^* move ee to the top; for i>i∗i>i^* move ee to the bottom; for i∗i^* place it so c≻i∗e≻i∗dc\succ_{i^*}e\succ_{i^*}d — by IIA none of this changes the social ranking of cc vs. dd. Now the profile of preferences on (c,e)(c,e) is identical to that on (a,b)(a,b) in πi∗\pi^{i^*}, and on (e,d)(e,d) identical to (a,b)(a,b) in πi∗−1\pi^{i^*-1}. By pairwise neutrality, c≻ec\succ e and e≻de\succ d, so by transitivity c≻dc\succ d.

∎

The Gibbard–Satterthwaite theorem

DefinitionManipulation, incentive compatibility, monotonicity

ff can be strategically manipulated by voter ii if for some profile and some ≺i′\prec_i', writing a=f(≺i,≺−i)a = f(\prec_i,\prec_{-i}) and a′=f(≺i′,≺−i)a' = f(\prec_i',\prec_{-i}), we have a≺ia′a\prec_i a' — a voter preferring a′a' can get it chosen by misrepresenting his preferences. ff is incentive compatible if it cannot be manipulated.

ff is monotone if f(≺i,≺−i)=a≠a′=f(≺i′,≺−i)f(\prec_i,\prec_{-i}) = a\ne a' = f(\prec_i',\prec_{-i}) implies a′≺iaa'\prec_i a and a≺i′a′a\prec_i' a' — if the choice changed when one voter changed his vote, it must be because he switched his preference between exactly those two alternatives.

ProofIncentive compatible   ⟺  \iff monotone

Quantifying out ≺−i\prec_{-i}: logically, “not monotone between ≺\prec and ≺′\prec'” is equivalent to “a voter with preference ≺\prec can manipulate by declaring ≺′\prec'” or “a voter with ≺′\prec' can manipulate by declaring ≺\prec.”

∎

TheoremGibbard–Satterthwaite

Let ff be an incentive compatible social choice function onto AA with ∣A∣≥3|A|\ge3. Then ff is a dictatorship.

NoteWhy “onto” is needed

Without it the bound on ∣A∣|A| has no bite — one can restrict the range to two alternatives and take a majority vote, breaking ties using preference information about points outside the range.

ProofBuild a social welfare function from ff and invoke Arrow

The idea: to decide whether a≺ba\prec b, move aa and bb to the top of every voter’s preference and see which ff chooses.

Notation. For S⊆AS\subseteq A, ≺S\prec^S moves all of SS to the top of ≺\prec while preserving order within SS and within its complement. The extension FF is defined by a≺ba\prec b iff f(≺1{a,b},…,≺n{a,b})=bf(\prec_1^{\{a,b\}},\ldots,\prec_n^{\{a,b\}}) = b.

Key claim: for any profile and any SS, f(≺1S,…,≺nS)∈Sf(\prec_1^S,\ldots,\prec_n^S)\in S. Take a∈Sa\in S; since ff is onto, some profile gives f=af = a. Now change ≺i\prec_i to ≺iS\prec_i^S one voter at a time. At no point can the output be some b∉Sb\notin S, since by monotonicity b≺iSa′b\prec_i^S a' for the previous outcome a′∈Sa'\in S.

From this claim everything follows:

  • Antisymmetry: the outcome lies in {a,b}\{a,b\}.
  • Transitivity: if a≺b≺c≺aa\prec b\prec c\prec a, take S={a,b,c}S=\{a,b,c\} and WLOG f(≺S)=af(\prec^S) = a; changing each ≺iS\prec_i^S to ≺i{a,b}\prec_i^{\{a,b\}}, monotonicity keeps the outcome aa, so a≻ba\succ b — contradiction.
  • Unanimity: if all prefer aa to bb, then (≺i{a,b}){a}=≺i{a,b}(\prec_i^{\{a,b\}})^{\{a\}} = \prec_i^{\{a,b\}}, so by the claim the outcome is aa.
  • IIA: flipping ≺i{a,b}\prec_i^{\{a,b\}} to ≺i′{a,b}\prec_i'^{\{a,b\}} one voter at a time cannot change the outcome, by monotonicity and the claim.
  • Nondictatorship: obvious.

∎

ImportantThe Procrustean bed

Gibbard–Satterthwaite seems to quash any hope of incentive compatible social choice. The whole field of Mechanism Design is an attempt to escape this impossibility by modifying the model. Two escape routes structure this note:

(Other escapes not covered: randomization, making preferences common knowledge, and weaker notions of implementation.)


Mechanisms with money

DefinitionQuasilinear preferences

We no longer model a preference as an order but as a valuation function vi:A→Rv_i : A\to\mathbb{R}, where vi(a)v_i(a) is the value ii assigns to aa in terms of currency. If aa is chosen and ii is additionally given mm money, his utility is

ui=vi(a)+mu_i = v_i(a) + m

Such quasilinear preferences denote the separable, linear dependence on money.

IntuitionWhat money adds

In the order model, a≻iba\succ_i b says nothing about by how much. Money is a yardstick allowing us to measure this — and, crucially, it can be transferred between players. Its existence is an assumption, but a fairly reasonable one, and it lets us do things otherwise impossible.

Vickrey’s second price auction

A single item among nn players, player ii willing to pay wiw_i. In our terms A={i-wins}A = \{i\text{-wins}\}, with vi(i-wins)=wiv_i(i\text{-wins}) = w_i and 0 otherwise. The natural social choice is to give the item to arg⁡max⁡jwj\arg\max_j w_j — but we don’t know the wiw_i; each player does. Our degree of freedom is the payment.

WarningThe two obvious payment rules both fail

  • No payment. Every player benefits by exaggerating wi′≫wiw_i'\gg w_i, winning even when his real value is not highest.
  • Pay your bid. A winner paying exactly wiw_i gets utility 0, so he should bid some wi′<wiw_i'<w_i, still winning but getting ui=wi−wi′>0u_i = w_i - w_i' > 0. What wi′w_i' then? If he knew the second highest bid he would bid just above it. But what if he doesn’t?

DefinitionVickrey’s second price auction

The winner is the player with highest declared wiw_i, and he pays the second highest declared bid p∗=max⁡j≠iwjp^* = \max_{j\ne i}w_j.

ProofManipulation never helps

If ii wins by bidding wiw_i, with second highest p∗p^*, then ui=wi−p∗≥0u_i = w_i - p^*\ge0. Any manipulation wi′>p∗w_i'>p^* still wins and still pays p∗p^*, so ui′=uiu_i' = u_i; any wi′≤p∗w_i'\le p^* loses, so ui′=0≤uiu_i' = 0\le u_i.

If ii loses, ui=0u_i = 0; let jj win, so wj≥wiw_j\ge w_i. Any wi′<wjw_i'<w_j still loses. Any wi′≥wjw_i'\ge w_j wins but pays wjw_j, giving ui′=wi−wj≤0=uiu_i' = w_i - w_j\le0 = u_i.

∎

ImportantWhat this elegant idea achieves

It reliably computes a function (arg⁡max⁡\arg\max) of nn numbers each held secretly by a different self-interested player. Philosophically this may be seen as the mechanics implementing Adam Smith’s invisible hand: despite private information and pure selfish behavior, social welfare is achieved. All of Mechanism Design is a generalization of this possibility.

Incentive compatible mechanisms and VCG

ConventionThe −i-i notation

v−i=(v1,…,vi−1,vi+1,…,vn)v_{-i} = (v_1,\ldots,v_{i-1},v_{i+1},\ldots,v_n), so v=(vi,v−i)v = (v_i, v_{-i}); similarly V−iV_{-i}, t−it_{-i}, x−ix_{-i}.

DefinitionDirect revelation mechanism, incentive compatibility

A (direct revelation) mechanism is a social choice function f:V1×⋯×Vn→Af : V_1\times\cdots\times V_n\to A together with payment functions pi:V1×⋯×Vn→Rp_i : V_1\times\cdots\times V_n\to\mathbb{R}.

It is incentive compatible (also strategy-proof, truthful) if for every ii, every profile, and every vi′v_i', writing a=f(vi,v−i)a = f(v_i,v_{-i}) and a′=f(vi′,v−i)a' = f(v_i',v_{-i}):

vi(a)−pi(vi,v−i)≥vi(a′)−pi(vi′,v−i)v_i(a) - p_i(v_i,v_{-i}) \ge v_i(a') - p_i(v_i',v_{-i})

Intuitively, ii prefers telling the truth to any possible lie.

DefinitionVCG mechanism

(f,p1,…,pn)(f,p_1,\ldots,p_n) is a Vickrey–Clarke–Groves mechanism if

f(v)∈argmax⁡a∈A∑ivi(a)(maximizes social welfare)f(v)\in\operatorname{argmax}_{a\in A}\sum_i v_i(a) \quad\text{(maximizes social welfare)}

and for some functions hi:V−i→Rh_i : V_{-i}\to\mathbb{R} (not depending on viv_i),

pi(v)=hi(v−i)−∑j≠ivj(f(v))p_i(v) = h_i(v_{-i}) - \sum_{j\ne i}v_j\big(f(v)\big)

IntuitionWhy this aligns incentives

The term −∑j≠ivj(f(v))-\sum_{j\ne i}v_j(f(v)) means each player is paid the sum of the values of all others. Added to his own vi(f(v))v_i(f(v)), the sum is exactly the total social welfare. So the mechanism aligns every player’s incentive with the social goal, which truth-telling achieves. The other term hi(v−i)h_i(v_{-i}) has no strategic implication for ii — from his point of view it is just a constant — though it does change how much money moves and in which direction.

TheoremVCG

Every VCG mechanism is incentive compatible.

ProofSubtract the same constant from both sides

Fix i,v−i,vi,vi′i, v_{-i}, v_i, v_i', and let a=f(vi,v−i)a = f(v_i,v_{-i}), a′=f(vi′,v−i)a' = f(v_i',v_{-i}). The utility when declaring viv_i is vi(a)+∑j≠ivj(a)−hi(v−i)v_i(a) + \sum_{j\ne i}v_j(a) - h_i(v_{-i}), and when declaring vi′v_i' it is vi(a′)+∑j≠ivj(a′)−hi(v−i)v_i(a')+\sum_{j\ne i}v_j(a')-h_i(v_{-i}). Since aa maximizes social welfare, vi(a)+∑j≠ivj(a)≥vi(a′)+∑j≠ivj(a′)v_i(a)+\sum_{j\ne i}v_j(a)\ge v_i(a')+\sum_{j\ne i}v_j(a'), and subtracting the same hi(v−i)h_i(v_{-i}) preserves the inequality.

∎

The Clarke pivot rule

Warninghi=0h_i = 0 is legal but silly

It is simple, but the mechanism then pays a great amount of money to the players. We would prefer players to pay the mechanism — but not more than their gain.

DefinitionTwo desirable properties, and the rule that gives them

  • (Ex-post) individually rational: players always get non-negative utility, vi(f(v))−pi(v)≥0v_i(f(v)) - p_i(v)\ge0.
  • No positive transfers: no player is ever paid, pi(v)≥0p_i(v)\ge0.

The Clarke pivot payment is hi(v−i)=max⁡b∈A∑j≠ivj(b)h_i(v_{-i}) = \max_{b\in A}\sum_{j\ne i}v_j(b), giving

pi(v)=max⁡b∑j≠ivj(b)−∑j≠ivj(a),a=f(v)p_i(v) = \max_b\sum_{j\ne i}v_j(b) - \sum_{j\ne i}v_j(a), \qquad a = f(v)

IntuitionInternalizing externalities

ii pays the total damage he causes the others — the difference between the social welfare of the others with and without his participation. The payments make each player internalize the externalities that he causes.

ProofVCG with Clarke pivot has both properties

Let aa maximize ∑jvj\sum_jv_j and bb maximize ∑j≠ivj\sum_{j\ne i}v_j.

Individual rationality (assuming vi≥0v_i\ge0): ii‘s utility is vi(a)+∑j≠ivj(a)−∑j≠ivj(b)≥∑jvj(a)−∑jvj(b)≥0v_i(a)+\sum_{j\ne i}v_j(a) - \sum_{j\ne i}v_j(b)\ge\sum_jv_j(a)-\sum_jv_j(b)\ge0, the first inequality since vi(b)≥0v_i(b)\ge0 and the second since aa maximizes.

No positive transfers: pi(v)=∑j≠ivj(b)−∑j≠ivj(a)≥0p_i(v) = \sum_{j\ne i}v_j(b)-\sum_{j\ne i}v_j(a)\ge0 since bb maximizes.

∎

NoteWhen valuations are negative

With costs rather than values, the Clarke rule has players always paying the mechanism, while the natural reading is the opposite. Its spirit is captured by choosing bb to maximize welfare “when ii does not participate”, whose exact meaning turns out natural in most applications.

Examples

SettingSocial choiceVCG / Clarke payment
Single itemhighest value winsexactly Vickrey’s second price auction
Reverse (procurement) auctionlowest cost suppliespay the lowest bidder the second lowest bid — “what would happen without ii“
Multiunit, unit demandthe kk highest bidders wineach winner pays the (k+1)(k{+}1)st highest offered price; losers pay 0
Bilateral tradetrade iff vb>vsv_b > v_sbuyer pays vsv_s, seller is paid vbv_b — the mechanism subsidizes the trade
Public projectbuild iff ∑ivi>C\sum_i v_i > Conly pivotal players pay: if ∑j≠ivj≤C\sum_{j\ne i}v_j\le C but ∑jvj>C\sum_jv_j>C, then pi=C−∑j≠ivjp_i = C - \sum_{j\ne i}v_j
Buying a paththe shortest ss–tt patheach e0e_0 on the path is paid ∑e∈p′ce−∑e∈p−{e0}ce\sum_{e\in p'}c_e - \sum_{e\in p-\{e_0\}}c_e, where p′p' is the shortest path avoiding e0e_0

WarningTwo deficits that turn out to be unavoidable

In bilateral trade, since vb>vsv_b>v_s whenever trade occurs, the mechanism pays out more than it collects. In the public project, one may verify ∑ipi<C\sum_i p_i < C unless ∑ivi=C\sum_iv_i = C — the payments never cover the project’s cost. Uniqueness of prices shows neither can be fixed.

NoteModelling the public project

This is not technically a subcase of welfare maximization as defined, since we assumed no costs to the designer — but it becomes one by adding an extra “government” player whose singleton valuation gives cost CC to undertaking the project and 0 otherwise.


Implementation in dominant strategies

The wider context. So far mechanisms extract information by motivating players to “tell the truth.” More generally one might devise a complex protocol that achieves the required social choice when players act strategically. This section formalizes those more general mechanisms.

DefinitionGame with strict incomplete information

For nn players: action sets XiX_i; type sets TiT_i, where ti∈Tit_i\in T_i is ii‘s private information; and utilities ui:Ti×X1×⋯×Xn→Ru_i : T_i\times X_1\times\cdots\times X_n\to\mathbb{R}.

Independent private values means ii‘s utility depends fully on his own private information, independent of others’. Strict incomplete information — sometimes “pre-Bayesian” — means no probabilistic information is in the model; from a CS perspective, worst-case analysis over unknown information.

ImportantWhy the interplay is delicate

Each player must choose xix_i knowing tit_i but not the other tjt_j. The tjt_j do not affect his utility, but they do affect how the others behave. A player’s total behavior is captured by a strategy si:Ti→Xis_i : T_i\to X_i, and it is these strategies we want in equilibrium.

DefinitionEx-post Nash and dominant strategies

  • s1,…,sns_1,\ldots,s_n is an ex-post-Nash equilibrium if for every profile of types the actions are in Nash equilibrium in the full-information game: for all i,t,xii,t,x_i, ui(ti,si(ti),s−i(t−i))≥ui(ti,xi,s−i(t−i))u_i(t_i,s_i(t_i),s_{-i}(t_{-i}))\ge u_i(t_i,x_i,s_{-i}(t_{-i})).
  • sis_i is (weakly) dominant if for all tit_i, all x−ix_{-i}, all xix_i: ui(ti,si(ti),x−i)≥ui(ti,xi,x−i)u_i(t_i,s_i(t_i),x_{-i})\ge u_i(t_i,x_i,x_{-i}).

IntuitionThe difference, and why both seem too good to be true

Ex-post Nash requires si(ti)s_i(t_i) to be a best response to s−i(t−i)s_{-i}(t_{-i}) for every t−it_{-i} — i.e. knowing nothing about t−it_{-i} but knowing the forms of the others’ strategies. Dominant strategy requires it against any x−ix_{-i} — knowing nothing about t−it_{-i} or s−is_{-i}.

How likely is a single action to be a best response to everything? In usual cases one does not expect such equilibria to exist at all. But in Mechanism Design we get to design the game, so we can sometimes make sure they do.

PropositionThe gap is only about unused actions

If ss is an ex-post-Nash equilibrium, define Xi′={si(ti):ti∈Ti}X_i' = \{s_i(t_i) : t_i\in T_i\} — the actual range of sis_i. Then ss is a dominant strategy equilibrium in the game with action spaces Xi′X_i'.

ProofEvery action in the range is some type’s action

Let xi=si(ti)x_i = s_i(t_i), xi′∈Xi′x_i'\in X_i', and xj′∈Xj′x_j'\in X_j' for j≠ij\ne i. By definition each xj′=sj(tj)x_j' = s_j(t_j) for some tjt_j. Ex-post Nash gives ui(ti,si(ti),s−i(t−i))≥ui(ti,xi′,s−i(t−i))u_i(t_i,s_i(t_i),s_{-i}(t_{-i}))\ge u_i(t_i,x_i',s_{-i}(t_{-i})), and since x−i′=s−i(t−i)x_{-i}' = s_{-i}(t_{-i}) this is exactly the dominance condition.

∎

DefinitionGeneral mechanism and implementation

A mechanism is type spaces TiT_i, action spaces XiX_i, alternatives AA, valuations vi:Ti×A→Rv_i : T_i\times A\to\mathbb{R}, an outcome function a:X1×⋯×Xn→Aa : X_1\times\cdots\times X_n\to A, and payments pi:X1×⋯×Xn→Rp_i : X_1\times\cdots\times X_n\to\mathbb{R}. The induced game has ui(ti,x)=vi(ti,a(x))−pi(x)u_i(t_i,x) = v_i(t_i,a(x)) - p_i(x).

It implements ff in dominant strategies if for some dominant strategy equilibrium ss, f(t)=a(s1(t1),…,sn(tn))f(t) = a(s_1(t_1),\ldots,s_n(t_n)) for all tt; similarly for ex-post.

NoteA weak requirement

Our definition requires only that some equilibrium yields ff, allowing others to exist. Stronger requirements would demand all equilibria do, or that the equilibrium be unique.

The revelation principle

TheoremRevelation principle

If any mechanism implements ff in dominant strategies, then an incentive compatible (direct revelation) mechanism implements ff — with identical payments to those obtained at equilibrium in the original.

ProofSimulate the equilibrium strategies

Let ss be a dominant strategy equilibrium. Define f(t)=a(s1(t1),…,sn(tn))f(t) = a(s_1(t_1),\ldots,s_n(t_n)) and pi′(t)=pi(s1(t1),…,sn(tn))p_i'(t) = p_i(s_1(t_1),\ldots,s_n(t_n)). Since each sis_i is dominant, for every ti,x−i,xit_i,x_{-i},x_i: vi(ti,a(si(ti),x−i))−pi(si(ti),x−i)≥vi(ti,a(xi,x−i))−pi(xi,x−i)v_i(t_i,a(s_i(t_i),x_{-i})) - p_i(s_i(t_i),x_{-i}) \ge v_i(t_i,a(x_i,x_{-i})) - p_i(x_i,x_{-i}). Taking x−i=s−i(t−i)x_{-i} = s_{-i}(t_{-i}) and xi=si(ti′)x_i = s_i(t_i') gives exactly incentive compatibility.

∎

CorollaryEx-post too

Restrict the action spaces to the ranges as in the proposition above, making ss dominant; then apply the revelation principle.

ImportantWhat the principle does not say

It does not mean indirect mechanisms are useless. General mechanisms may be adaptive (multiround), significantly reducing the communication or computation burden on the players or the auctioneer relative to a nonadaptive direct mechanism — combinatorial auctions being the example.


Characterizing incentive compatible mechanisms

The driving question. We can implement welfare maximization. What other social choice functions can we implement?

IntuitionWhy we want others

In economics, chiefly to increase revenue or introduce fairness. In computing, there are many natural optimization goals — in scheduling, the makespan, very different from total welfare. And crucially, computational considerations: often AA is complex and maximizing welfare is NP-complete, while efficient approximation algorithms exist. Such an algorithm is in effect a social choice function approximating welfare maximization but differing from it. Can it be implemented?

Direct characterization

TheoremIncentive compatibility, spelled out

A mechanism is incentive compatible iff for every ii and every v−iv_{-i}:

  1. The payment does not depend on viv_i, only on the alternative chosen. That is, there are prices pap_a for a∈Aa\in A with p(vi,v−i)=pap(v_i,v_{-i}) = p_a whenever f(vi,v−i)=af(v_i,v_{-i}) = a.
  2. The mechanism optimizes for each player: f(vi,v−i)∈argmax⁡a(vi(a)−pa)f(v_i,v_{-i})\in\operatorname{argmax}_a\big(v_i(a)-p_a\big), over the range of f(⋅,v−i)f(\cdot,v_{-i}).
ProofBoth directions

(If) With a,a′a,a' the outcomes and pa,pa′p_a,p_{a'} the payments, ii‘s truthful utility vi(a)−pav_i(a)-p_a is at least vi(a′)−pa′v_i(a')-p_{a'} precisely because the mechanism optimizes for him.

(Only if, condition 1) If two declarations give the same outcome but different payments, a player with the more expensive type declares the cheaper one. (Only if, condition 2) If some a′a' in the range beats f(vi,v−i)f(v_i,v_{-i}) for player ii, he declares whichever vi′v_i' produces a′a'.

∎

Weak monotonicity

DefinitionWMON

ff satisfies weak monotonicity if for all i,v−ii, v_{-i}: f(vi,v−i)=a≠b=f(vi′,v−i)f(v_i,v_{-i}) = a \ne b = f(v_i',v_{-i}) implies

vi(a)−vi(b) ≥ vi′(a)−vi′(b)v_i(a)-v_i(b)\ \ge\ v_i'(a)-v_i'(b)

— if the social choice changes when one player changes his valuation, it must be because he increased his value of the new choice relative to the old.

TheoremWMON characterizes, on convex domains

If a mechanism is incentive compatible then ff satisfies WMON. If all domains ViV_i are convex, then for every WMON social choice function there exist payments making it incentive compatible.

ProofThe easy direction

Fix i,v−ii,v_{-i}; by the direct characterization there are fixed prices pap_a. If f(vi,v−i)=a≠b=f(vi′,v−i)f(v_i,v_{-i}) = a\ne b = f(v_i',v_{-i}), then viv_i not preferring to declare vi′v_i' gives vi(a)−pa≥vi(b)−pbv_i(a)-p_a\ge v_i(b)-p_b, and vi′v_i' not preferring viv_i gives vi′(a)−pa≤vi′(b)−pbv_i'(a)-p_a\le v_i'(b)-p_b. Subtracting yields WMON.

∎

WarningWMON is local, and not sufficient in general

The converse direction is quite involved and is not given here; WMON is known not to be sufficient on general non-simply-connected domains.

Even where it holds, WMON leaves something to be desired: it is a local condition, for each player and each v−iv_{-i} separately. Is there a global characterization? That depends intimately on the domain ViV_i. Two extremes have good answers — ViV_i unrestricted and ViV_i essentially single dimensional. The intermediate range, where most computationally interesting problems lie, is still wide open.

Roberts’ theorem: unrestricted domains

DefinitionAffine maximizer

ff is an affine maximizer if for some subrange A′⊆AA'\subseteq A, player weights wi∈R+w_i\in\mathbb{R}^+, and outcome weights ca∈Rc_a\in\mathbb{R},

f(v)∈argmax⁡a∈A′(ca+∑iwivi(a))f(v)\in\operatorname{argmax}_{a\in A'}\Big(c_a+\sum_i w_iv_i(a)\Big)

PropositionWeighted VCG works

With pi(v)=hi(v−i)−∑j≠i(wj/wi)vj(a)−ca/wip_i(v) = h_i(v_{-i}) - \sum_{j\ne i}(w_j/w_i)v_j(a) - c_a/w_i, the mechanism is incentive compatible.

ProofMultiply by wi>0w_i>0

Assume WLOG hi=0h_i=0. Player ii‘s utility is vi(a)+∑j≠i(wj/wi)vj(a)+ca/wiv_i(a)+\sum_{j\ne i}(w_j/w_i)v_j(a)+c_a/w_i; multiplying by wi>0w_i>0, this is maximized exactly when ca+∑jwjvj(a)c_a+\sum_jw_jv_j(a) is — which is what truthful reporting produces.

∎

TheoremRoberts

If ∣A∣≥3|A|\ge3, ff is onto AA, Vi=RAV_i = \mathbb{R}^A for every ii, and the mechanism is incentive compatible, then ff is an affine maximizer.

NoteBoth hypotheses matter

The restriction ∣A∣≥3|A|\ge3 is crucial, as in Arrow’s theorem, since ∣A∣=2|A|=2 falls into the single-parameter case below, where non-weighted-VCG mechanisms exist. It remains open how far Vi=RAV_i = \mathbb{R}^A can be relaxed.

Single-parameter domains

DefinitionSingle parameter domain

Defined by a publicly known winning set Wi⊆AW_i\subseteq A and a range [t0,t1][t^0,t^1]: ViV_i consists of those viv_i for which, for some t0≤t≤t1t^0\le t\le t^1, vi(a)=tv_i(a) = t for a∈Wia\in W_i and vi(a)=0v_i(a) = 0 otherwise. We abuse notation and use viv_i as the scalar tt.

The point: all winning alternatives are equivalent to ii, and so are all losing ones. All the examples above fall into this category — in a single-item auction WiW_i is the single outcome where ii wins; in buying a path, WiW_i is the set of all paths containing edge ii.

DefinitionMonotone rules and critical values

ff is monotone in viv_i if vi≤vi′v_i\le v_i' and f(vi,v−i)∈Wif(v_i,v_{-i})\in W_i imply f(vi′,v−i)∈Wif(v_i',v_{-i})\in W_i — a higher valuation still wins.

For a monotone ff there is a critical value ci(v−i)=sup⁡vi:f(vi,v−i)∈Wivic_i(v_{-i}) = \sup_{v_i : f(v_i,v_{-i})\in W_i}v_i, below which ii loses and above which he wins (undefined if ii can never win). In a second price auction the critical value is the highest other declared value.

TheoremCharacterization on single-parameter domains

A normalized mechanism (losers pay 0) is incentive compatible iff

  1. ff is monotone in every viv_i, and
  2. every winning bid pays the critical value: pi(vi,v−i)=ci(v−i)p_i(v_i,v_{-i}) = c_i(v_{-i}) whenever f(vi,v−i)∈Wif(v_i,v_{-i})\in W_i.
ProofAll three parts

(If) Whatever ii declares, winning gives vi−ci(v−i)v_i - c_i(v_{-i}) and losing gives 0, so he prefers to win iff vi>ci(v−i)v_i>c_i(v_{-i}) — which is exactly what truth produces.

(Only if, monotonicity) If vi′>viv_i'>v_i with viv_i winning at price pp and vi′v_i' losing: viv_i not preferring to lose gives vi−p≥0v_i - p\ge0; vi′v_i' not preferring to win gives vi′−p≤0v_i' - p\le0. Contradiction.

(Only if, payment) If a winner pays p>ci(v−i)p>c_i(v_{-i}) then by the direct characterization all winners pay pp, including one with ci(v−i)<vi<pc_i(v_{-i})<v_i<p — who would rather lose by bidding below ci(v−i)c_i(v_{-i}). Conversely if p<ci(v−i)p<c_i(v_{-i}), a loser with ci(v−i)>vi>pc_i(v_{-i})>v_i>p would rather win.

∎

ImportantAmple room beyond affine maximization

We can implement e.g. maximizing the Euclidean norm argmax⁡a∑ivi2(a)\operatorname{argmax}_a\sqrt{\sum_iv_i^2(a)} or the egalitarian argmax⁡amin⁡ivi(a)\operatorname{argmax}_a\min_iv_i(a). In many cases this flexibility allows computationally efficient approximation mechanisms for problems whose exact optimization is intractable.

Uniqueness of prices

TheoremPayments are determined up to an additive constant

Assume the domains ViV_i are connected. If (f,p)(f,p) is incentive compatible, then (f,p′)(f,p') is incentive compatible iff pi′(v)=pi(v)+hi(v−i)p_i'(v) = p_i(v) + h_i(v_{-i}) for some functions hih_i.

ProofClose alternatives first, then connectedness

The “if” is clear since hih_i has no strategic implication. For “only if”: fix i,v−ii,v_{-i}; by the direct characterization the payment is a constant pap_a on Va={vi:f(vi,v−i)=a}V^a = \{v_i : f(v_i,v_{-i}) = a\}, and likewise pa′p_a'. It suffices to show pa−pb=pa′−pb′p_a - p_b = p_a'-p_b' for all a,ba,b.

Call a,ba,b close if for every ϵ>0\epsilon>0 there are via,vibv_i^a,v_i^b with ∥via−vib∥≤ϵ\lVert v_i^a - v_i^b\rVert\le\epsilon mapping to aa and bb respectively. For close a,ba,b: viav_i^a not preferring vibv_i^b gives via(a)−pa≥via(b)−pbv_i^a(a)-p_a\ge v_i^a(b)-p_b, and symmetrically, so

via(b)−via(a) ≤ pb−pa ≤ vib(b)−vib(a)v_i^a(b)-v_i^a(a)\ \le\ p_b-p_a\ \le\ v_i^b(b)-v_i^b(a)

and identically for p′p'. Since ∥via−vib∥≤ϵ\lVert v_i^a-v_i^b\rVert\le\epsilon, the two bounds are at most 2ϵ2\epsilon apart, so ∣(pb−pa)−(pb′−pa′)∣≤2ϵ|(p_b-p_a)-(p_b'-p_a')|\le2\epsilon; as ϵ\epsilon was arbitrary they are equal.

For general a,ba,b: let B={b:pb−pa=pb′−pa′}B = \{b : p_b-p_a = p_b'-p_a'\}. By transitivity of the relation, no alternative outside BB is close to one inside, so VBV^B has positive distance from VA−BV^{A-B} — contradicting connectedness of ViV_i.

∎

ImportantThree consequences

  1. The only incentive compatible mechanisms maximizing social welfare are those with VCG payments.
  2. In bilateral trade, the only welfare-maximizing incentive compatible mechanism making no payments under no-trade is the one that subsidizes trade. More generally, an ex-post individually rational mechanism cannot dictate positive payments under no-trade, so it must subsidize.
  3. In the public project, no ex-post individually rational welfare-maximizing mechanism can recover the cost. Players with value 0 pay 0 (as much as individual rationality permits), so their payments must be identical to the Clarke pivot ones.

NoteConnectedness is essential

If valuations are restricted to be integral, modifying pip_i by any small constants ϵ<1/2\epsilon<1/2 preserves incentive compatibility.

Randomized mechanisms

DefinitionTwo notions of incentive compatibility

A randomized mechanism is a distribution over deterministic mechanisms. It is incentive compatible

  • in the universal sense if every deterministic mechanism in the support is incentive compatible;
  • in expectation if truth is dominant in the game induced by expectation.

Universal implies in-expectation. In-expectation is the more natural requirement for most purposes; the universal definition matters if players are not risk neutral, or if the mechanism’s internal randomization is not completely hidden from the players.

TheoremRandomized single-parameter characterization

Writing wi(vi,v−i)=Pr⁡[f(vi,v−i)∈Wi]w_i(v_i,v_{-i}) = \Pr[f(v_i,v_{-i})\in W_i] and letting pip_i denote the expected payment, a normalized randomized mechanism on a single parameter domain is incentive compatible in expectation iff for every ii and v−iv_{-i}:

  1. wi(vi,v−i)w_i(v_i,v_{-i}) is monotonically nondecreasing in viv_i, and
  2. pi(vi,v−i)=vi⋅w(vi,v−i)−∫vi0viw(t,v−i) dt\displaystyle p_i(v_i,v_{-i}) = v_i\cdot w(v_i,v_{-i}) - \int_{v_i^0}^{v_i}w(t,v_{-i})\,dt
ProofBoth directions, dropping the indices

(If) We need vw(v)−p(v)≥vw(v′)−p(v′)vw(v)-p(v)\ge vw(v')-p(v'). Substituting the payment formula reduces this to ∫vv′w(t)dt≤(v′−v)w(v′)\int_{v}^{v'}w(t)dt\le(v'-v)w(v') for v′>vv'>v and the reverse for v′<vv'<v — both true by monotonicity.

(Only if) Combining the incentive constraints at vv and at v′v' and subtracting gives (v′−v)w(v)≤(v′−v)w(v′)(v'-v)w(v)\le(v'-v)w(v'), i.e. monotonicity. Rearranging the same two constraints,

v⋅(w(v′)−w(v)) ≤ p(v′)−p(v) ≤ v′⋅(w(v′)−w(v))v\cdot(w(v')-w(v))\ \le\ p(v')-p(v)\ \le\ v'\cdot(w(v')-w(v))

Setting v′=v+ϵv'=v+\epsilon, dividing by ϵ\epsilon, and letting ϵ→0\epsilon\to0, both sides approach v⋅dw/dvv\cdot dw/dv, so dp/dv=v⋅dw/dvdp/dv = v\cdot dw/dv. Integrating with p(v0)=0p(v^0)=0 and then integrating by parts gives the formula. (This appears to need differentiability of ww, but monotonicity gives it almost everywhere, which suffices since we immediately integrate.)

∎

WarningWhose randomness

The randomization here is completely controlled by the mechanism designer and has nothing to do with distributional assumptions on players’ valuations — which is the subject of the next section.


Bayesian–Nash implementation

Why relax. Dominant strategies model situations where a player has no information about others — not even a prior — and must operate under worst-case assumptions. This is usually considered too strict in economic theory, whose working definition assumes a commonly known prior and Bayesian optimization.

DefinitionGame with incomplete information

As before but with a prior distribution DiD_i on each type space TiT_i. A profile s1,…,sns_1,\ldots,s_n is a Bayesian–Nash equilibrium if for all ii, all tit_i, all xix_i:

ED−i[ui(ti,si(ti),s−i(t−i))] ≥ ED−i[ui(ti,xi,s−i(t−i))]\mathbb{E}_{D_{-i}}\big[u_i(t_i,s_i(t_i),s_{-i}(t_{-i}))\big]\ \ge\ \mathbb{E}_{D_{-i}}\big[u_i(t_i,x_i,s_{-i}(t_{-i}))\big]

A mechanism is truthful in the Bayesian sense if it is direct revelation and the truthful strategies si(ti)=tis_i(t_i)=t_i form a Bayesian–Nash equilibrium. The revelation principle holds here too, preserving expected payments.

NoteThe containment

Every ex-post-Nash implementation is by definition a Bayesian implementation for any distributions. But in general Bayesian implementation depends on the DiD_i, and there are many cases where a Bayesian–Nash equilibrium exists though no dominant-strategy one does — the first price auction being the example.

First price auction

Two players, Alice with value aa and Bob with value bb. Alice will not bid aa (utility 0 even winning), so she bids x<ax<a — but how much lower? If she knew Bob’s bid yy she would bid y+ϵy+\epsilon. But she knows neither yy nor bb, only the distribution DBobD_{Bob}.

LemmaEquilibrium of the first price auction

With values uniform on [0,1][0,1], the strategies x(a)=a/2x(a) = a/2 and y(b)=b/2y(b) = b/2 are in Bayesian–Nash equilibrium.

ProofMaximize 2x(a−x)2x(a-x)

Alice’s expected utility from bid xx is Pr⁡[win]⋅(a−x)\Pr[\text{win}]\cdot(a-x). Against y=b/2y = b/2 she wins iff x≥b/2x\ge b/2, which for bb uniform on [0,1][0,1] has probability 2x2x for 0≤x≤1/20\le x\le1/2 (and 1 above, 0 below). The optimum is clearly in [0,1/2][0,1/2], so maximize 2x(a−x)2x(a-x): differentiating, 2a−4x=02a-4x = 0, giving x=a/2x = a/2.

∎

NoteTwo observations

x<yx<y iff a<ba<b, so the winner is also the player with the highest value — the first price auction maximizes social welfare too, just like second price. And finding Bayesian–Nash equilibria is generally not easy; the closed form here relies on the symmetric case, though similar arguments work for arbitrary nonatomic distributions and any number of bidders.

Revenue equivalence

IntuitionThe surprising numerical coincidence

Second price revenue is min⁡(a,b)\min(a,b); first price revenue is max⁡(a/2,b/2)\max(a/2,b/2). Each is higher for certain values. But in expectation over a,ba,b uniform on [0,1][0,1], both equal exactly 1/31/3. This is no coincidence.

TheoremRevenue equivalence

Under weak assumptions, for every two Bayesian–Nash implementations of the same social choice function: if for some type ti0t_i^0 the expected payment of player ii is the same in both, then it is the same for every type tit_i. In particular, if for each player there exists such a type, the two mechanisms have identical expected revenues.

ProofPath from t0t^0 to t1t^1 through the convex valuation space

By the revelation principle restrict to Bayesian-truthful mechanisms. Assumption 1: each ViV_i is convex (or path-connected, with a messier proof).

Take ti1t_i^1 and derive the expected payment from that at ti0t_i^0 and from ff alone. Write v0=v(ti0,⋅)v^0 = v(t_i^0,\cdot), v1=v(ti1,⋅)v^1 = v(t_i^1,\cdot), and the convex combinations vλ=v0+λ(v1−v0)v^\lambda = v^0+\lambda(v^1-v^0); convexity gives a type tiλt_i^\lambda realizing each. Let pλp^\lambda be the expected payment at tiλt_i^\lambda, and wλ(a)=Pr⁡t−i[f(tiλ,t−i)=a]w^\lambda(a) = \Pr_{t_{-i}}[f(t_i^\lambda,t_{-i}) = a]. Assumption 2: wλw^\lambda is continuously differentiable in λ\lambda.

The expected utility of type tiλt_i^\lambda declaring tiλ′t_i^{\lambda'} is vλ⋅wλ′−pλ′v^\lambda\cdot w^{\lambda'} - p^{\lambda'}. Truthfulness at λ\lambda and at λ+ϵ\lambda+\epsilon gives

vλ(wλ+ϵ−wλ) ≤ pλ+ϵ−pλ ≤ vλ+ϵ(wλ+ϵ−wλ)v^\lambda(w^{\lambda+\epsilon}-w^\lambda)\ \le\ p^{\lambda+\epsilon}-p^\lambda\ \le\ v^{\lambda+\epsilon}(w^{\lambda+\epsilon}-w^\lambda)

Dividing by ϵ\epsilon and letting ϵ→0\epsilon\to0, both sides approach vλ⋅w′(λ)v^\lambda\cdot w'(\lambda), so dp/dλdp/d\lambda exists and is continuous. Integrating, p1=p0+∫01vλ⋅w′(λ) dλp^1 = p^0 + \int_0^1 v^\lambda\cdot w'(\lambda)\,d\lambda.

∎

ImportantCompare with uniqueness of prices

The similarity to Uniqueness of prices should be noted: in both, the allocation rule determines the payments up to a normalization — there for every fixed v−iv_{-i}, here in expectation over t−it_{-i}. The proofs look different for technical reasons but the underlying idea is the same: take two close types and put together the two constraints saying neither gains by misrepresenting as the other.

Consequently all the corollaries of Uniqueness of prices hold in expectation for all Bayesian–Nash implementations.

ExampleRaising revenue requires changing the allocation

Two bidders uniform on [0,1][0,1]. Put a reservation price of 1/21/2, selling to the highest bidder at the maximum of the low bid and 1/21/2, with no sale if both bid below. This is incentive compatible, and its expected revenue is 5/12>1/35/12 > 1/3. Revenue equivalence is not violated because the social choice function changed — sometimes nobody wins.


Further models

NoteRisk aversion

All the Bayesian discussion assumed risk neutrality: utility 2 with probability 1/21/2 equals utility 1 for sure, which is why we could just take expectations. Real players are often risk-averse, preferring lower but more certain utility. The revenue equivalence principle fails for such players: it is known that first price auctions generate more revenue than second price when bidders are risk-averse.

NoteInterdependent values

We assumed independent private values. In general there is a joint distribution over “states of the world”, and players get signals — partial information providing some about their own valuation and some about others’. Most results in this chapter cease holding.

The extreme opposite is the common value model: the object has exactly the same value for everyone, but nobody knows it (e.g. bonds, whose value depends on future interest rates and default probability). Here an auction serves as an information aggregation vehicle. The pitfall is the winner’s curse: if each bidder bids his own signal-based estimate, the winner will likely regret winning — winning means other signals implied a lower value. So in equilibrium bidders must bid an estimate conditioned on the fact that they win.

A common formalization combining both components is affiliated signals, where each player’s signal is positively correlated (in the strong technical sense of affiliation) with others’ values. There, ascending English auctions generate more revenue than the nonadaptive second price auction: as bidding progresses, each bidder gets information raising his estimate.

NoteComplete information models

Sometimes all players have complete information and only the mechanism designer lacks it. The prototype is King Solomon: two women each claiming the baby. Both know the truth; Solomon must design a mechanism eliciting it from their differing preferences. Mechanism design is much easier here, and many implementations without money are possible.

NoteHidden actions

All of Mechanism Design addresses private information. A complementary difficulty is hidden actions not visible to the mechanism — widely studied in economics and recently in computer science.


Escaping without money: restricted domains

ImportantThe Procrustean bed, and the second escape route

The Gibbard–Satterthwaite theorem is a Procrustean bed — escaped only by relaxing its assumptions. (Procrustes boasted of a bed whose length exactly matched its occupant; he neglected to mention this was achieved by stretching or butchering his guests to fit.)

In many applications it is clearly unreasonable to assume preferences are completely unrestricted. Where money can be transferred, we get the rich class of rules above. But there are important environments where money cannot be used as compensation — from ethical or institutional constraints: many political decisions must be made without transfers; organ donations can be arranged by “trade” among needy patients and their relatives, yet monetary compensation is illegal.

PropositionSmaller domains are easier

Consider problems (N,A,R1,…,Rn)(N,A,R_1,\ldots,R_n) and (N,A,R1′,…,Rn′)(N,A,R_1',\ldots,R_n') with Ri′⊆RiR_i'\subseteq R_i. If ff is strategy-proof for the former, its restriction f∣×Ri′f|_{\times R_i'} is strategy-proof for the latter.

Why: on a smaller domain, strategy-proofness imposes strictly fewer constraints. This justifies searching for reasonable (or at least nondictatorial) rules on smaller domains.

NotePublic versus private goods

The single-peaked model is a canonical public good setting (Ri=RjR_i = R_j for all i,ji,j). The matching problems are private good problems: each RiR_i contains only preferences sensitive to certain dimensions of AA — each agent cares only about his own consumption — so Ri≠RjR_i\ne R_j whenever i≠ji\ne j.


Single-peaked preferences over policies

DefinitionThe model

Policy space A=[0,1]A = [0,1]; an outcome is a point x∈Ax\in A. Agent ii‘s preference ⪰i\succeq_i is single-peaked if there is a peak pip_i such that for all x≠pix\ne p_i and all λ∈[0,1)\lambda\in[0,1),

(λx+(1−λ)pi) ≻i x(\lambda x + (1-\lambda)p_i)\ \succ_i\ x

— preference is strictly decreasing as one moves away from the peak. Let RR denote the class of such preferences; a rule is f:Rn→Af : R^n\to A.

IntuitionWhat this models

An income tax rate; a conservative/liberal political issue; the location of a public facility on a road; a group deciding the temperature of a shared office. In each, agents have an ideal policy and prefer decisions close to it.

DefinitionOnto, unanimity, Pareto-optimality

ff is onto if every x∈Ax\in A is chosen for some profile — it cannot preclude an outcome ex ante. Unanimity requires that if all peaks coincide, that point is chosen. Pareto-optimality requires no xx that all agents prefer to f(⪰)f(\succeq).

WarningOnto is not without loss of generality

Fix x,yx,y and consider the rule choosing whichever a majority prefers (ties to xx). That is strategy-proof but not onto. Such rules can even break ties using preference information about points x′,y′x',y' not in the range.

LemmaAmong strategy-proof rules, all three coincide

If ff is strategy-proof then onto   ⟺  \iff unanimous   ⟺  \iff Pareto-optimal.

ProofOne agent at a time

Pareto-optimality trivially implies the others. Onto ⇒\Rightarrow unanimous: fix xx with f(⪰)=xf(\succeq) = x, and any unanimous ⪰′\succeq' with all peaks at xx. By strategy-proofness f(⪰1′,⪰2,…)=xf(\succeq_1',\succeq_2,\ldots) = x (else agent 1 manipulates); repeating agent by agent gives f(⪰′)=xf(\succeq') = x.

Unanimous ⇒\Rightarrow Pareto-optimal: suppose not, so WLOG f(⪰)<pif(\succeq)<p_i for all ii, with agents labelled so p1≤⋯≤pnp_1\le\cdots\le p_n. If p1=pnp_1 = p_n, unanimity is violated. Otherwise let j<nj<n be the number of agents at the minimum peak. For i>ji>j let ⪰i′\succeq_i' have pi′=p1p_i' = p_1 and f(⪰)≻i′pi′f(\succeq)\succ_i' p_i'. Let xn=f(⪰1,…,⪰n−1,⪰n′)x_n = f(\succeq_1,\ldots,\succeq_{n-1},\succeq_n'). Strategy-proofness gives xn∈[f(⪰),pn]x_n\in[f(\succeq),p_n] (else agent nn with ⪰n\succeq_n manipulates via ⪰n′\succeq_n') and xn∉(f(⪰),pn]x_n\notin(f(\succeq),p_n] (else agent nn with ⪰n′\succeq_n' manipulates via ⪰n\succeq_n), so xn=f(⪰)x_n = f(\succeq). Repeating for each i>ji>j contradicts unanimity.

∎

The rules

IntuitionWhy the median works

With nn odd, the rule choosing the median of the peaks is strategy-proof. If an agent’s peak lies below the median, he can change the median only by reporting a peak above the true median — moving the outcome further from his own peak, making him worse off. Symmetrically above. And if his peak is the median, he cannot gain.

More generally the kkth highest peak is strategy-proof for the same reason: an agent can only move the kkth peak further from his own. The median is k=(n+1)/2k = (n+1)/2.

WarningAverages are manipulable

The rule choosing the average of the peaks is manipulable by any agent whose peak is not the average: he reports a more extreme peak (closer to 0 or 1). The same holds for any weighted average — with one exception: putting all weight on one agent, giving a dictatorial rule, which is strategy-proof and onto.

ImportantStrategy-proofness buys informational simplicity for free

A rule technically requires reporting an entire ordering over [0,1][0,1]. The rules above need only the peak — a single number. Under the onto assumption this informational property is a consequence of strategy-proofness: all strategy-proof onto rules can be computed from the peaks alone.

DefinitionAnonymity and the phantom-voter rules

ff is anonymous if f(⪰σ)=f(⪰)f(\succeq^\sigma) = f(\succeq) for any permutation — agents’ names play no role. Dictatorial rules are strategy-proof and onto but not anonymous.

Generalizing kkth-statistic rules: fix points y1,…,yn−1∈Ay_1,\ldots,y_{n-1}\in A and choose the median of the 2n−12n-1 points consisting of the nn peaks and the n−1n-1 fixed points. For some yy and some profiles this may choose a point that is no agent’s peak — yet it is strategy-proof for the same reason.

TheoremCharacterization with anonymity

ff is strategy-proof, onto and anonymous iff there exist y1,…,yn−1∈[0,1]y_1,\ldots,y_{n-1}\in[0,1] with

f(⪰)=med⁡{p1,…,pn,y1,…,yn−1}f(\succeq) = \operatorname{med}\{p_1,\ldots,p_n,y_1,\ldots,y_{n-1}\}

ProofConstruct the ymy_m from extreme profiles, then two cases

Let ⪰i0\succeq_i^0 and ⪰i1\succeq_i^1 be the (unique, since preferences are ordinal) preferences with peaks at 0 and 1. Construct ymy_m as the outcome when exactly mm agents have ⪰1\succeq^1 and the rest ⪰0\succeq^0. Strategy-proofness implies monotonicity: ym≤ym+1y_m\le y_{m+1}.

Take a profile with peaks ordered pi≤pi+1p_i\le p_{i+1} and let x∗=med⁡{p1,…,pn,y1,…,yn−1}x^* = \operatorname{med}\{p_1,\ldots,p_n,y_1,\ldots,y_{n-1}\}.

Case 1: x∗=ymx^* = y_m for some mm. By monotonicity pn−m≤ym≤pn−m+1p_{n-m}\le y_m\le p_{n-m+1}, and by construction ymy_m is the outcome at the extreme profile. Replace ⪰10\succeq_1^0 by ⪰1\succeq_1: strategy-proofness forces the outcome to stay x∗x^* (moving down would let the ⪰0\succeq^0-agent manipulate; moving up would let the ⪰1\succeq_1-agent manipulate, since p1≤ymp_1\le y_m). Repeating for each i≤n−mi\le n-m and symmetrically for i>n−mi>n-m gives f(⪰)=x∗f(\succeq) = x^*.

Case 2: ym<x∗<ym+1y_m<x^*<y_{m+1}, so x∗=pn−mx^* = p_{n-m}. It suffices to show f(⪰10,…,⪰n−m−10,⪰n−m,⪰n−m+11,…)=x∗f(\succeq_1^0,\ldots,\succeq_{n-m-1}^0,\succeq_{n-m},\succeq_{n-m+1}^1,\ldots) = x^*, after which repeated strategy-proofness finishes as in Case 1.

Suppose instead the outcome is x′<x∗x'<x^* (the case x′>x∗x'>x^* is symmetric). Since reporting ⪰n−m0\succeq_{n-m}^0 would give ymy_m, strategy-proofness gives ym≤x′<x∗y_m\le x'<x^*. Let OO be the option set — the outcomes agent n−mn-m can obtain by varying his report with the others fixed. Then x′,ym,ym+1∈Ox',y_m,y_{m+1}\in O, and strategy-proofness forces x′=max⁡{x∈O:x≤x∗}x' = \max\{x\in O : x\le x^*\}. One shows x′′≡inf⁡{x∈O:x≥x∗}x'' \equiv\inf\{x\in O : x\ge x^*\} is attained, so x′′>x∗x''>x^* and O∩(x′,x′′)=∅O\cap(x',x'')=\emptyset.

Now take symmetric preferences ⪰L,⪰H\succeq^L,\succeq^H with peaks just below and just above (x′+x′′)/2(x'+x'')/2. Strategy-proofness gives outcome x′′x'' under ⪰H\succeq^H, and repeated application shows this persists when all the ⪰0\succeq^0‘s become ⪰L\succeq^L. But Pareto-optimality (the earlier lemma) then forces the outcome under ⪰n−mL\succeq^L_{n-m} to be at least pLp^L, hence x′′x'' — while a separate chain of strategy-proofness arguments forces it into [x′,x′′−2ε][x',x''-2\varepsilon]. Contradiction.

∎

IntuitionThe ymy_m as degrees of compromise

They are the rule’s compromise when agents are extremists. If mm agents want 1 and n−mn-m want 0, a true median rule picks whichever extreme has more peaks; these rules may instead pick an intermediate ymy_m. The degree of compromise can depend on how divided opinion is (the size of mm).

DefinitionGeneralized median voter scheme

ff is a g.m.v.s. if there are 2n2^n points {αS}S⊆N\{\alpha_S\}_{S\subseteq N} with

  1. S⊆T  ⟹  αS≤αTS\subseteq T\implies\alpha_S\le\alpha_T,
  2. α∅=0\alpha_\emptyset = 0, αN=1\alpha_N = 1, and
  3. f(⪰)=max⁡S⊆Nmin⁡{αS, pi:i∈S}f(\succeq) = \max_{S\subseteq N}\min\{\alpha_S,\ p_i : i\in S\}.

Two remarks. Condition (1) is redundant — parameters failing it still define a strategy-proof rule, just one expressible by other parameters satisfying it. Condition (2) merely guarantees ontoness; parameters failing it give a strategy-proof rule with range [α∅,αN][\alpha_\emptyset,\alpha_N].

ExampleReading off the power of coalitions

If every agent in SS has peak 1 and the rest peak 0, the rule chooses αS\alpha_S — so the αS\alpha_S are a nonanonymous degree of compromise at extreme profiles.

Without anonymity some coalitions are more powerful. A large α{3}\alpha_{\{3\}} means more instances where agent 3’s peak is a candidate outcome; a small α{1}\alpha_{\{1\}} means more instances where agent 1 has no impact (whenever p1>α{1}p_1>\alpha_{\{1\}}).

TheoremFull characterization

ff is strategy-proof and onto iff it is a generalized median voter scheme. (Proof omitted; it has much in common with the anonymous case.)

Application: public good cost sharing

ExampleLabor for a public good

nn agents share a machine requiring the simultaneous labor of all of them. They jointly decide the number of hours ℓ\ell; after ℓ\ell hours the machine outputs y=Y(ℓ)y = Y(\ell) units of a public good, with YY increasing, strictly concave, Y(0)=0Y(0)=0. Agent ii has utility ui(ℓ,y)u_i(\ell,y) increasing in yy, decreasing in ℓ\ell, and quasi-concave.

Since outcomes lie on the graph of YY, and given the assumptions, agents have single-peaked preferences over this consumption space — so any strategy-proof onto rule is a g.m.v.s. operating along the graph of YY.

NoteThree technicalities glossed over

The outcome space is not bounded (though bounding it is reasonable); one should verify the preference domain yields all the single-peaked preferences needed for the characterization (the proof used symmetric ones); and one should show a strategy-proof rule here is invariant to utility information away from the graph of YY.

ImportantAdding individual rationality pins down a unique rule

ff is individually rational if every agent weakly prefers the outcome to walking away (ℓ=0\ell=0, y=0y=0). Translated to [0,1][0,1]: which g.m.v.s. has every agent weakly preferring the outcome to x=0x = 0?

There is a unique such rule: choose the minimum peak — i.e., ask each agent their most preferred labor level and take the minimum.


The house allocation problem

DefinitionThe model

NN agents, each owning a unique house and having a strict preference ordering over all nn houses. Reallocate the houses appropriately. (A modern version replaces houses with kidneys.)

Why Gibbard–Satterthwaite does not apply: although any strict ordering over houses is permitted, preferences over allocations are restricted — an agent is indifferent between all allocations giving her the same house.

ImportantWhy the core is the right solution concept

A new feature: agents control the resources to be allocated. An allocation can therefore be subverted by a subset who break away and trade among themselves. So we focus on allocations invulnerable to opting out.

DefinitionBlocking coalitions and the core

Number each house by its owner, so the initial allocation is ai=ia_i = i; feasibility means ai≠aja_i\ne a_j for i≠ji\ne j. For S⊆NS\subseteq N let A(S)A(S) be the allocations achievable by SS trading among themselves alone.

SS is a blocking coalition for aa if there is z∈A(S)z\in A(S) with, for all i∈Si\in S, either zi≻iaiz_i\succ_i a_i or zi=aiz_i = a_i, and strict for at least one. The core is the set of unblocked allocations.

(This is the natural modification of the transferable-utility core to a nontransferable-utility game.)

AlgorithmTop Trading Cycle Algorithm (TTCA)

Build a directed graph with one vertex per agent; if house jj is agent ii‘s kkth choice, insert edge i→ji\to j coloured kk. (An edge (i,i)(i,i) is a loop.)

First identify all cycles and loops using only colour-1 edges; strictness of preferences implies these are node-disjoint. Let N1N_1 be their vertices. Each cycle i1→i2→⋯→iri_1\to i_2\to\cdots\to i_r implies swaps: give house i1i_1 to iri_r, house iri_r to ir−1i_{r-1}, and so on. Delete all colour-1 edges and repeat with colour 2, giving N2N_2, and so on.

TheoremThe core is a singleton

The core of the house allocation problem consists of exactly one matching — the one returned by TTCA.

ProofPeel off N1N_1, then N2N_2, and so on

Under TTCA each agent in N1N_1 receives his favourite house, so N1N_1 blocks any allocation not assigning them those houses — any core allocation must agree with TTCA on N1N_1. Given that, each agent in N2N_2 receives his favourite house excluding those endowed by N1N_1, so any core allocation must agree on N2N_2 too. Continuing for each NkN_k shows at most one core allocation exists. (That the TTCA allocation is indeed unblocked is left to the reader.)

∎

TheoremTTC is strategy-proof

The direct mechanism associated with TTCA is strategy-proof.

ProofA misreporter cannot improve on his round

Let aa be the TTCA allocation at profile π\pi and suppose j∈Nkj\in N_k misreports, giving π′\pi' and a′a'. Observe ai′=aia_i' = a_i for all i∈⋃r=1k−1Nri\in\bigcup_{r=1}^{k-1}N_r, so aj′∈N∖⋃r<kNra_j'\in N\setminus\bigcup_{r<k}N_r. But TTCA chooses aja_j to be jj‘s top-ranked choice from exactly that set — contradicting aj′≻jaja_j'\succ_j a_j.

∎

NoteTwo extensions, both fragile

Indifference. With weak preferences one distinguishes the core (blocking requires all members strictly better) from the strict core (weak blocking). With strict preferences the two coincide: given a weakly blocking SS, remove any member not strictly better — he must have kept his own house — and repeat. With indifference, the strict core can be empty, or non-unique; deciding emptiness is polynomial in ∣N∣|N|.

Multiple goods per agent. Endow each agent with a home and a car. With sufficiently rich preferences over pairs the core can be empty — and it turns out the core can be empty even under severe restrictions, e.g. separable preferences, where one’s ranking over homes is independent of which car one has.


Stable matchings

DefinitionThe model

A set MM of men and WW of women, each with a strict preference ordering over the other side. A matching assigns each man to at most one woman and vice versa. Remaining single is accommodated by including a dummy partner for each agent, so we may assume ∣M∣=∣W∣|M| = |W|.

A matching is unstable if there are m,m′m,m' and w,w′w,w' with mm matched to ww, m′m' to w′w', and w′≻mww'\succ_m w and m≻w′m′m\succ_{w'}m' — the pair (m,w′)(m,w') is blocking. A matching with no blocking pair is stable.

ExampleThree men, three women

m1m_1m2m_2m3m_3w1w_1w2w_2w3w_3
w2w_2w1w_1w1w_1m1m_1m3m_3m1m_1
w1w_1w3w_3w2w_2m3m_3m1m_1m3m_3
w3w_3w2w_2w3w_3m2m_2m2m_2m2m_2

{(m1,w1),(m2,w2),(m3,w3)}\{(m_1,w_1),(m_2,w_2),(m_3,w_3)\} is unstable — (m1,w2)(m_1,w_2) blocks. But {(m1,w1),(m3,w2),(m2,w3)}\{(m_1,w_1),(m_3,w_2),(m_2,w_3)\} is stable.

AlgorithmDeferred acceptance (male-proposal)

Each man proposes to his top choice. Each woman with at least two proposals keeps (tentatively) her top one and rejects the rest. Each rejected man proposes to his top choice among women who have not rejected him. Repeat until no man has a woman to propose to, or every woman has at most one proposal.

This terminates in a matching: no man is assigned more than one woman, and since each woman keeps only one proposal, no woman is assigned more than one man.

ExampleRunning it on the table above

Round 1: m1→w2m_1\to w_2, m2→w1m_2\to w_1, m3→w1m_3\to w_1. Only w1w_1 has two proposals; she ranks m3m_3 above m2m_2, so she rejects m2m_2. Round 2: m2→w3m_2\to w_3. Every woman now has one proposal. The result is {(m1,w2),(m2,w3),(m3,w1)}\{(m_1,w_2),(m_2,w_3),(m_3,w_1)\} — stable, and different from the one found earlier.

TheoremThe algorithm produces a stable matching

Suppose (m1,w1)(m_1,w_1) blocks, with m1m_1 matched to w2w_2 and w1w_1 to m2m_2. Since w1≻m1w2w_1\succ_{m_1}w_2, m1m_1 proposed to w1w_1 before w2w_2; since he was not matched to her, she must have received a proposal she ranked higher, and since the algorithm matched her to m2m_2, m2≻w1m1m_2\succ_{w_1}m_1 — contradicting blocking.

DefinitionOptimality

μ\mu is male-optimal if there is no stable ν\nu with ν(m)⪰mμ(m)\nu(m)\succeq_m\mu(m) for all mm and strict for at least one. Similarly female-optimal.

TheoremMale-proposal gives the male-optimal stable matching

Suppose not; then some stable ν\nu dominates μ\mu for the men, so in the algorithm some man jj proposes to ν(j)\nu(j) before μ(j)\mu(j) and is rejected. Consider the first such rejection. Woman ν(j)\nu(j) rejected jj for some ii she prefers; since this is the first such rejection, ii ranks ν(j)\nu(j) above ν(i)\nu(i). So i≻ν(j)ji\succ_{\nu(j)}j and ν(j)≻iν(i)\nu(j)\succ_i\nu(i) — ν\nu is not stable, a contradiction.

ImportantNo matching is optimal for both sides

Running the algorithm with the women proposing also yields a stable matching, generally a different one. In the example, at least one woman is strictly better off under the female-optimal matching and none worse off — and symmetrically for the men. There is no matching optimal for both sides.

TheoremThe core equals the set of stable matchings

Define μ′\mu' to dominate μ\mu if there is S⊆M∪WS\subseteq M\cup W with (i) μ′(m),μ′(w)∈S\mu'(m),\mu'(w)\in S for all m,w∈Sm,w\in S and (ii) μ′\mu' preferred by all of SS. Stability is the special case of SS a single couple, and the set of undominated matchings — the core — is exactly the set of stable matchings.

TheoremStrategy-proofness, for one side only

The direct mechanism associated with the male-propose algorithm is strategy-proof for the males.

ProofReduce to a top-ranked misreport, then show nobody is worse off

Suppose m1m_1 can misreport ≻∗\succ^* and obtain ν(m1)≻m1μ(m1)\nu(m_1)\succ_{m_1}\mu(m_1), where μ,ν\mu,\nu are the male-propose outcomes at π\pi and π1\pi^1.

Step 1: assume the misreport ranks ν(m1)\nu(m_1) first. Let ≻ˉ\bar\succ rank ν(m1)\nu(m_1) first and π2=(≻ˉ,≻m2,…)\pi^2 = (\bar\succ,\succ_{m_2},\ldots). ν\nu is stable w.r.t. π2\pi^2: any blocking pair cannot involve m1m_1 (he gets his top choice), and the others’ preferences are unchanged, so it would block under π1\pi^1 too. Since the male-propose matching λ\lambda for π2\pi^2 is male optimal, λ(m1)=ν(m1)\lambda(m_1) = \nu(m_1).

Step 2: show B={mj:μ(mj)≻mjν(mj)}B = \{m_j : \mu(m_j)\succ_{m_j}\nu(m_j)\} is empty. If not, each mj∈Bm_j\in B is rejected by μ(mj)\mu(m_j) during the run on π1\pi^1; consider the first such rejection, say of mjm_j. Then μ(mj)\mu(m_j) has a proposal from some mkm_k with mk≻μ(mj)mjm_k\succ_{\mu(m_j)}m_j, and since mkm_k was not matched to μ(mj)\mu(m_j) under μ\mu, μ(mk)≻mkμ(mj)\mu(m_k)\succ_{m_k}\mu(m_j) — so mk∈Bm_k\in B, else μ(mj)⪰mkν(mk)⪰mkμ(mk)≻mkμ(mj)\mu(m_j)\succeq_{m_k}\nu(m_k)\succeq_{m_k}\mu(m_k)\succ_{m_k}\mu(m_j), a contradiction. But then mkm_k must have been rejected by μ(mk)\mu(m_k) before mjm_j was rejected, contradicting the choice of mjm_j.

Since B=∅B=\emptyset, all men are no worse off under ν\nu, contradicting male optimality of μ\mu.

∎

WarningNot strategy-proof for the other side

In the example, the male-propose algorithm gives {(m1,w2),(m2,w3),(m3,w1)}\{(m_1,w_2),(m_2,w_3),(m_3,w_1)\} and w1w_1 gets her second choice. Had she rejected m3m_3 instead of m2m_2, then m3→w2m_3\to w_2, who prefers m3m_3 to m1m_1 and rejects m1m_1, who then proposes to w1w_1 — whom she prefers to m2m_2. She ends up with her first choice by lying.

IntuitionThe analogy with Walrasian equilibrium

Walrasian equilibria exist and are solutions of a fixed point problem; where computable, it is because the equilibrium set is described by convex inequalities. The same holds here: stable matchings are the fixed points of a nondecreasing function on a lattice, and they are also the solutions of a system of linear inequalities. Both formulations follow.

Lattice formulation

DefinitionSemimatchings and the partial order

A male semimatching assigns each man at most one woman (but a woman may be assigned to more than one man); similarly female. A semimatching is a pair of these. Write μ(m)=m\mu(m) = m if mm is unassigned.

μ⪯ν\mu\preceq\nu if all men are weakly better off under μ\mu and all women weakly worse off. The join μ∨ν\mu\vee\nu takes, for each man, whichever of μ(m),ν(m)\mu(m),\nu(m) he prefers, and for each woman whichever she likes less; the meet reverses both. With these, the semimatchings form a compact lattice.

FormulaThe map whose fixed point we seek

f(μ)(m)f(\mu)(m) is mm‘s most preferred woman from {w:m≻wμ(w), m≠μ(w)}\{w : m\succ_w\mu(w),\ m\ne\mu(w)\}, or mm himself if that set is empty; and symmetrically f(μ)(w)f(\mu)(w).

TheoremExistence via Tarski

There is a semimatching with f(μ)=μf(\mu) = \mu, and it is a stable matching.

ProofMonotonicity, then verify the fixed point is a stable matching

ff is nondecreasing. If μ⪯ν\mu\preceq\nu then the women are worse off under μ\mu, so {w:m≻wν(w)}⊆{w:m≻wμ(w)}\{w : m\succ_w\nu(w)\}\subseteq\{w : m\succ_w\mu(w)\}, giving f(μ)(m)⪰mf(ν)(m)f(\mu)(m)\succeq_m f(\nu)(m); symmetrically for women. Tarski’s theorem then gives a fixed point μ\mu.

μ\mu is a matching. Suppose μ(m1)=μ(m2)=w∗\mu(m_1) = \mu(m_2) = w^*. Since f(μ)=μf(\mu)=\mu, w∗w^* is the top choice of both m1m_1 and m2m_2 in their respective sets, so μ(w∗)=m3\mu(w^*) = m_3 with m1,m2≻w∗m3m_1,m_2\succ_{w^*}m_3. But m3=f(μ)(w∗)m_3 = f(\mu)(w^*) is w∗w^*‘s top choice in {m:w∗≻mμ(m), μ(m)≠w∗}\{m : w^*\succ_m\mu(m),\ \mu(m)\ne w^*\}, a set containing m1,m2m_1,m_2 — contradiction.

μ\mu is stable. If (m∗,w∗)(m^*,w^*) blocks, with w′=μ(m∗)w' = \mu(m^*), then w∗≻m∗w′w^*\succ_{m^*}w'. But w′=f(μ)(m∗)w' = f(\mu)(m^*) is m∗m^*‘s top choice in a set containing w∗w^* — contradiction.

∎

Linear programming formulation

FormulaThe stable matching polytope

With xmw=1x_{mw} = 1 iff mm is matched to ww:

∑w∈Wxmw=1  ∀m,∑m∈Mxmw=1  ∀w\sum_{w\in W}x_{mw} = 1\ \ \forall m, \qquad \sum_{m\in M}x_{mw} = 1\ \ \forall w ∑j≺mwxmj+∑i≺wmxiw+xmw ≤ 1  ∀m,w,xmw≥0\sum_{j\prec_m w}x_{mj} + \sum_{i\prec_w m}x_{iw} + x_{mw}\ \le\ 1\ \ \forall m,w, \qquad x_{mw}\ge0

IntuitionWhat the third constraint says

If ∑j≺mwxmj=1\sum_{j\prec_m w}x_{mj} = 1 and ∑i≺wmxiw=1\sum_{i\prec_w m}x_{iw} = 1, then mm is matched to a woman he ranks below ww and ww to a man she ranks below mm — i.e. (m,w)(m,w) is a blocking pair. The constraint forbids exactly this.

TheoremIntegrality

PP is the convex hull of all stable matchings.

Extensions

NoteThree directions, with differing robustness

Indifference. Male- and female-optimal stable matchings need not exist, so the optimality theorem fails; the other theorems continue to hold.

Many-to-one. The college admissions market: each student attends one college, each college admits many, so colleges have preferences over subsets. Without restrictions a stable matching need not exist. One restriction under which everything carries over unchanged is the quota model: a strict ordering over students plus a quota rr, where between two size-rr sets differing in one student, the college prefers the one with the more preferred student.

Nonbipartite — the stable roommates problem. Partition ∣N∣|N| (even) individuals into pairs, each with strict preferences over the others. Stable matchings need not exist:

1234
2311
3122
4443

Pairing 1 with 4 is blocked by (1,2)(1,2); 2 with 4 by (2,3)(2,3); 3 with 4 by (3,1)(3,1). An O(∣N∣2)O(|N|^2) algorithm decides existence, and there is an associated system of linear inequalities feasible exactly when a solution exists.


Future directions

NoteMultiple locations on a graph

For the single-peaked model: choose multiple locations on an interval or more general graph, when each agent’s preference depends only on the closest one. When downloading files one cares only about the nearest mirror. If a planner elicits preferences to place kk mirrors on a network, how can this be done strategy-proofly?

NoteDynamic matching and kidney exchange

Both the house allocation and stable matching models are static, yet many resembling environments are dynamic. Kidney patients used to wait in a queue for a compatible organ; more recently exchange systems let patients “swap” incompatible but willing donors. (Alice needs a kidney and her friend Bob is willing but incompatible; Carmina and Dijen likewise. If Alice matches Dijen and Carmina matches Bob, a swap can be arranged.) Static versions have been analyzed; if donors and recipients arrive dynamically, how should swaps be arranged?


Quick reference

ObjectStatement
Condorcetmajority can cycle: a≻b≻c≻aa\succ b\succ c\succ a
Arrowunanimity ++ IIA ++ $
Incentive compatible   ⟺  \iff monotonea changed choice must reflect a switched pairwise preference
Gibbard–Satterthwaiteincentive compatible ++ onto ++ $
Quasilinear utilityui=vi(a)+mu_i = v_i(a) + m
Vickreyhighest bidder wins, pays the second highest bid
VCGff maximizes ∑ivi\sum_iv_i; pi=hi(v−i)−∑j≠ivj(f(v))p_i = h_i(v_{-i}) - \sum_{j\ne i}v_j(f(v))
Clarke pivothi=max⁡b∑j≠ivj(b)h_i = \max_b\sum_{j\ne i}v_j(b) — internalizes externalities; gives IR and no positive transfers
Revelation principleany dominant-strategy (or ex-post) implementation ⇒\Rightarrow an incentive compatible one, same payments
Direct characterizationpayment depends only on the alternative; the mechanism optimizes for each player
WMONvi(a)−vi(b)≥vi′(a)−vi′(b)v_i(a)-v_i(b)\ge v_i'(a)-v_i'(b); necessary always, sufficient on convex domains
Robertsunrestricted domains, $
Single parameterincentive compatible   ⟺  \iff monotone ++ winners pay the critical value
Uniqueness of pricespayments determined up to hi(v−i)h_i(v_{-i}), on connected domains
Randomized, single parameterwiw_i monotone and pi=viw(vi)−∫v0viw(t)dtp_i = v_iw(v_i) - \int_{v^0}^{v_i}w(t)dt
First price, uniform [0,1][0,1]equilibrium x(a)=a/2x(a) = a/2
Revenue equivalencesame social choice ++ one matching type ⇒\Rightarrow same expected revenue
Single-peaked, anonymousmedian of the nn peaks and n−1n-1 phantom points ymy_m
Single-peaked, generalgeneralized median voter schemes, parameters {αS}\{\alpha_S\}
Public good labor ++ IRthe minimum peak rule, uniquely
House allocationcore is the unique TTCA allocation; TTC is strategy-proof
Stable matchingdeferred acceptance gives a stable, male-optimal matching; core == stable matchings
Matching, strategy-proofnessholds for the proposing side only
Matching, alternative viewsfixed points of a monotone map on a lattice; integral LP polytope

Facts to keep to hand:

  • Gibbard–Satterthwaite is the pivot of the whole subject: money and restricted domains are the two escape routes, and this note is organized around them.
  • VCG works because the payment makes each player’s utility equal the total social welfare, so his interest and the designer’s coincide. Everything else about hih_i is strategically irrelevant.
  • The allocation rule determines the payments, twice over: exactly up to hi(v−i)h_i(v_{-i}) in dominant strategies, and in expectation up to a constant in the Bayesian setting. So raising revenue requires changing the allocation.
  • Bilateral trade must be subsidized and public projects cannot recover their cost — both are corollaries of that uniqueness, not accidents of the Clarke rule.
  • Single-parameter domains are where most algorithmic mechanism design lives, because monotonicity plus critical-value pricing is checkable and leaves room for non-affine objectives such as egalitarian welfare.
  • Without money, every positive result comes from a domain restriction that defeats the Gibbard–Satterthwaite construction: single-peakedness, indifference among allocations giving the same house, or indifference among matchings giving the same partner.
  • Both matching results are one-sided: deferred acceptance is optimal and strategy-proof for the proposing side and manipulable by the other. No two-sided optimum exists.

References

← All notes