280 likes | 306 Views
Combinatorial Auctions ( Bidding and Allocation). Adapted from Noam Nisan. What is a Combinatorial Auction?. Set of Products: Each customer can bid: $700 for { AND } $1200 for { } OR $8 for { } $6 for { } XOR $30 for { } $3 for { ANY 3}.
E N D
CombinatorialAuctions(Bidding and Allocation) Adapted from Noam Nisan
What is a Combinatorial Auction? • Set of Products: • Each customer can bid: $700 for { AND } $1200 for { } OR $8 for { } $6 for { } XOR $30 for { } $3 for {ANY 3}
The Model • m items for sale: X = {x1,…,xm} • n bidders: v1,…,vnEvery vi is a valuation of subsets of X:vi : 2X R+vi(S ) = how much would I pay for S X • Bids are handed in sealed envelops. • Auctioneer allocates the items among bidders trying to maximize its revenue:Find n disjoint sets - S1,…,Sn X s.t. vi(Si) is maximal.
Issues • Bidding • Expressiveness • Simplicity • Allocation • Hardness Results • Approximation Algorithms • Payment • Strategy
Bidding • No Externalitiesv (S ) depends only on S. • Free DisposalS T v (S ) v (T ) • Normalizationv () = 0
Bidding • Let S and T be disjoint item subsets.We say S and T are: • Complementary, if:v (S T ) > v (S ) + v (T ) • Substitutes, if:v (S T ) < v (S ) + v (T )
Bidding - Examples • The additive valuation • v (S ) = |S | • No substitutabilities and no complementarities. • The single item valuation • Want to buy just one item. • v (S ) = 1 (iff S is not empty) • All items are substitutes of each other. • The K-budget valuation • Want to buy up to K items. • v (S ) = min {K, |S |}
Bidding - Examples • The majority valuation • Want to buy most of the items. • v (S ) = 0 for |S | < m / 2 1 otherwise • Symmetric valuation • Let p1,…,pn be non-negative numbers.v (S ) = j=1…|S| pj • Additive: pj=1 • K-budget: pj= 0 for j > K 1 otherwise • Majority: pj= 1 for j = m/2 0 otherwise
Bidding - Examples • Downward sloping symmetric valuation • A symmetric valuation withp1 p2 … pn 0 • Is viewed as the “normal” economic case.
Bidding - Asymmetric Examples • The monochromatic valuation • m/2 red items, m/2 blue items. • Want to buy items of just one color. • For S having k reds and l blues,v (S ) = max{k,l } • One-of-each-kind valuation • m/2 pairs of items. • Want to buy just one item from each pair. • For S having k pairs and l singletons (|S |=2k+l),v (S ) = k +l
Bidding Languages • A simple language: • Specify v explicitly as a 2m vector. • Impractical - bids are too big. • Language must allow: • To express any “reasonable” valuation with polynomial (in m) size expressions. • To be computationally easy: given v and S, compute v (S ) in polynomial time. • The applet-language: • Specify v as a computer program. • Doesn’t allow efficient allocation algorithms.
Basic Bidding Languages • Atomic bids • v = (S,p)v (T ) = p if TS 0 otherwise • Can’t represent the additive valuation. • OR bids • v = (S1,p1) OR (S2,p2) OR … OR (Sk,pk) • If Si and Sj are disjoint, v (SiSj) = pi+pj • Can express all bids with no substitutabilities and only them.
Basic Bidding Languages • XOR bids • v = (S1,p1) XOR (S2,p2) XOR … XOR (Sk,pk) • v (S ) = max pi s.t. SSi • Can express all bids. • The additive valuation requires 2m atoms in XOR language but only m atoms in OR language.
OR-of-XOR • v = u1ORu2OR … ORukeach ui is a XOR bid. • The bidder is willing to obtain any number of u-s for the sum of their prices. • Downward sloping bid:[({x1},p1) XOR … XOR ({xm},p1)] OR[({x1},p2) XOR … XOR ({xm},p2)] OR…[({x1},pm) XOR … XOR ({xm},pm)]
OR-of-XOR • Theorem: The monochromatic valuation requires an (2m/2) size OR-of-XOR expression. • Proof: • W.L.O.G. every (S,p) is monochromatic. • p = |S | • Can’t have a blue atom in one clause and a red atom in another. • All atoms must be in one XOR clause. • The additive valuation on m/2 red items requires XOR of 2m/2 atoms.
XOR-of-OR • v = u1XORu2XOR … XORukeach ui is an OR bid. • The bidder is willing to obtain the maximal u. • Monochromatic bid:(OR over all reds) XOR (OR over all blues) • Theorem: Fix K = m/2. The K-budget valuation requires an (2m1/4) size XOR-of-OR expression.
OR/XOR Formulae • Definition: Let v and u be valuations. Then, • (v XOR u)(S) = max{v(S),u(S)} • (v OR u)(S) = max{v(R)+u(T)|RT=, RT=S} • Stronger than OR-of-XOR XOR-of-OR. E.g.:v = (monochromatic on m/2 items) OR (K-budget on m/2 items)
OR Bids with Phantom Items • OR* bids (Fujishima et al.): Each bidder submits an OR bid whose atoms (S,p) may introduce new (phantom) items. • Phantom items are used to express constraints, e.g.: (S1,p1) XOR (S2,p2) = (S1{g},p1) OR (S2{g},p2) • Theorem: Any OR/XOR formula of size s can be rewritten as an OR* formula of size s and O(s 2) phantom items.
The OR* Language • Theorem: The majority valuation requires at least (mm/2) atoms in the OR* language. • Proof: • (S,p) with p > 0 must have at least m/2 real items. • Every subset of m/2 real items must appear as an atom (possibly with phantom items). • Open problem: Is OR* strictly stronger than OR/XOR? • OR* can express externalities.
Bidding and Computability • Definition 1: A bidding language is polynomially interpretable if there exists a polynomial algorithm receiving a bid b in the language and a subset S as input, and outputs b (S ). • Only Atomic and XOR are polynomially interpretable. • Definition 2: A bidding language is polynomially verifiable if there exists an NP algorithm receiving a bid b in the language, a subset S and a proof w of a lower bound on b (S ).
Allocation • Bids are given in OR*. • Auctioneer can treat them as one OR* bid:{Bi}i=1..n, where Bi=(Si,pi) is an atomic bid. • Algorithmically – no difference between real and phantom items.
SPP - Hardness • SPP – Set Packing Problem • Is equivalent to Max-Clique and Max-Independent-Set with weighted vertices. • Is approximable within O(n/log2n) • Not approximable within n1/2- for any >0. • Not approximable within n1- for any >0, unless NP=ZPP.
Integer Programming • Formalization of the allocation problem:Maximize:i=1…nxipiSubject to:i|jSjxi 1, for each j=1…mxi{0,1} , for each i=1…n • Relaxation to linear programming:xi 0, for each i=1…n
Fractional Auctions • Example: communication lines for saleB1 = ({TA-Paris, Paris-NY, P}, 10)B2 = ({TA-London, London-NY, P}, 10)B1 is 1/3 winning and B2 is 2/3 winning.Can use B1 for a 1/3 of its bandwidth, and B2 – for 2/3 of its bandwidth.
Single Item Prices • An allocation x1,…,xn is supported by single item pricesy1,…,yn if: • For every winning bid (xi=1), pijSiyj • For every losing bid (xi=0), pijSiyj • The allocation is exactly supported if for every winning bid, pi=jSiyj • If every item belongs to some winning bid, it is a full allocation.
Single Item Prices • An auction admits single item prices if it has a full allocation supported by single item prices. • Theorem: An auction admits single item prices The linear program produces {0,1} solutions.Then the supporting prices are the solutions to the dual linear program.
Single Item Prices - Example • Bidder #1: • Bidder #2: ({A},5) XOR ({B},6) ({A,P},5) OR ({B,P},6) ({B},3) • Bidder #1 wins A for 5$.Bidder #2 wins B for 3$. • Supporting prices: A = 2$, B = 3$, P = 3$
Cases Where LP Relaxation Is Optimal • Linear Order BidsThe items can be linearly ordered, G = {g1,…,gm}, such that all bids are for sub-ranges, S = {gk,…,gl}. • Hierarchical BidsAll sets form a nested hierarchy. Every two bids S, T are either disjoint or one contains the other. • OR-of-XORs of Singleton Bids • Single Item Bids • Downward Sloping Symmetric Bids