- 56 Views
- Uploaded on
- Presentation posted in: General

Algorithmic Mechanism Design: an Introduction

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - 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

- 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?

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}

- 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

- 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

- 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)

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

- 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

- 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.

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-.

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?

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

- 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)

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

- 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?

…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?

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

1/2

1/2

…in our case…

xj=1

n= |OPTi|

for j=1,…,|OPTi|

yj=|Sj|

- 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?