ad auctions: an algorithmic perspective
DESCRIPTION
Ad Auctions: An Algorithmic Perspective. Amin Saberi Stanford University Joint work with A. Mehta, U.Vazirani, and V. Vazirani. Outline. Ad Auctions: a quick introduction Search engines allocation problem: Which advertisers to choose for each keyword? - PowerPoint PPT PresentationTRANSCRIPT
Ad Auctions: An Algorithmic Perspective
Amin Saberi
Stanford University
Joint work with A. Mehta, U.Vazirani, and V. Vazirani
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)
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
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
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--)
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!!
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)
Greedy Algorithm
Greedy: Give the query to the advertiser with the highest bid.
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
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
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!
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
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
Give query to bidder with max bid (fraction of budget spent)
Our Algorithm
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
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:
Analyzing KP
OPT = NRevenue = Painted Area
Analyzing KP
Optimum Allocation
Analyzing KP
Optimum AllocationWhere did KP place these queries?
Analyzing KP
Optimum AllocationWhere did KP place these queries?
First Constraint:
First Constraint:
First Constraint:
First Constraint:
Second Constraint:
First Constraint:
Second Constraint:
In general:
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, …
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
Recall: Our Algorithm
The bids are arbitrary
Algorithm:
Award the next query to the advertiser with max
Step 2: General Case
Can we mimic the proof of KP?
Bid =
Bid =
Step 2: General Case
On a closer inspection
Considering all the queries:
Bid =
1
i
Bid =
Where does come from?
New Proof forKP
Factor Revealing LP
Modify the LPfor arbitrary bids
Use dual to get tradeoff function
Tradeoff Revealing LP
Step 3: Sensitivity Analysis
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 =
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
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?
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
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
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
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--)
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
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!
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?
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.
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:
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
THE END
Applications in other areas?
Circuit switching
Tradeoff revealing LP for other on-line and approximation algorithms
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
Analyzing KP
123N-1N
1-1/e
1/N
1/(N-1)
1/(N-2)
Analyzing KP
REVENUE= (1-1/e) N
1-1/e
123N-1N
Special case: On-line Matching
All budgets = 1 Bids are either 0 or 1
KVV: competitive factor of 1-1/e
girls boys
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