Summary
This paper studies the design and implementation of an approximation algorithm for the Steiner tree problem. Given any undirected distance graph G and a set of Steiner points S, the algorithm produces a Steiner tree with total weight on its edges no more than 2(1−1/L) times the total weight on the optimal Steiner tree, where L is the number of leaves in the optimal Steiner tree. Our implementation of the algorithm, in the worst case, makes it run in 0(¦E g¦+¦V g−S¦log¦V g−S¦+¦S¦log ¦S¦) time for general graph G and in 0(¦S¦ log¦S¦+M log β(M,¦V g−S¦)) time for sparse graph G, where E g is the set of edges in G, Vg is the set of vertices in G, M = min {¦E g, (¦V g−S¦−1)2/2} and β(x,y) = min {i¦log(i) y ≦ x/y}.The implementation is not likely to be improved significantly without the improvement of the shortest paths algorithm and the minimum spanning tree algorithm as the algorithm essentially composes of the computation of the multiple sources shortest paths of a graph with ¦V g¦ vertices and ¦E g¦ edges and the minimum spanning tree of a graph with ¦V g−S¦ vertices and M edges.
Similar content being viewed by others
References
Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Reading, Mass.: Addison-Wesley 1974
Aneja, Y.P.: An Integer Linear Programming Approach to the Steiner Problem in Graphs. Networks 10, 167 (1980)
Beasley, J.E.: An Algorithm for the Steiner Problem in Graphs. Networks 14, 148 (1984)
Dijkstra, E.W.: A Note on Two Problems in Connection With Graphs. Numer. Math. 1, 269–271 (1959)
Du, D.Z., Yao, E.Y., Hwang, F.K.: A Short Proof of a Result of Pollak on Steiner Minimal Trees. J. Comb. Theory, Ser. A 32, 396 (1982)
Fredman, M.L., Tarjan, R.E.: Fibonacci Heaps and Their Uses in Improving Network Optimization Algorithms. Proc. 25th Annual IEEE Symp. on Foundation of Computer Science 1984
Gabow, H.N., Galil, Z., Spencer, T.: Efficient Implementation of Graph Algorithms Using Contraction. Proc. 25th Annual IEEE Symp. on Foundation of Computer Science 1984
Gary, M.R., Graham, R.L., Johnson, D.S.: Some NP-complete Geometric Problems. 8th Annual ACM Symposium on Theory of Computing, pp. 10–22 (1976)
Gilbert, E.N., Pollak, H.O.: Steiner Minimal Trees. SIAM J. Appl. Math. 16, 1 (1968)
Karp, R.M.: Reducibility Among Combinatorial Problems. In: Miller, R.E., Thatcher, J.W. (eds) Complexity of Computer Computations, pp. 85–103. Plenum Press, New York 1972
Kou, L., Markowsky, G., Berman, L.: A Fast Algorithm for Steiner Trees. Southeastern Conference on Graph Theory, 1979 and Acta Inf. 15, 147–154 (1981)
Kou, L., Makki, Y.K.: An Even Faster Algorithm for Steiner Trees. Proceedings of the Eighteenth Southeastern Conference on Combinatorics. Graph Theory Comput., 1987
Kruskal, J.B. Jr.: On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Proc. Am. Math. Soc. 7, 48–50 (1956)
Mehlhorn, K.: Faster Approximation Algorithm for the Steiner Problem in Graphs. Inf. Process. Lett. 27, 125–128 (1988)
Pollak, H.O.: Some Remarks on the Steiner Problem. J. Comb. Theory, Ser. A24, 278 (1982)
Takahashi, H., Matsuyama, A.: An Approximate Solution for the Steiner Problem in Graphs. Math. Jap. 24, 573–577 (1980)
Widmayer, P.: A Fast Approximation Algorithm for Steiner's Problems in Graphs. Graph-Theoretic Concepts in Computer Science, NG 86. Lect. Notes Comput. Sci. 246, 17–28 (1986)
Wu, Y.F., Widmayer, P., Wong, C.K.: A Faster Approximation Algorithm for the Steiner Problem in Graphs. Acta Inf. 23, 223–229 (1986)
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Kou, L.T. On efficient implementation of an approximation algorithm for the Steiner tree problem. Acta Informatica 27, 369–380 (1990). https://doi.org/10.1007/BF00264613
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00264613