Monte Carlo 101: How Monte Carlo Schedule Simulations Work

Monte Carlo Schedule Simulations

The term Monte Carlo Simulation just has that aura and feel about it…… it sounds complex. But in reality it’s not as complex as we think. Let’s see if we lay it out for you in straightforward terms.

What is a Monte Carlo Simulation?

A Monte Carlo simulation is simply a way to understand how inputs into a system might affect the outputs. Let’s say you have a box of coins that you pour out onto a table. Once they all drop, you count tails and heads and come up with a ratio that you plot on a graph. Then you do this same experiment 1000 times to see what the results and the graph look like. This process uses a Monte Carlo Method.

Now, if you programmed a computer to model this same process and you ran the model 1000 times or more, graphing the results, you would have a Monte Carlo simulation.

Monte Carlo and Scheduling

Now in scheduling, let’s assume that our schedule is a model and that the CPM Scheduling algorithm that we run to calculate the project’s finish date is our simulation.

Let’s then try to understand our duration estimates using this Monte Carlo method. So let’s find a way to vary our activity durations, then run the simulation (aka CPM Scheduling) to see what happens.

We can vary our durations by changing them from a single value to a range of values – from Most Likely duration to Least Likely duration and somewhere in the middle.

So now our project’s activities each look like this:

Monte Carlo Risk Analysis

The Simulation, Simplified

Now, let’s take Job 1, use the Best-Case number, and run CPM Scheduling. What’s our Finish Date? Oh!

Now, let’s take Job 1, use the Expected number, and run CPM Scheduling. What’s our Finish Date? Wow.

Now, let’s take Job 1, use the Worst-Case number, and run CPM Scheduling. What’s our Finish Date? Hmm.

And so on….

Making the Simulation Even Better

To give richer results, let the computer try every number between Best-Case and Worst-Case, choosing one at random.

And to make the results even richer, program the computer to pick a set of random durations for each Job, (within the range [Best-Case to Worst-Case]) and run CPM Scheduling. Plot the Finish Date of the project on a graph.

Repeat a lot of times (1,000x, 100,000x or more). Then, plot a distribution of calculated project Finish Dates.

And you get something that looks like this.

monte carlo scheduling simulation

What Are The Benefits of Monte Carlo Simulations?

A Monte Carlo schedule simulation provides a project’s decision-maker with a scope of possible results and the probabilities each outcome might happen. It gives you the extreme possibilities—the results of going-for-broke and for making more conservative decisions—along with all possible ramifications for middle-of-the-road decisions.

New Call-to-action

Author:
Michael is an avid project controls blogger and is the Chief Learning Officer here at Plan Academy. Michael has taught 1000s professionals how to use project controls software like Primavera P6 over the past 10 years through his online courses and tutorials. Michael is a member of AACE, the Guild of Project Controls and holds his PMP certification from PMI.