1 / 28

Approximation Via Cost Sharing: Multicommodity Rent or Buy

Approximation Via Cost Sharing: Multicommodity Rent or Buy. Martin P ál Joint work with Anupam Gupta Amit Kumar Tim Roughgarden. Steiner Forest and Rent or Buy. Input : graph G , weights c e on edges, set of demand pairs D , a constant M≥1.

makan
Télécharger la présentation

Approximation Via Cost Sharing: Multicommodity Rent or Buy

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. Approximation Via Cost Sharing: Multicommodity Rent or Buy Martin Pál Joint work with Anupam Gupta Amit Kumar Tim Roughgarden Approx via cost sharing: Rent or Buy

  2. Steiner Forest and Rent or Buy Input: graph G, weights ce on edges, set of demand pairs D,a constant M≥1 Solution: a set of paths, one for each (si,ti) pair. Goal: minimize cost of the network built. Approx via cost sharing: Rent or Buy

  3. Steiner forest: pay ce for every edge used The cost Rent or buy: Must rent or buy each edge. rent: pay ce for each path using edge e buy: pay Mce Goal: minimize rental+buying costs. Approx via cost sharing: Rent or Buy

  4. Related work • 2-approximation for Steiner Forest[Agarwal, Klein & Ravi 91], [Goemans & Williamson 95] • Constant approximation for Single Sink Buy at Bulk[Karger & Minkoff 00], [Meyerson & Munagala 00] • Constant approximation for Multicommodity Rent or Buy[Kumar, Gupta & Roughgarden 02] • Spanning Tree + Randomization = Single Sink Rent or Buy[Gupta, Kumar & Roughgarden 03] • Cost sharing (Steiner tree, Single Sink Rent or Buy)[Jain & Vazirani 02], [P & Tardos 03] Approx via cost sharing: Rent or Buy

  5. Our work • Simple randomized 8-approximation for the Multicommodity Rent or Buy problem - (O(m log n) running time) • Analysis: based on strict cost sharing - useful in other contexts with two-stage costs (stochastic opt.) • Achieving strictness: Ball inflation technique Approx via cost sharing: Rent or Buy

  6. 1. Mark each demand pair independently at random with prob. 1/M. 2. Build a Steiner forest on the marked pairs, using a good (-approx.) algorithm. 3. Rent shortest paths between all unmarked pairs. The Algorithm Approx via cost sharing: Rent or Buy

  7. Bounding the cost Expected buying cost is small: Lemma: There is a forest F on marked pairs with E[cost(F)]  OPT. e bought by OPT: Pr[e is in F] = 1 e rented by OPT: Pr[e is in F] = 1/M Using -approx, can get    OPT Theorem: Expected cost of bought edges is    OPT. Approx via cost sharing: Rent or Buy

  8. pays rent pays buy pays buy pays rent pays rent pays buy Bounding the rental cost Unmarked demand pays its rental cost Marked demand contributes towards buying its tree Plan: Bound rental cost by the buying cost: Expected rental()  Expected share() Approx via cost sharing: Rent or Buy

  9. Need a cost sharing algorithm Input: Set of marked demands S Output: Steiner forest FS on S cost share ξ(S,j) of each pair jS Set of demands demand pair ξ({}, ) = 4 ξ({}, ) = 5 Approx via cost sharing: Rent or Buy

  10.   Rental of  if FS bought /M of  share if added to S Cost Sharing for Steiner Forest (P1) Good approximation:cost(FS)  St*(S) (P2) Cost shares do not overpay: jSξ(S,j)  St*(S) (P3) Strictness: let S’ = S  {si, ti}dist(si, ti) in G/ FS  ξ(S’,i) Example: S = {} i =  Approx via cost sharing: Rent or Buy

  11. Bounding rental cost Suppose we flip a coin for every demand pair except . Let S be the set of marked pairs. E[rent() | S]  dist(,) in G/FS E[rent()]    E[buy()]    E[buy() | S] = 1/M  M  ξ(S+,) jD E[rent(j)]   jD E[buy(j)]   OPT Approx via cost sharing: Rent or Buy

  12. Computing shares using the AKR-GW algorithm ξ(): ξ(): ξ(): Active terminals share cost of growth evenly. Approx via cost sharing: Rent or Buy

  13. 1 1+ε 1 AKR-GW is not enough cost share() = 1/n + rental() = 1 +  Problem: cost shares do not pay enough! Solution: Force the algorithm to buy the middle edge - need to be careful not to pay too much Approx via cost sharing: Rent or Buy

  14. 1 1+ε 1 Forcing AKR-GW buy more Idea: Inflate the balls! Roughly speaking, multiply each radius by  > 1 Approx via cost sharing: Rent or Buy

  15. ξ() large ξ() small, can take shortcuts ξ() small, can take shortcuts Why should inflating work? layer: only  is contributing layer: terminals other than  contributing Approx via cost sharing: Rent or Buy

  16. Freezing times The inflated AKR-GW • Run the standard AKR-GW algorithm on S • Note the time Tj when each demand j frozen • Run the algorithm again, with new freezing rule:every demand j deactivated at time Tj for some  > 1 Approx via cost sharing: Rent or Buy

  17. Freezing times The inflated AKR-GW (2) Freezing times Original AKR-GW Inflated AKR-GW Approx via cost sharing: Rent or Buy

  18. Easy facts Fact: Any time t: u and v in the same cluster in Original u and v in the same cluster in Inflated  Inflated has at most as many clusters as Original Theorem: Forest constructed by Inflated AKR-GW has cost at most 2OPT. Pf: adopted from [GW]. Approx via cost sharing: Rent or Buy

  19. It’s Hammertime: Proving strictness • Compare: • Original(S+) (cost shares) • Inflated(S) (the forest we buy) • Need to prove: dist(s, t) in G/ FS   ξ(S+, ) • Lower bound on ξ(S+, ) : alone(s) + alone(t) • Original(S+) must have connected  terminals. Hence it bought a s -- t path. Use it to bound dist(s, t). Approx via cost sharing: Rent or Buy

  20. Simplifying.. • Let  be time when Original(S+) connects  terminals. • Terminate Original(S+) at time . • In Inflated(S), freeze each term. j at time min(Tj, ). • Simpler graph H: • Contract all edges that Original(S+) bought. Call the new graph H. • Run both Original(S+) and Inflated(S) on H. • Note that Inflated(S) on H does not buy any edges! Approx via cost sharing: Rent or Buy

  21. Comparing Original(S+) & Inflated(S) Freezing times Original(S+) Inflated(S) Freezing times Approx via cost sharing: Rent or Buy

  22. (-1)  |P| ≤   |Alone| Proof idea Correspondence of other (i.e. non-red) layers: Layer l in Original(S+)  Layer l’ inInflated(S) |P| = |Alone| + |Other|   |Other| ≤ |P| + |Waste| + |Waste| If we can prove |Waste| ≤ |Alone|, we are done. Approx via cost sharing: Rent or Buy

  23. Bounding the Waste Claim: If a layer l contains s, then its corresponding inflated layer l’ also contains s. Same for t. Pf: By picture. Original(S+) Inflated(S) The only way of wasting a layer l is when l does not contain s (or t), but l’ does. Approx via cost sharing: Rent or Buy

  24. Bounding the Waste (2) l l’ Approx via cost sharing: Rent or Buy

  25. Bounding the Waste (3) l l’ Approx via cost sharing: Rent or Buy

  26. Summing up |P| ≤ 2/(-1) |Alone| Hence we have 2 approximation algorithm admitting a 2/(-1)-strict cost sharing. Setting =2 we obtain a 4+4=8 approximation. Approx via cost sharing: Rent or Buy

  27. Future work • Does the sampling algorithm work with any Steiner forest algorithm? With unscaled AKR-GW? • Does group strictness hold?augment(sol(S), T)  jTξ(S,i) • Derandomize the sampling algorithm. • Other applications of cost sharing and strictness. • Different cost sharing functions? (crossmonotonic..) Approx via cost sharing: Rent or Buy

  28. *** Useful Garbage *** Theorem: Inflated AKR-GW is a 2 approximation. Pf: adopted from [GW]. ≤≥≠∫∏∑√∂∆≈∙ Approx via cost sharing: Rent or Buy

More Related