Input Description: A graph \(G=(V,E)\). A subset of vertices \(T \in V\).
Problem: Find the smallest tree connecting all the vertices of \(T\).
Excerpt from The Algorithm Design Manual: Steiner tree often arises in network design and wiring layout problems. Suppose we are given a set of sites that must be connected by wires as cheaply as possible. The minimum Steiner tree describes the way to connect them using the smallest amount of wire. Analogous problems arise in designing networks of water pipes or heating ducts in buildings. Similar considerations also arise in VLSI circuit layout, where we seek to connect a set of sites to (say) ground under constraints such as material cost, signal propagation time, or reducing capacitance.
The Steiner tree problem is distinguished from the minimum spanning tree problem in that we are permitted to construct or select intermediate connection points to reduce the cost of the tree.
|GeoSteiner (rating 10)
||FLUTE (rating 9)
|PHYLIP (rating 7)
||pcst_fast (rating 5)
|DSTAlgoEvaluation (rating 5)
||Salowe's Rectilinear Steiner trees (rating 5)
|The Steiner Tree Problem: a tour through graphs,algorithms, and complexity by Hans Jurgen Promel, Angelika Steger||Advances in Steiner Trees by D. Du and J. Smith and J. Rubinstein||The Steiner Tree Problem by R. Hwang and D. Richards and P. Winter|
|Computational Geometry by F. Preparata and M. Shamos||Graph Algorithms by S. Even||Combinatorial Optimization: Networks and Matroids by E. Lawler|