csc304 lecture 8nisarg/teaching/304f19/...ย ยท mathematical setup csc304 - nisarg shah 9 โ€ขour goal...

27
CSC304 Lecture 8 Mechanism Design with Money: VCG mechanism CSC304 - Nisarg Shah 1

Upload: others

Post on 15-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

CSC304 Lecture 8

Mechanism Design with Money:

VCG mechanism

CSC304 - Nisarg Shah 1

Page 2: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

RECAP: Game Theory

CSC304 - Nisarg Shah 2

โ€ข Simultaneous-move Games

โ€ข Nash equilibria

โ€ข Prices of anarchy and stability

โ€ข Cost-sharing games, congestion games, Braessโ€™ paradox

โ€ข Zero-sum games and the minimax theorem

โ€ข Stackelberg games

Page 3: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mechanism Design with Money

CSC304 - Nisarg Shah 3

โ€ข Design the game structure in order to induce the desired behavior from the agents

โ€ข Desired behavior?โžข We will mostly focus on incentivizing agents to truthfully

reveal their private information

โ€ข With moneyโžข Can pay agents or ask agents for money depending on

what the agents report

Page 4: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 4

โ€ข A set of outcomes ๐ดโžข ๐ด might depend on which agents are participating.

โ€ข Each agent ๐‘– has a private valuation ๐‘ฃ๐‘– โˆถ ๐ด โ†’ โ„

โ€ข Auctions:โžข ๐ด has a nice structure.o Selling one item to ๐‘› buyers = ๐‘› outcomes (โ€œgive to ๐‘–โ€)

o Selling ๐‘š items to ๐‘› buyers = ๐‘›๐‘š outcomes

โžข Agents only care about which items they receiveo ๐ด๐‘– = bundle of items allocated to agent ๐‘–

o Use ๐‘ฃ๐‘– ๐ด๐‘– instead of ๐‘ฃ๐‘–(๐ด) for notational simplicity

โžข But for now, weโ€™ll look at the general setup.

Page 5: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 5

โ€ข Agent ๐‘– might misreport: report ๐‘ฃ๐‘– instead of ๐‘ฃ๐‘–

โ€ข Mechanism: (๐‘“, ๐‘)โžข Input: reported valuations ๐‘ฃ = ( ๐‘ฃ1, โ€ฆ , ๐‘ฃ๐‘›)

โžข ๐‘“ ๐‘ฃ โˆˆ ๐ด decides what outcome is implemented

โžข ๐‘ ๐‘ฃ = (๐‘1, โ€ฆ , ๐‘๐‘›) decides how much each agent payso Note that each ๐‘๐‘– is a function of all reported valuations

โ€ข Utility to agent ๐‘– : ๐‘ข๐‘– ๐‘ฃ = ๐‘ฃ๐‘– ๐‘“ ๐‘ฃ โˆ’ ๐‘๐‘– ๐‘ฃโžข โ€œQuasi-linear utilitiesโ€

Page 6: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 6

โ€ข Our goal is to design the mechanism (๐‘“, ๐‘)โžข ๐‘“ is called the social choice function

โžข ๐‘ is called the payment scheme

โžข We want to several things from our mechanism

โ€ข Truthfulness/strategyproofnessโžข For all agents ๐‘–, all ๐‘ฃ๐‘–, and all ๐‘ฃ,

๐‘ข๐‘– ๐‘ฃ๐‘– , ๐‘ฃโˆ’๐‘– โ‰ฅ ๐‘ข๐‘–( ๐‘ฃ๐‘– , ๐‘ฃโˆ’๐‘–)

โžข An agent is at least as happy reporting the truth as telling any lie, irrespective of what other agents report

Page 7: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 7

โ€ข Our goal is to design the mechanism (๐‘“, ๐‘)โžข ๐‘“ is called the social choice function

โžข ๐‘ is called the payment scheme

โžข We want to several things from our mechanism

โ€ข Individual rationalityโžข For all agents ๐‘– and for all ๐‘ฃโˆ’๐‘–,

๐‘ข๐‘– ๐‘ฃ๐‘– , ๐‘ฃโˆ’๐‘– โ‰ฅ 0

โžข An agent doesnโ€™t regret participating if she tells the truth.

Page 8: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 8

โ€ข Our goal is to design the mechanism (๐‘“, ๐‘)โžข ๐‘“ is called the social choice function

โžข ๐‘ is called the payment scheme

โžข We want to several things from our mechanism

โ€ข No payments to agentsโžข For all agents ๐‘– and for all ๐‘ฃ,

๐‘๐‘– ๐‘ฃ โ‰ฅ 0

โžข Agents pay the center. Not the other way around.

Page 9: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Mathematical Setup

CSC304 - Nisarg Shah 9

โ€ข Our goal is to design the mechanism (๐‘“, ๐‘)โžข ๐‘“ is called the social choice function

โžข ๐‘ is called the payment scheme

โžข We want to several things from our mechanism

โ€ข Welfare maximizationโžข Maximize ฯƒ๐‘– ๐‘ฃ๐‘– ๐‘“ ๐‘ฃ

o In many contexts, payments are less important (e.g. ad auctions)

o Or think of the auctioneer as another agent with utility ฯƒ๐‘– ๐‘๐‘– ๐‘ฃ

โ€ข Then, the total utility of all agents (including the auctioneer) is precisely the objective written above

Page 10: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Single-Item Auction

CSC304 - Nisarg Shah 10

Image Courtesy: Freepik

Rule 1: Each would tell me his/her value. Iโ€™ll give it to the one with the higher value.

Objective: The one who really needs it more should have it.

?

Page 11: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Single-Item Auction

CSC304 - Nisarg Shah 11

Image Courtesy: Freepik

Rule 2: Each would tell me his/her value. Iโ€™ll give it to the one with the higher value, but they have to pay me that value.

Objective: The one who really needs it more should have it.

?

Page 12: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Single-Item Auction

CSC304 - Nisarg Shah 12

Image Courtesy: Freepik

Implements the desired outcome. But not truthfully.

Objective: The one who really needs it more should have it.

?

Page 13: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Single-Item Auction

CSC304 - Nisarg Shah 13

Image Courtesy: Freepik

Rule 3: Each would tell me his/her value. Iโ€™ll give it to the one with the highest value, and charge them the second highest value.

Objective: The one who really needs it more should have it.

?

Page 14: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Single-item Vickrey Auction

CSC304 - Nisarg Shah 14

โ€ข Simplifying notation: ๐‘ฃ๐‘– = value of agent ๐‘– for the item

โ€ข ๐‘“ ๐‘ฃ : give the item to agent ๐‘–โˆ— โˆˆ argmax๐‘– ๐‘ฃ๐‘–

โ€ข ๐‘ ๐‘ฃ : ๐‘๐‘–โˆ— = max๐‘—โ‰ ๐‘–โˆ—

๐‘ฃ๐‘—, other agents pay nothing

Theorem:Single-item Vickrey auction is strategyproof.

Proof sketch:

Highest reported value among other agents

Case 1:๐‘ฃ๐‘– < ๐‘

True value of agent ๐‘–

Case 2๐‘ฃ๐‘– = ๐‘

Case 3๐‘ฃ๐‘– > ๐‘

Increasingvalue

๐‘

Page 15: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Vickrey Auction: Identical Items

CSC304 - Nisarg Shah 15

โ€ข Two identical xboxes

โžข Each agent ๐‘– only wants one, has value ๐‘ฃ๐‘–

โžข Goal: give to the agents with the two highest values

โ€ข Attempt 1

โžข To agent with highest value, charge 2nd highest value.

โžข To agent with 2nd highest value, charge 3rd highest value.

โ€ข Attempt 2

โžข To agents with highest and 2nd highest values, charge the 3rd

highest value.

โ€ข Question: Which attempt(s) would be strategyproof?

โžข Both, 1, 2, None?

Page 16: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG Auction

CSC304 - Nisarg Shah 16

โ€ข Recall the general setup:โžข ๐ด = set of outcomes, ๐‘ฃ๐‘– = valuation of agent ๐‘–, ๐‘ฃ๐‘– = what

agent ๐‘– reports, ๐‘“ chooses the outcome, ๐‘ decides payments

โ€ข VCG (Vickrey-Clarke-Groves Auction)โžข ๐‘“ ๐‘ฃ = ๐‘Žโˆ— โˆˆ argmax๐‘Žโˆˆ๐ด ฯƒ๐‘– ๐‘ฃ๐‘– ๐‘Ž

โžข ๐‘๐‘– ๐‘ฃ = max๐‘Ž

ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž โˆ’ ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Žโˆ—

Maximize welfare

๐‘–โ€™s payment = welfare that others lost due to presence of ๐‘–

Page 17: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

A Note About Payments

CSC304 - Nisarg Shah 17

โ€ข ๐‘๐‘– ๐‘ฃ = max๐‘Ž

ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž โˆ’ ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Žโˆ—

โ€ข In the first termโ€ฆโžข Maximum is taken over alternatives that are feasible

when ๐‘– does not participate.

โžข Agent ๐‘– cannot affect this term, so can ignore in calculating incentives.

โžข Could be replaced with any function โ„Ž๐‘– ๐‘ฃโˆ’๐‘–

o This specific function has advantages (weโ€™ll see)

Page 18: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Properties of VCG Auction

CSC304 - Nisarg Shah 18

โ€ข Strategyproofness:โžข Suppose agents other than ๐‘– report ๐‘ฃโˆ’๐‘–.

โžข Agent ๐‘– reports ๐‘ฃ๐‘– โ‡’ outcome chosen is ๐‘“ ๐‘ฃ = ๐‘Ž

โžข Utility to agent ๐‘– = ๐‘ฃ๐‘– ๐‘Ž โˆ’ โˆŽ โˆ’ ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

โžข Agent ๐‘– wants ๐‘Ž to maximize ๐‘ฃ๐‘– ๐‘Ž + ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

โžข ๐‘“ chooses ๐‘Ž to maximize ๐‘ฃ๐‘– ๐‘Ž + ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

โžข Hence, agent ๐‘– is best off reporting ๐‘ฃ๐‘– = ๐‘ฃ๐‘–

o ๐‘“ chooses ๐‘Ž that maximizes the utility to agent ๐‘–

Term that agent ๐‘– cannot affect

Page 19: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Properties of VCG Auction

CSC304 - Nisarg Shah 19

โ€ข Individual rationality:โžข ๐‘Žโˆ— โˆˆ argmax๐‘Žโˆˆ๐ด ๐‘ฃ๐‘– ๐‘Ž + ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

โžข ๐‘Ž โˆˆ argmax๐‘Žโˆˆ๐ด ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

๐‘ข๐‘– ๐‘ฃ๐‘– , ๐‘ฃโˆ’๐‘–

= ๐‘ฃ๐‘– ๐‘Žโˆ— โˆ’ ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Ž โˆ’ ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Žโˆ—

= ๐‘ฃ๐‘– ๐‘Žโˆ— + ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Žโˆ— โˆ’ ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Ž

= Max welfare to all agentsโˆ’ max welfare to others when ๐‘– is absent

โ‰ฅ 0

Page 20: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Properties of VCG Auction

CSC304 - Nisarg Shah 20

โ€ข No payments to agents:โžข Suppose the agents report ๐‘ฃ

โžข ๐‘Žโˆ— โˆˆ argmax๐‘Žโˆˆ๐ด ฯƒ๐‘— ๐‘ฃ๐‘— ๐‘Ž

โžข ๐‘Ž โˆˆ argmax๐‘Žโˆˆ๐ด ฯƒ๐‘—โ‰ ๐‘– ๐‘ฃ๐‘— ๐‘Ž

๐‘๐‘– ๐‘ฃ

= ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Ž โˆ’ ๐‘—โ‰ ๐‘–

๐‘ฃ๐‘— ๐‘Žโˆ—

= Max welfare to others when ๐‘– is absentโˆ’ welfare to others when ๐‘– is present

โ‰ฅ 0

Page 21: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

Properties of VCG Auction

CSC304 - Nisarg Shah 21

โ€ข Welfare maximization:โžข By definition, since ๐‘“ chooses the outcome maximizing

the sum of reported values

โ€ข Informal result:โžข Under minimal assumptions, VCG is the unique auction

satisfying these properties.

Page 22: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 22

โ€ข Suppose each agent has a value XBox and a value for PS4.

โ€ข Their value for {๐‘‹๐ต๐‘œ๐‘ฅ, ๐‘ƒ๐‘†4} is the max of their two values.

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Q: Who gets the xbox and who gets the PS4?

Q: How much do they pay?

Page 23: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 23

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Allocation:

โ€ข A4 gets XBox, A3 gets PS4

โ€ข Achieves maximum welfare of 7 + 6 = 13

Page 24: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 24

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Payments:

โ€ข Zero payments charged to A1 and A2โžข โ€œDeletingโ€ either does not change the outcome/payments for others

โ€ข Can also be seen by individual rationality

Page 25: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 25

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Payments:

โ€ข Payment charged to A3 = 11 โˆ’ 7 = 4โžข Max welfare to others if A3 absent: 7 + 4 = 11

o Give XBox to A4 and PS4 to A1

โžข Welfare to others if A3 present: 7

Page 26: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 26

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Payments:

โ€ข Payment charged to A4 = 12 โˆ’ 6 = 6โžข Max welfare to others if A4 absent: 8 + 4 = 12

o Give XBox to A3 and PS4 to A1

โžข Welfare to others if A4 present: 6

Page 27: CSC304 Lecture 8nisarg/teaching/304f19/...ย ยท Mathematical Setup CSC304 - Nisarg Shah 9 โ€ขOur goal is to design the mechanism (๐‘“, L) ๐‘“is called the social choice function Lis

VCG: Simple Example

CSC304 - Nisarg Shah 27

A1 A2 A3 A4

XBox 3 4 8 7

PS4 4 2 6 1

Final Outcome:

โ€ข Allocation: A3 gets PS4, A4 gets XBox

โ€ข Payments: A3 pays 4, A4 pays 6

โ€ข Net utilities: A3 gets 6 โˆ’ 4 = 2, A4 gets 7 โˆ’ 6 = 1