Presentation is loading. Please wait.

Presentation is loading. Please wait.

Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.

Similar presentations


Presentation on theme: "Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department."— Presentation transcript:

1 Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department of Combinatorics and Optimization University of Waterloo

2 2 Given: Undirected graph G(V,E) A set T of k terminals in G ; other vertices are called Steiner nodes The Problem Find: Maximum number of Steiner trees that are disjoint on the Steiner nodes and the edges (element-disjoint) Steiner tree: a tree that contains all the terminals T We denote this problem by IUV

3 3 Observation: All leaves in a Steiner tree are terminals; otherwise, we can simply remove it. Example:

4 4 The special case of T=V : Steiner trees are spanning trees; Theorem (Nash-Williams/Tutte): If the vertex-connectivity of G is k then the maximum number of vertex-disjoint spanning trees in G is at least k/2 Special cases: If the number of terminals is 2, k=2 : Steiner trees are paths; So asking for maximum number of vertex-disjoint paths between two points Theorem (Menger): The maximum number of vertex- disjoint paths between two nod s,t is equal to the minimum number of vertices whose removal disconnect s,t

5 5 From algorithmic point of view If k=2 then the maximum number of vertex-disjoint paths can be easily found. Finding maximum number of vertex-disjoint spanning trees (i.e. when T=V ) can be solved in poly-time by matroid intersection algorithms. Finding maximum number of vertex-disjoint Steiner trees is NP-hard. In fact: Theorem (Cheriyan & S.): It is NP-hard to approximate the maximum number of vertex-disjoint Steiner trees within a factor of  (log n).

6 6 Packing edge-disjoint Steiner trees (IUE): The same input: a graph G(V,E) and a set T of k terminals. The goal is to find maximum number of edge-disjoint Steiner trees. The special case of k=2 is easy (by Menger’s Theorem) The special case of T=V : Steiner trees are spanning trees; again we can solve the problem in this case using matroid intersection algorithms Other variations of the problem Conjecture (Kriesell’99): If the edge-connectivity of G is k then the maximum number of edge-disjoint Steiner trees in G is at least k/2

7 7 Theorem (Lau’04): If the edge-connectivity of G is k then the maximum number of edge-disjoint Steiner trees in G is at least k/26 The known O(1)- approximations for IUE are based on solving a special case of IUV (bipartite) The problem is significantly harder on directed graphs: Theorem (Cheriyan & S.’04): The problem of packing element-disjoint directed Steiner trees is hard to approximate within  (n 1/3-  ). There is an O(n 1/2+  )- approximation for this problem. A similar upper and lower bounds hold for packing edge-disjoint directed Steiner trees. Other variations of the problem (cont’d)

8 8 LP-formulation and generalization We settle down the approximability of IUV by giving an O(log n)- approximation algorithm even for a more general setting Suppose we are given G(V,E), with terminals T, capacity c v for each vertex v 2 V Find a maximum size set of Steiner trees such that each vertex v is in at most c v trees Let be the set of all Steiner trees in G For every F 2 let x F be a 0/1 variable we can formulate the problem as an IP/LP

9 9 Fractional IUV The LP-relaxation of the problem will be: The separation oracle for the dual of this LP is the minimum node-weighted Steiner tree problem Therefore, by a theorem of [JMS’03], even solving the LP is  (log n)- hard

10 10 Main Theorem : There is a polytime randomized algorithm with ratio O(log n) for (uncapacitated) IUV. The algorithm finds a solution that is within a factor O(log n ) of the optimal solution to the fractional IUV. The same approximation ratio holds for capacitated IUV. Since IUV (and even fractional IUV) is  (log n)- hard we obtain: Corollary: The approximability threshold of IUV is  (log n). We give the sketch of the proof for uncapacitated version Our Results

11 11 Let k be the largest vertex-connectivity between terminals Clearly k is an upper bound for the (fractional) solution The algorithm finds a set of element-disjoint Steiner trees. First we reduce the problem to the bipartite case: Bipartite IUV: if the input graph G is bipartite with one part being terminals and one part being Steiner points Proof of the Main Theorem:

12 12 By adding Steiner vertices on the edges we can assume there is no edge between terminals. So we have to pack Steiner trees that are disjoint on Steiner nodes only. Consider any edge e=uv. It can be shown that either deleting or contracting e preseves the connectivity of terminals. So Theorem: Given a graph G=(V,E) with terminal set T that is k- connected (and has no edge between terminals), there is a poly-time algorithm to obtain a bipartite graph G’ from G such that G’ has the same terminal set and is k -connected (on terminals). Proof of the Main Theorem (cont’d)

13 13 Theorem 2: Given an instance of bipartite IUV such that the graph is k -connected, there is a randomized poly- time algorithm that finds a set of element- disjoint Steiner trees. Proof sketch: Let and color Steiner nodes u.r. with one of k/R colors ( c ¸ 6 ) Equivalently: color every Steiner node u.r. with one of k colors 1,…,k ; let C i be color class i Partition the color classes into k/R super-classes where each super-class D j consists of R consecutive color classes C (j-1)R+1, C (j-1)R+2,…, C jR. Merge these classes one by one (in R rounds). Proof of the Main Theorem (cont’d)

14 14 Let D 1 r be value of D 1 after r rounds and H r =D 1 r [ T Assume G 1,…,G p are connected components of H r It can be shown that when we add C r+1 to H r, the probability that G 1 (or any fixed component of H r ) does not become connected to others is at most 1/e So, in expected, the number of connected components of H r drops by a constant factor (1-1/e) in each round So after R rounds H R (which is D R [ T ) becomes a connected graph, with probability at least 1-1/n Since there are k/R groups, Proof of the Main Theorem (cont’d)


Download ppt "Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department."

Similar presentations


Ads by Google