G54SOD: Simulation and Optimisation for Decision Support

Peer-Olaf Siebers [website]
Dario Landa-Silva [website]

Spring 2019 version


This module offers insight into the applications of selected methods of decision support. The foundations for applying these methods are derived from Operations Research Simulation, Social Simulation, Data Science, Automated Scheduling, and Decision Analysis. Throughout the module, you will become more competent in choosing and implementing the appropriate method(s) for the particular problem at hand.

If you are one of my COMP4038 students, please use Moodle instead of this website, as the slides here contain lots of spoilers for the in-class activities.

I teach this module together with my colleague Dario Landa-Silva. Here I will only publish my material.

List of Topics


Lecture: Introduction to simulation and optimisation (the bigger picture) [slides] [sample models]
Workshop: Simulation study life cycle [slides]
Lab: Understanding the context [worksheet]
Lecture: Introduction to AnyLogic and Java [slides] [source code]
Workshop: Working with AnyLogic and Java [slides]
Lab: AnyLogic Tutorials (1/2) [worksheet] [laptop tutorial]

Developing Models and Algorithms

Lecture: Conceptual modelling + conceptual modelling exercise [slides]
Homework: Watch the following video >>Inaugural Lecture of Professor Stewart Robinson<< [video link]
Workshop: Data and information + representing unpredictable variability [slides]
Lab: AnyLogic Tutorial (2/2) [see last week's worksheet]
Lecture: Discrete event modelling and simulation [slides] [worksheet] [model (booking clerk v2)]
  • Useful resource: Nathaniel Osgood's Discrete Event Modelling in AnyLogic [video 1] [video 2] [video 3]
  • Useful resource: SimioSimulation YouTube Chanel [url]
  • Workshop: Validation and verification within the simulation life cycle + introduction to group activity [slides]
    Lab: Group activity: Initial brainstorm [group activity task sheet]
    Lecture: Agent-based modelling and simulation [slides] [model (challenge solution)]
  • Useful resource: Nathaniel Osgood's ABM Bootcamp slides [url]
  • Useful resource: Jose Vidal's videos on ABM and MAS using NetLogo [url]
  • Workshop: Introduction to focus groups + Peer's research [slides] [model (adaptive architecture)]
    Lab: Group activity: Focus groups [see group activity task sheet]
    Lecture: System dynamics modelling and simulation + hybrids [slides] [model (climate assessment)]
  • Useful resource: Transentis's Introduction to System Dynamics with iThink [video 1] [video 2] [video 3]
  • Workshop: AnyLogic - Beginner to Pro in under an hour ;) [slides] [draft model bundle v1]
    Lab: Group activity: Presentations [see group activity task sheet]
    Lecture: Constructive and Local Search Heuristics
    Workshop: Combining Simulation and Optimization
    Lab: Exploring Simulation Optimisation Examples
    Lecture: Evolutionary Algorithms
    Workshop: Evaluating Heuristic Algorithms
    Lab: Experiments with Heuristics


    Lecture: Optimisation with ABM Simulation
    Workshop: Optimisation Experiments in AnyLogic
    Lab: Implementing Simulation Optimisation
    Lecture: Experimentation [slides] [model (factory example)]
  • AnyLogic HowTo Video: Optimisation Experiment [url]
  • Workshop: Peer's PhD students present their PhD projects [slides] [model (supply chain - heuristic lab)]
  • My HowTo Video: Running Experiments in HeuristicLab Using AnyLogic [url]
  • Lab: Try linking AnyLogic and HeuristicLab [instructions]; start with planning coursework 2

    Decision Support in Practice

    Lecture: Cost-Benefit and Multi-Criteria Decision Analysis [slides]
    Workshop: /
    Lab: Coursework clinic [model (booking clerk v3)] (uses a source element when recycling PC agents)


    This year's coursework 2 task description [url]
  • Some advice for coursework 2 [url]
  • Last year's exam (without details about the optimisation question) [url]


    We will use AnyLogic Free PLE 8 for this module. There is a free introductory book for v7 available from the AnyLogic website (and an updated version to buy from Amazon). There is also an interesting blog with the latest news about AnyLogic

    Below you find a collection of books that we would recommend for self-study. Most of the module's teaching is based on Stewart Robinson's book. Borshchev's book (although a bit outdated) is useful if you want to learn more about the technical aspects, i.e. how to implement simulation models in AnyLogic. More up-to-date information is available in the AnyLogic Help.

    Simulation in General:

    Discrete Event Simulation:

    Agent-Based Simulation:

    System Dynamics Simulation:

    Java Programming:

    Heuristic Optimisation:

    Furthermore, the WSC Proceedings are also a valuable source of information, in particular the introductory tutorials are very useful [url] (you can download all papers directly from this website for free). Another good resource for scientific papers is Google Scholar [url]. You will also find more about my research in Google Scholar [url].

    This site uses cookies to anonymously measure how people use it!