googles auction for tv ads noam nisan tel-aviv and hebrew university joint work with: jason bayer,...
TRANSCRIPT
![Page 1: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/1.jpg)
Google’s Auction for TV ads
Noam Nisan
Tel-Aviv and Hebrew University
Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias, Neil Rhodes, Misha Seltzer, Danny Tom, Hal
Varian, Dan Zigmond
![Page 2: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/2.jpg)
sells TV ads
• Google has deals with TV “publishers” (networks, cable companies) that let it sell some of their “ad-spot” inventory.– Over 100 channels, some local, some national
• Google auctions this inventory among interested advertisers on a daily basis.
• Buying TV spots this way is web-based.
![Page 3: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/3.jpg)
Outside the scope of this talk
• Why is Google doing this?
• What are its future plans?
• What is its competitive advantage?
• What kinds of deals does Google have?
• How much money is Google making?
![Page 4: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/4.jpg)
Scope of this talk
• The auction mechanism– In operation since Sept 2008
• What we did & theoretical perspective– The good, the bad, and the ugly
• No numbers– Some I don’t know, some I can’t tell….
• Only passing mention of the whole system– Whole system in operation about 2 years
![Page 5: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/5.jpg)
Buying TV ads from Google
Why buy from Google?– Web-based: easy, fast, flexible, day-to-day– Aggregation with precise targeting– Excellent feedback / reporting allows optimization
• Actual number of viewers, tune-out info, …
Workflow for advertisers:1. Upload ad video2. Enter desired targets and your bid3. Everyday:
The auction runs, your ad is scheduled and aired, you get a detailed report, and you pay Google (and then Google pays publishers.)
![Page 6: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/6.jpg)
Choose Target
![Page 7: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/7.jpg)
Specify Bid
![Page 8: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/8.jpg)
Daily Auction Process
Publishers Daily Inventory
Advertisers Bid DB
Auction runs daily
Schedule
Pricing
Google bills advertisers
Publishers receive & air ad schedule
Cpm price
#viewers
![Page 9: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/9.jpg)
Rest of Talk
• Basic theoretical model
• Auction goals
• The ascending auction – Good and bad
• The ugly
![Page 10: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/10.jpg)
Basic Model
Input• m slots for sale; slot j has
reserve price rj ≥ 0
• n bidders. Bidder i has:– Budget limit bi
– Value vij for each slot j
Output• Set of slots Si won by
each bidder i.
• Price pj for each slot j
Obvious Constraints • Si disjoint
• rj ≤ pj ≤ vij (for j in Si)
• ∑ j in Si pj ≤ bi
Optimization Goals• Revenue
• Efficiency (total value)
• Fairness (?)
• Incentive Compatibility
![Page 11: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/11.jpg)
Incentive Compatibility
• Bidders are strategic– They will mis-report their value or budget if
that helps them
• Our Auction should produce the desired results even when bidders act strategically
• Best if Auction rules themselves discourage any strategic behavior– I.C. = truthful = strategy-proof
• Revelation Principle: this is wlog
![Page 12: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/12.jpg)
Optimize?Difficult example:
– 100 slots– Alice: bid value=$25, budget=$50– Bob: bid value = $5, budget=$150
Optimize Revenue: Maximize ∑j pj ? – Alice: 2 slots * $25– Bob: 30 slots * $5– Other 68 slots can go anywhere
Optimize Social Welfare: Maximize ∑ j in Si vij ?
– Alice: 100 slots, at whatever cost ≤ $50– Budgets ignored in allocation
![Page 13: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/13.jpg)
Econ 101Example:
– 100 slots– Alice: bid value=$25, budget=$50– Bob: bid value = $5, budget=$150
Solve: demand=supply:– D(p) = 200/p for p ≤$5– D(p) = 50/p for $5 < p ≤$25– D(p) = 0 for $25 < p
Solution: D(p)=100 when p=$2– Alice: 25 slots * $2– Bob: 75 slots * $2
![Page 14: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/14.jpg)
Walrasian Equilibrium
Definition: S is the demand of i at prices p1…pm if it is within budget (∑ j in S pj ≤ bi) and it maximizes utility. I.e. for every T within budget we have that ∑ j in T (vij-pj)≤ ∑ j in S (vij-pj).
Definition: S1…Sn and p1…pm are at an equilibrium if:
• For every i, Si is the demand of i• All items j are allocated, except perhaps those
with rj = pj
![Page 15: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/15.jpg)
The continuous case
If slots were infinitely divisible then:
• A Walrasian Equilibrium always exists
• It is Pareto Efficient (first welfare theorem)
• It exhausts the budgets of all bidders that bid > market price on at least some slot
• When bidders are small (“price takers”) there is no incentive for under-bidding.
![Page 16: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/16.jpg)
Our case
• Sometimes a Walrasian equilibrium doesn’t exist at all.– Sometimes it does
• If it exists, then it is Pareto efficient and exhausts the budget of each bidder up to the price of the cheapest slot for which it bid at least market.
• “Sometimes” it is incentive compatible.
![Page 17: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/17.jpg)
Computing the Demand of i
Input: p1…pm ; vi1…vim ; bOutput: S within budget (∑ j in S pj ≤ bi) that
maximizes ∑ j in S (vij-pj)
Complexity: Knapsack NP-hardOptimal Fractional solution:
– Greedily in order of decreasing vij/pj
Why not FPTAS?– Speed, Simplicity, and Extendibility– Stability over multiple calls – Budget limit not really sharp
![Page 18: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/18.jpg)
Simultaneous Ascending AuctionDemange-Gale-Sotomayer, Kelso-Crawford, …
• Initialize: pj = rj ; Si = Ø ; Q all bidders
• While Q not empty– i Q.deque()
– Si demand(i)– At current prices; but +δ for j not in Si
– For all slots j taken from others do pj pj +δ
– For all k that had slots taken do Q.enque(k)
![Page 19: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/19.jpg)
Analysis
• Prices only increase at most mvmax/δ rounds
• After round with i dequed, Si = demand(i)
• Remains true, when prices of un-owned slots increase– Invariant: for i not in Q: Si = demand(i)
• When algorithm terminates we have a (δ-) Walrasian equilibrium
![Page 20: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/20.jpg)
Ignoring the bug
BUG: slots may be left un-allocated….
Definition: “Gross Substitutes” = it doesn’t happenTheorem: If “Gross Substitutes” then (δ-) Walrasian
equilibrium [Kelso and Crawford]
Example: Homogenous slots• Also Incentive compatible if values<<budgets or budgets<<values
Example: “Unit demand” – demand is never more than a single unit [Demange, Gale, and Sotomayer]
An algorithm for maximum-weight bipartite matching• Also final prices are VCG and thus incentive compatible
![Page 21: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/21.jpg)
Remnant round
Reality is not “Gross substitutes” Some slots remain un-allocated at the end
What to do with these?• Ignore and leave un-allocated?
Our Solution: remnant-sale round• Fix what was already sold• Repeat:
• Reduce prices of unsold slots a bit• Rerun simultaneous ascending auction
• Until all unsold slots are at reserve price
![Page 22: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/22.jpg)
Software Engineering
• “Bidder” is a central internal interface– Responsible only for the desires of a single
advertiser– Can answer “demand” queries
• Arbitration between the different bidders is the responsibility of the main algorithm and is price-based.
![Page 23: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/23.jpg)
Multiple ad lengths
• Standard Ad lengths may be 15sec, 30sec, 60sec, 90sec,120sec
• We use15sec slots• Pricing difficulty:
– $10 for 30sec vs. $7 for 15sec + $2 for 15sec– $10 for 30sec vs. $9 for 15sec + $9 for 15sec
• Our solution:– In main ascending auction, pay taken slot prices– In remnant round, pay for all slots of displaced ad
![Page 24: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/24.jpg)
Crowding
• TV stations and advertisers often require some minimum gap between similar ads– By time or by commercial break– Per-creative, per advertiser, sometimes even
per-industry
• Internal to demand logic• Can be solved exactly using dynamic
programming• We just add condition in greedy algorithm
![Page 25: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/25.jpg)
Noisy Budgets
• Daily budgets are only approximate:– Google allows up to 20% daily deviation – Actual costs depend on actual numbers of
viewers and are only estimated
• Leaves room for policy decisions
• Leaves room for optimizations– Allow taking “last spot” if it is just a bit above
• Re-justifies the greedy demand logic
![Page 26: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/26.jpg)
Unscheduled slots
• We do not really have free disposal: “half filling” a commercial break is not allowed.– Various rules
• Try to schedule “public service announcements” to fill commercial breaks.
• Release non-full breaks (and try re-scheduling)
![Page 27: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/27.jpg)
Overlapping Auctions
• Sometimes we need to run an auction for some parts of the slot-inventory before the rest of the inventory is finalized.
• Problem: budget shared between the auctions.
• Solution: Use best estimate/prediction on non-finalized inventory; commit only to inventory you need to commit to.
![Page 28: Googles Auction for TV ads Noam Nisan Tel-Aviv and Hebrew University Joint work with: Jason Bayer, Deepak Chandra, Tal Franji, Robert Gardner, Yossi Matias,](https://reader034.vdocuments.us/reader034/viewer/2022051614/5519993455034653068b48da/html5/thumbnails/28.jpg)
Thank You!