Title: Approximation Via Cost Sharing: Multicommodity Rent or Buy
1Approximation Via Cost Sharing Multicommodity
Rent or Buy
- Martin Pál
- Joint work with
- Anupam Gupta Amit Kumar
- Tim Roughgarden
2Steiner Forest and Rent or Buy
Input graph G, weights ce on edges, set of
demand pairs D, a constant M1
Solution a set of paths, one for each (si,ti)
pair. Goal minimize cost of the network built.
3The 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 rentalbuying costs.
4Related 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
5Our work
- Simple randomized 8-approximation for the
Multicommodity Rent or Buy problem - Analysis based on cost sharing
- Ball inflation technique of independent interest
- Can be implemented in O(m log n) time
6The Algorithm
7Bounding the cost
Expected buying cost is small
Lemma There is a forest F on marked pairs with
Ecost(F) ? OPT.
e bought by OPT Pre is in F 1 e rented by
OPT Pre is in F 1/M
Using ?-approx, can get ? ? ? OPT Theorem
Expected cost of bought edges is ? ? ? OPT.
8Bounding 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(?)
9Need 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
10Cost Sharing for Steiner Forest
(P1) Constant approximation cost(FS) ? ?
St(S) (P2) Cost shares do not overpay ?j?S
?(S,j) ? St(S) (P3) Cost shares pay enough
let S S ? si, ti dist(si, ti) in G/ FS
? ? ?(S,i)
Example S ? i ?
11Bounding rental cost
Suppose we flip a coin for every demand pair
except ?. Let S be the set of marked pairs.
Erent(?) S ? dist(?,?) in G/FS
Erent(?) ? ? ? Ebuy(?)
? ? ?
Ebuy(?) S 1/M ? M ? ?(S?,?)
?j?D Erent(j) ? ? ?j?D Ebuy(j) ? ? OPT
12Computing shares using the Goemans-Williamson
algorithm
?(?)
?(?)
?(?)
Active terminals share cost of growth evenly.
13Goemans-Williamson is not enough
cost share 1/n ?rental 1 ?
Problem cost shares do not pay enough!
Solution Inflate the balls! Roughly speaking,
multiply each radius by ? gt 1
14Summing up
For ? 2 we get a 4-approximate 4-strict sharing
alg. This yields an 8-approximation algorithm in
total.
15Conclusions
- We have presented a simple 8-approx. for
Multicommodity Rent or Buy. - Extension instead of pairs, have groups. Each
group must be connected by a tree, edge cost
depends on the number of trees using it. - Does our algorithm work with any Steiner forest
algorithm? With unscaled Goemans-Williamson? - Other cost sharing functions? (crossmonotonic..)
16What does (P3) say
17What does (P3) say
Solution for
Solution for
a
b
c
?( , ) ? ? (ac)
18Solution
- Inflate the balls !
- Run the standard AKR, GW algorithm
- Note the time Tj when each demand j deactivated
- Run the algorithm again, except that now every
demand j deactivated at time ??Tj for some ? gt 1 - Adopting proof from GW buying cost at most
2???OPT.
19How to prove (P3)
Need to compare runs on D and D D ? si,
ti Idea 1. pick a si, ti path P in G/ FD 2.
Show that ?(D,i) accounts for a constant
fraction of length(P)
20How to prove (P3)
Need to compare runs on D and D D ? si,
ti Idea 1. pick a si, ti path P in G/ FD 2.
Show that ?(D,i) accounts for a constant
fraction of length(P)
Instead of ?(D,i), use alone(i), the total time
si or ti was alone in its cluster
21How to prove (P3)
Need to compare runs on D and D D ? si,
ti Idea 1. pick a si, ti path P in G/ FD 2.
Show that ?(D,i) accounts for a constant
fraction of length(P)
22How to prove (P3)
Need to compare runs on D and D D ? si,
ti Idea 1. pick a si, ti path P in G/ FD 2.
Show that ?(D,i) accounts for a constant
fraction of length(P)
23How to prove (P3)
Need to compare runs on D and D D ? si,
ti Idea 1. pick a si, ti path P in G/ FD 2.
Show that ?(D,i) accounts for a constant
fraction of length(P)
?(D, ), 2.5 alone( ) 2.0
24Mapping of layers
Lonely layer generated by si or ti while the
only active demand in its cluster Each non-lonely
layer in the D run maps to ? layers in the
scaled D run. Idea length(P) of lonely and
non-lonely layers crossed in D run length(P) ?
of layers it crosses in scaled D run Hence for
each non-lonely layer, ?-1 lonely layers crossed.
25Mapping not one to one
Two non-lonely layers in D run can map to the
same layer in scaled D run.
D run
scaled D run
26Not all layers of D run cross P
A layer in D run that crosses P can map to a
layer in scaled D run that does not cross P
D run
scaled D run
si
si
The waste can be bounded.