23
SECOND PART: Algorithmic Mechanism Design

SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

SECOND PART:Algorithmic Mechanism Design

Page 2: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Suggested readings

Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V. Vazirani, Cambridge University Press.

Algorithmic Mechanism Design for Network Optimization Problems, Luciano Gualà, PhD Thesis, Università degli Studi dell’Aquila, 2007.

Web pages by Éva Tardos, Christos Papadimitriou, Tim Roughgarden, and then follow the links therein

Page 3: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Implementation theory

Imagine a “planner” who develops criteria for social welfare, but cannot enforce the desirable allocation directly, as he lacks information about several parameters of the situation. A mean then has to be found to “implement” such criteria.

Page 4: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

The implementation problem

Given: An economic system comprising of self-

interested, rational agents, which hold some secret information

A set of system-wide goals Question:

Does there exist a mechanism that can implement the goals, by enforcing (through suitable economic incentives) the agents to cooperate with the system by revealing their private data?

Page 5: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design

Informally, designing a mechanism means to define a game in which a desired outcome must be reached

However, games induced by mechanisms are different from games in standard form: Players hold independent private values The payoff matrix is a function of these types each player doesn’t really know about the other

players’ payoffs, but only about its one!

Games with incomplete information Dominant Strategy Equilibrium is used

Page 6: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design Problem: ingredients

N agents; each agent has some private information tiTi (actually, the only private info) called type

A set of feasible outcomes F For each vector of types t=(t1, t2, …, tN), a social-

choice function f(t)F specifies an output that should be implemented (the problem is that types are unknown…)

Each agent has a strategy space Si and performs a strategic action; we restrict ourself to direct revelation mechanisms, in which the action is reporting a value ri from the type space (with possibly ri ti), i.e., Si = Ti

Page 7: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Example: the Vickrey Auction

Assume that the system-wide goal is to allocate a job by a sealed-bid auction. The set of feasible outcomes is given by all the bidders. The social-choice function is to allocate to the bidder with lowest true cost:

f(t)=arg mini (t1, t2, …, tN) Each agent knows its cost for doing the job (type), but

not the others’ one: Ti= [0, +]: The agent’s cost may be any positive

amount of money ti= 80: Minimum amount of money the agent i is

willing to be paid ri= 85: Exact amount of money the agent i bids to the

system for doing the job (not known to other agents)

Page 8: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design Problem: ingredients (2)

For each feasible outcome xF, each agent makes a valuation vi(ti,x) (in terms of some common currency), expressing its preference about that output

Vickrey Auction: If agent i wins the auction then its valuation is equal to its actual cost=ti for doing the job, otherwise it is 0

For each feasible outcome xF, each agent receives a payment pi(x) in terms of the common currency; payments are used by the system to incentive agents to be collaborative. Then, the utility of outcome x will be:

ui(ti,x) = pi(x) - vi(ti,x) Vickrey Auction: If agent’s cost for the job is 80, and it gets

the contract for 100 (i.e., it is paid 100), then its utility is 20

Page 9: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design Problem: the goal

Implement (according to a given equilibrium concept) the social-choice function, i.e., provide a mechanism M=<g(r), p(x)>, where:

g(r) is an algorithm which computes an outcome x=x(r) as a function of the reported types r

p(x) is a payment scheme specifying a payment w.r.t. an output x

such that x=f(t) is provided in equilibrium w.r.t. to the utilities of the agents.

Page 10: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design: a picture

Agent 1

Agent N

Mechanism

p1

pN

tN

t

1r

1

r

N

Private “types” Reported types

Payments

Output which should implement the social choice function

Each agent reports strategically to maximize its well-being…

…in response to a payment which is a function of the output!

Page 11: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Game induced by a MD problem

This is a game in which: The N agents are the players The payoff matrix is given (in

implicit form) by the utility functions

Page 12: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Implementation with dominant strategies

Def.: A mechanism is an implementation with dominant strategies if there exists a reported type vector r*=(r1

*, r2*, …, rN

*) such that f(t)=x(r*) in dominant strategy equilibrium, i.e., for each agent i and for each reported type vector r =(r1, r2, …, rN), it holds:

ui(ti,x(r-i,ri*)) ≥ ui(ti,x(r))

where x(r-i,ri*)=x(r1, …, ri-1, ri

*, ri+1,…, rN).

Page 13: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design: Economics Issues

QUESTION: How to design a mechanism? Or, in other words:

1. How to design g(r), and2. How to define the payment functions

in such a way that the underlying social-choice function is implemented? Under which conditions can this be done?

Page 14: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Strategy-Proof Mechanisms

If truth telling is the dominant strategy in a mechanism then it is called Strategy-Proof Agents report their true types instead

of strategically manipulating it Utilitarian Problems: A problem is

utilitarian if its objective function is such that f(t) = i vi(ti,x) The Vickrey Auction is utilitarian

Page 15: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Vickrey-Clarke-Groves (VCG) Mechanisms

A VCG-mechanism is (the only) strategy-proof mechanism for utilitarian problems: Algorithm g(r) computes:

x = arg minxF i vi(ri,x) Payment function:

pi (x)= hi(r-i) - j≠i vj(rj,x)where hi(r-i) is an arbitrary function of the types of

other players What about non-utilitarian problems? We will

see…

Page 16: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

VCG-Mechanisms are Strategy-Proof

Proof (Intuitive sketch): Payment given to agent i

pi (x)= hi(r-i)-j≠i vj(rj,x)

and both the terms above are independent of the type, strategy and valuation of agent i

So it is best for agent i to report its true value. Strategic behavior does not lead to a beneficial outcome.

Page 17: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Clarke Mechanisms

This is a special VCG-mechanism (known as Clarke mechanism) in which

hi(r-i)=j≠i vj(rj,x(r-i))

pi =j≠i vj(rj,x(r-i)) -j≠i vj(rj,x) In Clarke mechanisms, agents’ utility are

always non-negative

Page 18: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Clarke mechanism for the Vickrey auction

The VCG-mechanism is: x=arg minxF i vi(ri,x) allocate to the bidder with lowest

reported cost pi = j≠i vj(rj,x(r-i)) -j≠i vj(rj,x) pi = j≠i vj(rj,x(r-i)) pay the winner

the second lowest offer, and pay 0 the losers Let us convince ourself it is strategy-proof by case

analysis. For a player i, let T=minj≠i {rj}: ti<T: then, if ri<ti, he still wins, but he keeps on to be paid T,

while if ri>ti, he may still win (again being paid T), but he may also lose (if ri>T), by getting a null utility;

ti>T: then, if ri>ti, he keeps on not to win, while if ri<ti, he may win, but he will be paid T<ti, by getting a negative utility.

Remark: the difference between the second lowest offer and the lowest offer is unbounded (frugality issue)

Page 19: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

VCG-Mechanisms: Advantages

For System Designer: The goal, i.e., the optimization of the

social-choice function, is achieved with certainty.

For Agents: Agents have truth telling as the

dominant strategy, so they need not require any computational systems to deliberate about other agents strategies

Page 20: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

VCG-Mechanisms: Disadvantages

For System Designer: The payments may be sub-optimal System has to calculate N+1 functions

Once with all agents (for g(r)) and once for every agent (for the associated payment)

If the problem is hard to solve then the computational cost may be very heavy

For Agents: Agents may not like to tell the truth to

the system designer as it can be used in other ways.

Page 21: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Mechanism Design: Algorithmic Issues

QUESTION: What is the time complexity of the mechanism? Or, in other words:

What is the time complexity of g(r)? What is the time complexity to calculate

the N payment functions? What does it happen if it is NP-hard to

compute the underlying social-choice function?

Page 22: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Algorithmic mechanism design for graph problems

Following the Internet model, we assume that each agent owns a single edge of a graph G=(V,E), and establishes the cost for using it

The agent’s type is the true weight of the edge

Classic optimization problems on G become mechanism design optimization problems!

Many basic network design problems have been faced: shortest path (SP), single-source shortest paths tree (SPT), minimum spanning tree (MST), minimum Steiner tree, and many others

Page 23: SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V

Summary of forthcoming results

Centralized algorithm

Selfish-edge mechanism

SP O(m+n log n) O(m+n log n)

SPT O(m+n log n) O(m+n log n)

MST O(m (m,n)) O(m (m,n))

For all these problems, the time complexity of the mechanism equals that of the canonical centralized algorithm!