Security Informatics

, 1:23

An agent-based model and computational framework for counter-terrorism and public safety based on swarm intelligencea

  • Andrew J Park
  • Herbert H Tsang
  • Mengting Sun
  • Uwe Glässer
Open Access

DOI: 10.1186/2190-8532-1-23

Cite this article as:
Park, A.J., Tsang, H.H., Sun, M. et al. Secur Inform (2012) 1: 23. doi:10.1186/2190-8532-1-23



Public safety has been a great concern in recent years as terrorism occurs everywhere. When a public event is held in an urban environment like Olympic games or soccer games, it is important to keep the public safe and at the same time, to have a specific plan to control and rescue the public in the case of a terrorist attack. In order to better position public safety in communities against potential threats, it is of utmost importance to identify existing gaps, define priorities and focus on developing approaches to address those.

In this paper, we present a system which aims at providing a decision support, threats response planning and risk assessment. Threats can be in the form of Chemical, Biological, Radiological, Nuclear and Explosive (CBRNE) weapons and technologies. In order to assess and manage possible risks of such attacks, we have developed a computational framework of simulating terrorist attacks, crowd behaviors, and police or safety guards’ rescue missions. The characteristics of crowd behaviors are modeled based on social science research findings and our own virtual environment experiments with real human participants. Based on gender and age, a person has a different behavioral characteristic. Our framework is based on swarm intelligence and agent-based modeling, which allows us to create a large number of people with specific behavioral characteristics. Different test scenarios can be created by importing or creating 3D urban environments and putting certain terrorist attacks (such as bombs or toxic gas) on specific locations and time-lines.


Since September 11, 2001, counter-terrorism and national security have become the main focus of defense and security authorities around the globe. Counter-terrorism initiatives aim at developing effective and efficient strategies and tools in order to prepare against, prevent and respond to a wide variety of terrorist threats, including Chemical, Biological, Radiological, Nuclear and Explosive (CBRNE) threats [1]. As such, governments and security agencies have been actively trying to improve their capabilities by funding and supporting innovative science and technology approaches that address national public safety and security needs and provide tools for CBRNE response and preparedness.

In order to better position communities against potential threats, it is of utmost importance to identify existing gaps, define priorities and focus on developing approaches to address those. In Canada, national security agencies have identified different priority areas to improve CBRNE response capabilities and to organize counter-terrorism activities. One major area is Risk Assessment and Priority Setting; i.e. to develop advanced tools and techniques that allow for a reliable understanding of threats, consolidated risk assessment, and rating of threat scenarios. A well-defined risk assessment approach leads to a systematic analysis of capability gaps and provides guidelines for setting of investment priorities in order to address the most critical gaps[1].

As such, computational and mathematical methods arguably have an enormous potential for serving practical needs in counter-terrorism initiatives by offering new approaches and tools for preparing initial assessments of the risk of various scenarios involving CBRNE terrorist attacks and recommendations for appropriate responses.

In our previous work on the Mastermind project[2, 3, 4], we explored the use of computational modeling in crime analysis, investigation and prevention. Simulation models provide effective experimental platforms for decision support in evidence-based policy making. Our focus in the Mastermind project was on spatial-temporal aspects of a wide range of criminal activities in urban environments. In[3], we discussed the potential of enhancing the framework to be used in the analysis of terrorism and counter-terrorism. This paper introduces such an enhanced framework that builds on top of our previous research (Mastermind) and makes an extension to allow the simulation of larger number of agents.

The work presented here aims at providing a decision support, CBRNE response planning and risk assessment system, called GENIUS. (In Roman Mythology, Genius is a tutelary deity or guardian spirit of a person or place[5]). We use spatial-temporal features of the environment and CBRNE threat indicators for risk analysis through studying different potential scenarios and for real-time situation analysis. The proposed system can be applied in different application contexts including critical infrastructure protection, dangerous hazard emergency response, and special event security planning (e.g. the 2010 Winter Olympics in Vancouver).

The remainder of this paper is structured as follows. Section “The GENIUS system” provides an overview of the GENIUS project and discusses the main building blocks of GENIUS in more detail including technical details of the system. Section “Experiments and preliminary results” provides some preliminary results, and Section “Conclusions” concludes the paper. Furthermore, the objectives of this paper are as follows:

  • To develop a model to support the analysis and modeling of complex, large-scale agent systems.

  • To assess the effectiveness of different evacuation strategies in high occupancy building.

  • To compare and examine different evacuation scenarios.

The GENIUS system

A Computational Framework

In the project GENIUS, the framework provides some standardized components and possibly a basic design for the modeling and simulation tools to investigate human behavior in urban environments. The goal is to capture the complexity and diversity of human behavior in a robust and systematic way. In the course of this project, using the Agent-Based Modeling (ABM) techniques, we developed a methodological framework and tool environment to address the needs and challenges of modeling complex behaviors.

ABM is a class of computational models for simulating the actions and interactions of autonomous agents with each other and the environment. This approach is based on the idea that a system is composed of decentralized individual agents and that each agent interacts with other agents and the environment according to localized knowledge and rules. The goal of the model is to re-create and predict the appearance of complex phenomena based on the simulation of the simultaneous operations and interactions of multiple agents. The process is one of emergence from the lower (micro) level of systems to a higher (macro) level. As such, a key notion is that simple behavioral rules generate complex behavior.

The GENIUS framework is divided into five components: 1) the Agent Module (AM) model for decision making process and different behaviors of the agents, 2) the Spatial and Environmental Module (SEM) that models the navigation space, 3) the Visualization Module (VM) to allow the visualization of the results during and after the simulation, 4) the Target Selection Module (TSM) models specific agent behaviors while making decision and accomplishing a specific goal, and 5) the Event Generation Module (EGM) that generates threats in a timed fashion. This is a flexible architecture which allows the modification of each module easily.

The goal of this research is to develop a framework to support the analysis and modeling of complex, large-scale agent systems. Moreover, instead of the current approach of using input-output behavior of individual agents, the model allows the behavior to be parametrized in terms of variables that represent aggregated behavior of large numbers of agents. In the subsequent sections, we explain each module in detail.

Agent-Based Modeling

Agent-based modeling is a computational method that enables researchers to create, analyze, and experiment with models composed of decentralized agents that interact with each other and within an environment according to localized knowledge[6]. This modeling technique is using a bottom-up approach in contrast to a top-down approach where the system is breaking down into compositional sub-systems and each sub-systems are refined in greater detail. The bottom-up approach allows the agents to make local decisions for themselves and we can observe the emergent behavior in the global level. In the past decade, the concept of agent-based modeling has been successfully developed and applied to problems that exhibit complex behavioral patterns[7].

The agent behavior engine in GENIUS is constructed using the Swarm Intelligence (SI) paradigm[8]. The expression Swarm Intelligence was first introduced by Beni and Wang in the context of cellular robotic systems[9]. Since then, SI has been successfully applied in many areas, including forecasting pedestrian evacuation times[10], diagnosis of human tremor[11] and a variety of optimization applications. SI is a decentralized and self-organized system where the collective behaviors of agents interacting locally with their environment cause coherent functional global behaviors. Typically these agents are unsophisticated and global patterns emerge from their collective behavior. SI relies upon countless interactions between individual agents, each of which is following simple rules of thumb.


The central component of the GENIUS is an agent-based modeling tool that utilize swarm intelligence (SI). Agents provide a natural abstraction for using geographically distributed computational and memory resources. Typically, agents are autonomous mobile actors that may be invoked to satisfy specific goals, possibly requiring travel within an environment. In our model, each agent represents an individual moving around in an urban environment. Agents navigate within the environment and may assume different roles such as citizens, visitors, or police. Depending on their roles, they exhibit different behaviors[6].

The approach that GENIUS uses in defining an agent’s behavior is based on a hierarchical parametric approach which is a part of the Agent Module (AM) module. The essence of defining a different type of an agent is a set of numerical parameters, each of which controls some aspect of the agent’s behaviors. Parameters are typically unitized vectors, each representing a sub-routine which performs some low level complex transformations on the part of the behavior it controls. Because parameters are abstracted from their low level numerical parameters, they have mathematically rigorous properties such as the ability to be combined, subtracted, and/or added together while still maintaining controllable and repeatable effects to the agent model.

Using a parametric model to model human behaviors is not new in the literature. Wakita et. al[12] modeled the driving behavior when following another vehicle. Parameters can be varied independently to modify a specific agent’s behavior (e.g. walking speed, memory, decision rules etc.) This authoring paradigm is highly flexible, allowing a wide range of applications. The entire set of parameters can be exposed individually for full low level authoring control or a sub-set of these parameters with constraints can be presented to a novice user for customization and personalization. In general, agents can be described by the following characteristics[6]:

  • Perception: the agents can perceive their environment and other agents in their vicinity.

  • Performance: the agents have a set of behaviors that they can perform, often include the following: motion, communication, and action.

  • Memory: the agents can record their perceptions of the previous states and actions.

  • Policy: the agents operate using a set of rules, heuristics, or strategies.

Higher-level constructs can be imposed on the basic parameter scheme by combining low-level parameters to create application specific descriptive elements. In this way we have begun to build up a hierarchical library of behaviors and agent types which all can be combined and changed in any number of ways. In the highest level of the hierarchy of the GENIUS system, there are three types of agents profile in our model: 1) police, 2) citizen, and 3) visitor and they all behave differently. Furthermore, the second level of the agent’s profile hierarchy can be refined using the following parametric qualities: age (small children, adult, seniors), gender (male and female), and personalities (bold or fearful).

Users can define a number of agents with the same characteristics or create an agent with an individual profile separately. The characteristics of crowd behaviors are modeled based on our previous research studies in examining pedestrians in an urban environment[13]. These experiments were performed in our own virtual environment. Through the experiments, we found that people had different behavioral characteristics based on their gender and age. Our framework incorporates these findings to create a large number of people with specific behavioral characteristics.

Figure1 shows the visualization of a group of agents while the simulation is running. Note that in order to simulate a large number of agents, we have introduced the idea of the cluster agent. From a distance, the cluster of many agents will be presented by a single agent (cluster agent) with an area surrounding him/her. However, when the cluster is zoomed in, the individual agents can be seen in a finer details. This is part of the GENIUS’s Visualization Module (VM).
Figure 1

The visualization of a crowd which consist of a group of agents.


The environment is a simulated surrounding in which an agent is located. Typically the environment also includes simulated physical elements and other agents. This is part of the Spatial and Environmental Module (SEM).

Currently, in SEM there are two types of threats: gas and bombs. Bomb explosion is onmidirectional, where gas explosion can be affected by the wind and hence the affected area will be an ellipse in shape in comparison to a circular shape.

Different test scenarios can be created by importing or creating 3D urban environments and putting certain terrorist attacks (such as bombs or toxic gas) on specific locations and timeline. There are two methods to create virtual environments which represent urban environments where the agents are able to move around. To create a virtual environment one can 1) import an existing black and white map or 2) select the building blocks in real time.


We have modeled a real-time situation analysis in GENIUS, which is a part of the Event Generation Module (EGM). Users can either create multiple real-time events while the simulation is in progress or create multiple timed events as well.

Technical Details

GENIUS has been developed using the 3D game engine called Darkbasic Professional. This game engine provides all the basic features for crowd simulations such as 3D modeling, lighting, cameras, animation, graphical user interface, collision detection, keyboard and mouse control, etc. This affordable game engine also uses a simple BASIC-like language, so that the learning curve is relatively short. Rapid prototyping can be done easily with this engine. MATLAB Ⓡ was used to convert a map image to a binary table which can be imported to GENIUS to visualize the environment.

In summary, GENIUS provides a framework for decision support, threats response planning and risk assessment framework. Users can define an agent’s profiles by using high-level constructs (roles) or by defining low-level parameters to create application specific descriptive elements. GENIUS allows the user to define different environments, agents’ profiles (walking speed, perception, memory, role and policy), different types of threats (gas and bombs), and rescue strategies. As a result, the user can study different scenarios and make appropriate planning strategies. The following section describes a couple of experiments that we used to verify and validate our model.

Experiments and preliminary results

To examine our model and show its applicability to real problems, we performed a set of simulations. Through these simulations, we examined different evacuation strategies and demonstrated the effectiveness of GENIUS as a tool for studying such behaviors. GENIUS was designed and executed in an open and dynamic framework that consists of thousands of agents. The main goal of the following testing scenarios is to validate the simulation and analyze results of the simulator.

Scenario A: Rescue personnel affecting evacuation time

The first experiment is an evacuation scenario. Thirty citizen agents are placed in a confined building where there are only four exits available. A bomb goes off inside the building and we expect our citizen agents to find evacuation routes.

The explosion of a bomb was simulated with realistic visualization and the behaviors of the people were animated in real-time. Figure2 shows the setup for the building and the agents. When the bomb went off, people became panic and tried to escape from the building. However, many of them could not find exits, so that they could not escape. After 100 cycles, there were still 10 people inside the building. Figure2b shows the number of people that have escaped over the time. At the end of 100 time steps, only 66.6% of the agents were escaped.
Figure 2

Initial setup and plots of a typical run. The figures which are showing (a) the setup of Scenario A (without rescue personnel), (b) the graph which plots the number of escapees over time in Scenario A (without rescue personnel), (c) the setup of Scenario B (with rescue personnel), (d) the graph which plots the number of escapees over time in Scenario B (with rescue personnel).

For the second experiment, four rescue personnel were added with the same scenario. As shown in Figure2c, they were placed at each of the exits. After the explosion of the bomb, these rescuers went into the building and led the people to get out of the building.

Figure2d shows that 50 time steps after the bomb exploded, about 93% of the agents escaped. Eventually all citizen agents escaped from the building after about 100 time steps in contrast to the last scenario where only 66.6% of the agents escaped.

These two experiments show that placing rescue personnel for an emergency case makes a big difference in evacuating people from the dangerous zone. One would expect these rescue personnel to have complex knowledge of the environment, and therefore be able to provide more reliable information to the other agents in the crowd. However, the rules that these rescue personnel operate are very simple. In terms of perception, they have better sight distance and angle than normal agents. Their walking speed is faster and in terms of personality, they are bolder than normal agents. The operation rules are also very simple as well. In the case of emergency, when a rescue agent walks into the hot zone, their duty is to find people and lead them out of the hot zone. Then they go back to the zone and try to find more people.

We observed that with rescue personnel in placed, they could help others to reach their destinations faster and more efficiently. This observation agreed with our intuition and also research by Pelechano and Badler[14].

Scenario B: Rescue personnel in BC Place

The second simulation scenario was more realistic. The scenario took place at the Vancouver downtown environment during the 2010 Winter Olympic games. There were 50 people gathered around inside the BC Place, where the Opening and Closing Ceremonies of the Vancouver 2010 Olympic Games were going to be held. Then the terrorists placed a timed toxic gas bomb at the north side of the venue. The toxic gas was in the air, moving to the south since the wind was simulated, blowing form the north to the south. People began to run to the south exits of the venue. Then suddenly the bomb went off at those exits. People became panic and some of them were killed.

The first experiment had the basic setup in Figure3a showing the top down view of the area and fifty agents were placed inside the BC Place. After 150 time steps, there were still half of the people could not escape from the dangerous zone.
Figure 3

Initial setup and plots of a typical run in Scenario B. These figures are showing (a) the setup of Scenario B (without rescue personnel), (b) the graph which plots the number of escapees over time in Scenario B (without rescue personnel), (c) the setup of Scenario B (with rescue personnel), (d) the graph which plots the number of escapees over time in Scenario B (with rescue personnel), (e) the graph of Scenario B (with 6 rescue personnel), (f) the graph of Scenario B (with 2 rescue personnel).

For the second experiment, six rescue personnel were placed at strategical locations in preparation for terrorist’s attacks. When the toxic gas was detected, these personnel quickly went into the venue and began to lead the people out (Figure3c). Although another bomb exploded, the rescuers collectedly helped the people get out of the dangerous area.

When Figure3b is compared with Figure3d, there is a noticeable difference in the escape rate. Almost 80% of the people could be rescued during the initial critical time period when there were rescue personnel present at strategic locations. However, only 56% were able to escaped in the absence of rescue personnel.

The third experiment investigates the effect of the number of rescue personnel. Figure3e and Figure3f compare the situations where there were 6 rescue personnel vs. 2 rescue personnel respectively. After 200 time steps, only 25% of the agents were able to escape when only 2 rescue personnel were present, in comparison to 40% in the case of 6 rescue personnel. It shows that the number of rescue personnel has an effect on the effectiveness in rescuing people from danger.

As part of the Visualization Module, another notable feature of GENIUS is its integration to the geographic coordinate system. The latitude and longitude of the agent’s location was stored during the simulation. Note that when the simulation is concluded, each agent’s movement was recorded and can be played again using GoogleEarthTM. Figure4 shows an example of displaying the agent’s movement after the simulation using GoogleEarthTM. The round structure is the BC Place and the green human figures represent the agents moving around in the area. In addition, note that the 3D building structure can also be observed in GoogleEarthTM. The integration of GoogleEarthTM allows the addition of data from a variety sources, such as satellite imagery, aerial photography and Geographic Information System (GIS).
Figure 4

The replay of the agent’s movement using GoogleEarth.

Scenario C: Evacuation Simulation from High-Rise Buildings

The third simulation scenario was the scenario of an evacuation from the high-rise buildings. This scenario is relevant to counter-terrorism and response since the terrorists attacked on the Twin Towers of the World Trade Center on September 11, 2001. According to the World Trade Center evacuation study[15, 16], one of the factors that affected evacuation was preparedness planning. Thus, the effect of fire drills was explored in this particular scenario.

The extension of the GENIUS framework provides an ability to construct multiple-story high-rise buildings and place stairs (fire escape) and elevators at any location of the floor. Exits can be located on the ground floor. Different kinds of agents can be placed on each floor and a scheduled event (fire or gas) can be set on any spot of the floor.

In the experiments, a 10-story building was used and 6 people were placed on each floor. The scheduled fire was set on the 10th floor. The same number of stairs, elevators, and exits with the same locations were used for each experiment. Two different age groups were tested: young adults vs. older adults. Older adults had more physical limitations than young adults in terms of walking speed and sight distance. For each age group, two experiments were conducted: one with the agents who had fire drills and the other with the agents who had no fire drills. Those who had fire drills could find stairs and exits more quickly than those who had not.

Figure5b shows the difference between a previous fire drill experience and no experience for young adults. After 34 cycles, about 88% of the young adults who had had fire drills escaped from the building whereas 73% of those who had not had fire drills escaped. The difference is much bigger for the case of older adults (Figure5c). 23% of the older adults who had had fire drills escaped after 34 cycles where as only 8% of those who had not had fire drills escaped. Figure5d and Figure5e show the difference between young adults and older adults for both cases of fire drills and no fire drills, which is about 65%.
Figure 5

Initial setup and plots of a typical run in Scenario C. These figures are showing (a) the setup of Scenario C, (b) the graphs which plot the number of escapees of young adults over time in Scenario C (drills vs. no drills), (c) the graphs which plot the number of escapees of older adults over time in Scenario C (drills vs. no drills), (d) the graphs which plot the number of escapees of both young and older adults over time in Scenario C (drills), (e) the graphs which plot the number of escapees of both young and older adults over time in Scenario C (no drills).


We have presented a novel decision support, threats response planning and risk assessment framework. The preliminary results of GENIUS have been discussed and reviewed. The results from three scenarios and nine experiments have provided promising outcome. We have examined the relationship between rescue personnel and evacuation rate. It is noted that the presence of rescue personnel helps to reduce casualty rate. In our experiments, it is also shown that the small number of rescue personnel has less effect on evacuation rate than the larger number of rescue personnel. We have also tested the effect of fire drills in the case of the evacuation from high-rise buildings. It is observed that a fire drill exercise helps people find fire stairs and escape quickly. The difference between young adults and older adults in escaping from high-rise buildings is relatively big. This suggests that people who have physical limitations need better ways of escaping from high-rise buildings.

In future work, it will be important to consider incorporating other types of personality profiles in GENIUS. For example, threatening individuals (e.g., terrorists) can be added and simulated for hostage situations. Simulation of natural disasters such as storms and floods in GENIUS can be a good addition. For the case of escaping from the high-rise buildings, the effects of other factors (leadership, communication, building structures, etc) can be explored. Currently, GENIUS is being ported to Unity which is a more advanced game engine that supports various platforms including Windows, OS X, Android and iOS. This game engine provides a more flexible and robust development environment and enables more realistic visualization in GENIUS.


aParts of this study have been presented previously at the IEEE International Conference on Intelligence and Security Informatics 2010 (ISI 2010) in Vancouver, Canada.


The authors would like to thank the anonymous referees whose comments and suggestions have significantly improved this article. This research was partially supported by the MoCSSy Program, Simon Fraser University under the CTEF grant. Research was also supported in part by the Natural Sciences and Engineering Research Council of Canada’s (NSERC) Postdoctoral Fellowship.

Supplementary material

13388_2012_29_MOESM1_ESM.tiff (2.4 mb)
Authors’ original file for figure 1
13388_2012_29_MOESM2_ESM.tiff (746 kb)
Authors’ original file for figure 2
13388_2012_29_MOESM3_ESM.pdf (767 kb)
Authors’ original file for figure 3
13388_2012_29_MOESM4_ESM.tiff (5.1 mb)
Authors’ original file for figure 4
13388_2012_29_MOESM5_ESM.tiff (1.4 mb)
Authors’ original file for figure 5
13388_2012_29_MOESM6_ESM.pdf (664 kb)
Authors’ original file for figure 6
13388_2012_29_MOESM7_ESM.pdf (672 kb)
Authors’ original file for figure 7
13388_2012_29_MOESM8_ESM.pdf (117 kb)
Authors’ original file for figure 8
13388_2012_29_MOESM9_ESM.pdf (165 kb)
Authors’ original file for figure 9
13388_2012_29_MOESM10_ESM.pdf (147 kb)
Authors’ original file for figure 10
13388_2012_29_MOESM11_ESM.pdf (159 kb)
Authors’ original file for figure 11
13388_2012_29_MOESM12_ESM.pdf (159 kb)
Authors’ original file for figure 12
13388_2012_29_MOESM13_ESM.pdf (159 kb)
Authors’ original file for figure 13
13388_2012_29_MOESM14_ESM.pdf (159 kb)
Authors’ original file for figure 14
13388_2012_29_MOESM15_ESM.pdf (159 kb)
Authors’ original file for figure 15
13388_2012_29_MOESM16_ESM.pdf (159 kb)
Authors’ original file for figure 16
13388_2012_29_MOESM17_ESM.pdf (159 kb)
Authors’ original file for figure 17

Copyright information

© Park et al.; licensee Springer. 2012

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Authors and Affiliations

  • Andrew J Park
    • 1
  • Herbert H Tsang
    • 2
  • Mengting Sun
    • 3
  • Uwe Glässer
    • 3
  1. 1.Institute for Canadian Urban Research Studies (ICURS)Simon Fraser University, Thompson Rivers UniversityBurnabyCanada
  2. 2.Trinity Western UniversityLangleyCanada
  3. 3.Interdisciplinary Research in the Mathematical and Computational Sciences (IRMACS) CentreSimon Fraser UniversityBurnabyCanada

Personalised recommendations