SECOND PART on AGT: Algorithmic Mechanism Design.

Slides:



Advertisements
Similar presentations
Combinatorial Auction
Advertisements

6.896: Topics in Algorithmic Game Theory Lecture 21 Yang Cai.
Algorithmic mechanism design Vincent Conitzer
6.896: Topics in Algorithmic Game Theory Lecture 20 Yang Cai.
Algorithmic Game Theory Uri Feige Robi Krauthgamer Moni Naor Lecture 10: Mechanism Design Lecturer: Moni Naor.
CPS Bayesian games and their use in auctions Vincent Conitzer
Nash’s Theorem Theorem (Nash, 1951): Every finite game (finite number of players, finite number of pure strategies) has at least one mixed-strategy Nash.
An Approximate Truthful Mechanism for Combinatorial Auctions An Internet Mathematics paper by Aaron Archer, Christos Papadimitriou, Kunal Talwar and Éva.
Multi-item auctions with identical items limited supply: M items (M smaller than number of bidders, n). Three possible bidder types: –Unit-demand bidders.
Optimal auction design Roger Myerson Mathematics of Operations research 1981.
Sep. 8, 2014 Lirong Xia Introduction to MD (mooncake design or mechanism design)
Game Theory 1. Game Theory and Mechanism Design Game theory to analyze strategic behavior: Given a strategic environment (a “game”), and an assumption.
The selfish-edges Shortest-Path problem. The selfish-edges SP problem Input: an undirected graph G=(V,E) such that each edge is owned by a distinct selfish.
Preference Elicitation Partial-revelation VCG mechanism for Combinatorial Auctions and Eliciting Non-price Preferences in Combinatorial Auctions.
A Sufficient Condition for Truthfulness with Single Parameter Agents Michael Zuckerman, Hebrew University 2006 Based on paper by Nir Andelman and Yishay.
Seminar In Game Theory Algorithms, TAU, Agenda  Introduction  Computational Complexity  Incentive Compatible Mechanism  LP Relaxation & Walrasian.
SECOND PART: Algorithmic Mechanism Design. Implementation theory Imagine a “planner” who develops criteria for social welfare, but cannot enforce the.
Bundling Equilibrium in Combinatorial Auctions Written by: Presented by: Ron Holzman Rica Gonen Noa Kfir-Dahav Dov Monderer Moshe Tennenholtz.
Algorithmic Applications of Game Theory Lecture 8 1.
Mechanism Design and the VCG mechanism The concept of a “mechanism”. A general (abstract) solution for welfare maximization: the VCG mechanism. –This is.
Lecture 1 - Introduction 1.  Introduction to Game Theory  Basic Game Theory Examples  Strategic Games  More Game Theory Examples  Equilibrium  Mixed.
Agent Technology for e-Commerce Chapter 10: Mechanism Design Maria Fasli
Beyond selfish routing: Network Formation Games. Network Formation Games NFGs model the various ways in which selfish agents might create/use networks.
SECOND PART: Algorithmic Mechanism Design. Mechanism Design MD is a subfield of economic theory It has a engineering perspective Designs economic mechanisms.
The selfish-edges Minimum Spanning Tree (MST) problem.
Combinatorial Auction. Conbinatorial auction t 1 =20 t 2 =15 t 3 =6 f(t): the set X  F with the highest total value the mechanism decides the set of.
Frugal Path Mechanisms by Aaron Archer and Eva Tardos Presented by Ron Lavi at the seminar: “Topics on the border of CS, Game theory, and Economics” CS.
Near-Optimal Network Design with Selfish Agents By Elliot Anshelevich, Anirban Dasgupta, Eva Tardos, Tom Wexler STOC’03 Presented by Mustafa Suleyman CIFTCI.
SECOND PART: Algorithmic Mechanism Design. Implementation theory Imagine a “planner” who develops criteria for social welfare, but cannot enforce the.
Complexity of Mechanism Design Vincent Conitzer and Tuomas Sandholm Carnegie Mellon University Computer Science Department.
SECOND PART: Algorithmic Mechanism Design. Mechanism Design MD is a subfield of economic theory It has a engineering perspective Designs economic mechanisms.
Mechanism Design Traditional Algorithmic Setting Mechanism Design Setting.
SECOND PART: Algorithmic Mechanism Design. Suggested readings Algorithmic Game Theory, Edited by Noam Nisan, Tim Roughgarden, Eva Tardos, and Vijay V.
Yang Cai Sep 8, An overview of the class Broad View: Mechanism Design and Auctions First Price Auction Second Price/Vickrey Auction Case Study:
SECOND PART: Algorithmic Mechanism Design. Mechanism Design Find correct rules/incentives.
CPS 173 Mechanism design Vincent Conitzer
Introduction 1 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAA A.
VCG Computational game theory Fall 2010 by Inna Kalp and Yosef Heskia.
Auction Seminar Optimal Mechanism Presentation by: Alon Resler Supervised by: Amos Fiat.
More on Social choice and implementations 1 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAA A Using slides by Uri.
6.853: Topics in Algorithmic Game Theory Fall 2011 Constantinos Daskalakis Lecture 21.
Mechanism Design CS 886 Electronic Market Design University of Waterloo.
Auction Theory תכנון מכרזים ומכירות פומביות Topic 7 – VCG mechanisms 1.
Market Design and Analysis Lecture 5 Lecturer: Ning Chen ( 陈宁 )
SECOND PART on AGT: Algorithmic Mechanism Design.
Algorithmic Mechanism Design: an Introduction Approximate (one-parameter) mechanisms, with an application to combinatorial auctions Guido Proietti Dipartimento.
The Minimum Spanning Tree (MST) problem in graphs with selfish edges.
Automated Mechanism Design Tuomas Sandholm Presented by Dimitri Mostinski November 17, 2004.
Beyond selfish routing: Network Games. Network Games NGs model the various ways in which selfish agents strategically interact in using a network They.
Beyond selfish routing: Network Games. Network Games NGs model the various ways in which selfish users (i.e., players) strategically interact in using.
Auctions serve the dual purpose of eliciting preferences and allocating resources between competing uses. A less fundamental but more practical reason.
Algorithmic Mechanism Design: an Introduction (with an eye to some basic network optimization problems) Guido Proietti Dipartimento di Ingegneria e Scienze.
The Shortest Path problem in graphs with selfish edges.
The Shortest-Path problem in graphs with selfish-edges.
SECOND PART on AGT: Algorithmic Mechanism Design.
6.853: Topics in Algorithmic Game Theory Fall 2011 Constantinos Daskalakis Lecture 22.
Algorithmic Mechanism Design Shuchi Chawla 11/7/2001.
Combinatorial Auction. A single item auction t 1 =10 t 2 =12 t 3 =7 r 1 =11 r 2 =10 Social-choice function: the winner should be the guy having in mind.
One-parameter mechanisms, with an application to the SPT problem.
Bayesian Algorithmic Mechanism Design Jason Hartline Northwestern University Brendan Lucier University of Toronto.
Network Formation Games. NFGs model distinct ways in which selfish agents might create and evaluate networks We’ll see two models: Global Connection Game.
Comp/Math 553: Algorithmic Game Theory Lecture 11
Comp/Math 553: Algorithmic Game Theory Lecture 08
SECOND PART: Algorithmic Mechanism Design.
The Shortest-Path problem in graphs with selfish-edges
Combinatorial Auction
Combinatorial Auction
Combinatorial Auction
Combinatorial Auction
Presentation transcript:

SECOND PART on AGT: Algorithmic Mechanism Design

The implementation problem Imagine you are a planner who develops criteria for social welfare, and you want to design a game (interaction among individuals, i.e., players) such that the equilibrium of the game (i.e., its outcome) conforms to some concept of social optimality (i.e., aggregation of players’ preferences w.r.t. to a certain outcome). Since these preferences of individuals are private, you have to disclose them in order to precisely evaluate the social utility of a certain outcome. However, it may be in the best interest of some agent to lie about its preferences. Indeed, this may lead to a certain outcome which improves its personal benefit, regardless if this may negatively affect other agents! Thus, in this strategic setting, which techniques can be used to convince players to cooperate honestly with the system?

The implementation problem (2) Given: An economic system comprising of self-interested, rational players, which hold some secret information A system-wide goal (social-choice function) Question: Does there exist a mechanism that can enforce (through suitable economic incentives) the players to behave in such a way that the desired goal is implemented (i.e., the outcome of the interaction is an equilibrium in which the s.c.f., obtained as an aggregation of players’ preferences, is optimized)?

Designing a Mechanism Informally, designing a mechanism means to define a game in which a desired outcome must be reached (in equilibrium) However, games induced by mechanisms are different from games seen so far: Players hold independent private values The payoff are 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

An example: sealed-bid auctions Social-choice function: the winner should be the guy having in mind the highest value for the painting An example: sealed-bid auctions t1=10 r1=11 ri: is the amount of money player i bids (in a sealed envelope) for the painting t2=12 r2=10 t3=7 r3=7 The mechanism tells to players: How the item will be allocated (i.e., who will be the winner), depending on the received bids (2) The payment the winner has to return, as a function of the received bids ti: is the maximum amount of money player i is willing to pay for the painting If player i wins and has to pay p then its utility is ui=ti-p, otherwise it is 0

A simple mechanism: no payment r1=+ ?!? t2=12 r2=+ t3=7 r3=+ Mechanism: The highest bid wins and the price of the item is 0 …it doesn’t work…

Another simple mechanism: pay your bid Is it the right choice? t1=10 The winner is player 1 and he’ll pay 9 r1=9 t2=12 r2=8 t3=7 r3=6 Mechanism: The highest bid wins and the winner will pay his bid Player i may bid ri< ti (in this way he is guaranteed not to incur a negative utility) …and so the winner could be the wrong one… …it doesn’t work…

An elegant solution: Vickrey’s second price auction I know they are not lying t1=10 The winner is player 2 and he’ll pay 10 r1=10 t2=12 r2=12 t3=7 r3=7 Mechanism: The highest bid wins and the winner will pay the second highest bid every player has convenience to declare the truth! (we prove it in the next slide)

Theorem In the Vickrey auction, for every player i, ri=ti is a dominant strategy proof Fix i and ti, and look at strategies for player i. Let R= maxji {rj} Case ti ≥ R (observe that R is unknown to player i) declaring ri=ti gives utility ui= ti-R ≥ 0 (player wins if ti > R, while if ti = R then player can either win or lose, depending on the tie-breaking rule, but its utility in this case is always 0) declaring any ri > R, ri≠ti, yields again utility ui= ti-R ≥ 0 (player wins) declaring any ri < R yields ui=0 (player loses) Case ti < R declaring ri=ti yields utility ui= 0 (player loses) declaring any ri < R, ri≠ti, yields again utility ui= 0 (player loses) declaring any ri > R yields ui= ti-R < 0 (player wins)  In all the cases, reporting a false type produces a not better utility, and so telling the truth is a dominant strategy!

Mechanism Design Problem: ingredients N players; each player i, i=1,..,N, has some private information tiTi (actually, the only private info) called type Vickrey’s auction: the type is the value of the painting that a player has in mind, and so Ti is the set of positive real numbers A set of feasible outcomes X (i.e., the result of the interaction of the players with the mechanism) Vickrey’s auction: X is the set of players (indeed an outcome of the auction is a winner of it, i.e., a player)

Mechanism Design Problem: ingredients (2) For each vector of types t=(t1, t2, …, tN), and for each feasible outcome xX, a social-choice function f(t,x) that measures the quality of x as a function of t. This is the function that the mechanism aims to implement (i.e., it aims to select an outcome x* that minimizes/maximizes it, but the problem is that types are unknown!) Vickrey’s auction: f(t,x) is the type associated with a feasible winner x (i.e., any player), and the objective is to maximize f, i.e., to allocate the painting to the bidder with highest type Each player has a strategy space Si and performs a strategic action; we restrict ourselves 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 Vickrey’s auction: the action is to bid a value ri

Mechanism Design Problem: ingredients (3) For each feasible outcome xX, each player makes a valuation vi(ti,x) (in terms of some common currency), expressing its preference about that output x Vickrey’s auction: if player i wins the auction then its valuation is equal to its type ti, otherwise it is 0 For each feasible outcome xX, each player receives a payment pi(x) by the system in terms of the common currency (a negative payment means that the agent makes a payment to the system); payments are used by the system to incentive players to be collaborative. Vickrey’s auction: if player i wins the auction then he makes a payment equal to -rj, where rj is the second highest bid, otherwise it is 0 Then, for each feasible outcome xX, the utility of player i (in terms of the common currency) coming from outcome x will be: ui(ti,x) = pi(x) + vi(ti,x) Vickrey’s auction: if player i wins the auction then its utility is equal to ui = -rj+ti ≥ 0, where rj is the second highest bid, otherwise it is ui = 0+0=0

Mechanism Design Problem: the goal Given all the above ingredients, design a mechanism M=<g(r), p(x)>, where: g(r) is an algorithm which computes an outcome x=x(r)X as a function of the reported types r p(x) =(p1,…,pN) is a payment scheme w.r.t. outcome x that specifies a payment for each player which implements the social-choice function f(t,x) in equilibrium w.r.t. players’ utilities (according to a given solution concept, e.g., dominant strategy equilibrium, Nash equilibrium, etc.). (In other words, there exists a reported type vector r* for which the mechanism provides a solution x(r*) and a payment scheme p(x(r*)) such that players’ utilities ui(ti, x(r*)) = pi(x(r*)) + vi(ti, x(r*)) are in equilibrium, and f(t, x(r*)) is optimal (either minimum or maximum))

Mechanism Design: a picture Output which should implement the social choice function in equilibrium w.r.t. players’ utilities System Private “types” Reported types t 1 “I propose to you the following mechanism M=<g(r), p(x)>” r 1 player 1 p1 tN r N pN player N Payments Each player reports strategically to maximize its well-being… …in response to a payment which is a function of the output!

Implementation with dominant strategies Def.: A mechanism is an implementation with dominant strategies if the s.c.f. f(t,x) is implemented in dominant strategy equilibrium, i.e., there exists a reported type vector r*=(r1*, r2*, …, rN*) such that: for each player 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); f(t,x(r*)) is optimized.

Strategy-Proof Mechanisms If truth telling is the dominant strategy in a mechanism then this is called Strategy-Proof or truthful  r*=t, and so players report their true types instead of strategically manipulating it, and the algorithm of the mechanism runs on the true input Strategy-proof mechanisms are very desirable from a system-wide point of view, since they disclose the true preferences of individuals. Notice, however, that f(t,x) could be also implemented in non-truthful dominant strategy. However, the revelation principle states that if there exists such an implementation, then there exists a truthful implementation as well.

Truthful Mechanism Design: Economics Issues QUESTION: How to design a truthful mechanism? Or, in other words: How to design g(r), and How to define the payment scheme p in such a way that the underlying social-choice function is implemented truthfully? Under which conditions can this be done?

A prominent class of problems Utilitarian problems: A problem is utilitarian if its social-choice function is such that f(t,x) = i vi(ti,x), i.e., the s.c.f. is separately-additive w.r.t. players’ valuations. Remark 1: the auction problem is utilitarian, in that f(t,x) is the type associated with the winner x, and the valuation of a player is either its type or 0, depending on whether it wins or not. Then, f(t,x) = i vi(ti,x). Remark 2: in many network optimization problems the s.c.f. is separately-additive Good news: for utilitarian problems there is a class of truthful mechanisms 

Vickrey-Clarke-Groves (VCG) Mechanisms A VCG-mechanism is (the only) strategy-proof mechanism for utilitarian problems: Algorithm g(r) computes: x = arg maxyX i vi(ri,y) Payment function for player i: pi (x) = hi(r-i) + j≠i vj(rj,x) where hi(r-i) is an arbitrary function of the types reported by players other than player i. What about non-utilitarian problems? Strategy-proof mechanisms are known only when the type is a single parameter.

Theorem VCG-mechanisms are truthful for utilitarian problems proof Fix i, r-i, ti. Let ř=(r-i,ti) and consider a strategy riti x=g(r-i,ti) =g(ř) x’=g(r-i,ri) ui(ti,x) = [hi(r-i) + jivj(rj,x)] + vi(ti,x) = hi(r-i) + jvj(řj,x) ui(ti,x’) = [hi(r-i) + jivj(rj,x’)] + vi(ti,x’) = hi(r-i) + jvj(řj,x’) but x is an optimal solution w.r.t. ř =(r-i,ti), i.e., x = arg maxyX i vi(ř,y) jvj(řj,x) ≥ jvj(řj,x’) ui(ti,x)  ui(ti,x’).

How to define hi(r-i)? Remark: not all functions make sense. For instance, what happens in our example of the Vickrey auction if we set for every player hi(r-i)=-1000 (notice this is independent of reported value ri of player i, and so it obeys the definition)? Answer: It happens that players’ utility become negative; more precisely, the winner’s utility is ui(ti,x) = pi(x) + vi(ti,x) = hi(r-i) + j≠i vj(rj,x) + vi(ti,x) = -1000+0+12 = -988 while utility of losers is ui(ti,x) = pi(x) + vi(ti,x) = hi(r-i) + j≠i vj(rj,x) + vi(ti,x) = -1000+12+0 = -988 This is undesirable in reality, since with such perspective players would not partecipate to the auction!

This is a special VCG-mechanism in which The Clarke payments solution maximizing the sum of valuations when player i doesn’t play This is a special VCG-mechanism in which hi(r-i) = -j≠i vj(rj,x(r-i)) pi(x) = -j≠i vj(rj,x(r-i)) +j≠i vj(rj,x) With Clarke payments, one can prove that players’ utility are always non-negative  players are interested in playing the game

The Vickrey’s auction is a VCG mechanism with Clarke payments Recall that auctions are utilitarian problem. Then, the VCG-mechanism associated with the Vickrey’s auction is: x = arg maxyX i vi(ri,y) …this is equivalent to allocate to the bidder with highest reported cost (in the end, the highest type, since it is strategy-proof) pi = -j≠i vj(rj,x(r-i)) +j≠i vj(rj,x) …this is equivalent to say that the winner pays the second highest offer, and the losers pay 0, respectively Remark: the difference between the second highest offer and the highest offer is unbounded (frugality issue)

VCG-Mechanisms: Advantages For System Designer: The goal, i.e., the optimization of the social-choice function, is achieved with certainty For players: players have truth telling as the dominant strategy, so they need not require any computational systems to deliberate about other players strategies

VCG-Mechanisms: Disadvantages For System Designer: The payments may be sub-optimal (frugality) Apparently, with Clarke payments, the system may need to run the mechanism’s algorithm N+1 times: once with all players (for computing the outcome x), and once for every player (for computing the associated payment)  If the problem is hard to solve then the computational cost may be very heavy For players: players may not like to tell the truth to the system designer as it can be used in other ways

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 implement the underlying social-choice function? Question: What is the time complexity of the Vickrey auction? Answer: Θ(N), where N is the number of players. Indeed, it suffices to check all the offers, by keeping track of the lowest one and second lowest one.

Algorithmic mechanism design and network protocols Large networks (e.g., Internet) are built and controlled by diverse and competitive entities: Entities own different components of the network and hold private information Entities are selfish and have different preferences  Mechanism design is a useful tool to design protocols working in such an environment, but time complexity is an important issue due to the massive network size

Algorithmic mechanism design for network optimization problems Simplifying the Internet model, we assume that each player owns a single edge of a graph G=(V,E), and privately knows the cost for using it  Classic optimization problems on G become mechanism design optimization problems in which the player’s type is the weight of the edge! Many basic network design problems have been studied in this framework: shortest path (SP), single-source shortest paths tree (SPT), minimum spanning tree (MST), and many others Remark: Quite naturally, SP and MST are utilitarian problems (indeed the cost of a solution is simply the sum of the edge costs), while the SPT is not! Can you see why?

Some remarks In general, network optimization problems are minimization problems (the Vickrey’s auction was instead a maximization problem) Accordingly, we have: for each xX, the valuation function vi(ti,x) represents a cost incurred by player i in the solution x (and so it is a negative function of its type) the social-choice function f(t,x) is negative (since it is an “aggregation” of negative functions), and so its maximization corresponds to a minimization of the negation of the valuation functions (i.e., a minimization of the aggregation of the costs incurred by the players) payments are now from the mechanism to players (i.e., they are positive)

Summary of main results Centralized algorithm Selfish-edge mechanism SP O(m+n log n) O(m+n log n) (VCG) SPT O(m+n log n) (single-parameter) MST O(m (m,n)) O(m (m,n)) (VCG)  For all these basic problems, the time complexity of the mechanism equals that of the canonical centralized algorithm!

Exercise: redefine the Vickrey auction in the minimization version I want to allocate the job to the true cheapest machine The winner is machine 3 and it will receive 10 t1=10 r1=10 t2=12 job to be allocated to machines r2=12 t3=7 r3=7 Once again, the second price auction works: the cheapest bid wins and the winner will get the second cheapest bid ti: cost incurred by i if he does the job if machine i is selected and receives a payment of p its utility is p-ti