a universally-truthful approximation scheme for multi-unit auction

151

Upload: thatchaphol-saranurak

Post on 29-Nov-2014

419 views

Category:

Education


2 download

DESCRIPTION

Presented in Seminar Algorithmic Game Theory. Everything is highly simplified. If someone sees mistakes, please don't hesitate to comment.

TRANSCRIPT

Page 1: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

A Universally-Truthful Approximation Scheme forMulti-unit Auction

Author : Berthold Vöcking

Presenter : Thatchaphol Saranurak

Seminar Algorithmic Game Theory

Saarland University

6 Dec 2011

Page 2: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 3: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 4: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 5: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 6: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 7: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 8: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 9: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 10: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multi-unit Auction

• m identical items

• n bidders

• Bidders bid : Valuation function vi

• vi : {0,1, ...,m}→ R>0

• how much i is willing to pay for each amount

• V = {v |v(0) = 0 and v is non-decreasing }

• Bidders get : Allocation s• s = (s1,s2, ...,sn) ∈ {0, ...,m}n: how much each gets

• feasible set A = {s | ∑ni=1 si6 m}

• vi(s) = vi(si)

• Objective : maximize social welfare ∑i vi(s) = v(s)

Page 11: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism

• Mechanism (f ,p)

• social choice function f : Vn → A

• payment scheme p = (p1,p2, ...,pn)

• pi : Vn → R

• k-approximation mechanism

• social welfare from mechanismoptimum social welfare ≥ k

• Polynomial time mechanism

• poly(n, logm)

Page 12: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism

• Mechanism (f ,p)

• social choice function f : Vn → A

• payment scheme p = (p1,p2, ...,pn)

• pi : Vn → R

• k-approximation mechanism

• social welfare from mechanismoptimum social welfare ≥ k

• Polynomial time mechanism

• poly(n, logm)

Page 13: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism

• Mechanism (f ,p)

• social choice function f : Vn → A

• payment scheme p = (p1,p2, ...,pn)

• pi : Vn → R

• k-approximation mechanism

• social welfare from mechanismoptimum social welfare ≥ k

• Polynomial time mechanism

• poly(n, logm)

Page 14: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism

• Mechanism (f ,p)

• social choice function f : Vn → A

• payment scheme p = (p1,p2, ...,pn)

• pi : Vn → R

• k-approximation mechanism

• social welfare from mechanismoptimum social welfare ≥ k

• Polynomial time mechanism

• poly(n, logm)

Page 15: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism

• Mechanism (f ,p)

• social choice function f : Vn → A

• payment scheme p = (p1,p2, ...,pn)

• pi : Vn → R

• k-approximation mechanism

• social welfare from mechanismoptimum social welfare ≥ k

• Polynomial time mechanism

• poly(n, logm)

Page 16: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Utility of Bidder

• let s = f (vi,v−i)

• v−i : all valuation functions, except i's valuation

• Utility of bidder i : vi(s) − pi(vi,v−i)

Page 17: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Utility of Bidder

• let s = f (vi,v−i)

• v−i : all valuation functions, except i's valuation

• Utility of bidder i : vi(s) − pi(vi,v−i)

Page 18: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 19: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Deterministic Mechanism

De�nition

Deterministically truthful

• Utility vi(s) − pi is maximized when i bids the true vi

Page 20: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Randomized Mechanism

• Randomized mechanism

• Probability distribution over deterministic mechanisms

De�nition

Universally truthful

• Each mechanism in distribution is truthful

De�nition

Truthful in expectation

• Expected utility is maximized when i bids the true vi

• Truthful only if bidders don't know outcome of random bits

Page 21: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Randomized Mechanism

• Randomized mechanism

• Probability distribution over deterministic mechanisms

De�nition

Universally truthful

• Each mechanism in distribution is truthful

De�nition

Truthful in expectation

• Expected utility is maximized when i bids the true vi

• Truthful only if bidders don't know outcome of random bits

Page 22: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Randomized Mechanism

• Randomized mechanism

• Probability distribution over deterministic mechanisms

De�nition

Universally truthful

• Each mechanism in distribution is truthful

De�nition

Truthful in expectation

• Expected utility is maximized when i bids the true vi

• Truthful only if bidders don't know outcome of random bits

Page 23: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Randomized Mechanism

• Randomized mechanism

• Probability distribution over deterministic mechanisms

De�nition

Universally truthful

• Each mechanism in distribution is truthful

De�nition

Truthful in expectation

• Expected utility is maximized when i bids the true vi

• Truthful only if bidders don't know outcome of random bits

Page 24: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 25: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Compare Di�erent Power of Truthfulness-es

Truthfulness Mechanism

Deterministically truthful 2-approx, poly-time

Universally truthful ?

Truthful in expectation(*) FPTAS

• PTAS

• for �xed ε > 0, (1− ε)-approximation• run in poly(n, logm)• may run in exp(1/ε).

• FPTAS

• PTAS, but run in poly(1/ε)

• (*) suggested : no poly-time universally truthful mechanism

has approximation ratio better than 2

Page 26: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Compare Di�erent Power of Truthfulness-es

Truthfulness Mechanism

Deterministically truthful 2-approx, poly-time

Universally truthful ?

Truthful in expectation(*) FPTAS

• PTAS

• for �xed ε > 0, (1− ε)-approximation• run in poly(n, logm)• may run in exp(1/ε).

• FPTAS

• PTAS, but run in poly(1/ε)

• (*) suggested : no poly-time universally truthful mechanism

has approximation ratio better than 2

Page 27: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Compare Di�erent Power of Truthfulness-es

Truthfulness Mechanism

Deterministically truthful 2-approx, poly-time

Universally truthful ?

Truthful in expectation(*) FPTAS

• PTAS

• for �xed ε > 0, (1− ε)-approximation• run in poly(n, logm)• may run in exp(1/ε).

• FPTAS

• PTAS, but run in poly(1/ε)

• (*) suggested : no poly-time universally truthful mechanism

has approximation ratio better than 2

Page 28: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Compare Di�erent Power of Truthfulness-es

Truthfulness Mechanism

Deterministically truthful 2-approx, poly-time

Universally truthful ?

Truthful in expectation(*) FPTAS

• PTAS

• for �xed ε > 0, (1− ε)-approximation• run in poly(n, logm)• may run in exp(1/ε).

• FPTAS

• PTAS, but run in poly(1/ε)

• (*) suggested : no poly-time universally truthful mechanism

has approximation ratio better than 2

Page 29: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

This Paper : �Universally Truthful Mechanism has PTAS�

Truthfulness Mechanism

Deterministically truthful 2-approx, poly-time

Universally truthful PTAS

Truthful in expectation FPTAS

Page 30: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 31: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiple-choice Knapsack Problem

• n classes of objects

• m objects, for each class

• each object k has weight wk and pro�t pk

• select 1 object from each class

• sum of weight ≤ m• maximize sum of pro�t

Page 32: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiple-choice Knapsack Problem

• n classes of objects

• m objects, for each class

• each object k has weight wk and pro�t pk

• select 1 object from each class

• sum of weight ≤ m• maximize sum of pro�t

Page 33: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reduce Maximizing Social Welfare → Knapsack Problem

• De�ne (i, j) be object for allocating j items to bidder i

• w(i,j) = j• p(i,j) = vi(j)

• Solve Knapsack = Optimize social welfare

• But still cannot solve in poly(n, logm)

• #object is n×m not poly(n, logm)

• Knapsack is NP-Hard!

Page 34: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reduce Maximizing Social Welfare → Knapsack Problem

• De�ne (i, j) be object for allocating j items to bidder i

• w(i,j) = j• p(i,j) = vi(j)

• Solve Knapsack = Optimize social welfare

• But still cannot solve in poly(n, logm)

• #object is n×m not poly(n, logm)

• Knapsack is NP-Hard!

Page 35: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reduce Maximizing Social Welfare → Knapsack Problem

• De�ne (i, j) be object for allocating j items to bidder i

• w(i,j) = j• p(i,j) = vi(j)

• Solve Knapsack = Optimize social welfare

• But still cannot solve in poly(n, logm)

• #object is n×m not poly(n, logm)

• Knapsack is NP-Hard!

Page 36: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reduce Maximizing Social Welfare → Knapsack Problem

• De�ne (i, j) be object for allocating j items to bidder i

• w(i,j) = j• p(i,j) = vi(j)

• Solve Knapsack = Optimize social welfare

• But still cannot solve in poly(n, logm)

• #object is n×m not poly(n, logm)

• Knapsack is NP-Hard!

Page 37: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reduce Maximizing Social Welfare → Knapsack Problem

• De�ne (i, j) be object for allocating j items to bidder i

• w(i,j) = j• p(i,j) = vi(j)

• Solve Knapsack = Optimize social welfare

• But still cannot solve in poly(n, logm)

• #object is n×m not poly(n, logm)

• Knapsack is NP-Hard!

Page 38: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 39: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 40: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 41: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 42: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 43: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 44: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Perturbed Valuation Function

• De�ne

• ∆ > 0 is some constant

• xji ∼ [0,1]

• q(k) : {0, ...,m}→ Z is number of factor 2 of k

• 96 = 25 ×3 so q(96) = 5

• q(k)≤ blogmc

• exception : q(0) = blogmc+1

• Perturbed valuation function

v′i(j) = v(j)+(2q(j)+ xji)∆

Page 45: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Poly-time Knapsack

• Set pro�t of object p(i,j) = v′i(j) instead of vi(j)

• Claim: Expected running time of Knapsack is

poly(n, logm, P/∆)

• P is second largest number of max bid vi(m)

• set ∆ be proportion to P ⇒ run in poly-time

Page 46: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Poly-time Knapsack

• Set pro�t of object p(i,j) = v′i(j) instead of vi(j)

• Claim: Expected running time of Knapsack is

poly(n, logm, P/∆)

• P is second largest number of max bid vi(m)

• set ∆ be proportion to P ⇒ run in poly-time

Page 47: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Poly-time Knapsack

• Set pro�t of object p(i,j) = v′i(j) instead of vi(j)

• Claim: Expected running time of Knapsack is

poly(n, logm, P/∆)

• P is second largest number of max bid vi(m)

• set ∆ be proportion to P ⇒ run in poly-time

Page 48: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Informal Explanation of Achieving Poly-time Knapsack

v′i(j) = v(j)+(2q(j)+ xji)∆

• term q(·) : can focus on only poly(n, logm, P/∆) objects

• Nice proof but have to skip.

• term x : can run Knapsack in poly(#object) time in expectation

• How ?

Page 49: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Informal Explanation of Achieving Poly-time Knapsack

v′i(j) = v(j)+(2q(j)+ xji)∆

• term q(·) : can focus on only poly(n, logm, P/∆) objects

• Nice proof but have to skip.

• term x : can run Knapsack in poly(#object) time in expectation

• How ?

Page 50: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Informal Explanation of Achieving Poly-time Knapsack

v′i(j) = v(j)+(2q(j)+ xji)∆

• term q(·) : can focus on only poly(n, logm, P/∆) objects

• Nice proof but have to skip.

• term x : can run Knapsack in poly(#object) time in expectation

• How ?

Page 51: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Use Randomness to Bound Running Time(Smoothed Analysis)

• �Hard instances� of Knapsack are �isolated�

• Random variable averages running time of hard instances with

easy instances

(�gures from: Smoothed Analysis Homepage)

Page 52: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Use Randomness to Bound Running Time(Smoothed Analysis)

• �Hard instances� of Knapsack are �isolated�

• Random variable averages running time of hard instances with

easy instances

(�gures from: Smoothed Analysis Homepage)

Page 53: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Use Randomness to Bound Running Time(Smoothed Analysis)

• �Hard instances� of Knapsack are �isolated�

• Random variable averages running time of hard instances with

easy instances

(�gures from: Smoothed Analysis Homepage)

Page 54: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

∆-Perturbed Maximizer

• ∆-perturbed maximizer = solving Knapsack with perturbed

valuation function

• Additive error• Reject low bidding

Page 55: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

∆-Perturbed Maximizer

• ∆-perturbed maximizer = solving Knapsack with perturbed

valuation function

• Additive error• Reject low bidding

Page 56: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 57: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 58: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 59: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 60: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 61: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Additive Error

• ∆-perturbed maximizer maximizes ∑ni=0 v′i(s)

• Social welfare is less than ∑ni=0 v′i(s)

0 ≤n

∑i=0

v′i(s)−n

∑i=0

vi(s)≤ (2blogmc+3)∆n

• v′i(j) = vi(j)+(2q(j)+ xji)∆

• q(j)≤ blogmc+1

• xji ≤ 1

• v′i(j)− vi(j)≤ (2blogmc+2+1)∆

Page 62: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 63: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 64: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 65: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 66: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 67: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Reject Low Bidding

• Max bid of bidder i :vi(m)

• Claim: if vi(m)< ∆ → bidder i get nothing si = 0

v′i(j) = v(j)+(2q(j)+ xji)∆

• vi(j)< vi(m)< ∆

• q(j)+1 ≤ q(0) and q is multiplied by ∆

• v′i is maximized when j = 0

Page 68: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary of ∆-Perturbed Maximizer

• Maximizes social welfare

• in poly-time• (2blogmc+3)∆n additive error• reject low bid

Page 69: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary of ∆-Perturbed Maximizer

• Maximizes social welfare

• in poly-time• (2blogmc+3)∆n additive error• reject low bid

Page 70: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary of ∆-Perturbed Maximizer

• Maximizes social welfare

• in poly-time• (2blogmc+3)∆n additive error• reject low bid

Page 71: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 72: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Want Function l Such That

1. Drop out : fail to compute with low prob

Pr[l(a) =⊥] = ε

2. Bound : if l(a) 6=⊥l(a)≤ a

3. Separation : if l(a1)< l(a2) 6=⊥

a1 < l(a2)−1

Page 73: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Want Function l Such That

1. Drop out : fail to compute with low prob

Pr[l(a) =⊥] = ε

2. Bound : if l(a) 6=⊥l(a)≤ a

3. Separation : if l(a1)< l(a2) 6=⊥

a1 < l(a2)−1

Page 74: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Want Function l Such That

1. Drop out : fail to compute with low prob

Pr[l(a) =⊥] = ε

2. Bound : if l(a) 6=⊥l(a)≤ a

3. Separation : if l(a1)< l(a2) 6=⊥

a1 < l(a2)−1

Page 75: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2.Bound

• τ ∼ [0,1]

• xτ(i) = (i+ τ) 1ε; i ∈ Z

1/𝜖

𝑙 𝑎 = 𝑥𝜏(𝑘) 𝑎

1

𝑑

𝑥𝜏(𝑘 + 1) 𝑙 . =⊥

• let k be largest integer s.t. xτ(k)≤ a

• lτ(a) =

{xτ(k) ; d > 1⊥ ; d ≤ 1

• So lτ(a)≤ a

Page 76: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2.Bound

• τ ∼ [0,1]

• xτ(i) = (i+ τ) 1ε; i ∈ Z

1/𝜖

𝑙 𝑎 = 𝑥𝜏(𝑘) 𝑎

1

𝑑

𝑥𝜏(𝑘 + 1) 𝑙 . =⊥

• let k be largest integer s.t. xτ(k)≤ a

• lτ(a) =

{xτ(k) ; d > 1⊥ ; d ≤ 1

• So lτ(a)≤ a

Page 77: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2.Bound

• τ ∼ [0,1]

• xτ(i) = (i+ τ) 1ε; i ∈ Z

1/𝜖

𝑙 𝑎 = 𝑥𝜏(𝑘) 𝑎

1

𝑑

𝑥𝜏(𝑘 + 1) 𝑙 . =⊥

• let k be largest integer s.t. xτ(k)≤ a

• lτ(a) =

{xτ(k) ; d > 1⊥ ; d ≤ 1

• So lτ(a)≤ a

Page 78: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2.Bound

• τ ∼ [0,1]

• xτ(i) = (i+ τ) 1ε; i ∈ Z

1/𝜖

𝑙 𝑎 = 𝑥𝜏(𝑘) 𝑎

1

𝑑

𝑥𝜏(𝑘 + 1) 𝑙 . =⊥

• let k be largest integer s.t. xτ(k)≤ a

• lτ(a) =

{xτ(k) ; d > 1⊥ ; d ≤ 1

• So lτ(a)≤ a

Page 79: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

3.Separation

1/𝜖

𝑎1 1 𝑙𝜏(𝑎2)

𝑎2

1

lτ(a1)< lτ(a2) ⇒ a1 < lτ(a2)−1

Page 80: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

1.Drop out

• τ ∼ [0,1]• xτ(i) = (i+ τ) 1

ε; i ∈ Z

• Can view xτ(k+1) as random number picked ∼ (a, a+ 1ε]

• Drop out if it is picked ∼ (a, a+1]

1/𝜖

𝑥𝜏(𝑘)

𝑎 1

𝑥𝜏(𝑘 + 1)

•Pr[lτ(a) =⊥] =

11/ε

= ε

Page 81: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

1.Drop out

• τ ∼ [0,1]• xτ(i) = (i+ τ) 1

ε; i ∈ Z

• Can view xτ(k+1) as random number picked ∼ (a, a+ 1ε]

• Drop out if it is picked ∼ (a, a+1]

1/𝜖

𝑥𝜏(𝑘)

𝑎 1

𝑥𝜏(𝑘 + 1)

•Pr[lτ(a) =⊥] =

11/ε

= ε

Page 82: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

1.Drop out

• τ ∼ [0,1]• xτ(i) = (i+ τ) 1

ε; i ∈ Z

• Can view xτ(k+1) as random number picked ∼ (a, a+ 1ε]

• Drop out if it is picked ∼ (a, a+1]

1/𝜖

𝑥𝜏(𝑘)

𝑎 1

𝑥𝜏(𝑘 + 1)

•Pr[lτ(a) =⊥] =

11/ε

= ε

Page 83: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

1.Drop out

• τ ∼ [0,1]• xτ(i) = (i+ τ) 1

ε; i ∈ Z

• Can view xτ(k+1) as random number picked ∼ (a, a+ 1ε]

• Drop out if it is picked ∼ (a, a+1]

1/𝜖

𝑥𝜏(𝑘)

𝑎 1

𝑥𝜏(𝑘 + 1)

•Pr[lτ(a) =⊥] =

11/ε

= ε

Page 84: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

1. Pr[lτ(a) =⊥] = ε

2. lτ(a)≤ a

3. lτ(a1)< lτ(a2)⇒ a1 < lτ(a2)−1

Page 85: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

1. Pr[lτ(a) =⊥] = ε

2. lτ(a)≤ a

3. lτ(a1)< lτ(a2)⇒ a1 < lτ(a2)−1

Page 86: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

1. Pr[lτ(a) =⊥] = ε

2. lτ(a)≤ a

3. lτ(a1)< lτ(a2)⇒ a1 < lτ(a2)−1

Page 87: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiplicative Consensus Function

• Mechanism uses multiplicative variant.

• Lτ(a) = lτ(logNa) ; N is some constant

1. Pr[Lτ(a) =⊥] = ε

2. Lτ(a)≤ a3. Lτ(a1)< Lτ(a2)⇒ a1 < Lτ(a2)/N

Page 88: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiplicative Consensus Function

• Mechanism uses multiplicative variant.

• Lτ(a) = lτ(logNa) ; N is some constant

1. Pr[Lτ(a) =⊥] = ε

2. Lτ(a)≤ a3. Lτ(a1)< Lτ(a2)⇒ a1 < Lτ(a2)/N

Page 89: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiplicative Consensus Function

• Mechanism uses multiplicative variant.

• Lτ(a) = lτ(logNa) ; N is some constant

1. Pr[Lτ(a) =⊥] = ε

2. Lτ(a)≤ a3. Lτ(a1)< Lτ(a2)⇒ a1 < Lτ(a2)/N

Page 90: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiplicative Consensus Function

• Mechanism uses multiplicative variant.

• Lτ(a) = lτ(logNa) ; N is some constant

1. Pr[Lτ(a) =⊥] = ε

2. Lτ(a)≤ a3. Lτ(a1)< Lτ(a2)⇒ a1 < Lτ(a2)/N

Page 91: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Multiplicative Consensus Function

• Mechanism uses multiplicative variant.

• Lτ(a) = lτ(logNa) ; N is some constant

1. Pr[Lτ(a) =⊥] = ε

2. Lτ(a)≤ a3. Lτ(a1)< Lτ(a2)⇒ a1 < Lτ(a2)/N

Page 92: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 93: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 94: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 95: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 96: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 97: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 98: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 99: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Combination of Allocation

• τ ∼ [0,1] and then �x

• N = 2(logm+3)n/ε

• for each bidder i• Li = Lτ(v(−i)

max)

• v (−i)max

: maxj 6=ivj(m) largest max bid excluded i's

• if Li =⊥→ si = 0• if Li 6=⊥

• call ∆i-perturbed maximizer ; ∆i = Li/N• get allocation s(i)

• si = s(i)i

• Summary : bidder i get ithelement of allocation from

∆i-perturbed maximizer

Page 100: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Only 2 Di�erent Allocations

• i∗is bidder who bid the highest vi(m)

• ∀i 6= i∗, v (−i)max

= vmax (recall: v(−i)max

largest max bid excluded i's)

• same Li = Lτ(vmax) ⇒ same ∆i ⇒ same allocation s(i)

• Only s(i∗)might be di�erent

s(i)

−−−−−−

, s(i∗)

∗∗∗∗∗∗

(i∗th)

, s

−−−−∗−

• s(i),s(i

∗)are feasible allocations (not allocate more than m)

• results from Knapsack

Page 101: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Only 2 Di�erent Allocations

• i∗is bidder who bid the highest vi(m)

• ∀i 6= i∗, v (−i)max

= vmax (recall: v(−i)max

largest max bid excluded i's)

• same Li = Lτ(vmax) ⇒ same ∆i ⇒ same allocation s(i)

• Only s(i∗)might be di�erent

s(i)

−−−−−−

, s(i∗)

∗∗∗∗∗∗

(i∗th)

, s

−−−−∗−

• s(i),s(i

∗)are feasible allocations (not allocate more than m)

• results from Knapsack

Page 102: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Only 2 Di�erent Allocations

• i∗is bidder who bid the highest vi(m)

• ∀i 6= i∗, v (−i)max

= vmax (recall: v(−i)max

largest max bid excluded i's)

• same Li = Lτ(vmax) ⇒ same ∆i ⇒ same allocation s(i)

• Only s(i∗)might be di�erent

s(i)

−−−−−−

, s(i∗)

∗∗∗∗∗∗

(i∗th)

, s

−−−−∗−

• s(i),s(i

∗)are feasible allocations (not allocate more than m)

• results from Knapsack

Page 103: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Only 2 Di�erent Allocations

• i∗is bidder who bid the highest vi(m)

• ∀i 6= i∗, v (−i)max

= vmax (recall: v(−i)max

largest max bid excluded i's)

• same Li = Lτ(vmax) ⇒ same ∆i ⇒ same allocation s(i)

• Only s(i∗)might be di�erent

s(i)

−−−−−−

, s(i∗)

∗∗∗∗∗∗

(i∗th)

, s

−−−−∗−

• s(i),s(i

∗)are feasible allocations (not allocate more than m)

• results from Knapsack

Page 104: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Only 2 Di�erent Allocations

• i∗is bidder who bid the highest vi(m)

• ∀i 6= i∗, v (−i)max

= vmax (recall: v(−i)max

largest max bid excluded i's)

• same Li = Lτ(vmax) ⇒ same ∆i ⇒ same allocation s(i)

• Only s(i∗)might be di�erent

s(i)

−−−−−−

, s(i∗)

∗∗∗∗∗∗

(i∗th)

, s

−−−−∗−

• s(i),s(i

∗)are feasible allocations (not allocate more than m)

• results from Knapsack

Page 105: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 106: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m

1. Li = Li∗ 6=⊥• s(i) = s(i∗) = s• so s is feasible.

2. Li =⊥or Li∗ =⊥• s is [feasible allocation+empty allocation]• #items is not increased ⇒ feasible

Page 107: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m

1. Li = Li∗ 6=⊥• s(i) = s(i∗) = s• so s is feasible.

2. Li =⊥or Li∗ =⊥• s is [feasible allocation+empty allocation]• #items is not increased ⇒ feasible

Page 108: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m

1. Li = Li∗ 6=⊥• s(i) = s(i∗) = s• so s is feasible.

2. Li =⊥or Li∗ =⊥• s is [feasible allocation+empty allocation]• #items is not increased ⇒ feasible

Page 109: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m

1. Li = Li∗ 6=⊥• s(i) = s(i∗) = s• so s is feasible.

2. Li =⊥or Li∗ =⊥• s is [feasible allocation+empty allocation]• #items is not increased ⇒ feasible

Page 110: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m (2)

3 Li 6= Li∗ 6=⊥• Li∗ = Lτ(v(−i∗)

max)< Lτ(vmax) = Li

• v(−i∗)max

< Li/N = ∆i

• because if Lτ (a1)< Lτ (a2), then a1 < Lτ (a2)/N

• Max bid of all bidder i except i∗are < ∆i ⇒ get nothing(will use again)

• ∑i si = si∗ ≤ m

Page 111: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m (2)

3 Li 6= Li∗ 6=⊥• Li∗ = Lτ(v(−i∗)

max)< Lτ(vmax) = Li

• v(−i∗)max

< Li/N = ∆i

• because if Lτ (a1)< Lτ (a2), then a1 < Lτ (a2)/N

• Max bid of all bidder i except i∗are < ∆i ⇒ get nothing(will use again)

• ∑i si = si∗ ≤ m

Page 112: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m (2)

3 Li 6= Li∗ 6=⊥• Li∗ = Lτ(v(−i∗)

max)< Lτ(vmax) = Li

• v(−i∗)max

< Li/N = ∆i

• because if Lτ (a1)< Lτ (a2), then a1 < Lτ (a2)/N

• Max bid of all bidder i except i∗are < ∆i ⇒ get nothing(will use again)

• ∑i si = si∗ ≤ m

Page 113: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m (2)

3 Li 6= Li∗ 6=⊥• Li∗ = Lτ(v(−i∗)

max)< Lτ(vmax) = Li

• v(−i∗)max

< Li/N = ∆i

• because if Lτ (a1)< Lτ (a2), then a1 < Lτ (a2)/N

• Max bid of all bidder i except i∗are < ∆i ⇒ get nothing(will use again)

• ∑i si = si∗ ≤ m

Page 114: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Feasibility ∑ni=0 si ≤ m (2)

3 Li 6= Li∗ 6=⊥• Li∗ = Lτ(v(−i∗)

max)< Lτ(vmax) = Li

• v(−i∗)max

< Li/N = ∆i

• because if Lτ (a1)< Lτ (a2), then a1 < Lτ (a2)/N

• Max bid of all bidder i except i∗are < ∆i ⇒ get nothing(will use again)

• ∑i si = si∗ ≤ m

Page 115: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 116: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

(1−4ε)−Approximation Ratio

• Prob no one drop out ≥ 1−2ε

• Prob bidder i∗drop out = ε

• Prob bidder i 6= i∗drop out = ε

• They are completely correlated.

• Will prove that if none drop out ⇒ approx ratio ≥ (1−2ε)

• Overall approx ratio ≥ (1−2ε)2 ≥ (1−4ε)

Page 117: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

(1−4ε)−Approximation Ratio

• Prob no one drop out ≥ 1−2ε

• Prob bidder i∗drop out = ε

• Prob bidder i 6= i∗drop out = ε

• They are completely correlated.

• Will prove that if none drop out ⇒ approx ratio ≥ (1−2ε)

• Overall approx ratio ≥ (1−2ε)2 ≥ (1−4ε)

Page 118: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

(1−4ε)−Approximation Ratio

• Prob no one drop out ≥ 1−2ε

• Prob bidder i∗drop out = ε

• Prob bidder i 6= i∗drop out = ε

• They are completely correlated.

• Will prove that if none drop out ⇒ approx ratio ≥ (1−2ε)

• Overall approx ratio ≥ (1−2ε)2 ≥ (1−4ε)

Page 119: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

(1−4ε)−Approximation Ratio

• Prob no one drop out ≥ 1−2ε

• Prob bidder i∗drop out = ε

• Prob bidder i 6= i∗drop out = ε

• They are completely correlated.

• Will prove that if none drop out ⇒ approx ratio ≥ (1−2ε)

• Overall approx ratio ≥ (1−2ε)2 ≥ (1−4ε)

Page 120: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Analyze Allocation s(i∗)

• Additive error

≤ 2(logm+3)n∆i∗ = 2(logm+3)n Li∗N︸︷︷︸

2(log m+3)n/ε

= εLi∗

• Li∗ = Lτ(v(−i∗)max

)≤ v(−i∗)max

≤ vmax ≤ opt

• v(s(i∗))≥ opt− εLi∗ ≥ (1− ε)opt

Page 121: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Analyze Allocation s(i∗)

• Additive error

≤ 2(logm+3)n∆i∗ = 2(logm+3)n Li∗N︸︷︷︸

2(log m+3)n/ε

= εLi∗

• Li∗ = Lτ(v(−i∗)max

)≤ v(−i∗)max

≤ vmax ≤ opt

• v(s(i∗))≥ opt− εLi∗ ≥ (1− ε)opt

Page 122: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Analyze Allocation s(i∗)

• Additive error

≤ 2(logm+3)n∆i∗ = 2(logm+3)n Li∗N︸︷︷︸

2(log m+3)n/ε

= εLi∗

• Li∗ = Lτ(v(−i∗)max

)≤ v(−i∗)max

≤ vmax ≤ opt

• v(s(i∗))≥ opt− εLi∗ ≥ (1− ε)opt

Page 123: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2 Cases When None Drop out

1. Li = Li∗

• Mechanism yields s = s(i∗)

• Social welfare ≥ (1− ε)opt

2. Li 6= Li∗

• Max bid of all bidder i except i∗are < ∆i

• si∗ = s(i∗)

i∗ and si = 0 for all i 6= i∗

• Social welfare is vi∗(s(i∗)i∗ )

vi∗(s(i∗)i∗ ) = v(s(i

∗))− ∑i6=i∗

vi(s(i∗))≥ (1− ε)opt− εopt

= (1−2ε)opt

Page 124: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2 Cases When None Drop out

1. Li = Li∗

• Mechanism yields s = s(i∗)

• Social welfare ≥ (1− ε)opt

2. Li 6= Li∗

• Max bid of all bidder i except i∗are < ∆i

• si∗ = s(i∗)

i∗ and si = 0 for all i 6= i∗

• Social welfare is vi∗(s(i∗)i∗ )

vi∗(s(i∗)i∗ ) = v(s(i

∗))− ∑i6=i∗

vi(s(i∗))≥ (1− ε)opt− εopt

= (1−2ε)opt

Page 125: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2 Cases When None Drop out

1. Li = Li∗

• Mechanism yields s = s(i∗)

• Social welfare ≥ (1− ε)opt

2. Li 6= Li∗

• Max bid of all bidder i except i∗are < ∆i

• si∗ = s(i∗)

i∗ and si = 0 for all i 6= i∗

• Social welfare is vi∗(s(i∗)i∗ )

vi∗(s(i∗)i∗ ) = v(s(i

∗))− ∑i6=i∗

vi(s(i∗))≥ (1− ε)opt− εopt

= (1−2ε)opt

Page 126: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

2 Cases When None Drop out

1. Li = Li∗

• Mechanism yields s = s(i∗)

• Social welfare ≥ (1− ε)opt

2. Li 6= Li∗

• Max bid of all bidder i except i∗are < ∆i

• si∗ = s(i∗)

i∗ and si = 0 for all i 6= i∗

• Social welfare is vi∗(s(i∗)i∗ )

vi∗(s(i∗)i∗ ) = v(s(i

∗))− ∑i6=i∗

vi(s(i∗))≥ (1− ε)opt− εopt

= (1−2ε)opt

Page 127: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Outline

Introduction

Problem

3 Kinds of Truthfulness

Related Work

Tools

∆-Perturbed Maximizer

Consensus Function with Drop-outs

The Mechanism

Social Choice Function

Feasibility

Approximation Ratio

Universal Truthfulness

Summary

Page 128: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 129: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 130: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 131: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 132: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 133: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Mechanism is Truthful i�(Direct Characterization)

1. Payment pi : not depend on vi

(can depend on s = f (vi,v−i) and v−i)

pi = q(i)s (v−i)

2. Social choice function maximizes each bidder's utility : for all i

f (v) = argmax(vi(s)−q(i)s (v−i))

• Informal explanation

• i's utility is vi(s)−qs , if he lies v′i he may get vi(s′)−qs′

• f already chooses s which maximizes vi(s)−qs

• ⇒ tell the true vi to f for optimizing his utility

Page 134: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness

• Fixed all random variables (τ , xji) and still truthful

⇒Universally Truthful

• There are 2 cases

1. Li =⊥• Li = Lτ(v(−i)

max)

• depends on only v−i

• i cannot do anything ⇒ no incentive to lie

Page 135: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness

• Fixed all random variables (τ , xji) and still truthful

⇒Universally Truthful

• There are 2 cases

1. Li =⊥• Li = Lτ(v(−i)

max)

• depends on only v−i

• i cannot do anything ⇒ no incentive to lie

Page 136: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness

• Fixed all random variables (τ , xji) and still truthful

⇒Universally Truthful

• There are 2 cases

1. Li =⊥• Li = Lτ(v(−i)

max)

• depends on only v−i

• i cannot do anything ⇒ no incentive to lie

Page 137: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness

• Fixed all random variables (τ , xji) and still truthful

⇒Universally Truthful

• There are 2 cases

1. Li =⊥• Li = Lτ(v(−i)

max)

• depends on only v−i

• i cannot do anything ⇒ no incentive to lie

Page 138: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 139: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 140: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 141: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 142: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 143: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Universal Truthfulness (2)

2. Li 6=⊥⇒ i get allocation s(i) from ∆i-perturbed maximizer

• ∆i-perturbed maximizer maximizes ∑j v′j(sj)

• ∑j v′j(sj) = vi(si)+(2q(si)+ xsii )∆i +∑

j6=iv′j(sj)︸ ︷︷ ︸

−pi

2.1 pi not depend on vi

• q(·), xsii , v−i not depend on vi

• ∆i = Li/N = Lτ (v (−i)max

)/N not depend on vi

2.2 Utility vi(s)−pi is maximized

Page 144: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Practical Payment

• −pi = 2q(si)+ xsii )∆i +∑j 6=i v′j(sj)

• Now pi < 0

• Clarke's pivot rule : Can add some payment hi(v−i) to pi

• ⇒0 ≤ pi ≤ vi

• Utility and payment are both positive.

Page 145: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Practical Payment

• −pi = 2q(si)+ xsii )∆i +∑j 6=i v′j(sj)

• Now pi < 0

• Clarke's pivot rule : Can add some payment hi(v−i) to pi

• ⇒0 ≤ pi ≤ vi

• Utility and payment are both positive.

Page 146: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Practical Payment

• −pi = 2q(si)+ xsii )∆i +∑j 6=i v′j(sj)

• Now pi < 0

• Clarke's pivot rule : Can add some payment hi(v−i) to pi

• ⇒0 ≤ pi ≤ vi

• Utility and payment are both positive.

Page 147: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

• ∆-perturbed maximizer

• computes near-optimal allocation in poly-time

• Consensus function

• enables combination of allocations to be feasible

• pi not depend on vi and f maximizes utility ⇒ truthful

Theorem

∃ randomized PTAS for universally truthful multi-unit auction.

Page 148: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

• ∆-perturbed maximizer

• computes near-optimal allocation in poly-time

• Consensus function

• enables combination of allocations to be feasible

• pi not depend on vi and f maximizes utility ⇒ truthful

Theorem

∃ randomized PTAS for universally truthful multi-unit auction.

Page 149: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

• ∆-perturbed maximizer

• computes near-optimal allocation in poly-time

• Consensus function

• enables combination of allocations to be feasible

• pi not depend on vi and f maximizes utility ⇒ truthful

Theorem

∃ randomized PTAS for universally truthful multi-unit auction.

Page 150: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Summary

• ∆-perturbed maximizer

• computes near-optimal allocation in poly-time

• Consensus function

• enables combination of allocations to be feasible

• pi not depend on vi and f maximizes utility ⇒ truthful

Theorem

∃ randomized PTAS for universally truthful multi-unit auction.

Page 151: A Universally-Truthful Approximation Scheme for Multi-unit Auction

Introduction Tools The Mechanism Summary

Thank you for your attention