Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Mar 05Stochastic Steiner without a Root1 Stochastic Steiner Tree without a Root Martin Pál Joint work with Anupam Gupta.

Similar presentations


Presentation on theme: "1 Mar 05Stochastic Steiner without a Root1 Stochastic Steiner Tree without a Root Martin Pál Joint work with Anupam Gupta."— Presentation transcript:

1 1 Mar 05Stochastic Steiner without a Root1 Stochastic Steiner Tree without a Root Martin Pál Joint work with Anupam Gupta

2 1 Mar 05Stochastic Steiner without a Root2 Steiner Tree Input: graph G, weights c e on edges, set of terminals g = {t 1, t 2, …, t n } Solution: a network connecting all terminals. Goal: minimize cost of the network built. Note: optimal network will be a tree.

3 1 Mar 05Stochastic Steiner without a Root3 Stochastic Steiner tree What if the terminals are not known beforehand? Installing edges in advance reduces cost – but planning must be done obliviously. We may not be able to correctly connect all demands – but hopefully we will be allowed to fix things later by buying extra edges. ? ? ? ? ? ?

4 1 Mar 05Stochastic Steiner without a Root4 The model Two stage stochastic model with recourse: On Monday, edges are cheap, but we do not know the set of terminals. We can buy edges. On Tuesday, set g of terminals materializes. We must buy edges to connect up g. Edges are σ times more expensive. (σ == inflation factor). drawn from a known distribution π

5 1 Mar 05Stochastic Steiner without a Root5 The model Two stage stochastic model with recourse: Find F 1  Edges and F 2 : 2 Users  2 Edges to minimizecost(F 1 ) + σ E π(g) [cost(F 2 (g))] subject to connected(g, F 1  F 2 (g)) for all sets g  Users Want compact representation of F 2 by an algorithm

6 1 Mar 05Stochastic Steiner without a Root6 First stage not connected subgraph Pr[ ] = Pr[ ] = ½ σ > 2 Two distant groups Two nearby groups

7 1 Mar 05Stochastic Steiner without a Root7 The Rent or Buy problem (1) Input: graph G, weights c e on edges, set of demand pairs D, a constant M≥1 Solution: a set of paths, one for each (s i,t i ) pair. Goal: minimize cost of the network built.

8 1 Mar 05Stochastic Steiner without a Root8 The Rent or Buy problem (2) Rent or buy: Must rent or buy each edge. rent: pay c e for each path using edge e buy: pay M  c e Goal: minimize rental+buying costs. Steiner forest: pay c e for every edge used

9 1 Mar 05Stochastic Steiner without a Root9 Rent or Buy as Stochastic Steiner Let g i ={s i,t i } π(g i ) = 1/n σ = M/n install e in first stage  buy e install e in second stage  rent e Stochastic Steiner = generalized RoB Each group g i has tree T i (may have exponentially many groups)

10 1 Mar 05Stochastic Steiner without a Root10 The Algorithm 1. Boosted Sampling: Draw σ groups of clients g 1,g 2,…,g σ indep. from the distribution π. 2.Build a Steiner forest F 1 on {g 1,g 2,…,g σ } using an  -approx algorithm. 3. When actual group g of terminals appears, build a tree spanning g in G/F 1.

11 1 Mar 05Stochastic Steiner without a Root11 Bounding the cost Expected first stage cost is small: Using  -approx, can get    OPT Theorem: Expected cost of bought edges is    OPT. Lemma: There is a forest F on sampled groups with E[cost(F)]  OPT. e installed in first stage OPT: Pr[e is in F] = 1 e not in first stage OPT: Pr[e is in F] ≤ σ Pr[e is in some T i ]

12 1 Mar 05Stochastic Steiner without a Root12 Bounding the second stage cost Unselected groups pay their rental cost Selected groups contribute towards buying its tree pays rent pays buy Plan: Bound second stage cost by the first stage cost: Expected second stage( )   Expected share( ) pays rent pays buy

13 1 Mar 05Stochastic Steiner without a Root13 Need a cost sharing algorithm Input: Set of demand groups S Output: Steiner forest F S on S cost share ξ(S,g) of each group g  S ξ({ }, ) = 4 ξ({ }, ) = 5 Set of demandsdemand group

14 1 Mar 05Stochastic Steiner without a Root14 Cost Sharing for Steiner Forest (P1) Good approximation: cost(F S )   St * (S) (P2) Cost shares do not overpay:  g  S ξ(S,g)  St * (S) (P3) Strictness: let S’ = S  {g} MST(g) in G/ F S   ξ(S’,g) Example: S = { } g = Rental of if F S bought     of share if added to S

15 1 Mar 05Stochastic Steiner without a Root15 Bounding second stage cost S’ = {g 1,g 2,…,g σ } and S = S’– { }. Imagine Pr[  S’ | S] = σ  π( ). E[rent( ) | S]  π( )  σ  MST( ) in G/F S E[buy( ) | S] = π( )  σ  ξ(S+, )      E[rent( )]    E[buy( )]  j  D E[rent(j)]    j  D E[buy(j)]   OPT

16 1 Mar 05Stochastic Steiner without a Root16 Computing shares using the AKR-GW algorithm ξ( ): Active terminals share cost of growth evenly.

17 1 Mar 05Stochastic Steiner without a Root17 AKR-GW is not enough 1+ε11 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!

18 1 Mar 05Stochastic Steiner without a Root18 Forcing AKR-GW buy more 1+ε11 Idea: Inflate the balls! Roughly speaking, multiply each radius by  > 1

19 1 Mar 05Stochastic Steiner without a Root19 Why should inflating work? layer: only is contributing layer: terminals other than contributing ξ( ) large ξ( ) small, can take shortcuts

20 1 Mar 05Stochastic Steiner without a Root20 The inflated AKR-GW 1.Run the standard AKR-GW algorithm on S 2.Note the time T j when each demand j frozen 3.Run the algorithm again, with new freezing rule: every demand j deactivated at time  T j for some  > 1 Freezing times

21 1 Mar 05Stochastic Steiner without a Root21 The inflated AKR-GW (2) Freezing times Original AKR-GW Inflated AKR-GW Freezing times

22 1 Mar 05Stochastic Steiner without a Root22 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 (  +1)  OPT. Pf: adapted from [GW].

23 1 Mar 05Stochastic Steiner without a Root23 Proving strictness Compare: Original(S+ )(cost shares) Inflated(S)(the forest we buy) Need to prove: MST( ) in G/ F S   ξ(S+, ) Lower bound on ξ(S+, ) : alone( ) Original(S+ ) must have connected terminals. Hence it contains a tree P spanning. Use it to bound MST( ).

24 1 Mar 05Stochastic Steiner without a Root24 Simplifying.. Let  be time when Original(S+ ) connects terminals. Terminate Original(S+ ) at time . In Inflated(S), freeze each term. j at time  min(T j,  ). Simpler graph H: Contract all edges that Inflated(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!

25 1 Mar 05Stochastic Steiner without a Root25 Comparing Original(S+ ) & Inflated(S) Freezing times Original(S+ ) Inflated(S)

26 1 Mar 05Stochastic Steiner without a Root26 Proof idea Correspondence of other (i.e. non-red) layers: Layer l in Original(S+ )  Layer l’ in Inflated(S) |Tree| = |Alone| + |Other|   |Other| ≤ |Tree| (  -1)  |Tree| ≤   |Alone| +  |Waste| + |Duplicates| If we can prove: we are done. |Waste| ≤ |Alone| |Duplicates| ≤ |Alone| + |Other|

27 1 Mar 05Stochastic Steiner without a Root27 Bounding the Waste Claim: If a layer l contains t, then its corresponding inflated layer l’ also contains some t. Original(S+ ) Inflated(S) Pf: By picture. The only way of wasting a layer l is when the whole group lies inside l’.

28 1 Mar 05Stochastic Steiner without a Root28 Bounding the Waste (2) l l’

29 1 Mar 05Stochastic Steiner without a Root29 Bounding the Waste (3) l l’

30 1 Mar 05Stochastic Steiner without a Root30 Bounding the Duplicates # edges cut = #clusters –1 # intersections = 2 # edges # cuts < 2 #clusters |Alone| + |Other|+|Duplicates| < 2(|Alone| + |Other|)

31 1 Mar 05Stochastic Steiner without a Root31 Summing up |Tree| ≤ 4  /(  -2)  |Alone| Hence we have  +1 approximation algorithm with 4  /(  -2)-strict cost sharing. Setting  =4 we obtain a 5+8=13 approximation.

32 1 Mar 05Stochastic Steiner without a Root32 The End No need to know π explicitly (sampling oracle is enough) Is the ball inflation trick necessary? Derandomize the sampling algorithm (for π given explicitly). Get stronger strictness to allow multistage algo

33 1 Mar 05Stochastic Steiner without a Root33 Theorem: Inflated AKR-GW is a 2  approximation. Pf: adopted from [GW]. ≤≥≠∫∏∑√∂∆≈∙  *** Useful Garbage ***


Download ppt "1 Mar 05Stochastic Steiner without a Root1 Stochastic Steiner Tree without a Root Martin Pál Joint work with Anupam Gupta."

Similar presentations


Ads by Google