Issues in Scaling Up the 700 MHz Auction Design Second FCC Combinatorial Auction Conference October 27, 2001 CS 286r. Computational Mechanism Design Thanks for Karla Hoffman, GMU, for allowing use of these slides
Issues in Scaling Up the 700 MHz Auction Design Wye River Conference II October 27, 2001 Melissa Dunford Martin Durbin Karla HoffmanDinesh Menon Rudy SultanaThomas Wilson
Introduction s Auction #31 rules were designed specifically for that auction –No computational problems for a 12 license auction s Seeking a design for large combinatorial auctions –Start with Auction #31, identify the problem areas in regards to scalability and then discuss alternatives
Outline s Review of Auction #31 rules impacting scalability and possible alternatives –Determining maximum revenue each round –Choosing among ties –Minimum Acceptable Bid (MAB) s Mechanism for testing scalability
Auction #31 Formulation s Choose among a set of bids such that: –Revenue to the FCC is maximized –Each license is awarded exactly once –No bidder has bids in a provisionally winning bid set from more than one round subject to: Ax = 1 (each license awarded exactly once) Mutually Exclusive Bid Constraints
Ax =1: Each license awarded once s This is called a set-partitioning problem. These types of problems have a very nice mathematical structure. Bid Bid amt. 2 $12e6 3 $30e6$22e6 1 4 $16e6 5 $8e6 Package B ABCABDADC 6 $11e6 BC 7 $10e6 A 8 $7e6 D x 3 + x 5 + x 6 + x 3 x1x1 + x 4 + x 7 x1x1 + x 4 + x 8 B C A D =1 =1 =1 =1 + x 2 + x 3 x1x1 + x Example: 4 licenses, 8 bids
Example: Mutually Exclusive Bid Constraints Considered Bids for Bidder A Set of bids made in Round 1: Set of bids made in Round 2: Create two “use-round” variables for Bidder A: Form the following constraints:
s Mutually exclusive bid constraints alter the nice structure of set-partitioning (Ax =1) and make the problem harder to solve Solving Challenges: Mutually Exclusive Bid Rule x 3 + x 5 + x 6 + x 3 x1x1 + x 4 + x 7 x1x1 + x 4 + x 8 B C A D =1 =1 =1 =1 + x 2 + x 3 x1x1 + x 6 R (A,2) UAUA R (A,1) 0 1 <= 0 + u (A,2) + x 2 + x 3 x1x1 + x 4 + x 5 + x 6 + x 7 + x 8 u (A,1) - 3u (A,2) - 5u (A,1)
Solvability of Integer Optimizations s The size and complexity of “solvable” integer problems is growing at an extraordinary rate s In our testing most problems solve very quickly, but...
Breaking Ties s Solvers work at getting an optimal solution quickly, no solver automatically provides tie information s Breaking ties randomly important for legal reasons s Cannot use a tie-breaking method that requires the generation of all tied sets (there could be millions of tied sets even for an auction with few licenses)
Tie-Breaking Procedure s Ties will be broken randomly using a two- step process –First step selects a bid set that achieves the maximum revenue –Second step selects a bid set at random from all optimal bid sets
s Each considered bid is assigned a selection number –A bid’s selection number is the sum of n pseudo-random numbers where n is the number of licenses comprising the bid's package Choosing Randomly Among Winning Sets subject to: Ax = 1 (each license awarded exactly once) Mutually Exclusive Bid Constraints = Maximum Revenue
+ 12e6x e6x 3 22e6x e6x 4 + 8e6x e6x e6x 7 + 7e6x 8 = 37e6 + u (A,2) + x 2 + x 3 x1x1 + x 4 + x 5 + x 6 + x 7 + x 8 u (A,1) - 3u (A,2) - 5u (A,1) x 3 + x 5 + x 6 + x 3 x1x1 + x 4 + x 7 x1x1 + x 4 + x 8 B C A D =1 =1 =1 =1 + x 2 + x 3 x1x1 + x 6 Rev 0 1 <= 0 R (A,2) UAUA R (A,1) s The optimization required to break ties is a harder problem to solve than the maximum revenue problem due to a machine arithmetic problem Solving Challenges: Tie-Breaking e6 = 37e6 12e630e616e68e611e610e67e600
Tie-Breaking: Evaluation s Current method of random tie-breaking works s Due to time considerations in large auctions, tie-breaking procedure may be postponed until later rounds –Concept of stages
Minimum Acceptable Bids A minimum acceptable bid is the greater of: i.The minimum opening bid ii.The bidder’s previous high bid on a license/package plus X% iii. The bidder’s previous high bid on a license/package plus a share of the revenue needed to tie the provisional winners (Pekec, Rothkopf; Weber; Milgrom)
Shortfall Formulation Determining Shortfall Revenue for Bid i subject to: Ax = 1 (each license awarded exactly once) Mutually Exclusive Bid Constraints Bid i’s Shortfall = Maximum Revenue - Shortfall Revenue i
Distributing Shortfall s Pick the second-best allocation, with bid i, with the most provisional winning bidding units, then allocate a weighted- fraction to bid i. there can be more subject to: Ax = 1 (each license awarded exactly once) Mutually Exclusive Bid Constraints = Shortfall Revenue i W = {winning bids}
Deficit Calculations s Determining a deficit for Bid i Part 3 MAB i = BidAmt i + Deficit i
Scaling-up Auction #31 s Largest auction run with 10 min round delay: –50 licenses, 25 bidders, 25 packages s Deficit calculations are the biggest bottleneck s Reason: –A deficit is calculated for every license and every constructed package of every bidder s Up to (#Licenses + #Packages) * #Bidders, calculations per round –Each deficit calculation requires solving two integer programs s On average, 99.5% of the runtime was spent calculating deficits
Alternatives to Deficit Calculations s Many authors suggest removing rule iii –Auction takes too long to close at 10% increment –Raising increment percentage may create a threshold problem s Other authors suggest using shadow prices to calculate MABs. s Rassenti, Smith, Bulfin (1982) s DeMartini, Kwasnisca, Ledyard, Porter (1999) s Milgrom (2001) –Shadow prices are the dual prices of the linear programming approximation to the integer problem –Shadow prices estimate the current value of each license
Alternative Rule iii Shadow Prices A minimum acceptable bid is the greater of: i.The minimum opening bid ii.The bidder’s previous high bid on a package plus X% iii. The estimated value of a package b plus Y% Note: The estimated value of a package is the sum of the shadow prices of the licenses that make up the package
Bid b3b3 b4b4 b5b5 Variablesb1b1 b2b2,,,, = 0 or 1 Maximize $24 b 2 $20 b 3 $16 b 4 $8 b 5 $22 b b4b4 License Ab1b1 0 b3b3 0 <= 1 Count License Bb1b1 b2b2 0 b4b4 0 <= b3b3 0b5b5 License C 1 0b2b Auction Formulation Bid Bid amt. 2 $24 3 $20$ $16 5 $8 Package BC ACAB C Objective Value: $30 License AB C Note: This formulation of the maximum revenue problem ignores the mutual exclusive bid constraints.
LP Formulation,,,, Bid b3b3 b4b4 b5b5 Variablesb1b1 b2b2 = 0 or 1 Maximize $24 b 2 $20 b 3 $16 b 4 $8 b 5 $22 b b4b4 License Ab1b1 0 b3b3 0 <= 1 Count License Bb1b1 b2b2 0 b4b4 0 <= b3b3 0b5b5 License C 1 0b2b >= b3b3 b4b4 b5b5 Variablesb1b1 b2b2 CBA License Variables sAsA,, sBsB sCsC 1s A 1 s B 1s C 0 >= Bid 1 Bid 2 Bid 3 Bid 4 Bid 5 >= Bid amt. $22 $24 $20 $16 $8 sAsA 0 sAsA sAsA 0 sBsB sBsB 0 sBsB sCsC sCsC 0 sCsC Minimize ++ Dual Formulation Objective Value: $33,,,, Objective Value: $33 Dual Problem
Dual prices: Two Problems s Greater than primal s Not unique
Solution: Pseudo-Duals s Rassenti, Smith and Bulfin (1982) as well as DeMartini, Kwasnica, Ledyard and Porter (1999) suggest solving for pseudo-dual prices in order to adjust the over-estimated shadow prices s Use the provisional winners as the “mark” for adjusting down the shadow prices s Result... –The shadow prices sum to equal the revenue obtained from the integer solution –The sum of the shadow prices of a winning package equals the bid amount of the package
Adjusted Shadow Prices Pseudo-Dual Problem CBA License sCsC 0 sBsB sBsB 0 sBsB 0 sAsA 0 sAsA sAsA 0 1s A 1 s B 1s C Variables sAsA,, sBsB sCsC 0 >= Bid 1 Bid 2 Bid 3 Bid 4 Bid 5 Bid amt. $22 $24 $20 $16 $ Minimize ++ sCsC sCsC >= 3 3 4 4 Variables 2 2,, >= 0 22 33 4 22 33 44 = = Objective Value: $30
value (B) in $ value (A) in $ Shadow PriceLicense A B Alternative Shadow Prices $5$5 Bid Bid amt.$10 1 PackageAB Solution1 2 8 $9$1 1 $10 $10 $2$8
value (B) in $ value (A) in $ Shadow PriceLicense A B 2 $5 A 0 3 $2 B 0 Bid Bid amt.$10 1 PackageAB Solution1 1 $10 $10 Bid 2>= + $5 BA Dual Constraints 3$2 2$5 Bid 3>= + $2 Alternative Shadow Prices
value (B) in $ value (A) in $ Shadow PriceLicense A B $5 A 0 3 $2 B 0 Bid Bid amt.$10 1 PackageAB Solution $10 $10 $5$5 $2$8 $3.5$6.5 Solution: Uses a centering algorithm to choose among alternative optima Alternative Shadow Prices
Scaling-up: Testing s Need a method to test the new auction design in larger environments
s Provides basic bidder functionality –Place new bids (with increments) –Renew previous bids –Dynamically create new packages –Utilize activity waivers –Reduce eligibility s Bidders are given budget constraints s Eligibility based on historic data – Many small bidders with some large bidders s Adjacency matrix for geographic synergies that determine the value of packages s Value and straightforward bidders with random increment bidding based on historical data BidBot Characteristics
Computational Staging For each of these alternatives, answer the question: How large an auction can be run? 1. Exact optimization calculations for all aspects of the auction Staging: 2. Early in the auction, use shadow prices instead of deficit calculations to determine minimum acceptable bid 3. Early in the auction, use shadow prices and do not choose among ties, i.e. take whatever solution obtained in Maximum Revenue calculation 4. Early in the auction, use shadow prices, do not break ties, and stop optimization after x minutes of calculation or y percent of optimality 5. Other changes to rules At later stage of auction -- Always do everything exactly
Where do we go next? s More testing using both BidBots and mock auctions s Shadow price testing: –What is the best way to adjust shadow prices? –What happens when licenses have few or no bidders? –How can we obtain a bidder-specific MAB that uses shadow prices? s Click-box bidding versus greater flexibility in submission of bids: –Does providing more digits of accuracy help to eliminate ties? –Issues of transparency, speed of auction, collusion s When should computational staging occur?
Package Bidding System For Auction 31 Wye River Conference October 27, 2001
bidder5 *****
20 MHz nationwide