Skip down to main content

Simulating Society

Key Information

Course details
Digital Social Research Option Paper Group B; Hilary Term
Reading list
View now
Dr Jonathan Bright

Please note this course is not available in the 2021-22 academic year


When do people participate in politics? How do extreme opinions survive? Why does racial segregation occur? This course is designed as an introduction to a technique which pretends to answer some of these simple and yet fundamental social questions: agent based modelling [ABM]. ABM is a technique which aims to reproduce a given collective social behaviour (e.g. the emergence of a social movement) through computational simulations of frequent, repeated interactions between individuals with certain dynamic attributes (e.g. people with different opinions getting together to discuss a political debate and eventually reach consensus). It is a technique with a long history in the social sciences, but also one that is gaining new popularity as emerging stores of socially generated big data allow for more realistic, validated models.

Students taking the course will be exposed to the fundamental theories and principles behind ABM, as well as learning the basics of a commonly used simulation package (Netlogo) through hands on lab sessions. Each week, a classic model will be introduced, simulated and critiqued, allowing us to explore some of the fundamental building blocks of social behaviour such as how people modify their opinions in discussion with others, or when they decide to join a social movement. We will see how subtle variations in starting conditions and preferences can have major knock on effects to eventual outcomes, and how these processes are mediated by the structure of social relations.

The course as a whole will also tease out the methodological implications of using ABM, how it can be used to inform policy making, and how crucial questions around validity can be addressed through data generated by the social web by presenting and discussing examples of current research. No prior mathematical or programming background is required for the course. The focus will be on learning the main concepts through simple interactive models which can be installed on student’s laptops. The evaluation will also focus on the ability to critically evaluate such models within a social science framework, hence students will not be expected to learn programming or advanced maths during the course.


By the end of the course, students will:

  • Understand the theory underpinning agent based modelling, and hence be able to critically evaluate its use in social science research;
  • Have a hands on grasp of the use of the Netlogo simulation package, including some exposure to Netlogo programming (though the focus will be on interacting with existing models rather than creating them);
  • Understand how to empirically validate an agent based model using socially generated big data.

Past projects

Past student projects on this course have analysed contemporary social movements, diffusion models of language change, and the spread of social relationships in employment and hiring networks.