Ad Auctions: An Algorithmic Perspective
description
Transcript of Ad Auctions: An Algorithmic Perspective
![Page 1: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/1.jpg)
Ad Auctions: An Algorithmic Perspective
Amin Saberi
Stanford University
Joint work with A. Mehta, U.Vazirani, and V. Vazirani
![Page 2: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/2.jpg)
Outline Ad Auctions: a quick introduction
Search engines allocation problem: Which advertisers to choose for each keyword? Our algorithm: achieving optimal competitive ratio of 1 – 1/e
(Mehta, S. Vazirani, Vazirani ‘05)
Incentive compatibility Designing auctions for budget constraint bidders
(Borgs, Chayes, Immorlica, Mahdian, S. ‘05) Auctions with unknown supply
(Mahdian, S. ‘06)
![Page 3: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/3.jpg)
Keyword-based Ad:
Advertiser specifies: bid (Cost Per Click) for each keyword
(search engine computes the Click-Through Rate,expected value = CPC * CTR)
total budget
Search query arrives Search engine picks some of the Ads and shows them. charges the advertiser if user clicked on their Ad
![Page 4: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/4.jpg)
Online Ads
Revolution in advertising Major players are Google, MSN, and Yahoo Enormous size, growing Helping many businesses/user experience
An auction with very interesting characteristics: The total supply of goods is unknown The goods arrive at unpredictable rate and should be allocated
immediately Bidders are interested in a variety of goods Bidders are budget constrained
![Page 5: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/5.jpg)
Outline
Ad Auctions: a quick introduction
Search engines allocation problem:Which advertisers to choose for each keyword?
Our algorithm: achieving optimal competitive ratio of 1 – 1/e(Mehta, S. Vazirani, Vazirani ‘05)
Incentive compatibility Designing auctions for budget constraint bidders
(Borgs, Chayes, Immorlica, Mahdian, S. ‘05)
Auctions with unknown supply(Mahdian, S. --work in progress--)
![Page 6: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/6.jpg)
Our Problem:
N advertisers: with budget B1,B2, …Bn
Queries arrive on-line; bij : bid of advertiser i for good j
(More precisely: bij is the expected revenue of giving the ad space for query j to advertiser iafter normalizing the CPC by click through rate etc.. )
Allocate the query to one of the advertisers ( revenue = bij )
Objective: maximize revenue!!
![Page 7: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/7.jpg)
Competitive Factor
competitive algorithm:
the ratio of the revenue of algorithm over
the revenue of the best off-line algorithm
over all sequences of input is at least
Greedy: ½-competitive
Our algorithm: 1 – 1/e competitive (optimal)
![Page 8: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/8.jpg)
Greedy Algorithm
Greedy: Give the query to the advertiser with the highest bid.
![Page 9: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/9.jpg)
Greedy Algorithm
Greedy: Give the query to the advertiser with the highest bid.
It is not the best algorithm:
$1 $0.99
$1 $0
Book
CD
Bidder 1 Bidder 2
B1 = B2 = $100
Queries: 100 books then 100 CDS
Bidder 1 Bidder 2
Greedy: $100
![Page 10: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/10.jpg)
Greedy Algorithm
Greedy: Give the query to the advertiser with the highest bid.
It is not the best algorithm:
$1 $0.99
$1 $0
Book
CD
Bidder 1 Bidder 2
B1 = B2 = $100
![Page 11: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/11.jpg)
Greedy Algorithm
Greedy: Give the query to the advertiser with the highest bid.
It is not the best algorithm:
$1 $0.99
$1 $0
Book
CD
Bidder 1 Bidder 2
B1 = B2 = $100
Queries: 100 books then 100 CDS
Bidder 1 Bidder 2
Greedy: $100OPT: $199
Greedy is ½-competitive!
![Page 12: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/12.jpg)
History
Known results:(1 – 1/e) competitive algorithms for special cases: Bids = 0 or 1, budgets = 1 (online bipartite matching)
Karp, Vazirani, Vazirani ’90 bids = 0 or , budgets = 1 (online b-matching)
Kalyansundaram, Pruhs ’96, ’00
Our result: Arbitrary bids Mild assumption: bid/budget is small. New technique: Trade-off revealing LP
![Page 13: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/13.jpg)
KP Algorithm
$ $
$ $0
Book
CD
Bidder 1 Bidder 2
B1 = B2 = $1
Special Case: All budgets are 1; bids are either $0 or $ alyansundaram, Pruhs ’96: Give the algorithm to the interested
bidder with the highest remaining money
Queries: 100 books then 100 CDS
Bidder 1 Bidder 2
KP: $1.5OPT: $2
Competitive factor: 1- 1/e
![Page 14: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/14.jpg)
Give query to bidder with max bid (fraction of budget spent)
Our Algorithm
![Page 15: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/15.jpg)
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
![Page 16: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/16.jpg)
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
![Page 17: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/17.jpg)
Step 1: Analyzing KP
For a large k, define x1, x2, …, xk :
xi is the number of bidders who spent i/k of theirmoney at the end of the algorithm
W.l.o.g. assume that OPT can exhaust everybody’s budget.
We will bound xi’s
Revenue:
![Page 18: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/18.jpg)
Analyzing KP
OPT = NRevenue = Painted Area
![Page 19: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/19.jpg)
Analyzing KP
Optimum Allocation
![Page 20: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/20.jpg)
Analyzing KP
Optimum AllocationWhere did KP place these queries?
![Page 21: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/21.jpg)
Analyzing KP
Optimum AllocationWhere did KP place these queries?
![Page 22: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/22.jpg)
First Constraint:
![Page 23: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/23.jpg)
First Constraint:
![Page 24: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/24.jpg)
First Constraint:
![Page 25: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/25.jpg)
First Constraint:
Second Constraint:
![Page 26: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/26.jpg)
First Constraint:
Second Constraint:
In general:
![Page 27: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/27.jpg)
We can solve it by finding the optimum primal and dual.
Optimal solution is
and achieves a factor of 1 – 1/e
Competitive factor of KP
Minimize
s.t.
Factor revealing LPJMS ’02, MYZ ’03, …
![Page 28: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/28.jpg)
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
![Page 29: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/29.jpg)
Recall: Our Algorithm
The bids are arbitrary
Algorithm:
Award the next query to the advertiser with max
![Page 30: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/30.jpg)
Step 2: General Case
Can we mimic the proof of KP?
Bid =
Bid =
![Page 31: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/31.jpg)
Step 2: General Case
On a closer inspection
Considering all the queries:
Bid =
1
i
Bid =
![Page 32: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/32.jpg)
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
![Page 33: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/33.jpg)
Step 3: Sensitivity Analysis
![Page 34: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/34.jpg)
2: Choose so that the change in the optimum is always non-negative.
1: No matter what we choose, optimal dual remains .
Step 3: Modified Sensitivity Analysis
Change in optimum =
![Page 35: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/35.jpg)
End of Analysis
Theorem: There is a way to choose so that the objective function does not decrease.
Corollary: competitive factor remains 1 – 1/e.
Remark: We can show that our competitive factor is optimum
![Page 36: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/36.jpg)
More Realistic Assumptions
Normalizing by click-through rate Charging the advertiser the next highest bid instead of the
current bid Assigning a query to more than one advertiser
When you have some statistical information about the queries?
When the budget/bid ratio is small?
![Page 37: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/37.jpg)
Incentive Compatibility
The bidders will find creative ways to improve their revenue Bid jamming Fraudulent clicks Aiming lower positions for an ad
Incentive compatible mechanisms: Provide incentives for advertisers to be truthful about their bids (and possibly budgets?)
Some of the difficulties in designing truthful auctions: Online nature of auction: search queries arrive at
unpredictable rates and they should be allocated immediately.
Bidders are budget constrained
![Page 38: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/38.jpg)
A Few Abstractions
Designing Auctions for budget constrained bidders (Borgs, Chayes, Immorlica, Mahdian, S. ’05)
Even in the off-line case, standard auctions (e.g. VCG) are not truthful.
Designing truthful auctions is impossible if you want to allocate all the goods
Optimum auction otherwise
Auctions for goods with unknown supply(Mahdian, S. 06)
Nash equilibria of Google’s payment mechanism Aggarwal, Goel, Motwani ’05 Edelman, Ostrovski, Schwarz ’05
![Page 39: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/39.jpg)
Open Problem
The user’s perspective: what are the right keywords/bids?
The important factor for the customers is CPA
What is the best bidding language?
User 1
User 2
User n
Search engine
![Page 40: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/40.jpg)
Outline Ad Auctions: a quick introduction
Search engines allocation problem: Which advertisers to choose for each keyword? Our algorithm: achieving optimal competitive ratio of 1 – 1/e
(Mehta, S. Vazirani, Vazirani ‘05)
Incentive compatibility Designing auctions for budget constraint bidders
(Borgs, Chayes, Immorlica, Mahdian, S. ‘05) Auctions with unknown supply
(Mahdian, S. --work in progress--)
![Page 41: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/41.jpg)
Auctions for budget constrained bidders
Each bidder i has a value function and a budget constraint Bidder i has value vij for good j Bidder i wants to spend at most bi dollars
The budget constraints are hard
ui(S,p) =
All values and budget constraints are private information, known only to the bidder herself
-1 if p > bi
j 2 S vij – p if p ≤ bi
![Page 42: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/42.jpg)
VCG mechansim
Vickrey-Clarke-Grove mechanism
(replace bids with minimum bid and budget)
Utility: 9
Payment: 1 Utility: 18
Payment: 2Bidder 1:
(v11, v12, b1) = (10, 10, 10)
Bidder 2: (v21, v22, b2) = (1, 1, 10)
“Welfare”: 10
“Welfare”: 1
Total “Welfare”: 11
Payment: 0
LIE: (5,5,10)
VCG is not truthful, even if budgets are public knowledge!
![Page 43: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/43.jpg)
Is there any truthful mechanism?
Yes. Bundle all the items together and sell it as one
item using VCG.
Is there any non-trivial truthful mechanism?
![Page 44: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/44.jpg)
Required properties
Observe supply limits – Auction never over-allocates.
Incentive compatibility – Bidder’s total utility is maximized by announcing her true utility and budget regardless of the strategies of other agents.
Individual rationality – Bidder’s utility from participating is non-negative if she announces the truth.
Consumer sovereignty – A bidder can bid high enough to guarantee that she receives all the copies.
Independence of irrelevant alternatives (IIA) – If a bidder does not receive any copies, then when she drops her bid, the allocation does not change.
Strong non-bundling – For any set of bids from other bidders, bidder i can submit a bid such that it receives a bundle different than empty or all the items.
![Page 45: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/45.jpg)
Theorem: There is no deterministic truthful auctioneven for allocating 2 items to 2 bidders that satisfiesconsumer sovereignty, IIA, and strong non-bundling.
Proof idea: Truthful auctions can be written as a set of threshold functions {pi,j} such that bidder i receives item j at price pi,j(v-i,b-i) if her bid is higher than thatrvalue
Our assumptions impose functional relations on these thresholds. Then we can show that this set of relations has no solution
A negative result:
![Page 46: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/46.jpg)
Open Problem
The user’s perspective: what are the right keywords/bids?
The important factor for the customers is CPA
What is the best bidding language?
User 1
User 2
User n
Search engine
![Page 47: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/47.jpg)
THE END
![Page 48: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/48.jpg)
Applications in other areas?
Circuit switching
Tradeoff revealing LP for other on-line and approximation algorithms
![Page 49: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/49.jpg)
Keyword-based Ad:
Interesting characteristics of these auctions:
Online nature: size and speed
Search queries arrive at an unpredictable rate
Ads should be allocated immediately (goods are perishable)
Bidders are budget constrained
![Page 50: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/50.jpg)
Analyzing KP
123N-1N
1-1/e
1/N
1/(N-1)
1/(N-2)
![Page 51: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/51.jpg)
Analyzing KP
REVENUE= (1-1/e) N
1-1/e
123N-1N
![Page 52: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/52.jpg)
Special case: On-line Matching
All budgets = 1 Bids are either 0 or 1
KVV: competitive factor of 1-1/e
girls boys
![Page 53: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/53.jpg)
Different bids and budgets?
Not so good ideas… Highest bid then the highest budget Bucket the close bids together
break the ties based on the budgetsin every bucket
We need to find a delicate trade-off between bid and budget
![Page 54: Ad Auctions: An Algorithmic Perspective](https://reader035.fdocuments.us/reader035/viewer/2022062803/5681473c550346895db47b6e/html5/thumbnails/54.jpg)