1 / 30

Algorithmic Mechanism Design: an Introduction

Algorithmic Mechanism Design: an Introduction One-parameter mechanisms, with an application to the SPT problem Guido Proietti Dipartimento di Ingegneria e Scienze dell'Informazione e Matematica University of L'Aquila guido.proietti@univaq.it.

kernsj
Télécharger la présentation

Algorithmic Mechanism Design: an Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmic Mechanism Design: an Introduction One-parameter mechanisms, with an application to the SPT problem Guido Proietti Dipartimento di Ingegneria e Scienze dell'Informazione e Matematica University of L'Aquila guido.proietti@univaq.it

  2. The private-edge Shortest-Paths Tree (SPT) problem • Given: an undirected graph G=(V,E) such that each edge is owned by a distinct selfish agent, and a source node s; we assume that agent’s private type is the positive cost (length) of the edge, and her valuation function is equal to her negatedtype if edge is selected in the solution, and 0 otherwise. • Question: design a truthful mechanism in order to find a shortest-paths tree rooted at s in Gt=(V,E,t).

  3. More formally… • F: set of spanning trees rooted at s • For any TF • f(t,T)= argmindT(s,v) where║e║ is the set of source-nodepaths in T containingedgee = arg minte║e║ eE(T) TF TF vV ve(te,T)= te if eE(T), 0 otherwise Multicast protocol:  f(t,T)  arg min ve(te,T) non-utilitarian problem! TF eE(T)

  4. One-parameter problems • Type owned by each agent ai is a single parameter ti • The valuation function of ai is vi(ti,o)= ti wi(o) where wi(o) is the workload for aiw.r.t. output o

  5. The SPT problem is one-parameter • F: set of spanning trees rooted at s • For any T  F • f(t,T)= arg min  dT(s,v) =  te║e║ • ve(te,T)= • ve(te,T)= te we(T) vV TF eE(T) te if e  E(T) Multicast protocol 0 otherwise 1 if e  E(T) we(T)= otherwise 0 The SPT problem is a one-parameter problem!

  6. Monotonicity of an algorithm Definition An algorithm g for a (minimization) one-parameter problem is monotone if  agent ai, wi(g(r-i,ri)) is non-increasing w.r.t. ri, for every r-i=(r1,…,ri-1, ri+1,…,rN) For the sake of simplifying the notation: We will write wi(r) in place of wi(g(r)) We will write pi(r) in place of pi(g(r))

  7. An old result from game theory Theorem 1 A mechanism M=<g,p> for a one-parameter problem is truthful only if g is monotone. Proof: (by contradiction) Assume g is non-monotone, and… …let us show that no any payment scheme can make the mechanism M truthful! If g is non-monotone there exists an agent ai and a vector r-i s.t. wi(r-i,ri) is not monotonically non-increasing w.r.t. ri

  8. Proof (cont’d) • If ti=x and ri=ti vi(ti,o) = ti wi(o) = x wi(r-i,x) • If ti=y and ri=ti vi(ti,o) = y wi(r-i,y) • If ti=x and ri=y  vi(ti,o) = x wi(r-i,y), i.e., ai increases her valuation (i.e., her cost) by A • If ti=y and ri=x  vi(ti,o) = y wi(r-i,x), i.e., ai decreases her cost by A+k wi(r-i,ri) wi(r-i,y) A k wi(r-i,x) cost of ai case 3 cost of ai case 4 ri x y

  9. Proof (cont’d) • Let ∆p=pi(r-i,y) - pi(r-i,x) • If M is truthful it must be: • ∆p A (since otherwise when ti=x, ai will report y, since in this case her cost will increase by A, and since ∆p>A, her utility will increase!) • ∆p ≥ A+k (since otherwise when ti=y, ai will report x, since in this case her cost will decrease by A+k, and since ∆p<A+k, this means that the payment’s decrease is less than the cost’s decrease, and so her utility will increase! … but k is strictly positive! Contradiction:gmust be monotone! wi(r-i,ri) wi(r-i,y) A k wi(r-i,x) ri x y

  10. One-parameter (OP) mechanisms • g: anymonotone algorithm for the underlying one-parameter problem ri • pi(r) =hi(r-i) + ri wi(r) - ∫wi(r-i,z) dz 0 hi(r-i): arbitrary function independent of ri

  11. Truthfulness of OP-mechanisms Theorem 2: An OP-mechanism for an OP-problem is truthful. Proof: We show that the utility of an agent ai can only decrase when ai lies Let r-i be the reported types of the other agents Payment returned to ai (when she reports ri) is: ri pi(r) =hi(r-i) + ri wi(r) - ∫ wi(r-i,z) dz 0 Indipendent of ri We can set hi(r-i)=0

  12. wi(r-i,x) x Proof (cont’d) ti ti • ui(ti,g(r-i,ti))= pi(g(r-i,ti))-vi(ti, g(r-i,ti))= tiwi(g(r-i,ti))-∫ wi(r-i,z) dz-tiwi(g(r-i,ti))=-∫ wi(r-i,z) dz • If ai reports x>ti: • Her valuation becomes: C= tiwi(r-i,x) • Her payment becomes: P= xwi(r-i,x) - ∫ wi(r-i,z) dz  ui(ti,g(r-i,x))= P-Cai is loosing G 0 0 x 0 The true utility is equal to this negated area The payment is equal to this negated area wi(r-i,ti) -P G C ti

  13. Proof (cont’d) ti 0 • ui(ti,(r-i,ti))= - ∫ wi(r-i,z) dz • If ai reports x<ti • Her valuation becomes C= tiwi(r-i,x) • Her payment becomes P=xwi(r-i,x) -∫wi(r-i,z) dz ui(ti,g(r-i,x))= P-Cai is loosing G x 0 The payment is equal to this negated area ai has no incentive to lie! -P G wi(r-i,x) wi(r-i,ti) C x ti

  14. On the hi(r-i) function Once again, we want to guarantee voluntary participation (VP) But when ai reports ri, her payment is: ri pi(r) =hi(r-i)+ ri wi(r) -∫ wi(r-i,z) dz 0 ∞ ∫ wi(r-i,z) dz, If we set hi(r-i)= 0 ∞ pi(r) =ri wi(r) + ∫ wi(r-i,z) dz the payment becomes: ri  The utility of an agent reporting the true becomes: ∞ ui(ti,g(r)) =∫ wi(r-i,z) dz ≥ 0. ti

  15. Summary: VCG vs OP • VCG-mechanisms: arbitrary valuation functions and types, but only utilitarian problems • OP-mechanisms: arbitrary social-choice function, but only one-parameter types and workloaded monotonically non-increasing valuation functions • If a problem is both utilitarian and one-parameter VCG and OP coincide!

  16. One-parameter mechanism for the private-edge SPT problem

  17. The one-parameter SPT problem • F: set of spanning tree rooted at s • For any T  F • f(t,T)= arg min  dT(s,v) =  te║e║ • ve(te,T)= • ve(te,T)= te we(T) vV TF eE(T) te if e  E(T) Multicast protocol 0 otherwise 1 if e  E(T) we(T)= otherwise 0

  18. A corresponding one-parameter mechanism • MSPT= <g,p> • g: given the input graph G, the source node s, and the reported types r, compute an SPT SG(s) of G=(V,E,r) by using Dijkstra’s algorithm; • p: for every e  E ∞ pe(r)=re we(r) +∫we(r-e,z) dz re so that VP is guaranteed.

  19. Truthfulness Observation: MSPT is truthful, since it is an OP-mechanism. Indeed, Dijkstra’s algorithm is monotone, since the workload for an agent ae has always the following shape: 1 Өe : threshold value • Өeis the valuesuchthat, once fixed r-e: • if ae reports at most Өe, then e is selected in the SPT • if ae reports more than Өe, then e is not selected in the SPT

  20. On the payments • pe=0, if e is not selected • pe=Өe, if e is selected 1 Өe : threshold value re re ∞ pe=re we(r) + ∫ we(r-e,z) dz = 0+0 = 0 re ∞ pe=re we(r) + ∫ we(r-e,z) dz = re + Өe -re = Өe re

  21. An OP-problem is binary demand (BD) if A special class of OP-problems • Type owned by each agent ai is a single parameterti • The valuationfunction of aiis vi(ti,o)= tiwi(o) where the workloadwi(o) for aiw.r.t. output o is in {0,1}. Whenwi(o)=1, wewillsaythat aiisselectedin o.

  22. Monotonicity for BD problems An algorithm g for a (minimization) BD-problem is monotone if  agent ai, and for every r-i=(r1,…,ri-1,ri+1,…,rN), wi(g(r-i,ri)) has the following shape: 1 Өi(r-i) ri Өi(r-i){+}: threshold value Payment for ai becomes: pi(r)= Өi(r-i)

  23. On the threshold values for the SPT problem Let e=(u,v) be an edge in SG(s) (with u closer to s than v) • eremains in SG(s) untileisused to reach v from s  Өe=dG-e(s,v)-dG(s,u) Example re=1 re= 3-ε re= 3+ε s s s 1 1 1 Өe = 3 u u u 2 2 2 e e e 1 3+ε 3-ε 6 6 6 v v v 2 2 2 3 3 3

  24. A trivial solution e=(u,v) SG(s) we run the Dijkstra’s algorithm on G-e to finddG-e(s,v) Time complexity: k=n-1 edges multiplied by O(m + n log n) time: O(mn + n2 log n) time The improved solution will cost as much as: O(m + n log n) time

  25. Definition of Өe s u x e f v y dG-e(s,v)= min {dG(s,x)+w(f)+dG(y,v)} f=(x,y)C(e) where w(f) denotes the reported cost for edge f

  26. Definition of Өe (cont’d) • Computing dG-e(r,v) (and then Өe) is equivalent to finding edge f* such that: f*= arg min {dG(s,x)+w(f)+dG (y,v)} f=(x,y)C(e) = arg min {dG(s,x)+w(f)+dG (y,v)+dG(s,v)} f=(x,y)C(e) = arg min {dG(s,x)+w(f)+dG(s,y)} Since dG(s,v) is independent of f f=(x,y)C(e) call it k(f) Observation: k(f) is a value univocally associated with edge f: it is the same for all the edges of SG(s) forming a cycle with f.

  27. Definition of k(f) s u x e f v y k(f) = dG(s,x)+w(f)+dG(s,y)

  28. Computing the threshold • Once again, webuild a transmuter (w.r.t. SG(s)), wherenowsinknodes are labelled with k(f) (instead of w(f) as in the MST case), and weprocess the transmuter in reversetopologicalorder • At the end of the process, everyedgee  SG(s) willremainassociated with itsreplacementedge f*, and Өe= (k(f*)-dG(s,v)) - dG(s,u) • Time complexity: O(m (m,n)) dG-e(s,v)

  29. Analysis Theorem MSPT can be implemented in O(m + n log n) time. Proof: Time complexity of g: O(m + n log n) (Dijkstra with Fibonacci Heaps) Computing all the payments costs: O(m (m,n))=O(m + n log n) time Since (m,n) is constant when m=(n log log n)

  30. Thanks for your attention! Questions?

More Related