mechanisms with verification carmine ventre [penna & v, 2007] [v, wine ‘06]
TRANSCRIPT
Mechanisms with Verification
Carmine Ventre
[Penna & V, 2007]
[V, WINE ‘06]
Routing in Networkss
12
3
10
2
1
1
4
37
7
1
d
Internet
Change over time (link load)
Private Cost
No Input Knowledge
Selfishness
Mechanisms: Dealing w/ Selfishness
Augment an algorithm with a payment function
The payment function should incentive in telling the truth
Design a truthful mechanism
s
12
3
10
2
1
1
4
37
7
1
d
VCG Mechanisms
s
M = (A, P)
12
310
2
1
1
4
37
7
1
Pe = Ae=∞ – Ae=0 if e is selected
(0 otherwise)
M is truthful iff A is optimal
Pe’ = Ae’=∞ – Ae’=0 = 7
e’Ae’=∞ = 10 + 3 + 1
Ae’=0 = 3 + 1 + 2 + 3 + 1 - 3 = 7
s
d
Utilitye’ = Pe’ – coste’ = 7 – 3
Inside VCG Payments
Pe = Ae=∞ – Ae=0
Cost of best solution w/o e
Independent from e
h(b–e)
Cost of computed solution w/ e = 0
Mimimum (A is OPT)
A(true) A(false)
b–e all but e
Cost nondecreasing in the agents’ bids
Describing Real World: Collusions
Accused of bribery 1,030,000 results on Google 1,635 results on Google news
Are VCG mechanisms resistant to collusions?
VCGs and Collusions
s
d
3
1
6e1
e2
e3
Pe1(true) = 6 – 1 = 5
e3 reported value
“Promise 10% of my new payment” (briber)
11
Pe1(false) = 11 – 1 – 1 = 9
“Pe3(false)” = 1
bribe
h( ) must be a constantb–e
Constructing Collusion-Resistant Mechanisms (CRMs)
h is a constant function A(true) A(false)
Coalition C
(A, VCG payments) is a CRM
How to ensure it? “Impossible” for classical mechanisms ([GH05]&[S00])
Describing Real World: The Trusted Resource
Used Car market: The Kelley Blue Book – the Trusted Resource (www.kbb.com)
The Trusted Resource
Can we engage a trusted resource within a mechanism allowing (somehow) bids verification?
Time is trusted…
… unless a time machine will be created
Time is Trusted TCP datagram starts at time
t Expected delivery is time t +
1… … but true delivery time is t
+ 3 It is possible to partially
verify declarations by observing delivery time
Other examples: Distance Amount of traffic Routes availability
31TCP
IDEA ([Nisan & Ronen, 99]): No payment for agents caught by verification
Exploiting Verification: Optimal CRMs
No agent is caught by verification
At least one agent is caught by verification
A(true) = A(true, (t1, …, tn))
A(false, (t1, …, tn))
A(false, (b1, …, bn))
= A(false)
A is OPT
For any i ti bi
Cost is monotone
VCG hypotheses
Usage of the constant h for bounded domains
Problem has a truthful VCG Problem has an optimal CRM
Any value between bmin e bmax
Approximating CRMs
Extending technique above: Optimize MinMax + AVCG
Example of MinMax objective functions Interdomain routing Scheduling Unrelated Machines
MinMax objective functions admit a (1+ε)-apx CRM
Lower bound of 2.61… for truthful mechanisms w/o verification [KV07]
Summarizing…
General Monotone Cost Functions Optimizing monotone nondecreasing cost
functions always admits a truthful mechanism with verification (for bounded domain) Will show technique for Finite Domains
Breaking several lower bounds for natural problems Variants of the SPT [Bilò&Gualà&Proietti, 06] Scheduling Unrelated Machines [Nisan&Ronen,
99, MS07, CKV07, G07, KV07] Interdomain Routing [MS07, G07]
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)
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)
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) - a(Y)
0voluntary participation
0nonnegative costs
a(Y) > b(Y)
P(a) - a(X) P(b) - a(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]
Compound Agents
J1 Jj Jn
… …
M1 Mi Mm… …
agent1 agentl agentk… …
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 agentl agentk… …
b1bi bm… …
Polynomial timec (1+) - APX
Exponential time Exact mechanisms
Truthful Grids?
Auction
Can grid nodes declare a completion time before actually executing Homer’s task?
Doughnuts.exe
Conclusions
Mechanisms with Verification: a more powerful model… … breaking known lower bounds for natural problems … dealing with the strongest notion of agents’
collusion … describing real-life applications
Further Research
What is the real power of verification? Does the revelation principle hold in the
verification setting? Different definitions for the verification
paradigm (e.g., [Nisan&Ronen 99])