On Steiner trees and minimum spanning trees in hypergraphs

https://doi.org/10.1016/S0167-6377(02)00185-2Get rights and content

Abstract

The bottleneck of the state-of-the-art algorithms for geometric Steiner problems is usually the concatenation phase, where the prevailing approach treats the generated full Steiner trees as edges of a hypergraph and uses an LP-relaxation of the minimum spanning tree in hypergraph (MSTH) problem. We study this original and some new equivalent relaxations of this problem and clarify their relations to all classical relaxations of the Steiner problem. In an experimental study, an algorithm of ours which is designed for general graphs turns out to be an efficient alternative to the MSTH approach.

Introduction

The Steiner problem is the problem of connecting a set of terminals (vertices in a weighted graph or points in some metric space) at minimum cost. This is a classical NP-hard problem with many important applications (see [2]).

For geometric Steiner problems, an approach based on full Steiner trees has been successful [13]. In geometric Steiner problems, a set of points (in the plane) is to be connected at minimum cost according to some geometric distance metric. The resulting interconnection, a Steiner minimal tree (SMT), can be decomposed into its full Steiner trees by splitting its inner terminals (a full Steiner tree (FST) is a tree with no inner terminals, i.e., all terminals have degree 1). The FST approach consists of two phases. In the first phase, the FST generation phase, a set of FSTs is generated that is guaranteed to contain an SMT. In the second phase, the FST concatenation phase, one chooses a subset of the generated FSTs whose concatenation yields an SMT. Although there are point sets that give rise to an exponential number of FSTs in the first phase, usually only a linear number of FSTs are generated, and empirically the bottleneck of this approach has usually been the second phase, where originally methods like backtracking or dynamic programming have been used. A breakthrough occurred as Warme [12] observed that FST concatenation can be reduced to finding a minimum spanning tree in a hypergraph whose vertices are the terminals and whose hyperedges correspond to the generated FSTs. Although the minimum spanning tree in hypergraph (MSTH) problem is NP-hard, a branch-and-cut approach based on the linear relaxation of an integer programming formulation of this problem has been empirically successful.

In this paper, we first compare the mentioned relaxation to some other, new relaxations of the MSTH problem. We show that all these relaxations are equivalent (yield the same value), and thereby refute a conjecture in the literature that a (straightforward) directed version of the original relaxation might be stronger. Then, we compare these relaxations with other relaxations which are based directly on formulations of the Steiner problem in graphs. Note that the union of (the edge sets of) the FSTs generated in the first phase is a graph and the FST concatenation problem reduces to solving the classical Steiner problem in this graph. In [6], we already constructed a hierarchy of all classical and some new relaxations of the Steiner problem; here we clarify the place of the MSTH-based relaxations in this hierarchy. Finally, we perform an experimental study, both on the quality of the relaxations and on FST concatenation methods based on them, leading to the result that a program package of ours [7], [8], [10], which is designed for general networks, is an efficient alternative to the MSTH-based method. Although the approach used by us was known, previous attempts had led to the assumption that it is unlikely to become competitive to the MSTH approach [12].

The Steiner problem in networks can be stated as follows (see [2] for details): Given an (undirected, connected) network G=(V,E,c) (with vertices V={v1,…,vn}, edges E and edge weights ce>0 for all eE) and a set R,∅≠R⊆V, of required vertices (or terminals), find a minimum weight tree in G that spans R (an SMT). If we want to stress that vi is a terminal, we will write zi instead of vi.

We also look at a reformulation of this problem using the (bi-)directed version of the graph, because it yields stronger relaxations: Given G=(V,E,c) and R, find a minimum weight arborescence in G=(V,A,c) (A≔{[vi,vj],[vj,vi]|(vi,vj)∈E}, c defined accordingly) with a terminal (say z1) as the root that spans R1R⧹{z1}.

A Steiner tree T for a subset SR is called an FST if all terminals in S are leaves of T. Let F be the set of FSTs constructed in the FST generation phase. By identifying each FST TF with its set of terminals, we get a hypergraph H=(R,F). For each FST T, let cT be the sum of its edge weights. Any FST T can be rooted from each of its k leaves, leading to a set of directed FSTs {T1,…,Tk}. We denote the set of directed FSTs generated from F in this way by F. In the following, we use the term FST both for the tree T and the corresponding hyperedge in H, the meaning should be clear from the context.

A cut in G=(V,A,c) (or in G=(V,E,c)) is defined as a partition C={W̄,W} of V (∅⊂W⊂V;V=ẆW̄). We use δ(W) to denote the set of arcs [vi,vj]∈A with viW̄ and vjW. For simplicity, we write δ(vi) instead of δ({vi}). The sets δ+(W) and, for the undirected version, δ(W) are defined similarly. The corresponding notions for a hypergraph H=(R,F) are defined similarly; here we use Δ instead of δ (for example, Δ(S)≔{T∈F|T∩S≠∅,T∩S̄≠∅}).

For every integer program P, LP denotes the linear relaxation of P. For any (integer or linear) program Q, v(Q) denotes the value of an optimal solution for Q. We compare relaxations using the predicates equivalent and (strictly) stronger: We call a relaxation R1 stronger than a relaxation R2 if the optimal value of R1 is not less than that of R2 for all instances of the problem. If R2 is also stronger than R1, we call them equivalent, otherwise we say that R1 is strictly stronger than R2. If neither is stronger than the other, they are incomparable.

Section snippets

MSTH: Formulations and relaxations

We begin with a formulation of Warme [12] for the MSTH problemPFST:T∈FcTXTmin,T∈F(|T|−1)XT=|R|−1,T,T∩S≠∅(|T∩S|−1)XT⩽|S|−1(∅≠S⊂R),XT∈{0,1}(T∈F).

Lemma 1

Any feasible solution of PFST describes a spanning tree for the hypergraph (R,F) and vice versa.

Proof

A proof (with slightly different syntax) is given in [12]. 

Using the directed counterpart of F and following the same line as for minimum spanning trees for usual graphs in [5], we get the following integer program:PFST:TFcTxTmin,TF(|T|−1)xT

Relation to the relaxations of the Steiner problem in graphs

The directed cut formulation of the Steiner problem was stated for the first time in [15] (the undirected version was already introduced by Aneja [1]):PC:a∈Acayamin,a∈δ(S)ya⩾1(z1∉S,S∩R1≠∅),ya∈{0,1}(a∈A).

Lemma 4

LPFSC is (strictly) stronger than LPC.

Proof

Let x be an optimal solution of LPFSC. For each arc aA that is a part of directed FSTs T1,…,Tl, let ya≔xT1+⋯+xTl. It is easy to verify that y is feasible for LPC and yields the same value as v(LPFSC). The following example shows that v(LPFSC) can

Experimental study

In this section, we compare the empirical behaviour of the MSTH-based relaxation LPFST and an exact algorithm based on it with the classical directed cut relaxation LPC and an exact algorithm which uses this relaxation. For the first approach, we use GeoSteiner 3.1 [14], a software package developed by Warme, Winter and Zachariasen for solving Euclidean and rectilinear Steiner problems and the MSTH problem. GeoSteiner is by far the most efficient code for these problems. Note also that the

Concluding remarks

The main subject of this paper has been studying, both theoretically and empirically, different approaches for the second phase of the FST method for Steiner problems. The experimental results show the potential of our program STEINER for this phase. But it should not be conceived as a competitor for GeoSteiner for solving geometric Steiner problems from scratch; GeoSeiner remains the most efficient package for these problems. Considering the second phase, a combination of the two approaches

References (15)

  • T. Polzin et al.

    A comparison of Steiner tree relaxations

    Discrete Appl. Math.

    (2001)
  • T. Polzin et al.

    Improved algorithms for the Steiner problem in networks

    Discrete Appl. Math.

    (2001)
  • Y.P. Aneja

    An integer linear programming approach to the Steiner problem in graphs

    Networks

    (1980)
  • F.K. Hwang et al.

    The Steiner Tree Problem

    (1992)
  • T. Koch et al.

    Solving Steiner tree problems in graphs to optimality

    Networks

    (1998)
  • T. Koch, A. Martin, SteinLib, http://elib.zib.de/steinlib/steinlib.php,...
  • T.L. Magnanti, L.A. Wolsey, Optimal trees, in: M.O. Ball, et al. (Eds.), Handbooks in Operations Research and...
There are more references available in the full text version of this article.

Cited by (544)

View all citing articles on Scopus
View full text