Download presentation
Presentation is loading. Please wait.
Published bySilvia Norton Modified over 9 years ago
1
Improved Approximation Algorithms for Directed Steiner Forest Moran Feldman Technion Joint work with: Guy Kortsarz,Rutgers University Camden Zeev Nutov,The Open University of Israel
2
Talk Outline 2 Presenting the problems Prior art and our results Previous algorithm for Directed Steiner Forest (DSF) Our algorithms for k-DSF and DSFOur algorithms for k-DSF and DSF Summary
3
Problem 1: Directed Steiner Forest (DSF) 3 Instance: A digraph G = (V,E) with edge costs c(e) and a set D S T of ordered node pairs of V. Objective: Find a subgraph H G of minimum cost containing an s-t path for every (s,t) D. Problem 2: k-Directed Steiner Forest (k-DSF) Instance: As for DSF and an integer 0 ≤ k ≤ |D|. Objective: Find a subgraph H G of minimum cost containing an s-t path for (at least) k pairs (s,t) D.
4
ProblemUndirectedDirected In terms of n In terms of k In terms of n In terms of k Steiner Forest 2 [AKR 95] O(n 1+ε )O(k 1/2+ε ) [CEGS 08] k-Steiner Forest O(n 1/2 ) [GHNR 07] O(k 1/2 ) [GHNR 07] O(n 4/3 ) [CCCDG 99] O(k 2/3 ) [CCCDG 99] ProblemUndirectedDirected In terms of n In terms of k In terms of n In terms of k Steiner Forest 2 [AKR 95] O(n 1+ε )O(k 1/2+ε ) * [CEGS 08] k-Steiner Forest O(n 1/2 ) [GHNR 07] O(k 1/2 ) [GHNR 07] O(n 1+ε ) O(n 4/3 ) O(k 1/2+ε ) O(k 2/3 ) ProblemUndirectedDirected In terms of n In terms of k In terms of n In terms of k Steiner Forest 2 [AKR 95] O(n 4/5+ε ) O(n 1+ε ) O(k 1/2+ε ) * [CEGS 08] k-Steiner Forest O(n 1/2 ) [GHNR 07] O(k 1/2 ) [GHNR 07] O(n 1+ε ) O(n 4/3 ) O(k 1/2+ε ) O(k 2/3 ) Prior Art 4 Theorem 2 DSF admits an O(n 4/5+ε ) approximation scheme. Theorem 1 k-DSF admits a combinatorial O(k 1/2+ε ) approximation scheme. Note that k-SF and k-DSF have (almost) the same ratio in terms of k. and Our Results First sublinear algorithm in terms of n. Lower bound Ω(n 0.5 ) [DK 99]. A variant of the algorithm gives an O(m 2/3+ ε ) approximation.
5
5 The Density Problem Instance: As in k-DSF. Objective: Find a subgraph H G of minimum density: min{k, # of pairs connected by H} c(H)c(H) Reductions to Density Using set-cover type analysis, both reductions preserve the approximation ratio (up to a logarithmic factor, for low ratios). Approximation for density with k = |D| Approximation for DSF Approximation for k-DSF Approximation for density
6
Junction Trees 6 Definition A junction-tree is a union of: An in-going tree rooted at r An out-going tree rooted at r r It is easy to see that in every graph there is a junction tree of density: k 1/2 ∙ opt/k [Chekuri, Even, Gupta, Segev SODA08]
7
Algorithm for DSF of [CEGS 08] 7 Difficulty Finding the best junction tree is NPC, it must be approximated. Solution Reduction to Group Steiner Forest, and approximating it via an LP-relaxation. Yields an approximation ratio of O(k 1/2+ε ). The LP is suitable only for DSF (the case k = |D|). What’s Now? What do we know about junction trees? There is a good density junction tree in every instance of k-DSF. Nobody knows how to find such a junction tree in the general settings of k-DSF. Idea Use junction trees to approximate the Density Problem.
8
Theorem 1 k-DSF admits an O(k 1/2+ε ) approximation scheme. Junction Star-Tree: A union of disjoint: In-going star from S to r Out-going tree from r to T r
9
Algorithm for k-DSF 9 Simple Reductions Ideas Use junction star-trees to approximate the Density Problem. Finding good density junction star-tree via a reduction to: Instance: A digraph G = (V, E) with edge costs, a root node r, a set U V of terminals, and an integer k. Objective: Find a min-cost subtree T of G rooted at r spanning k terminals. Approximation: We need the density version: “Find the best density tree”. It has an O(k ε ) approximation scheme by [CCCDG 99]. AssumptionJustification Metric costs.Metric completion. No edge enters a node of S or leaves a node of T. Create a new source and terminal for every node v, connect them to v by zero cost edges. A node belongs to at most one pair of D.Multiply nodes belonging to multiple pairs. k-Directed Steiner Tree (k-DST)
10
Finding a good density junction star-tree 10 A junction star-tree:A tree rooted at r: t1t1 t2t2 t3t3 t4t4 t5t5 t' 1 t' 2 t' 3 t' 4 t' 5 r s1s1 s2s2 s3s3 s4s4 s5s5 t1t1 t2t2 t3t3 t4t4 t5t5 r Reduction to k-DST We guess r No other information about the junction star-tree is needed
11
Concluding the Algorithm 11 What do we get? Using junction star-trees to approximate density, we get an O(k 1/2+ε )-approximation algorithm for k-DSF. Comparison with the algorithm of [CEGS 08] Finding a good augmentation: Easy, works for k-DSF as well. Proving existence of a good augmentation: Non-trivial. Advantage: Combinatorial algorithm, does not solve LPs. Theorem In every instance of k-DSF (after metric completion) there is a junction star-tree of density at most: (8k) 1/2 ∙ opt/k. Long proof, see the paper for the details. Based on averaging arguments.
12
Theorem 2 DSF admits an O(n 4/5+ε ) approximation scheme.
13
Algorithm Overview 13 Notation A path is short if its length ≤ opt/n 4/5, otherwise it is long (opt is known). U(s,t) – The set of nodes having both short path from s, and short path to t. A pair (s, t) D is good if |U(s,t)| ≥ n 2/5, and bad otherwise. s v1v1 v2v2 vtvt t U(s,t)U(s,t) Short Paths Few nodes Bad Pair Many nodes Good Pair
14
Algorithm Overview - Continue 14 Connecting Good Pairs Put every node v into a set R with probability p = 2ln k / n 2/5. Connect every good pair with short path via R, if possible. Connecting Bad Pairs Let L D be the set of pairs connected by long paths in OPT. Case 1: |L| ≥ ½|D|: Good density junction tree. Case 2: |L| < ½|D|: Good density via LP rounding. Approximate the density problem by the better density edge set. A pair (s, t) is connected if R U(s,t) Pr[R U(s,t) = ] ≤ 1/k 2 for good pairs By the union bound, all good pairs are connected with probability ≥ 1-1/k By the Chernoff bound, with probability 1-1/k, the cost is no more than: Henceforth, we assume that D contains only bad pairs.
15
Case 1: |L| ≥ ½|D| (reduction to [CEGS 08]) 15 By an averaging argument there is a junction tree of of density: The method of [CEGS 08], let us find a junction tree of density: Case 2: |L| < ½|D| (LP-rounding) This LP asks to connect at least half of the bad pairs using short paths: (i) – The set of short paths connecting the i-th bad pair. – The set of short paths connecting any bad pair. (An average flow of ½ or more) (The flow of a pair is the sum of the flow paths) (Pay for edges along the flow path)
16
16 Using the LP At least |D|/3 pairs have flow ¼, consider a cut in the graph separating such pair (s, t): s1s1 s2s2 spsp t1t1 t2t2 tqtq ts (s,t) bad pair p+q < n 2/5 The number of edges (carrying flow) crossing the cut < p∙q < n 4/5 /4. The flow ¼, some edge crossing the cut has flow 1/n 4/5. Difficulty: The number of variables might be exponential. Solution: Approximate separation oracle for the dual program. Derives a solution of cost opt∙(1+ε) for the LP in polynomial time. Round the x e variables: F = {e | x e ≥ 1/n 4/5 } Cost: c(F) = O(n 4/5 ) ∙ opt # of pair connects: at least |D|/3 bad pairs Density: O(n 4/5 )∙opt/|D|
17
Open Questions 17 Regarding our algorithm for DSF: Can its ratio be improved? Can it be extended to k-DSF as well? A ratio better than O(n 1/2 ) is unlikely, due to a reduction to LABEL-COVER max [DK 99]. Generalizations: DSF and k-DSF have a generalization where every pair (s,t) D has a demand r(s,t) and it must be connected by r(s,t) edge disjoint paths. Can any of the results presented be extended to this generalization of the corresponding problem? No results are known for this generalization, even when the demands are limited to 2.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.