12
Mechanism design

Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Embed Size (px)

Citation preview

Page 1: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Mechanism design

Page 2: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Goal of mechanism design

• Implementing a social choice function f(u1, …, u|A|) using a game

• Center = “auctioneer” does not know the agents’ preferences

• Agents may lie

• Goal is to design the rules of the game (aka mechanism) so that in equilibrium (s1, …, s|A|), the outcome of the game is f(u1, …, u|A|)

• Mechanism designer specifies the strategy sets Si and how outcome is determined as a function of (s1, …, s|A|) (S1, …, S|A|)

• Variants– Strongest: There exists exactly one equilibrium. Its outcome is f(u1, …, u|A|)

– Medium: In every equilibrium the outcome is f(u1, …, u|A|)

– Weakest: In at least one equilibrium the outcome is f(u1, …, u|A|)

Page 3: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Revelation principle• Any outcome that can be supported in Nash (dominant

strategy) equilibrium via a complex “indirect” mechanism can be supported in Nash (dominant strategy) equilibrium via a “direct” mechanism where agents reveal their types truthfully in a single step

Agent 1’s

preferences

Agent |A|’s

preferences

...

Strategy

formulator

Strategy

formulator

Strategy

Strategy Original“complex”“indirect”mechanism Outcome

Constructed “direct revelation” mechanism

Page 4: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Uses of the revelation principle• Literal: “Only direct mechanisms needed”

– Problems: • Strategy formulator might be complex

– Complex to determine and/or execute best-response strategy– Computational burden is pushed on the center (assumed away)– Thus the revelation principle might not hold in practice if these computational problems are hard– This problem traditionally ignored in game theory

• Even if the indirect mechanism has a unique equilibrium, the direct mechanism can have additional bad equilibria

• As an analysis tool– Best direct mechanism gives tight upper bound on how well any indirect

mechanism can do• Space of direct mechanisms is smaller than that of indirect ones• One can analyze all direct mechanisms & pick best one• Thus one can know when one has designed an optimal indirect mechanism (when it is as

good as the best direct one)

Page 5: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Implementation in dominant strategies

Strongest form of mechanism design

Page 6: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Implementation in dominant strategies

• Goal is to design the rules of the game (aka mechanism) so that in dominant strategy equilibrium (s1, …, s|A|), the outcome of the game is f(u1, …, u|A|)

• Nice in that agents cannot benefit from counterspeculating each other– Others’ preferences

– Others’ rationality

– Other’s endowments

– Other’s capabilities …

Page 7: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Gibbard-Satterthwaite impossibility

• Thrm. If |O | ≥ 3 (and each outcome would be the social choice under f for some input profile (u1, …, u|A|) ) and f is implementable in dominant strategies, then f is dictatorial

Page 8: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

General preferences

Quasilinear preferences

Page 9: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Special case where dominant strategy implementation is possible: Quasilinear preferences -> Clarke tax mechanism

• Outcome (x1, x2, ..., xk, m1, m2, ..., m|A| )• Quasilinear preferences: ui(x, m) = mi + vi(x1, x2, ..., xk)• Utilitarian setting: Social welfare maximizing choice

– Outcome s(v1, v2, ..., v|A|) = maxx i vi(x1, x2, ..., xk)

• Agent’s payment mi = ji vj(s(v)) - ji vj(s(v-i)) 0 is a “tax”• Thrm: Every agent’s dominant strategy is to reveal preferences truthfully

– Intuition: Agent internalizes the negative externality he imposes on others by affecting the outcome• Agent pays nothing if he does not change the outcome

• Example: k=1, x1=”joint pool built” or “not”, mi = $– E.g. equal sharing of construction cost: -c / |A|

No pool

Pool

$0

ui =5

ui =10

No pool

Pool

ui =5

u i =10

$0

General preferences Quasilinear preferences

Page 10: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Clarke tax mechanism… • Pros

– Social welfare maximizing outcome– Truth-telling is a dominant strategy– Feasible in that it does not need a benefactor (i mi 0)

• Cons– Budget balance not maintained (in pool example, generally i mi < 0)

• Have to burn the excess money that is collected• Thrm. [Green & Laffont 1979]. Let the agents have arbitrary quasilinear

preferences. No social choice function that is (ex post) welfare maximizing (taking into account money burning as a loss) is implementable in dominant strategies

• If there is some party that has no private information to reveal and no preferences over x, welfare maximization and budget balance can be obtained by having that party’s payment be m0 = - i=1.. mi

– Auctioneer could be called “agent 0”

– Vulnerable to collusion• Even by coalitions of just 2 agents

Page 11: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

Another approach for circumventing the impossibility of dominant-

strategy implementation

• Design the game so that (although manipulations exist), finding a beneficial manipulation is computationally so complex for an agent that the agent cannot do that– E.g. “Complexity of Manipulating Elections with Few

Candidates” [Conitzer & Sandholm AAAI-02, TARK-03]

– E.g. “Universal Voting Protocol Tweaks for Making Manipulation Hard” [Conitzer & Sandholm IJCAI-03]

Page 12: Mechanism design. Goal of mechanism design Implementing a social choice function f(u 1, …, u |A| ) using a game Center = “auctioneer” does not know the

General preferences

Quasilinear prefs

Yet another approach for circumventing the impossibility of dominant-strategy implementation

• Designing the mechanism automatically to the situation at hand [Conitzer & Sandholm]

– Input is the probabilistic information that the center has about the agents– Output is an optimal mechanism where the agents are motivated to reveal their

preferences truthfully, and a social objective is satisfied to the optimal extent– Advantages:

• Can be used even without side payments & quasilinear preferences• Could achieve better outcomes than Clarke tax mechanism• Circumvents impossibility in many cases

– “Complexity of Mechanism Design”• Designing a deterministic mechanism is NP-complete• Designing a randomized mechanism is fast

– No loss in social objective, sometime a gain• Both results also hold for Bayes-Nash implementation

– E.g., metal manufacturers with asymmetric production costs