In all modeling approaches presented in the previous sections, the publisher needs to: (1) create a supply forecast for a certain horizon in future, (2) solve a large-scale optimization problem prior to the serving period (oine phase), and (3) use the static optimal solution, treated as ad serving probabilities, to assign ad impressions to contracts upon each arrival throughout the serving horizon (online phase). This approach requires the publisher to solve a large-scale optimization problem frequently throughout the day so the solution is adapted to the most recent supply forecasts and the campaigns' progress status. Even by employing specialized optimization algorithms, such as the SHALE by Bharadwaj et al. (2012), it can
2The reader may refer to Prékopa (2013) for standard techniques in translating stochastic programs with chance constraints into equivalent deterministic form.
3
take multiple hours to solve the oine math program, and the resulting policy is prone to mistakes since the solution remains stationary until the next re-solving period.
There is a separate stream of research that eliminates both the need for supply forecasting and the need for solving an oine planning problem. These approximate/myopic heuristics use minimal (simplest) state information (such as campaigns' progress status) to select an eligible ad upon each user visit. Mehta (2012) provides the most extensive review of this literature. We provide a short excerpt below for quick reference. Buchbinder and Naor (2009) also provides a very instructive chapter on how a primal-dual analysis can be used for designing online algorithms in a variety of problem settings such as set covering, load balancing, routing, ad auction revenue, etc.
Online algorithms are designed to deal with online input, which is unknown in advance and revealed incrementally at the same time that the algorithm has to make decisions. I limit the scope of this study to the case of adversarial input. That is, there is absolutely no prior knowledge on the size (supply forecast) or type (graph connectivity) of the input. Therefore, a bound on the performance of the online algorithm should consider the worst-case input.
Five classes of problems have been studies for the allocation of online advertising:
1. Online bipartite matching: There is a graph G(I, K, T ), of which one side, K (campaign list), is known in advance, and the other side, I (user types) along with connectivity T arrives online (one impression at a time). The goal is to maximize the number of matchings.
This problem, along with the optimal online policy, has been proposed by Karp et al.
(1990). It is optimal to create a random permutation of the known vertices K before-hand, and then match each arriving node i ∈ I with the rst available node k ∈ Γ(i) in the permutation. In the worst case, this policy performs within 1 − 1/e ' 0.63 of
optimality (if we knew the entire graph beforehand). Interestingly, this approach (of randomly sorting nodes only once beforehand) diers from a policy that matches each vertex i ∈ I to one of the available k ∈ Γ(i) at random (i.e., a random number is drawn upon each arrival). This latter has a competitive ratio of 0.5. A deterministic algorithm that matches an arrival to any available campaign also has a competitive ratio of 0.5 (see Mehta 2012, p.287).
2. Online vertex-weighted bipartite matching: A generalization of online bipartite matching in which each vertex (campaign) k ∈ K has a non-negative weight ck, and the goal is to maximize the sum of weight of vertices in J that are matched.
Maximize
The optimal online policy, due to Aggarwal et al. (2011), is to create for each (known) vertex k ∈ K an adjusted weight ˆck = ck(1 − erk−1) prior to the serving time, where rk ∼ U [0, 1] is a uniform random variable. Then we match each arrival i ∈ I to the available k ∈ Γ(i) with maximum ˆck. The worst-case performance is 1 − 1/e ' 0.63 of optimality.
3. Adwords problem: Each vertex (campaign) k ∈ K has a budget Bk, and edges e ∈ (i, k)have bids bik (denoting how much advertiser k values a user type i). When we match an arriving vertex i ∈ I to a neighbor k ∈ Γ(i), the budget Bk depletes by bik. When a vertex (campaign) depletes its entire budget, then it becomes unavailable. The goal is to maximize the total budget spent (revenue of the publisher). This is exactly the problem setting for auction-based non-guaranteed ad planning.
Maximize
The best known online policy, which has a competitive ratio of 1 − 1/e ' 0.63, is due to Mehta et al. (2007). The idea is to match each arrival i ∈ I to the available k ∈ Γ(i) with
maximum scaled bid ˆbik = bik 1−e1−eBk−1˜−1
where ˜Bk is the fraction of the budget spent so far. Note that ˆbik decreases from bik to 0 as the budget depletes ( ˜Bk approaches 0).
Buchbinder et al. (2007) provide a clever proof of this bound using primal-dual analysis and develop some extensions. These bounds, however, assume that the bid-to-budget ratio tends to zero.
4. Display Advertising: Each vertex (campaign) k ∈ K has an integral capacity dk
(demand), which is an upper bound on how many vertices (impressions) i ∈ I can be matched to k. Each edges (i, k) ∈ T has a weight cik (the quality of user i for advertiser k) . The goal is to maximize the total weight of edges matched (total quality of serving). becomes an instance of the Adwords problem (to see this, multiply both sides of each demand constraint by ck, and dened budget as Bk = ckdk). However, for the general case of cik weights, it is not possible to derive any non-trivial competitive ratio: If the input is adversarial, the adversary can sort arrivals so that we observe smallest cikuntil budgets are depleted, and then we observe arrivals with innitely large cik. A side-step (which makes the setting less applicable to the practice of online advertising) has been to assume a free disposal property: a vertex (campaign) k ∈ K is allowed to be matched more times than its capacity dk, but the gain is evaluated based on the dkhighest weight edges matched. With this assumption, Feldman et al. (2009) design an online algorithm which uses bid-scaling and achieves a competitive ratio of 1 − 1/e ' 0.63 as capacities dk→ ∞.
5. Generalized Assignment Problem (GAP): This is a generalization of all the prob-lems above. Each vertex (campaign) k ∈ K has a budget, each matching (i, k) ∈ T
involves a bid bik that depletes the budget Bk, and it provides a certain matching quality cik which is being maximized:
Maximize
The approximability of this problem has been studied by Chakrabarty and Goel (2010), and is beyond the scope of this paper.