Abstract
In this paper we propose a crash-start technique for interior point methods applicable to multi-stage stochastic programming problems. The main idea is to generate an initial point for the interior point solver by decomposing the barrier problem associated with the deterministic equivalent at the second stage and using a concatenation of the solutions of the subproblems as a warm-starting point for the complete instance. We analyse this scheme and produce theoretical conditions under which the warm-start iterate is successful. We describe the implementation within the OOPS solver and the results of the numerical tests we performed.
Similar content being viewed by others
References
Ahmed, S.: SIPLIB: A stochastic integer programming test problem library (2004). http://www2.isye.gatech.edu/~sahmed/siplib/
Ariyawansa, K.A., Felt, A.J.: On a new collection of stochastic linear programming test problems. INFORMS J. Comput. 16(3), 291–299 (2004)
Birge, J.R.: Decomposition and partitioning methods for multistage stochastic linear programs. Oper. Res. 33, 989–1007 (1985)
Birge, J.R., Holmes, D.: A portable stochastic programming test set (POSTS). http://users.iems.northwestern.edu/~jrbirge/html/dholmes/post.html
Birge, J.R., Louveaux, F.: Introduction to Stochastic Programming. Springer, New York (1997)
Blomvall, J., Lindberg, P.O.: A Riccati-based primal interior point solver for multistage stochastic programming. Eur. J. Oper. Res. 143, 452–461 (2002)
Colombo, M., Gondzio, J., Grothey, A.: A warm-start approach for large-scale stochastic linear programs. Math. Program. 127(2), 371–397 (2011)
Dikin, I.I.: On the speed of an iterative process. Upravlaemye Sistemy 12, 54–60 (1974)
Dolan, E., Moré, J.: Benchmarking optimization software with performance profiles. Math. Program. 91, 201–213 (2002)
Dupačová, J., Gröwe-Kuska, N., Römisch, W.: Scenario reduction in stochastic programming. Math. Program. 95(3), 493–511 (2003)
Gondzio, J., Grothey, A.: Reoptimization with the primal-dual interior point method. SIAM J. Optim. 13(3), 842–864 (2003)
Gondzio, J., Grothey, A.: A new unblocking technique to warmstart interior point methods based on sensitivity analysis. SIAM J. Optim. 19(3), 1184–1210 (2008)
Gondzio, J., Sarkissian, R.: Parallel interior point solver for structured linear programs. Math. Program. 96(3), 561–584 (2003)
Grothey, A.: Additional results for “a decomposition-based crash-start for stochastic programming” (2012). http://www.maths.ed.ac.uk/~agr/data/SPDecWSResults.pdf
Heitsch, H., Römisch, W.: Scenario reduction algorithms in stochastic programming. Comput. Optim. Appl. 24, 187–206 (2003)
Hipolito, A.L.: A weighted least squares study of robustness in interior point linear programming. Comput. Optim. Appl. 2, 29–46 (1993)
Kall, P., Wallace, S.W.: Stochastic Programming. Wiley, Chichester (1994)
Mehrotra, S.: On the implementation of a primal–dual interior point method. SIAM J. Optim. 2, 575–601 (1992)
Mulvey, J., Ruszczyński, A.: A new scenario decomposition method for large scale stochastic optimization. Oper. Res. 43, 477–490 (1995)
Nunez, M.A., Freund, R.M.: Condition measures and properties of the central trajectory. Math. Program. 83, 1–28 (1998)
Römisch, W., Schultz, R.: Stability analysis for stochastic programming. Ann. Oper. Res. 30, 241–266 (1991)
Schultz, R.: Some aspects of stability in stochastic programming. Ann. Oper. Res. 100, 55–84 (2000)
Steinbach, M.: Hierarchical sparsity in multistage convex stochastic programs. In: Uryasev, S., Pardalos, P.M. (eds.) Stochastic Optimization: Algorithms and Applications, pp. 363–388. Kluwer Academic, Norwell (2000)
Sun, J., Liu, X.: Scenario formulation of stochastic linear programs and the homogeneous self-dual interior point method. INFORMS J. Comput. 18(4), 444–454 (2006)
Wright, S.J.: Primal-Dual Interior-Point Methods. SIAM, Philadelphia (1997)
Yildirim, E.A., Wright, S.J.: Warm-start strategies in interior-point methods for linear programming. SIAM J. Optim. 12(3), 782–810 (2002)
Acknowledgements
We would like to thank the two anonymous referees for their helpful comments which have improved the quality of the manuscript. This research was supported by the Engineering and Physical Sciences Research Council under grant EP/E036910/1.
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
We now give the postponed analysis of the situation of Sect. 4.2 where the crash start point is not constructed from exact μ-centers, but approximate subproblem solutions satisfying conditions (17) and (18) are used.
The following Lemma 5 gives bounds on the resulting error in the relevant components of these points compared to the exact μ-centers. Before we proceed, we need a general result stating how far the components of a point in the \(\mathcal{N}_{2}\)-neighbourhood can deviate from the exact μ-center.
Lemma 4
Let (x μ ,y μ ,s μ ) be the exact μ-center for the linear programming problem
and let \((\tilde{x}_{\mu}, \tilde{y}_{\mu}, \tilde{s}_{\mu})\in\mathcal {N}_{2}(\theta)\) with average complementarity product \(\tilde{x}_{\mu}^{\top}\tilde {s}_{\mu} /n = \mu\). Then there are constants C x ,C s >0, only dependent on the problem data and μ, but not on θ, such that
Proof
Let \(\bar{\mu}\in \mathcal {R}^{n}_{+}\) and \((x(\bar{\mu}), y(\bar{\mu}), s(\bar{\mu}))\) be the unique solution to
then we have (x μ ,y μ ,s μ )=(x(μe),y(μe),s(μe)) and there is a \(\tilde{\mu}\in \mathcal {R}^{n}_{+}\), such that
with
Differentiating (19) with respect to a component \(\bar{\mu}_{j}\) of \(\bar{\mu}\) gives
which we can solve for \(\frac{\mathrm {d}{x}(\bar{\mu})}{\mathrm {d}\bar{\mu}_{j}}, \frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu}_{j}}, \frac{\mathrm {d}{y}(\bar{\mu })}{\mathrm {d}\bar{\mu}_{j}}\) to get
For any \((x, y, s)\in\mathcal{N}_{2}(\theta)\) we have
and hence \(s_{j}^{-1} \le\frac{1}{(1-\theta)\mu}x_{j}\) which yields
Further, from [20, Theorem 3.1] we have the relations
which together with (21c) give the bound
For a bound on \(\|\frac{\mathrm {d}{s}(\bar{\mu})}{\mathrm {d}\bar{\mu}_{j}}\|_{\infty}\) we can rewrite (21b) as
and using \(s_{j}/x_{j} = s_{j}^{2}/(x_{j}s_{j})\le\frac{1}{\mu(1-\theta )}|s_{j}|^{2}\) we obtain
Finally, for a bound on \(\|\frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu }_{j}}\|_{\infty}\) we can rewrite (21a) as
which yields
By defining
and since 1≤1/(1−θ) we have
Together with (20) we get
□
Lemma 5
For θ∈(0,1), let \((\tilde{x}_{\mu}^{R}, \tilde{y}_{\mu}^{R},\tilde{\lambda}_{\mu }^{R},\tilde {s}_{\mu}^{R},\tilde{z}_{\mu}^{R})\in\mathcal{N}_{2}^{R}(\theta)\). Then there is a C 3>0 independent of θ such that
Proof
This is an immediate consequence of Lemma 4. □
From the previous lemma we get that we can bound the difference in the primal–dual first-stage decisions (x,s) of the true μ-center of the full problem \((x_{\mu}(\mathcal {T}), s_{\mu}(\mathcal {T}))\) to the calculated approximate μ-center for the reduced problem \((\tilde{x}_{\mu}^{R}, \tilde{s}_{\mu}^{R})\) by
In the second step of the algorithm we will not find the exact μ-center for all subproblems \(P_{i}(\tilde{x}_{\mu}^{R})\), but rather find points
Again we need a bound on the implied error in the dual components λ i . According to Lemma 5 there is a C 3>0 such that
This affects the bound on ∥Δc∥ in the proof of Theorem 1. Finally we are in a position to prove Theorem 2.
Proof of Theorem 2
From (17) and (18) we have that
and therefore
As in the proof to Theorem 1 let
and consider the problem instance \(P(\tilde{d})\) obtained from \(\mathcal{P}(\mathcal {T})\) by replacing the first-stage cost c with \(\tilde{c}\). Then by construction the crash-start point \(\tilde{w}\) is primal–dual feasible for \(P(\tilde{d})\) and due to (23) satisfies
We will analyse the crash-start as a warm-start attempt for the (perturbed) problem \(P(\mathcal {T})\) starting from a point in the \(\mathcal{N}_{2}\)-neighbourhood for problem \(P(\tilde{d})\). The change in problem data is
with
Using the bounds from Lemma 3 and Lemma 5 we have
Moreover, using the bounds from Lemma 2 we get
where
Proposition 4.2 of [26] can now be applied with \(\theta_{0} = \tilde{\theta}\sqrt{|\mathcal {T}|+1}\) and \(\xi= \frac{1}{2}(\theta- \tilde{\theta}\sqrt{|\mathcal {T}|+1})\) from which we get
and therefore the conditions for a successful warmstart are
which can be combined to obtain
Combining (24) and (25) we get as the condition for a successful warmstart
which can be satisfied by keeping \(W_{1}(\mathcal {T},\mathcal{T}^{R})\) and \(\tilde{\theta}\) small enough. □
Rights and permissions
About this article
Cite this article
Colombo, M., Grothey, A. A decomposition-based crash-start for stochastic programming. Comput Optim Appl 55, 311–340 (2013). https://doi.org/10.1007/s10589-012-9530-7
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10589-012-9530-7