Journal of Combinatorial Optimization

, Volume 38, Issue 4, pp 1196–1212 | Cite as

Approximation of Steiner forest via the bidirected cut relaxation

  • Ali ÇivrilEmail author


The classical algorithm of Agrawal et al. (SIAM J Comput 24(3):440–456, 1995), stated in the setting of the primal-dual schema by Goemans and Williamson (SIAM J Comput 24(2):296–317, 1995) uses the undirected cut relaxation for the Steiner forest problem. Its approximation ratio is \(2-\frac{1}{k}\), where k is the number of terminal pairs. A variant of this algorithm more recently proposed by Könemann et al. (SIAM J Comput 37(5):1319–1341, 2008) is based on the lifted cut relaxation. In this paper, we continue this line of work and consider the bidirected cut relaxation for the Steiner forest problem, which lends itself to a novel algorithmic idea yielding the same approximation ratio as the classical algorithm. In doing so, we introduce an extension of the primal-dual schema in which we run two different phases to satisfy connectivity requirements in both directions. This reveals more about the combinatorial structure of the problem. In particular, there are examples on which the classical algorithm fails to give a good approximation, but the new algorithm finds a near-optimal solution.


Steiner forest Bidirected cut relaxation Primal-dual schema Approximation algorithms Combinatorial optimization 



We would like to thank David P. Williamson for answering questions on the classical primal-dual algorithm for Steiner forest during the early stages of our investigation. This work was supported by TUBITAK (Scientific and Technological Research Council of Turkey) under Project No. 112E192.


  1. Agrawal A, Klein PN, Ravi R (1991) When trees collide: an approximation algorithm for the generalized Steiner problem on networks. In: Proceedings of the 23rd annual ACM symposium on theory of computing (STOC), pp 134–144Google Scholar
  2. Agrawal A, Klein PN, Ravi R (1995) When trees collide: an approximation algorithm for the generalized Steiner problem on networks. SIAM J Comput 24(3):440–456MathSciNetCrossRefGoogle Scholar
  3. Chopra S, Rao MR (1994) The Steiner tree problem I: formulations, compositions and extension of facets. Math Program 64:209–229MathSciNetCrossRefGoogle Scholar
  4. Goemans MX, Myung Y-S (1993) A catalog of steiner tree formulations. Networks 23(1):19–28MathSciNetCrossRefGoogle Scholar
  5. Goemans MX, Williamson DP (1995) A general approximation technique for constrained forest problems. SIAM J Comput 24(2):296–317MathSciNetCrossRefGoogle Scholar
  6. Goemans MX et al (1994) Improved approximation algorithms for network design problems. In: Proceedings of the 5th annual ACM-SIAM symposium on discrete algorithms (SODA), pp 223–232Google Scholar
  7. Groß M, Gupta A, Kumar A, Matuschke J, Schmidt DR, Schmidt M, Verschae J (2018) A local-search algorithm for Steiner forest. In: 9th innovations in theoretical computer science conference, ITCS. pp 31:1–31:17Google Scholar
  8. Gupta A, Kumar A (2015) Greedy algorithms for Steiner forest. In: Proceedings of the 47th annual ACM symposium on theory of computing (STOC), pp 871–878Google Scholar
  9. Könemann J et al (2008) A group-strategyproof cost sharing mechanism for the Steiner forest game. SIAM J Comput 37(5):1319–1341MathSciNetCrossRefGoogle Scholar
  10. Williamson DP, Shmoys DB (2011) The design of approximation algorithms. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  11. Williamson DP et al (1995) A primal-dual approximation algorithm for generalized Steiner network problems. Combinatorica 15:708–717MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.IspartaTurkey

Personalised recommendations