Benders Decomposition for Stochastic Linear Programming

A generalized MATLAB code for solving a 2-stage stochastic linear programming problem using benders decomposition.
653 Downloads
Updated 9 Oct 2018

View License

This code provides a generalized procedure for solving a 2-stage stochastic linear programming problem using benders decomposition.

Given the input matrices for 1st and 2nd stage problems, feasibility cuts (if necessary) and optimality cuts are automatically generated, then the optimal solution can be obtained.
(Note: the 2nd-stage problem should be a standard form LP, including slack variables.)

The parts for obtaining feasibility cuts and optimality cuts have been coded as user-defined functions in the script. This means two things:
1) The user do not need to modify the parts for generating feasibility and optimality cuts depending on his or her own problem (which is an advantage of this code).
2) This code requires version R2016b or later because the ability for 'adding functions to scripts' has been supported in R2016b. If you have the lower version, the local functions should be coded as separate m files.

(Made by Jeonghun Song, Turbomachinery Laboratory, Seoul National University, South Korea.
E-mail: flygon@snu.ac.kr)

Cite As

Jeonghun Song (2025). Benders Decomposition for Stochastic Linear Programming (https://uk.mathworks.com/matlabcentral/fileexchange/69060-benders-decomposition-for-stochastic-linear-programming), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2017b
Compatible with R2016b to R2018b
Platform Compatibility
Windows macOS Linux
Categories
Find more on Linear Programming and Mixed-Integer Linear Programming in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0