Mechanisms with Verification Carmine Ventre Teesside University.

Post on 01-Apr-2015

223 views 0 download

Tags:

Transcript of Mechanisms with Verification Carmine Ventre Teesside University.

Mechanisms with Verification

Carmine Ventre

Teesside University

Mechanism design

Principal Agents

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

12

310

2

1

1

4

37

7

1

Pe’ = Ae’=∞ – Ae’=0 = 7

e’

Ae’=∞ = 14

Ae’=0 = 10 – 3 = 7

s

Utilitye’ = Pe’ – coste’ = 7 – 3

M = (A, P)

A optimal algorithmPe = Ae=∞ – Ae=0

d

Inside VCG Payments

Pe = Ae=∞ – Ae=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 e Cost 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 in C

VCGs and Collusions

s

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

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

31TCP

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

Thm. VCGs with verification are collusion-resistant

Any value between bmin e bmax

Approximate CRMs

Technique can be extended: Optimize Cost + AVCG 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 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)(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) 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 disappear

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)

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 implementablef(t)=x g(t’)=x

t

t’

D

There are no alternatives to truthfulness

f(t)=g(t)

Toy Example: Tall-Short f>180 cm

>X2 X1

f

Implementation of Tally-Short f

t1

D = {t1, t2, t3}

X1 X2 X2g=f

types

ti(x2) > ti(x1)

f is truthfully implementable iff there are no negative-weight edges

t1(x1)-t1(x2)<0

t1(x1)-t1(x2)<0

t2(x2)-t2(x1)>0

t2=[181-190]

t3=[190+]

t1=[170-180]

t2 t3t2(x2)-t2(x2)=0

t3(x2)-t3(x2)=0

t3(x2)-t3(x1)>0

f is not truthfully implementable nor implementable

Principal-Agent Model with Partial Verification [Green&Laffont 86]

t1

X1 X2 X2

<

t2 t3=

=

<

>

>

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 X2

t2 t3=

=

<

>

f

X1 X1 X2g

Yes! There are alternatives to truthfulness!

t t’ 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] …