MSc Social Network Analysis

Year of entry: 2025

Course unit details:
Complex Social Systems and Simulation

Course unit fact file
Unit code SOST70092
Credit rating 15
Unit level FHEQ level 7 – master's degree or fourth year of an integrated master's degree
Teaching period(s) Semester 2
Available as a free choice unit? Yes

Overview

In “Complex social systems and simulation”, students learn how to rethink social, political, and economic phenomena as complex systems. For example, can racially segregated neighbourhoods exist even if most residents have only very mild preferences for same-race neighbours? How fast do infections spread in a population depending on individual behaviour, such as wearing masks or social distancing? Can we design recommendation algorithms for social media that do not cause filter bubbles and political polarisation? And how do we need to design financial institutions to avoid financial risk contagion? All of these questions link individual behaviour to emergent, collective, population-level consequences. This module teaches students how to simulate individual behaviour in groups of agents over time to find out how it leads to collective outcomes. In group work, students develop their own agent-based models in the simulation software NetLogo to explain societal outcomes. Students learn how to grow artificial societies in their computers and evaluate the consequences of behavioural interventions in these societies. The module enables students to apply complex systems thinking and computer simulations to research questions across the social sciences. 

Pre/co-requisites

Unit title Unit code Requirement type Description
Statistical Foundations SOST70151 Pre-Requisite Compulsory
SOST70092 Complex Social Syste

SOST70151 Statistical Foundations is a pre-requisite for SOST70092

Aims

The unit aims to:

teach students how to think about social, political, and economic phenomena as complex social systems and thereby refine their analytical skills;

provide a methodological, theoretical, and practical introduction to agent-based modelling and other complex systems approaches suitable for the social sciences in order to enable students to improve societal and institutional outcomes in a variety of contexts;

equip module participants with the skill set necessary to conceptualise and implement simulation models using the NetLogo software for agent-based modelling to meet the demands of research-based employment and increase the students’ capacity for innovation;

give students transferable skills for industry and academic research, such as collaboration and version control using Git, programming skills, and data analysis skills;

bring together appropriate reading, practical experience, and peer and instructor feedback to attain learning outcomes regarding complex social systems and simulation. 

Learning outcomes

The intended learning outcomes support employability in research-intensive environments, such as industry research and academic research in areas like finance, technology, social and environmental justice, political strategy, and many other areas in which students need to evaluate counterfactuals about the intended and unintended consequences of rules and behaviour in group or societal contexts. They support employability in these areas by teaching students how to rethink institutions, emergent phenomena, and other relevant contexts as complex systems and analyse them systematically using agent-based models, network science, and related approaches. The intended learning outcomes comprise transferable skills relevant for employment and leisure contexts more generally.

 

Syllabus

Syllabus (indicative curriculum content):

The module “Complex Social Systems and Simulation” shows students how to apply complex systems thinking and modelling to theoretical questions in the social sciences.

It starts by offering epistemological and ontological perspectives on the role of simulation and complexity in generating knowledge about the world, as well as the relationships between social simulation and theory, philosophy, empirical analysis, and prediction. The module then proceeds toward an overview of the different ways in which complexity pervades social phenomena and the social sciences, including different types of simulation modelling, evolutionary game theory, and network science. This part of the module also relates complex systems approaches to different social science disciplines and applied problems and provides first examples of published research. It includes a discussion of the extent to which theoretical simulation models should be calibrated to empirically observed data. Students are given the opportunity to discuss these foundations in class to arrive at a shared understanding in preparation for the more practical parts of the module.

Once students have an overview of the benefits, limitations, and application areas of complexity, they learn how to create their own simulation models using the NetLogo software environment for agent-based modelling. This is achieved through weekly workshop sessions, in which groups of students develop their own simulation models over several weeks in NetLogo and have the opportunity to discuss their model with their peers under the supervision of the module leader. Each small group of students continues to work on their group model for several weeks. Formative feedback is provided in class to the group projects. Students work on the simulation code in NetLogo outside of the contact hours in preparation for the weekly class meetings. The contact hours during these weeks are a combination of group work, group presentations, and auxiliary lectures and tutorials. The group work serves to discuss the progress and next steps in each group with regard to the ongoing group modelling project. The group presentations are a way to receive feedback from peers and the instructor. The lecture and tutorial elements in each week cover new theory, examples, and methods and enable students to improve their simulation models. As a fallback option, student groups can extend or modify existing simulation models already available in NetLogo if their own modelling efforts from scratch fail.

The last part of the module offers an opportunity for students to refine their computational social science skills by learning how to maintain their simulation code on GitHub; understanding the idea of object-oriented programming and how it relates to agent-based modelling, with an outlook to other programming languages and how they would facilitate agent-based modelling; and best practices for the analysis of the results of simulation models, including questions about random number generation, the role of initial conditions, analysing the results in R, batch-mode analysis, shell scripting, and parallel processing.

Students complete two assignments. The first one, half way through the semester, is an outline of the planned model envisaged either in the group or individually. The second one is a project report on a complex social systems project. This can be a report about the agent-based model from the group project and can be handed in as a group project or a report about another agent-based model created by the respective individual student (e.g., in the case of unsuccessful group outcomes). 
 

Teaching and learning methods

20 contact hours (= 2 hours per week for 10 weeks), of which:

  • 5 hours lectures
  • 5 hours tutorials
  • 10 hours seminars

130 hours independent study, of which:

  • 4 hours per week for reading = 40 hours total
  • 4 hours per week for preparing simulation models = 40 hours total
  • 50 hours for preparing assignments 

The (synchronous) weekly contact hours consist of lectures (to explain perspectives and approaches), group work in weekly workshop sessions in the second part of the module (where students can discuss the progress and next steps of their own simulation projects), and seminar elements (where students can obtain feedback from their peers and the instructor and practice presenting their group’s work). Two hours per week are allocated jointly to these activities, totalling 20 hours during one semester.

An average of four hours per week is designated for preparing reading assignments outside of the contact hours using e-learning and/or physical copies. An average of four hours per week is designated for developing simulation code and analysing results in the NetLogo software. 50 hours are allocated to writing reports for the two assignments. An online class forum serves as a means of mutual support outside of the contact hours, with peer interaction and moderation by the module leader. These asynchronous learning activities comprise a total of 10 x 4 + 10 x 4 + 50 = 130 hours.

Knowledge and understanding

Students will be able to:

  • Recognise and analyse the complexity inherent in social, political, and economic behaviour and underlying institutions and societies, in all aspects of life.
  • Critically evaluate the role of systems thinking in how knowledge is produced (epistemology) and what role systems play in nature and society (ontology).
  • Appreciate how interdisciplinary approaches can contribute to answering normative and positive questions of societal importance and how complex systems methods can serve as a shared interdisciplinary perspective.

 

Intellectual skills

Students will be able to:

  • Refine problem solving skills by applying the acquired methods to new problems and thereby abstracting both from the method and the problem at hand.
  • Formulate social research questions in a way that is amenable to theoretical and empirical modelling, with special consideration of the linkages that may exist between different agents, mechanisms, and rules in a given social system.
  • Reflect critically on the assumptions of a given model in the light of counter-factual thought experiments in order to improve their understanding of how the social world works.

 

Practical skills

Students will be able to:

  • Develop computer programs in the NetLogo simulation software environment to translate theoretical, behavioural assumptions into societal outcomes and evaluate the micro-macro link inherent in any given complex social system.
  • Analyse simulated data generated by an agent-based model in the statistical programming environment R in order to evaluate the results of any agent-based simulation model.
  • Develop computer programs and data analysis collaboratively and using version control by using Git and related technologies in group projects.

 

Transferable skills and personal qualities

Students will be able to:

  • Nurture students’ social capacity to produce team work in small groups toward a final study goal, in the context of social simulation group work in class and outside of the classroom, as well as presentation skills and the ability to present collectively produced simulation work on behalf of a group.
  • Write project reports about data analysis and simulation projects and document scientific analyses in a replicable, reproducible way, in line with typical requirements in academic and non-academic employment.
  • Apply complex systems thinking to social phenomena in everyday contexts, academic research, and industry or third sector employment. 

Assessment methods

Method Weight
Report 60%
Project output (not diss/n) 40%

Formative Assessment Task:

Between Sessions 5 and 9, students take turn at presenting their group work on a social simulation code project to the remaining class and receive verbal feedback both from the class and the instructor (several five to ten minute presentations per group over several weeks).

Summative Assessment Tasks:

Project outline on a planned simulation project, handed in after five weeks (1,000 words): 40%

Final report on simulation model including replication code, handed in several weeks after the term ends (2,000 words): 60%

Feedback methods

Formative Assessment Task:

In class after presentations and during seminar discussions.

Summative Assessment Tasks:

Project outline feedback within two weeks of submission

Final report feedback within the usual time frame for written assignments

Recommended reading

Indicative reading list:

Axelrod, R. (1997). The Complexity of Cooperation: Agent-Based Models of Competition and Collaboration: Agent-Based Models of Competition and Collaboration. Princeton university press.

Bonabeau, E. (2002). Agent-based modeling: Methods and techniques for simulating human systems. Proceedings of the national academy of sciences, 99(suppl_3), 7280-7287.

Bunge, Mario. 1996. Finding Philosophy in Social Science. New Haven: Yale University Press.

De Marchi, S., & Page, S. E. (2014). Agent-based models. Annual Review of political science, 17, 1-20.

Epstein, J. M., & Axtell, R. (1996). Growing artificial societies: social science from the bottom up. Brookings Institution Press.

Hegselmann, R., & Krause, U. (2002). Opinion dynamics and bounded confidence: models, analysis and simulation. Journal of Artificial Societies and Social Simulation.

Hegselmann, R., Mueller, U., & Troitzsch, K. G. (Eds.). (1996). Modelling and simulation in the social sciences from the philosophy of science point of view (Vol. 23). Springer Science & Business Media.

Helbing, D. (Ed.). (2012). Social self-organization: Agent-based simulations and experiments to study emergent social behavior. Springer.

Jaxa-Rozen, M., & Kwakkel, J. H. (2018). Pynetlogo: Linking netlogo with python. Journal of Artificial Societies and Social Simulation, 21(2).

Lambiotte, R., Rosvall, M., & Scholtes, I. (2019). From networks to optimal higher-order models of complex systems. Nature physics, 15(4), 313-320.

Leifeld, P. (2014). Polarization of coalitions in an agent-based model of political discourse. Computational Social Networks, 1(1), 1-22.

Macy, M. W., & Flache, A. (2002). Learning dynamics in social dilemmas. Proceedings of the National Academy of Sciences, 99(suppl_3), 7229-7236.

Miller, J. H., & Page, S. E. (2009). Complex adaptive systems: an introduction to computational models of social life: an introduction to computational models of social life. Princeton university press.

Railsback, S. F., & Grimm, V. (2019). Agent-based and individual-based modeling: a practical introduction. Princeton university press.

Sayama, H. (2015). Introduction to the modeling and analysis of complex systems. Open SUNY Textbooks.

Schelling, T. C. (1971). Dynamic models of segregation. Journal of mathematical sociology, 1(2), 143-186.

Silverman, E., Bijak, J., Hilton, J., Cao, V. D., & Noble, J. (2013). When demography met social simulation: A tale of two modelling approaches. Journal of Artificial Societies and Social Simulation, 16(4), 9.

Smaldino, P. E. (2017). Models are stupid, and we need more of them. Computational social psychology, 311-331.

Smaldino, P. E. (2020). How to translate a verbal theory into a formal model. Social Psychology.

Squazzoni, F., & Boero, R. (2005). Does Empirical Embeddedness Matter?: Methodological Issues on Agent-Based Models for Analytical Social Science. Journal of Artificial Societies and Social Simulation, 8(4), 1-31.

Tesfatsion, L. (2003). Agent-based computational economics: modeling economies as complex adaptive systems. Information sciences, 149(4), 262-268.

Thiele, J. C. (2014). R marries NetLogo: introduction to the RNetLogo package. Journal of Statistical Software, 58, 1-41.

Wilensky, U., & Rand, W. (2015). An introduction to agent-based modeling: modeling natural, social, and engineered complex systems with NetLogo. Mit Press.

Wooldridge, M. (2009). An introduction to multiagent systems. John wiley & sons. 

Study hours

Scheduled activity hours
Lectures 5
Seminars 10
Tutorials 5
Independent study hours
Independent study 130

Teaching staff

Staff member Role
Philip Leifeld Unit coordinator

Return to course details