Packing Element-Disjoint Steiner Trees

1 / 14

# Packing Element-Disjoint Steiner Trees - PowerPoint PPT Presentation

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. The Problem. Given: Undirected graph G(V,E)

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Packing Element-Disjoint Steiner Trees' - merry

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

### Packing Element-Disjoint Steiner Trees

Department of Computing Science

University of Alberta

Joint with

Joseph Cheriyan

Department of Combinatorics and Optimization

University of Waterloo

The Problem

• Given:
• Undirected graph G(V,E)
• A set Tof kterminals in G; other vertices are called Steiner nodes
• 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

Example:

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

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,tis equal to the minimum number of vertices whose removal disconnect s,t

• The special case of T=V: Steiner trees are spanning trees;

Theorem (Nash-Williams/Tutte): If the vertex-connectivity of Gis k then the maximum number of vertex-disjoint spanning trees in G is at least k/2

From algorithmic point of view

• If k=2then 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).

Other variations of the problem

Packing edge-disjoint Steiner trees (IUE):

• The same input: a graph G(V,E) and a set Tof kterminals.
• 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

Conjecture (Kriesell’99): If the edge-connectivity of Gis k then the maximum number of edge-disjoint Steiner trees in Gis at least k/2

Other variations of the problem (cont’d)

• Theorem (Lau’04): If the edge-connectivity of Gis k then the maximum number of edge-disjoint Steiner trees in Gis 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 (n1/3-). There is an O(n1/2+)-approximation for this problem.

A similar upper and lower bounds hold for packing edge-disjoint directed Steiner trees.

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 cv for each vertex v2 V

Find a maximum size set of Steiner trees such that each vertex v is in at most cv trees

Let be the set of all Steiner trees in G

For every F2 let xF be a 0/1 variable

we can formulate the problem as an IP/LP

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

Our Results

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

Proof of the Main Theorem:

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 (cont’d)

• 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 epreseves 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)

• 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 Cibe color class i
• Partition the color classes into k/R super-classes where each super-class Dj consists of R consecutive color classes C(j-1)R+1, C(j-1)R+2,…, CjR.
• Merge these classes one by one (in R rounds).

Proof of the Main Theorem (cont’d)

• Let D1r be value of D1 after r rounds and Hr=D1r[ T
• Assume G1,…,Gp are connected components of Hr
• It can be shown that when we add Cr+1 to Hr , the probability that G1 (or any fixed component of Hr) does not become connected to others is at most 1/e
• So, in expected, the number of connected components of Hr drops by a constant factor (1-1/e) in each round
• So after R rounds HR (which is DR[T) becomes a connected graph, with probability at least 1-1/n
• Since there are k/R groups,