Selective Call Out and Real Time Bidding Tanmoy
Selective Call Out and Real Time Bidding Tanmoy Chakraborty University of Pennsylvania (Google intern 2009) Joint work with Eyal Even-Dar, Sudipto Guha, Yishay Mansour, S Muthukrishnan
Ad. X Information Flow: High Level ad-network Call Out Publisher Bid Page info, Publisher Ad Info User requests webpage Call Out Ad. X ad-network auction Bid Call Out Bid Everything happens in ~300 ms ad-network
Problem: Enormous Traffic Volume Many ad-networks may not have the resources to process a call out for every impression Insight: ad-networks are interested in some impressions more than others – Based on properties of the webpage, user Online real-time selection of a subset of ad-networks for every impression: – Selective Call Out
Ad. X Information Flow: High Level ad-network Call Out Publisher Bid Page info Publisher Ad Info User requests webpage Ad. X Call Out ad-network auction Bid Call Out Selective Call Out Bid ad-network
Goal of a Selective Call Out Algorithm Respect resource constraints Possible optimization objectives: – Maximize welfare • Sales is a sub-problem of welfare (0 -1 bids) – Maximize revenue
Goal of a Selective Call Out Algorithm Auction mechanisms should be truthful – Welfare: Vickrey auction – Revenue: Posted Price Mechanism • Ad. X calls out with (different) prices to ad-networks • Allocates impression to the ad-network with highest accepted price, receives revenue = price • Constant approximation to revenue optimal auctions [CHMS ‘ 10, BGGM ‘ 10] Key feature: A decision layer of choosing participants
Modeling Resource Constraints Resource constraints modeled using token buckets A token bucket for each ad-network – Standard model in the networking community – Tokens are generated at some rate – The bucket can hold at most ¾i ½i tokens – Each call out must consume a token – Call out to an ad-network fails if bucket is empty Token bucket imposes average call out rate that an adnetwork can process
Online Allocation Literature Multiple constrained ad allocation problems have been studied in approximation literature – Budget-constrained (eg. Ad. Words - MSVV ’ 05) – #impression-constrained (eg. FKMSP ‘ 09) Constraint is usually upon the entire allocation – Our model imposes a rate (token bucket) constraint Bids are known before allocation is made – Call out decision made before bids are revealed Some prior info is needed for smart call out decision
Bayesian Environment Our model: Given an impression, the ad-network chooses a bid from a bid distribution – Ad. X knows the bid distributions Similar to Myerson’s model for revenue-optimal auctions – Also helps in ensuring truthfulness
Online Model: Adversarial vs Stochastic Existing literature has considered different models of impression arrival Adversarial model (eg. MSVV ‘ 05) – Worst-possible sequence of impressions Stochastic model (eg. GM’ 08, DH’ 09, VVS’ 10) – Any set of impressions in uniformly random order – Impressions drawn independently from any fixed unknown distribution (iid model)
Online Model: Adversarial vs Stochastic Often there is gap in competitive ratio in the two models – Adwords: (1 -1/e) in adversarial [MSVV’ 05], (1 -e) in stochastic [DH’ 09] – Many ad allocation problems with linear or concave maximization objective [VVS’ 10]
Online Model: Adversarial vs Stochastic Our problem easily captures the online knapsack problem, even with one ad-network – Unbounded competitive ratio in the adversarial model – Logarithmic competitive ratio in the range of possible values of optimum Our main results in iid model – (1 -1/e - e) approximation to maximum welfare – (1/2 - e)-approximation to revenue-optimal posted price mechanism
IID Model: Maximizing Welfare Mechanism: call out for bids, then run Vickrey auction with the bids – Welfare obtained is maximum received bid Max j qj expected-max-bid (xij) j qj xij · ½i 8 i=1, 2…n xij 2 {0, 1} 8 i=1. . . n, j=1. . . m qj is the probability of drawing impression j Allow randomized algorithms: 1 ¸ xij ¸ 0 The objective is neither convex nor concave
Maximizing Welfare Key differences from Adwords etc. Rate constraint instead of total volume/budget constraint – Assume impression arrival rate is uniform or Poisson – Our solution respects average rate in expectation – Show that token bucket is rarely empty • #tokens in the bucket performs random walk – Only (1 – 1/ ¾i) fraction lost Non-concave maximization objective – Objective and constraints were usually linear – Our solution: Linearize the objective while losing a factor of at most (1 -1/e) – Then the techniques of [DH’ 09, VVS’ 10] can be applied
Approximating by an LP Upper-bound the program by a linear program Max j qj i k k yijk j qj xij · ½i 8 i=1, 2…n yijk · pijk xij i k k yijk · 1 0 · xij · 1 yijk ¸ 0 8 i=1. . . n, j=1. . . m, all bids k yijk = probability that i wins impression j by bidding k pijk = probability that i bids k on impression j
Approximating by an LP Upper bound (easy): LP optimum dominates optimum of original call-out program Lower bound: If call outs are made according to xij from an LP solution, expected welfare is at least (1 -1/e) times the LP objective However, this LP is huge, and qj are unknown
Decoupling Only the resource constraints involve all impressions Max j qj i k k yijk j qj xij · ½i 8 i=1, 2…n Global Constraint yijk · pijk xij i k k yijk · 1 Pj(x, y) 0 · xij · 1 yijk ¸ 0 8 i=1. . . n, j=1. . . m, all bids k
Decoupling Lagrangean duality: move constraint into the objective Max j qj i k k yijk + i ¸i (½i - j qj xij) yijk · pijk xij i k k yijk · 1 Pj(x, y) 0 · xij · 1 yijk ¸ 0 8 i=1. . . n, j=1. . . m, all bids k There exists ¸i such that optimum remains unchanged – Optimal solution is feasible for original LP
Decoupling LP(j) : Pj(x, y) j qj ( Max i k k yijk + i ¸i (- xij) ) yijk · pijk xij i k k yijk · 1 0 · xij · 1 yijk ¸ 0 8 i=1. . . n, j=1. . . m, all bids k Then LP decouples to give small LPs LP(j) – Optimizing the LP is same as optimizing each small LP
Solution: Summary Solution: Learn ¸i using a sample of impressions. Then solve LP(j) for every arriving impression LP(j) admits a simple combinatorial solution – Almost linear-time implementation
Revenue We give 1/2 -approximation to optimal posted pricing (with selective call out), for any bid distribution – The call out algorithm has to select prices too – Same principle: linearize a non-concave maximization objective, losing factor 1/2 – The LP then decouples: efficient implementation
Open Problems Handle changing bid distributions – Bidding behavior is likely to change over time Learn the bid distributions, while maintaining truthfulness
Thank You!
- Slides: 23