Simulation in Practice
Throughout this course, we have explored how simulation can be used to model randomness, generate complex random variables, analyse stochastic systems, and estimate unknown quantities using Monte Carlo methods. We have also seen how modern simulation techniques such as Markov chain Monte Carlo (MCMC) allow us to work with probability distributions that are difficult or impossible to analyse directly.
In practice, however, building a simulation model is often only the beginning. Real-world simulation studies must also address important practical questions:
- How can simulation estimates be made more accurate?
- How can computational cost be reduced?
- How can simulation be used to compare competing decisions or system designs?
- How can we efficiently explore large and complex input spaces?
This chapter focuses on these practical aspects of simulation.
We begin by introducing variance reduction methods, which improve the efficiency of Monte Carlo simulation by reducing estimator variability without necessarily increasing the number of simulation runs. In particular, we study:
- Importance Sampling, which focuses simulation effort on the most influential regions of the sample space;
- Stratified Sampling, which improves coverage by partitioning the sample space into representative regions;
- Latin Hypercube Sampling (LHS), which extends stratified sampling ideas to higher-dimensional simulation problems.
These methods are especially valuable when simulations are computationally expensive or when estimating rare events and extreme outcomes.
The chapter then introduces the idea of simulation optimisation and design of experiments (DoE). Rather than using simulation only to understand system behaviour, these approaches use simulation to support decision-making and system improvement. Applications include:
- choosing the number of servers in a queueing system;
- optimising EV charging infrastructure;
- comparing inventory policies;
- tuning machine learning hyperparameters;
- and evaluating alternative operational strategies.
Design of experiments provides systematic ways to explore simulation inputs efficiently, helping practitioners gain more information using fewer simulation runs.
Overall, this chapter emphasises that simulation is not only a mathematical or computational tool, but also a practical framework for experimentation, optimisation, and decision-making under uncertainty. These ideas play an increasingly important role in modern statistics, engineering, sustainability, operations research, finance, and artificial intelligence.