Monte Carlo simulators

By | May 11, 2015

“There are too many variables to take into account … it’s impossible to know what the chance of success is.”

 

When I started my latest venture I knew that there was a possibility that it would fail. I’d spent years working with estimates and trying to forecast timelines, but this had lots of inputs with values that had a range of possibilities. How on earth could I make sense of it all? What were my chances of success?

I first heard about Monte Carlo Simulators from Troy Magennis at a conference and then found Douglas Hubbard explaining them in his brilliant book, How to Measure Anything (chapter 6): “A Monte Carlo simulation uses a computer to generate a large number of scenarios based on probabilities for inputs. For each scenario, a specific value would be randomly generated for each of the unknown variables. Then these specific values would go into a formula to compute an output for that single scenario. This process usually goes on for thousands of scenarios.”

 

Let me explain using an example

 

I’ve created a basic Google-based Monte Carlo simulation (using only 100 scenarios) to illustrate their purpose which you are welcome to copy and play around with.

For my (fictional) business, I am confident on three ranges and a break even point (the cells in green):

  • I expect to be able to sell between 10,000 and 100,000 units
  • I expect to be able to sell each unit at a price between £5 and £10
  • I expect my costs to be between £100,000 and £300,000

The simulator then runs 100 scenarios (one scenario per row in the sheet), which:

  • Generates a single figure for the number of units sold (randomly generated between 10,000 and 100,000)
  • Generates a single unit price (randomly generated between £5 and £10)
  • Generates a single cost figure (randomly generated between £100,000 and £300,000)

Then, once it has run all 100 scenarios, it creates a histogram to show the overall likelihood of possible outcomes. When you change any of the inputs (the green cells) it re-runs all of the randomly generated numbers, so your chance of success will change. How much this figure changes depends upon the number of inputs, how wide your ranges are, and how many scenarios you run.

The output of a Monte Carlo simulator

The output of a Monte Carlo simulator

 

Summary

The best thing about a Monte Carlo simulator is that it allows you to use ranges of figures rather than single figures: it is generating probability out of uncertainty. Although they can take a bit of time to set up, and you need to consider your ranges, another benefit is that they allow you to see how changing your inputs affects the project. For example, a question like “What happens if we cut the cost of the product?” can be considered in a matter of seconds.

However, their power can also be their downfall. Some simulators have a single figure output (e.g. “chance of success is 54.92%”) which implies precision. Although this figure is mathematically correct based on the random calculations the simulator ran, it will change every time you re-run the simulator. So quoting an output with such a precise, pseudo-scientific number isn’t sensible. My advice, as well as explaining how a simulator works and the wide ranges you have input, would be to only ever express your output as a whole number, ideally rounding up or down to the nearest 10%.

As mentioned, I used such a simulator before starting my business. It helped me consider my approach and costs, question what my ranges were for various factors. It gave me an idea of my chances of success, which was in a region that I was prepared to take a risk on, whilst at the same time reminding me that failure was a possible outcome.

Have you used a Monte Carlo simulator? Feel free to leave us a comment below if you’ve got a story to tell.

 

Note: I’m working on a project about estimation and predictions at the moment (if you’d like to be involved, please get in touch).

3 thoughts on “Monte Carlo simulators

  1. Pingback: Guesstimate | Scrum & Kanban

  2. Pingback: Estimation meets Cynefin | Scrum & Kanban

  3. Johan Brodin

    Hi David,

    Great article!

    Have been working with Monte Carlo estimation for agile teams for almost 2 years. I think it is great for both the teams as well as the discussion around risk with stakholders around project deadlines. Have put togheter below cloud solution for Project estimation and tracking to make my life easier and I hope it can help others as well.

    https://agilemontecarlo.com/

    /Johan

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.