Practical Public Sector Combinatorial Auctions S. Raghavan University of Maryland (joint work with Robert Day, University of Connecticut) Full paper “Fair Payments for Efficient Allocations in Public Sector Combinatorial Auctions”, Management Science, Vol 53, No 9, September 2007, pp1389-1406. What is a Combinatorial Auction? • Any auction for multiple items in which bidders may bid on combinations of items, rather than placing bids on items individually. • Advantages: – Complements: don’t have to get stuck with less than what you want – Substitutes: don’t have to get stuck with more than what you want • Disadvantages: – Potential computational difficulty for determination of winners, payments, and strategies C.A. Applications • Landing slots at airports to control congestion • Award of Spectrum to Telecom Co’s • Shipping Lanes (reverse auction) • Industrial Procurement (reverse auction) – CombineNet: world leader in industrial CAs Auction Goals • Efficiency: the items being auctioned go to those who value them most. • Price Discovery: an iterative process allows competitors to learn about supply-demand pressures to determine market value of items The General Winner Determination Problem: Maximize: wd(J) = bj(S) xj(S) jєJ S in I subject to: xj(S) 1 , for each good i jєJ S|iєS xj(S) 1 , for each bidder j S in I Where xj(S) = 1 if bidder j receives set S = 0 otherwise bj(S) = bidder j’s bid on set S Complexity of the General Winner Determination Problem (WD) • NP-hard for arbitrary bids • Many special cases are solvable in polynomial-time (Rothkopf, Pekec, Harstad) • Given advances in computing power, and optimization methodologies, most practical WD problems can be solved to optimality in practice. • Additionally, hybrid variations of combinatorial auctions have been proposed where initially separate parallel auctions are conducted (clock phase) for the items, followed by one final round of combinatorial auction (proxy phase). Classic auction theory • English auction: 1 item, price rises until only one willing buyer remains – Provably optimal strategy: stay in until price reaches your true value – Winner pays one bid increment above second highest bidder’s value • Sealed-bid auction: – Each bidder submits value for item – First-price variation: pay-what-you bid – Second-price variation: winner pays second highest bid Properties of the Second-price Sealed-bid Auction for 1 item • Individual Rationality (IR): Bidders each expect a non-negative payoff • Efficiency: the highest bid wins • Dominant Strategy Incentive Compatibility: Misreporting value never gives an advantage • The “Core” property: no coalition can form a mutually beneficial renegotiation among themselves (notion of core akin to a stable outcome) The Beautiful Generalization: The Vickrey-Clarke-Groves (VCG) Mechanism Focus in mechanism design on Incentive Compatibility There is a unique mechanism that satisfies: – Individual Rationality – Efficiency – Dominant Strategy Incentive Compatibility for a general set of items with arbitrary preferences. Each winning bidder j gets a discount equal to: wd(J) – wd(J \ { j } ) VCG example (substitutes) • b1(A) = 4, b1(B) = 3, b1(AB) = 6 • b2(A) = 3, b2(B) = 4, b2(AB) = 5 Efficient solution: bidder 1 gets A, bidder 2 gets B Discount to bidder 1: wd(1,2) = 8, wd(2) = 5, discount = 8 – 5 = 3, payment = 1. Discount to bidder 2: wd(1,2) = 8, wd(1) = 6, discount = 8 – 6 = 2, payment = 2. Interpretation: Each bidder pays the min. amount necessary to take her good away from the other The problem with VCG! The Quintessential Example • b1(A) = 2, b2(B) = 2, b3(AB) = 2 VCG outcome: Bidder 1 and 2 pay zero The seller would be better off bargaining with bidder 3 for non-zero payment (both would prefer it) Thus, this outcome is not “in the Core” Non-monotonicity over bids: – More bids can mean lower revenue for the seller! Such (non-core) payments are not acceptable in a public sector setting. Impossibility result in the combinatorial auction setting • Suppose we want a sealed-bid Combinatorial Auction that has all the nice properties of the second-price auction for one item: Impossibility Result: No mechanism can simultaneously satisfy: – – – – Individual Rationality Efficiency Dominant Strategy Incentive Compatibility the Core property for a general set of items with arbitrary preferences The Practical Generalization: Core-Selecting Mechanisms • Prevailing attitude in Mechanism Design literature: Incentive Compatibility must be upheld (a constraint.) • Since VCG is not practically viable we must drop DS Incentive Compatibility as a hard constraint – (IR and Efficiency must stay) • The perspective of core-selecting mechanisms: Incentive compatibility is an objective – Maintain IR, efficiency, and the core property (with respect to submitted bids) as constraints – minimize the incentives to misreport The Core • An Allocation / Payment outcome is blocked if there is some coalition of bidders that can provide more revenue to the seller in an alternative outcome that is weakly preferred to the initial outcome by every member of the coalition. • An unblocked outcome is in the core. • A Core-Selecting Mechanism computes payments in the core with respect to submitted bids. 5 bidder example with bids on {A,B} • b1{A} = 28 Winners • b2{B} = 20 • b3{AB} = 32 VCG prices: • b4{A} = 14 p1= 14 • b5{B} = 12 p2= 12 The Core Bidder 2 Payment b4{A} = 14 b3{AB} = 32 b1{A} = 28 Efficient outcome b2{B} = 20 20 The Core 12 b5{B} = 12 14 28 32 Bidder 1 Payment VCG prices: How much can each winner’s bid be reduced holding others fixed? Bidder 2 Payment b4{A} = 14 b1{A} = 28 b3{AB} = 32 b2{B} = 20 20 The Core 12 VCG prices b5{B} = 12 Problem: Bidder 3 can offer seller more (32 > 26)! 14 28 32 Bidder 1 Payment Bidder-optimal core prices: Jointly reduce winning bids as much as possible Bidder 2 Payment b4{A} = 14 b1{A} = 28 b3{AB} = 32 b2{B} = 20 20 The Core 12 VCG prices Problem: bidderoptimal core prices are not unique! 14 b5{B} = 12 28 32 Bidder 1 Payment Core point closest to VCG prices Bidder 2 Payment b4{A} = 14 b1{A} = 28 b3{AB} = 32 b2{B} = 20 20 Unique core prices 15 12 VCG prices b5{B} = 12 Minimize incentive to distort bid! 14 17 28 32 Bidder 1 Payment So why core (stable) pricing? • Truthful bidding nearly optimal – Simplifies bidding – Improves efficiency • Same as VCG if VCG in core (e.g., substitutes) • Avoids VCG problems with complements – Prices that are too low • Revenue is monotonic in bids and bidders • Minimizes incentive to distort bids Representing the Core • Formulation pj ≥ wdC(p) For all coalitions C in J jєW Exponential number of coalitions so exponential number of constraints! Use constraint generation to determine minimum sum total payments over the core. The Separation Problem: Finding “the most violated blocking coalition” for a given payment vector pt • At pt , reduce each of the winning bidder’s bids by her current surplus: That is let bj(S) = bj(S) – (bj(Sj) - pjt ) • Re-solve the Winner Determination Problem • If the new Winner Determination value > Total Payments • Then a violated coalition has been found • Add to core formulation and re-iterate Adjusting payments Minimize pj jєW pj ≥ wd(pτ) - pjτ for each τ ≤ t j є W \ Cτ j є W ∩Cτ and for each j є W pjVCG pj bj(Sj) Example of the Procedure Winning Bids b1 = 20 Non-Winning Bids b4 = 28 b5 = 26 b6 = 10 b2 = 20 b3 = 20 b7 = 10 b8 = 10 VCG payments Blocking Coalition p1 = 10, p2 = 10, p3 = 10 p4 = 28, p3 = 10 Example of the Procedure Winning Bids b’1 = 10 Non-Winning Bids b4 = 28 b5 = 26 b6 = 10 b’2 = 10 b’3 = 10 b7 = 10 b8 = 10 VCG payments Blocking Coalition p1 = 10, p2 = 10, p3 = 10 p4 = 28, p3 = 10 Adjusting payments (1) Minimize pj jєW p1 + p2 ≥ 38 – 10 = 28 for each j є W pjVCG pj bj(Sj) New payments p1 = 14, p2 = 14, p3 = 10 Example of the Procedure Winning Bids b’1 = 14 Non-Winning Bids b4 = 28 b5 = 26 b6 = 10 b’2 = 14 b’3 = 10 b7 = 10 b8 = 10 New payments Blocking Coalition p1 = 14, p2 = 14, p3 = 10 p2 = 14, p5 = 26 Adjusting payments (2) Minimize pj jєW p1 + p2 ≥ 28 p1 + p3 ≥ 26 for each j є W pjVCG pj bj(Sj) New payments p1 = 16, p2 = 12, p3 = 10 Winning Bids b’1 = 16 Non-Winning Bids b4 = 28 b5 = 26 b6 = 10 b’2 = 12 b’3 = 10 b7 = 10 b8 = 10 New payments No Blocking Coalition exists: p1 = 16, p2 = 12, p3 = 10 These payments are final Conclusions • Core mechanisms provide a practical alternative to VCG when VCG does not work well • Separation problem provides complexity result: finding a core point is NP-hard iff Win. Det. is NP-hard • Analogous to Second Price Mechanism: if bids were replaced by payments, they would just be enough to be winning • When VCG does work well (is in the core) the outcomes are the same (Ausubel and Milgrom) • Government combinatorial auctions (FAA (USA) and OfCom (UK)) using the quadratic rule described here are ongoing