A Generic Approach to Solving the Steiner Tree Problem and Variants

Total Page:16

File Type:pdf, Size:1020Kb

A Generic Approach to Solving the Steiner Tree Problem and Variants A Generic Approach to Solving the Steiner Tree Problem and Variants Masterarbeit bei Prof. Dr. Thorsten Koch vorgelegt von Daniel Markus Rehfeldt1 Fachbereich Mathematik der Technischen Universit¨atBerlin Berlin, den 9. November 2015 1Konrad-Zuse-Zentrum f¨urInformationstechnik Berlin, [email protected] 1 Eidesstattliche Erkl¨arung(German Affidavit) Hiermit erkl¨areich, dass ich die vorliegende Arbeit selbstst¨andigund eigenh¨andig sowie ohne unerlaubte fremde Hilfe und ausschließlich unter Verwendung der aufgef¨uhrtenQuellen und Hilfsmittel angefertigt habe. Die selbst¨andigeund eigenh¨andigeAnfertigung versichert an Eides statt Berlin, den 9. November 2015 (Daniel Rehfeldt) Contents 2 Contents Eidesstattliche Erkl¨arung(German Affidavit) 1 Acknowledgments 5 1 Introduction 7 1.1 Preliminaries and Definitions . .9 1.2 Background and Complexity . 11 1.2.1 A Brief History . 11 1.2.2 Complexity . 11 2 The Steiner Tree Problem in Graphs 13 2.1 Formulating the Problem: Integer Programming . 14 2.1.1 Cut Formulations . 14 2.1.2 Flow Formulations . 15 2.1.3 Flow Balance Inequalities . 17 2.2 Simplifying the Problem: Reduction Techniques . 18 2.2.1 Definitions . 18 2.2.2 Basic Reductions . 19 2.2.3 Alternative Based Reductions . 20 2.2.4 Bound Based Reductions . 26 2.2.5 Implementation . 29 2.3 Finding a Solution: Primal Heuristics . 32 2.3.1 Constructive Heuristics . 32 2.3.2 Local Search Heuristics . 34 2.3.3 Recombination Heuristics . 35 2.4 Solving to Optimality: Branch and Cut . 37 2.4.1 Separation Methods . 37 2.4.2 Branching . 38 2.5 Implementation . 39 2.5.1 SCIP-Jack: A General Purpose Solver for Steiner Tree Problems . 39 2.5.2 Parallel Computing . 41 2.6 Computational Results and Discussion . 43 2.6.1 Impact of Reduction Techniques . 45 2.6.2 Impact of Primal Heuristics . 48 2.6.3 Branching . 50 3 Variants of the Steiner Tree Problem 53 3.1 The Steiner Arborescence Problem . 54 3.1.1 Reductions . 55 3.1.2 Heuristics . 65 3.1.3 Implementation and Computational Results . 65 Contents 3 3.2 The Node Weighted Steiner Problem . 67 3.2.1 Transformation . 67 3.2.2 Implementation and Computational Results . 68 3.3 The Rectilinear Steiner Minimum Tree Problem . 70 3.3.1 Transformation . 70 3.3.2 Implementation and Computational Results . 71 3.4 The Prize Collecting Steiner Tree Problem . 73 3.4.1 Transformation . 73 3.4.2 Reductions . 78 3.4.3 Heuristics . 99 3.4.4 Implementation and Computational Results . 101 3.5 The Maximum Weight Connected Subgraph Problem . 108 3.5.1 Transformation . 108 3.5.2 Reductions . 110 3.5.3 Implementation and Computational Results . 122 3.6 The Degree Constrained Steiner Tree Problem . 127 3.6.1 Primal Heuristics . 127 3.6.2 Implementation and Computational Results . 127 3.7 The Group Steiner Tree Problem . 129 3.7.1 Transformation . 129 3.7.2 Implementation and Computational Results . 129 3.8 The Hop Constrained Directed Steiner Tree Problem . 131 3.8.1 Reductions . 131 3.8.2 Primal Heuristics . 135 3.8.3 Implementation and Computational Results . 135 4 Final Computational Results and Comparisons 137 4.1 The Steiner Tree Problem in Graphs . 138 4.1.1 Parallel Computing . 139 4.2 Variants of the Steiner Tree Problem . 141 4.2.1 The Prize Collecting Steiner Tree Problem . 141 4.2.2 The Maximum Weight Connected Subgraph Problem 143 4.2.3 The Degree Constrained Steiner Tree Problem . 144 4.2.4 The Hop Constrained Directed Steiner Tree Problem . 144 4.3 Using SoPlex .......................... 146 5 Conclusions and Outlook 149 A Zusammenfassung (German Summary) 160 B Notation and Abbreviations 162 B.1 General Mathematical Notation . 162 B.2 Steiner Problem Variants . 162 Contents 4 C Detailed Experimental Results 163 C.1 The Steiner Tree Problem in Graphs . 163 C.2 The Steiner Arborescence Problem . 172 C.3 The Rectilinear Steiner Minimum Tree Problem . 173 C.4 The Prize Collecting Tree Problem . 175 C.5 The Maximum Weight Connected Subgraph Problem . 179 C.6 The Degree Constrained Steiner Tree Problem . 181 C.7 The Group Steiner Tree Problem . 182 C.8 The Hop Constrained Directed Steiner Tree Problem . 183 Contents 5 Acknowledgments I would like to thank my parents for their support and encouragement, not only during my academic studies, but furthermore during my entire life. Had it not been for the { for want of a better word { relentless efforts of my mother throughout my childhood and adolescence to focus my attention on studying, this thesis would not have found its way into existence. I would like to thank Gerald Gamrath for his support and patience in the face of numerous questions and requests, throughout my time at Zuse Institute Berlin. Not even safe from me on parental leave, he would support and encourage me with this thesis until the last minute before submission. I would like to thank Thorsten Koch for coming up with the idea of developing a general- purpose Steiner tree solver and his support throughout the realization. I would like to thank Stephen Maher for his support and suggestions for this thesis. I would like to thank Yuji Shinano for his feedback and help. I would like to thank Gerald, Stephen and Yuji for the great time in Boston, where we enjoyed the endless opportunities of American shopping and watched none other than Kobe Bryant himself play in the TD Garden; and where a previous version of the solver described in this thesis competed in the 11th DIMACS Challenge. Last but certainly not least, I would like to thank Cees Duin who relieved me from my struggles to get hold of an electronic version of his dissertation, which had indeed been written in the old pre-PDF days, by sending my a hard copy from the Netherlands. Contents 6 7 1 Introduction The Steiner tree problem in graphs (SPG) is one of the classical NP- hard problems [Kar72] and has been extensively studied both theoretically and practically. Given an undirected connected graph G = (V; E), weights c : E ! Q+ and a set T ⊂ V of terminals, the problem is to find a minimum- weight tree S ⊂ G that spans T . While the SPG is commonly cited to entail a variety of practical applications [Dui93, HRW92, Pol04, PS02, VD04], problems representable by the classic SPG are rarely encountered in practice. This assertion is evidenced by the fact that from the more than 1; 000 SPG instances collected in the standard benchmark library SteinLib [KMV01] less than a fifth can claim practical origins and even of those most are more suitably formulated as a rectilinear Steiner minimum tree problem. Still, real-world applications can be found in problems such as for instance the design of fiber-optic networks [LLL+14]. However, when the focus is widened to also consider variations of the SPG, a different picture emerges: Numerous applications can be found that include the SPG as a subproblem or that are formulated as a modified version of it (as will be evinced in the course of this thesis). Despite the strong relationship between the different Steiner tree problem variants, solution approaches employed so far have been prevalently problem specific. In contrast, the aim of this thesis is to devise and implement a general purpose approach, resulting in a solver that is able to solve both the clas- sical Steiner tree problem and many of its variants without modification. Pursuing this approach, a further objective of this thesis is to solve a wide range of benchmark instances, by means of both known and newly developed methods. The origins of our thesis can be traced to the announcement of the 11th DIMACS Challenge, dedicated to practical solving methods for the Steiner tree problem and variants. A base was provided by the model and code of the SPG solver Jack-III described in [KM98]. However, being more than 15 years old, Jack-III lacked many modern developments regarding SPG solution methods and did not provide a general MIP framework for easily incorporating additional variants of the Steiner problem. Our resolution to overcome these limitations of Jack-III was to combine the model of [KM98] with the state-of-the-art MIP-framework SCIP [Ach09]. Furthermore, we have developed several Steiner variant specific methods concerning preprocessing and heuristics. These developments have been mo- tivated by the endeavour to render our approach competitive with problem specific state-of-the art solvers. By virtue of the plugin-based structure of SCIP, these adaptations can be easily implemented without modifying the underlying generic solving methods. The major contributions of this thesis to the existing literature are as follows: 8 (a) A Steiner tree problem (b) A possible solution Figure 1: Illustration of a Steiner tree problem graphs (left) and a possible solution (right). Terminals are drawn as squares, non-terminal nodes as circles. • The transformation of 11 Steiner problem variants into a general form, using the versatility of MIP models. • The development of problem specific solving methods, most saliently preprocessing techniques, but also primal heuristics. • The integration of the new methods and established approaches de- scribed in the literature, culminating in a powerful exact Steiner tree solver that exceeds existing problem specific solvers on several bench- mark classes. As an additional central feature, the Steiner problem solving package asso- ciated with this thesis is freely available for academic research, setting it apart from all state-of-the-art Steiner tree solvers we are aware of, with the exception of the geometric Steiner problem package GeoSteiner [WWZ00]. Finally, it should not go unnoticed that part of the results presented in this thesis have already been published in [GKM+15] in the course of the 11th DIMACS Challenge.
Recommended publications
  • Steiner Tree
    Approximation Algorithms Lecture 2 10/19/10 1 (Metric) Steiner Tree Problem: Steiner Tree. Given an undirected graph G=(V,E) with non-negative edge + costs c : E Q whose vertex set is partitioned into required and →Steiner vertices, find a minimum cost tree in G that contains all required vertices. In the metric Steiner Tree Problem, G is the complete graph and edge costs satisfy the triangle inequality, i.e. c(u, w) c(u, v)+c(v, w) ≤ for all u, v, w V . ∈ 2 (Metric) Steiner Tree Steiner required 3 (Metric) Steiner Tree Steiner required 4 Metric Steiner Tree Let Π 1 , Π 2 be minimization problems. An approximation factor preserving reduction from Π 1 to Π 2 consists of two poly-time computable functions f,g , such that • for any instance I 1 of Π 1 , I 2 = f ( I 1 ) is an instance of Π2 such that opt ( I ) opt ( I ) , and Π2 2 ≤ Π1 1 • for any solution t of I 2 , s = g ( I 1 ,t ) is a solution of I 1 such that obj (I ,s) obj (I ,t). Π1 1 ≤ Π2 2 Proposition 1 There is an approximation factor preserving reduction from the Steiner Tree Problem to the metric Steiner Tree Problem. 5 Metric Steiner Tree Algorithm 3: Metric Steiner Tree via MST. Given a complete graph G=(V,E) with metric edge costs, let R be its set of required vertices. Output a spanning tree of minimum cost (MST) on vertices R. Theorem 2 Algorithm 3 is a factor 2 approximation algorithm for the metric Steiner Tree Problem.
    [Show full text]
  • Exact Algorithms for the Steiner Tree Problem
    Exact Algorithms for the Steiner Tree Problem Xinhui Wang The research presented in this dissertation was funded by the Netherlands Organization for Scientific Research (NWO) grant 500.30.204 (exact algo- rithms) and carried out at the group of Discrete Mathematics and Mathe- matical Programming (DMMP), Department of Applied Mathematics, Fac- ulty of Electrical Engineering, Mathematics and Computer Science of the University of Twente, the Netherlands. Netherlands Organization for Scientific Research NWO Grant 500.30.204 Exact algorithms. UT/EWI/TW/DMMP Enschede, the Netherlands. UT/CTIT Enschede, the Netherlands. The financial support from University of Twente for this research work is gratefully acknowledged. The printing of this thesis is also partly supported by CTIT, University of Twente. The thesis was typeset in LATEX by the author and printed by W¨ohrmann Printing Service, Zutphen. Copyright c Xinhui Wang, Enschede, 2008. ISBN 978-90-365-2660-9 ISSN 1381-3617 (CTIT Ph.D. thesis Series No. 08-116) All rights reserved. No part of this work may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without prior permis- sion from the copyright owner. EXACT ALGORITHMS FOR THE STEINER TREE PROBLEM DISSERTATION to obtain the degree of doctor at the University of Twente, on the authority of the rector magnificus, prof. dr. W. H. M. Zijm, on account of the decision of the graduation committee, to be publicly defended on Wednesday 25th of June 2008 at 15.00 hrs by Xinhui Wang born on 11th of February 1978 in Henan, China.
    [Show full text]
  • On the Approximability of the Steiner Tree Problem
    CORE Metadata, citation and similar papers at core.ac.uk Provided by Elsevier - Publisher Connector Theoretical Computer Science 295 (2003) 387–402 www.elsevier.com/locate/tcs On the approximability of the Steiner tree problem Martin Thimm1 Institut fur Informatik, Lehrstuhl fur Algorithmen und Komplexitat, Humboldt Universitat zu Berlin, D-10099 Berlin, Germany Received 24 August 2001; received in revised form 8 February 2002; accepted 8 March 2002 Abstract We show that it is not possible to approximate the minimum Steiner tree problem within 1+ 1 unless RP = NP. The currently best known lower bound is 1 + 1 . The reduction is 162 400 from Hastad’s6 nonapproximability result for maximum satisÿability of linear equation modulo 2. The improvement on the nonapproximability ratio is mainly based on the fact that our reduction does not use variable gadgets. This idea was introduced by Papadimitriou and Vempala. c 2002 Elsevier Science B.V. All rights reserved. Keywords: Minimum Steiner tree; Approximability; Gadget reduction; Lower bounds 1. Introduction Suppose that we are given a graph G =(V; E), a metric given by edge weights c : E → R, and a set of required vertices T ⊂ V , the terminals. The minimum Steiner tree problem consists of ÿnding a subtree of G of minimum weight that spans all vertices in T. The Steiner tree problem in graphs has obvious applications in the design of var- ious communications, distributions and transportation systems. For example, the wire routing phase in physical VLSI-design can be formulated as a Steiner tree problem [12]. Another type of problem that can be solved with the help of Steiner trees is the computation of phylogenetic trees in biology.
    [Show full text]
  • The Minimum Degree Group Steiner Problem
    The minimum Degree Group Steiner Problem Guy Kortsarz∗ Zeev Nutovy January 29, 2021 Abstract The DB-GST problem is given an undirected graph G(V; E), and a collection of q groups fgigi=1; gi ⊆ V , find a tree that contains at least one vertex from every group gi, so that the maximal degree is minimal. This problem was motivated by On-Line algorithms [8], and has applications in VLSI design and fast Broadcasting. In the WDB-GST problem, every vertex v has individual degree bound dv, and every e 2 E has a cost c(e) > 0. The goal is,, to find a tree that contains at least one terminal from every group, so that for every v, degT (v) ≤ dv, and among such trees, find the one with minimum cost. We give an (O(log2 n);O(log2 n)) bicriteria approximation ratio the WDB-GST problem on trees inputs. This implies an O(log2 n) approximation for DB-GST on tree inputs. The previously best known ratio for the WDB-GST problem on trees was a bicriteria (O(log2 n);O(log3 n)) (the approximation for the degrees is O(log3 n)) ratio which is folklore. Getting O(log2 n) approximation requires careful case analysis and was not known. Our result for WDB-GST generalizes the classic result of [6] that approximated the cost within O(log2 n), but did not approximate the degree. Our main result is an O(log3 n) approximation for the DB-GST problem on graphs with Bounded Treewidth. The DB-Steiner k-tree problem is given an undirected graph G(V; E), a collection of terminals S ⊆ V , and a number k, find a tree T (V 0;E0) that contains at least k terminals, of minimum maximum degree.
    [Show full text]
  • Planar K-Path in Subexponential Time and Polynomial Space
    Planar k-Path in Subexponential Time and Polynomial Space Daniel Lokshtanov1, Matthias Mnich2, and Saket Saurabh3 1 University of California, San Diego, USA, [email protected] 2 International Computer Science Institute, Berkeley, USA, [email protected] 3 The Institute of Mathematical Sciences, Chennai, India, [email protected] Abstract. In the k-Path problem we are given an n-vertex graph G to- gether with an integer k and asked whether G contains a path of length k as a subgraph. We give the first subexponential time, polynomial space parameterized algorithm for k-Path on planar graphs, and more gen- erally, on H-minor-free graphs. The running time of our algorithm is p 2 O(2O( k log k)nO(1)). 1 Introduction In the k-Path problem we are given a n-vertex graph G and integer k and asked whether G contains a path of length k as a subgraph. The problem is a gen- eralization of the classical Hamiltonian Path problem, which is known to be NP-complete [16] even when restricted to planar graphs [15]. On the other hand k-Path is known to admit a subexponential time parameterized algorithm when the input is restricted to planar, or more generally H-minor free graphs [4]. For the case of k-Path a subexponential time parameterized algorithm means an algorithm with running time 2o(k)nO(1). More generally, in parameterized com- plexity problem instances come equipped with a parameter k and a problem is said to be fixed parameter tractable (FPT) if there is an algorithm for the problem that runs in time f(k)nO(1).
    [Show full text]
  • Hypergraphic LP Relaxations for Steiner Trees
    Hypergraphic LP Relaxations for Steiner Trees Deeparnab Chakrabarty Jochen K¨onemann David Pritchard University of Waterloo ∗ Abstract We investigate hypergraphic LP relaxations for the Steiner tree problem, primarily the par- tition LP relaxation introduced by K¨onemann et al. [Math. Programming, 2009]. Specifically, we are interested in proving upper bounds on the integrality gap of this LP, and studying its relation to other linear relaxations. First, we show uncrossing techniques apply to the LP. This implies structural properties, e.g. for any basic feasible solution, the number of positive vari- ables is at most the number of terminals. Second, we show the equivalence of the partition LP relaxation with other known hypergraphic relaxations. We also show that these hypergraphic relaxations are equivalent to the well studied bidirected cut relaxation, if the instance is qua- sibipartite. Third, we give integrality gap upper bounds: an online algorithm gives an upper . bound of √3 = 1.729; and in uniformly quasibipartite instances, a greedy algorithm gives an . improved upper bound of 73/60 =1.216. 1 Introduction In the Steiner tree problem, we are given an undirected graph G = (V, E), non-negative costs ce for all edges e E, and a set of terminal vertices R V . The goal is to find a minimum-cost tree ∈ ⊆ T spanning R, and possibly some Steiner vertices from V R. We can assume that the graph is \ complete and that the costs induce a metric. The problem takes a central place in the theory of combinatorial optimization and has numerous practical applications. Since the Steiner tree problem is NP-hard1 we are interested in approximation algorithms for it.
    [Show full text]
  • RNC-Approximation Algorithms for the Steiner Problem
    RNCApproximation Algorithms for the Steiner Problem Hans Jurgen Promel Institut fur Informatik Humb oldt Universitat zu Berlin Berlin Germany proemelinformatikhuberlinde Angelika Steger Institut fur Informatik TU Munc hen Munc hen Germany stegerinformatiktumuenchende Abstract In this pap er we present an RN C algorithm for nding a min imum spanning tree in a weighted uniform hyp ergraph assuming the edge weights are given in unary and a fully p olynomial time randomized approxima tion scheme if the edge weights are given in binary From this result we then derive RN C approximation algorithms for the Steiner problem in networks with approximation ratio for all Intro duction In recent years the Steiner tree problem in graphs attracted considerable attention as well from the theoretical p oint of view as from its applicabili ty eg in VLSIlayout It is rather easy to see and has b een known for a long time that a minimum Steiner tree spanning a given set of terminals in a graph or network can b e approximated in p olyno mial time up to a factor of cf eg Choukhmane or Kou Markowsky Berman After a long p erio d without any progress Zelikovsky Berman and Ramaiyer Zelikovsky and Karpinski and Zelikovsky improved the approximation factor step by step from to In this pap er we present RN C approximation algorithm for the Steiner problem with approximation ratio for all The running time of these algo rithms is p olynomial in and n Our algorithms also give rise to conceptually much easier and faster though randomized
    [Show full text]
  • The Euclidean Steiner Problem
    The Euclidean Steiner Problem Germander Soothill April 27, 2010 Abstract The Euclidean Steiner problem aims to find the tree of minimal length spanning a set of fixed points in the Euclidean plane while allowing the addition of extra (Steiner) points. The Euclidean Steiner tree problem is NP -hard which means there is currently no polytime algorithm for solving it. This report introduces the Euclidean Steiner tree problem and two classes of algorithms which are used to solve it: exact algorithms and heuristics. Contents 1 Introduction 3 1.1 Context and motivation . .3 1.2 Contents . .3 2 Graph Theory 4 2.1 Vertices and Edges . .4 2.2 Paths and Circuits . .5 2.3 Trees . .5 2.4 The Minimum Spanning Tree Problem . .6 2.4.1 Subgraphs . .6 2.4.2 Weighted Graphs . .7 2.4.3 The Minimum Spanning Tree Problem . .7 2.4.4 Two Algorithms: Prim's and Kruskal's . .7 2.4.5 Cayley's Theorem..................................9 2.5 Euclidean Graph Theory . 10 2.5.1 Euclidean Distance . 10 2.5.2 Euclidean Graphs . 10 2.5.3 The Euclidean Minimum Spanning Tree Problem . 11 2.6 Summary . 11 3 Computational Complexity 12 3.1 Computational Problems . 12 3.1.1 Meaning of Computational Problem . 12 3.1.2 Types of Computational Problem . 12 3.1.3 Algorithms...................................... 13 3.2 Complexity Theory . 13 3.2.1 Measuring Computational Time . 13 3.2.2 Comparing Algorithms . 14 3.2.3 Big O Notation . 14 3.2.4 Algorithmic Complexity . 15 3.2.5 Complexity of Prim's and Kruskal's algorithms .
    [Show full text]
  • Robust Algorithms for TSP and Steiner Tree
    Robust Algorithms for TSP and Steiner Tree Arun Ganesh Department of Electrical Engineering and Computer Sciences, University of California at Berkeley, CA, USA [email protected] Bruce M. Maggs Department of Computer Science, Duke University, Durham, NC, USA Emerald Innovations, Cambridge, MA, USA [email protected] Debmalya Panigrahi Department of Computer Science, Duke University, Durham, NC, USA [email protected] Abstract Robust optimization is a widely studied area in operations research, where the algorithm takes as input a range of values and outputs a single solution that performs well for the entire range. Specifically, a robust algorithm aims to minimize regret, defined as the maximum difference between the solution’s cost and that of an optimal solution in hindsight once the input has been realized. For graph problems in P, such as shortest path and minimum spanning tree, robust polynomial-time algorithms that obtain a constant approximation on regret are known. In this paper, we study robust algorithms for minimizing regret in NP-hard graph optimization problems, and give constant approximations on regret for the classical traveling salesman and Steiner tree problems. 2012 ACM Subject Classification Theory of computation → Routing and network design problems Keywords and phrases Robust optimization, Steiner tree, traveling salesman problem Digital Object Identifier 10.4230/LIPIcs.ICALP.2020.54 Category Track A: Algorithms, Complexity and Games Related Version https://arxiv.org/abs/2005.08137 Funding Arun Ganesh: Supported in part by NSF Award CCF-1535989. Bruce M. Maggs: Supported in part by NSF Award CCF-1535972. Debmalya Panigrahi: Supported in part by NSF grants CCF-1535972, CCF-1955703, an NSF CAREER Award CCF-1750140, and the Indo-US Virtual Networked Joint Center on Algorithms under Uncertainty.
    [Show full text]
  • The Steiner Tree Problem
    Steiner Tree Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij 1 The Steiner Tree Problem Let G = (V,E) be an undirected graph, and let N µ V be a subset of the terminals. A Steiner tree is a tree T = (V’,E’) in G connecting all terminals in N V’ µ V, E’ µ E, N µ V’ We use k=|N|. Streiner tree problem: Given: an undirected graph G = (V,E), a terminal set N µ V, and an integer t. Question: is there a Steiner tree consisting of at most t edges in G. 2 My Last Lecture Steiner Tree. Interesting problem that we have not seen yet. Introduction Variants / applications NP-Completeness Polynomial time solvable special cases. Distance network. Solving Steiner tree with k-terminals in O*(2k)-time. Uses inclusion/exclusion. Algorithm invented by one of our former students. 3 Steiner Tree – Algorithms and Networks INTRODUCTION 4 Variants and Applications Applications: Wire routing of VLSI. Customer’s bill for renting communication networks. Other network design and facility location problems. Some variants: Vertices are points in the plane. Vertex weights / edge weights vs unit weights. Different variants for directed graphs. 5 Steiner Tree is NP-Complete Steiner Tree is NP-Complete. Membership of NP: certificate is a subset of the edges. NP-Hard: reduction from Vertex Cover. Take an instance of Vertex Cover, G=(V,E), integer k. Build G’=(V’,E’) by subdividing each edge. Set N = set of newly introduced vertices. All edges length 1. Add one superterminal connected to all vertices.
    [Show full text]
  • On the Edge Capacitated Steiner Tree Problem Arxiv:1607.07082V1
    On the edge capacitated Steiner tree problem C´edricBentz(1), Marie-Christine Costa(2), Alain Hertz(3) (1) CEDRIC, CNAM, 292 rue Saint-Martin, 75003 Paris, France (2) ENSTA Paris-Tech, University of Paris-Saclay (and CEDRIC CNAM), 91762 Palaiseau Cedex, France (3) GERAD and D´epartement de math´ematiqueset g´enieindustriel, Polytechnique Montr´eal,Canada July 26, 2016 Abstract Given a graph G = (V; E) with a root r 2 V , positive capacities fc(e)je 2 Eg, and non-negative lengths f`(e)je 2 Eg, the minimum-length (rooted) edge capacitated Steiner tree problem is to find a tree in G of minimum total length, rooted at r, spanning a given subset T ⊂ V of vertices, and such that, for each e 2 E, there are at most c(e) paths, linking r to vertices in T , that contain e. We study the complexity and approximability of the problem, considering several relevant parameters such as the number of terminals, the edge lengths and the minimum and maximum edge capacities. For all but one combinations of assumptions regarding these parameters, we settle the question, giving a complete characterization that separates tractable cases from hard ones. The only remaining open case is proved to be equivalent to a long-standing open problem. We also prove close relations between our problem and classical Steiner tree as well as vertex-disjoint paths problems. 1 Introduction The graphs in this paper can be directed or undirected. Consider a connected graph G = (V; E) with a set T ⊂ V of terminal vertices, or simply terminals, and a length (or cost) function ` : E ! Q+.
    [Show full text]
  • Exact Algorithms for Steiner Tree
    Exact Algorithms for Steiner Tree Ondra Such´y Faculty of Information Technology, Czech Technical University in Prague, Prague, Czech Republic. [email protected] New Developments in Exact Algorithms and Lower Bounds, IIT Delhi, 13th December 2014 Ondra Such´y (FIT CTU Prague) Exact Algorithms for Steiner Tree IIT Delhi, 13.12.2014 1 / 41 Outline 1 Problem introduction and classical results 2 Exact algorithms for the general undirected case 3 Directed variants and algorithms for them 4 Algorithms for Steiner problems in sparse graphs Ondra Such´y (FIT CTU Prague) Exact Algorithms for Steiner Tree IIT Delhi, 13.12.2014 2 / 41 Steiner Tree T Steiner Tree Given: Undirected graph G = (V ; E) and a set T V ⊆ Find: A minimun size tree H = (V 0; E 0) subgraph of G such that T V 0. ⊆ Ondra Such´y (FIT CTU Prague) Exact Algorithms for Steiner Tree IIT Delhi, 13.12.2014 3 / 41 Steiner Tree T Steiner Tree Given: Undirected graph G = (V ; E) and a set T V ⊆ Find: A minimun size tree H = (V 0; E 0) subgraph of G such that T V 0. ⊆ Ondra Such´y (FIT CTU Prague) Exact Algorithms for Steiner Tree IIT Delhi, 13.12.2014 3 / 41 A minimum size: Vertex cardinality: V 0 or rather S := V 0 T (default) Edge cardinality: Ej0 =j V 0 1,j thisj isj equaln toj the above j j j j − Node weighted: Given w : V N minimize w(S) ! 0 Edge weighted: Given w : E N minimize w(E ) ! Steiner Tree (default decision variant) Given: Undirected graph G = (V ; E), a set T V , and k N ⊆ 2 Question: Is there a tree H = (V 0; E 0), subgraph of G, such that T V 0 and V 0 T k.
    [Show full text]