28
17 Nov 03 Approx via cost sharing: Rent or Buy 1 Approximation Via Cost Sharing: Multicommodity Rent or Buy Martin Pál Joint work with Anupam Gupta Amit Kumar Tim Roughgarden

Approximation Via Cost Sharing: Multicommodity Rent or Buy

  • Upload
    makan

  • View
    25

  • Download
    0

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

Page 1: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 2: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 3: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 4: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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]

Page 5: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 6: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 7: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 8: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 9: Approximation Via Cost Sharing: Multicommodity Rent or 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

Page 10: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 11: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 12: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 13: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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!

Page 14: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 15: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 16: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 17: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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

Page 18: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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].

Page 19: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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).

Page 20: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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!

Page 21: Approximation Via Cost Sharing: Multicommodity Rent or Buy

17 Nov 03 Approx via cost sharing: Rent or Buy 21

Comparing Original(S+) & Inflated(S)

Freezing times

Freezing times

Original(S+)

Inflated(S)

Page 22: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 23: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 24: Approximation Via Cost Sharing: Multicommodity Rent or Buy

17 Nov 03 Approx via cost sharing: Rent or Buy 24

Bounding the Waste (2)

l

l’

Page 25: Approximation Via Cost Sharing: Multicommodity Rent or Buy

17 Nov 03 Approx via cost sharing: Rent or Buy 25

Bounding the Waste (3)

l

l’

Page 26: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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.

Page 27: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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..)

Page 28: Approximation Via Cost Sharing: Multicommodity Rent or Buy

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 ***