CSC2556 Lecture 8 Mechanism Design with Money: VCG CSC2556 - - - PowerPoint PPT Presentation

csc2556
SMART_READER_LITE
LIVE PREVIEW

CSC2556 Lecture 8 Mechanism Design with Money: VCG CSC2556 - - - PowerPoint PPT Presentation

CSC2556 Lecture 8 Mechanism Design with Money: VCG CSC2556 - Nisarg Shah 1 Announcements Mid-project Check-in: Sent out a sign-up sheet. If you think it would help, sign up for a 30-minute slot and we can chat about your project.


slide-1
SLIDE 1

CSC2556 Lecture 8

Mechanism Design with Money: VCG

CSC2556 - Nisarg Shah 1

slide-2
SLIDE 2

Announcements

CSC2556 - Nisarg Shah 2

  • Mid-project Check-in:

➢ Sent out a sign-up sheet. ➢ If you think it would help, sign up for a 30-minute slot and

we can chat about your project.

  • Presentations:

➢ We’ll have presentations in the last 1.5 lectures with

about 20 minutes per group (17 minutes of presentation followed by 3 minutes of class discussion).

  • Reports: due April 15

➢ 4-5 pages ➢ Introduction, related work, model, results, future work

slide-3
SLIDE 3

Framework

CSC2556 - Nisarg Shah 3

  • Set 𝑂 of 𝑜 agents
  • Set 𝐵 of 𝑛 alternatives
  • Valuations 𝑤 = 𝑤𝑗 𝑗∈𝑂

➢ Agent 𝑗’s valuation: 𝑤𝑗: 𝐵 → ℝ

  • Mechanism 𝑁 = (𝑔, 𝑞)

➢ Social Choice Function: 𝑔 𝑤 ∈ 𝐵 is implemented ➢ Payment Vector: Agent 𝑗 pays 𝑞𝑗(𝑤)

slide-4
SLIDE 4

Framework

CSC2556 - Nisarg Shah 4

  • Quasi-linear utilities: 𝑤𝑗 𝑔 𝑤

− 𝑞𝑗 𝑤

  • Goal 1: Social Welfare Maximization

➢ Maximize σ𝑗 𝑤𝑗 𝑔 𝑤 ➢ Can think of welfare with auctioneer. Also important to

generate high-quality ads in ad auctions.

  • Goal 2: Revenue Maximization (we’ll skip this)

➢ Maximize σ𝑗 𝑞𝑗 𝑤

  • Individual Rationality (IR)

➢ Non-negative utilities: 𝑤𝑗 𝑔 𝑤

− 𝑞𝑗 𝑤 ≥ 0, ∀𝑗 ∈ 𝑂

➢ Bounds the revenue in goal 2.

slide-5
SLIDE 5

Framework

CSC2556 - Nisarg Shah 5

  • Difficulty:

➢ Agents may report incorrect valuations ෤

𝑤 = ෥ 𝑤𝑗 𝑗∈𝑂

➢ Agent 𝑗, given the reports of other agents ෤

𝑤−𝑗, wants to maximize her own utility 𝑤𝑗 𝑔 ෤ 𝑤𝑗, ෤ 𝑤−𝑗 − 𝑞𝑗 ෤ 𝑤𝑗, ෤ 𝑤−𝑗

  • Strategyproofness (SP)

➢ Each agent 𝑗 maximizes her utility by reporting her true

valuation 𝑤𝑗, regardless of what other agents report. 𝑤𝑗 ∈ argmax෤

𝑤𝑗 𝑤𝑗 𝑔 ෤

𝑤𝑗, ෤ 𝑤−𝑗 − 𝑞𝑗 ෤ 𝑤𝑗, ෤ 𝑤−𝑗 , ∀𝑗, ෤ 𝑤−𝑗

➢ Achieving SP is why we’ll need to charge payments in

Goal 1.

slide-6
SLIDE 6

Auctions

CSC2556 - Nisarg Shah 6

  • Sell a set of goods to a set of agents

➢ Similar to fair division, but now with payments ➢ Alternative 𝑏 → allocation 𝐵 ➢ Standard assumption:

  • Agent 𝑗’s value only depends on 𝐵𝑗
  • Instead of 𝑤𝑗(𝑏), we use 𝑤𝑗 𝐵𝑗
  • Single-item Auction

➢ Alternative 𝑏𝑗 : “agent 𝑗 gets the item” ➢ 𝑤𝑗 𝑏𝑗 → 𝑤𝑗 (shorthand), 𝑤𝑗 𝑏𝑘 = 0, ∀𝑗 ≠ 𝑘

slide-7
SLIDE 7

Single-Item Auction

CSC304 - Nisarg Shah 7 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.

?

slide-8
SLIDE 8

Single-Item Auction

CSC304 - Nisarg Shah 8 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.

?

slide-9
SLIDE 9

Single-Item Auction

CSC304 - Nisarg Shah 9 Image Courtesy: Freepik

Implements the desired outcome. But not in a strategyproof way. Objective: The one who really needs it more should have it.

?

slide-10
SLIDE 10

Single-Item Auction

CSC304 - Nisarg Shah 10 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.

?

slide-11
SLIDE 11

VCG: Single-Item

CSC304 - Nisarg Shah 11

  • 𝑔 : Give the item to agent 𝑗∗ ∈ argmax𝑗 𝑤𝑗
  • 𝑞 : 𝑞𝑗∗ = max

𝑘≠𝑗∗ 𝑤𝑘, other agents pay nothing

Theorem: VCG for a single item is strategyproof.

Highest reported value among other agents Case 1: 𝑤𝑗 < 𝑐 True value of agent 𝑗 Case 2 𝑤𝑗 = 𝑐 Case 3 𝑤𝑗 > 𝑐 Increasing Value 𝑐

slide-12
SLIDE 12

VCG: Identical Items

CSC304 - Nisarg Shah 12

  • Two identical Xboxes

➢ Each agent 𝑗 only wants one, has value 𝑤𝑗 ➢ Goal: Give to the agents with the two highest values

  • Attempt 1:

➢ Highest value → pay 2nd highest value ➢ 2nd highest value → pay 3rd highest value

  • Attempt 2:

➢ {Highest value, 2nd highest value} → pay 3rd highest value

  • Question: Which would be strategyproof?
slide-13
SLIDE 13

Vickrey Auction: General Case

CSC304 - Nisarg Shah 13

  • For the general case with arbitrary alternatives
  • Vickrey Auction

➢ 𝑔 𝑤 = argmax𝑏∈𝐵 σ𝑗 𝑤𝑗(𝑏) ➢ 𝑞𝑗 𝑤 = − σ𝑘≠𝑗 𝑤𝑘 𝑔 𝑤

  • Why is this SP?

➢ Suppose agent 𝑘 ≠ 𝑗 reports ෤

𝑤𝑘

➢ Utility to agent 𝑗 when reporting ෤

𝑤𝑗

  • 𝑤𝑗 𝑏 − − σ𝑘≠𝑗 ෤

𝑤𝑘 𝑏 = 𝑤𝑗 𝑏 + σ𝑘≠𝑗 ෤ 𝑤𝑘 𝑏

  • Mechanism chooses 𝑏 to maximize ෤

𝑤𝑗 𝑏 + σ𝑘≠𝑗 ෤ 𝑤𝑘 𝑏

  • Utility maximized when reporting ෤

𝑤𝑗 = 𝑤𝑗

Maximize social welfare Pay (not charge!) to each agent the total value to others

slide-14
SLIDE 14

Vickrey Auction

CSC304 - Nisarg Shah 14

  • This achieves social welfare maximization and

individual rationality (IR)

  • But: To give away my single xbox, I need to pay

each friend who doesn’t get it the value of the friend who gets it (I’m not that rich!)

  • Additional property:

➢ Agents pay the principal: 𝑞𝑗 𝑤 ≥ 0

slide-15
SLIDE 15

Idea

CSC304 - Nisarg Shah 15

  • Vickrey auction

➢ 𝑔 𝑤 = argmax𝑏∈𝐵 σ𝑗 𝑤𝑗(𝑏) ➢ 𝑞𝑗 𝑤 = − σ𝑘≠𝑗 𝑤𝑘 𝑔 𝑤

  • A slight modification

➢ 𝑔 𝑤 = argmax𝑏∈𝐵 σ𝑗 𝑤𝑗(𝑏) ➢ 𝑞𝑗 𝑤 = ℎ𝑗 𝑤−𝑗 − σ𝑘≠𝑗 𝑤𝑘 𝑔 𝑤

  • Still truthful. Agent 𝑗 has no control over his

additional payment ℎ𝑗 𝑤−𝑗

slide-16
SLIDE 16

VCG

CSC304 - Nisarg Shah 16

  • Clarke’s pivot rule

➢ ℎ𝑗 𝑤−𝑗 = max𝑏 σ𝑘≠𝑗 𝑤𝑘 𝑏 ➢ Maximum welfare to others if agent 𝑗 wasn’t there

  • VCG (Vickrey-Clarke-Groves Auction)

➢ 𝑔 𝑤 = 𝑏∗ = argmax𝑏∈𝐵 σ𝑗 𝑤𝑗(𝑏) ➢ 𝑞𝑗 𝑤 = max

𝑏

σ𝑘≠𝑗 𝑤𝑘 𝑏 − σ𝑘≠𝑗 𝑤𝑘 𝑏∗

  • Payment charged to agent 𝑗 = harm imposed on

the welfare of others by 𝑗’s presence

slide-17
SLIDE 17

VCG

CSC304 - Nisarg Shah 17

  • 𝑔 𝑤 = 𝑏∗ = argmax𝑏∈𝐵 σ𝑗 𝑤𝑗(𝑏)
  • 𝑞𝑗 𝑤 = max

𝑏

σ𝑘≠𝑗 𝑤𝑘 𝑏 − σ𝑘≠𝑗 𝑤𝑘 𝑏∗

  • We already saw that this is strategyproof.
  • We also have 𝑞𝑗 𝑤 ≥ 0. (Why?)
  • We maintain IR: 𝑞𝑗 𝑤 ≤ 𝑤𝑗 𝑏∗ . (Why?)
slide-18
SLIDE 18

VCG: Simple Example

CSC304 - Nisarg Shah 18

  • Let’s go back to giving away an xbox and a ps4.

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?

slide-19
SLIDE 19

VCG: Simple Example

CSC304 - Nisarg Shah 19

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
slide-20
SLIDE 20

VCG: Simple Example

CSC304 - Nisarg Shah 20

A1 A2 A3 A4 XBox 3 4 8 7 PS4 4 2 6 1

Payments:

  • Zero payments charged to A1 and A2
  • “Deleting” either of them does not change the outcome or

payments for others

  • Can also be seen by individual rationality
slide-21
SLIDE 21

VCG: Simple Example

CSC304 - Nisarg Shah 21

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

➢ Give XBox to A4 and PS4 to A1

  • Welfare to others if A3 present: 7
slide-22
SLIDE 22

VCG: Simple Example

CSC304 - Nisarg Shah 22

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

➢ Give XBox to A3 and PS4 to A1

  • Welfare to others if A4 present: 6
slide-23
SLIDE 23

VCG: Simple Example

CSC304 - Nisarg Shah 23

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
slide-24
SLIDE 24

Problems with VCG

CSC304 - Nisarg Shah 24

  • Difficult to understand

➢ Must reason about what would maximize others’ welfare

  • Possibly low revenue

➢ [Bulow-Klemperer 96]: With i.i.d. valuations,

𝔽[VCG revenue, 𝑜+1 agents] ≥ 𝔽[OPT revenue, 𝑜 agents]

  • Often NP-hard to implement

➢ Even computing the welfare maximizing allocation may

be computationally difficult

slide-25
SLIDE 25

Single-Minded Bidders

CSC304 - Nisarg Shah 25

  • Allocate a set 𝑇 of 𝑛 items
  • Each agent 𝑗 is described by (𝑤𝑗, 𝑇𝑗)

➢ Gets value 𝑤𝑗 if she receives all items in 𝑇𝑗 ⊆ 𝑇

(and possibly some other items)

➢ Gets value 0 if she doesn’t receive even one item in 𝑇𝑗 ➢ “Single-minded”

  • Welfare-maximizing allocation:

➢ Find a subset of players with the highest total value such

that their desired sets are disjoint

slide-26
SLIDE 26

Single-Minded Bidders

CSC304 - Nisarg Shah 26

  • Reduction to the Weighted Independent Set (WIS)

problem in graphs

➢ NP-hard ➢ No O(𝑛

1 2−𝜗) approximation (unless 𝑂𝑄 ⊆ 𝑎𝑄𝑄)

  • 𝑛-approximation through a simple greedy

algorithm in a strategyproof way

slide-27
SLIDE 27

Greedy Algorithm

CSC304 - Nisarg Shah 27

  • Input: (𝑤𝑗, 𝑇𝑗) for each agent 𝑗
  • Output: Agents with mutually independent 𝑇𝑗
  • Greedy Algorithm:

➢ Sort the agents in a specific order (we’ll see). ➢ Relabel them as 1,2, … , 𝑜 in this order. ➢ 𝑋 ← ∅ ➢ For 𝑗 = 1, … , 𝑜:

  • If 𝑇𝑗 ∩ 𝑇

𝑘 = ∅ for every 𝑘 ∈ 𝑋, then 𝑋 ← 𝑋 ∪ {𝑗}

➢ Give agents in 𝑋 their desired items.

slide-28
SLIDE 28

Greedy Algorithm

CSC304 - Nisarg Shah 28

  • Sort by what?
  • We want to satisfy agents with higher values.

➢ 𝑤1 ≥ 𝑤2 ≥ ⋯ ≥ 𝑤𝑜? 𝑛-approximation

  • But we don’t want to exhaust too many items.

𝑤1 𝑇1 ≥ 𝑤2 𝑇2 ≥ ⋯ 𝑤𝑜 𝑇𝑜 ? 𝑛-approximation

  • 𝑛-approximation :

𝑤1 𝑇1 ≥ 𝑤2 𝑇2 ≥ ⋯ 𝑤𝑜 𝑇𝑜 ? [Lehmann et al. 2011]

slide-29
SLIDE 29

Proof of Approximation

CSC2556 - Nisarg Shah 29

  • 𝑃𝑄𝑈 = Set of agents satisfied by optimal alg
  • 𝑋 = Set of agents satisfied by greedy alg
  • For 𝑗 ∈ 𝑋, let

𝑃𝑄𝑈𝑗 = 𝑘 ∈ 𝑃𝑄𝑈, 𝑘 ≥ 𝑗 ∶ 𝑇𝑗 ∩ 𝑇

𝑘 ≠ ∅

  • 𝑃𝑄𝑈 ⊆ڂ𝑗∈𝑋 𝑃𝑄𝑈𝑗 , so it suffices to show

𝑛 ⋅ 𝑤𝑗 ≥ Σ𝑘∈𝑃𝑄𝑈𝑗 𝑤𝑘

  • For each 𝑘 ∈ 𝑃𝑄𝑈𝑗 : 𝑤𝑘 ≤ 𝑤𝑗 ⋅

𝑇𝑘 𝑇𝑗

slide-30
SLIDE 30

Proof of Approximation

CSC2556 - Nisarg Shah 30

  • Summing over all 𝑘 ∈ 𝑃𝑄𝑈𝑗 :

Σ𝑘∈𝑃𝑄𝑈𝑗 𝑤𝑘 ≤ 𝑤𝑗 𝑇𝑗 ⋅ Σ𝑘∈𝑃𝑄𝑈𝑗 𝑇

𝑘

  • Using Cauchy-Schwarz (Σ𝑗 𝑦𝑗𝑧𝑗 ≤

Σ𝑗 𝑦𝑗

2 ⋅

Σ𝑗 𝑧𝑗

2)

Σ𝑘∈𝑃𝑄𝑈𝑗 𝑇

𝑘 ≤

𝑃𝑄𝑈𝑗 ⋅ Σ𝑘∈𝑃𝑄𝑈𝑗 𝑇

𝑘

≤ 𝑇𝑗 ⋅ 𝑛

slide-31
SLIDE 31

Strategyproofness

CSC2556 - Nisarg Shah 31

  • Agent 𝑗 pays 𝑞𝑗 = 𝑤𝑘∗ ⋅

|𝑇𝑗| 𝑇𝑘∗

➢ 𝑘∗ is the smallest index 𝑘 > 𝑗 such that 𝑇

𝑘 ∩ 𝑇𝑗 ≠ ∅ and

𝑇

𝑘 ∩ 𝑇𝑙 = ∅ for all 𝑙 < 𝑘, 𝑙 ≠ 𝑗

➢ This is not an arbitrary value.

  • It is the lowest ෤

𝑤𝑗 that agent 𝑗 can report, and still win.

  • With a lower value, 𝑘∗ goes first, wins, prevents 𝑗 from winning.
  • “Critical payment”

➢ Greedy rule is also monotonic: If agent 𝑗 wins reporting

(𝑤𝑗, 𝑇𝑗), she also wins reporting 𝑤𝑗

′ > 𝑤𝑗 and 𝑇𝑗 ′ ⊂ 𝑇𝑗.

  • Critical payment + monotonic ⇒ SP
slide-32
SLIDE 32

Take-Away

CSC304 - Nisarg Shah 32

  • VCG can sometimes be too difficult to implement

➢ Find a monotonic allocation rule that approximately

maximizes welfare

➢ Charge critical payments to agents

  • In this case, we used approximation for

computational reasons

➢ In facility location, we used approximation because we

couldn’t use monetary payments to get SP