Understanding Complexity and Agent-Based Models
The world around us is filled with independent and interacting elements; elements that adapt to their environments and change their behavior in unexpected ways; elements that learn and deceive and plan for the future. In this world, a small perturbation can cascade into a global phenomenon, and major incidents can be muted by systemic absorbers and barriers. Incentives are unclear, motivations are constantly changing, behaviors are both erratic and dogmatic, and the future is not like the past. To achieve your desired results in this world, you need to understand its complexity.
This workshop will provide an introductory treatment of complexity theory and the application of formal models to better understand the causal structures and dynamics of complex adaptive systems. The focus will be on complexity in social systems (public policy, economy, group dynamics, peer influence, etc.), but a significant amount of material will be brought in from all disciplines. This is crucial to understanding complexity in general, and reflects the essentially interdisciplinary nature of complex systems science.
Although a breadth of methodologies will be surveyed to understand the foundations of complexity, we will focus on computer models and simulations because of their close ties to complexity. Agent-based modeling is a research technique that allows researchers to directly encode their theories regarding the causal interactions of system elements and discover what is entailed by those interactions. It is especially helpful for understanding systems that are non-linear, are non-equilibrium, have intermediate numbers of agents, incorporate spatial information, have networked interactions, and/or have dynamic features difficult or impossible to model with other techniques.
This workshop will teach participants what to consider when building a model to capture and influence a complex system. Understanding these features will help prepare them to supervise the construction of, interact with, and interpret agent-based models through demonstrations, some hands-on exercises, and pointers to other resources to help them move forward. No previous experience with complexity theory or agent-based modeling is required. All demonstrations and exercises will be done using the Netlogo software toolkit. Participants are encouraged to download and install the NetLogo software available for free from ccl.northwestern.edu/netlogo/ before the workshop.
Sample 3-Day Schedule:
Day 1 - Introduction to Complexity Theory.
We start with an overview of the phenomena typically included under the umbrella of complex systems, and the impetus for finding common underlying causal structures or patterns. Explain the difference between outcome and process thinking, and the characteristic features of complex systems: feedback, multiplier effects, adaptation, evolution, interaction, dynamical properties, and others.
Day 2 - Models of Complex Systems.
A survey of the kinds of models used to represent complex systems; this includes mathematical models, game theory, network models, and agent-based models. The benefits and limitations of each are identified, and I explain which technique is best for which kind of problem through examples. We also go over the different considerations for using models for explanation, exploration, education, and prediction.
Day 3 - Interacting with and Interpreting Agent-Based Models.
In order to prepare participants for getting value from models of complex systems and coping with complexity they encounter in their work, we will have some hands-on exercises controlling, manipulating, and interpreting agent-based models. This serves to foster familiarity with the tools of the trade and as a way of experiencing complex behavior first-hand.