Author yassine-laguel
5 Stars
Updated Last
2 Years Ago
Started In
May 2019


This module aims to solve multistage stochastic problems by randomized versions of the progressive hedging algorithm. It comes with the companion paper "Randomized Progressive Hedging methods for Multi-stage Stochastic Programming" published in the journal Annals of Operations Research.

Documentation Build Status


The package is installed with the following command:

]add RandomizedProgressiveHedging.jl

GLPK and Ipopt are installed along as default solvers. Other solvers can of course be used, see JuMP doc. for installation and example/ scripts for use of the Juniper and Mosek solvers. If you don't have them already, simply ]add Juniper Mosek MosekTools.


Many example scripts are available in the example/ folder. A good place to start is:

For distributed solve on local machine, launch e.g. julia as julia -p 3 for 2 workers and a master thread. On a cluster, add workers with the package Distributed either addprocs on ssh connection, or use an adapted cluster manager.


Gilles Bareilles
Yassine Laguel
Dmitry Grischenko
Franck Iutzeler
Jérôme Malick


If you found this package useful, please cite the following work.

  TITLE = {{Randomized Progressive Hedging methods for Multi-stage Stochastic Programming}},
  AUTHOR = {Bareilles, Gilles and Laguel, Yassine and Grishchenko, Dmitry and Iutzeler, Franck and Malick, J{\'e}r{\^o}me},
  URL = {https://hal.archives-ouvertes.fr/hal-02946615},
  JOURNAL = {{Annals of Operations Research}},
  PUBLISHER = {{Springer Verlag}},
  YEAR = {2020},
  PDF = {https://hal.archives-ouvertes.fr/hal-02946615/file/main.pdf},
  HAL_ID = {hal-02946615},
  HAL_VERSION = {v1},