[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ Skip to main content
Log in

A decomposition-based crash-start for stochastic programming

  • Published:
Computational Optimization and Applications Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
£29.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (United Kingdom)

Instant access to the full article PDF.

Fig. 1
Algorithm 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  1. Ahmed, S.: SIPLIB: A stochastic integer programming test problem library (2004). http://www2.isye.gatech.edu/~sahmed/siplib/

  2. Ariyawansa, K.A., Felt, A.J.: On a new collection of stochastic linear programming test problems. INFORMS J. Comput. 16(3), 291–299 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  3. Birge, J.R.: Decomposition and partitioning methods for multistage stochastic linear programs. Oper. Res. 33, 989–1007 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  4. Birge, J.R., Holmes, D.: A portable stochastic programming test set (POSTS). http://users.iems.northwestern.edu/~jrbirge/html/dholmes/post.html

  5. Birge, J.R., Louveaux, F.: Introduction to Stochastic Programming. Springer, New York (1997)

    MATH  Google Scholar 

  6. Blomvall, J., Lindberg, P.O.: A Riccati-based primal interior point solver for multistage stochastic programming. Eur. J. Oper. Res. 143, 452–461 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  7. Colombo, M., Gondzio, J., Grothey, A.: A warm-start approach for large-scale stochastic linear programs. Math. Program. 127(2), 371–397 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  8. Dikin, I.I.: On the speed of an iterative process. Upravlaemye Sistemy 12, 54–60 (1974)

    Google Scholar 

  9. Dolan, E., Moré, J.: Benchmarking optimization software with performance profiles. Math. Program. 91, 201–213 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  10. Dupačová, J., Gröwe-Kuska, N., Römisch, W.: Scenario reduction in stochastic programming. Math. Program. 95(3), 493–511 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  11. Gondzio, J., Grothey, A.: Reoptimization with the primal-dual interior point method. SIAM J. Optim. 13(3), 842–864 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  12. 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)

    Article  MathSciNet  MATH  Google Scholar 

  13. Gondzio, J., Sarkissian, R.: Parallel interior point solver for structured linear programs. Math. Program. 96(3), 561–584 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  14. Grothey, A.: Additional results for “a decomposition-based crash-start for stochastic programming” (2012). http://www.maths.ed.ac.uk/~agr/data/SPDecWSResults.pdf

  15. Heitsch, H., Römisch, W.: Scenario reduction algorithms in stochastic programming. Comput. Optim. Appl. 24, 187–206 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  16. Hipolito, A.L.: A weighted least squares study of robustness in interior point linear programming. Comput. Optim. Appl. 2, 29–46 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  17. Kall, P., Wallace, S.W.: Stochastic Programming. Wiley, Chichester (1994)

    MATH  Google Scholar 

  18. Mehrotra, S.: On the implementation of a primal–dual interior point method. SIAM J. Optim. 2, 575–601 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  19. Mulvey, J., Ruszczyński, A.: A new scenario decomposition method for large scale stochastic optimization. Oper. Res. 43, 477–490 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  20. Nunez, M.A., Freund, R.M.: Condition measures and properties of the central trajectory. Math. Program. 83, 1–28 (1998)

    MathSciNet  MATH  Google Scholar 

  21. Römisch, W., Schultz, R.: Stability analysis for stochastic programming. Ann. Oper. Res. 30, 241–266 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  22. Schultz, R.: Some aspects of stability in stochastic programming. Ann. Oper. Res. 100, 55–84 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  23. 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)

    Google Scholar 

  24. 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)

    Article  MathSciNet  MATH  Google Scholar 

  25. Wright, S.J.: Primal-Dual Interior-Point Methods. SIAM, Philadelphia (1997)

    Book  MATH  Google Scholar 

  26. Yildirim, E.A., Wright, S.J.: Warm-start strategies in interior-point methods for linear programming. SIAM J. Optim. 12(3), 782–810 (2002)

    Article  MathSciNet  MATH  Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Andreas Grothey.

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

$$\min_x c^{\top}{x},\quad \text{\textit{s.t.}}\quad Ax=b,\ x\ge0, $$

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

$$ \begin{array}{rcl} A^{\top}{y}(\bar{\mu}) + s(\bar{\mu}) & =& c, \\[5pt] Ax(\bar{\mu}) &=& b, \\[5pt] S(\bar{\mu})X(\bar{\mu})e & =& \bar{\mu}, \\[5pt] s(\bar{\mu}), x(\bar{\mu}) & >& 0 \end{array} $$
(19)

then we have (x μ ,y μ ,s μ )=(x(μe),y(μe),s(μe)) and there is a \(\tilde{\mu}\in \mathcal {R}^{n}_{+}\), such that

$$ \|\mu e - \tilde{\mu}\|_2\le\theta\mu, \qquad e^{\top}\tilde{ \mu }/n = \mu $$
(20)

with

$$(\tilde{x}_{\mu}, \tilde{y}_{\mu}, \tilde{s}_{\mu}) = \bigl(x(\tilde{\mu}), y(\tilde{\mu}), s(\tilde{\mu}) \bigr). $$

Differentiating (19) with respect to a component \(\bar{\mu}_{j}\) of \(\bar{\mu}\) gives

$$ \everymath{\displaystyle} \begin{array}{rl} A^{\top}\frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} + \frac{\mathrm {d}{s}(\bar {\mu})}{\mathrm {d}\bar{\mu}_j} & = 0, \\[16pt] A\frac{\mathrm {d}{x}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} &= 0, \\[16pt] S(\bar{\mu})\frac{\mathrm {d}{x}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} X(\bar{\mu})\frac{\mathrm {d}{s}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} & = e_j, \end{array} $$

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

(21a)
(21b)
(21c)

For any \((x, y, s)\in\mathcal{N}_{2}(\theta)\) we have

$$(1-\theta)\mu\le x_js_j\le(1+\theta)\mu $$

and hence \(s_{j}^{-1} \le\frac{1}{(1-\theta)\mu}x_{j}\) which yields

$$\bigl\|S^{-1}\bigr\|_{\infty}\le\frac{1}{(1-\theta)\mu}\|X\|_{\infty}. $$

Further, from [20, Theorem 3.1] we have the relations

$$|x_j| \le2C(d) \bigl[C(d)\|d\|+\mu n \bigr],\qquad |s_j| \le2C(d) \bigl[C(d)\|d\|+\mu n \bigr], $$

which together with (21c) give the bound

$$\biggl\|\frac{\mathrm {d}{x}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j}\biggr\|_{\infty}\le\frac {2}{(1-\theta)\mu} \bigl(1+\chi(A) \bigr)\|A\|_{\infty}C(d) \bigl[C(d)\|d\|+\mu n \bigr]. $$

For a bound on \(\|\frac{\mathrm {d}{s}(\bar{\mu})}{\mathrm {d}\bar{\mu}_{j}}\|_{\infty}\) we can rewrite (21b) as

$$\frac{\mathrm {d}{s}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} = \bigl(X^{-1}S \bigr)XS^{-1}A^{\top} \bigl(AXS^{-1}A^{\top} \bigr)^{-1}AS^{-1}e_j, $$

and using \(s_{j}/x_{j} = s_{j}^{2}/(x_{j}s_{j})\le\frac{1}{\mu(1-\theta )}|s_{j}|^{2}\) we obtain

$$ \begin{aligned}[b] \biggl\|\frac{\mathrm {d}{s}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j}\biggr\|_{\infty} &\le\frac{1}{\mu^2(1-\theta)^2} \chi(A)\|A\|_{\infty}\|X\|_{\infty}\|S\|_{\infty}^2\\ &\le\frac{8}{\mu^2(1-\theta)^2}\chi(A)\|A\|_{\infty} C(d)^3\bigl[C(d)\| d\| +\mu n\bigr]^3. \end{aligned} $$
(22)

Finally, for a bound on \(\|\frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu }_{j}}\|_{\infty}\) we can rewrite (21a) as

$$\frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j} = - \bigl(AXS^{-1}A^{\top } \bigr)^{-1}AS^{-1}X \bigl(X^{-1}e_j \bigr), $$

which yields

$$\biggl\|\frac{\mathrm {d}{y}(\bar{\mu})}{\mathrm {d}\bar{\mu}_j}\biggr\|_{\infty} \le\chi (A)\bigl\|X^{-1}\bigr\|\le \frac{2}{\mu(1-\theta)}\chi(A)C(d) \bigl[C(d)\| d\|+\mu n \bigr]. $$

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

$$(\tilde{y}_i,\tilde{\lambda}_i, \tilde{s}_i) \in\mathcal{N}_2^{(i)}(\theta). $$

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

$$\|\tilde{\lambda}_i - \lambda_i\|_{\infty}\le C_3\frac{\theta }{1-\theta}. $$

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

$$ \|\tilde{X}\tilde{S}e - \bar{\mu}e\|_2 \le\tilde{\theta}\bar {\mu}, \qquad\|\tilde{Y_i}\tilde{Z}_ie - \bar{\mu}e \|_2 \le\tilde{\theta}\bar{\mu} $$

and therefore

(23)

As in the proof to Theorem 1 let

$$\tilde{c} = \sum_i T^{\top}\tilde{ \lambda}_i + \tilde{s} $$

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

$$\tilde{w} \in\mathcal{N}_2^{\tilde{d}}\Bigl(\sqrt{|\mathcal {T}+1|}\tilde{ \theta}\Bigr). $$

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

$$\Delta d = (\Delta A, \Delta b, \Delta c) = (0, 0, \Delta c) $$

with

$$\Delta c = c - \tilde{c} = \sum_i T^{\top} \lambda_{\mu,i} + s_{\mu}- \biggl(\sum _i T^{\top}\tilde{\lambda}_i + \tilde{s} \biggr) = \sum_i T^{\top}( \lambda_{\mu,i}-\tilde{ \lambda}_i) + (s_{\mu}- \tilde{s}). $$

Using the bounds from Lemma 3 and Lemma 5 we have

Moreover, using the bounds from Lemma 2 we get

(24)

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

$$\theta- \theta_0 - \xi= \frac{1}{2}\Bigl(\theta- \tilde{\theta} \sqrt{|\mathcal {T}|+1}\Bigr) $$

and therefore the conditions for a successful warmstart are

$$\|\Delta c\|_{\infty}\le\frac{\theta-\tilde{\theta}\sqrt{|\mathcal {T}|+1}}{2(2n+1)\overline{C(d)}}\overline{\|d\|}, \qquad\mu\ge \frac{8\overline{C(d)}^2}{\theta-\tilde{\theta}\sqrt{|\mathcal {T}|+1}}\|\Delta c\|_{\infty} $$

which can be combined to obtain

$$ \|\Delta c\|_{\infty}\le\frac{\theta-\tilde{\theta}\sqrt{|\mathcal {T}|+1}}{2\overline{C(d)}} \min \biggl\{ \frac{\overline{\|d\|}}{2n+1}, \frac{\mu}{4\overline{C(d)}} \biggr\}. $$
(25)

Combining (24) and (25) we get as the condition for a successful warmstart

$$ C_4(\mu)\sqrt{W_1\bigl(\mathcal {T},\mathcal{T}^R \bigr)} + C_5 \frac{\tilde{\theta}}{1-\tilde{\theta}}\le\frac{\theta-\tilde {\theta}\sqrt{|\mathcal {T}|+1}}{2\overline{C(d)}} \min \biggl\{ \frac {\overline{\|d\|}}{2n+1}, \frac{\mu}{4\overline{C(d)}} \biggr\} $$
(26)

which can be satisfied by keeping \(W_{1}(\mathcal {T},\mathcal{T}^{R})\) and \(\tilde{\theta}\) small enough. □

Rights and permissions

Reprints 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

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10589-012-9530-7

Keywords

Navigation