Stochastic Dual Dynamic Programming in Julia



Documentation Build Status Coverage
Build Status Codecov branch


You can find the documentation at https://odow.github.io/SDDP.jl/latest/.

If you are struggling to figure out how to use something, raise a Github issue!


We need your examples! We're trying to collate a large array of examples to test the correctness (and later, performance) of the package. Either make a PR or go to the examples folder and click Upload Files and Github will walk you through the process. Bonus points for models where you know the optimal first stage objective value.


We need your bug reports! We've only stressed a few code paths on real-world models. If you run into any problems, file an issue here.

Other Packages

SDDP.jl isn't the only Julia package for solving multi-stage stochastic programs. You may want to checkout StructDualDynProg.jl or StochDynamicProgramming.jl to see if they better suit your needs.


@lkapelevich wrote an extension for SDDP.jl to solve multi-stage stochastic programs with binary state variables. Check it out at https://github.com/lkapelevich/SDDiP.jl!

Citing SDDP.jl

If you use SDDP.jl, we ask that you please cite the following paper:

	title = {{SDDP}.jl: a {Julia} package for {Stochastic} {Dual} {Dynamic} {Programming}},
	url = {http://www.optimization-online.org/DB_HTML/2017/12/6388.html},
	journal = {Optimization Online},
	author = {Dowson, Oscar and Kapelevich, Lea},
	year = {2017}

First Commit


Last Touched

6 days ago


150 commits

Used By: