# How to find Steiner minimal trees in euclidean*d*-space

- Received:
- Revised:

DOI: 10.1007/BF01758756

- Cite this article as:
- Smith, W.D. Algorithmica (1992) 7: 137. doi:10.1007/BF01758756

- 53 Citations
- 219 Downloads

## Abstract

This paper has two purposes. The first is to present a new way to find a Steiner minimum tree (SMT) connecting*N* sites in*d*-space,*d* >- 2. We present (in Appendix 1) a computer code for this purpose. This is the only procedure known to the author for finding Steiner minimal trees in*d*-space for*d* > 2, and also the first one which fits naturally into the framework of “backtracking” and “branch-and-bound.” Finding SMTs of up to*N* = 12 general sites in*d*-space (for any*d*) now appears feasible.

We tabulate Steiner minimal trees for many point sets, including the vertices of most of the regular and Archimedean*d*-polytopes with <- 16 vertices. As a consequence of these tables, the Gilbert-Pollak conjecture is shown to be false in dimensions 3–9. (The conjecture remains open in other dimensions; it is probably false in all dimensions*d* with*d* ≥ 3, but it is probably true when*d* = 2.)

The second purpose is to present some new theoretical results regarding the asymptotic computational complexity of finding SMTs to precision ɛ.

We show that in two-dimensions, Steiner minimum trees may be found exactly in exponential time O(*C*^{N}) on a real RAM. (All previous provable time bounds were superexponential.) If the tree is only wanted to precision ɛ, then there is an (*N*/ɛ)^{O(√N)}-time algorithm, which is subexponential if 1/ɛ grows only polynomially with*N*. Also, the*rectilinear* Steiner minimal tree of*N* points in the plane may be found in*N*^{O(√N)} time.

J. S. Provan devised an O(*N*^{6}/ɛ^{4})-time algorithm for finding the SMT of a convex*N*-point set in the plane. (Also the rectilinear SMT of such a set may be found in O(*N*^{6}) time.) One therefore suspects that this problem may be solved exactly in polynomial time. We show that this suspicion is in fact true—if a certain conjecture about the size of “Steiner sensitivity diagrams” is correct.

All of these algorithms are for a “real RAM” model of computation allowing infinite precision arithmetic. They make no probabilistic or other assumptions about the input; the time bounds are valid in the worst case; and all our algorithms may be implemented with a polynomial amount of space. Only algorithms yielding the*exact* optimum SMT, or trees with lengths ≤ (1 + ɛ) × optimum, where ɛ is arbitrarily small, are considered here.