User:Mbfeng/sandbox

Two-Stage Problems
Two-stage stochastic programming formulation is one of the most basic and most widely used form. The basic idea of two-stage stochastic programming is that (optimal) decisions should be based on data available at the time the decisions are made and should not depend on future observations. The classical two-stage linear stochastic programming problems can be formulated as

$$ \begin{array}{lcrr} \min\limits_{x\in \mathbb{R}^n}  & c^T x + E[Q(x,\xi)]    &   \\ \text{subject to} & Ax   &=&    b \\ & x    &\geq& 0 \end{array} $$

where $$ Q(x,\xi)$$ is the optimal value of the second-stage problem

$$ \begin{array}{lrrr} \min\limits_{q\in \mathbb{R}^m}  & q^T y     &   \\ \text{subject to} & Tx+Wy   &=&    h \\ & y    &\geq& 0 \end{array} $$

In such formulation $$x\in \mathbb{R}^n$$ is the first-stage decision variable vector, $$y\in \mathbb{R}^m$$ is the second-stage decision variable vector, and $$\xi(q,T,W,h)$$ contains the data of the second-stage problem. In this formulation, at the first stage we have to make a "here-and-now" decision $$x$$ before the realization of the uncertain data $$\xi$$, viewed as a random vector, is known. At the second stage, after a realization of $$\xi$$ becomes available, we optimize our behavior by solving an appropriate optimization problem.

At the first stage we optimize (minimize in the above formulation) the cost $$c^Tx$$ of the first-stage decision plus the expected cost of the (optimal) second-stage decision. We can view the second-stage problem simply as an optimization problem which describes our supposedly optimal behavior when the uncertain data is revealed, or we can consider its solution as a recourse action where the term $$Wy$$ compensates for a possible inconsistency of the system $$Tx\leq h$$ and $$q^Ty$$ is the cost of this recourse action.

The considered two-stage problem is linear because the objective functions and the constraints are linear. Conceptually this is not essential and one can consider more general two-stage stochastic programs. For example, if the first-stage problem is integer, one could add integrality constraints to the first-stage problem so that the feasible set is discrete. Non-linear objectives and constraints could also be incorporated if needed.

Distributional assumption
The formulation of the above two-stage problem assumes that the second-stage data $$\xi$$ can be modeled as a random vector with a known probability distribution (not just uncertain). This would be justified in many situations. For example $$\xi$$ could be information derived from historical data and the distribution does not significantly change over the considered period of time. In such situations one may reliably estimate the required probability distribution and the optimization on average could be justified by the Law of Large Numbers. Another example is that $$\xi$$ could be could be realizations of a simulation model whose outputs are stochastic. The empirical distribution of the sample could be used as an approximation to the true but unknown output distribution.


 * 1) Numbered lists are good
 * 2) very organized
 * 3) easy to follow