IDEAS home Printed from https://ideas.repec.org/a/spr/comgts/v19y2022i2d10.1007_s10287-021-00411-x.html
   My bibliography  Save this article

Parallel and distributed computing for stochastic dual dynamic programming

Author

Listed:
  • D. Ávila

    (Université Catholique de Louvain)

  • A. Papavasiliou

    (Université Catholique de Louvain)

  • N. Löhndorf

    (University of Luxembourg)

Abstract

We study different parallelization schemes for the stochastic dual dynamic programming (SDDP) algorithm. We propose a taxonomy for these parallel algorithms, which is based on the concept of parallelizing by scenario and parallelizing by node of the underlying stochastic process. We develop a synchronous and asynchronous version for each configuration. The parallelization strategy in the parallelscenario configuration aims at parallelizing the Monte Carlo sampling procedure in the forward pass of the SDDP algorithm, and thus generates a large number of supporting hyperplanes in parallel. On the other hand, the parallel-node strategy aims at building a single hyperplane of the dynamic programming value function in parallel. The considered algorithms are implemented using Julia and JuMP on a high performance computing cluster. We study the effectiveness of the methods in terms of achieving tight optimality gaps, as well as the scalability properties of the algorithms with respect to an increasing number of CPUs. In particular, we study the effects of the different parallelization strategies on performance when increasing the number of Monte Carlo samples in the forward pass, and demonstrate through numerical experiments that such an increase may be harmful. Our results indicate that a parallel-node strategy presents certain benefits as compared to a parallel-scenario configuration.

Suggested Citation

  • D. Ávila & A. Papavasiliou & N. Löhndorf, 2022. "Parallel and distributed computing for stochastic dual dynamic programming," Computational Management Science, Springer, vol. 19(2), pages 199-226, June.
  • Handle: RePEc:spr:comgts:v:19:y:2022:i:2:d:10.1007_s10287-021-00411-x
    DOI: 10.1007/s10287-021-00411-x
    as

    Download full text from publisher

    File URL: http://link.springer.com/10.1007/s10287-021-00411-x
    File Function: Abstract
    Download Restriction: Access to the full text of the articles in this series is restricted.

    File URL: https://libkey.io/10.1007/s10287-021-00411-x?utm_source=ideas
    LibKey link: if access is restricted and if your library uses this service, LibKey will redirect you to where you can use your library subscription to access this item
    ---><---

    As the access to this document is restricted, you may want to search for a different version of it.

    References listed on IDEAS

    as
    1. Shapiro, Alexander & Tekaya, Wajdi & da Costa, Joari Paulo & Soares, Murilo Pereira, 2013. "Risk neutral and risk averse Stochastic Dual Dynamic Programming method," European Journal of Operational Research, Elsevier, vol. 224(2), pages 375-391.
    2. Nils Löhndorf & David Wozabal & Stefan Minner, 2013. "Optimizing Trading Decisions for Hydro Storage Systems Using Approximate Dual Dynamic Programming," Operations Research, INFORMS, vol. 61(4), pages 810-823, August.
    3. Shapiro, Alexander, 2011. "Analysis of stochastic dual dynamic programming method," European Journal of Operational Research, Elsevier, vol. 209(1), pages 63-72, February.
    4. Wim Ackooij & Welington Oliveira & Yongjia Song, 2019. "On level regularization with normal solutions in decomposition methods for multistage stochastic programming problems," Computational Optimization and Applications, Springer, vol. 74(1), pages 1-42, September.
    5. Arild Helseth & Hallvard Braaten, 2015. "Efficient Parallelization of the Stochastic Dual Dynamic Programming Algorithm Applied to Hydropower Scheduling," Energies, MDPI, vol. 8(12), pages 1-11, December.
    6. Oscar Dowson & Lea Kapelevich, 2021. "SDDP.jl : A Julia Package for Stochastic Dual Dynamic Programming," INFORMS Journal on Computing, INFORMS, vol. 33(1), pages 27-33, January.
    7. Aravena, Ignacio & Papavasiliou, Anthony, 2020. "Asynchronous Lagrangian scenario decomposition," LIDAM Reprints CORE 3082, Université catholique de Louvain, Center for Operations Research and Econometrics (CORE).
    8. Philpott, A.B. & de Matos, V.L., 2012. "Dynamic sampling algorithms for multi-stage stochastic programs with risk aversion," European Journal of Operational Research, Elsevier, vol. 218(2), pages 470-483.
    9. Guigues, Vincent, 2017. "Dual Dynamic Programing with cut selection: Convergence proof and numerical experiments," European Journal of Operational Research, Elsevier, vol. 258(1), pages 47-57.
    10. A. B. Philpott & V. L. Matos & L. Kapelevich, 2018. "Distributionally robust SDDP," Computational Management Science, Springer, vol. 15(3), pages 431-454, October.
    11. Löhndorf, Nils & Shapiro, Alexander, 2019. "Modeling time-dependent randomness in stochastic dual dynamic programming," European Journal of Operational Research, Elsevier, vol. 273(2), pages 650-661.
    12. Dowson, Oscar & Philpott, Andy & Mason, Andrew & Downward, Anthony, 2019. "A multi-stage stochastic optimization model of a pastoral dairy farm," European Journal of Operational Research, Elsevier, vol. 274(3), pages 1077-1089.
    Full references (including those not matched with items on IDEAS)

    Most related items

    These are the items that most often cite the same works as this one and are cited by the same works as this one.
    1. Thuener Silva & Davi Valladão & Tito Homem-de-Mello, 2021. "A data-driven approach for a class of stochastic dynamic optimization problems," Computational Optimization and Applications, Springer, vol. 80(3), pages 687-729, December.
    2. Löhndorf, Nils & Wozabal, David, 2021. "Gas storage valuation in incomplete markets," European Journal of Operational Research, Elsevier, vol. 288(1), pages 318-330.
    3. W. Ackooij & X. Warin, 2020. "On conditional cuts for stochastic dual dynamic programming," EURO Journal on Computational Optimization, Springer;EURO - The Association of European Operational Research Societies, vol. 8(2), pages 173-199, June.
    4. Zhou, Shaorui & Zhang, Hui & Shi, Ning & Xu, Zhou & Wang, Fan, 2020. "A new convergent hybrid learning algorithm for two-stage stochastic programs," European Journal of Operational Research, Elsevier, vol. 283(1), pages 33-46.
    5. Guigues, Vincent & Shapiro, Alexander & Cheng, Yi, 2023. "Duality and sensitivity analysis of multistage linear stochastic programs," European Journal of Operational Research, Elsevier, vol. 308(2), pages 752-767.
    6. Lorenzo Reus & Rodolfo Prado, 2022. "Need to Meet Investment Goals? Track Synthetic Indexes with the SDDP Method," Computational Economics, Springer;Society for Computational Economics, vol. 60(1), pages 47-69, June.
    7. Liu, Rui Peng & Shapiro, Alexander, 2020. "Risk neutral reformulation approach to risk averse stochastic programming," European Journal of Operational Research, Elsevier, vol. 286(1), pages 21-31.
    8. Michelle Bandarra & Vincent Guigues, 2021. "Single cut and multicut stochastic dual dynamic programming with cut selection for multistage stochastic linear programs: convergence proof and numerical experiments," Computational Management Science, Springer, vol. 18(2), pages 125-148, June.
    9. Bakker, Hannah & Dunke, Fabian & Nickel, Stefan, 2020. "A structuring review on multi-stage optimization under uncertainty: Aligning concepts from theory and practice," Omega, Elsevier, vol. 96(C).
    10. Arnab Bhattacharya & Jeffrey P. Kharoufeh & Bo Zeng, 2023. "A Nonconvex Regularization Scheme for the Stochastic Dual Dynamic Programming Algorithm," INFORMS Journal on Computing, INFORMS, vol. 35(5), pages 1161-1178, September.
    11. Luckny Zéphyr & C. Lindsay Anderson, 2018. "Stochastic dynamic programming approach to managing power system uncertainty with distributed storage," Computational Management Science, Springer, vol. 15(1), pages 87-110, January.
    12. Davi Valladão & Thuener Silva & Marcus Poggi, 2019. "Time-consistent risk-constrained dynamic portfolio optimization with transactional costs and time-dependent returns," Annals of Operations Research, Springer, vol. 282(1), pages 379-405, November.
    13. Murwan Siddig & Yongjia Song, 2022. "Adaptive partition-based SDDP algorithms for multistage stochastic linear programming with fixed recourse," Computational Optimization and Applications, Springer, vol. 81(1), pages 201-250, January.
    14. Daniel F. Salas & Warren B. Powell, 2018. "Benchmarking a Scalable Approximate Dynamic Programming Algorithm for Stochastic Control of Grid-Level Energy Storage," INFORMS Journal on Computing, INFORMS, vol. 30(1), pages 106-123, February.
    15. Park, Jangho & Bayraksan, Güzin, 2023. "A multistage distributionally robust optimization approach to water allocation under climate uncertainty," European Journal of Operational Research, Elsevier, vol. 306(2), pages 849-871.
    16. Oscar Dowson & Lea Kapelevich, 2021. "SDDP.jl : A Julia Package for Stochastic Dual Dynamic Programming," INFORMS Journal on Computing, INFORMS, vol. 33(1), pages 27-33, January.
    17. Soares, Murilo Pereira & Street, Alexandre & Valladão, Davi Michel, 2017. "On the solution variability reduction of Stochastic Dual Dynamic Programming applied to energy planning," European Journal of Operational Research, Elsevier, vol. 258(2), pages 743-760.
    18. Andy Philpott & Vitor de Matos & Erlon Finardi, 2013. "On Solving Multistage Stochastic Programs with Coherent Risk Measures," Operations Research, INFORMS, vol. 61(4), pages 957-970, August.
    19. Vincent Guigues, 2014. "SDDP for some interstage dependent risk-averse problems and application to hydro-thermal planning," Computational Optimization and Applications, Springer, vol. 57(1), pages 167-203, January.
    20. Löhndorf, Nils & Shapiro, Alexander, 2019. "Modeling time-dependent randomness in stochastic dual dynamic programming," European Journal of Operational Research, Elsevier, vol. 273(2), pages 650-661.

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:spr:comgts:v:19:y:2022:i:2:d:10.1007_s10287-021-00411-x. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    If CitEc recognized a bibliographic reference but did not link an item in RePEc to it, you can help with this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Sonal Shukla or Springer Nature Abstracting and Indexing (email available below). General contact details of provider: http://www.springer.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.