250 likes | 270 Views
Learn about design of truthful mechanisms for combinatorial auctions using VCG mechanisms and approximate algorithms.
E N D
Algorithmic Mechanism Design: an Introduction Approximate (one-parameter) mechanisms, with an application to combinatorial auctions Guido Proietti Dipartimento di Ingegneria e Scienze dell'Informazione e Matematica University of L'Aquila guido.proietti@univaq.it
Results obtained so far • Two classes of truthful mechanisms: • VCG-mechanisms: arbitrary valuation functions and types, but only utilitarian problems • OP-mechanisms: arbitrary social-choice function, but only one-parameter types and workloaded monotonically non-increasing valuation functions In all these basic examples, the underlying optimization problem is polytime computable…but what does it happen if this is not the case?
Single-minded combinatorial auction t1 =20 SCF: the set XF with the highest total value r1=20 t2=15 r2=16 t3=6 r3=7 the mechanism decides the set of winners and the corresponding payments Each player wants a specific bundle of objects ti: value player i is willing to pay for her bundle ri: value player i offers for her bundle F={ X{1,…,n} : winners in X are compatible}
Combinatorial Auction (CA) problem – single-minded case • Input: • n buyers, m indivisible objects • each buyer i: • wants a subset Si of the objects • has a value ti for Si (or any superset of Si), while she is not interested in any other allocation not containing all the items in Si (single-minded case); basically, ti is the maximum amount buyer i is willing to pay for Si • Solution: • X{1,…,n}, such that for every i,jX, with ij, SiSj= (and so Siis allocated to buyer i) • Buyer i’s valuation of XF: • vi(ti,X)= ti if iX (and so Siis allocated to buyer i), 0 otherwise • SCF (to maximize): Total value of X: iX ti
CA problem – single-minded case (2) • Each buyer makes a payment to the system pi(X) as a consequence of the selected output X; as usual, payments are used by the system to incentive players to be collaborative. • Then, for each feasible outcome X, the utility of player i (in terms of the common currency) coming from outcome X will be: ui(ti,X) = pi(X) + vi(ti,X) = pi(X) + ti
Designing a mechanism for the CA game • Each buyer is selfish • Only buyer i knows ti (while Siis public) • We want to compute an optimal solution w.r.t. the true values (we will see this is a hard task) • We do it by designing a mechanism that: • Asks each buyer to report her value ri • Computes a solution using an output algorithm g(r) • Receives payments pifrom buyer i using some payment function p (depending on the computed solution)
How to design a truthful mechanism for the problem? Notice that: the (true) total value of a feasible solution X is: i vi(ti,X) … and so the problem is utilitarian! VCG-mechanisms (should) apply
The VCG-mechanism • M=<g,p>: • g(r) = arg maxXFj vj(rj,X) • pi = -j≠i vj(rj,g(r-i)) +j≠i vj(rj,g(r)) g(r)has to compute an optimal solution… …but can we do that?
Hardness of the CA problem Theorem: Approximating the CA problem within a factor better than m1/2- is NP-hard, for any fixed >0 (recall m is the number of items). proof Reduction from the maximum independent set problem
Maximum Independent Set (MIS) problem • Input: • a graph G=(V,E) of n nodes and m edges • Solution: • UV, such that no two vertices in U are joined by an edge • Measure: • Cardinality of U Theorem (J. Håstad, 2002) Approximating the MIS problem within a factor better than n1- is NP-hard, for any fixed >0.
The reduction from MIS to CA Let be given an instance G=(V,E) of the MIS pb; then, we build an instance of the CA pb in which: a 2 input graph each edge is an object 1 G=(V,E) d each node i is a buyer with Si: set of edges incident to i b c e f 3 4 5 CA instance: S1={a,b,c,d}, S2={a}, S3={b,e,m}, S4={c,e,f,g}, S5={d,f,h,l}, S6={m}, S7={g,h,i}, S8={i,l} h g l m 7 i 8 6 Observation: the obtained CA instance is quite special: each object is contended by only two players, and any two players contend at most one object! Then, it is easy to see that the CA instance has a solution of total value k if and only if there is an IS of size k …and since m=O(n2), if we could find an approximate solution for CA of ratio better (i.e., less) than m1/2- , then we would find an IS with a ratio better than n1-.
How to design a truthful mechanism for the problem? So, the CA problem is utilitarian, and we could in principle apply a VCG-mechanism, but the solution that should be returned by its algorithm is not computable in polynomial time, unless P=NP. The question is: If we want to keep on to guarantee the truthfulness of the VCG-mechanism, can we provide in polynomial time a reasonable approximate solution for the SCF?
A general negative result For many natural mechanism design minimization problems (and the CA problem is one of them), any truthful VCG-mechanism is either optimal, or it produces results which arearbitrarily far from the optimal (this means, truthfulness will bring the system to compute an inadequate solution!) What can we do for the CA problem? …fortunately, the problem is one-parameter, and we now show that a corresponding one-parameter mechanism will produce a reasonable result.
Reminder A problem is binary demand (BD) if • ai‘s type is a single parameter ti • ai‘s valuation is of the form: vi(ti,o)= ti wi(o), wi(o){0,1}workload for ai in o Whenwi(o)=1 we say that ai is selected in o The CA problem is clearly BD: a buyer is either selected or not in the solution!
Reminder (2) An algorithm g for a maximization BD problem is monotone if agent ai, and for every r-i=(r1,…,ri-1,ri+1,…,rN), wi(g(r-i,ri)) is of the form: 1 ri Өi(r-i) Өi(r-i){+}: threshold paymentfromai is: pi(r)= Өi(r-i)
Our new goal To design a (truthful) OP and BD mechanism M=<g,p> satisfying: • g is monotone • Solution returned by g is a “good” solution, i.e., a provably approximate solution (we will actually show a O(m)-approximate solution, which is tight) • g and p are computable (efficiently) in polynomial time
A greedy m-approximation algorithm • reorder (and rename) the bids such that • W ; X • for i=1 to n do if SiW= then X X{i}; W W{Si} • return X r1/|S1| r2/|S2| … rn/|Sn|
Monotonicity of g Theorem: The algorithm g is monotone proof It suffices to prove that, for any selected agent i, we have that i is still selected when she raises her bid. In fact, increasing ri can only move bidder i up in the greedy order, making it easier to win for her. Homework: it is easy to see that the running time of g is polynomial in n and m. What is your faster implementation for g?
Computing the payments …we have to compute for each selected bidder i her threshold value How much can bidder i decrease her bid until she is non-selected?
Computing the payment pi Consider the greedy order without i r1/|S1| … ri/|Si| … rn/|Sn| index j Use the greedy algorithm to find the smallest index j>i (if any) such that: 1. j is selected 2. SjSi pi= 0 if j doesn’t exist Homework: it is easy to see that each payment can be computed in O(mn) time, and so we need a total of O(mn2) time for all the payments. Can you provide a faster implementation? pi= rj |Si|/|Sj| otherwise
The approximation bound on g Let OPT be an optimal solution for the CA problem, and let X be the solution computed by the algorithm g, then iOPT ri m iX ri proof iX let OPTi={jOPT : j i and SjSi} Observe that iX OPTi=OPT; indeed, any player j selected in OPT must either have a non-empty intersection with at least a player i<j selected in X, or j is selected in X as well (because of the greedy approach) rj m ri iX Then it suffices to prove that: jOPTi crucial observation for greedy order we have ri |Sj| jOPTi rj |Si|
proof (contd.) then, iX ri |Sj| rj m ri |Si| jOPTi jOPTi Cauchy–Schwarz inequality we can bound |Sj| |Sj| |OPTi| |Si|m jOPTi jOPTi ≤|Si| ≤ m
Cauchy–Schwarz inequality 1/2 1/2 …in our case… xj=1 n= |OPTi| for j=1,…,|OPTi| yj=|Sj|
Conclusions • We have introduced a simple type of combinatorial auction, the single-minded one, for which it is computationally hard to find an optimal solution (i.e., a best possible allocation of objects) • In a corresponding strategic setting in which types are private, the problem is both utilitarian and one-parameter, but VCG-mechanisms cannot be used since they will return an arbitrarily bad allocation! • On the other hand, it is not hard to design an OP-mechanism, which is instead satisfactory: we showed a straigthforward greedy monotone algorithm returning an O(m)-approximate solution, which is tight!
Thanks for your attention! Questions?