Mathematical Programming

, Volume 82, Issue 1–2, pp 13–40 | Cite as

An efficient approximation algorithm for the survivable network design problem

  • Harold N. Gabow
  • Michel X. Goemans
  • David P. Williamson


The survivable network design problem (SNDP) is to construct a minimum-cost subgraph satisfying certain given edge-connectivity requirements. The first polynomial-time approximation algorithm was given by Williamson et al. (Combinatorica 15 (1995) 435–454). This paper gives an improved version that is more efficient. Consider a graph ofn vertices and connectivity requirements that are at mostk. Both algorithms find a solution that is within a factor 2k − 1 of optimal fork ⩾ 2 and a factor 2 of optimal fork = 1. Our algorithm improves the time from O(k3n4) to O\((k^2 n^2 + kn^2 \sqrt {\log \log n} )\)). Our algorithm shares features with those of Williamson et al. (Combinatorica 15 (1995) 435–454) but also differs from it at a high level, necessitating a different analysis of correctness and accuracy; our analysis is based on a combinatorial characterization of the “redundant” edges. Several other ideas are introduced to gain efficiency. These include a generalization of Padberg and Rao's characterization of minimum odd cuts, use of a representation of all minimum (s, t) cuts in a network, and a new priority queue system. The latter also improves the efficiency of the approximation algorithm of Goemans and Williamson (SIAM Journal on Computing 24 (1995) 296–317) for constrained forest problems such as minimum-weight matching, generalized Steiner trees and others. © 1998 The Mathematical Programming Society, Inc. Published by Elsevier Science B.V.


Network design Approximation algorithm Steiner tree 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    A. Agrawal, P. Klein, R. Ravi, When trees collide: An approximation algorithm for the generalized Steiner problem on networks, SIAM Journal on Computing 24 (1995) 440–456.Google Scholar
  2. [2]
    P. Berman, V. Ramaiyer, Improved approximations for the Steiner tree problem. Journal of Algorithms 17 (1994) 381–408Google Scholar
  3. [3]
    G.N. Frederickson, J. Ja'Ja', Approximation algorithms for several graph augmentation problems, SIAM Journal on Computing 10 (1981) 270–283.Google Scholar
  4. [4]
    H. N Gabow, Z. Galil, T.H. Spencer, R.E. Tarjan, Efficient algorithms for finding minimum spanning trees in undirected and directed graphs, Combinatorica 6 (1986) 109–122.Google Scholar
  5. [5]
    H.N. Gabow, M.X. Goemans, D.P. Williamson, An efficient approximation algorithm for the survivable networks design problems, in: Proceedings of the Third MPS Conference on Integer Programming and Combinatorial Optimization, 1993, pp. 57–74.Google Scholar
  6. [6]
    M. Goemans, A. Goldberg, S. Plotkin, D. Shmoys, E. Tardos, D. Williamson, Improved approximation algorithms for network design problems, in: Proceedings of the Fifth Annual ACM-SIAM Symposium on Discrete Algorithms, 1994, pp. 223–232.Google Scholar
  7. [7]
    M.X. Goemans, D.J. Bertsimas, Survivable networks, linear programming relaxation and the parsimonious property, Mathematical Programming 60 (1993) 145–166.Google Scholar
  8. [8]
    M.X. Goemans, D.P. Williamson, A general approximation technique for constrained forest problems, SIAM Journal on Computing 24 (1995) 296–317.Google Scholar
  9. [9]
    R. Gomory, T. Hu, Multi-terminal network flows, SIAM Journal of Applied Mathematics 9 (1961) 551–570.Google Scholar
  10. [10]
    M. Grötschel, C.L. Monma, M. Stoer, Design of survivable networks, in: Network Models (Handbooks in Operations Research and Management Science, vol.7), M.O. Bell, T.L. Magnant, C.L. Monma, G.L. Nemhauser, eds, North-Holland, 1995.Google Scholar
  11. [11]
    D. Gusfield, D. Naor, Extracting maximal information about sets of minimum cuts, Algorithmica 10 (1993) 64–89.Google Scholar
  12. [12]
    S. Khuller, U. Vishkin, Biconnectivity approximations and graph carvings, Journal of the ACM 41 (1994) 214–235.Google Scholar
  13. [13]
    P. Klein, R. Ravi, When cycles collapse: A general approximation technique for constrained two-connectivity problems, in: Proceedings of the Third MPS Conference on Integer Programming and Combinatorial Optimization, 1993, pp. 39–55 (also appears as Brown University Technical Report CS-92-30, to appear in Algorithmica).Google Scholar
  14. [14]
    P.N. Klein, A data structure for bicategories, with application to speeding up an approximation algorithm, Information Processing Letters 52 (1994) 303–307.Google Scholar
  15. [15]
    K. Mehlhorn, A faster approximation algorithm for the Steiner problem in graphs, Information Processing Letters 27 (1988) 125–128.Google Scholar
  16. [16]
    M.W. Padberg, M. Rao, Odd minimum cut-sets andb-matchings, Mathematics of Operations Research 7 (1982) 67–80.Google Scholar
  17. [17]
    J. Picard, M. Queyranne, On the structure of all minimum cuts in a network and applications, Mathematical Programming Study 13 (1980) 8–16.Google Scholar
  18. [18]
    R. Ravi, P. Klein, Approximation through uncrossing, unpublished manuscript.Google Scholar
  19. [19]
    D.P. Williamson, On the design of approximation algorithms for a class of graph problems, Ph.D. Thesis, MIT, Cambridge, MA, 1993 (also appears as Tech. Report MIT/LCS/TR-584).Google Scholar
  20. [20]
    D.P. Williamson, M.X. Goemans, M. Mihail, V.V. Vazirani, A primal-dual approximation algorithm for generalized Steiner network problems, Combinatorica 15 (1995) 435–454.Google Scholar
  21. [21]
    A. Zelikovsky, An 11/6-approximation algorithm for the network Steiner problem, Algorithmica 9 (1993) 463–470.Google Scholar

Copyright information

© The Mathematical Programming Society, Inc. 1998

Authors and Affiliations

  • Harold N. Gabow
    • 1
  • Michel X. Goemans
    • 2
  • David P. Williamson
    • 3
  1. 1.University of ColoradoBoulderUSA
  2. 2.M.I.T.CambridgeUSA
  3. 3.IBM TJ Watson Research CenterYorktown HeightsUSA

Personalised recommendations