Efficient Sequential and Parallel Algorithms for Multistage Stochastic Integer Programming Using Proximity

Authors Jana Cslovjecsek, Friedrich Eisenbrand, Michał Pilipczuk, Moritz Venzin, Robert Weismantel

Thumbnail PDF


  • Filesize: 0.75 MB
  • 14 pages

Document Identifiers

Author Details

Jana Cslovjecsek
  • EPFL, Lausanne, Switzerland
Friedrich Eisenbrand
  • EPFL, Lausanne, Switzerland
Michał Pilipczuk
  • University of Warsaw, Poland
Moritz Venzin
  • EPFL, Lausanne, Switzerland
Robert Weismantel
  • ETH, Zürich, Switzerland

Cite AsGet BibTex

Jana Cslovjecsek, Friedrich Eisenbrand, Michał Pilipczuk, Moritz Venzin, and Robert Weismantel. Efficient Sequential and Parallel Algorithms for Multistage Stochastic Integer Programming Using Proximity. In 29th Annual European Symposium on Algorithms (ESA 2021). Leibniz International Proceedings in Informatics (LIPIcs), Volume 204, pp. 33:1-33:14, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021)


We consider the problem of solving integer programs of the form min {c^⊺ x : Ax = b, x ∈ ℤ_{⩾ 0}}, where A is a multistage stochastic matrix in the following sense: the primal treedepth of A is bounded by a parameter d, which means that the columns of A can be organized into a rooted forest of depth at most d so that columns not bound by the ancestor/descendant relation do not have non-zero entries in the same row. We give an algorithm that solves this problem in fixed-parameter time f(d,‖A‖_{∞})⋅ nlog^{𝒪(2^d)} n, where f is a computable function and n is the number of rows of A. The algorithm works in the strong model, where the running time only measures unit arithmetic operations on the input numbers and does not depend on their bitlength. This is the first fpt algorithm for multistage stochastic integer programming to achieve almost linear running time in the strong sense. For two-stage stochastic integer programs, our algorithm works in time 2^{((r+s)‖A‖_∞)^{𝒪(r(r+s))}}⋅ nlog^{𝒪(rs)} n, which improves over previous methods both in terms of the polynomial factor and in terms of the dependence on r and s. In fact, for r = 1 the dependence on s is asymptotically almost tight assuming the Exponential Time Hypothesis. Our algorithm can be also parallelized: we give an implementation in the PRAM model that achieves running time f(d,‖A‖_{∞})⋅ log^{𝒪(2^d)} n using n processors. The main conceptual ingredient in our algorithms is a new proximity result for multistage stochastic integer programs. We prove that if we consider an integer program P, say with a constraint matrix A, then for every optimum solution to the linear relaxation of P there exists an optimum (integral) solution to P that lies, in the 𝓁_{∞}-norm, within distance bounded by a function of ‖A‖_{∞} and the primal treedepth of A. On the way to achieve this result, we prove a generalization and considerable improvement of a structural result of Klein for multistage stochastic integer programs. Once the proximity results are established, this allows us to apply a treedepth-based branching strategy guided by an optimum solution to the linear relaxation.

Subject Classification

ACM Subject Classification
  • Theory of computation → Fixed parameter tractability
  • parameterized algorithm
  • multistage stochastic programming
  • proximity


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Stephan Artmann, Robert Weismantel, and Rico Zenklusen. A strongly polynomial algorithm for bimodular integer linear programming. In Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2017, page 1206–1219, New York, NY, USA, 2017. Association for Computing Machinery. URL: https://doi.org/10.1145/3055399.3055473.
  2. Matthias Aschenbrenner and Raymond Hemmecke. Finiteness theorems in stochastic integer programming. Found. Comput. Math., 7(2):183-227, 2007. URL: https://doi.org/10.1007/s10208-005-0174-1.
  3. Lin Chen and Daniel Marx. Covering a tree with rooted subtrees: Parameterized and approximation algorithms. In Proceedings of the Twenty-Ninth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA '18, page 2801–2820, USA, 2018. Society for Industrial and Applied Mathematics. Google Scholar
  4. W. Cook, A. M. H. Gerards, A. Schrijver, and É. Tardos. Sensitivity theorems in integer linear programming. Mathematical Programming, 34(3):251-264, 1986. URL: https://doi.org/10.1007/BF01582230.
  5. Jana Cslovjecsek, Friedrich Eisenbrand, Christoph Hunkenschröder, Lars Rohwedder, and Robert Weismantel. Block-structured integer and linear programming in strongly polynomial and near linear time. In Proceedings of the 2021 ACM-SIAM Symposium on Discrete Algorithms, SODA 2021, pages 1666-1681. SIAM, 2021. URL: https://doi.org/10.1137/1.9781611976465.101.
  6. Jana Cslovjecsek, Friedrich Eisenbrand, Michał Pilipczuk, Moritz Venzin, and Robert Weismantel. Efficient sequential and parallel algorithms for multistage stochastic integer programming using proximity, 2020. URL: http://arxiv.org/abs/2012.11742.
  7. Jesús A. De Loera, Raymond Hemmecke, Shmuel Onn, and Robert Weismantel. N-fold integer programming. Discrete Optimization, 5(2):231-241, 2008. In Memory of George B. Dantzig. URL: https://doi.org/10.1016/j.disopt.2006.06.006.
  8. Sally Dong, Yin Tat Lee, and Guanghao Ye. A nearly-linear time algorithm for linear programs with small treewidth: A multiscale representation of robust central path. CoRR, abs/2011.05365, 2020. URL: http://arxiv.org/abs/2011.05365.
  9. Friedrich Eisenbrand, Christoph Hunkenschröder, and Kim-Manuel Klein. Faster algorithms for integer programs with block structure. In 45th International Colloquium on Automata, Languages, and Programming, ICALP 2018, volume 107 of LIPIcs, pages 49:1-49:13. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2018. URL: https://doi.org/10.4230/LIPIcs.ICALP.2018.49.
  10. Friedrich Eisenbrand, Christoph Hunkenschröder, Kim-Manuel Klein, Martin Koutecký, Asaf Levin, and Shmuel Onn. An algorithmic theory of integer programming. CoRR, abs/1904.01361, 2019. URL: http://arxiv.org/abs/1904.01361.
  11. Friedrich Eisenbrand and Robert Weismantel. Proximity results and faster algorithms for integer programming using the steinitz lemma. ACM Trans. Algorithms, 16(1), 2019. URL: https://doi.org/10.1145/3340322.
  12. András Frank and Éva Tardos. An application of simultaneous diophantine approximation in combinatorial optimization. Combinatorica, 7(1):49-65, 1987. URL: https://doi.org/10.1007/BF02579200.
  13. Robert Ganian and Sebastian Ordyniak. The complexity landscape of decompositional parameters for ILP. In 30th Conference on Artificial Intelligence, AAAI 2016, pages 710-716. AAAI Press, 2016. URL: http://www.aaai.org/ocs/index.php/AAAI/AAAI16/paper/view/12432.
  14. Raymond Hemmecke, Shmuel Onn, and Lyubov Romanchuk. N-fold integer programming in cubic time. Math. Program., 137(1-2):325-341, 2013. URL: https://doi.org/10.1007/s10107-011-0490-y.
  15. Alan J Hoffman and Joseph B Kruskal. Integral boundary points of convex polyhedra. In Linear Inequalities and Related Systems.(AM-38), Volume 38, pages 223-246. Princeton University Press, 2016. Google Scholar
  16. Klaus Jansen, Kim-Manuel Klein, and Alexandra Lassota. The double exponential runtime is tight for 2-stage stochastic ILPs. CoRR, abs/2008.12928, 2020. URL: http://arxiv.org/abs/2008.12928.
  17. Ravi Kannan. Minkowski’s convex body theorem and integer programming. Mathematics of operations research, 12(3):415-440, 1987. Google Scholar
  18. Kim-Manuel Klein. About the complexity of two-stage stochastic IPs. In Proceedings of the 21st International Conference, IPCO 2020, volume 12125 of Lecture Notes in Computer Science, pages 252-265. Springer, 2020. URL: https://doi.org/10.1007/978-3-030-45771-6_20.
  19. Martin Koutecký, Asaf Levin, and Shmuel Onn. A parameterized strongly polynomial algorithm for block structured integer programs. In 45th International Colloquium on Automata, Languages, and Programming, ICALP 2018, volume 107 of LIPIcs, pages 85:1-85:14. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2018. URL: https://doi.org/10.4230/LIPIcs.ICALP.2018.85.
  20. H. W. Lenstra. Integer programming with a fixed number of variables. Mathematics of Operations Research, 8(4):538-548, 1983. URL: http://www.jstor.org/stable/3689168.
  21. Jesús De Loera, Raymond Hemmecke, and Matthias Kppe. Algebraic and Geometric Ideas in the Theory of Discrete Optimization. Society for Industrial and Applied Mathematics, USA, 2012. Google Scholar
  22. Carolyn Haibt Norton, Serge A. Plotkin, and Éva Tardos. Using separation algorithms in fixed dimension. J. Algorithms, 13(1):79-98, 1992. URL: https://doi.org/10.1016/0196-6774(92)90006-X.
  23. S. Onn. Nonlinear Discrete Optimization: An Algorithmic Theory. European Mathematical Society Publishing House, 2010. URL: https://books.google.ch/books?id=wzAGMQAACAAJ.
  24. Shmuel Onn. Nonlinear discrete optimization. Zurich Lectures in Advanced Mathematics, European Mathematical Society, 2010. Google Scholar
  25. Alexander Schrijver. Combinatorial optimization: polyhedra and efficiency, volume 24. Springer Science, 2003. Google Scholar
  26. R. Schultz, L. Stougie, and M. H. van der Vlerk. Two-stage stochastic integer programming: a survey. Statistica Neerlandica, 50(3):404-416, 1996. URL: https://doi.org/10.1111/j.1467-9574.1996.tb01506.x.