Preprint
Article

This version is not peer-reviewed.

Steiner Tree Approximations in Graphs and Hypergraphs

A peer-reviewed version of this preprint was published in:
Algorithms 2026, 19(3), 232. https://doi.org/10.3390/a19030232

Submitted:

05 February 2026

Posted:

20 February 2026

You are already at the latest version

Abstract
The construction of partial minimum spanning trees being NP-hard, several heuristic algorithms have already been formulated. Many of these heuristics (such as Kruskal's) use shortest paths to connect the components of the tree. In this work, we present an approximate construction algorithm for the minimum Steiner tree (the optimal tree for diffusion multicast). This construction is based on graph-related structures more advantageous than shortest paths. The algorithm uses connections like simple Steiner trees if necessary. These simple trees can be represented by hyperedges. A hyper metric closure can also be used.
Keywords: 
;  ;  ;  ;  ;  ;  

2. Hypergraphs and Steiner Trees

To solve the full Steiner tree concatenation problem in Euclidean Steiner problem, Warme proposed a hypergraph-based model [15,16]. That is, to create an optimal Steiner tree in the space from discovered full components on the set of goints to connect, the full component can be considered as hyper-edges. Then the final Steiner tree is computed by solving the Minimum Spanning Tree problem in a hypergraph. To find the Minimum Spanning Tree in a hypergraph is NP-hard, and Warme gives an elegant proof.
Note that any Steiner tree in graphs can be partitioned into a set of edge-disjoint but connected full components by splitting at internal terminals. Each full component can correspond to a hyper-edge and the model gives a hypergraph presenting the Steiner tree problem.
In [17] the author indicate that the problem is related to the MST problem in weighted 3-uniform hypergraphs and give a fully polynomial randomized approximation scheme.
A Steiner tree representation of the hyperedges is considered as the edge representation of a hypergraph in [18]. To solve the Steiner Tree problem, the metric closure (the distance graph) can be used as it is also indicated in the chapter [19]. This last chapter gives an analysis and important relations between the Steiner Tree problem in graphs and the Minimum Spanning Tree problem in hypergraphs. A branch-and-cut method based on the linear relaxation of an integer program of the problem has been proposed.
Paper [20] compares several relaxations of the problem based on hypergraphs as well as relaxations based on the formulation of the Steiner problem in graphs. It indicates that the union of trees linked by the hyperedges is a graph, and that the concatenation must be reduced by solving the classical Steiner problem in this graph.
Small Steiner trees corresponding to hyperedges can be used as connections between trees, and also to connect members to trees covering a group. The first propositions can be found in [21,22]. These concepts will be developed in the next of this study.

3. Bases of the Proposed Solutions

The following property of optimal Steiner trees allows approximate trees to be constructed by concatenating smaller components. These components are not obligatory full components.
Suboptimality of Steiner trees
Let T = ( V T , E , T ) be a minimum Steiner tree of the node set M. Let S T = ( V S , E , S ) be a subtree of T delimited by the leaves L S V T . Let M S = V S M be the set of nodes in S T belonging to M. S T is a minimum Steiner tree of the set L S M S .
The proof is trivial. Let us suppose that S T is not minimal to cover L S M S , and another minimal tree S T exists. T can not be minimal (replacing S T by S T a smaller Steiner tree is obtained).
This property can be the base of the construction of Steiner trees in the generalized metric closure. The problem is that the good decomposition of the optimal Steiner tree into smaller optimal Steiner trees is not known. The concatenation of optimal small trees does not result in an optimal tree. For instance, the set sof shortest paths (small Steiner trees) covering M does not give an optimum. Figure 3 illustrates the case. The minimum Steiner tree of { a , b , c , d } is the tree T ( a , b , f , g , c , d ) with length 32, and this tree does not contains shortest paths between the members nor the minimum Steiner tree T ( a , b , e , d ) .
Greedy algorithms are known to create approximate Stienr trees by merging/ adding the nodes in M s toa tree. The heuristic of Takahashi and Matsuyama and the algorthm of Kruskal are good examples: members of M are added or connected by shortest paths.
In previous studies, we proposed the modification of these algorithm [21,22]. Instead of shortest paths, small Steiner trees can be used as connections.

3.1. Connections and Distances

The connection of trees by trees permits the revision of the "distance" between the trees.
Figure 5 illustrates a simple case: a group M of nodes is given by the filled nodes, Two separated trees, T 1 and T 2 , cover two subsets of M. Our goal is the "optimal" unification of the two trees to obtain a common partial spanning tree of minimal length, if possible.
To address the problem of optimally connecting two trees to obtain a spanning tree, different connections / ” distances” between the trees can be defined.
Optimal connection of a node n to a Steiner tree T [22]
Let T be a Steiner tree of the group M. Let C ( l ) be a Steiner tree with l leaves having n as leaf and let the other l 1 leaves of C ( l ) be nodes in T such that C ( l ) and T are edge disjoint. Let G ( T , C ( l ) ) the union of T and C ( l ) . In general, G ( T , C ( l ) ) is not a tree, and can contain cycles. Let D ( T , C ( l ) ) be the set of edges with maximal length that can be deleted from T without loss of connectivity of M { n } and let T ( T , C ( l ) ) the tree after removing D ( T , C ( l ) ) from T.
The tree C * ( l ) is an optimal connection of l leaves between n and T if the length of T ( T , C * ( l ) ) is minimal. We call this length the ( l 2 ) -distance of n from T (in this way, the usual distance is the 0-distance).
The optimal connection of n and T is obtained with l * leaves
l e n g t h T ( T , C * ( l * ) ) = min l l e n g t h T ( T , C * ( l ) )
The complexity of the computation of the optimal connection depends on the size of the concerned Steiner tree. If the tree has n T nodes, the l 1 leaves of C ( l ) can be placed in n T l 1 different ways on the tree.
This kind of connections and distances can be defined to connect to Steiner trees.
Optimal connection between two Steiner trees
Here also, the objective is to create a unique Steiner tree, when two distinct Steiner trees are given to cover two subsets of the nodes in M. Let T 1 and T 2 two Steiner tree Steiner trees covering M 1 and M 2 respectively; M = M 1 M 2 . Let C ( l ) be a Steiner tree with l leaves such that its leaves are in T 1 and T 2 . Let L 1 and t 2 the set of leaves of C ( l ) in T 1 and T 2 respectively, and L 1 , and L 2 . Moreover C ( l ) , T 1 and T 2 are edge disjoint.
Let G ( T 1 , T 2 , C ( l ) ) the union of T 1 , T 2 and C ( l ) .
Let D ( T i , C ( l ) ) , i = 1 , 2 be the set of edges with maximal length that can be deleted from T i without loss of connectivity between the members of M i . let T ( T 1 , T 2 , C ( l ) ) the tree after removing D ( T i , C ( l ) ) from T i , i = 1 , 2 .
The tree C * ( l ) is an optimal connection of l leaves between T 1 and T 2 if the length of T ( T 1 , T 2 , C * ( l ) ) is minimal.
We call this length the (l-2)-distance between two Steiner tree. Following this concept, the usual distance between two trees is the 0-distance. The 1-distance is obtained using a 3-tree as connection, etc. These connections are illustrated by Figure 5.
The absolute optimal connection is not limited to a specific number of leaves. This connection of T 1 and T 2 is obtained with l * leaves
l e n g t h T ( T 1 , T 2 , C * ( l * ) ) = min l l e n g t h T ( T 1 , T 2 , C * ( l ) )
The complexity of the computation of the optimal connection between the Steiner trees depends on the size of the trees. Let us suppose that the trees have n T 1 and n T 2 nodes. The l leaves of C ( l ) can be placed in n T 1 + n T 2 l different ways on the tree. There is no connection, when all leaves are in the same tree. This is produced in n T 1 l + n T 2 l cases (supposing that l is less than n T 1 and n T 2 ). The number of different connections is n T 1 + n T 2 l ( n T 1 l + n T 2 l )
For each connection, a set of edges can be deleted from the trees. Trivially, the sets D ( T i , C ( l ) ) of edges that can be deleted from the mentioned Steiner trees form forests.
Figure 4 shows a Steiner tree T covering the nodes of a set M. This tree should be connected to other members via a tree C and the result should be a tree. Trivially, to avoid cycles, a part of T should be removed. This part is in the subtree delimited by the leaves of C and corresponds to a forest. The following lemma gives a criterion to select the edges to remove.
Lemma 1.
Let T i = ( V i , E i ) a Steiner tree for M i V i , and C a connected tree. τ V i is the leaves of C in T i . Let A be a tree with maximum cost such that T i A contains at least one node from τ (a leaf of C). If T i is connected to another elements via C, there is a forest with maximum cost that can be removed from T i and contains A.
Figure 5. Connections with k-trees and related distances between two Steiner trees
Figure 5. Connections with k-trees and related distances between two Steiner trees
Preprints 197748 g005

4. Hypergraph Model and Metric Closure

To illustrate and handle Steiner trees, a hypergraph based model can be used. The model is more detailed in [23].
This model can be very usefull, if some parts, sub-trees of a desired Steiner tree of a group M are known or precomputed. The objective is to cover the set of group nodes M by a unique tree using the limited size known components.
Hyperedge A component (a tree) can be represented by a hyperedge. Let T s be a known part (a subtree) of a Steiner tree. This component can be represented by a hyperedge e s and let the cost of T s considered as the cost c ( e S ) of e S .
Coverage A tree T is covered by a set of hyperedges, iff all of the nodes of the tree belong to at most one hyperedge.
Connectivity Two hyperedges are connected, if they share at least one common node.
To ensure connectivity between the nodes using a set of hyperedges, the hyperedges must be connected; there must be a path connecting each node to the others via the set of hyperedges.
In special cases, the coverage of a tree can be a chain of hyperedges (a path) or a hyper-tree.
Cost of a coverage The cost of a coverage is the sum of the costs of the hyperedges that compose it.
Lemma 1.
Let S ( T ) = { e k , k = 1 , . . . , K } be a set of hyperedges covering a tree T. The cost of S ( T ) is at least the cost of T.
c ( S ( T ) ) = k = 1 , . . , K c ( e k ) c ( T )
Proof. 
Each hyperedge corresponds to a sub-tree of T. All of the nodes in T are covered. Suppose that the cost of T is greater than the sum of the costs of the hyperedges. In this case, there is at least an edge of T which is not included in any hyperedge. The connection between the nodes of T by the hyperedges is not complete. The contradiction is trivial. □
Often, to find good coverage for sets of nodes, metric closure graphs can be used Usually, the metric closure contains the distances between the nodes. The distance of two nodes is the ”cost” of the shortest path between them. Trivially, a shortest path is a hyperedge of size 2 (a 2-tree).
The metric closure can be generalized on the basis of larger (but limited) size hyperedges.
Generalized metric closure, k-limited metrical closure Let M be a set of nodes in a connected graph. Let k < m = | M | . The set of hyperedges of size limited by k forms a k-limited metric closure. In this hypergraph, the hyper-edges are k-limited; the correspondig trees are at most k-trees.
The generalized metric closure hypergraph contains the usual metric closure (the shortest paths, but also all of the hyperedges based on triplets of nodes, etc. Figure 6 illustrates some hyperedges in the generalized metric closure of a small group.
We suppose that the intersection of the hyperedges belonging to a coverage of a tree T contains only one node per peer. To minimize the redundancies between the trees associated with the hyperedges, this condition is necessary. Let us suppose that the intersection of two hyperedges contains several nodes. In this case, sub-graphs delimited by this set of nodes are present in the trees and result useless cost for a good coverage.
The optimal coverage using k-limited components can be computed as follows.
To find the coverage with minimal cost for an arbitrary value 2 < k < m , different exact algorithms can be found. The following procedure has two main steps:
1.
For the set of nodes M, construct the k-limited hyper metric closure H M C . For the integer values i from 2 to k, compute all i-tuples. Associate the cost of corresponding sub-trees with the hyperedges. Remember that, for a given value i, there are m i tuples to create.
2.
Find the coverage of M with minimal cost using the best combination of the hyperedges. To do this, all sets of connected hyperedges covering M must be enumerated, and the best cost set must be selected.
This procedure does not allow us to find the minimum cost Steiner tree, but the best tree that can be built using k-limited components. The steps of this algorithm to find this good coverage are very expensive. A greedy algorithm without guarantees regarding costs can be created as follows:
1.
Starting from an arbitrary node in M, a first subset of M is determined: the k 1 nearest nodes in M are added to the first one to form a set S 1 . A first hyperedge e S 1 is then created on the set S 1 and the Steiner tree covering S 1 is associated with it.
2.
At each step of the suite, the tree corresponding to the last hyperedge is examined. To create a new connected hyperedge, a leaf from this hyperedge is selected, and the k 1 nearest not yet covered nodes of M are added to this one to form the next hyperedge. Since one leaf of the previous hyperedge belongs to the new hyperedge, a chain is created. The construction ends when all nodes of M are covered.
Note that the best cost solution is not necessarily a chain, but can also be a tree. Furthermore, regarding chains, the choice of the start point and the subsequent continuations also influence the cost. Greedy decisions do not guarantee an optimal cost chain either. As indicated, the problem is NP-hard.
A performance analysis of the k-limited approximations of Steiner trees based on the hyper metric closure can also be found in [23].

5. Conclusions

In this work, an overview of the most known heuristics to solve the Steiner problem in graphs is given. A good part of the algorithms is based on the shortest paths. In some cases, the constructed trees are improved by adding small components, partial spanning trees. In these cases, the revision of the edge set is necessary, some edges can be removed.
Recently, hypergraph based construction have been proposed. Partial spanning trees can be represented by hyperedges. They can be concatenated using greedy algorithms, or a hyper metric closure can be built and approximate solution can be foind using it.
The construction of efficient heuristics for the aformentioned NP-hard optimization is a challenging goal.

References

  1. Hwang, F.; Richards, D.; Winter, P. The Steiner tree problem . In Annals of discrete mathematics; North-Holland: Amsterdam, 1992; p. 53. [Google Scholar]
  2. Kruskal, J.B. On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Proceedings of the American Mathematical Society 1956, 7, 48–50. [Google Scholar] [CrossRef]
  3. Prim, R.C. Shortest connection networks and some generalizations. The Bell System Technical Journal 1957, 36, 1389–1401. [Google Scholar] [CrossRef]
  4. Takahashi, H.; Matsuyama, A. An approximate solution for the Steiner problem in graphs. Math. Japonica 1981, 24. [Google Scholar]
  5. Kou, L.; Markowsky, G.; Berman, L. A fast algorithm for Steiner trees. Acta Inform. 1981, 15, 141–145. [Google Scholar] [CrossRef]
  6. Zelikovsky, A. An 11/6-Approximation Algorithm for the Steiner Problem on Graphs. In Fourth Czechoslovakian Symposium on Combinatorics, Graphs and Complexity;Annals of Discrete Mathematics; Neŝetril, J., Fiedler, M., Eds.; Elsevier, 1992; Vol. 51, pp. 351–354. [Google Scholar] [CrossRef]
  7. Zelikovsky, A. Better approximation bounds for the network and Euclidean Steiner tree problems. Technical report, University of Virginia Charlottesville, VA, United States, 1996. [Google Scholar]
  8. Karpinski, M.; Zelikovsky, A. New Approximation Algorithms for the Steiner Tree Problems. Journal of Combinatorial Optimization 1997, 1, 47–65. [Google Scholar] [CrossRef]
  9. Du, D.Z.; Zhang, Y.; Feng, Q. On better heuristic for Euclidean Steiner minimum trees. In Proceedings of the [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science, 1991; pp. 431–439. [Google Scholar] [CrossRef]
  10. Du, D.Z.; Zhang, Y. On better heuristics for Steiner minimum trees. Mathematical Programming 1992, 57, 193–202. [Google Scholar] [CrossRef]
  11. Berman, P.; Ramaiyer, V. Improved Approximations for the Steiner Tree Problem. Journal of Algorithms 1994, 17, 381–408. [Google Scholar] [CrossRef]
  12. Robins, G.; Zelikovsky, A. Tighter Bounds for Graph Steiner Tree Approximation. SIAM Journal on Discrete Mathematics 2005, 19, 122–134. [Google Scholar] [CrossRef]
  13. Byrka, J.; Grandoni, F.; Rothvoß, T.; Sanità, L. An improved LP-based approximation for steiner tree. In Proceedings of the Proceedings of the Forty-Second ACM Symposium on Theory of Computing, New York, NY, USA, 2010; STOC ’10, pp. 583–592. [Google Scholar] [CrossRef]
  14. Ljubić, I. Solving Steiner trees: Recent advances, challenges, and perspectives. Networks 2021, 77, 177–204. Available online: https://onlinelibrary.wiley.com/doi/pdf/10.1002/net.22005. [CrossRef]
  15. Warme, D. A new exact algorithm for rectilinear Steiner trees. Proceedings of the Network Design: Connectivity and Facilities Location, DIMACS Series in Discrete Mathematics and Theoretical Computer Science 1997, Vol. 40, 357–395. [Google Scholar]
  16. Warme, D.M. Spanning trees in hypergraphs with applications to Steiner trees. PhD thesis, USA, 1998. [Google Scholar] [CrossRef]
  17. Prömel, H.J.; Steger, A. A New Approximation Algorithm for the Steiner Tree Problem with Performance Ratio 5/3. Journal of Algorithms 2000, 36, 89–101. [Google Scholar] [CrossRef]
  18. Kaufmann, M.; van Kreveld, M.; Speckmann, B. Subdivision Drawings of Hypergraphs. In Proceedings of the Graph Drawing; Tollis, I.G., Patrignani, M., Eds.; Berlin, Heidelberg, 2009; pp. 396–407. [Google Scholar]
  19. Brazil, M.; Zachariasen, M. Steiner Trees in Graphs and Hypergraphs. In Optimal Interconnection Trees in the Plane: Theory, Algorithms and Applications; Springer International Publishing: Cham, 2015; pp. 301–317. [Google Scholar] [CrossRef]
  20. Polzin, T.; Daneshmand, S.V. On Steiner trees and minimum spanning trees in hypergraphs. Operations Research Letters 2003, 31, 12–20. [Google Scholar] [CrossRef]
  21. Molnar, M. Construction d’arbres de diffusion multicast basée sur une modification de l’heuristique de Kruskal. Technical Report 3587, INRIA, France, 1998.
  22. Marie, R.; Molnar, M. Arbre couvrant partiel pseudo-optimal pour diffusion multipoint. Technical Report 3636, INRIA, France, 1999.
  23. Molnar, M. Hypergraphs to Cover Trees. (submitted) 2026.
Figure 1. Replacement a part of an MST by adding a small Steiner tree
Figure 1. Replacement a part of an MST by adding a small Steiner tree
Preprints 197748 g001
Figure 2. Revision of some edges in the metric closure
Figure 2. Revision of some edges in the metric closure
Preprints 197748 g002
Figure 3. Different trees spanning M
Figure 3. Different trees spanning M
Preprints 197748 g003
Figure 4. Forest to remove from a tree T after adding another tree C
Figure 4. Forest to remove from a tree T after adding another tree C
Preprints 197748 g004
Figure 6. Some hyperedges in a generalized 3-limited metric closure
Figure 6. Some hyperedges in a generalized 3-limited metric closure
Preprints 197748 g006
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.
Copyright: This open access article is published under a Creative Commons CC BY 4.0 license, which permit the free download, distribution, and reuse, provided that the author and preprint are cited in any reuse.
Prerpints.org logo

Preprints.org is a free preprint server supported by MDPI in Basel, Switzerland.

Subscribe

Disclaimer

Terms of Use

Privacy Policy

Privacy Settings

© 2026 MDPI (Basel, Switzerland) unless otherwise stated