TL;DR
Stochastic programming models (optimization under uncertainty) become computationally intractable as scenarios multiply, causing the deterministic equivalent formulation to explode in size. Benders' decomposition solves this by decomposing the problem into smaller, separable subproblems when certain variables are fixed.
✦ Why It Matters
Engineers can now solve previously intractable stochastic optimization problems by applying Benders' decomposition instead of abandoning uncertainty modeling.
Key Takeaways
Full Summary
Stochastic programming formulates optimization problems that account for uncertainty by considering multiple future scenarios. Two-stage recourse models are theoretically elegant: decide some variables now, then decide others after uncertainty resolves.
However, adding more scenarios creates a deterministic equivalent—a single large problem combining all scenarios—that grows exponentially and exceeds solver capacity. Benders' decomposition exploits a key insight: if you fix the first-stage variables (decisions made before uncertainty), the remaining problem decomposes into independent subproblems per scenario.
The algorithm iteratively solves a master problem (optimizing first-stage variables) and subproblems (optimizing second-stage variables given first-stage choices), exchanging information via dual variables from LP duality. This avoids constructing the full deterministic equivalent, making previously intractable problems solvable.
Engineers can apply this when optimization problems naturally split into stages or when fixing some variables isolates independent subproblems.
Related