The module covers basic concepts in computational modelling and simulation. The focus is on three aspects:
Scientific Computing
- Finding roots of (systems of) linear and non-linear equations
- Numerical differentiation/integration schemes
- Solving differential equations numerically
- An introduction to Monte Carlo techniques
- Agent-based modelling
- Modelling networks
In the course I will demonstrate the use of these various modelling techniques to address a rich variety of problems from computer science, the biological sciences, physics, and economics.
Assessment
The assessment consists of two parts.
Part I (worth 30%)
Give a 5 minute talk (+2 minutes questions) about a simulation modelling paper published in a peer reviewed journal (see slides from first lecture for some a list of suggested papers). The talk should give a brief overview over the area of research the paper addresses, explain its contribution, and give a brief overview over the type of simulation modelling being used.
Marks will be given on: (i) the overall quality of your delivery of the talk, (ii) your comprehension of the paper and how well you answer questions, (iii) the quality of your slides, and (iv) the general organisation of the talk and how well you covered the aspects mentioned above.
Talks will be scheduled after Easter, so have your talk ready by April 20, it can be scheduled in any lecture/seminar slot after that date.
Part II (worth 70%)
A modelling problem is described in the first set of lecture slides (below). You are to address this problem using various techniques, compare your findings from them, and write a report that documents and summarises your findings. Marks are given for the quality of the report (10%), for how you address the points below (40%), and for the quality of an original extension of the problem (20%).
In particular, you should:
- Develop a model based on differential equations addressing the problem (7.5%)
- Explore the use of analytical techniques to gain insight into the system's behaviour (7.5%)
- Numerically integrate the differential equations using an integration method of your choice and compare the results to the analytical results (10%)
- Build and analyse an agent-based model that addresses the problem (15%).
The report (10% of the marks) will be marked according to the quality of the writing and figures.
The extension (10% of overall marks) will be marked according to originality (Is this an interesting question to ask in this context?), quality of the analysis (do you understand what is going on?), and its motivation (can you convince me that it makes sense?).
Reports are due at the end of term (May 15). Don't forget to upload any simulation code you developed for the assessment.
Further instructions about the assessment can be found in the first set of lecture slides (see below) and here.
Referral Coursework
A document describing the problem for the referral coursework can be found here. Please note that this coursework is due by August 14and should be submitted via handin (your computer code + the report as a pdf).
Lecture Slides
Links to lecture slides (some slides cover more than one lecture):
Introduction lecture.
What is science? I.
What is science? II.
Model building.
Solving systems of linear equations.
Finding roots of (systems of) non-linear equations.
Taylor expansions, numerical differentiation and integration.
Difference equations.
Introduction to differential equations.
Solution techniques for some types of ODEs.
Numerical solvers for ODEs I.
Numerical solvers for ODEs II.
Equilibrium analysis in 1d.
Mathematica tutorial (by Simon Tudge), example problems, answers.
Systems of linear ODEs.
Equilibrium analysis in higher dimensions, examples: competition between species and models of disease spread.
Introduction to "system dynamics".
exponential.nlogo, logistic.nlogo, lorenz.nlogo, love.nlogo, sheep.nlogo
An overview over Individual-based modelling.
Optimization and adaptive dynamics.
An overview over network theory.
Further reading
The course attempts to be a self-contained introduction to simulation and modelling. Some further reading on various aspects is available here: