Simulation and Modelling

Module aims

In this module you will have the opportunity to:

  • use operational laws to relate different system performance measures and analyse systems scalability
  • design and implement discrete-event simulation models of simple systems
  • specify parallel simulation models
  • study the mathematical foundations of Markov processes and queueing theory
  • develop and solve mathematical models of simple queueing systems
  • apply the methods learnt to study the performance of real systems

Learning outcomes

Upon successful completion of this module you will be able to:

  • use operational laws to determine bounds on throughput and response time
  • design and implement discrete-event simulations
  • use statistical methods to model workloads and analyse simulation output
  • recall the theory underpinning Markov processes and their solution
  • specify a Markov Process for modelling a given system
  • derive closed-form solutions for single-queue systems and simple queueing networks
  • model and analyse a real-world system using appropriate state-of-the-art tools 

Module syllabus

  • Performance measures, bottlenecks and performance bounds
  • Poisson processes
  • Discrete-event simulation
  • Distribution sampling
  • Output analysis
  • Markov processes
  • Markovian queues and queueing networks
  • Modelling applications
  • Parallel simulation algorithms

Teaching methods

This module is motivated by real-world performance modelling problems, addressing many application areas, including computer systems, communication networks, manufacturing and logistical systems. The module blends a variety of mathematical and simulation approaches to performance analysis. The mathematical techniques used are developed from first principles, so you will obtain a deep understanding of both the foundations of each technique and its application. Simulation techniques are learned by designing, implementing and running simulation codes. A key objective is to tie the various ideas together, for example demonstrating that different modelling approaches lead to the same answer when applied to the same problem.

Classroom sessions will include traditional lectures and supervised problem solving, which are designed to reinforce understanding. These problems are not assessed, although specimen solutions will be provided. Past exam paper questions will also be included in the problem sets in order to help prepare you for the final exam.

An online service will be used as a discussion forum for the module. 


There will normally be two assessed coursework exercises designed to reinforce the material covered in lectures and give you hands-on experience of solving real modelling problems. You can either work on your own or in small groups (usually two or three students per group, depending on the nature of the problem). The assessed coursework counts for 20% of the marks for the module. There will be a final written exam, which will test both theoretical and practical aspects of the subject. This exam counts for the remaining 80% of the marks.

There will be detailed feedback on the coursework exercises which will include written feedback on your individual submissions and class-wide feedback explaining common pitfalls and suggestions for improvement.   

Reading list

Supplementary Reading

Module leaders

Dr Anthony Field
Dr Giuliano Casale