Contact FutureLearn for Support
Skip main navigation
We use cookies to give you a better experience, if that’s ok you can close this message and carry on browsing. For more info read our cookies policy.
We use cookies to give you a better experience. Carry on browsing if you're happy with this, or read our cookies policy for more information.

Skip to 0 minutes and 9 secondsMy name's Ellen-Wien Augustijn. I'm going to tell you about the components of an agent-based model. There are three components in such a model- agents, environments, and time.

Skip to 0 minutes and 25 secondsThere is no formal definition for what an agent actually is. What we do is we define agents by their characteristics. An example, and very important characteristic of an agent, is that it has a goal. For example, something like, I want to stay healthy. Another example is that the agent is situated in the environment. Perhaps the agent has a house, or a place to work, or school. Agents can interact with environments. An agent would be able to find the route and find their way from house to school. Another important characteristic of agents is that they have behavior. And there are many types of behavior. Examples are that they can sense their environment, they can move, can communicate.

Skip to 1 minute and 25 secondsPerhaps they have a memory, or they can even change behavior by learning.

Skip to 1 minute and 33 secondsAn example of a behavior is, perhaps, go to school, return home, et cetera. It is not so that agents have to have all the characteristics. They should have some. But there are examples like, for example, a government that cannot move. So it lacks the characteristic of movement. This is a slide in which you see an example that the agent can sense the environment. It is not so that the agent has a complete understanding of the total environment layer. That would be unrealistic. I'm standing here in the studio. I cannot see beyond these walls. So the agent also has a limited sphere in which they can sense and with which they can interact. You see that here as the white space.

Skip to 2 minutes and 41 secondsNow, how do agents know what to do and when to do it? Well, this is defined in behavior rules. Behavior rules consist of two parts. One part is the condition part. The other part is the action part. The condition could, for example, be, check if the temperature is less than 18 degrees, and your mother is not home, if this is the case-- yeah? So if this condition applies, stay home because you don't want to go to school, walking through bad weather. So there is a condition part and an action part. Now, what applies for agents also applies for environments. There is no formal definition. But we define them via characteristics. Actually, we have two types of environments.

Skip to 3 minutes and 39 secondsAn environment can be abstract, like an empty box, or it can be loaded from a GIS using actual data. Now, here you see the example of an abstract environment represented by this green box. The dots you see could be agents. These agents exist somewhere in this environment. This is the other example, where we actually load our data from our GIS. And the environment is an actual geographic layer. Perhaps, for example, temperature here. But it could also be a building layer or a route layer, for example.

Skip to 4 minutes and 24 secondsNow, there is something else you have to realize about environments, they can either be static or dynamic. When the environment is static it remains the same throughout the simulation. And when it's dynamic it will change. Change will occur. There are three ways in which change can be induced. It can be the result of an action of a particular agent. For example, the agent constructs a house somewhere in the environment, and the environment will change. It can be induced by another environment. For example, you have an environment- fire, which will spread. And there's another environment- smoke, that is the result of the fire that is spreading. And change can also come from the environment itself.

Skip to 5 minutes and 22 secondsFor a vegetation layer, you can go from grassland to shrubs to forest ultimately. And this is self-induced. Now, this is an example explaining there are many interactions between agents and environments. And you have already heard this. The example is the person that wants to create the house. That person will check the environment to locate suitable spaces that are available for building. That is an interaction between the agent and the environment. Then this agent will buy the piece of land and ask permission to build from a government. That would be an interaction between two agents- the person and the government. Government will grant permission, and then the person will construct a house.

Skip to 6 minutes and 18 secondsSo it will change the environment by building a new house. Now, if you have been paying attention, there are three components in an agent-based simulation model- agents, environments, and time. And we haven't discussed time yet. Now, if you're creating your simulation, you will have to decide for what period of time in reality your simulation will run. This could be very short- one minute, 10 minutes. But it could also be very long, maybe three months or 10 years. What we do in simulations is we cut this duration of time into small time steps that we call ticks. Each of these time steps represents a certain amount of time in reality.

Skip to 7 minutes and 10 secondsAnd one time step can be as short as a second or an hour but also as long as a year. Time will determine which behavior can be modeled. If my time step is a year, it wouldn't make any sense to model changes in temperature outside, for example, to determine if the child will walk to school or drive to school.

Skip to 7 minutes and 40 secondsNow, there's another element in time that you have to be aware of. Some elements, some parts of your simulation, will repeat themselves many times during the simulation and should be scheduled in every time step. For example, a child will go to school on every school day. Other types of elements have a certain sequence. For example, the sequence of finding a spot to build a house, asking permission, and constructing the house. But they're only executed one time. There are also things that happen only once, perhaps the fact that the child reaches the age of 4, and the parents have to select the school the child will attend.

Skip to 8 minutes and 36 secondsAnd, of course, there are things that might happen but don't happen every time, perhaps an epidemic.

Components of an Agent Based Model (ABM)

An agent-based simulation model consists of three components:

  1. Agents
  2. Environments
  3. Time

Agents can represent a person, but also an animal, or an organization. To decide if something is an agent we need to check the agent characteristics. These are characteristics most agents have. They range from “a goal”, “exist within the environment” to “communication” and “movement”. On organization may not have a location or cannot move, but when it has a goal, and behavior that it can execute to reach this goal this is enough to identify it as an agent. Behavior can be implemented via simple rules. These rules consist of a condition (IF) and the behavior to execute (THEN). For example If the number of disease cases shows a rise then start a vaccination campaign.

Environments are the space in which agents exist. An environment can be abstract (empty space) or can be a layer from your GIS representing true geographic information. Most simulations have multiple environments. Environments can be either static or dynamic. When an environment is dynamic, it will change over time. For example, river water may contain cholera during a certain period of your simulation run, but it may also be safe to drink during other time steps.

Time is the third component of a simulation. A simulation will go through a number of time steps (ticks). It can be that each of your agents and dynamic environments will be updated one time during every tick. For example, during every tick the disease can be transferred to other agents. A tick can have different durations just like the complete simulation. A tick can represent a second, a day or a year. Depending on the duration of the tick, different behavior can be implemented.

Share this video:

This video is from the free online course:

Geohealth: Improving Public Health through Geographic Information

University of Twente

Course highlights Get a taste of this course before you join: