mechanisms with verification for any finite domain carmine ventre università degli studi di salerno
TRANSCRIPT
Mechanisms with Verification for Any Finite Domain
Carmine Ventre
Università degli Studi di Salerno
Task Scheduling [Nisan&Ronen’99]
Allocation X costi(X) + ti,n= ti,j
Selfish
• Optimal Makespan:
minx maxi costi(X)
• Verification (observe machine behavior)
no VCG!
J1 Jj Jn
… …
M1 Mi Mm… …
b1 bi bm… …
tasks
machines
t1 ti tm… …types
Mechanism design: payments
utility = payment - cost
Verification
Give the payment if the results are given “in time”
Machine i gets job j when reporting bi,j
1. ti,j bi,j just wait and get the payment
2. ti,j > bi,j no payment (punish agent i)
Why Verification?
Provably better approximation No verification No c-APX mechanism
Makespan on unrelated machines [Nisan&Ronen’99] Weighted sum on related machines [Archer&Tardos’01]
Verification Exact mechanisms Makespan on unrelated machines [Nisan&Ronen’99] Comparable Types [Auletta et al. ‘06]
Verification (1+)-APX mechanism Makespan on unrelated machines [Nisan&Ronen’99] Weighted sum on related machines [Auletta et al.’06]
Things become simpler Can “recycle” existing algorithms [Auletta et al.’06]
Even for two machines andexponential running time
Polynomial time
New lower bounds [Mu’Alem&Shapira’06] [Christodoulou&Koutsoupias&Vidali06]
Setup
Agent i holds a resource of type ti
X1,…, Xk feasible solutions
(how we use resources) costi(X) = ti(X) = time utility = payment – cost Goal: minimize m(X,t)
No payment ifti(X) > bi(X) (verification)
Truthful mechanism running an optimal algorithm
(t1,…,tn)
Our Contribution
Can implement the optimum “in general” Minimize any
m(X,t)=m(t1(X),…,tn(X))non decreasing in the agents’ costs ti(X)
Can implement any optimum “in general” for compound agents Agents declaring more than a “value” (e.g., agent
controlling more than one machine) “Impossibility” results on mechanisms with
verification for infinite domains
Existence of the Payments
Truthfulness (single player):
P(a) - a(A(a)) P(b) - a(A(b))
a b
truth-tellingP(b) - b(A(b)) P(a) - b(A(a))
X=A(a)Y=A(b)
a(Y) - a(X)
b(X) - b(Y)
Must be non-negative
(a,b)
(b,a)
P(a) + (a,b) P(b)
P(b) + (b,a) P(a)
A() A(, b-i)
P() P(, b-i)
Algorithm
Existence of the Payments
Truthful mechanism (A, P)
Can satisfy all P(a) + (a,b) P(b)
There is no cycle of negative length
a b kc …
[Malkhov&Vohra’04][MV’05][Saks&Yu’05]
[Bikhchandani&Chatterji&Lavi&Mu'alem&Nisan&Sen’06]……
Why Verification Helps
a bX
a(Y) - a(X)
Some edges may “disappear”
Y
True type is “a” but report “b”:1. a(Y) b(Y) can “simulate b” and get P(b)2. a(Y) > b(Y) no payment (verification helps)
P(a) - a(X) P(b) - a(Y)P(a) - a(X) - a(Y)
0voluntary participation
0nonnegative costs
a(Y) > b(Y)
Why Verification Helps
a bX
a(Y) - a(X)
Only these edges remain:
Ya(Y) b(Y)
Negative cycles may desappear
Optimal Mechanisms
Algorithm OPT:
• Fix lexicographic order X1 X2 … Xk• Return the lexicographically minimal Xj minimizing m(b,Xj)
Optimal Mechanisms
a bX Y
a(Y) b(Y)
m(a(X),b-i(X)) m(a(Y),b-i(Y))
cZ
b(Z) c(Z)
X is OPT(a,b-i)
c(X) a(X)
m(•,b-i(Y)) is non-decreasing
m(b(Z),b-i(Z)) m(c(Z),b-i(Z)) m(b(Y),b-i(Y))
m(c(X),b-i(X)) m(a(X),b-i(X))
Optimal Mechanisms
a bX Y
a(Y) b(Y)
m(a(X),b-i(X)) = m(a(Y),b-i(Y))
cZ
b(Z) c(Z)
c(X) a(X)
= m(b(Z),b-i(Z)) = m(c(Z),b-i(Z))= m(b(Y),b-i(Y))
= m(c(X),b-i(X)) = m(a(X),b-i(X))
Z XX Y X=Y=Z
Finite Domains
Theorem: Truthful OPT mechanism with verification for any finite domain and any
m(X,b)=m(b1(X),…,bm(X))
non decreasing in the agents’ costs bi(X)
All vertices in a cycle lead to the same outcome
Different proof of existence of exact truthful mechanism w/ verification for makespan on unrelated machines [Nisan&Ronen‘99]
(In-)Finite Domains?
Nodes=declarations
All vertices in a cycle lead to the same outcome
Y
…
Nodes=outcomes
X
Y
P(X) + (a,b) P(Y)
D(X,Y)
P(X) + D(X,Y) P(Y)
D(X,Y) = sup {(a,b)| (a,b) edge from “X” to “Y”}
P(X)
P(Y)
P(X)
P(Y)
X
XD(Y,X)
(In-)Finite Domains?
m(i,j) = max(i,j), two outcomes X and Y
a(Y) b(Y)a b c
b(X) c(X) Y
X
Y
X
Y
X
b-i
11
10a(Y) - a(X) b(X) - a(Y)-8 1
1
9
14
13
12
13
agent i
Y Y
X
P(a) > P(c) + 7 X Y
-8
1
(In-)Finite Domains?
SCFs implementable without verification
SCFs implementable with verification
There exists a class of social choice functions (SCFs) s.t. …
… using the allocation graph
Looking for alternative techniques
Compound Agents
J1 Jj Jn
… …
M1 Mi Mm… …
agent1 agentlagentk… …
t1 ti tm… …types b1 bi bm… …
Each agent declares more than a type
Verification for Compound Agents Punish agent i whenever uncovered lying over one
of its dimensions (e.g., machines) Collusion-Resistant mechanisms w/ verification
w.r.t. known coalitions
aX
a(Y) - a(X)bY
a = (a1, a2) b = (b1, b2)
Edge (a,b) exists iff a1(Y) b1(Y) and a2(Y) b2(Y)
OPT is implementable w/verification
Compound Agents
Collusion-Resistant for known coalitions mechanisms w/ verification for makespan on unrelated machines makespan on related machines
J1 Jj Jn
… …
M1 Mi Mm… …
agent1 agentlagentk… …
b1bi bm… …
Polynomial timec (1+) - APX
Exponential time Exact mechanisms
Conclusions & Further Research OPT is “always” implementable w/ verification
for finite domains Breaking lower bounds for classical mechanisms
[Archer&Tardos‘01][Bilò&Gualà&Proietti’06][NR‘99] Infinite domains and verification? Are collusion-resistant (for unknown coalitions)
mechanisms w/ verification possible? Some answers in [Penna&V, Submitted]