Monte Carlo Sampling
In stochastic programming (SP), when one or more random variables have a continuous (or discrete but infinite) event space, it is obviously computationally impossible to explicitly account for the infinite number of possible outcomes. For such cases, Monte Carlo sampling (also called pre-sampling) can be used to approximate the problem using a finite scenario tree. As illustrated in the figure below, if the model has a single stochastic parameter with a continuous distribution such as the normal distribution, one can discretize the event space simply by generating N sample points and thereby construct a finite and tractable scenario tree. This is also the case for discrete distributions with infinite event spaces, such as the Poisson distribution.
Note: | Since the point probability of each scenario in the original model is zero, it is customary to set the probabilities of sampled scenarios to 1/N. |
Given the parametric distribution of each stochastic parameter, LINGO's sampling routines can be used to efficiently generate univariate samples from these distributions. When sampling, LINGO uses Latin-hyper-square techniques to reduce the sample variance. One may also specify a correlation matrix for the continuous random variable, which the sampling routines will use to induce correlation in the sample points. These sample points are then used to define discrete distributions, which approximate the original distributions. Repeating this for all continuous stochastic parameters, LINGO recasts the infinite event space model into an approximate model with a finite event space.