Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
A Universally-Truthful Approximation Scheme for Multi-unit Auction
1. Introduction Tools The Mechanism Summary
A Universally-Truthful Approximation Scheme for
Multi-unit Auction
Author : Berthold Vöcking
Presenter : Thatchaphol Saranurak
Seminar Algorithmic Game Theory
Saarland University
6 Dec 2011
2. 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
3. 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
4. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
5. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
6. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
7. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
8. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
9. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
10. 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 | ∑n si
i=1 m}
• vi (s) = vi (si )
• Objective : maximize social welfare ∑i vi (s) = v(s)
11. Introduction Tools The Mechanism Summary
Mechanism
• Mechanism (f , p)
• social choice function f : V n → A
• payment scheme p = (p1 , p2 , ..., pn )
• pi : V n → R
• k-approximation mechanism
• social welfaresocial welfare
optimum
from mechanism
≥k
• Polynomial time mechanism
• poly(n, log m)
12. Introduction Tools The Mechanism Summary
Mechanism
• Mechanism (f , p)
• social choice function f : V n → A
• payment scheme p = (p1 , p2 , ..., pn )
• pi : V n → R
• k-approximation mechanism
• social welfaresocial welfare
optimum
from mechanism
≥k
• Polynomial time mechanism
• poly(n, log m)
13. Introduction Tools The Mechanism Summary
Mechanism
• Mechanism (f , p)
• social choice function f : V n → A
• payment scheme p = (p1 , p2 , ..., pn )
• pi : V n → R
• k-approximation mechanism
• social welfaresocial welfare
optimum
from mechanism
≥k
• Polynomial time mechanism
• poly(n, log m)
14. Introduction Tools The Mechanism Summary
Mechanism
• Mechanism (f , p)
• social choice function f : V n → A
• payment scheme p = (p1 , p2 , ..., pn )
• pi : V n → R
• k-approximation mechanism
• social welfaresocial welfare
optimum
from mechanism
≥k
• Polynomial time mechanism
• poly(n, log m)
15. Introduction Tools The Mechanism Summary
Mechanism
• Mechanism (f , p)
• social choice function f : V n → A
• payment scheme p = (p1 , p2 , ..., pn )
• pi : V n → R
• k-approximation mechanism
• social welfaresocial welfare
optimum
from mechanism
≥k
• Polynomial time mechanism
• poly(n, log m)
16. 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 )
17. 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 )
18. 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
19. Introduction Tools The Mechanism Summary
Deterministic Mechanism
Denition
Deterministically truthful
• Utility vi (s) − pi is maximized when i bids the true vi
20. Introduction Tools The Mechanism Summary
Randomized Mechanism
• Randomized mechanism
• Probability distribution over deterministic mechanisms
Denition
Universally truthful
• Each mechanism in distribution is truthful
Denition
Truthful in expectation
• Expected utility is maximized when i bids the true vi
• Truthful only if bidders don't know outcome of random bits
21. Introduction Tools The Mechanism Summary
Randomized Mechanism
• Randomized mechanism
• Probability distribution over deterministic mechanisms
Denition
Universally truthful
• Each mechanism in distribution is truthful
Denition
Truthful in expectation
• Expected utility is maximized when i bids the true vi
• Truthful only if bidders don't know outcome of random bits
22. Introduction Tools The Mechanism Summary
Randomized Mechanism
• Randomized mechanism
• Probability distribution over deterministic mechanisms
Denition
Universally truthful
• Each mechanism in distribution is truthful
Denition
Truthful in expectation
• Expected utility is maximized when i bids the true vi
• Truthful only if bidders don't know outcome of random bits
23. Introduction Tools The Mechanism Summary
Randomized Mechanism
• Randomized mechanism
• Probability distribution over deterministic mechanisms
Denition
Universally truthful
• Each mechanism in distribution is truthful
Denition
Truthful in expectation
• Expected utility is maximized when i bids the true vi
• Truthful only if bidders don't know outcome of random bits
24. 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
25. Introduction Tools The Mechanism Summary
Compare Dierent 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, log m)
• 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
26. Introduction Tools The Mechanism Summary
Compare Dierent 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, log m)
• 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
27. Introduction Tools The Mechanism Summary
Compare Dierent 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, log m)
• 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
28. Introduction Tools The Mechanism Summary
Compare Dierent 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, log m)
• 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
29. 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
30. 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
31. 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 prot pk
• select 1 object from each class
• sum of weight ≤ m
• maximize sum of prot
32. 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 prot pk
• select 1 object from each class
• sum of weight ≤ m
• maximize sum of prot
33. Introduction Tools The Mechanism Summary
Reduce Maximizing Social Welfare → Knapsack Problem
• Dene (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, log m)
• #object is n × m not poly(n, log m)
• Knapsack is NP-Hard!
34. Introduction Tools The Mechanism Summary
Reduce Maximizing Social Welfare → Knapsack Problem
• Dene (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, log m)
• #object is n × m not poly(n, log m)
• Knapsack is NP-Hard!
35. Introduction Tools The Mechanism Summary
Reduce Maximizing Social Welfare → Knapsack Problem
• Dene (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, log m)
• #object is n × m not poly(n, log m)
• Knapsack is NP-Hard!
36. Introduction Tools The Mechanism Summary
Reduce Maximizing Social Welfare → Knapsack Problem
• Dene (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, log m)
• #object is n × m not poly(n, log m)
• Knapsack is NP-Hard!
37. Introduction Tools The Mechanism Summary
Reduce Maximizing Social Welfare → Knapsack Problem
• Dene (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, log m)
• #object is n × m not poly(n, log m)
• Knapsack is NP-Hard!
38. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
39. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
40. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
41. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
42. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
43. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
44. Introduction Tools The Mechanism Summary
Perturbed Valuation Function
• Dene
• ∆ 0 is some constant
j
• xi ∼ [0, 1]
• q(k) : {0, ..., m} → Z is number of factor 2 of k
• 96 = 25 × 3 so q(96) = 5
• q(k) ≤ log m
• exception : q(0) = log m + 1
• Perturbed valuation function
j
vi (j) = v(j) + (2q(j) + xi )∆
45. Introduction Tools The Mechanism Summary
Poly-time Knapsack
• Set prot of object p(i,j) = vi (j) instead of vi (j)
• Claim: Expected running time of Knapsack is
poly(n, log m, P/∆)
• P is second largest number of max bid vi (m)
• set ∆ be proportion to P ⇒ run in poly-time
46. Introduction Tools The Mechanism Summary
Poly-time Knapsack
• Set prot of object p(i,j) = vi (j) instead of vi (j)
• Claim: Expected running time of Knapsack is
poly(n, log m, P/∆)
• P is second largest number of max bid vi (m)
• set ∆ be proportion to P ⇒ run in poly-time
47. Introduction Tools The Mechanism Summary
Poly-time Knapsack
• Set prot of object p(i,j) = vi (j) instead of vi (j)
• Claim: Expected running time of Knapsack is
poly(n, log m, P/∆)
• P is second largest number of max bid vi (m)
• set ∆ be proportion to P ⇒ run in poly-time
48. Introduction Tools The Mechanism Summary
Informal Explanation of Achieving Poly-time Knapsack
j
vi (j) = v(j) + (2q(j) + xi )∆
• term q(·) : can focus on only poly(n, log m, P/∆) objects
• Nice proof but have to skip.
• term x : can run Knapsack in poly(#object) time in expectation
• How ?
49. Introduction Tools The Mechanism Summary
Informal Explanation of Achieving Poly-time Knapsack
j
vi (j) = v(j) + (2q(j) + xi )∆
• term q(·) : can focus on only poly(n, log m, P/∆) objects
• Nice proof but have to skip.
• term x : can run Knapsack in poly(#object) time in expectation
• How ?
50. Introduction Tools The Mechanism Summary
Informal Explanation of Achieving Poly-time Knapsack
j
vi (j) = v(j) + (2q(j) + xi )∆
• term q(·) : can focus on only poly(n, log m, P/∆) objects
• Nice proof but have to skip.
• term x : can run Knapsack in poly(#object) time in expectation
• How ?
51. 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)
52. 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)
53. 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)
54. Introduction Tools The Mechanism Summary
∆-Perturbed Maximizer
• ∆-perturbed maximizer = solving Knapsack with perturbed
valuation function
• Additive error
• Reject low bidding
55. Introduction Tools The Mechanism Summary
∆-Perturbed Maximizer
• ∆-perturbed maximizer = solving Knapsack with perturbed
valuation function
• Additive error
• Reject low bidding
56. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
57. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
58. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
59. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
60. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
61. Introduction Tools The Mechanism Summary
Additive Error
• ∆-perturbed maximizer maximizes ∑n vi (s)
i=0
• n
Social welfare is less than ∑i=0 vi (s)
n n
0 ≤ ∑ vi (s) − ∑ vi (s) ≤ (2 log m + 3)∆n
i=0 i=0
j
• vi (j) = vi (j) + (2q(j) + xi )∆
• q(j) ≤ log m + 1
j
• xi ≤ 1
• vi (j) − vi (j) ≤ (2 log m + 2 + 1)∆
62. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
63. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
64. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
65. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
66. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
67. 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
j
vi (j) = v(j) + (2q(j) + xi )∆
• vi (j) vi (m) ∆
• q(j) + 1 ≤ q(0) and q is multiplied by ∆
• vi is maximized when j = 0
68. Introduction Tools The Mechanism Summary
Summary of ∆-Perturbed Maximizer
• Maximizes social welfare
• in poly-time
• (2 log m + 3)∆n additive error
• reject low bid
69. Introduction Tools The Mechanism Summary
Summary of ∆-Perturbed Maximizer
• Maximizes social welfare
• in poly-time
• (2 log m + 3)∆n additive error
• reject low bid
70. Introduction Tools The Mechanism Summary
Summary of ∆-Perturbed Maximizer
• Maximizes social welfare
• in poly-time
• (2 log m + 3)∆n additive error
• reject low bid
71. 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
72. 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) = ⊥
l(a) ≤ a
3. Separation : if l(a1 ) l(a2 ) = ⊥
a1 l(a2 ) − 1
73. 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) = ⊥
l(a) ≤ a
3. Separation : if l(a1 ) l(a2 ) = ⊥
a1 l(a2 ) − 1
74. 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) = ⊥
l(a) ≤ a
3. Separation : if l(a1 ) l(a2 ) = ⊥
a1 l(a2 ) − 1
75. Introduction Tools The Mechanism Summary
2.Bound
• τ ∼ [0, 1]
1
• xτ (i) = (i + τ ) ε ; i∈Z
������ ������ = ������������ (������) ������������ (������ + 1) ������ . =⊥ 1
������
������ 1/������
• let k be largest integer s.t. xτ (k) ≤ a
xτ (k) ; d 1
• lτ (a) =
⊥ ;d≤1
• So lτ (a) ≤a
76. Introduction Tools The Mechanism Summary
2.Bound
• τ ∼ [0, 1]
1
• xτ (i) = (i + τ ) ε ; i∈Z
������ ������ = ������������ (������) ������������ (������ + 1) ������ . =⊥ 1
������
������ 1/������
• let k be largest integer s.t. xτ (k) ≤ a
xτ (k) ; d 1
• lτ (a) =
⊥ ;d≤1
• So lτ (a) ≤a
77. Introduction Tools The Mechanism Summary
2.Bound
• τ ∼ [0, 1]
1
• xτ (i) = (i + τ ) ε ; i∈Z
������ ������ = ������������ (������) ������������ (������ + 1) ������ . =⊥ 1
������
������ 1/������
• let k be largest integer s.t. xτ (k) ≤ a
xτ (k) ; d 1
• lτ (a) =
⊥ ;d≤1
• So lτ (a) ≤a
78. Introduction Tools The Mechanism Summary
2.Bound
• τ ∼ [0, 1]
1
• xτ (i) = (i + τ ) ε ; i∈Z
������ ������ = ������������ (������) ������������ (������ + 1) ������ . =⊥ 1
������
������ 1/������
• let k be largest integer s.t. xτ (k) ≤ a
xτ (k) ; d 1
• lτ (a) =
⊥ ;d≤1
• So lτ (a) ≤a
87. Introduction Tools The Mechanism Summary
Multiplicative Consensus Function
• Mechanism uses multiplicative variant.
• Lτ (a) = lτ (logN a) ; N is some constant
1. Pr[Lτ (a) = ⊥] = ε
2. Lτ (a) ≤ a
3. Lτ (a1 ) Lτ (a2 ) ⇒ a1 Lτ (a2 )/N
88. Introduction Tools The Mechanism Summary
Multiplicative Consensus Function
• Mechanism uses multiplicative variant.
• Lτ (a) = lτ (logN a) ; N is some constant
1. Pr[Lτ (a) = ⊥] = ε
2. Lτ (a) ≤ a
3. Lτ (a1 ) Lτ (a2 ) ⇒ a1 Lτ (a2 )/N
89. Introduction Tools The Mechanism Summary
Multiplicative Consensus Function
• Mechanism uses multiplicative variant.
• Lτ (a) = lτ (logN a) ; N is some constant
1. Pr[Lτ (a) = ⊥] = ε
2. Lτ (a) ≤ a
3. Lτ (a1 ) Lτ (a2 ) ⇒ a1 Lτ (a2 )/N
90. Introduction Tools The Mechanism Summary
Multiplicative Consensus Function
• Mechanism uses multiplicative variant.
• Lτ (a) = lτ (logN a) ; N is some constant
1. Pr[Lτ (a) = ⊥] = ε
2. Lτ (a) ≤ a
3. Lτ (a1 ) Lτ (a2 ) ⇒ a1 Lτ (a2 )/N
91. Introduction Tools The Mechanism Summary
Multiplicative Consensus Function
• Mechanism uses multiplicative variant.
• Lτ (a) = lτ (logN a) ; N is some constant
1. Pr[Lτ (a) = ⊥] = ε
2. Lτ (a) ≤ a
3. Lτ (a1 ) Lτ (a2 ) ⇒ a1 Lτ (a2 )/N
92. 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
93. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
94. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
95. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
96. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
97. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
98. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
99. Introduction Tools The Mechanism Summary
Combination of Allocation
• τ ∼ [0, 1] and then x
• N = 2(log m + 3)n/ε
• for each bidder i
• Li = Lτ (v (−i) )
max
• v (−i) : maxj=i vj (m) largest max bid excluded i's
max
• if Li = ⊥ → si = 0
• if Li = ⊥
• call ∆i -perturbed maximizer ; ∆i = Li /N
• get allocation s(i)
• si = s(i)
i
• Summary : bidder i get ith element of allocation from
∆i -perturbed maximizer
100. Introduction Tools The Mechanism Summary
Only 2 Dierent Allocations
• i∗ is bidder who bid the highest vi (m)
• ∀i = i∗ , v (−i) = vmax (recall: v(−i) largest max bid excluded i's)
max max
• same Li = Lτ (vmax ) ⇒ same ∆i ⇒ same allocation s(i)
∗)
• Only s(i might be dierent
− ∗ −
−
∗
−
(i)
− (i∗ )
, s ∗ −
s , s
−
∗
−
− ∗ (i∗ th) ∗
− ∗ −
∗)
• s(i) , s(i are feasible allocations (not allocate more than m)
• results from Knapsack
101. Introduction Tools The Mechanism Summary
Only 2 Dierent Allocations
• i∗ is bidder who bid the highest vi (m)
• ∀i = i∗ , v (−i) = vmax (recall: v(−i) largest max bid excluded i's)
max max
• same Li = Lτ (vmax ) ⇒ same ∆i ⇒ same allocation s(i)
∗)
• Only s(i might be dierent
− ∗ −
−
∗
−
(i)
− (i∗ )
, s ∗ −
s , s
−
∗
−
− ∗ (i∗ th) ∗
− ∗ −
∗)
• s(i) , s(i are feasible allocations (not allocate more than m)
• results from Knapsack
102. Introduction Tools The Mechanism Summary
Only 2 Dierent Allocations
• i∗ is bidder who bid the highest vi (m)
• ∀i = i∗ , v (−i) = vmax (recall: v(−i) largest max bid excluded i's)
max max
• same Li = Lτ (vmax ) ⇒ same ∆i ⇒ same allocation s(i)
∗)
• Only s(i might be dierent
− ∗ −
−
∗
−
(i)
− (i∗ )
, s ∗ −
s , s
−
∗
−
− ∗ (i∗ th) ∗
− ∗ −
∗)
• s(i) , s(i are feasible allocations (not allocate more than m)
• results from Knapsack
103. Introduction Tools The Mechanism Summary
Only 2 Dierent Allocations
• i∗ is bidder who bid the highest vi (m)
• ∀i = i∗ , v (−i) = vmax (recall: v(−i) largest max bid excluded i's)
max max
• same Li = Lτ (vmax ) ⇒ same ∆i ⇒ same allocation s(i)
∗)
• Only s(i might be dierent
− ∗ −
−
∗
−
(i)
− (i∗ )
, s ∗ −
s , s
−
∗
−
− ∗ (i∗ th) ∗
− ∗ −
∗)
• s(i) , s(i are feasible allocations (not allocate more than m)
• results from Knapsack
104. Introduction Tools The Mechanism Summary
Only 2 Dierent Allocations
• i∗ is bidder who bid the highest vi (m)
• ∀i = i∗ , v (−i) = vmax (recall: v(−i) largest max bid excluded i's)
max max
• same Li = Lτ (vmax ) ⇒ same ∆i ⇒ same allocation s(i)
∗)
• Only s(i might be dierent
− ∗ −
−
∗
−
(i)
− (i∗ )
, s ∗ −
s , s
−
∗
−
− ∗ (i∗ th) ∗
− ∗ −
∗)
• s(i) , s(i are feasible allocations (not allocate more than m)
• results from Knapsack
105. 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
106. Introduction Tools The Mechanism Summary
Feasibility ∑n si ≤ m
i=0
1. Li = Li∗ = ⊥
• s(i) = s(i∗) = s
• so s is feasible.
2. Li = ⊥or Li∗ = ⊥
• s is [feasible allocation+empty allocation]
• #items is not increased ⇒ feasible
107. Introduction Tools The Mechanism Summary
Feasibility ∑n si ≤ m
i=0
1. Li = Li∗ = ⊥
• s(i) = s(i∗) = s
• so s is feasible.
2. Li = ⊥or Li∗ = ⊥
• s is [feasible allocation+empty allocation]
• #items is not increased ⇒ feasible
108. Introduction Tools The Mechanism Summary
Feasibility ∑n si ≤ m
i=0
1. Li = Li∗ = ⊥
• s(i) = s(i∗) = s
• so s is feasible.
2. Li = ⊥or Li∗ = ⊥
• s is [feasible allocation+empty allocation]
• #items is not increased ⇒ feasible
109. Introduction Tools The Mechanism Summary
Feasibility ∑n si ≤ m
i=0
1. Li = Li∗ = ⊥
• s(i) = s(i∗) = s
• so s is feasible.
2. Li = ⊥or Li∗ = ⊥
• s is [feasible allocation+empty allocation]
• #items is not increased ⇒ feasible
110. Introduction Tools The Mechanism Summary
Feasibility ∑n s i ≤ m
i=0 (2)
3 Li = Li∗ = ⊥
• Li∗ = Lτ (v(−i∗ ) ) Lτ (vmax ) = Li
max
• v(−i∗ ) Li /N = ∆i
max
• 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
111. Introduction Tools The Mechanism Summary
Feasibility ∑n s i ≤ m
i=0 (2)
3 Li = Li∗ = ⊥
• Li∗ = Lτ (v(−i∗ ) ) Lτ (vmax ) = Li
max
• v(−i∗ ) Li /N = ∆i
max
• 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
112. Introduction Tools The Mechanism Summary
Feasibility ∑n s i ≤ m
i=0 (2)
3 Li = Li∗ = ⊥
• Li∗ = Lτ (v(−i∗ ) ) Lτ (vmax ) = Li
max
• v(−i∗ ) Li /N = ∆i
max
• 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
113. Introduction Tools The Mechanism Summary
Feasibility ∑n s i ≤ m
i=0 (2)
3 Li = Li∗ = ⊥
• Li∗ = Lτ (v(−i∗ ) ) Lτ (vmax ) = Li
max
• v(−i∗ ) Li /N = ∆i
max
• 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
114. Introduction Tools The Mechanism Summary
Feasibility ∑n s i ≤ m
i=0 (2)
3 Li = Li∗ = ⊥
• Li∗ = Lτ (v(−i∗ ) ) Lτ (vmax ) = Li
max
• v(−i∗ ) Li /N = ∆i
max
• 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
115. 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
116. Introduction Tools The Mechanism Summary
(1 − 4ε )−Approximation Ratio
• Prob no one drop out ≥ 1 − 2ε
• Prob bidder i∗ drop out = ε
• Prob bidder i = 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ε )
117. Introduction Tools The Mechanism Summary
(1 − 4ε )−Approximation Ratio
• Prob no one drop out ≥ 1 − 2ε
• Prob bidder i∗ drop out = ε
• Prob bidder i = 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ε )
118. Introduction Tools The Mechanism Summary
(1 − 4ε )−Approximation Ratio
• Prob no one drop out ≥ 1 − 2ε
• Prob bidder i∗ drop out = ε
• Prob bidder i = 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ε )
119. Introduction Tools The Mechanism Summary
(1 − 4ε )−Approximation Ratio
• Prob no one drop out ≥ 1 − 2ε
• Prob bidder i∗ drop out = ε
• Prob bidder i = 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ε )
123. 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 = Li∗
• Max bid of all bidder i except i∗ are ∆i
∗
• si∗ = s(i
i∗
)
and si = 0 for all i = i∗
(i∗ )
• Social welfare is vi∗ (si∗ )
(i∗ ) ∗ ∗
vi∗ (si∗ ) = v(s(i ) ) − ∑ vi (s(i ) ) ≥ (1 − ε )opt − ε opt
i=i∗
= (1 − 2ε )opt
124. 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 = Li∗
• Max bid of all bidder i except i∗ are ∆i
∗
• si∗ = s(i
i∗
)
and si = 0 for all i = i∗
(i∗ )
• Social welfare is vi∗ (si∗ )
(i∗ ) ∗ ∗
vi∗ (si∗ ) = v(s(i ) ) − ∑ vi (s(i ) ) ≥ (1 − ε )opt − ε opt
i=i∗
= (1 − 2ε )opt
125. 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 = Li∗
• Max bid of all bidder i except i∗ are ∆i
∗
• si∗ = s(i
i∗
)
and si = 0 for all i = i∗
(i∗ )
• Social welfare is vi∗ (si∗ )
(i∗ ) ∗ ∗
vi∗ (si∗ ) = v(s(i ) ) − ∑ vi (s(i ) ) ≥ (1 − ε )opt − ε opt
i=i∗
= (1 − 2ε )opt
126. 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 = Li∗
• Max bid of all bidder i except i∗ are ∆i
∗
• si∗ = s(i
i∗
)
and si = 0 for all i = i∗
(i∗ )
• Social welfare is vi∗ (si∗ )
(i∗ ) ∗ ∗
vi∗ (si∗ ) = v(s(i ) ) − ∑ vi (s(i ) ) ≥ (1 − ε )opt − ε opt
i=i∗
= (1 − 2ε )opt
127. 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
128. 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 )
(i)
pi = qs (v−i )
2. Social choice function maximizes each bidder's utility : for all i
(i)
f (v) = argmax(vi (s) − qs (v−i ))
• Informal explanation
• i's utility is vi (s) − qs , if he lies vi 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
129. 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 )
(i)
pi = qs (v−i )
2. Social choice function maximizes each bidder's utility : for all i
(i)
f (v) = argmax(vi (s) − qs (v−i ))
• Informal explanation
• i's utility is vi (s) − qs , if he lies vi 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
130. 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 )
(i)
pi = qs (v−i )
2. Social choice function maximizes each bidder's utility : for all i
(i)
f (v) = argmax(vi (s) − qs (v−i ))
• Informal explanation
• i's utility is vi (s) − qs , if he lies vi 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
131. 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 )
(i)
pi = qs (v−i )
2. Social choice function maximizes each bidder's utility : for all i
(i)
f (v) = argmax(vi (s) − qs (v−i ))
• Informal explanation
• i's utility is vi (s) − qs , if he lies vi 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
132. 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 )
(i)
pi = qs (v−i )
2. Social choice function maximizes each bidder's utility : for all i
(i)
f (v) = argmax(vi (s) − qs (v−i ))
• Informal explanation
• i's utility is vi (s) − qs , if he lies vi 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