363-0543-00L  Agent-Based Modelling of Social Systems

SemesterSpring Semester 2020
LecturersF. Schweitzer
Periodicityyearly recurring course
Language of instructionEnglish


AbstractAgent-based modeling is introduced as a bottom-up approach to understand the complex dynamics of social systems. The course is based on formal models of agents and their interactions. Computer simulations using Python allow the quantitative analysis of a wide range of social phenomena, e.g. cooperation and competition, opinion dynamics, spatial interactions and behaviour in social networks.
Learning objectiveA successful participant of this course is able to
- understand the rationale of agent-based models of social systems
- understand the relation between rules implemented at the individual level and the emerging behavior at the global level
- learn to choose appropriate model classes to characterize different social systems
- grasp the influence of agent heterogeneity on the model output
- efficiently implement agent-based models using Python and visualize the output
ContentThis full-featured course on agent-based modeling (ABM) allows participants with no prior expertise to understand concepts, methods and tools of ABM, to apply them in their master or doctoral thesis. We focus on a formal description of agents and their interactions, to allow for a suitable implementation in computer simulations. Given certain rules for the agents, we are interested to model their collective dynamics on the systemic level.

Agent-based modeling is introduced as a bottom-up approach to understand the complex dynamics of social systems.
Agents represent the basic constituents of such systems. The are described by internal states or degrees of freedom (opinions, strategies, etc.), the ability to perceive and change their environment, and the ability to interact with other agents. Their individual (microscopic) actions and interactions with other agents, result in macroscopic (collective, system) dynamics with emergent properties, which we want to understand and to analyze.

The course is structured in three main parts. The first two parts introduce two main agent concepts - Boolean agents and Brownian agents, which differ in how the internal dynamics of agents is represented. Boolean agents are characterized by binary internal states, e.g. yes/no opinion, while Brownian agents can have a continuous spectrum of internal states, e.g. preferences and attitudes. The last part introduces models in which agents interact in physical space, e.g. migrate or move collectively.

Throughout the course, we will discuss a wide variety of application areas, such as:
- opinion dynamics and social influence,
- cooperation and competition,
- online social networks,
- systemic risk
- emotional influence and communication
- swarming behavior
- spatial competition

While the lectures focus on the theoretical foundations of agent-based modeling, weekly exercise classes provide practical skills. Using the Python programming language, the participants implement agent-based models in guided and in self-chosen projects, which they present and jointly discuss.
Lecture notesThe lecture slides will be available on the Moodle platform, for registered students only.
LiteratureSee handouts. Specific literature is provided for download, for registered students only.
Prerequisites / NoticeParticipants of the course should have some background in mathematics and an interest in formal modeling and in computer simulations, and should be motivated to learn about social systems from a quantitative perspective.

Prior knowledge of Python is not necessary.

Self-study tasks are provided as home work for small teams (2-4 members).
Weekly exercises (45 min) are used to discuss the solutions and guide the students.

The examination will account for 70% of the grade and will be conducted electronically. The "closed book" rule applies: no books, no summaries, no lecture materials. The exam questions and answers will be only in English. The use of a paper-based dictionary is permitted.
The group project to be handed in at the beginning of July will count 30% to the final grade.