Journal of Combinatorial Optimization, 7, 259–282, 2003 c 2003 Kluwer Academic Publishers. Manufactured in The Netherlands. Solving Steiner Tree Problems in Graphs with Lagrangian Relaxation LAURA BAHIENSE ∗ laura@psr-inc.com Universidade Federal do Rio de Janeiro, COPPE-Sistemas e Computac ¸˜ ao, P.O. Box 68511, Rio de Janeiro, RJ 21945-970, Brazil FRANCISCO BARAHONA barahon@us.ibm.com IBM T. J. Watson Research Center, Yorktown Heights, NY10589, USA OSCAR PORTO † oscar@ele.puc-rio.br PUC-Rio, Dept. de Engenharia El´ etrica, Rua Marquˆ es de S ˜ ao Vicente 225, Predio Cardeal Leme, Sala 401, CEP 22453-900, Rio de Janeiro, RJ, Brazil Received October 10, 2000; Revised October 15, 2001; Accepted March 25, 2002 Abstract. This paper presents an algorithm to obtain near optimal solutions for the Steiner tree problem in graphs. It is based on a Lagrangian relaxation of a multi-commodity flow formulation of the problem. An extension of the subgradient algorithm, the volume algorithm, has been used to obtain lower bounds and to estimate primal solutions. It was possible to solve several difficult instances from the literature to proven optimality without branching. Computational results are reported for problems drawn from the SteinLib library. Keywords: Steiner trees, Lagrangian relaxation 1. Introduction Given an undirected graph G = (V , E ) and a subset of the nodes T ⊆ V called terminals, a Steiner tree for T in G is a tree that spans T . Let c ij , for each (i , j ) ∈ E , be nonnegative costs associated to the edges of G. The Steiner tree problem in graphs (STPG) asks for the Steiner tree of minimum total edge cost. The vertices in V \T are called non-terminals. Non-terminal vertices that end up in an optimum Steiner tree are called Steiner vertices. The STPG is known to be NP-Hard (Karp, 1972) for a general graph, remaining NP-Hard for particular classes of graphs such as grid graphs (Garey and Johnson, 1977), among others. The STPG has been widely applied in the design of communication, distribution and transportation systems. It is also applied to problems such as the wire routing phase in physical VLSI design (Lengauer, 1990), network design (Magnanti and Wong, 1984), etc. Different integer programming formulations of the STPG can be found in the works of Maculan (1987), Claus and Maculan (1983) and Goemans and Myung (1993). In the latter, ∗ Supported by grant from Brazilian agency CNPQ. † Partially supported by Brazilian agency CNPQ, grant 301261/91-1.