Revenue optimal auctions Recap Last week: Vickrey-Clarke-Groves - - PowerPoint PPT Presentation
Revenue optimal auctions Recap Last week: Vickrey-Clarke-Groves - - PowerPoint PPT Presentation
Algorithmic game theory Ruben Hoeksma December 10, 2018 Revenue optimal auctions Recap Last week: Vickrey-Clarke-Groves auctions Revenue equivalence Today: Optimal revenue single item auction (Myersons auction) Single item,
Recap
Last week:
◮ Vickrey-Clarke-Groves auctions ◮ Revenue equivalence
Today:
◮ Optimal revenue single item auction (Myerson’s auction)
Single item, single bidder
Auctioneer wants to get the maximum price (revenue) for their item.
◮ Single item ◮ Single bidder with private value v ∼ ϕ
Q: What is the revenue of the Vickrey auction?
◮ Vickrey auction results in revenue of 0
Q: Can we do better?
◮ Revenue equivalence says that always allocating the item needs to
result in revenue of 0! Q: How do we maximize revenue? Maximize expected revenue: max
r
r · P[v ≥ r]
Single item, two bidders
◮ Single item ◮ Two bidders, Alice and Bob with private values a, b ∼ U(0, 1)
The Vickrey auction has expected revenue: E[min{a, b}] = 1
3
Q: Can we do better? We have to change the allocation rule
◮ Reserve price r ◮ If a < r and b < r nobody gets the item ◮ If one > r and one < r highest bid wins with price r ◮ Otherwise, highest bid wins and pays second highest bid
Q: What is the expected revenue for reserve price r?
Single item, two bidders - second price with reserve
Let X be the revenue of the auction E[X] = E[X | a < r, b < r] · P[a < r] · P[b < r] + 2 · E[X | a ≥ r, b < r] · P[a ≥ r] · P[b < r] + E[X | a ≥ r, b ≥ r] · P[a ≥ r] · P[b ≥ r] Note: (a | a ≥ r) ∼ U(r, 1)
◮ Still dominant strategy to bid true value [homework exercise] ◮ If a, b < r; probability r 2; revenue 0 ◮ If a ≥ r, b < r; probability r(1 − r); revenue r ◮ If a, b ≥ r; probability (1 − r)2; revenue min{a, b}
E[X] = 0 · r 2 + 2 · r 2(1 − r) + E[min{a, b} | a, b ≥ r] · (1 − r)2 = 2 · r 2(1 − r) + 1 + 2r 3 · (1 − r)2 = 1 + 3r 2 − 4r 3 3
Model
◮ Bidders with private valuations vi ∈ Vi ◮ Known discrete distribution ϕ of the valuations
(ϕ(vj
i ) = P[vi = vj i ]) ◮ Players’ strategies: bid bi ∈ Vi (depending on true vi) ◮ Auction output: allocation (a(b)) + payments (π(b)) ◮ Payments: individual rational (IR) ◮ Truthful auction: Dominant strategy incentive compatible (DSIC)
For any bids v ∈ V , let ai(v) ∈ {0, 1} denote if player i is allocated the item (wins). (IR) viai(vi, v−i) − πi(vi, v−i) ≥ 0 (DSIC) viai(vi, v−i) − πi(vi, v−i) ≥ viai(bi, v−i) − πi(bi, v−i)
Feasible allocation
Q: How can we tell that an allocation rule can be used in a truthtelling auction? A: If there exist feasible payments such that (IR) and (DSIC) hold Q: How can we compute feasible payments for a given allocation rule? A: Use (DSIC) and (IR) constraints (DSIC) viai(vi, v−i) − πi(vi, v−i) ≥ viai(bi, v−i) − πi(bi, v−i) ⇔ πi(vi, v−i) − πi(bi, v−i) ≤ viai(vi, v−i) − viai(bi, v−i) ⇔ πi(vi, v−i) − πi(bi, v−i) ≤ vi (ai(vi, v−i) − ai(bi, v−i)) (DSIC) gives the maximum difference between payments if player j bids vi and when she bids bi, given v−i.
How to compute payments visually – type graph
For a given allocation rule (given by a(v)) and fixed v−i: We omit the dependence on v−i in the notation from here. (DSIC) πi(vi) ≤ πi(bi) + vi (ai(vi) − ai(bi)) v1
i
v2
i
v1
i (ai(v1 i ) − ai(v2 i ))
Length of the edge (vi, v′
i ): the amount that the payment in (vi, v−i)
can be larger than in (v′
i , v−i).
How to compute payments visually – type graph
v1
i
v2
i
· · · vk
i
dummy Steps to compute payments:
◮ For each player i and each v−i, create a complete digraph D with
a node for each valuation (type).
◮ Any node potential on D is a payment rule that satisfies (BNIC).
Lemma
There is a feasible node potential on D iff it has no negative cycles.
How to compute payments visually – type graph
Lemma
There is a feasible node potential on D iff it has no negative cycles.
- Proof. “⇒”: If there is a negative cycle, no labeling of the nodes is
feasible, since any node on the negative cycle needs to have value higher than itself. “⇐”: If there is no negative cycle:
◮ Set all node labels to zero. ◮ Increase the value of each label such that the constraints are
satisfied given the previous assignment.
◮ Repeat until nothing changes.
Since there are no negative cycles, each iteration fixes one label.
How to compute payments visually – type graph
v1
i
v2
i
· · · vk
i
dummy ai(dummy) = 0 πi(dummy) = 0 Steps to compute payments:
◮ Create a complete digraph D with a node for each type. ◮ Any node potential on D is a payment rule that satisfies (BNIC).
No upper bound on the node potentials: all payments can be arbitrarily large. (IR) vi(ti)(ai(ti) − ai(dummy)) − πi(ti) + πi(dummy) ≥ 0
Graph representation – type graph
v1
i
v2
i
· · · vk
i
dummy Compute maximal payments by finding the largest value node potential. Minimum length paths from any node to the dummy node give maximum payment. Order the valuations s.t. v1
i > v2 i > . . . > vk i .
Lemma
D contains no negative cycles iff a is monotone in vi, i.e. a(vj
i ) ≥ a(vℓ i ), for all vj i > vℓ i .
Lemma
D contains no negative cycles iff a is monotone in vi, i.e. a(vj
i ) ≥ a(vℓ i ), for all vj i > vℓ i .
- Proof. “⇒” If not monotone, a(vj
i ) < a(vℓ i ), for some vj i > vℓ i , and
vj
i (a(vj i ) − a(vℓ i )) + vℓ i (a(vℓ i ) − a(vj i ))
= (vj
i − vℓ i )(a(vj i ) − a(vℓ i ))
“⇐” Suppose monotone, let C be minimum length negative cycle. Let vℓ
i be its largest value and (vj i , vℓ i ), (vℓ i , vk i ) ∈ C with j, k < ℓ.
Then, vj
i (a(vj i ) − a(vℓ i )) + vℓ i (a(vℓ i ) − a(vk i ))
= vj
i
- a(vj
i ) − a(vℓ+1 i
) + a(vℓ+1
i
) − a(vℓ
i )
- + vℓ
i
- a(vℓ
i ) − a(vk i )
- ≥ vj
i
- a(vj
i ) − a(vj+1 i
)
- + vj+1
i
- a(vj+1
i
) − a(vℓ
i )
- .
- Proof. “⇐” Suppose monotone, let C be minimum length negative
- cycle. Let vℓ
i be its largest value and (vj i , vℓ i ), (vℓ i , vk i ) ∈ C with
j, k < ℓ. Then, vj
i (a(vj i ) − a(vℓ i )) + vℓ i (a(vℓ i ) − a(vk i ))
= vj
i
- a(vj
i ) − a(vℓ+1 i
) + a(vℓ+1
i
) − a(vℓ
i )
- + vℓ
i
- a(vℓ
i ) − a(vℓ+1 i
) + a(vℓ+1
i
) − a(vk
i )
- = vj
i
- a(vj
i ) − a(vℓ+1 i
)
- + vj
i
- a(vℓ+1
i
) − a(vℓ
i )
- + vℓ
i
- a(vℓ
i ) − a(vℓ+1 i
)
- + vℓ
i
- a(vℓ+1
i
) − a(vk
i )
- = vj
i
- a(vj
i ) − a(vℓ+1 i
)
- + (vℓ
i − vj i )
- a(vℓ
i ) − a(vℓ+1 i
)
- + vℓ
i
- a(vℓ+1
i
) − a(vk
i )
- > vj
i
- a(vj
i ) − a(vℓ+1 i
)
- + vℓ+1
i
- a(vℓ+1
i
) − a(vk
i )
- .
The reduced type graph
Lemma
D contains no negative cycles iff a is monotone in vi, i.e. a(vj
i ) ≥ a(vℓ i ), for all vj i > vℓ i .
Corollary
There is a payment rule π, such that (a, π) is a DSIC IR auction, iff a is monotone.
Corollary
If a is monotone, the shortest (vj
i , dummy)-path in D is
(vj
i , vj+1 i
, . . . , vk
i , dummy).
v1
i
> v2
i
> · · · . . . > vk
i
dummy
The optimal auction
Given a feasible allocation rule (a), we now know how to compute the payments. v1
i
> v2
i
> · · · . . . > vk
i
dummy Thus, we can compute the expected revenue we get from player i:
- vj
i ∈Vi
ϕ(vj
i )π(vj i ) =
- vj
i ∈Vi
ϕ(vj
i )
- vj
i (a(vj i ) − a(vj+1 i
)) + vj+1
i
(a(vj+1
i
) − a(vj+2
i
)) + . . . + vk
i a(vk i )
- =
- vj
i ∈Vi
a(vj
i )
- ϕ(vj
i )vj i − P[vi > vj i ](vj−1 i
− vj
i )
- =
- vj
i ∈Vi
ϕ(vj
i )vj ia(vj i )
The optimal auction
Maximize the total expected revenue max
- v∈V
ϕ(v)
- i∈N
πi(v) = max
- v∈V
ϕ(v)
- i∈N
viai(v) , where the virtual valuations are equal to v1
i = v1 i
and vj
i = vj i − P[vi > vj i ]
ϕ(vj
i )
(vj−1
i
− vj
i ) .
The optimal allocation rule solves the optimization problem for every bid vector.
Optimal auction?
- 1. Compute virtual values
- 2. For any given vector of bids assign the item to the player with the
highest positive virtual valuation.
Regular distributions and ironing
What if the optimal allocation rule is not monotone?
Definition
A distribution ϕ is regular if vj
i ≥ vℓ i ⇔ vj i > vℓ i .
Lemma
If the distribution ϕ is regular, the allocation rule is monotone.
Ironing
If the distribution ϕ is not regular, we iron the virtual weights as follows: vj,j+1
i
= ϕ(vj
i )vj i + ϕ(vj+1 i
)vj+1
i
ϕ(vj
i ) + ϕ(vj+1 i
)
Regular distributions and ironing
Theorem
Allocating the item according to ironed virtual values of the bids is the
- ptimal allocation rule.
- Proof. If no ironing occurs
If ironing is necessary, then the allocation rule without ironing is not
- feasible. Thus a(vj
i , v−i) < a(vj+1 i
, v−i) for some j, i, and v−i. We define a new optimization problem: max
- i∈N
- vj
i ∈Vi
ϕ(vj
i )vj ia(vj i , v−i)
s.t. a(vj
i , v−i) = a(vj+1 i
, v−i) Treat vj
i and vj+1 i
as a single type with one a.
The optimal auction
Optimal auction
- 1. Compute virtual valuations
- 2. If vj
i < vj+1 i
, iron vj
i and vj+1 i
.
- 3. Repeat 2 until virtual valuations are monotone.
- 4. For any given bid vector, allocate to highest positive ironed virtual
valuation.
- 5. Compute corresponding payments.
The optimal auction for continuous distributions
If the distribution Fi(x) = P[vi ≤ x] of the types is continuous vi = vi − 1 − Fi(vi) fi(vi) , where fi(vi) =
d dvi F(vi).
If vi > vi ′ for vi < v′
i : iron the values.
Example: If vi ∼ U(0, 1): vi = vi − 1 − Fi(vi) fi(vi) = vi − 1 − vi 1 = 2vi − 1 So, vi ≥ vi ′ if and only if vi ≥ v′
i and vi ≥ 0 for all vi ≥ 1 2.