- Published on
Notes on Auto-bidding and Auctions Survey [Aggarwal-et-al-24]
Query
This notion of a query is not explicitly defined in the paper, though it comes up multiple times. My understanding is that, a query can be a search query that a user provides (like Google, Instagram). Nevertheless, it could generally be any event where ads are eligible to be shown. As a result, each query (or ad opportunity) triggers its own auction, with slots for multiple ads.
As of reading this paper, it is unclear to me an auction is defined at what level. Is it per-query, or a bundle of queries (where each query has a bundle of slots)? - [04/17/2025]
Answer. [02:23PM - 04/19/2025]:This paper Aggarwal, Varadaraja, Mehta - WINE19 gives an answer. It is indeed that there is an auction for each query, and each query has a bundle of slots.
The setting
autobidding agents.
auctions (e.g., for bundles of impressions).
Valuation. The valuation for an agent winning an auction is .
Such valuations can be given by trained ML models such as predicted click-through rate and predicted conversion-rate.
Slots. Each auction (trigger by a query as we discussed above) has slots, indexed by , with decreasing (w.r.t. ) importance characterized by the decay parameters . Specifically, an agent winning slot in auction receives a value of . (An agent can win multiple slots in the same auction).
W.l.o.g., one can assume that , and auctions have the same number of slots (as one can add dummy slots with decay factor ).
Auctions. Fix an auction with slots. Each player submits a single bid for the entire auction.
a. The input to the auction is then the vector of bids .
b. The output of the auction for each agent is the allocation for each slot , and a payment .
When each auction has only a single slot, we omit the index .
Question. [12:20PM - 04/16/2025]
How to make sense of a fractional assignment of a slot? I can understand a fractional assignment of an auction (e.g., the setting in FPPE), which correspond to the proportion of the pool of slots allocated to an agent. But, again, even this interpretation does not make complete sense here since slots are not homogeneous, each of them has its own decay parameter.
Maybe the fractional assignment is interpreted as the probability of winning a slot, then the sum of assignments (over all agents) for each slot should be . Not sure if this is the case.
Problems from a bidding agent's perspective
Goal: Submit bids that maximize some objectives subject to some constraints.
The discussion below considers auctions with a single slot, omitting the index . Nevertheless, my guess is that it can be extended to the case of multiple slots where the total valuation received by an agent from an auction is of the form .
Objectives of an agent
Utility-maximization:
Value-maximization:
Value maximization focuses on maximizing clicks or conversions, regardless of cost, appealing to advertisers who prioritize these metrics. It indirectly considers payments through a constraint on payments or the return on spend. Utility maximization, common in economics, maximizes the difference between value and payments, requiring values to be expressed in monetary terms, which can be difficult for advertisers.
- Hybrid: , for some . Note that this factor is universal across all auctions and agents.
Constraints of an agent
Budget: for some budget .
Return-on-spend (RoS): for some .
Re-emphasize that the valuations is independent to the bids, whereas the allocations and payments (should) depend on the bids.
Formulation
s.t. Budget and RoS constraints.
Question. [1:28PM - 04/16/2025]
Why this is a formulation for bidding agents? What are the variables?
If I understand correctly, agents can only submit bids; they cannot explicitly choose either the payment amount or the allocations. Now, this objective function is not a function of the bids. So, how can an agent optimize this function? It seems to me that this program is for auctioneers (to improve the welfare of the agents), not for agents themselves.
My current guess is that, bids are implicitly optimized since they are used to compute the allocations and payments, whereas the function that maps bids to allocations and payments is defined by the auction mechanism. If this is the case, what is the advantage of this program over the one that directly optimizes the bids? Do they solve the dual instead or something?
Problems from an auctioneer's perspective
Goal: Design an auction mechanism that maximizes some objectives subject to some constraints.
Objectives
Revenue:
Liquid welfare (LWEL):
Fix and agent . Let
Note that by the RoS constraint, . Further, by the budget constraint, .
Liquid welfare is the maximum amount of money that can be extracted from an agent while satisfying the constraints. Here is one way to think about it. Fix an agent .
a. If , then in the best case, the total payment (i.e., ) of an agent can be made to equals to its budget (i.e., bind the budget constraint), while the RoS constraint remains satisfied. In this case, LWEL equals to .
b. On the other hand, if , then in the best case, one can make the total payment of an agent to equals to (i.e., RoS is binding). In this case, LWEL equals to .
The observation follows:
Observation 1. Given an instance of the problem, for any outcome of the auction (i.e., payments and allocations), its resulting liquid welfare is at least its revenue. The equality holds if and only if for each agent, either the RoS constraint or the budget constraint (or both) is binding.
For value-maximization agents, under their optimal strategy (assuming others' fixed), it is often the case that either Budget or RoS binds, unless there is no chance for them to obtain higher values by increasing their spend. For this reason, liquid welfare receives significantly more attention in the literature especially with value-maximization agents.
Bidding algorithms
Fix an agent . We omit the index in the discussion below.
LP for truthful auction
Let be the price of an ad for this advertiser for query .
I guess that the price is the payment for the auction (for agent ), and such auction is triggered by a query . Also, my guess is that there is only a single slot in the auction.
What is "and ad for an advertiser"?
Note: While reading their formulation further, it seems that this price is not the same as the payment for the auction . Rather, , which makes sense.
Suppose, for argument, we know the query sequence and the values of in advance.
Question. [09:49AM - 04/18/2025]
As pointed out by the authors, the price of an ad depends on the bids and auction mechanism. So, it is not clear to me how to know the price in advance. Is this assumption only made to get analytical results?
The formulations of the primal and dual (from the perspective of a single bidding agent ) are as follows
Primal
Here is a set of parameters that captures different variants of Budget and RoS constraints. One example can be where , (i.e., the budget constrain) and , (i.e., the RoS constraint).
One can verify that the dual is as follows:
Dual
Here, and are the dual variables for the first and the second sets of constraints in the primal, respectively.
For truthful auctions, assuming that the optimal values of the dual variables are known, they following bidding formula always lead to an auction outcome that incurs an optimal primal solution:
Variants of the above bidding formula can be derived for different types of bidders. Let and be the optimal dual variables for the budget and RoS constraints, respectively.
- Value-maximization ():
- Value-maximization without Budget:
- Utility-maximization without RoS ():
The bid formula depends on the knowledge of the optimal duals; in practice these can be estimated via ML techniques from past data, and updated via control loops.
Online setting
There is an active line of work on online bidding algorithms, where the input models and be stochastic or adversarial; the auctions can be truthful or un-truthful. See page 7 to 9 of the paper for a survey of the literature.
Rest of the paper
The authors then provided a detailed summary of efficiency of different solution concepts; convergence; optimal auction design.
Multi-channel settings
Channels can be coming from the same platform (e.g., Google, Facebook) or different platforms. Here, one can study either bidding problems or auction design problems. This is an interesting setting. I want to work on one such problems.