1 / 11

On approximation algorithms for the terminal Steiner tree problem

On approximation algorithms for the terminal Steiner tree problem. Doratha E. Drake, Stefan Hougardy Information Processing Letters 89(2004) 15-18. Reporter: Cheng-Chung,Li 2004/04/19. Outline. Introduction The hardness result The approximation algorithm. Introduction-(1).

lynsey
Download Presentation

On approximation algorithms for the terminal Steiner tree problem

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. On approximation algorithms for the terminal Steiner tree problem Doratha E. Drake, Stefan Hougardy Information Processing Letters 89(2004) 15-18 Reporter: Cheng-Chung,Li 2004/04/19

  2. Outline • Introduction • The hardness result • The approximation algorithm

  3. Introduction-(1) • Given a graph G=(V,E) with a length function w:ER+ and a subset RV of terminals the Steiner tree problem is to find a minimum length tree in G that contains all vertices of R. Such a tree is called a Steiner minimum tree • If all vertices of R are leaves in Steiner tree, this special version is called terminal steiner tree problem • Metric-Steiner tree problem is known to be APX-hard, unless P=NP • The best polynomial time approximation algorithm for the Steiner tree problem that is currently know is due to Robins and Zelikovsky, they proved that their algorithm has an approximation ratio of at most 1.55

  4. 1 1 1 1 x Introduction-(2) • For the Steiner tree problem on may assume that the given graph is metric, i.e., it is a complete graph and the edge lengths satisfy the triangle inequality • Non-metric case: x+3 • Metric case: <5(x<2) Fig. 1. A non-metric instance for the terminal Steiner tree ProblemTerminals are indicted by squares, non-terminals by circles

  5. Introduction-(3) • We will show that unless NP=DTIME(nO(loglogn)) the non-metric version of the terminal Steiner tree problem cannot be approximated to any constant (reduced by set cover problem) • The metric version of the terminal Steiner tree problem is APX-hard and we will give a factor 2 approximation algorithm, where  denotes the best approximation ratio for the Steiner tree problem, i.e., 1.01<<1.55 currently, if PNP

  6. The hardness result-(1) • Theorem 1: For any constant  a polynomial time - approximation algorithm for the terminal Steiner tree problem yields a polynomial time -approximation algorithm for the set cover problem • We use a reduction from the set cover to non-metric terminal Steiner tree problem • Note that the set cover problem is known to be not approximable better than lnn, unless NP=DTIME(nO(loglogn))

  7. 1 T1 2 T2 7 T7 4 X 2 3 5 5 6 10 T0 T4 4 T3 3 T5 5 T9 9 T6 6 T10 10 T8 8 The hardness result-(2) A 1 C 7 2 8 B 6 D 5 3 9 4 10 E

  8. The hardness result-(3) • Now a solution to the terminal Steiner tree problem contains the vertex x (as terminal T0 must be connected with other terminals) and some of the rays emanating from x • The weight of the solution of the terminal Steiner tree problem is exactly the number of these rays • All the sets Si that are connected to x by these rays form a set cover because for each j terminal Tj is connected to other terminals in the solution of the terminal Steiner tree problem only via sets which contain element j • Therefore the weight of the solution to the terminal Steiner tree problem = the solution to the set cover problem that is induced by this problem

  9. The approximation algorithm-(1) • The algorithm of metric version terminal Steiner tree has a 2-factor, here  denotes the best possible performance ratio for Steiner tree problem • We assume in the following that the given instance of the terminal Steiner tree contains at least three terminals • This algorithm based on two crucial operations: • first: remove those edges connect two vertices from R • Star-replacement: the operation reduces the degree of a vertex in R to one

  10. a4 a5 a4 r a1 a1 r a2 a3 a2 The approximation algorithm-(2) • AlgorithmTerminalSteiner(G=(V,E),w: ER+, RV) • Remove all edges from G that connect two terminals in R • Compute a -approximate Steiner tree T in G for R • For rR do • If r is not a leaf in T • then make a star-replacement for r a5

  11. The approximation algorithm-(3) • Theorem 2: The TerminalSteiner algorithm has performance ratio 2 • the first step does not change the value of optimal solution • For the star-replacement algorithm: Consider the terminal r with the neighbors a1,a2,…,ak in T(w.l.o.g., let w(r,a1)w(r,a2)…w(r,ak)), the star replacement replace the edges (r,a2), …,(r,ak) with the edges (a1,a2),…,(a1,ak) • By triangulation inequality:

More Related