  Setting a Project Budget

In this tutorial we are going to use Monte Carlo simulation to forecast the project budget to build a new garden shed. The technique works equally well on any type of project whether it be a construction, software development or business change project.

Let us consider the project is complete when the following activities have been executed.

 Activity Dig foundations Lay foundations Lay shed base Fix shed walls Fix shed roof Fix glass

In addition we also require the following materials.

 Material Gravel Sand Cement Shed Glass

Now we have the activities and the materials the next step is to assign estimates for each of these. We will use a labour rate of \$20 per hour so we can express all estimates in dollars. Although you could use other units such as man days or man months, as long as all estimates are in a common unit.

In using a Monte Carlo simulation, rather than assigning one single estimate we assign three estimates. We assign a low, a medium and a high estimate. In addition to this, we also choose a probability for falling between the estimates i.e. how likely is it that each activity will complete between the low and medium estimate or the medium and high estimate. So let us do this for our first activity, dig foundations.

For this example let us say that digging foundations would usually take 2 hours to complete, this will be our medium estimate. If all goes well it could be done in 1 hour, so we use this as the low estimate. If things do not go to plan, like we find lots of rubble under the ground, it could take up to 4 hours to complete, so let's use this figure as our high estimate. Now we consider how likely it is that we will complete the task between the low and medium estimates. In our example, let us assume the ground looks fairly clear so we will say the chance of being between the low and medium, between 1 and 2 hours, is 70% and therefore the chance of having an issue, and the value being between medium and high estimate is 30%.

Converting from hours to dollars we then have the following.

 Activity Low Estimate Medium Estimate High Estimate Confidence Dig foundations \$20 \$40 \$80 70%

We then repeat this for each activity in the project assigning low, medium and high estimates along with the probability of each activity falling between the low and medium estimates. Let us use the following figures.

 Activity Low Estimate Medium Estimate High Estimate Confidence Dig foundations \$20 \$40 \$80 70% Lay foundations \$40 \$60 \$80 50% Lay shed base \$10 \$20 \$40 80% Fix shed walls \$40 \$50 \$60 75% Fix shed roof \$10 \$20 \$30 75% Fix glass \$20 \$30 \$40 80%

Next we can assign costs to the materials. It may be the case that some costs are fixed. For example we may know the cost of the shed is fixed at \$200. In this case we can apply the same costs for each element so that there is no variability.

 Material Low Estimate Medium Estimate High Estimate Confidence Shed \$200 \$200 \$200 100%

For other materials there may be only a low or high cost. For example we may need one bag of sand or two but we will never buy between one and two bags. In this example we can provide just low and high estimates and leave the medium estimate empty. The confidence here relates to the probability we will use the low estimate. In the example below we are saying we are 75% confident that we will need one bag costing \$5 and therefore 25% confident that we will need two bags costing a total of \$10.

 Material Low Estimate Medium Estimate High Estimate Confidence Sand \$5 - \$10 75%

We can also have two estimates, either low and medium or medium and high, the same. For example we may need between 4 and 7 panes of glass, each pane costing \$30, but we definitely need at least 4 so the low and medium estimates can be set to 4 panes and the high estimate set to 7. Let's use a confidence factor of 50%. Here we are saying 50% of the time we will need 4 panes (\$120) and 50% we will use between 4 and 7 panes (\$210).

 Material Low Estimate Medium Estimate High Estimate Confidence Glass \$120 \$120 \$210 50%

We continue with the material estimates and have the following.

 Material Low Estimate Medium Estimate High Estimate Confidence Gravel \$20 \$40 \$80 70% Sand \$5 - \$10 75% Cement \$10 \$20 \$40 80% Shed \$200 \$200 \$200 100% Glass \$120 \$120 \$210 50%

If we were to enter these values into the simulation tool it would look like the following. Note the confidence is only required for the percentage chance of being between the low and the medium estimate. The confidence of being between the medium and high estimate is simply derived. Also note there is no need to key in \$ as the simulation could be for any units, as long as you use the same for each item.

Now we have all the data entered to run the simulation, we can press the "Perform Analysis" button.

However let us step through what actually happens during the simulation process.

To get a forecast we simulate the project running many times so we can see the probability of completing within certain criteria such as cost or effort. It does this by taking each item in turn and assigning it a value based on the data entered. So firstly we take dig foundation and generate a simulated result, which is a random number. Based on the data we entered this will be between \$20 and \$40, 70% of the time and between \$40 and \$80, 30% of the time. For the first simulation, suppose we get \$35 as the result. We then repeat this for all the items until we have values for each, and then sum them up. In this example the first simulation generated the following values.

 Item Value Dig foundations \$35 Lay foundations \$70 Lay shed base \$15 Fix shed walls \$40 Fix shed roof \$30 Fix glass \$20 Gravel \$60 Sand \$5 Cement \$25 Shed \$200 Glass \$120 Total \$620

This simulation generated a forecasted project cost of \$620. We then repeat the process many times, each time producing a different total. After running many times we can view how well the various results distribute. The free Monte Carlo simulation tool runs for 100 iterations. For up to 100,000 iterations simply purchase a license key. Running a simulation with 100,000 iterations will vastly increase the reliability of the results.

Now having entered the data and ran the simulation let us take a look at the results.

The table below shows the forecast costs of building a garden shed 100,000 times. It divides the results into 20 separate ranges and shows a count of each time a simulation falls within a given range. It also provides the cumulative number of simulations falling up to the current range and also expresses this as a percentage of the total number of simulations. You can see that the project completed 291 times in the range \$514 to \$532. You can see that between \$609 and \$627, there were 16,450 simulations observed, and that up to \$627 a total of 63,514 simulations had completed, which is 63.5% of the time.

The chart below presents the same information graphically with each bar representing the number of times the project result completed within the range. The line represents the cumulative % of results which were observed by each of the range segments. Now we have the results we can use these to aid our decision making process of producing the project budget. If we had taken a total of the most likely estimates we would have produced a project budget of \$605. We can see from the results that with this estimate we would only complete the project to budget 47.1% of the time. So for over half the time, 52.9%, additional budget would need to be found or if working to a fixed cost, the project would be working at a loss. You can see that if you increase the budget to \$684 we would increase the percentage chance of delivering the project up to 93.5%. If we wanted to increase the budget to where we were 100% sure we would set it at \$779 rather than having to set it at \$870, which was the total of the most pessimistic estimates. In fact setting the budget to \$722 would give us a 99.1% chance of delivering within cost.

Whilst this example is based on a very simple project with a small budget it demonstrates the value of the technique and the advantages for large, complex or multi-million dollar project are far greater. You can see by examining the results you have far more information to base your judgement on and can set the project budget accordingly. Whilst you cannot see the future by using a Monte Carlo simulation the potential risks and uncertainty have been taken into account enabling you to predict it with a greater degree of confidence.

Simulations are a very powerful tool, and it is important to understand all of the variables, inputs and outputs involved. The information that comes out is only as good as the information that goes in. It is important to collect data from people who understand the project and the specific items involved. Also it is important to test the model to ensure realistic results are provided.

This tutorial should have demonstrated the value of Monte Carlo simulation however don't take our word for it, try it with your own project data. Simply go to the
Simulation Data Entry and see the results for yourself.

To see another example of the technique being used for evaluating a new business venture click
here.