An introduction to agent-based modeling.

By Marco A Janssen

Arizona State University

View Link (HTM)

Licensed according to this deed.

Published on


This resource has been updated - find the current version here:

This is a textbook at an introductory level suitable for undergraduates, provided by Marco Janssen. 

From the book's Preface: 

This textbook is based on a collection of lecture notes that I prepared during the last few years in teaching an undergraduate course on agent-based modeling at Arizona State University. This course was given to students from a mixture of backgrounds in the life and social sciences as well as mathematics and computer science. Currently there is no suitable textbook on agent-based modeling for the undergraduate level. Books available focus on the computer science aspects, but do not relate it to the social and life sciences. In my lecture notes I try to link the material to relevant topics in social and life sciences and have a more basic introduction to the computer science concepts than in regular text books.

I focus especially on agent-based models that study how agents form collective behavior through simple rules, how agent interact in social structures and how information is spread from agent to agent. As such we can develop models for many social phenomena from the herding dynamics on financial markets to the development of friendship networks.

The book introduces you to the method of agent-based modeling, but will also use these models to discuss general concepts such as population dynamics, evolution and diffusion processes. At the end of the book you will have a basic understanding of the concepts of complex adaptive systems, the principles of agent-based models, have derived basic experience with programming in NetLogo. If you want to continue to advance your training in agent-based modeling, you can use more advanced textbooks like the one of Steven Railsback and Volker Grimm which is more focused on a graduate level audience.

The book starts with five chapters on concepts and tools. The concepts from complex adaptive systems such as complexity and emergence and are core to the kind of models we will discuss in this book. Chapters 2 discusses the art of modeling, formal and conceptual, and shows the importance of how we view the world affect decisions how we model problems at hand. Agent-based models are largely based on algorithms describing the rules of agents, and in chapter 3 we introduce basic logic that is fundamental for programming agent-based models. The modeling package NetLogo is introduced in Chapter 4 which is the tool that used throughout the book. In each subsequent chapter we will introduce additional primitives and commands of NetLogo. The first part of the book is closed with a chapter on randomness. Since agent-based models are stochastic it is important to understand what this means for interpreting model results. We will also introduce the tool BehaviorSpace in this chapter to analyze Netlogo models in an efficient way.

Part 2 of the book contains five chapters on agents and resources. Chapter 6 introduces how to model in NetLogo tradition population dynamic models with regrowth, birth and death. We give agents vision and memory in Chapter 7 so they can forage for resources. In Chapter 8 we show how to model principles of evolution so that attributes of agents may evolve over generations. Resources are constrained, and in Chapter 9 we see how a tragedy of the commons can be avoided if agents have more cooperative norms, which can be stimulated by the use of enforcement. Herding behavior and the consequences for financial resources are discusses are discussed in Chapter 10.

Part 3 focuses on agents in social networks. Chapter 11 presents the concept of networks and different types of network structures. We see how network structure affects diffusion of innovations and viruses in Chapters 12 and 13. In Chapter 14 we see how inclusion of psychological based rules for decision making lead to fads and fashions in populations of agents. The book ends with a chapter on collective action and discusses under which conditions agents will cooperate.

Cite this work

Researchers should cite this work as follows: