Course syllabus
Course-PM
FFR120 / FIM750 FFR120 / FIM750 Simulation of complex systems lp2 HT23 (7.5 hp)
Course is offered by the department of Physics
Contact details
Teacher
Main lecturer and examiner: Giovanni Volpe
Email: giovanni.volpe@physics.gu.se
Office address: Room S1019, Fysik Soliden
TAs homework correction
Agnese Callegari, Martin Selin, Harshith Bachimanchi, Vide Ramsten, Kunli Xiong, Gideon Jägenstedt, Yu-Wei Chang, Antonio Ciarlo, Jesus Pineda
Tutors projects
Agnese Callegari <agnese.callegari@physics.gu.se>
Martin Selin <martin.selin@physics.gu.se>
Harshith Bachimanchi <harshith.bachimanchi@physics.gu.se>
Vide Ramsten <vide.ramsten@physics.gu.se>
Jesus Pineda <jesus.pineda@physics.gu.se>
Yu-Wei Chang <yu-wei.chang@physics.gu.se>
Gideon Jägenstedt <gideon.jagenstedt@physics.gu.se>
Antonio Ciarlo <antonio.ciarlo@physics.gu.se>
Course purpose
Much of modelling in the sciences focuses on simple models, highlighting key mechanisms using small sets of moving parts. However, in complex systems interesting features are often a direct result of having large sets of interacting particles or agents with different characteristics. This makes new tools a necessity. This course introduces simulation techniques frequently used in complex systems to handle models with many heterogeneous parts. Specifically, we will look at agent-based modelling, evolutionary game theory, cellular automata, and networks, with application to physics, biology and social sciences. We will also learn how to validate the outcomes of simulation models in order to reach scientifically sound conclusions.
Course literature
Textbook: Aykut Argun, Agnese Callegari & Giovanni Volpe. Simulation of Complex Systems. IOP Publishing, 2022. |
GitHub page: https://github.com/softmatterlab/SOCS
Course design and schedule
All lectures and homework corrections will take place in person in the respective classrooms.
Link to the schedule in TimeEdit: TimeEdit
Detail of the schedule:
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Tue, 31 Oct | 15:00 | 17:00 | GD-Salen | Lecture 1 | ||
Tue, 31 Oct | 17:00 | 19:00 | FB | Lecture 1 - Q&A | ||
Wed, 01 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Simulation Lab 1 + Help and Q&A |
Study Chapters 1-2 | |
Thu, 02 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Simulation Lab 2 + Help and Q&A | Study Chapters 3-4 | |
Fri, 03 Nov | 23:59 | DEADLINE: Form Project Groups | Form a group of 4-5 students | |||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Mon, 06 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Simulation Lab 3 + Help and Q&A | Study Chapters 5-6 | |
Tue, 07 Nov | 08:00 | 11:45 | SB-D209, SB-D309 |
Simulation Lab 4 + Help and Q&A | Study Chapters 7-8 | |
Wed, 08 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Project Work + HW Help + Q&A | ||
Thu, 09 Nov | 08:00 | 11:45 | F-T7203 (Ch. 1,4), F-T7204 (Ch. 2,3), FT4011 (waiting room) |
HW1 - Correction (GRADED) | Solve HW1 and upload HW1 Report | |
Fri, 10 Nov | 23:59 | DEADLINE: Project Proposal | Prepare project proposal | |||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Mon, 13 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Simulation Lab 5 + Help and Q&A | Study Chapters 9-10 | |
Tue, 14 Nov | 08:00 | 11:45 | SB-D080, SB-D209 | Simulation Lab 6 + Help and Q&A | Study Chapters 11-12 | |
Thu, 16 Nov | 08:00 | 11:45 | F-T7203 (Ch. 5,7), F-T7204 (Ch. 6,8), FT4011 (waiting room) |
HW2 - Correction (GRADED) | Solve HW2 and upload HW2 Report | |
Fri, 17 Nov | 08:00 | 11:45 | HA3 | Project Work + HW Help + Q&A + Feedback on Project Proposal given by tutor | ||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Mon, 20 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Simulation Lab 7 + Help and Q&A | Study Chapters 13-14 | |
Tue, 21 Nov | 08:00 | 11:45 | SB-D209, SB-D309 |
Simulation Lab 8 + Help and Q&A | Study Chapters 15-16 | |
Thu, 23 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Project Work + HW Help + Q&A | ||
Fri, 24 Nov | 08:00 | 11:45 | HA3 (Ch. 9,12), (Ch. 10,11) |
HW3 - Correction (GRADED) | Solve HW3 and upload HW3 Report | |
Fri, 24 Nov | 23:59 | DEADLINE: Project Outline | Prepare project outline PDF | |||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Mon, 27 Nov | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Project Work + HW Help + Q&A | ||
Tue, 28 Nov | 08:00 | 11:45 | SB-D209, SB-D409 |
Project Work + HW Help + Q&A | ||
Thu, 30 Nov | 08:00 | 11:45 | F-T7203 (Ch. 13,16), F-T7204 (Ch. 14,15), FT4011 (waiting room) |
HW4 - Correction (GRADED) | Solve HW4 and upload HW4 Report | |
Fri, 01 Dec | 08:00 | 11:45 | GD-Salen | Project Work + Tutoring + Feedback on Project Outline given by tutor | ||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Tue, 05 Dec | 08:00 | 11:45 | E-D3582, FT4011, SB-D209 |
Project Work + Tutoring | ||
Thu, 07 Dec | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Project Work + Tutoring | ||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Mon, 11 Dec | 08:00 | 11:45 | F-T7203, F-T7204, FT4011 |
Project Work + Tutoring | ||
Mon, 11 Dec | 23:59 | DEADLINE: Project Presentation (GRADED on 14 December) | Upload Project Presentation | |||
Tue, 12 Dec | 08:00 | 11:45 | SB-D209, SB-D409 |
Project Work + Tutoring | ||
Tue, 12 Dec | 23:59 | DEADLINE: Project Report Draft | Upload Project Preport Draft | |||
Thu, 14 Dec | 08:00 | 11:45 | KA | Project Presentation (Attendance mandatory) (GRADED) |
||
Thu, 14 Dec | 13:15 | 17:00 | KA | Project Presentation (Attendance mandatory) (GRADED) |
||
Date | Starttid | Sluttid | Rum | Activity | To do before | |
Sun, 07 Jan | 23:59 | - | DEADLINE: Project Report (GRADED) | Upload Project Report |
Learning objectives and syllabus
Learning objectives:
-Describe the fundamental ideas behind the simulation methods discussed in the course.
-Implement simulation codes in each of the methods.
-Analyse and discuss the results of simulations.
-Plan, manage, execute and report a small-scale simulation project.
Link to the syllabus on Studieportalen.
Link to the GU website:
https://utbildning.gu.se/kurser/kurs_information?courseid=FIM750
Examination form
There will be no written final examination in this course.
The examination consists of homework assignments and a project.
The homework assignments accounts for 40% of the final grade, the project accounts for 60% of the final grade.
Homework information
The purpose of the homework problem sets is to provide you with hands-on experience of the material presented in the course. You are strongly encouraged to team up and collaborate on the homework, to ask your classmates if you are stuck at some point, and to assist classmates in need of advice. But you must write your own implementations, run your own simulations, and have your own work assessed. No late assignments will be accepted.
Grading: There are four homework sessions with each carrying a value of at least 25 points. A perfect score is 100. The homework submissions account of 40% of your total course grade.
Notes:
1. A necessary (but not sufficient) requirement for passing grade is that 10 points are achieved in each homework.
2. A complete solution of each of the following chapters: 2, 6, 7, 9, 10, 14 carries 28 points.
3. A complete solution of each of the following chapters: 1, 3, 4, 5, 8, 11, 12, 13, 15, 16 carries 25 points.
Questions: After each lecture students have the possibility to ask questions on the homework problem set specific of that lecture. The question session will take place after each lecture.
Upload your report: You will have to upload the report for the homework before the correction. The report consists of a single PDF containing your code and the figures generated by the code. The assessment of your work happens during the lab hours.
Assessment: We will assess your work during lab hours. Be prepared for the assessment: Generate all your figures and/or videos up front. There will be no time for running simulations during assessment. Check that you have answered all questions carefully. You should be able to give reasoned answers regarding your modeling choices as well as being able to discuss the implications of your results. If you have worked together as a group, you're encouraged to have your assessment done together. You will still need to prepare your assignments individually, and will receive individual grades.
Project information
Modeling and simulation project
The purpose of the project work is to provide you with training in
- Developing your own small research-style project.
- Executing a collaborative project.
- Presenting your independent work in writing and as a summary talk.
The deliverables are a 8 minute presentation + 10 minute questions (30% of project grade) and a written report (70% of project grade). The project will be presented to the class on Thursday December 15, 2022. The project accounts for 60% of your total course grade.
The deadline for submitting a project proposal to your tutor (see below) is by 23:59, Friday, November 11, 2022. Groups with late submission will not receive tutoring.
The draft report is due by 23:59, Wednesday, December 14, 2022. The final written report is due by 23:59, January 8, 2023. No late reports will be accepted.
General information
You will be divided into groups.
- Each group will be paired with another group, and they will act as review groups for each other.
- Each pair of groups gets a tutor assigned and has 2 meetings, 45 minutes each, with this tutor during the course.
- The tutor’s job is to give you general advice on anything you need as best as he or she can. The tutor’s job is not to formulate your project for you, nor to debug your code.
- Should you experience problems with the group assembly, you need to take this up with your tutor as soon as possible.
Your project needs two things to get started: a topic and a question (or problem formulation). A topic explains what you are going to do, a question explains why. A typical topic description could be "we want to do a agent-based simulation of a predator-prey system." A corresponding question could be "to see whether space changes the stability as compared to the behaviour in the standard ODE models.”
The first meeting with the tutor is to ensure that you’re embarking on a feasible project. Before this meeting you should:
- Define your project.
- Write a two paragraphs long proposal; one explaining the background of the project, possibly with references to relevant literature, and another outlining what you aim to do and why.
- Discuss your project with your review group and revise your proposal accordingly.
- Send the proposal to your tutor.
- Prepare for the meeting; prepare questions, comments, simulations, results, or whatever is relevant for a most efficient outcome of the meeting.
The second meeting with the tutor is to ensure that you have progress and direction so that you are on course to completion. Before this meeting you should:
- Have ready an implementation of your model.
- Have a set of preliminary results from simulations.
- Have ready the outline of a report.
- Have met with your review group to discuss model, results and report outline.
- Send the report outline to your tutor.
- Prepare for the meeting; prepare questions, comments, simulations, results, or whatever is relevant for a most efficient outcome of the meeting.
General advice
If I had an hour to solve a problem and my life depended on it, I would use the first 55 minutes to formulate the right question because as soon as I have identified the right question I can solve the problem in less than five minutes.
—Albert Einstein
Everything takes longer time than you expect, so getting started with your model implementation is essential for a successful project. Do not interpret the time ratio in the quote too literally; the moral is that you need to have a question you want to answer with your model. This provides the project with direction and makes navigating it much easier. But research (as much else) is a highly iterative process, so don’t expect a perfect question from the start. If you realise your question didn't make sense half-way through your project, take the time to try and formulate a new one. In a lot of real research the question at the end of a project ends up being quite different from the one that started the project (similarly among start-ups, many end up with a completely different product than their initial idea).
Start simple. It is fine to have a grand idea, but make sure the steps to the goal have some value in themselves. Not only does this prevent you from being stuck with nothing to show at the end of the course, it also gives you feedback on your big idea as early as possible. Start with a small question and iterate it towards greatness.
If there is a simpler model of what you are trying to do that shows some of its interesting features, at the very least think about how they compare. Ideally, implement both and do a careful comparison. You can often get great project ideas out of thinking about what you lose when you remove features.
It's OK to fail. Research has a large portion of luck involved. If you have a good idea that don't work out, analyse why and we'll be all happy.
Presentation
The presentation of the project should take maximum 8 minutes and be prerecorded (MOV format), with an additional 10 minutes for questions and discussion.
Put the emphasis on what your problem formulation is, a general discussion about how you tackled it, what problems you had, and what your conclusions are.
Report
The report should be written in RevTex 4.2 (see https://journals.aps.org/revtex), using the format of Physical Review X with a limit of 8 pages in double-column reprint format (including pictures and references). If needed, you can have an extra document containing an unlimited amount of Supplementary Materials.
Structure your report like a scientific article, with an abstract summarising the rationale and results of the project; an introduction shortly explaining its background and motivating why the question is interesting; methods and/or results section(s) describing your model and what you do with it; a discussion section; and ending with a conclusion. Put some work into the discussion and conclusion sections. This is where you demonstrate that you truly understand the implications of your work, including shortcomings and uncertainties. It is important that the discussion does not fall out as a simple summary of what the figures show.
Write in plain language and write enough to say what you need to say. Don't think "the report feels short, better throw in some extra figures." If you can say the same thing in fewer words, do so.
Be sure to reference any source you use. The report should be readable and understandable on its own, but there is no need to reproduce for example derivations of equations from your sources; a citation is enough.
Figures are an important part of the report, but only those that substantially contribute to your analysis should be included. Make sure that each figure is well designed with informative captions (not just "Fig. X shows how quantity A depends on quantity B"). If you find it hard to do this, you probably are not clear on why you include an figure, so cut it out.
Most importantly, use your own judgement and try to write a report you would like to read.
Evaluation criteria for report
Criteria that will be considered are:
- Structure: Is the project report well structured (see above)?
- Motivation: Does the project have a clear research question?
- Originality: How original is the research question?
- Background: Is the background of the research question well explained, including references to the literature?
- Methods: Are the methods and analysis appropriate for convincingly answering the research question?
- Execution: Does the project answer the initial or iterated research question?
- Figures: Are the figures included informative with descriptive captions?
- Format: Is the format of the report as required?
- Outlook: Are the implications of the results clearly stated?
- Contributions: Is there a contributions statement in the report?
Note that the research question does not have to be answered in the affirmative. A negative result is equally valid as long as an analysis is carried out that properly explains the negative result and what eventually would work better.
Evaluation criteria for presentation
Criteria that will be considered are:
- Structure: Is the presentation well structured for a 8-minute presentation?
- Clarity: Is it clear from the presentation what is being investigated?
- Format: Does the presentation fit the requested format?
- Motivation: Is it explained well why the project is important?
- Conclusion: Are conclusions and implications clear?
- Methods: Are the methods explained sufficiently but not excessively?
- Presentation quality: Is the presentation engaging and visually appealing?
Calculation of final grade
You can get at most 40 points from the homework and 60 points from the project. The maximum combined score is 100.
The grade limits will be 50 points for grade 3, 70 points for grade 4, and 90 points for grade 5.
For GU the limits will be 50 points for G and 80 for VG.
Course summary:
Date | Details | Due |
---|---|---|