Within the mathematical programming community, it is common to split the field into topics such as linear programming, nonlinear programming, network flows, integer and combinatorial optimization, and, finally, stochastic programming. Convenient as that may be, it is conceptually inappropriate. It puts forward the idea that stochastic programming is distinct from integer programming the same way that linear programming is distinct from nonlinear programming. The counterpart of stochastic programming is, of course, deterministic pro gramming. We have stochastic and deterministic linear programming, deterministic and stochastic network flow problems, and so on. Although this book mostly covers stochastic linear programming (since that is the best developed topic), we also discuss stochastic nonlinear programming, integer programming and network flows.