STochastic OPTimization library in C++

Abstract : The STochastic OPTimization library (StOpt) aims at providing tools in C++ for solving some stochastic optimization problems encountered in finance or in the industry. A python binding is available for some C++ objects provided permitting to easily solve an optimization problem by regression. Different methods are available :
  • dynamic programming methods based on Monte Carlo with regressions (global, local and sparse regressors), for underlying states following some uncontrolled Stochastic Differential Equations (python binding provided).
  • Semi-Lagrangian methods for Hamilton Jacobi Bellman general equations for underlying states following some controlled Stochastic Differential Equations (C++ only)
  • Stochastic Dual Dynamic Programming methods to deal with stochastic stocks management problems in high dimension. A SDDP module in python is provided. To use this module, the transitional optimization problem has to written in C++ and mapped to python (examples provided).
  • Besides somes methods are provided to solve by Monte Carlo some problems where the underlying stochastic state is controlled.
For each method, a framework is provided to optimize the problem and then simulate it out of the sample using the optimal commands previously calculated. Parallelization methods based on OpenMP and MPI are provided in this framework permitting to solve high dimensional problems on clusters. The library should be flexible enough to be used at different levels depending on the user's willingness.
Type de document :
[Research Report] EDF Lab. 2016
Liste complète des métadonnées
Contributeur : Xavier Warin <>
Soumis le : vendredi 30 décembre 2016 - 11:25:46
Dernière modification le : jeudi 19 octobre 2017 - 15:23:39
Document(s) archivé(s) le : mardi 21 mars 2017 - 06:18:59


Fichiers produits par l'(les) auteur(s)


  • HAL Id : hal-01361291, version 4



Hugo Gevret, Jerome Lelong, Xavier Warin. STochastic OPTimization library in C++. [Research Report] EDF Lab. 2016. 〈hal-01361291v4〉



Consultations de
la notice


Téléchargements du document