1 / 31

Cost Sharing and Approximation

A - exam. Cost Sharing and Approximation. Martin P ál joint work with Éva Tardos. Cost Sharing. Internet: many independent agents Not hostile, but selfish Willing to cooperate, if it helps them. cost. Steiner tree. # users. cost. No sharing. # users. cost. Rent or buy. M. # users.

willieberry
Télécharger la présentation

Cost Sharing and Approximation

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. A-exam Cost Sharing and Approximation Martin Pál joint work withÉva Tardos Martin Pál: Cost sharing & Approx

  2. Cost Sharing • Internet: many independent agents • Not hostile, but selfish • Willing to cooperate, if it helps them Martin Pál: Cost sharing & Approx

  3. cost Steiner tree # users cost No sharing # users cost Rent or buy M # users How much does it pay to share? Martin Pál: Cost sharing & Approx

  4. 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 Martin Pál: Cost sharing & Approx

  5. Steiner tree: how to split cost OPT( ) = 3 OPT( ) = 5 p( ) = 5-3 = 2 No “fair” cost allocation exists! Martin Pál: Cost sharing & Approx

  6. u1’=5 p1=15 p1=0 Problem: users may not reveal true utilities u2=25 p2=15 p2=22.5 u3=25 p3=15 p3=22.5 Utilities uj – utility of agent j u1=25 $45 internet Martin Pál: Cost sharing & Approx

  7. Cost sharing mechanism • ..is a protocol/algorithm that • requests utility uj from every user j • selects the set S of people serviced • builds network servicing S • Computes the payment pj of every user jS Martin Pál: Cost sharing & Approx

  8. ΣjS pj ≤ c*(S) (competitiveness) ΣjS pj ≥ c(S)/β (approx. cost recovery) Desirable properties of mech’s • Σ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) Martin Pál: Cost sharing & Approx

  9. 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) Martin Pál: Cost sharing & Approx

  10. The Moulin&Shenker mechanism Let ξ : 2UU ℛ be a cost sharing function. • S U • while unhappy users exist • offer each jS service at price ξ(S,j) • S S – {users j who rejected} • output the set S and prices pj = ξ(S,j) Thm: [Moulin&Shenker]: ξ(.) cross-monotonic  mech. group strategyproof Martin Pál: Cost sharing & Approx

  11. Designing x-mono functions • We construct cross-monotonic cost shares for two games: • Metric facility location game • Single source rent or buy game • Facility location: competitive, recovers 1/3 of cost • Rent or buy:competitive, recovers 1/15 of cost Martin Pál: Cost sharing & Approx

  12. Facility Location F is a set of facilities. D is a set of clients. cij is the distance between any i and j in D  F. (assume cij satisfies triangle inequality) fi: cost of facility i Martin Pál: Cost sharing & Approx

  13. 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)) Martin Pál: Cost sharing & Approx

  14. =4 =4 =6 Existing 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) Martin Pál: Cost sharing & Approx

  15. with , ( )=6 without , ( )=5 was stopped prematurely in the first run =5 =5 ..do not yield x-mono shares Martin Pál: Cost sharing & Approx

  16. =4 =4 =5 Ghost shares • Two shares per user: • ghost share j • real share j • j grows forever • j stops when connected Martin Pál: Cost sharing & Approx

  17. Easy facts Fact 1: cost shares j are cross-monotonic. Pf: More users opens facilities faster  each j can only stop growing earlier. Fact 2 [competitiveness]: ΣjSj≤c*(S). Pf: j is a feasible LP dual. Hard part: cost recovery. Martin Pál: Cost sharing & Approx

  18. Constructing a solution =2 tp:time when facility p opened Sp: set of clients connected to p at time tp facility p is well funded, if 3j≥tp for every jSp each facility is either poisoned or healthy p is poisoned if it shares a client with a well funded healthy facility q and tp> tq tp=2 =2 tq =7 =7 Martin Pál: Cost sharing & Approx

  19. 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 Martin Pál: Cost sharing & Approx

  20. Fact 2: p open  clients in Sp can pay 1/3 their connection + facility cost Pf: fj = ΣjS(p)tp – cjp and j≥tp/3 Sp Fact 3: j is in no Sp can pay for 1/3 of connection Pf: fj = ΣjS(p)tp – cjp and j≥tp/3 ≤j ≤2j open Cost recovery Martin Pál: Cost sharing & Approx

  21. Sp ≤j ≤2j open Cost recovery • Summary: • Cost shares can pay for 1/3 of soln we construct • Never pay more than cost of the optimum • With increasing # of users, individual share only decreases Martin Pál: Cost sharing & Approx

  22. Single source rent or buy A set of clients D. A source node s. cij is the distance between any pair of nodes. (assume cij satisfies triangle inequality) Martin Pál: Cost sharing & Approx

  23. #paths using edge e cost of e M # paths Single source rent or buy 1) Pick a path from every client j to source s. Goal: Minimize the sum of edge costs: ΣeE min(pe,M) ce Martin Pál: Cost sharing & Approx

  24. Plan of attack • Gather clients into groups of M • (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? Martin Pál: Cost sharing & Approx

  25. “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 Martin Pál: Cost sharing & Approx

  26. 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 Martin Pál: Cost sharing & Approx

  27. 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 Martin Pál: Cost sharing & Approx

  28. Easy facts Fact: The cost shares j are cross-monotonic. Pf: More users causes more gathering points to open, more “area” is covered by Steiner clusters, clusters are bigger  each j can only grow slower&stop sooner. Fact [competitiveness]: ΣjSj≤2c*(S). Pf: LP duality. Again, cost recovery is the hard part. Martin Pál: Cost sharing & Approx

  29. 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. Martin Pál: Cost sharing & Approx

  30. 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. Martin Pál: Cost sharing & Approx

  31. 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. Martin Pál: Cost sharing & Approx

More Related