Mechanisms with Verification
320 likes | 443 Vues
This document discusses the design of verification mechanisms within selfish Internet routing, focusing on VCG mechanisms and their resistance to collusion. It explores the incorporation of incentive structures that promote truthful reporting among agents while addressing the challenges posed by selfishness in network systems. Key concepts include optimal routing solutions, verification through time metrics, and strategies to construct collation-resistant mechanisms (CRMs). The study highlights practical implementation examples, such as the Kelley Blue Book and TCP delivery times, to illustrate the complex interplay between mechanism design and real-world applications.
Mechanisms with Verification
E N D
Presentation Transcript
Mechanisms with Verification Carmine Ventre [Penna & V, 2007] [V, WINE ‘06]
Routing in Networks s Change over time (link load) No Input Knowledge 3 10 1 1 2 Selfishness Private Cost 2 1 3 7 7 4 1 d Internet
Mechanisms: Dealing w/ Selfishness s • Augment an algorithm with a payment function • The payment function should incentive in telling the truth • Design a truthful mechanism 3 10 1 1 2 2 1 3 7 7 4 1 d
M = (A, P) VCG Mechanisms Pe’ = Ae’=∞ – Ae’=0 = 7 Ae’=∞ = 10 + 3 + 1 s e’ 3 Ae’=0 = 3 + 1 + 2 + 3 + 1 - 3 = 7 10 1 1 2 s 2 1 3 7 4 7 1 d Pe = Ae=∞ – Ae=0 if e is selected (0 otherwise) Utilitye’ = Pe’ – coste’ = 7 – 3 M is truthful iff A is optimal
Inside VCG Payments Cost nondecreasing in the agents’ bids Pe = Ae=∞ – Ae=0 Cost of computed solution w/ e = 0 Cost of best solution w/o e Mimimum (A is OPT) Independent from e h(b–e) A(true) A(false) b–e all but e
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 e3 reported value Pe1(true) = 6 – 1 = 5 s Pe1(false) = 11 – 1 – 1 = 9 3 e3 e1 11 6 “Pe3(false)” = 1 bribe 1 e2 d h( ) must be a constant b–e “Promise 10% of my new payment” (briber)
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 Time is trusted… … unless a time machine will be created Can we engage a trusted resource within a mechanism allowing (somehow) bids verification?
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 TCP 3 1 IDEA ([Nisan & Ronen, 99]): No payment for agents caught by verification
Problem has an optimal CRM Problem has a truthful VCG Exploiting Verification: Optimal CRMs For any i ti bi No agent is caught by verification A(true) = A(true, (t1, …, tn)) A is OPT A(false, (t1, …, tn)) Cost is monotone A(false, (b1, …, bn)) VCG hypotheses = A(false) At least one agent is caught by verification Usage of the constant h for bounded domains Any value between bmin e bmax
MinMax objective functions admit a (1+ε)-apx CRM Approximating CRMs • Extending technique above: Optimize MinMax + AVCG • Example of MinMax objective functions • Interdomain routing • Scheduling Unrelated Machines Lower bound of 2.61… for truthful mechanisms w/o verification [KV07]
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]
… … Jj Jn J1 … … M1 Mi Mm t1 ti tm … … types b1 bi … … bm Task Scheduling [Nisan&Ronen’99] tasks Mechanism design: payments utility = payment - cost Selfish machines • Optimal Makespan: • minx maxi costi(X) • Verification • (observe machine behavior) no VCG! AllocationXcosti(X) =ti,j + ti,n
Verification • Give the payment if the results are given “in time” • Machine i gets job j when reporting bi,j • ti,jbi,j just wait and get the payment • ti,j>bi,j no payment (punish agent i)
No payment if ti(X)>bi(X) (verification) (t1,…,tn) Setup • Agent i holds a resource of typeti • X1,…, Xk feasible solutions (how we use resources) • costi(X) = ti(X) = time • utility = payment – cost • Goal: minimize m(X,t) Truthful mechanism running an optimal algorithm
truth-telling a b (a,b) a(Y) - a(X) X=A(a) Y=A(b) Algorithm b(X) - b(Y) (b,a) Must be non-negative Existence of the Payments A() A(, b-i) P() P(, b-i) Truthfulness (single player): P(a) - a(A(a)) P(b) - a(A(b)) P(a) + (a,b) P(b) P(b) - b(A(b)) P(a) - b(A(a)) P(b) + (b,a) P(a)
There is no cycle of negative length a b k c … Existence of the Payments Truthful mechanism (A, P) Can satisfy all P(a) + (a,b) P(b) [Malkhov&Vohra’04][MV’05][Saks&Yu’05] [Bikhchandani&Chatterji&Lavi&Mu'alem&Nisan&Sen’06]……
a(Y) > b(Y) a b a(Y) - a(X) 0 0 voluntary participation nonnegative costs Why Verification Helps Some edges may “disappear” X Y • True type is “a” but report “b”: • a(Y) b(Y) can “simulate b” and get P(b) • a(Y) > b(Y) no payment (verification helps) P(a) - a(X) P(b) - a(Y) P(a) - a(X) - a(Y)
a b a(Y) - a(X) Why Verification Helps Only these edges remain: X a(Y) b(Y) Y Negative cycles may desappear
Optimal Mechanisms • Algorithm OPT: • Fix lexicographic order • X1 X2 … Xk • Return the lexicographically minimal • Xj minimizing m(b,Xj)
a b c X is OPT(a,b-i) m(•,b-i(Y)) is non-decreasing Optimal Mechanisms a(Y) b(Y) b(Z) c(Z) X Y Z c(X) a(X) m(a(X),b-i(X)) m(a(Y),b-i(Y)) m(b(Y),b-i(Y)) m(b(Z),b-i(Z)) m(c(Z),b-i(Z)) m(c(X),b-i(X)) m(a(X),b-i(X))
a b c X=Y=Z Optimal Mechanisms a(Y) b(Y) b(Z) c(Z) X Y Z c(X) a(X) m(a(X),b-i(X)) = m(a(Y),b-i(Y)) = m(b(Y),b-i(Y)) = m(b(Z),b-i(Z)) = m(c(Z),b-i(Z)) = m(c(X),b-i(X)) = m(a(X),b-i(X)) X Y Z X
Finite Domains All vertices in a cycle lead to the same outcome • 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) Different proof of existence of exact truthful mechanism w/ verification for makespan on unrelated machines [Nisan&Ronen‘99]
… … Jj Jn J1 … … M1 Mi Mm t1 ti tm … … types agentk agent1 … agentl … b1 bi … … bm Compound Agents Each agent declares more than a type
a b a(Y) - a(X) X Y 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 a = (a1, a2) b = (b1, b2) Edge (a,b) exists iff a1(Y) b1(Y)anda2(Y) b2(Y) OPT is implementable w/verification
… … Jj Jn J1 … … M1 Mi Mm bi b1 … … bm agentk … agentl agent1 … Compound Agents • Collusion-Resistant for known coalitions mechanisms w/ verification for • makespan on unrelated machines • makespan on related machines Exponentialtime Exact mechanisms Polynomial time c (1+) - APX
Truthful Grids? Doughnuts.exe Auction Can grid nodes declare a completion time before actually executing Homer’s task?
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])