What is Monte Carlo simulation?

A technique that repeats a model many times with random inputs to show the full range and likelihood of possible outcomes.

Monte Carlo simulation diagram example

Public diagram from the Machinations Community. Open it on its own page

Monte Carlo analysis replaces single-number guesses with ranges. It plays out a model thousands of times, drawing random values for the uncertain inputs each time, and collects the results. The outcome is a spread of possibilities with probabilities, not one forecast, which is what risk decisions need.

How it works

Each pass picks values from the distributions you assign, such as a demand between 80 and 120 or a delay that is usually 3 days but sometimes 10. The model calculates the result for those values. After many passes, you look at the average, the spread, and the chance of crossing a threshold. The more passes you do, the steadier the estimates, with error shrinking roughly in proportion to one over the square root of the number of passes. The method is only as good as the distributions put in.

The result is often shown as a histogram or as a band around a median. Reading the percentiles, such as the value below which 10 percent or 90 percent of outcomes fall, gives a practical range for planning and for setting reserves.

Example

Say a project has two tasks in sequence. Each takes 4, 5, or 6 weeks with equal chance. The average total is 10 weeks. Of the 9 equally likely pairs, only 1 gives 12 weeks, and 1 gives 8 weeks, so there is an 11 percent chance of 12 weeks and the most likely outcome of 10 weeks has a 33 percent chance. Repeating this thousands of times gives the same picture for much larger models. This is an illustration with round numbers.

How to model it in Machinations

Use random rates on Sources, Gates with probabilities, and Registers with random formulas to represent uncertain inputs. Play many Plays at once and read the charts as a spread, with the median and the worst cases. Add an End condition for failure to count how often it happens.

See Monte Carlo simulation in a system you can Play

Build the rules in a Machinations diagram, change a value and Play it to watch how the system responds.