The Monte Carlo process, as applied to risk management, is an attempt to create a series of probability distributions for potential risk items, randomly sample these distributions, and then transform these numbers into useful information that reflects quantification of the potential risks of a real-world situation. While often used in technical applications (e.g., integrated circuit performance, structural response to an earthquake), Monte Carlo simu- lations have been used to estimate risk in the design of service centers; time to complete key milestones in a project; the cost of developing, fabricating, and maintaining an item;
inventory management; and thousands of other applications.
The structure of cost estimating simulations is often additive—meaning that the cost sums across WBS elements regardless of the estimating approach used for a particular WBS element. The structure of schedule simulations is generally based on a schedule network, which encompasses milestones or durations for known activities that are linked in a prede- fined configuration. Performance models can take on a variety of different structures, which are often unique to the item being simulated, and thus do not follow a simple pattern.
A summary of the steps used in performing a Monte Carlo simulation for cost and schedule follows. Although the details of implementing the Monte Carlo simulation will vary between applications, many cases use a procedure similar to this.
1. Identify the lowest WBS or activity level for which probability distributions will be constructed. The level selected will depend on the program phase—often lower levels will be selected as the project matures.
2. Develop the reference point estimate (e.g., cost or schedule duration) for each WBS element or activity contained within the model.
3. Identify which WBS elements or activities contain estimating uncertainty and/or risk. (For example, technical risk can be present in some cost estimate WBS ele- ments and schedule activities.)
4. Develop suitable probability distributions for each WBS element or activity with estimating uncertainty and/or risk.
The Monte Carlo Process 675
5. Aggregate the WBS element or activity probability distributions functions using a Monte Carlo simulation program. When performed for cost, the results of this step will typically be a WBS Level 1 cost estimate at completion and a cumulative dis- tribution function (CDF) of cost versus probability. These outputs are then ana- lyzed to determine the level of cost risk and to identify the specific cost drivers.
When performed for schedule, the results of this step will be a schedule at the de- sired (WBS) level and CDFs of schedule versus probability. The CDFs will typi- cally represent duration or finish date at the desired activity level, but can include other variables as well. These outputs are then analyzed to determine the level of schedule risk and to identify the specific schedule drivers.
Note: It should be recognized that the quality of Monte Carlo simulation results are only as good as the structure of the model, the quality of the reference point estimates, and the se- lection of probability distributions used in the simulation [the types of distributions (e.g., nor- mal, triangle), the number of distributions per element, and the specific critical values that
TABLE 17–9. ARRIVAL AND SERVICE RATE DATA Arrivals
Arrival Time between Number of
Customers (Min.) Occurrences
0 5
5 7
8 1
10 9
12 12
15 20
16 18
18 10
20 9
25 5
30 –––4
100 Services
Service Time at Checkout Number of
Counter (Min.) Occurrences
10 5
12 10
14 15
16 20
18 20
20 15
22 –––15
100
define the distribution (e.g., mean and standard deviation for a normal distribution)]. If these data are not carefully obtained and accurate, the results can be misleading, if not erroneous.
Decision makers are cautioned about believing results from Monte Carlo simulations pre- sented to several decimal places when there is often uncertainty in the first decimal place.
Example 17–3. The manager of a service center is contemplating the addition of a second service counter. He has observed that people are usually waiting in line. If the ser- vice center operates 12 hours per day and the cost of a checkout clerk is $60.00 (burdened) per hour, simulate the manager’s problem using the Monte Carlo method, assuming that the loss of good will is approximately $50.00 per hour.
The first step in the process is to develop procedures for defining arrival rates and ser- vice rates. The use of simulation implies that the distribution expressions are either nonex- istent for this type of problem or do not apply to this case. In either event, we must con- struct either expressions or charts for arrival and service rates.
The arrival and service rates are obtained from sample observations over a given pe- riod of time and transformed into histograms. Let us assume that we spend some time ob- serving and recording data at the one service counter. The data recorded is the time be- tween customer arrivals and the number of occurrences of these arrivals. The same procedure is repeated for servicing. We record the amount of time each person spends at the checkout facility and the number of times this occurs. These data are shown in Table 17–9 and transformed to histograms in Figures 17–7 and 17–8. From Table 17–9 and
The Monte Carlo Process 677
20
16
12
8
4
0 5 8 10 12 1516 18 20 25 30
NUMBER OF OCCURRENCES
ARRIVAL RATE BETWEEN CUSTOMERS, MIN.
FIGURE 17–7. Arrival rate histogram.
Figures 17–7 and 17–8, five people entered the store within one minute of previous cus- tomers. The five customers may have come at the same time or different times. Likewise, 18 people entered within 16 minutes of other customers. The service rates are handled in the same manner. Fifteen people required 14 minutes of service and 20 people required 18 minutes of service.
The second step transforms the arrival and service histograms into a step-function type chart in which for every number there corresponds one and only one arrival and ser- vice rate. To develop these charts, it is best to have 100 observances for both arrivals and services, as discussed in the first step and shown in Table 17–9.
The step-function charts are based upon 100 numbers. Consider the service data in Table 17–9. We let the numbers 1 through 5 represent 10 minutes of service since there were 5 observations. Ten observations were tabulated for 12 minutes of service. This is
20
15
10
5
0 10 12 14 16 18 20 22
NUMBER OF OCCURRENCES
SERVICE RATE, MIN.
FIGURE 17–8. Service rate data.
represented by the numbers 6 through 15. Likewise, the numbers 16 through 30 represent the 15 observations of 14 minutes of service. The remaining data can be tabulated in the same manner to complete the service chart. The service step-function chart is shown in Figure 17–9 and the arrival step-function chart is shown in Figure 17–10. Some points on these charts are plateau points, as the number 15 on the service chart. The number 15 refers to the left-hand-most point. Therefore, 15 implies 12 minutes of service, not 14 minutes of service.
The third step requires the generation of random numbers and the analysis. (See Table 17–10.) The random numbers can be obtained either from random number tables or from computer programs that contain random number generators. These random numbers are used to simulate the arrival and service rates of customers from the step-function charts in Figures 17–9 and 17–10. Random numbers are generated between 0 and 1. However, it is common practice to multiply these numbers by 100 so as to have integers between 0 and 99 or 1 and 100. As an example, consider the following 10 random numbers: 1, 8, 32, 1, 4, 15, 53, 80, 68, and 82. The numbers are read in groups of two, with the first number rep- resenting arrivals and the second representing service. From Figure 17–10, the number 1 corresponds to a 0 arrival rate. From Figure 17–9, the number 8 corresponds to 12 minutes
The Monte Carlo Process 679
100 90 80 70 60 50 40 30 20 10
010 11 12 13 14 15 16 17 18 19 20 21 22
RANDOM NUMBERS
SERVICE RATES, MIN.
FIGURE 17–9. Step-function chart for random number service rates.
100 90 80 70 60 50 40 30 20 10 0
5 10 15 20 25 30
RANDOM NUMBERS
ARRIVAL RATE BETWEEN CUSTOMERS, MIN.
FIGURE 17–10. Step-function chart for random number arrival rates.
TABLE 17–10. SINGLE QUEUE MONTE CARLO SIMULATION MODEL
Random Arrival Time Random Service Time Waiting
Number Increment: Arrival Number Increment: Service Service Time
(Arrival) Min. Time (Service) Min. Begins Ends (Min.)
1 0.0 8:00 8 12.00 8:00 8:12 0.0
32 12.00 8:12 1 10.00 8:12 8:22 0.0
4 0.0 8:12 15 12.00 8:22 8:34 10.00
53 15.00 8:27 80 20.00 8:34 8:54 7.00
68 16.00 8:43 82 20.00 8:54 9:14 11.00
87 20.00 9:03 83 20.00 9:14 9:34 11.00
17 10.00 9:13 47 16.00 9:34 9:50 21.00
32 12.00 9:25 64 18.00 9:50 10:08 25.00
99 30.00 9:55 10 12.00 10:08 10:20 13.00
72 16.00 10:11 39 16.00 10:20 10:36 9.00
82 18.00 10:29 41 16.00 10:36 10:52 7.00
7 5.00 10:34 65 18.00 10:52 11:10 18.00
30 12.00 10:46 92 22.00 11:10 11:32 24.00
77 18.00 11:04 32 16.00 11:32 11:48 28.00
96 25.00 11:29 82 20.00 11:48 12:08 19.00
30 12.00 11:41 41 16.00 12:08 12:24 27.00
Total waiting time ⫽230.00 minutes
of service. Therefore, assuming that the store opens at 8:00 A.M., the first customer arrives at the checkout facility at approximately 8:00 A.M. and leaves at 8:12, after requiring 12 minutes of service at the checkout counter. The second pair of points are 32 and 1. The first number, 32, indicates that the second customer arrives 12 minutes after the first customer, at 8:12. But since the first customer is through the service facility at 8:12, the second cus- tomer will not have to wait. His 10 minutes of service at the checkout counter will begin at 8:12 and he will finish at 8:22. The third customer arrives at the same time as the sec- ond customer and requires 12 minutes service. But since the second customer is in the ser- vice facility, the third customer must wait in the queue until 8:22 before entering the ser- vice facility. Therefore, his waiting time is 10 minutes and he leaves the service facility at 8:34 (8:22 ⫹12 minutes service). The fourth customer arrives 15 minutes after the third customer (at 8:27) and requires 20 minutes service. Since the service facility is occupied until the third customer leaves at 8:34, the fourth customer must wait seven minutes in the queue. This process is repeated for 16 customers and the results are shown in Table 17–10.
The fourth step in the process is the final analysis of the data. The data shown in Table 17–10 consisted of 16 customers processed in the first four hours. The summation of the waiting time for the four hours is 230 minutes. Since the store is open for 12 hours, the to- tal waiting time is 3 ⫻230, or 690 minutes. At $50.00 per hour loss of good will, the man- ager loses approximately $575 per 12-hour day because of waiting-line costs. The man- ager can put in a second service counter. If he pays the worker $60.00 per hour burdened for a 12-hour day, the cost will be $720.00. Therefore, it is more economical for the man- ager to allow people to wait than to put in a second checkout facility.