Technical ReportPDF Available

Decomposition methods for the two-stage stochastic Steiner tree problem

Authors:

Abstract and Figures

A new algorithmic approach for solving the stochastic Steiner tree problem based on three procedures for computing lower bounds (dual ascent, Lagrangian relaxation, Benders decomposition) is introduced. Our method is derived from a new Integer Linear Programming formulation, which is shown to be strongest among all known formulations. The resulting method, which relies on an interplay of the dual information retrieved from the respective dual procedures, computes upper and lower bounds and combines them with several rules for fixing variables in order to decrease the size of problem instances. The effectiveness of our method is compared in an extensive computational study with the state-of-the-art exact approach, which employs a Benders decomposition based on two-stage branch-and-cut, and a genetic algorithm introduced during the DIMACS Implementation Challenge on Steiner trees. Our results indicate that the presented method significantly outperforms existing ones, both on benchmark instances from literature, as well as on large-scale telecommunication networks.
Content may be subject to copyright.
A preview of the PDF is not available
ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
The Steiner tree problem is a challenging NP-hard problem. Many hard instances of this problem are publicly available, that are still unsolved by state-of-the-art branch-and-cut codes. A typical strategy to attack these instances is to enrich the polyhedral description of the problem, and/or to implement more and more sophisticated separation procedures and branching strategies. In this paper we investigate the opposite viewpoint, and try to make the solution method as simple as possible while working on the modeling side. Our working hypothesis is that the extreme hardness of some classes of instances mainly comes from over-modeling, and that some instances can become quite easy to solve when a simpler model is considered. In other words, we aim at “thinning out” the usual models for the sake of getting a more agile framework. In particular, we focus on a model that only involves node variables, which is rather appealing for the “uniform” cases where all edges have the same cost. In our computational study, we first show that this new model allows one to quickly produce very good (sometimes proven optimal) solutions for notoriously hard instances from the literature. In some cases, our approach takes just few seconds to prove optimality for instances never solved (even after days of computation) by the standard methods. Moreover, we report improved solutions for several SteinLib instances, including the (in)famous hypercube ones. We also demonstrate how to build a unified solver on top of the new node-based model and the previous state-of-the-art model (defined in the space of arc and node variables). The solver relies on local branching, initialization heuristics, preprocessing and local search procedures. A filtering mechanism is applied to automatically select the best algorithmic ingredients for each instance individually. The presented solver is the winner of the DIMACS Challenge on Steiner trees in most of the considered categories.
Article
Full-text available
We present an effective heuristic for the Steiner Problem in Graphs. Its main elements are a multistart algorithm coupled with aggressive combination of elite solutions, both leveraging recently-proposed fast local searches. We also propose a fast implementation of a well-known dual ascent algorithm that not only makes our heuristics more robust (by quickly dealing with easier cases), but can also be used as a building block of an exact (branch-and-bound) algorithm that is quite effective for some inputs. On all graph classes we consider, our heuristic is competitive with (and sometimes more effective than) any previous approach with similar running times. It is also scalable: with long runs, we could improve or match the best published results for most open instances in the literature.
Article
We present a branch-and-bound (B&B) framework for the asymmetric prizecollecting Steiner tree problem (APCSTP). Several well-known network design problems can be transformed to the APCSTP, including the Steiner tree problem (STP), prizecollecting Steiner tree problem (PCSTP), maximum-weight connected subgraph problem (MWCS), and node-weighted Steiner tree problem (NWSTP). The main component of our framework is a new dual ascent algorithm for the rooted APCSTP, which generalizes Wong's dual ascent algorithm for the Steiner arborescence problem. The lower bounds and dual information obtained from the algorithm are exploited within powerful boundbased reduction tests and for guiding primal heuristics. The framework is complemented by additional alternative-based reduction tests. Extensive computational results on benchmark instances for the PCSTP,MWCS, andNWSTP indicate the framework's effectiveness, as most instances from literature are solved to optimality within seconds, including most of the (previously unsolved) largest instances from the recent DIMACS Challenge on Steiner trees. Moreover, results on newasymmetric instances for the APCSTP are reported. Since the addressed network design problems are frequently used for modeling various real-world applications (e.g., in bioinformatics), the implementation of the presented B&B framework has been made publicly available.
Chapter
The importance of integer programming stems from the fact that it can be used to model a vast array of problems arising from the most disparate areas, ranging from practical ones (scheduling, allocation of resources, etc.) to questions in set theory, graph theory, or number theory. We present here a selection of integer programming models, several of which will be further investigated later in this book.
Article
Uncertainty is a facet of many decision environments and might arise for various reasons, such as unpredictable information revealed in the future, or inherent fluctuations caused by noise. Stochastic optimization provides a means to handle uncertainty by modeling it by a probability distribution over possible realizations of the actual data, called scenarios. The field of stochastic optimization, or stochastic programming, has its roots in the work of Dantzig [4] and Beale [1] in the 1950s, and has since increasingly found application in a wide variety of areas, including transportation models, logistics, financial instruments, and network design. An important and widely-used model in stochastic programming is the 2-stage recourse model: first, given only distributional information about (some of) the data, one commits on initial (first-stage) actions. Then, once the actual data is realized according to the distribution, further recourse actions can be taken (in the second stage) to augment the earlier solution and satisfy the revealed requirements. The aim is to choose the initial actions so as to minimize the expected total cost incurred. The recourse actions typically entail making decisions in rapid reaction to the observed scenario, and are therefore more costly than decisions made ahead of time. Thus there is a trade-off between committing initially, having only imprecise information while incurring a lower cost, and deferring decisions to the second-stage, when we know the input precisely but the costs are higher. Many applications can be modeled this way, and much of the textbook of Birge and Louveaux [2] is devoted to models and algorithms for this class of problems. A commonly cited example involves a setting where a company has to decide where to set up facilities to serve client demands. Typically the demand pattern is not known precisely at the outset, but one might be able to obtain, through simulation models or surveys, statistical information about the demands. This motivates the following 2-step decision process: in the first-stage, given only distributional information about the demands (and deterministic data for the facility opening costs), one must decide which facilities to open initially; once the client demands are realized according to this distribution, we can extend the solution by opening more facilities, incurring a recourse cost, and we have to assign the realized demands to open facilities. This is the 2-stage stochastic uncapacitated facility location problem. The recourse costs are usually higher than the original ones (because opening a facility later would involve deploying resources with a small lead time); these costs could be different for the different facilities, and could even depend on the realized scenario.
Article
The Steiner tree problem in graphs is a classical problem that commonly arises in practical applications as one of many variants. While often a strong relationship between different Steiner tree problem variants can be observed, solution approaches employed so far have been prevalently problem-specific. In contrast, this paper introduces a general-purpose solver that can be used to solve both the classical Steiner tree problem and many of its variants without modification. This versatility is achieved by transforming various problem variants into a general form and solving them by using a state-of-the-art MIP-framework. The result is a high-performance solver that can be employed in massively parallel environments and is capable of solving previously unsolved instances.
Article
We give an overview of new and existing cut- and flow-based ILP formulations for the two-stage stochastic Steiner tree problem and compare the strength of the LP relaxations.
Article
We study survivable network design problems with edge-connectivity requirements under a two-stage stochastic model with recourse and finitely many scenarios. For the formulation in the natural space of edge variables we show that facet defining inequalities of the underlying polytope can be derived from the deterministic counterparts. Moreover, by using graph orientation properties we introduce stronger cut-based formulations. For solving the proposed mixed integer programming models, we suggest a two-stage branch&cut algorithm based on a decomposed model. In order to accelerate the computations, we suggest a new technique for strengthening the decomposed L-shaped optimality cuts which is computationally fast and easy to implement. A computational study shows the benefit of the decomposition and the cut strengthening—which significantly reduces the number of master iterations and the computational running time. Moreover, we evaluate the stability of the scenario generation method and analyze the value of the stochastic solution.