MGMT90280 · Managerial Decision Analytics
Monte Carlo Simulation
Monte Carlo simulation is the simulation (prescriptive-analytics) topic of MGMT90280 Managerial Decision Analytics at the University of Melbourne — automated what-if analysis for decisions under uncertainty. Each uncertain input is replaced by a random draw from its distribution (via inverse-transform sampling), the model is run over many iterations, and you read the resulting distribution of the output to do risk analysis. In the final exam it is one of the five compulsory 20-mark questions, usually a single-server queueing or inventory model built with Excel sampling formulas.
What this chapter covers
- 01What Monte Carlo simulation is: modelling decisions under uncertainty with random draws
- 02The simulation loop: model → identify distributions → sample → repeat → decide
- 03Inverse-transform sampling: RAND() → RN ~ Uniform(0,1)
- 04Uniform draw x = a + (b − a)·RN and Normal draw x = NORM.INV(RN, μ, σ)
- 05Discrete distributions: cumulative-probability cutoffs and half-open [lower, upper) intervals
- 06Single-server queue recursion: arrival = cumulative IAT; start = max(arrival, previous departure)
- 07Departure = start + service; waiting time = start − arrival; server idle time
- 08Average waiting time versus a decision threshold — the explicit staffing decision
- 09Risk analysis and the ≥ 1,000-iteration requirement for a stable estimate
- 10Pros (many uncertain variables, risk analysis) and cons (trial-and-error, tedious modelling)
Single-server queue: should a bank add a second teller?
- +1Sample the service times with ST = 2 + 6·RN: 0.500→5.0, 0.333→4.0, 0.667→6.0, 0.167→3.0 min.
- +1Arrival times = running sum of the inter-arrival times (4, 3, 5, 4): 4, 7, 12, 16 min.
- +1Service start = max(arrival, previous departure): max(4,0)=4, max(7,9)=9, max(12,13)=13, max(16,19)=19 min.
- +1Departures = start + service: 4+5=9, 9+4=13, 13+6=19, 19+3=22 min.
- +1Waiting times = start − arrival: 0, 2, 1, 3 min.
- +1Average wait = (0 + 2 + 1 + 3) ÷ 4 = 6 ÷ 4 = 1.5 min. Since 1.5 < 3, do NOT add a second teller on this run — a four-customer trace only illustrates a study that needs ≥ 1,000 iterations.
Key terms
- Monte Carlo simulation
- Automated what-if analysis for decisions under uncertainty: uncertain inputs are represented by random draws from their distributions, the model is run over many iterations (≥ 1,000), and the distribution of the output is analysed. It evaluates the risk of a decision rather than searching for an optimum.
- Inverse-transform sampling
- The method for turning a random number RN = RAND() ~ Uniform(0,1) into a draw from a target distribution: x = a + (b − a)·RN for a Uniform(a,b), x = NORM.INV(RN, μ, σ) for a Normal, or mapping RN through cumulative-probability cutoffs for a discrete distribution.
- Cumulative-probability mapping
- For a discrete distribution, list the running-sum probabilities F(x) and give each value the half-open interval [F(previous), F(this)). A random number RN maps to the value whose interval contains it, so each RN produces exactly one draw.
- Inter-arrival time (IAT)
- The random gap between two consecutive arrivals. The arrival time of customer i is the running total of the inter-arrival times up to i; you cumulate the IATs before running the queue recursion.
- Single-server queue recursion
- For customers in arrival order: start = max(arrival, previous departure); departure = start + service time; waiting time = start − arrival. The server is idle for arrival − previous departure when that is positive.
- Waiting time
- The time a customer spends queuing, start − arrival. It is 0 when the customer arrives after the previous departure (the server was idle) and positive when they arrive while the server is still busy.
- Risk analysis
- Using the simulated output distribution to quote not just an average but the spread and the probability of outcomes that matter (e.g. the chance the average wait exceeds a threshold, or demand exceeds stock). It is the main reason to run many iterations.
- NORM.INV(RN, μ, σ)
- The Excel function that inverts the Normal distribution: given a cumulative probability RN it returns the value x at that percentile. The arguments are probability first, then the mean and the standard deviation (not the variance).
Monte Carlo Simulation FAQ
Why do you need at least about 1,000 iterations?
A handful of iterations — what you can do by hand in an exam — only illustrates the method; the simulated output is still very noisy. Running many iterations (≥ 1,000) lets the output distribution settle so the average, spread and probabilities are stable enough to base a decision on. Whenever you draw a conclusion from a short hand-run, say explicitly that a real study needs many more iterations.
What is the difference between simulation and optimisation in this subject?
Optimisation (linear and nonlinear programming with Solver) searches for the best decision; Monte Carlo simulation evaluates the consequences of a decision under uncertainty and reports the risk. If a question asks ‘what is the risk or distribution of the outcome?’ it is a simulation problem; ‘what is the best value?’ is optimisation. Simulation is trial-and-error and does not guarantee an optimum.
Can AI help me with Monte Carlo simulation in MGMT90280?
Yes, for understanding. Sia can explain the simulation loop step by step, walk through how a random number maps to a Uniform, Normal or discrete draw, and check that your queue recursion uses start = max(arrival, previous departure). It is a study aid that explains method and concepts — it does not sit your open-book exam, complete graded assignments, or promise a particular mark; the in-person exam is sat without generative AI or internet access, so use Sia to practise the method beforehand and always confirm rules and dates on the LMS/Moodle.
Exam move
Drill the two engines until they are automatic. First, inverse-transform sampling: from a random number RN, write x = a + (b − a)·RN for a Uniform, x = NORM.INV(RN, μ, σ) for a Normal, and for a discrete table build the cumulative column and read each half-open [lower, upper) interval — watch the boundary, since an RN equal to a cutoff belongs to the interval above it. Second, the single-server queue: cumulate the inter-arrival times into arrival times, then run start = max(arrival, previous departure), departure = start + service, waiting time = start − arrival straight down the table, and finish with an explicit decision comparing the average wait to the stated threshold. Lay out every column even if one arithmetic step slips, because the marks are for method shown, and always add the line that a short hand-run only illustrates a study needing ≥ 1,000 iterations. Simulation is Question 2 of five compulsory 20-mark questions in the open-book exam (Casio FX-82 and your own notes, 2 hours writing plus 30 minutes reading); at about 1.2 minutes per mark, budget roughly 24 minutes for it, and confirm the exact ~November-2026 exam date on the LMS/Moodle.
Working through Monte Carlo Simulation in MGMT90280? Sia is AskSia’s AI Statistics tutor — ask any MGMT90280 Monte Carlo Simulation question and get a clear, step-by-step explanation grounded in how MGMT90280 is taught and assessed. Read this chapter free, then take your hardest questions to Sia.