packing element disjoint steiner trees l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Packing Element-Disjoint Steiner Trees PowerPoint Presentation
Download Presentation
Packing Element-Disjoint Steiner Trees

Loading in 2 Seconds...

play fullscreen
1 / 14

Packing Element-Disjoint Steiner Trees - PowerPoint PPT Presentation


  • 214 Views
  • Uploaded on

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)

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

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


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
packing element disjoint steiner trees

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

slide2

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

slide3

Example:

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

slide4

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

slide5

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).

slide6

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

slide7

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.

slide8

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

slide9

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
slide10

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

slide11

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

slide12

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).

slide13

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).
slide14

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,