This paper introduces stochastic modeling as a mathematical framework for decision making under uncertainty, where model parameters are characterized by probability distributions rather than fixed values. It contrasts stochastic programming with deterministic optimization and robust optimization, explaining how each approach handles uncertain data. The paper examines two-stage linear programs — the most widely studied stochastic models — detailing how first-stage decisions and second-stage recourse actions work together to optimize outcomes. Solution strategies, including scenario-based deterministic equivalents and decomposition algorithms, are also discussed. The paper concludes by noting the broad engineering applications of stochastic programming.
Stochastic modeling is a mathematical technique of decision making in which some of the data incorporated into the objective or constraints of mathematical functions are uncertain. Mathematically, uncertainty is normally characterized through a probability distribution on the parameters. Theoretically, uncertainty can be defined rigorously, but in practice it can range in detail from a few scenarios — possible outcomes of the data — to specific and precise joint probability distributions [1]. Outcomes are generally described in terms of elements w of a set W. W can be, for example, the set of possible demands over the next few months. When some of the data are random, the solutions and optimal objective value of the optimization problem are themselves random, and stochastic modeling is used to address this.
Deterministic optimization problems are formulated with known parameters, but real-world problems almost invariably include some unknown parameters [2]. When parameters are known only within certain bounds, one approach to tackling such problems is called robust optimization. Here the goal is to find a solution that is feasible for all such data and optimal in some sense [3].
Stochastic programming models are similar in style but take advantage of the fact that probability distributions governing the data are known or can be estimated. The goal is to find a policy that is feasible for all — or almost all — possible data instances and that maximizes the expectation of some function of the decisions and the random variables. More generally, such models are formulated, solved analytically or numerically, and analyzed in order to provide useful information to a decision maker.
The most widely applied and studied stochastic programming models are two-stage linear programs [4]. Here the decision maker takes some action in the first stage, after which a random event occurs affecting the outcome of the first-stage decision. A recourse decision can then be made in the second stage to compensate for any adverse effects that might have resulted from the first-stage decision. The optimal policy from such a model is a single first-stage policy and a collection of recourse decisions — a decision rule — defining which second-stage action should be taken in response to each random outcome [5].
"Covers scenario methods and decomposition algorithms"
"Lists real-world engineering uses of stochastic programming"
Always verify citation format against your institution’s current style guide requirements.