1 / 32

Group strategy proof mechanisms via primal-dual algorithms (Cost Sharing)

Group strategy proof mechanisms via primal-dual algorithms (Cost Sharing). Martin P ál Éva Tardos. c* ( U ) = cost of. c* (    ) = cost of. U = {  ,  ,  ,  ,  }. c* ( S ) – cost of optimal infrastructure for users in S. often NP-hard to compute. Our setting.

chesmu
Télécharger la présentation

Group strategy proof mechanisms via primal-dual algorithms (Cost Sharing)

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. Group strategy proof mechanisms via primal-dual algorithms(Cost Sharing) Martin Pál Éva Tardos Cost sharing & Approximation

  2. c*(U) = cost of c*() = cost of U = {,,,,} c*(S) – cost of optimal infrastructure for users in S often NP-hard to compute Our setting Universe U of (selfish) users Users want to benefit from shared infrastructure cost function c*() Cost sharing & Approximation

  3. Approximate Cost Recovery:  ΣiU pi ≥ c*(U) user shares cost Competitiveness: ΣiS pi ≤ c*(S) for any SU: no overpayment p+p+p+p+p ≥ c( ) p+p+p≤ c( ) often empty for games of interest Sharing the cost Known as core in game theory Cost sharing & Approximation

  4. need to recompute tree & payments! Modeling the users ui – value of service for i User may say NO if pi>ui util(i) = ui – pi if i gets service 0 otherwise Cost sharing fn: ξ : 2UU + ξ(S,i) – share of user i, if set S served ξ(U, ) ≤ ξ(U-, ) • cross-monotonic: for iSTU • ξ(S,i) ≥ ξ(T,i) Cost sharing & Approximation

  5. ui cost share The Moulin&Shenker mechanism • S := U • repeat • ask each user i • “is ξ(S,i)≤ ui ?” • drop all iS who say NO • until all iS say YES • Output: set S; prices pi = ξ(S,i) Theorem: [Moulin&Shenker]: ξ(.) cross-monotonic  mechanism group strategyproof Cost sharing & Approximation

  6. Known cross-monotonic functions • Exact cross-monotonic sharing exists if c*() submodular • [Moulin&Shenker 98] • Exact cost sharing for spanning tree • [Kent&Skorin-Kapov 96], [Jain&Vazirani 01] • Any other games for which cross-mono sharing exists? implies 2-approx. cost sharing for Steiner tree Cost sharing & Approximation

  7. Our results General method for generating competitive, cross-monotonic cost shares using primal-dual algorithms Used our method to construct a cost sharing fn for: Metric Facility Location Single Sink Rent or Buy recovers 1/3 of cost recovers 1/15 of cost competitive, cross-monotonic constructive proof gives an approximation algorithm Cost sharing & Approximation

  8. Approximation algorithms • Primal-dual approximation for Facility Location • [Jain&Vazirani99] , [Mahdian,Ye&Zhang 02], [Mettu&Plaxton 00] • Approximation for Single Sink Rent or Buy [Karger&Minkoff 00], [Meyerson&Munagala 00] • [Swamy&Kumar 02], [Gupta,Kumar&Roughgarden 03] Cost sharing & Approximation

  9. Single Sink Rent or Buy U is a set of users. r is the sink (root) node. graph G with edge lengths ce. 1) Find a path from each user to sink. 2) Rent or Buy each edge. Rent: pay ce for each path using e Buy: pay M  ce Goal: minimize rental + buying cost. Cost sharing & Approximation

  10. Facility Location F is a set of facilities. U is a set of users. cij is the distance between any i and j in U  F. (assume cij satisfies triangle inequality) fi: cost of facility i Cost sharing & Approximation

  11. Facility Location 1) Pick a subset F’ of facilities to open 2) Assign every client to an open facility Goal: Minimize the sum of facility and assignment costs: ΣiF’fi + ΣjS c(j,σ(j)) Cost sharing & Approximation

  12. cost shares Existing facility location algorithms.. each user j raises its j j pays for connection first, then for facility if facility paid for, declared open (possibly cleanup phase in the end) =5 =5 =6 Cost sharing & Approximation

  13. ...do not yield cross-monotonic shares previously, ()=6 with , ()=8 helped  to stop earlier  failed to help  =3 =3 =8 Cost sharing & Approximation

  14. Ghost shares After i freezes, continue growing its ghosti ghosts keep growing forever =3 =3 =5.5 Fact: Shares i are cross-monotonic. Pf: more users  more ghosts  facilities open sooner  i can stop growing earlier Cost sharing & Approximation

  15. q tq ≤tp/3 r tr ≤tq/3 Constructing a solution (1) Sp: set of users contributing to p at time of opening – “contributor set” tp: time of opening facility p tp Sp p facility p is well funded, if j≥tp/3 for every jSp Close down all facilities that are not well funded Lemma: For every facility p there is a nearby well funded facility r s.t. dist(p,r) ≤ 2(tp- tr) Cost sharing & Approximation

  16. well-funded open p r q ≤ ≤2(tp- tr) ≤2tr Constructing a solution (2) Problem: user contributing to multiple well-funded facilities Solution: close all of them but one (process by increasing tp) tp Sp p Lemma: For every well funded facility p there is a nearby open q such that dist(p,q) ≤ 2tp tq Sq q Cost sharing & Approximation

  17. tp Sp p well-funded open p r q ≤ ≤2(tp- tr) ≤2tr Summing up Every open facility is well funded, i.e. can be paid for by Sp. We do not lose much on assignment cost by closing facilities. Cost shares pay for 1/3 of the cost of the solution. Theorem: There is a cross-monotonic cost sharing function for facility location that recovers 1/3 of cost. Cost sharing & Approximation

  18. Plan of attack for Rent or Buy • Gather clients into groups • (often done by a facility location algorithm) • Build a Steiner tree on the gathering points Jain&Vazirani gave cost sharing fn for Steiner tree Have cost sharing for facility location Why not combine? Cost sharing & Approximation

  19. “One shot” algorithm • Generate gathering points and build a Steiner tree at the same time. • Allow each user to contribute only to the least demanding (i.e. largest) cluster he is connected to. •  not clear if the shares can pay for the tree Cost sharing & Approximation

  20. Conclusions General method for generating competitive, cross-monotonic cost shares using primal-dual algorithms. Used our method to construct a cost sharing fn forFacility Location & Single Sink Rent or Buy. Other problems admitting cross-mono cost sharing? Steiner Forest? Covering problems? Impossibility results? Cost sharing & Approximation

  21. *** *** The End *** *** The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. The End. Cost sharing & Approximation

  22. Cost shares Each Steiner component C needs $1/second for growth. Maintenance cost of C split among users connected User connected to multiple components pays only to largest component User connected to root stops paying j =∫ fj(t) dt Cost sharing & Approximation

  23. Growing ghosts Grow a ball around every user uniformly When M or more balls meet, declare gathering point Each gathering point immediately starts growing a Steiner component When two components meet, merge into one Cost sharing & Approximation

  24. Well funded p q ≤tp1 ≤tp ≤tp1 ... tp tp1 ≤ j tq j≤tp/3 healthy  c(p,q’) ≤tp q’ Building a solution Open all healthy well funded facilities Assign each client to closest facility Fact 1: for every facility p, there is an open facility q within radius 2tp. c(p,q) ≤2(tp-tq) c(q,q’)≤2 tq Cost sharing & Approximation

  25. Cost Sharing • Internet: many independent agents • Not hostile, but selfish • Willing to cooperate, if it helps them Cost sharing & Approximation

  26. 4 3 4 2 2 3 ? 3 1 0 4 4 2 4 3 ? 3 2 3 ? Cost shares Cost shares Steiner tree: how to split cost Cost sharing & Approximation

  27. Steiner tree: how to split cost OPT( ) = 3 OPT( ) = 5 p( ) = 5-3 = 2 No “fair” cost allocation exists! Cost sharing & Approximation

  28. ΣjS pj ≤ c*(S) (competitiveness) ΣjS pj ≥ c(S)/β (approx. cost recovery) Desirable properties of mechanisms • ΣjS pj=c*(S) • (budget balance) • Only people in S pay • (voluntary participation) • No cheating, even in groups • (group strategyproofness) • If uj high enough, j guaranteed to be in S • (consumer sovereignity) Cost sharing & Approximation

  29. Cost sharing function • ξ : 2UU ℛ • ξ(S,j) – cost share of user j, given set S • Competitiveness: ΣjSξ(S,j)≤c*(S) • Cost recovery: c(S)/β≤ΣjSξ(S,j) • Voluntary particpiation: ξ(S,j) = 0 if jS • Cross-monotonicity: for jST • ξ(S,j) ≥ ξ(T,j) Cost sharing & Approximation

  30. Cost recovery To prove cost recovery, we must build a network. Steiner tree on all centers would be too expensive  select only some of the centers like we did for facility location. Need to show how to pay for the tree constructed. Cost sharing & Approximation

  31. Paying for the tree We selected a subset of clusters so that every user pays only to one cluster. But: users were free to chose to contribute to the largest cluster – may not be paying enough. Solution: use cost share at time t to pay contribution at time 3t. Cost sharing & Approximation

  32. Thank you! The last slide • x-mono cost sharing known only for 3 problems so far • Do other problems admit cross-mono cost sharing? • Covering problems? Steiner Forest? • Negative result: SetCover – no better than Ω(n) approx • Applications of cost sharing to design of approximation algorithms. Cost sharing & Approximation

More Related