Modelling and Simulation

6 EC

Semester 1, periode 2

5062MOSI6Y

Eigenaar Bachelor Informatica
Coördinator dr. J.A. Kaandorp
Onderdeel van Minor Computational Science, jaar 1

Studiewijzer 2018/2019

Globale inhoud

The computer is an important aid for evaluating models of all kinds of phenomena, such as predicting the weather or designing a new financial system. With the growing power of computers, increasingly more complex models have come into range. The dependence of our society on such models has increased strongly. In order to be able to construct good, reliable computational models, knowledge and understanding of the entire process of modelling and simulation is essential. In this course the possibilities and limitations in executing mathematical computations are explored. Also a number of approaches for constructing mathematical and computational models will be discussed, as will be the relationship between model and reality.

After an introduction to modelling and simulation as the third paradigm of science, we cover three methods for modelling real world systems: cellular automata, ordinary differential equations, and complex networks. The course provides basic understanding of each method and their relation and introduces well-known examples for each approach. Every now and then we will derive some mathematical results such as integrating a simple ODE or deriving the diameter of a network structure; a degree mathematical skills are important to a computational modeler. Practical experience is obtained with back-to-back lab assignments which correspond to the concepts introduced in the weekly lecture material. The preferred programming language is Python. Example modelling assignments include traffic congestion, the flow of gas molecules, and the spreading of infectious diseases through our highly connected society.

The lecturer is himself a researcher in the computational science domain.

Studiemateriaal

Literatuur

  • Optional: A.B. Shiflet and G.W. Shiflet, 'Introduction to Computational Science', Princeton University Press, 1st or 2nd edition.
  • E-Book: 'Networks: Network Science' - Laszlo Barabasi: http://barabasilab.com/  & http://barabasilab.neu.edu/networksciencebook/

  • Optional: 'Graph Theory and Complex Networks, an Introduction' by Maarten van Steen, available via http://www.distributed-systems.net/index.php?id=gtcn-copy

Syllabus

  • 'Modelling and Simulation' by A.G. Hoekstra and P.M.A. Sloot

Overig

  • Slides
  • Any necessary reading material will be freely provided through Canvas

Leerdoelen

At the end of this course:

  • You can explain the added value of computational modelling to science;
  • You can formulate suitable models for a range of realistic phenomena and explain your choices;
  • You can analyse and solve some simple models analytically;
  • You can implement simple mathematical models in code, and verify and validate the correctness of your implementation;
  • You can solve simple ordinary differential equations analytically (integration method) as well as by numerical approximation (Euler algorithm);
  • You can explain and analyse how discretisation and numerical approximations affect the outcome of you simulations;
  • You can explain both the power and the limitations of models.
  • You understand the role of real data (note: this course does not explicitly handle model fitting or model selection techniques);
  • You can describe relevant properties of several classes of models and explain their meaning;
  • You know some network models and understand their role in modelling;
  • You can implement a few algorithms to generate different types of networks;
  • You can derive some basic mathematical properties of networks, such as diameter and giant component size.

Onderwijsvormen

  • Hoorcollege
  • Laptopcollege
  • Zelfstudie
  • Zelfstandig werken aan bijv. project/scriptie

Two times two hours of lectures each week, plus two times two hours of computer lab sessions. The lab sessions are important as they are used to explore the material in the lectures.

The course will be taught in English; reports must be written in English.

Verdeling leeractiviteiten

Activiteit

Aantal uur

Hoorcollege

28

Laptopcollege

14

Tentamen

3

Vragenuur

2

Zelfstudie

121

Aanwezigheid

Aanwezigheidseisen opleiding (OER-B):

  • Voor practica en werkgroepbijeenkomsten met opdrachten geldt een aanwezigheidsplicht. Wanneer studenten niet voldoen aan deze aanwezigheidsplicht kan dit als gevolg hebben dat het onderdeel niet met een voldoende kan worden afgerond.

Toetsing

Onderdeel en weging Details

Eindcijfer

50%

Exam

Moet ≥ 5.5 zijn

50%

lab assignments

A student passes if the overall average grade is at least 5.5 with the additional constraint that the final exam must be at least 5.5.

Fraude en plagiaat

Over het algemeen geldt dat elke uitwerking die je inlevert ter verkrijging van een beoordeling voor een vak je eigen werk moet zijn, tenzij samenwerken expliciet door de docent is toegestaan. Het inzien of kopiëren van andermans werk (zelfs als je dat hebt gevonden bij de printer, in een openstaande directory of op een onbeheerde computer) of materiaal overnemen uit een boek, tijdschrift, website, code repository of een andere bron - ook al is het gedeeltelijk - en inleveren alsof het je eigen werk is, is plagiaat.

We juichen toe dat je het cursusmateriaal en de opdrachten met medestudenten bespreekt om het beter te begrijpen. Je mag bronnen op het web raadplegen om meer te weten te komen over het onderwerp en om technische problemen op te lossen, maar niet voor regelrechte antwoorden op opgaven. Als in een uitwerking gebruik is gemaakt van externe bronnen zonder dat een bronvermelding is vermeld (bijvoorbeeld in de rapportage of in commentaar in de code), dan kan dat worden beschouwd als plagiaat.

Deze regels zijn er om alle studenten een eerlijke en optimale leeromgeving aan te kunnen bieden. De verleiding kan groot zijn om te plagiëren als de deadline voor een opdracht nadert, maar doe het niet. Elke vorm van plagiaat wordt bestraft. Als een student ernstige fraude heeft gepleegd, kan dat leiden tot het uitschrijven uit de Universiteit. Zie voor meer informatie over het fraude- en plagiaatreglement van de Universiteit van Amsterdam: www.student.uva.nl

Rooster

Het rooster van dit vak is in te zien op DataNose.

Aanvullende informatie

  • This course is part of the minor program Computational Science and runs in parallel with Scientific Data Analysis. It includes obligatory two-hour lectures and practical computer lab-sessions. All lab assignments are individual. At the end of the course is a written exam on all provided course material.
  • Basic programming skills in Python is highly recommended and preferred; if necessary then C or Java is also accepted. Some mathematical skills will be used, such as basic calculus, basic statistics (binomial distribution), and the exponential and logarithmic functions.
  • Presence at the lectures is obligatory. This course is intensive and some degree of self-study will be necessary. 

Contactinformatie

Coördinator

  • dr. J.A. Kaandorp