Quantifying the Uncertainty: Monte Carlo Simulation
When making forecasts or performing risk analysis, it is impossible to escape from variability and uncertainty. Even with large amounts of past performance data at our fingertips, the future is unpredictable and unforeseen events can change the course of a project.
Monte Carlo simulation does not try to eliminate risk – instead, it uses thousands or millions of permutations of random variables to calculate all possible outcomes. The probability distribution it generates is remarkably accurate, making it one of the most popular methods of forecasting in project management.
The Kanban Method uses Monte Carlo simulation to generate accurate predictions for likely project duration and total output.
What is the Monte Carlo method?
The Monte Carlo method or Monte Carlo simulation is a mathematical technique used for forecasting which takes into account risk, uncertainty and variability. The method is used in a wide range of fields – project management, physical science, finance, computational biology to name a few – to model outcomes in dynamic systems.
First, let’s consider a simple system with simple inputs:
As A, B, C and D are always the same, the output will always be the same and it can be easily calculated. The same initial conditions will always lead to the same output.
Now, imagine that input A has a range of possible values – the output will also be variable. And when there are many more possible inputs and all of them have a range of possible values, the output is not that simple to calculate. That’s where you need to use Monte Carlo simulation.
The method uses a computational algorithm to simulate the process thousands or even millions of times, using the whole variability range for each of the inputs. It outputs a probability distribution showing all the possible outcomes and the likelihood that each outcome will occur. By using a computationally generated range of simulated data, the Monte Carlo method produces remarkably accurate models of real systems.
History of Monte Carlo
The Monte Carlo method in its modern form was invented in the late 1940s. Scientists at the Los Alamos Scientific Laboratory were investigating how far neutrons could travel through different types of materials to research how best to shield from radiation. While the physicists had most of the data required, they couldn’t find a solution by using the deterministic mathematical methods common at the time.
Polish-American nuclear physicist Stanislaw Ulam had the idea of using the results from random experiments. While recovering from an illness and playing solitaires to stave off boredom, he tried to predict the probability of all 52 cards being laid out perfectly. When calculations failed to give a suitable answer, he tried simply laying the cards out 100 times and seeing what the results were. The idea was immediately applicable to the neutron diffusion problem. Due to the top-secret nature of the work, the project would need a code name – the scientists chose Monte Carlo.
Despite the limited computation tools of the time, Monte Carlo methods were key to the Manhattan Project research. Since then, and as computers have evolved and improved, the method has been used in operations research, molecular biology, fluid mechanics, project management, artificial intelligence and many more.
How to perform a Monte Carlo Simulation
To perform a Monte Carlo simulation for project duration, first you need duration estimates for each activity.
To finish a project, three activities A, B and C have to be completed. Our project manager has estimated the optimistic, most likely and pessimistic durations for these tasks. Durations are measured in days.
This gives a best case estimate of 30 days, most likely estimate at 36 days and a pessimistic estimate of 42. However, it doesn’t show the probability range of these options.
The Monte Carlo method will use the whole range of possible input durations. For any iteration, A will have a random value between 8 and 12, B – between 10 and 14 and C – between 12 and 16. Running the Monte Carlo simulation 300 times will give results that look something like this:
The simulation provides you with a much more detailed analysis of your data. This enables you to make better, data-driven project management decisions.
WE UNCOVER THE EFFICIENCY OF YOUR WORKFLOW
Optimize your performance with Kanban analyticsSee a dashboard with your data
Monte Carlo Method and Kanban forecasting
In our previous example, our Monte Carlo simulation relied on the best case, most likely and worst case estimates that we provided. The potential drawback here is that it relies on the assumption that the estimates are correct. If our project manager made a mistake in their predictions, the whole simulation will be affected. It is always better to base Monte Carlo inputs on real data from your process.
Monte Carlo simulations in Kanban come in two forms: calculating the number of tasks to be finished in a given period, or the delivery date of a number of tasks to be completed.
Monte Carlo: Number of Tasks
The Number of Tasks chart shows how many items can be completed within a certain timeframe. For example, you know the next product update is planned for June 15th and you want to know how many new features will be ready by then. This Kanban Monte Carlo simulation uses throughput as the input variable.
Monte Carlo: Delivery Date
The Delivery Date chart shows the date a number of tasks will be completed and the level of certainty that this will happen. For example, you have a backlog of 20 tasks and you want to give your client a likely delivery date. This Kanban Monte Carlo simulation also uses throughput to calculate the results.
Using Monte Carlo simulation for your Kanban process keeps your forecasts grounded in reality. No guesswork or subjective estimating is involved – just accurate probability-based future predictions calculated from previous performance data.
What approaches do you use to make your forecasts? Have you tried Monte Carlo simulations? Tell us about your experience in the comments!
Meet the Author
Sonya Siderova is a passionate product manager and a driving force behind Nave, a Kanban analytics suite that helps teams become more efficient through data-driven decision making. When she's not catering to her two little ones, you might find Sonya absorbed in a good heavyweight boxing match or behind a screen crafting a new blog post.
Surviving and thriving as a small business can be a lot like a boxing match that repeats all too frequently. Learn… https://t.co/rleP3Mod6pFollow
Agile businesses across the globe are using Nave to perform probabilistic forecasts based on their past performance… https://t.co/UN9Xvnkr8mFollow
Have you felt like your team is always busy, but nothing is ever quite finished? WIP limits in Kanban stop tasks ge… https://t.co/BdzKQgbcxPFollow
Partners with us! Take your training and consultancy sessions to a whole new level. With Kanban analytics on their… https://t.co/MfSDij0YpnFollow
Are you ready to recap the benefits Kanban analytics can bring to your process? Get started with Nave today!… https://t.co/YDBCvZNd2jFollow
The Kanban Maturity Model maps ~150 practices against levels of organization & leadership maturity.… https://t.co/8UVqQFtidyFollow
Measure and improve your performance with our advanced Kanban analytics for Asana projects. See a dashboard with yo… https://t.co/slyVqHVf2zFollow
To improve workflows, first you must understand how to identify problem areas. Learn how to recognize the most comm… https://t.co/hs843RLmgSFollow
Agile Kanban Istanbul presents a unique opportunity to connect with and learn from the Kanban community in Europe a… https://t.co/TaL7qcL6ItFollow
In this infographic, we’ll be explaining how to identify bottlenecks and stabilize your workflow with the cumulativ… https://t.co/H8tkVylPKZFollow
The Cycle Time Histogram for Trello shows the overall distribution of the completion times of the tasks in your pro… https://t.co/g1CpkGgiTAFollow
We uncover the efficiency of your workflow. Try our versatile range of analytical charts for free on your favorite… https://t.co/nuClp4odyrFollow
Follow this guide to quickly and easily set up Nave in Jira. We've broken down the process in three simple steps so… https://t.co/S8GyzE4epVFollow
How did supermarket restocking techniques revolutionize product management? Learn the history of Kanban and how it… https://t.co/pzVx3P7wUJFollow
Nave’s range of Kanban analytics helps you spot productivity trends at a glance. Select your platform and improve y… https://t.co/ls0dBW0A7YFollow
Nave's Kanban analytics suite helps you collaborate better and ship faster across all of your Azure boards. Request… https://t.co/uSXlnY2Aq5Follow