# Mechanisms with Verification Carmine Ventre Teesside University.

## Presentation on theme: "Mechanisms with Verification Carmine Ventre Teesside University."— Presentation transcript:

Mechanisms with Verification Carmine Ventre Teesside University

Mechanism design PrincipalAgents M = (A, P)

When do you pay?

Do you pay?

Mechanisms with verification Mechanisms with verification use the execution of their algorithmic component as a tool to verify agents’ job  Payments awarded after the execution…  … and given only if job done “properly” (At least) Three different models  No monitoring […, Penna & V 09, …]  Full monitoring [Nisan & Ronen 99]  Type-based verification [Green & Laffont 86]

No vs. Full monitoring No monitoring  Agents only work only for the time they really need to complete the job Full monitoring  Agents work for the time they declared to the principal

Why Verification? Incentive-compatibility constraints impose a number of limitations on mechanisms 1. Apart from few simple settings, only utilitarian problems admit truthful mechanisms 2. Mechanisms cannot be resistant to collusions 3. Computational complexity: can we approximate OPT in a truthful way? Combinatorial Auctions (CAs) is the paradigmatic problem for which OPT is truthful but NP-hard

Why Verification? (2) Without Verification “Only” utilitarian problems have truthful mechanisms Mechanisms not resistant to collusion Approximate truthful mechanisms for CAs With verification Optimal truthful mechanisms for any non- decreasing cost function Optimal collusion- resistant mechanisms for weakly-utilitarian cost functions Truthful deterministic polytime CAs with best apx guarantee possible [Penna & V, 08], [V06][Penna & V, 09][Krysta & V, 10]

Collusion-resistant mechanisms with verification

d Truthful Mechanisms M = (A, P) s Utility (true,,...., ) ≥ Utility (false,,...., ) for all true, false, and,..., M truthful if: Utility = Payment – cost = – true

VCG Mechanisms 1 2 3 10 2 1 1 4 3 7 7 1 P e’ = A e’=∞ – A e’=0 = 7 e’ A e’=∞ = 14 A e’=0 = 10 – 3 = 7 s Utility e’ = P e’ – cost e’ = 7 – 3 M = (A, P) A optimal algorithm P e = A e=∞ – A e=0 d

Inside VCG Payments P e = A e=∞ – A e=0 Cost of best solution w/o e Independent of e h(b –e ) Cost of computed solution w/ e = 0 Mimimum (A is OPT) A(true)  A(false) b –e all but eCost nondecreasing in the agents’ bids

Describing Real World: Collusions Accused of bribery  ~7,000,000 results on Google  ~6,000 results on Google news

Collusion-Resistant Mechanisms Coalition C + – ∑ Utility (true, true,,...., ) ≥ ∑ Utility (false,false,,...., ) for all true, false, C and,..., in C

VCGs and Collusions s 3 1 6e1e1 e2e2 e3e3 P e 1 (true) = 6 – 1 = 5 e 3 reported value “Promise 10% of my new payment” (briber) 11 P e 1 (false) = 11 – 1 – 1 = 9 “P e3 (false)” = 1 bribe h( ) must be a constantb –e d

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: Verification TCP segment 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 31 TCP

The Verification Setting Give the payment if the results are given “in time”  Agent is selected when reporting false 1. true  false  just wait and get the payment 2. true > false  no payment (punish agent )

Exploiting Verification: Optimal CRMs No agent is caught by verification At least one agent is caught by verification A(true) = A(true, (t 1, …, t n ))  A(false, (t 1, …, t n ))  A(false, (b 1, …, b n )) = A(false) A is OPT For any i t i  b i Cost is monotone VCG hypotheses Usage of the constant h for bounded domains Thm. VCGs with verification are collusion-resistant Any value between b min e b max

Approximate CRMs Technique can be extended: Optimize Cost + A VCG for any function Cost MinMax extensively studied in AMD  E.g., Interdomain routing and Scheduling Unrelated Machines  Many lower bounds even for two players and exponential running time mechanisms E.g., [NR99], [AT01], [GP06], [CKV07], [MS07], [G07], [PSS08], [MPSS09] Thm. MinMax objective functions admit a (1+ε)-apx CRM

Applications * = FPTAS for a constant number of machines # = PTAS for a constant number of machines † = FPTAS for any number of machines

Truthful mechanisms for monotone cost functions

Abstract setup Agent i holds a resource of type t i X1,…, Xk feasible solutions (how we use resources) cost i (X) = t i (X) = time utility = payment – cost Goal: minimize m(X, t ) No payment if t i (X) > b i (X) (verification) (t 1,…,t n )

Existence of the Payments Truthfulness (single player): P(a) - a(A(a))  P(b) - a(A(b)) ab truth-telling P(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 abkc … [Malkhov&Vohra’04][MV’05][Saks&Yu’05] [Bikhchandani&Chatterji&Lavi&Mu'alem&Nisan&Sen’06]……

Why Verification Helps ab X 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)  0 voluntary participation  0 nonnegative costs a(Y) > b(Y)

Why Verification Helps ab X a(Y) - a(X) Only these edges remain: Y a(Y)  b(Y) Negative cycles may disappear

Optimal Mechanisms Algorithm OPT: Fix lexicographic order X1  X2  …  Xk Return the lexicographically minimal Xj minimizing m(b,Xj)

Optimal Mechanisms ab XY a(Y)  b(Y) m(a(X),b -i (X))  m(a(Y),b -i (Y)) c Z 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 ab XY a(Y)  b(Y) m(a(X),b -i (X)) = m(a(Y),b -i (Y)) c Z 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) non decreasing in the agents’ costs All vertices in a cycle lead to the same outcome *Similar result can be proved for bounded domains with a different technique

Type-based verification

Principal-Agent Classical Model Outcome function g “Implement” f Maximize utility f:D->O social choice function Declaration domain D Observe type t in D Declare BR(t) BR(t) is a t’ in D such that utility t(g(t’)) is maximized Outcome g(BR(t)) is implemented No Payment issued

Implementation of Social choice functions g implements f iff g(BR(t))=f(t) g truthfully implements f iff g implements f & BR(t)=t Revelation Principle: for all f f implementable f truthfully implementable f(t)=xg(t’)=x t t’ D There are no alternatives to truthfulness f(t)=g(t)

Toy Example: Tall-Short f > 180 cm > X2X1 f

Implementation of Tally-Short f t1 D = {t1, t2, t3} X1 X2 g=f types ti(x2) > ti(x1) f is truthfully implementable iff there are no negative-weight edges t1(x1)-t1(x2)<0 t2(x2)-t2(x1)>0 t2=[181-190] t3=[190+] t1=[170-180] t2t3 t2(x2)-t2(x2)=0 t3(x2)-t3(x2)=0 t3(x2)-t3(x1)>0 f is not truthfully implementablenor implementable

Principal-Agent Model with Partial Verification [Green&Laffont 86] t1 X1 X2 < t2t3 = = < > > 20+ cm BR(t) is a t’ in M(t) such that utility t(g(t’)) is maximized t defines a set of allowed messages M(t) t2=[181-190] t3=[190+] t1=[170-180]

M-Implementation of Tally-Short f [GL86] show that Revelation Principle holds only if NRC holds  Nested Range Condition t1 X1 X2 t2t3 = = < > f X1 X2g Yes! There are alternatives to truthfulness! tt’t’’ holds in uninteresting cases [Singh&Wittman, 2001]

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 Collusion-Resistant mechanisms with verification for arbitrary bounded domains optimizing generalization of utilitarian (VCG) cost functions  Mechanism is polytime if algorithm is Optimal truthful mechanisms for any non-decreasing cost function when agents bid from bounded domains  Sometimes, computing payments might be unfeasible

Further Research Can we deal with unbounded domains? What is the real power of verification? Frugality of payment schemes? Mechanisms with verification without money? [Koutsoupias11], [Fotakis, Krysta & V, ongoing] Explore different definitions for the verification paradigm  [Nisan&Ronen, 1999]  [Green & Laffont, 1986]...... for which we can also look for untruthful mechanisms  Probabilistic verification [Caragiannis, Elkind, Szegedy & Yu, 2012] ……

Truthful Grids? Auction Can grid nodes declare a completion time before actually executing Homer’s task? Doughnuts.exe