Approximation via cost sharing multicommodity rent or buy
This presentation is the property of its rightful owner.
Sponsored Links
1 / 28

Approximation Via Cost Sharing: Multicommodity Rent or Buy PowerPoint PPT Presentation


  • 52 Views
  • Uploaded on
  • Presentation posted in: General

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.

Download Presentation

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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

Approx via cost sharing: Rent or Buy


Steiner forest and rent or buy

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


The cost

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


Related work

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


Our work

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


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.

The Algorithm

Approx via cost sharing: Rent or Buy


Bounding the cost

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


Bounding the rental cost

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


Need a cost sharing algorithm

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


Cost sharing for steiner forest

 

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


Bounding rental cost

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


Computing shares using the akr gw algorithm

Computing shares using the AKR-GW algorithm

ξ():

ξ():

ξ():

Active terminals share cost of growth evenly.

Approx via cost sharing: Rent or Buy


Akr gw is not enough

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


Forcing akr gw buy more

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


Why should inflating work

ξ() 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


The inflated akr gw

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


The inflated akr gw 2

Freezing times

The inflated AKR-GW (2)

Freezing times

Original AKR-GW

Inflated AKR-GW

Approx via cost sharing: Rent or Buy


Easy facts

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


It s hammertime proving strictness

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


Simplifying

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


Comparing original s inflated s

Comparing Original(S+) & Inflated(S)

Freezing times

Original(S+)

Inflated(S)

Freezing times

Approx via cost sharing: Rent or Buy


Proof idea

(-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


Bounding the waste

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


Bounding the waste 2

Bounding the Waste (2)

l

l’

Approx via cost sharing: Rent or Buy


Bounding the waste 3

Bounding the Waste (3)

l

l’

Approx via cost sharing: Rent or Buy


Summing up

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


Future work

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


Useful garbage

*** Useful Garbage ***

Theorem: Inflated AKR-GW is a 2 approximation.

Pf: adopted from [GW].

≤≥≠∫∏∑√∂∆≈∙

Approx via cost sharing: Rent or Buy


  • Login