Upload
makan
View
25
Download
0
Tags:
Embed Size (px)
DESCRIPTION
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. - PowerPoint PPT Presentation
Citation preview
17 Nov 03 Approx via cost sharing: Rent or Buy 1
Approximation Via Cost Sharing: Multicommodity Rent or Buy
Martin Pál
Joint work withAnupam Gupta Amit Kumar
Tim Roughgarden
17 Nov 03 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.
17 Nov 03 Approx via cost sharing: Rent or Buy 3
The cost
Rent or buy: Must rent or buy each edge.
rent: pay ce for each path using edge e
buy: pay Mce
Goal: minimize rental+buying costs.
Steiner forest: pay ce
for every edge used
17 Nov 03 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]
17 Nov 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
17 Nov 03 Approx via cost sharing: Rent or Buy 6
The Algorithm
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.
17 Nov 03 Approx via cost sharing: Rent or Buy 7
Bounding the cost
Expected buying cost is small:
Using -approx, can get OPT
Theorem: Expected cost of bought edges is OPT.
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
17 Nov 03 Approx via cost sharing: Rent or Buy 8
Bounding the rental cost
Unmarked demand pays its rental cost
Marked demand contributes towards buying its tree
pays rent
pays rent
pays buy
Plan: Bound rental cost by the buying cost:
Expected rental() Expected share()
pays rent
pays buy
pays buy
17 Nov 03 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 jS
ξ({}, ) = 4
ξ({}, ) = 5
Set of demandsdemand pair
17 Nov 03 Approx via cost sharing: Rent or Buy 10
Cost Sharing for Steiner Forest
(P1) Good approximation: cost(FS) St*(S)
(P2) Cost shares do not overpay: jS ξ(S,j) St*(S)
(P3) Strictness: let S’ = S {si, ti} dist(si, ti) in G/ FS ξ(S’,i)
Example: S = {} i =
Rental of if FS bought
/M of share if added to S
17 Nov 03 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[buy() | S] = 1/M M ξ(S+,)
E[rent()]
E[buy()]
jD E[rent(j)] jD E[buy(j)] OPT
17 Nov 03 Approx via cost sharing: Rent or Buy 12
Computing shares using the AKR-GW algorithm
ξ():ξ():ξ():
Active terminals share cost of growth evenly.
17 Nov 03 Approx via cost sharing: Rent or Buy 13
AKR-GW is not enough
1+ε
1 1
cost share() = 1/n + rental() = 1 +
Solution: Force the algorithm to buy the middle edge
- need to be careful not to pay too much
Problem: cost shares do not pay enough!
17 Nov 03 Approx via cost sharing: Rent or Buy 14
Forcing AKR-GW buy more
1+ε
1 1
Idea: Inflate the balls!
Roughly speaking, multiply each radius by > 1
17 Nov 03 Approx via cost sharing: Rent or Buy 15
Why should inflating work?
layer: only is contributing
layer: terminals other than contributing
ξ() large
ξ() small, can take shortcuts
ξ() small, can take shortcuts
17 Nov 03 Approx via cost sharing: Rent or Buy 16
The inflated AKR-GW
1. Run the standard AKR-GW algorithm on S
2. Note the time Tj when each demand j frozen
3. Run the algorithm again, with new freezing rule:every demand j deactivated at time Tj for some > 1
Freezing times
17 Nov 03 Approx via cost sharing: Rent or Buy 17
The inflated AKR-GW (2)
Freezing times
Original AKR-GW
Inflated AKR-GWFreezing times
17 Nov 03 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 2OPT.
Pf: adopted from [GW].
17 Nov 03 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).
17 Nov 03 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!
17 Nov 03 Approx via cost sharing: Rent or Buy 21
Comparing Original(S+) & Inflated(S)
Freezing times
Freezing times
Original(S+)
Inflated(S)
17 Nov 03 Approx via cost sharing: Rent or Buy 22
Proof idea
Correspondence of other (i.e. non-red) layers:
Layer l in Original(S+) Layer l’ in Inflated(S)
|P| = |Alone| + |Other|
|Other| ≤ |P|
(-1) |P| ≤ |Alone|
+ |Waste|
+ |Waste|
If we can prove |Waste| ≤ |Alone|, we are done.
17 Nov 03 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.
Original(S+)
Inflated(S)
Pf: By picture.
The only way of wasting a layer l is when l does not contain s (or t), but l’ does.
17 Nov 03 Approx via cost sharing: Rent or Buy 24
Bounding the Waste (2)
l
l’
17 Nov 03 Approx via cost sharing: Rent or Buy 25
Bounding the Waste (3)
l
l’
17 Nov 03 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.
17 Nov 03 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) jT ξ(S,i)
• Derandomize the sampling algorithm.
• Other applications of cost sharing and strictness.
• Different cost sharing functions? (crossmonotonic..)
17 Nov 03 Approx via cost sharing: Rent or Buy 28
Theorem: Inflated AKR-GW is a 2 approximation.
Pf: adopted from [GW].
≤≥≠∫∏∑√∂∆≈∙
*** Useful Garbage ***