-
Royal Institute of Technology
Bachelor’s Thesis
Evacuating Crowds Using ActiveIntervention: Modelling and
Verification
by Simulation
Authors:
Victor Tingström Karl Nyman
[email protected] [email protected]
A thesis submitted in partial fulfilment of the requirements
for the degree of Bachelor of Science in Engineering
May 2013
-
ROYAL INSTITUTE OF TECHNOLOGY
Abstract
Department of Mathematics
Division of Optimization and Systems Theory
Bachelor of Science in Engineering
Evacuating Crowds: Modelling and Verification by Simulation
using Active
Intervention
by Victor Tingström and Karl Nyman
The ability to simulate crowds during emergency evacuations
could help designers of
buildings and crowd management systems to decrease the number of
casualties in e.g.
fires. With the use of computer simulations of crowd evacuation,
costly and possibly
unethical real-world experiments can be avoided.
The proposed crowd evacuation model extends Helbing’s Social
Force Model with ob-
stacle and collision avoidance. It also includes elements of
cognition such as impatience
and an exit search algorithm. Two active intervention measures
are evaluated: The
inclusion of leaders and exit signs.
Simulations verify that the model produces realistic human
behaviour. They also imply
that exit signs decrease evacuation time. Leaders decrease
evacuation time but above a
threshold ratio of leaders among evacuees, improvement is
non-existent. The threshold
ratio is dependent on the number of evacuees in a room and
varies between 10% and
30% for 20 to 30 evacuees. It is important to assess in which
context the model is used
in order for the assumptions to be valid. Results should be
interpreted qualitatively
because quantitative verification has not been made.
http://www.kth.sehttp://math.kth.se/optsyshttp://math.kth.se
-
Acknowledgements
We would like to thank our supervisor Yuecheng Yang at the
Department of Optimiza-
tion and Systems Theory at Kungliga Tekniska Högskolan for his
extensive support and
encouragement.
We are also grateful towards Prof. Xiaoming Hu at the Department
of Optimization
and Systems Theory at Kungliga Tekniska Högskolan for valuable
insight and the op-
portunity of doing this work.
Finally, we would like to thank Mr. Sunil Patel at
www.sunilpatel.co.uk for providing
us with the LaTeX template that this thesis paper is based
on.
ii
-
Contents
Abstract i
Acknowledgements ii
List of Figures vi
Abbreviations vii
Symbols viii
1 Introduction 1
1.1 Background and relevance . . . . . . . . . . . . . . . . . .
. . . . . . . . . 1
1.2 Key concepts . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 2
1.3 Aims and objectives . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 2
1.4 Outline of the model CEPABS . . . . . . . . . . . . . . . .
. . . . . . . . 2
1.5 Limitations . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 3
1.6 Collaborations . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 3
1.7 Outline of the thesis . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 4
2 Literature review 5
2.1 Models of crowd behaviour . . . . . . . . . . . . . . . . .
. . . . . . . . . 5
2.1.1 Flocking behaviour and SFM:s . . . . . . . . . . . . . . .
. . . . . 5
2.1.2 Cellular automata models . . . . . . . . . . . . . . . . .
. . . . . . 6
2.1.3 Leader- follower models . . . . . . . . . . . . . . . . .
. . . . . . . 7
2.2 Crowd behaviour . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 8
2.2.1 Response to signal systems . . . . . . . . . . . . . . . .
. . . . . . 8
2.2.2 Exit choice . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 9
2.2.3 Communication . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 9
2.2.4 Velocity alignment . . . . . . . . . . . . . . . . . . . .
. . . . . . . 10
2.2.5 Obstacle avoidance . . . . . . . . . . . . . . . . . . . .
. . . . . . . 10
2.3 Search algorithms . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 11
2.4 Choice of parameters . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 12
2.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 12
3 The Model CEPABS 14
3.1 Introduction to the model . . . . . . . . . . . . . . . . .
. . . . . . . . . . 14
3.2 Forces of the SFM . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 17
iii
-
Contents iv
3.2.1 Helbing’s model . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 17
3.2.2 Inter-agent forces . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 18
3.2.3 Physical obstacle forces . . . . . . . . . . . . . . . . .
. . . . . . . 19
3.2.4 Parameters used in the force model . . . . . . . . . . . .
. . . . . . 20
3.3 Forces added to Helbing’s model . . . . . . . . . . . . . .
. . . . . . . . . 20
3.3.1 Obstacle avoidance causing retarding . . . . . . . . . . .
. . . . . . 20
3.3.2 Wall following . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 22
3.3.3 Speed dampening . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 22
3.3.4 Obstacle avoidance . . . . . . . . . . . . . . . . . . . .
. . . . . . . 22
3.3.5 Desired direction of an agent . . . . . . . . . . . . . .
. . . . . . . 23
3.3.6 Moving followers out of the way for leaders . . . . . . .
. . . . . . 24
3.3.7 Parameters of the added forces . . . . . . . . . . . . . .
. . . . . . 24
3.4 Geometrical representation of a building . . . . . . . . . .
. . . . . . . . . 24
3.5 Target points . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 25
3.5.1 Door targets . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 26
3.5.2 Viewpoint target points . . . . . . . . . . . . . . . . .
. . . . . . . 26
3.5.3 Auxiliary target points . . . . . . . . . . . . . . . . .
. . . . . . . . 27
3.5.4 Terminal points . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 27
3.5.5 Target zones . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 28
3.5.6 Exit signs . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 28
3.6 Point Search Algorithm . . . . . . . . . . . . . . . . . . .
. . . . . . . . . 29
3.7 Mental map . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 30
3.8 Patience . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 31
3.9 The leader concept . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 33
3.10 Pathfinding Algorithm . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 33
3.11 Pathfollowing Algorithm . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 34
3.12 Exit search strategy for leaders . . . . . . . . . . . . .
. . . . . . . . . . . 35
3.13 Exit search strategy for non-leaders . . . . . . . . . . .
. . . . . . . . . . . 35
3.13.1 Prioritising of target points . . . . . . . . . . . . . .
. . . . . . . . 36
3.13.2 Leader Following . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 36
3.13.3 Single Target Pursuit . . . . . . . . . . . . . . . . . .
. . . . . . . 37
3.13.4 Exit Choice Algorithm . . . . . . . . . . . . . . . . . .
. . . . . . . 38
3.14 Summary . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 38
4 Simulation Results 40
4.1 Simulation setup . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 40
4.2 Verification of the model . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 42
4.2.1 Arching . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 42
4.2.2 Avoidance of obstacles . . . . . . . . . . . . . . . . . .
. . . . . . . 43
4.2.3 Agent avoidance . . . . . . . . . . . . . . . . . . . . .
. . . . . . . 44
4.2.4 Leader shield . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . 45
4.3 Results from testing of active intervention measures . . . .
. . . . . . . . 45
4.3.1 The effect of leaders . . . . . . . . . . . . . . . . . .
. . . . . . . . 45
4.3.2 The effect of exit signs . . . . . . . . . . . . . . . . .
. . . . . . . . 48
4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 49
5 Discussion 50
-
Contents v
5.1 Discussion of simulation results . . . . . . . . . . . . . .
. . . . . . . . . . 50
5.1.1 Expected agent behaviour . . . . . . . . . . . . . . . . .
. . . . . . 50
5.1.2 Effect of active intervention measures . . . . . . . . . .
. . . . . . 51
5.2 Comparison with other models . . . . . . . . . . . . . . . .
. . . . . . . . 53
5.3 Methodology . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 54
5.4 Assumptions made in CEPABS . . . . . . . . . . . . . . . . .
. . . . . . . 56
5.5 Verification . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 57
5.5.1 Phenomenological verification . . . . . . . . . . . . . .
. . . . . . . 57
5.5.2 Video based verification . . . . . . . . . . . . . . . . .
. . . . . . . 57
5.5.3 Evacuation time comparison . . . . . . . . . . . . . . . .
. . . . . . 58
5.5.4 Suggestions for improvement . . . . . . . . . . . . . . .
. . . . . . 59
5.5.5 Comments on the verification of CEPABS . . . . . . . . . .
. . . . 59
5.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 59
6 Conclusions 61
-
List of Figures
3.1 Wall influence . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 16
3.2 Agent avoidance . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 19
3.3 Obstacle avoidance . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 20
4.1 Building geometry . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 41
4.2 Exit sign placement . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 41
4.3 Arching . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 42
4.4 Obstacle avoidance 1 . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 43
4.5 Obstacle avoidance 2 . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 43
4.6 Obstacle avoidance 3 . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 44
4.7 Agent avoidance 1 . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 44
4.8 Agent avoidance 2 . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . 44
4.9 Leader shield . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 45
4.10 Evacuating 20 people with 1 leader . . . . . . . . . . . .
. . . . . . . . . . 46
4.11 Evacuating 20 people with 2 leaders . . . . . . . . . . . .
. . . . . . . . . 46
4.12 Evacuating 30 people with 1 leader . . . . . . . . . . . .
. . . . . . . . . . 46
4.13 Evacuating 30 people with 3 leaders . . . . . . . . . . . .
. . . . . . . . . 46
4.14 Evacuating 40 people with 1 leader . . . . . . . . . . . .
. . . . . . . . . . 47
4.15 Evacuating 40 people with 4 leaders . . . . . . . . . . . .
. . . . . . . . . 47
4.16 Leader to follower 20 people . . . . . . . . . . . . . . .
. . . . . . . . . . . 47
4.17 Leader to follower 30 people . . . . . . . . . . . . . . .
. . . . . . . . . . . 47
4.18 Evacuating 20 poeple with no signs . . . . . . . . . . . .
. . . . . . . . . . 48
4.19 Evacuating 20 poeple with signs . . . . . . . . . . . . . .
. . . . . . . . . 48
4.20 Evacuating 30 poeple with no signs . . . . . . . . . . . .
. . . . . . . . . . 48
4.21 Evacuating 30 poeple with signs . . . . . . . . . . . . . .
. . . . . . . . . 48
4.22 Evacuating 40 poeple with no signs . . . . . . . . . . . .
. . . . . . . . . . 49
4.23 Evacuating 40 poeple with signs . . . . . . . . . . . . . .
. . . . . . . . . 49
vi
-
Abbreviations
SFM Social Force Model
CAM Cellular Automata Model
CEPABS Crowd Evacuation of Pedestrians using Agent Based
Simulation
vii
-
Symbols
ri position of agent i m
Ri radius of agent i m
vi velocity of agent i ms−1
v0i desired speed of agent i
rtargeti target position of agent i
mi mass of agent i kg
τ acceleration time s
pind individualism parameter
ppatiencei patience level of agent i
Rsight sight radius of agent i m
Si mental map of agent i
e0i desired direction of agent i
Rij combined radii of agent i and j m
dij distance between agent i and j m
diW distance between agent i and obstacle W m
κ constant of friction kgm−1s−1
A constant of inter agent forces N
B constant of inter agent forces m
K spring constant kgs−2
rtarget target point of an agent
Aagent.ret constant of agent retarding force N
Aobst.ret constant of obstacle retarding force N
Aobst.ret,close constant of close obstacle retarding force N
h constant of close obstacle force m
Awall.foll constant of wall following force N
viii
-
Symbols ix
c constant for wall following force
Aobst.av constant of obstacle avoiding force N
Aagen.av constant of agent avoiding force N
δ constant for g′
and g′iW m
Aspeed.dampening constant of speed dampening force kg/m
Ashield constant of leader shield force N
di,virt.obst distance between agent i and a virtual obstacle
m
ri,virt.obst combined radii of agent i and a virtual obstacle
m
rij vector between agent i and j
nij normal vector between agent i and j
tij tangential vector between agent i and j
riW vector between agent i and an obstacle W
niW normal vector between agent i and an obstacle W
tiW tangential vector between agent i and an obstacle W
f ij forces between agent i and j N
f iW forces between agent i and obstacle W N
∆vnji the scalar product of the relative speed between agent i
and j and nij
∆vtji the scalar product of the relative speed between agent i
and j and tij
∆vnWi the scalar product of the relative speed between agent i
and obstacle W niW
∆vtWi the scalar product of the relative speed between agent i
and obstacle W and tiW
B the building set
O the outside set
WB the set of all visual obstacles in the building
Wi the set of all visual obstacles in room i
PD,i the set of points of all door targets in room i
PV,i the set of viewpoint target points in room i
daux auxiliary point offset m
PA,i the set of all auxiliary points in room i
dterminal offset distance of a terminal point m
PF the set of all terminal points
wzone width of a target zone m
hzone height of a target zone m
dzone offset distance of a door target zone m
-
Symbols x
Ppot the set of all potential targets in a room
L symbol for a line or line segment
Rmax,vis the maximum distance at which two points can be
considered visible m
Pintersect the set of intersection points between two lines
Arect symbol for a rectangle
Pvisible set of all currently visible targets of an agent
Pknown the set of all known target points of an agent
Pvisited the set of visited target points of an agent
Pinvalid the set of invalidated target points of an agent
ppatience,min threshold patience level
〈v〉 mean speed of an agent over some past time steps ms−1
GD the door target graph
Rfollow,max minimum radius for leader influence m
rleader position of a leader
-
Chapter 1
Introduction
1.1 Background and relevance
Reliable and accurate tools for simulating crowd evacuation are
essential for aiding the
design of buildings in purpose of minimising casualties and
evacuation time. Notable
disasters in the past, like The Station Night Club Fire, Rhode
Island, USA with 100
diseased and the World Trade Center bombings could have had more
positive outcomes
if further pre-emptive actions had been taken[1]. Software for
simulating pedestrian
behaviour under influence from active intervention during
emergencies could play a
major role in this by enabling repeated testing of proposed
active intervention measures
for minimising evacuation time and casualties. This is
especially important considering
the limited abilities of conducting accurate real-world
experiments due to ethical aspects
of exposing test subjects to hazard and the difficulty of
producing realistic behaviour of
subjects in arranged situations.
Previously, hand book-calculation has been the primary tool when
considering the lay-
out of buildings from an evacuation safety perspective [2–5]. A
major drawback of these
are that they provide no insight of the behaviour of evacuees
during evacuation. Com-
putational models for simulating crowd evacuation have been
around since at least the
70s, with Takahashi and Helbing as notable predecessors [5].
Many of these models have
however met criticism for making unreasonable assumptions
producing results inconsis-
tent with realistic human behaviour. Haraala and Hagelin note
that slight variations in
parts of the model Steps results in very different outcomes [3].
Therefore, it is important
1
-
Chapter 1. Introduction 2
to develop models that more accurately reproduce the behaviour
of evacuees, something
that is requested by several developers of computational models
[6, 7]. That being said,
computational models have been used when designing major event
buildings such as
Swedbank Arena (nowadays called Friends Arena) and Wembley
National Stadium [8],
and the authors have found new models as recently as 2012.
1.2 Key concepts
Before moving on, two key terms in the report are clarified:
Agent: The entity in this crowd evacuation model that represents
an evacuating human
being. Different definitions of an agent are used in the
literature. The specific use in
this thesis is specified in chapter 3.
Active intervention: Any measures taken by a designer of crowd
evacuation systems in
order to reduce casualties and evacuation time. Common examples
are exit signs, signal
systems and rescue personnel.
1.3 Aims and objectives
The aim of this Bachelor’s Thesis is to extend the Social Force
Model (abbreviated SFM)
proposed by Helbing with means of active intervention, in
purpose of analysing the effect
of the latter. The specific active intervention measures are the
addition of exit signs and
trained leaders. Furthermore, agents are assumed to have no
knowledge of the floor plan
prior to evacuation and the model should be adapted to a floor
plan that requires the
evacuees to move through a minimum of three doors before being
evacuated.
1.4 Outline of the model CEPABS
The model proposed in this thesis is called CEPABS. A more
thorough description of
CEPABS and a review of previous work will be treated in
subsequent chapters, but the
main features of CEPABS are briefly outlined below. CEPABS:
-
Chapter 1. Introduction 3
• Uses a Newtonian force model to describe close personal
interactions, making it
suitable for analysis of close scale behaviour of crowds.
• Uses a leader-follower model for rescue personnel and directed
exit signs as means
of active intervention.
• Does not require evacuees to have any prior knowledge of the
building floor plan
and manages to evacuate evacuees in absence of trained leaders
or directions.
• Takes into account variations of characteristics of evacuees
such as body size,
desired movement speed and sight range.
• Exhibits experimentally verified [5, 6] features of evacuating
crowds, such as arch-
ing at narrow passages and obstacle avoidance.
Matlab TMis used as the programming language of implementation,
but the program
can easily be realised in other languages.
1.5 Limitations
In this thesis, and consequently in CEPABS, only single floor
buildings are considered.
Furthermore, communication between evacuees is limited to
wanting to maintain per-
sonal space. Physically, evacuees are modelled as circular 2D
objects, while other authors
use more authentic body shapes [3, 9]. They are also modelled to
have 360◦ angle of
vision and no moment of inertia.
1.6 Collaborations
The model consists of two weakly separated parts: the main model
and active inter-
vention. The main model is made jointly with Leijonmarck and
Olerg̊ard, while active
intervention is carried out by the authors. Besides the work
with the main model part,
there has been additional cooperation with Leijonmarck and
Olerg̊ard. (Date of publish-
ing of Leijonmarck and Olerg̊ard is currently unknown but is
estimated to be available
in KTH database DIVA by the latest 2014.)
-
Chapter 1. Introduction 4
1.7 Outline of the thesis
In Chapter 2 a review of previous models and theories of human
behaviour during
emergency evacuations is presented. Chapter 3 contains a
description of the model
CEPABS and in Chapter 4 simulation results are presented. In
Chapter 5 the model
CEPABS and the results from the simulations are discussed and
analysed and in Chapter
6 the thesis is summarised, with some suggestions for
extensions.
-
Chapter 2
Literature review
Preceding this work, there has been research governing the
behaviour of humans in
various settings as well as several approaches to modelling
crowd evacuation. In this
section approaches used in this thesis and alternative approches
are outlined. Findings
regarding typical behaviour of individuals and crowds are also
mentioned, in purpose of
discussing assumptions made in the model.
2.1 Models of crowd behaviour
2.1.1 Flocking behaviour and SFM:s
Flocking behaviour, as described by Reynolds in his seminal
article ”Flocks, Herds, and
Schools: A Distributed Behavioral Model” captures some key
characteristics of a collec-
tive flock based on a few basic principles [10]. Collision
avoidance is the notion of flock
members trying to avoid colliding with other flock members.
Velocity matching means
that members try to align velocity (direction and speed) with
nearby members. Flock
centering is the notion of flock members attempting to stay
close to others.
It is not obvious to what extent these principles can be applied
to human crowd be-
haviour, but an adaptation is made by Helbing in his SFM [6].
The SFM models
evacuees as particle-like objects subject to ”forces”
constructed to reflect desired prop-
erties of human interactions and behaviour. The agents are
assumed to possess mass, a
body radius, a (variable) desired velocity, a finite reaction
time and an ”individualism”
5
-
Chapter 2. Literature review 6
parameter. Some SFM:s add or omit parameters. A few key forces
in the model are
worth mentioning, considering that they are used in the model
CEPABS of this thesis.
The ”personal distance” force is meant to reflect the notion of
humans wanting to main-
tain a certain personal distance to each other and which is
usually modeled as directed
along the distance vector between two agents and decaying with
distance. Osiragi and
Olfati Saber discuss forces with exponential and inversely
proportional decay as well
as linear combinations of the two [9, 11]. Osiragi chose to
adapt an exponentially de-
creasing force arguing that this way unbounded forces are
avoided. This decay is used
in Helbings model and CEPABS. Two forces that only apply when
two agents are in
contact with each other are a Hooke’s Law-like ”compression
force” and a tangential
interagent damping like force with the purpose of slowing down
agents ”rubbing their
bodies against each other” (authors’ interpretation). The finite
reaction time of humans
and delay in motor skills hypothetically give rise to a force
that works to change the
current velocity to the desired velocity, with a certain delay.
What determines the de-
sired velocity varies between models and is usually affected by
several parameters.
Since SFM:s take into account many physical interactions at a
high resolution in time
and space (only limited by accuracy and step size of numerical
solvers), they can poten-
tially, using well designed forces and tuned parameters describe
realistic kinematics of
humans in a crowd. This virtue is also a shortcoming when it
comes to computational
cost; solving differential equations numerically and calculating
forces between many ad-
jacent agents is inevitably consuming and limits the scalability
of a model. This is likely
one reason why other approaches exist along side the SFM.
2.1.2 Cellular automata models
Cellular automata models (abbreviated CAM) divide a floor plan
into a (usually uniform)
grid in which agents move and naturally have a computational
advantage over SFM:s. In
CAM:s, agents and objects occupy grid cells and one cell can
never be occupied by more
than one agent or object. CAM:s determine the move of an agent
in each time step by
some algorithm which usually evaluates a cost function and/or
follow a logical decision
chain (of an ”if-then” type), sometimes incorporating stochastic
elements. Haraala and
Hagelin point out that the (cellular automata) model Steps is
highly sensitive to changes
in the grid size, and that another CAM Simulex over-predicted
evacuation time in the
soccer stadium scenario investigated by them [3]. It should be
noted, however, that
-
Chapter 2. Literature review 7
Haraala and Hagelin report the Steps model to give accurate
results with the right
tuning. Furthermore, the authors of this thesis encountered far
more CAM:s than SFM:s
during the research of crowd evacuation models, implying that
CAM:s do have some
virtues.
2.1.3 Leader- follower models
Some crowd evacuation models include variations of the
leader-follower mechanisms
[4, 6, 7, 12, 13]. In a leader-follower model at least one
agent, the follower follows at
least one leader to some extent. At one extreme, a majority of
agents are assumed
to unconditionally follow a small number of leaders, who
themselves consider no other
agents in the choice of route. At another extreme, there are no
distinct leaders and all
agents choose their targets mainly independent of each others.
Some models allow for
variable leader-follower characteristics [6], some use leaders
for specific grouping phases
of an evacuation and some have no pronounced leaders, but make
their agents obey
social hierarchies [4, 7].
The leader-follower model by Pelechano and Badler deserves a
more thorough explana-
tion [12]. In Pelechano and Badler’s model, there are three
kinds of agents: Followers,
untrained leaders and trained leaders. Followers are evacuees
without a leader disposi-
tion that are considered to freeze in panic (do nothing) unless
there is a nearby leader,
whom they follow. Untrained leaders, people who possess leader
characteristics but do
not know the building before hand employ a depth-first search to
make their way out
of it (it should be noted that building in the model had a
restricted maze-like geometry
composed of square rooms, which allowed for this simplified
approach). Trained leaders,
like fire fighters, know the building floor plan and will take
the optimum route for getting
out. Pelechano and Badler compared different leader/non-leader
ratios and found that
a ratio up until 10 % gave a vastly decreased evacuation time,
while a higher ratio gave
a marginal decrease. As a reference, Can and Qingge explored the
same ratio in their
model and found that an exaggerated number of leaders gave
increased evacuation time,
reasoning that it would make followers indecisive in choosing
leaders causing them to
switch which leader to follow frequently [7]. This comparison
highlights the significance
of the implementation of a leader-follower Model.
-
Chapter 2. Literature review 8
2.2 Crowd behaviour
2.2.1 Response to signal systems
When modelling crowd evacuation with active intervention one
needs to know what effect
various forms of signal systems such as exit signs and sound
signals has on evacuees.
Sound signals
In a study of the World Trade Centre Bombings, it was reported
that no more than
14% of evacuees had recalled hearing a sound alarm [2]. It is
mentioned that the low
percentage might be due to damages to the sound alarm system.
However, only 1-5 %
(depending on tower) of respondents stated that the primary
reason for evacuating was
hearing a sound alarm, giving reasons such as ”being told to
evacuate” or ”feeling in
danger” as the most important. One should however be careful
interpreting the survey
as representative of other evacuations since the WTC was a
multi-floor building, the
building was damaged in an unusual way and other warnings might
have reached the
evacuees before the sound alarm. Proulx and Laroche further
state that one of the
most common emergency alarm sounds was not recognised as such by
a majority of
test subjects in a survey [14]. They did however mention that an
alternative sound was
perceived by more test subjects as an alarm signal, and that
when a signal was perceived
by an evacuee, he or she would have an increased feeling of
urgency to leave. This is also
supported by a testimonial of an evacuee in the WTC bombings in
a report by Averill
et. al [2]. From this it tempting to conclude one of the
following: Commonly used
sound alarms are generally not perceived by evacuees and as such
is not very effective,
or evacuees have not received sufficient training to correctly
respond to signals. However,
considering the small amount of information and inconclusive
indications, one should
further research the effect of sound signals before relying on
them in a model.
Effect of exit signs
In the WTC bombings, between 33 and 17 % of survivors reported
having been helped by
photoluminescent markings (exit signs), where the higher
percentage was found among
evacuees in a building in which lights had been lost [2].
Kluepfel, further cites Abe in his
-
Chapter 2. Literature review 9
Doctoral Thesis, reporting that 53% of evacuees followed either
exit signs or instructions
from staff in a simulated evacuating setting [15]. The survey
does not discern what part
of the percentage was due to exit signs, but the two sources
together indicate that people
evacuating buildings during emergencies do make use of exit
signs. Unfortunately, no
copy in English of the original source (Abe) of Kluepfel could
be found.
2.2.2 Exit choice
In section 2.2.1 the effect of exit signs was discussed. It is
important to know on what
grounds evacuees prioritise exits. The survey of Abe as cited in
Kluepfel show that after
Exits signs and instructions from staff, distance to an exit was
the second most common
reason for choosing an exit [15]. Following others (6,7%) and
picking an exit which was
not crowded (0.7%) was given as other reasons. These reasons are
stated as perceived
primary reason by the evacuees, but this shouldn’t exclude that
several reasons are
considered simultaneously. Following others is in compliance
with the velocity matching
and leader-follower concepts, while ”exit was not crowded” is
investigated by Aik [16].
Aik showed both through simulation (a CAM) and experiment that
some evacuees (in
an arranged experiment should be noted) chose a more remote exit
if the closest exit was
the most crowded [16]. Although not conclusive from these
studies, until more research
has been done, it would be worthwhile to investigate a model
using exit choice based
on: visibility of signs, proximity of exits and crowdedness.
This is done in CEPABS.
2.2.3 Communication
Most models include communication in one way or another. It
could either be indirect,
in form of wishing to maintain personal space (SFM) or direct by
sharing information
of a floor plan as is done in [12]. A report from the WTC
bombings implies that
communication among evacuees is substantial, as do Pan citing
Sime [4]. It is however
reasonable to believe that the nature of the evacuation matters
here. It is perhaps less
likely for direct communication to occur in a high-density
sports stadium stampede than
in an office building where evacuation starts with a rumour of a
fire in a remote part
of the building. As interesting and important as may be in many
evacuation settings,
communication is mostly neglected in the version of CEPABS used
in this thesis.
-
Chapter 2. Literature review 10
2.2.4 Velocity alignment
Velocity alignment in humans could be seen as the tendency to
follow others. In Helbing’s
model velocity alignment is dependent on an individualism
parameter, which weighs the
desired direction of an agent between that of his neighbours and
that of his own (in case
he would be by himself) [6].
Olfati Saber has extensively treated consensus algorithms for
multi-agent networks, in-
cluding under what circumstances convergence is achieved [11]. A
consensus problem
arises in velocity matching when agents are arranged according
to their neighbours in
a network (preferably viewed as a graph) and set their desired
velocity to the mean
of its neighbours (which can be defined in a multitude of ways).
Olfati-Saber showed
that convergence is not guaranteed for any network, but for a
fully connected graph the
velocity converges to one common velocity. In case of one leader
and a graph where
every node (agent) can be connected to the leader with a
directed path, convergence is
also reached, but the convergence rate is not mentioned.
In CEPABS none of the sufficient conditions for convergence are
always satisfied (glob-
ally) and so the results of Olfati Saber are of limited
interest, but they could well be
used the analysis of crowd evacuation models, especially those
facing consensus problems
other than for velocity alignment [4].
2.2.5 Obstacle avoidance
Obstacle avoidance is the notion of crowd members wanting to
avoid colliding with
obstacles and other crowd members. The term can also include the
way an agent chooses
its path in order to circumvent an obstacle. Obstacle avoidance
might not be a feature
unique to crowds, but nevertheless is of importance in crowd
simulations. A majority of
crowd evacuation models investigated in the literature study do
not explicitly mention
obstacle avoidance, but Olfati Saber and Reynolds treated it in
the broader context of
flocking behaviour[11, 17].
Reynolds presented an obstacle avoidance in which obstacles are
represented as com-
positions of spheres. A simplified reformulation of the
principle is described as follows.
An agent would have as a goal to keep an imaginary cylinder of
free space in front of
-
Chapter 2. Literature review 11
it. First, an agent finds the vector between its position and
the centre of each obsta-
cle. It then calculates the length of the orthogonal complement
of the projection onto
the centre line of its free space cylinder. If the length of the
orthogonal complement is
greater than the sum of the radius of the agent’s free space
cylinder and the radius of
the obstacle, the obstacle is not considered. Otherwise the
agent steers sideways of the
obstacle to whichever side is nearer the target.
Olfati Saber introduced the concept of β-agents, in contrast to
α-agents who are ordinary
flock members [18]. β-agents are virtual agents that are created
slightly within the
boundary of an obstacle at the point closest to an α-agent. β
and α agents in Olfati
Saber’s model follow a flocking protocol, similar to that in
[10] but including a consensus
algorithm as described in [11]. Altogether, the interactions
between β and α agents,
which includes close distance repulsion and a form of velocity
alignment, causes α agents
to move around obstacles.
In CEPABS, a simplified and modified version of Reynold’s model
is used, adapted to
the employed SFM. Olfati Saber’s obstacle avoidance as presented
in [18] is not used in
CEPABS, but many aspects are in practice similar in both
models.
2.3 Search algorithms
In models where movement is determined by potential fields, such
as Simulex [5] or just
by force interactions with other agents there is no need for
strategies for finding a way
out of a building. In other models agents need to follow some
algorithm. Pelechano
and Badler mention a depth first algorithm, usable if there is a
well defined portal graph
(a graph of ”rooms” and ”portals” between rooms) [12]. How
realistic this algorithm
is for a human beings is however not discussed. Qingge uses the
A* algorithm for the
trained leaders, but in order to be useful for way finding an
agent needs to know the
building before hand [7]. In contrast to the depth first
algorithm A* does not require
the building to be described by a network, but rather needs the
floor plan to be divided
into grid cells.
Pan and Pelechano and Badler primarily make agents follow others
in lack of options
and Pan employs ”random search” if an agent is completely
”individualist” (as may
occur in his model) [4, 12], although it is not closely
described how this works. Pan
-
Chapter 2. Literature review 12
does however mention two algorithms for updating perception of
an agent which would
trigger a desired direction of movement: A target search
algorithm and a ray tracing
algorithm. In the target search algorithm an agent looks for
nearby potential targets
(such as doors, meeting spots or other evacuees in Pan) and
checks if the line of sight
to those targets are obstructed or not. The Ray Tracing
algorithm checks in which
direction an agent can move by shooting rays of vision at
different angles in front of the
agent to see if there is an obstacle obstructing its potential
path.
The authors of this thesis see the need of continuing the
development of such algorithms
in order to avoid unrealistic behaviour in some geometries.
Therefore an extension to a
combination of some previously existing algorithms is proposed
in chapter 3.
2.4 Choice of parameters
Most crowd evacuation models will contain parameters that
determine how the model
works. Sometimes heuristics can be used for certain parameters
(i.e. reaction time, sight
range) and sometimes iterative tuning can be done until the
model works as ”desired”.
Another approach, proposed by Osiragi uses regression to fit
parameters of a model to
experimental data [9]. In Osiragi’s work, this method is used
for describing pedestrian
movements in a non-emergency situation. However, since
parameters can be expected to
be interdependent, introduction of new parameters or changing
the experimental setting
could alter the configuration of parameters. In that sense, the
method is not considered
more adaptable than other options. In this thesis, most
parameters are based on values
from other models, or tuned by trial an error. CEPABS is not
expected to be used
for real-world building planning until tested and refined (which
would include a strict
revision of parameters).
2.5 Summary
In this chapter, two major approaches to modelling crowds were
presented: SFM and
CAM, of which the SFM is used in this thesis. Furthermore,
leader-follower models
have been discussed. A search algorithm with resemblance to that
of [12] is used in
CEPABS was mentioned and is further described in chapter 3. Some
aspects of crowd
behaviour were discussed, of which exit choice selection and
velocity alignment play
-
Chapter 2. Literature review 13
important roles in CEPABS. Finally, methods for finding
parameters were discussed,
where iterative refinement is mostly used in CEPABS.
-
Chapter 3
The Model CEPABS
3.1 Introduction to the model
CEPABS is an SFM based on Helbing’s model [6], extended with a
mental map, patience
and a set of exit search strategies. The forces of the model are
described in sections
3.2.1 and 3.3, the mental map concept is described in section
3.7, patience is described
in section 3.8 and exit search strategies are described in
sections 3.12 and 3.13.
Since agents are subject to forces in an SFM, the movement of
agents is calculated by
solving a system of ordinary differential equations (also called
an ODE) arising from
Newtons second law of motion. For the remainder of this thesis
it is assumed that the
ODE solver uses a constant step size. This step size is from now
on referred to as the
time step and is also taken as the least increment that any
other part of the model, i.e.
the mental map, can be updated. There is nothing saying a solver
with variable time
step cannot be used, but then the time step concept might need a
revision.
Certain mechanisms like patience and the mental map are updated
at update times
which are taken to be evenly spaced at intervals greater or
equal to the time step.
Before explaining CEPABS in detail, some key concepts of the
model are defined. Unless
otherwise stated, all quantities are elements in R2. Distance
will always mean the
Euclidean distance, ∗ will always mean the complement of a set
and bold font will
always mean a vector quantity.
14
-
Chapter 3. The Model CEPABS 15
Definition 3.1. An agent is defined as a set containing a
position, an effective body
radius, a velocity, a desired speed, a target point, mass, a
reaction time, a patience level,
an individualism factor, a sight range, a mental map, a body and
a desired direction. The
position is a measure of the agent’s location. The effective
body radius is an estimate of
the body of a human being approximated as a circle (in the plane
of the floor). The body
of an agent is a circle with the agent’s position as the centre
point and the effective body
radius as the radius. The velocity is the time derivative of the
position. The desired
speed is the speed at which an agent prefers to move. The target
point is a point to
which an agent strives to move. The reaction time is an estimate
of how quickly an agent
can adapt its velocity to its desired speed in its desired
direction. The patience level is
a measure of how slowly an agent can move towards its target
point before becoming
impatient. The individualism factor is a measure of how keen an
agent is to follow other
agents. The mental map is a collection of information about the
environment the agent
is situated in. The desired direction is the direction between
from the agent’s position
to its target point.
The vector position is denoted r, the scalar effective body
radius is denoted R, the vector
velocity is denoted v, the scalar desired speed is denoted v0,
the vector target point is
denoted rtarget, the scalar mass is denoted m, the scalar
reaction time is denoted τ , the
scalar patience level is denoted ppatience, the scalar
individualism factor is denoted pind,
the sight range is denoted Rsight, the set mental map is denoted
S and the vector desired
direction is denoted e0.
In CEPABS, from tweaking and recommendations in [6], the masses
of agents were taken
to be uniformly distributed among agents between 60 and 80 kg,
the body radii were
taken to be uniformly distributed between 0.25 and 0.35 m and
the desired speeds were
taken to be uniformly distributed between 3 and 6 ms−1.
When there is more than one agent, each agent gets an index
subscript i to denote the
i:th agent in the sequence of agents.
Obstacles are walls and other static objects such as pillars and
are an integral part of
the model. Obstacles are represented in two ways, depending on
use. Both definitions
are given below.
-
Chapter 3. The Model CEPABS 16
Definition 3.2. A fundamental physical obstacle is defined as an
agent with v and R
identically zero at all times.
Although a fundamental physical obstacle does not move or have a
body radius, it affects
agents with forces just as any regular agent would.
Definition 3.3. A physical obstacle is the union of one or more
fundamental physical
obstacles.
When fundamental physical obstacles are arranged together, they
can form represen-
tations of obstacles, such as e.g. walls if arranged along a
straight line. The use of
fundamental physical obstacles is explained in the sections
3.3.2, 3.3.1 and 3.3.4. This
representation of obstacles resembles the β-agent concept
described by Olfati Saber in
chapter 2, but here agents are not created in response to a
proximate α-agent (using
the terminology of Olfati Saber). Instead, they are always
existent but only influence
an agent if the agent gets sufficiently close to the wall 3.1.
In addition, this means
that there is not only one β-agent per α-agent and that the
β-agent does not follow an
α-agent as it moves along the wall.
Figure 3.1: The influence of physical targets on an agent. The
circle encloses thearea of wall-agent influence. Red dots are
inside and black dots are outside the radius
of influence.
-
Chapter 3. The Model CEPABS 17
The second kind of obstacle interferes with the vision of
agents. The building blocks
of these obstacles, in comparison with fundamental physical
obstacles, are straight line
segments and are called fundamental visual obstacles.
Definition 3.4. A visual obstacle is the union of one or more
connected fundamental
visual obstacles.
Visual obstacles can be used to approximate many kinds of
geometrical shapes and they
can be either closed or open. The use of visual obstacles is
described in section 3.6.
3.2 Forces of the SFM
The equations of motion used to model the behaviour of the
agents are inspired by
the SFM of Helbing, but with a few additions in purpose of
making the agents behave
more naturally than they in the original model. Despite the fact
that the equations of
motion are modelled as forces, it is important to note that not
all of these forces are
actual forces, but rather forces acting upon the agents in a way
that motivates them to
perform an action like slowing down or avoiding an obstacle.
3.2.1 Helbing’s model
The SFM originally used by Helbing is
midvidt
= miv0i e
0i − vi(t)τ
+∑j 6=i
fij +∑W
fiW (3.1)
v0i is the desired speed of agent i, e0i is the desired
direction of agent i and τ is en
estimate of the time in seconds it takes for an agent to
accelerate to it’s desired velocity
v0i e0. The first term on the right hand side of the equation is
a velocity correcting term
which works to align an agent’s velocity with its desired
velocity. The second last term
is the sum of forces acting on agent i from all its neighbouring
agents j and the last
term is the sum of forces acting on agent i from all
neighbouring walls W. In the original
formulation in [6], what constitutes a neighbour is not
described. In CEPABS there are
two definitions of two points being neighbours, depending on if
the points consist of two
-
Chapter 3. The Model CEPABS 18
agents or one agent and a physical obstacle. The definitions are
general, but are here
used in the context of agents and walls.
Two points p1 and p2 are said to be mutual agent-neighbours
always. This means
that two agents are always neighbours with each other. The
reasons for introducing
the concept agent-neighbours are to separate it from the
wall-neighbour concept and to
establish a terminology that can be used if the agent-neighbour
definition is changed in
a later version of CEPABS.
Definition 3.5. Two points p1 and p2 are mutual wall-neighbours
iff ‖p2 − p2‖ <
Rneigh, where Rneigh is a minimum distance for neighbour
influence.
Rneigh is a parameter that could be based on experimental
observations or tweaking. In
CEPABS it is taken to be 10 meters.
Two agents are always considered mutual neighbours in the
agent-neighbour sense and
an agent is considered neighbour with a physical obstacle if
agent and obstacle satisfy
the requirement of definition 3.5. The neighbour concepts could
be extended in later
models.
3.2.2 Inter-agent forces
The forces fij acting between agents are
fij = [Aie(Rij−dij)/B +Kg(Rij − dij)]nij + κg(Rij − dij)∆vtjitij
(3.2)
where the constants and variables are explained one by one. Rij
is the sum of the radii
of agent i and j and dij is the distance between agent i and j.
A is a constant modulating
the magnitude of the exponential force and B is is a constant
affecting the steepness
of the exponential force as Rij varies. K is a Hooke’s law-like
spring constant, κ is a
constant representing the size of the tangential frictional
force between agents and g is
the function (rij −dij) ·H(rij −dij), where H is the Heaviside
step function. ∆vtji is the
tangential component of the relative velocities of agents i and
j, nij is the unit normal
vector from agent i to agent j and tij is the tangential unit
direction defined as the unit
normal vector rotated −90 degrees.
-
Chapter 3. The Model CEPABS 19
The first term is an exponential force that models the will of
an agent not to get too close
neighbouring agents and the second term is a spring type force
that models the bodies
of agents as linearly compressible. The third term is a sliding
friction term that slows
down agents that are in contact and moving tangentially to each
other. The function g
works to make the spring type force and sliding friction force
active only when agents
are in contact. The numerical values of the parameters are
listed in section 3.2.4.
Figure 3.2 shows the vectors nij , tij , e0 and the tangential
vector e0 to the desired
direction. Note that e0 is taken arbitrarily for the agents in
the figure and is in general
not perpendicular to nij .
Figure 3.2: The vectors for the inter-agent forces.
3.2.3 Physical obstacle forces
The physical obstacle forces fiW from all fundamental physical
objects W acting upon
agent i are the same as the inter-agent forces fij :
fiW = [Aie(RiW−diW )/B +Kg(RiW − diW )]niW + κg(RiW − diW
)∆vtWitiW (3.3)
It should be noted however, that due to the definition of
physical obstacles, diW = Ri
and ∆vtji = −vi. Figure 3.3 shows the vectors nij , tij , e0 and
the tangential vector
e0 to the desired direction at two times as an agent moves
around an obstacle. e0
is always directed towards the target. The individual
fundamental physical obstacles
that compose the entire obstacle are clearly visible, and niW
vector is seen to be the
(normalized) sum of normal vectors to each of the fundamental
physical objects. Note
-
Chapter 3. The Model CEPABS 20
that the fundamental physical objects are given non-zero radii
in order to be visible to
the reader.
Figure 3.3: The vectors for the obstacle forces.
3.2.4 Parameters used in the force model
The values of A, B, κ, K, τ and m are those that Helbing had
used in his model. A is
set to 2000 N, B to 0.08 m, κ to 2.4× 105kgm−1s−1, K to 1.2×
105kgs−2 and τ to 0.5
seconds.
3.3 Forces added to Helbing’s model
The SFM of Helbing captures some behaviours well. There are
however some situations
for which the model is not able to reproduce behaviour sought by
the authors. Those
situations are for instance when an agent needs to move past a
wall in order to reach a
target or when an agent should avoid other agents heading in the
opposite direction. To
produce satisfactory behaviour in these scenarios, four forces
are added to the model,
with constants fitted to the model rather than observed from
real-world experiments.
3.3.1 Obstacle avoidance causing retarding
In order for an agent to avoid obstacles when moving towards
them, an obstacle avoid-
ance force fobst.ret is introduced. Without this force agents
tend to act more like particles
than humans, only noticing obstacles when they are in contact.
This force is very similar
to the one Helbing used for his sliding friction force, the
difference being that instead of
-
Chapter 3. The Model CEPABS 21
projecting the relative speed of the agents upon the tangential
direction, it was projected
onto the normal. Due to the fact that the willingness of
avoiding an obstacle increases as
the distance to it decreases, the force is multiplied by an
exponential term as to mimic
the willingness of a human to avoid an obstacle. This force is
only active for obstacles
that are in front of the agent, why it is multiplied by a factor
k, which is equal to 1
should the current obstacle fall within the line of sight, and 0
otherwise.
fobst.ret = Aobst.retk∆vnWie
RiW−diW niW (3.4)
∆vnWi = −vi · niW
Aobst.ret is a scaling parameter, k is 1 if a wall target is
visible and 0 otherwise. All other
constants and variables follow the definitions in section
3.2.3.
In addition, there is a force fobst.retclose that quickly
retards the agents when they get
too close to a wall:
fobst.retclose = Aobst.retclose∆vnWie
(RiW+h−diW )/BniW (3.5)
∆vnWi = −vi · niW
Aobst.retclose is analogue to Aobst.ret and all other constants
and variables are as in equa-
tion 3.4, with subscripts changed from ij to iW .
fobst.retclose is also applicable for avoiding other agents, but
in that case the exponential
term is replaced with a function g′
that is equal to 1/(dij − Rij) whenever dij > Rij
and zero else. This gives the force fagent,ret.
fagent,ret = Aagent,retk∆vnjig
′nij (3.6)
∆vnji = (vj − vi) · nij
All variables other than g′
are as in equation 3.4.
-
Chapter 3. The Model CEPABS 22
3.3.2 Wall following
One of the previously mentioned scenarios is when an agent has
been pushed in a different
direction by other agents, resulting in a diversion from the
desired direction. If the
new direction intersects a wall, what happens is that the agent
tries to move through
the intersecting wall rather than around it. Therefore, a wall
following force fwall,foll
is introduced, similar to the exponential force Helbing
introduced in his model. The
difference between this force and the one Helbing used is the
change of the parameter A
to Awall.foll, that the combined radii is multiplied with a
factor c = 1.07 as to get the
agent to begin following the wall earlier, and that it acts in
tangential direction of the
wall. All other constants and variables are as in equation
3.2.
fwall,foll = Awall.folle(cRiW−diW )/BtiW (3.7)
3.3.3 Speed dampening
In Helbing’s model, are no forces damping an agent at a high
speed which is expected
due to falling or ”friction” with the floor. Simulations show
how agents that have been
compressed bounce off at high speeds due to the compression
force. To counteract this,
a speed dampening force fspeed.dampening is introduced, similar
to the speed dampening
force seen in the analysis of spring-mass systems, viscosity in
fluids and air drag models.
fspeed.dampening = Aspeed.dampening2√||vi||vi (3.8)
Aspeed.dampening is a scaling constant and vi is the velocity of
agent i.
3.3.4 Obstacle avoidance
An agent should not only slow down when approaching an obstacle;
it should also try
to avoid it. To realise this, an obstacle avoidance force
fobst.av is introduced. The factor
k mentioned earlier is also used here, in order to limit the
influence from the forces from
obstacles that are in front of the agent. In a first assumption
the obstacle avoidance
force is dependent on both the speed and direction of the agent
as well as the distance
from the agent to the obstacle. The force contains as scaling
constant, but otherwise
-
Chapter 3. The Model CEPABS 23
uses constants and variables from 3.6 with the difference that
the force now acts in the
tangential direction.
fobst.av = Aobst.avk∆vnWig
′iWe
0i,tang (3.9)
∆vnWi = −vi · niW , g′iW =
1diW−riW , diW > RiW + δ0, diW < RiW + δ
The force is fobst.av also applicable for avoiding other agents,
but then uses subscrips ij
instead of iW and is denoted fagent.av:
fagent.av = Aagent.avk∆vnjig
′tij (3.10)
3.3.5 Desired direction of an agent
The desired direction e0i of agent i, not under influence from
any leaders, is calculated as
in 3.11. Note that this direction is also part of Helbing’s
original model, but is written
here for ease of comparison. ri is the position of an agent and
rtargeti its target point.
e0i =rtargeti − ri||rtargeti − ri||
(3.11)
In order to account for situations where there are leaders in a
crowd, Helbing calculates
the desired the direction of agent i as the desired direction of
that agent plus the mean of
the desired directions of all the neighbouring agents j. This is
weighted with a parameter
p that indicates the tendency to follow others.
e0i =(1− p)e0i + p〈e0j 〉||(1− p)e0i + p〈e0j 〉||
(3.12)
Instead of adopting Helbing’s model, another approach is taken
for the leader-follower
mechanic. It mimics the behaviour of ducklings following their
mother. The duckling
model starts by finding all the neighbouring leaders of an agent
and setting the closest
one as its current leader. After that the target of the
following agent will is set to be the
current position of the leader. This approach results in a
natural behaviour according
to the authors, but it can certainly be refined. It should be
mentioned that the duckling
-
Chapter 3. The Model CEPABS 24
approach (and simile) is inspired by [17]. This leader-follower
model is further described
in section 3.13.2.
3.3.6 Moving followers out of the way for leaders
One problem with the duckling approach is that the leaders get
swarmed by follow-
ers, hindering the leaders from moving. Therefore another force
fshield is added which
emulates how followers make way for an authority. This behaviour
is implemented by
introducing a virtual obstacle in front of a leader that only
affects non-leaders, similar to
a shield. The term Rvirt.obst is the combined radii of the agent
and the virtual obstacle.
Here, the radius of the virtual obstacle was set to be 2 m.
fshield = AshieldeRvirt.obst−di,virt.obstni,virt.obst (3.13)
Ashield is a scaling parameter, di,virt.obst is the distance
between agent i and the virtual
obstacle and ni,virt.obst is defined as the agent-obstacle
normal as for all other forces.
3.3.7 Parameters of the added forces
Reasonable values of the parameters in the added forces were
found to be Aobst.ret =
20 kgms−1, Aobst.retclose = 200 kgms−1, h = 0.05 m, Aagent,ret =
24 kgm
2s−1, Awall,foll
= 200 N, Aspeed,dampening = 19 kgm1/2s−1/2, Aobst.av = 12
kgm
2s−1, Aagent.av = 12
kgms−1, δ = 0.15 m and Ashield = 20 N.
3.4 Geometrical representation of a building
This section deals with the geometrical representation of a
building which agents are to
be evacuated from. The geometrical representation affects both
computational costs and
which mathematical tools are available for describing exit
strategies of agents. Before
describing the model in depth a few definitions regarding the
geometrical representation
are given.
Definition 3.6. A building is defined as a connected subset of
R2 such as there is only
one building in R2.
-
Chapter 3. The Model CEPABS 25
The building is in this thesis denoted B.
Definition 3.7. The outside is defined as the complement of B in
R2.
The outside is in this thesis denoted O.
Definition 3.8. A room is an element in a partition of R2 such
that O is one of the
elements in the partition. Furthermore, every room must have at
least one door point (as
defined in definition 3.9) and door points have to be placed
such that O can be reached
from any point in B by a curve changing rooms only when
traversing door points.
Following from the definition all rooms can be assigned a unique
identifier called room
index. The room index will in the remainder of this thesis be
represented by the room
index i, where i is an integer. Furthermore, in the remainder of
this thesis room i will
refer to the ”room with room index i”.
Definition 3.9. A door point is a point that lies on the
boundary of two rooms and
not on a visual obstacle.
Having defined the outside, a definition of when an agent is
evacuated can be given.
Definition 3.10. An agent is defined to be evacuated if r ∈ O
for for at least one
previous time step.
Definition 3.10 implies that once the agent has set foot outside
of the building, it is
considered evacuated (even if it would for a moment return to
the building).
Lastly, for convenience of communication the set of all visual
obstacles in a building is
denoted WB and the set of all visual obstacles in room i is
denoted Wi.
The above definitions define the mathematical space in which
agents are positioned.
They aid in describing the model and guarantee that a point-like
agent can reach the
outside from any point in the building and become evacuated.
3.5 Target points
Target points are the set of points that agents may choose to be
their target point rtarget
as described in sections 3.12 and 3.13. In CEPABS there are four
kinds of target points:
-
Chapter 3. The Model CEPABS 26
door target points of door targets, viewpoint target points,
auxiliary target points and
terminal points that will be described in the following
sections.
3.5.1 Door targets
A door target contains two elements; a point which is situated
at door points (as defined
by definition 3.9) and a direction designating which direction
leads directly out of a
room. Consequently there are always two door targets at every
door point with opposite
directions. This concept is formalised in definition 3.11.
Definition 3.11. A door target consists of a point and a
direction. The point must be
a door point such that there is exactly one door target point
with the same point but
opposite direction in an adjacent room. The direction is the
outward unit normal to the
boundary of the room at the point of the door target.
Following from the definition all door target points in a room
can be assigned a unique
identifier called local door index. Furthermore, set of points
of all door targets in room
i is denoted PD,i.
3.5.2 Viewpoint target points
Viewpoints are points that agents can move to in order to get a
better view of their
surroundings so that they potentially can see door target
points. Before giving the
definition of a viewpoint target point, a definition of a room
corner is given.
Definition 3.12. A room corner is a point where two fundamental
visual targets that
lie entirely on the border of adjacent rooms intersect.
From definition 3.12 a room corner is shared by a minimum of two
rooms, and in practice
it is what would constitute a corner of (at least) two walls in
a real-world building.
Definition 3.13. All viewpoints target points in B are defined
with an algorithm: Find
all room corners in B. Pick a room corner and pair it with the
closest corner point
that isn’t a member of the same room as the first. If there is
more than one point at a
distance shorter than all other points, do the next step for
both points. The midpoint
of the paired corner points is a viewpoint target point. Start
with a new room corner
and repeat the process until all room corners have been
chosen.
-
Chapter 3. The Model CEPABS 27
The set of viewpoint target points in room i is denoted
PV,i.
3.5.3 Auxiliary target points
In order to facilitate realistic movement of agents and the
transition between rooms,
there are points called auxiliary points that are placed at a
fixed distance from door
target points. Once an agent has reached a door target point, it
should pursue the
auxiliary point that is associated with that door target point.
This mechanism makes
sure that agents really make it out of a room before picking a
new target point.
Definition 3.14. An auxiliary target point is a target point at
a certain offset daux from
the point of a door target in the direction of that door
target.
daux is a parameter that should be tweaked. In CEPABS it was
taken to be 3 meters. It
is mentioned in section that every auxiliary target point has an
associated zone, which
explains why 3 meters is not as large as it might seem. The set
of all auxiliary points in
room i is denoted PA,i.
3.5.4 Terminal points
Definition 3.15. A terminal point is a point p ∈ O at an offset
distance dterminal in
the direction of each door target in B.
dterminal is in CEPABS taken to be 10 meters, although it is not
likely to be sensitive
to small changes. The set of all terminal points is called PF (F
for final) and is should
be non-empty.
When an agent has reached a terminal point it does no longer
pursue any other targets
and is considered fully evacuated. It should be noted that an
agent that has reached
the outside O (that is considered evacuated) it will still
search for terminal points and
is not inactivated until it has reached one such point. The
motivation for using terminal
points is that otherwise evacuated agents would block the door
that led them outside,
which the authors do not consider realistic.
-
Chapter 3. The Model CEPABS 28
3.5.5 Target zones
Since it is close to impossible within numerical float position
to make an agent reach its
target point, each target point is assigned an associated target
zone.
Definition 3.16. A target zone is a rectangle with width wzone
and height hzone that
is associated with a target point. If the target point is a door
target, the target zone it
is shifted a non-zero distance dzone in the direction of the
door target point. Otherwise
it is centred about the target point.
wzone and hzone are both taken to be 2 meters in CEPABS and have
been subject to
tweaking. dzone is taken to be 2 meters for door targets,
placing the zone just in front of
the door. For auxiliary points dzone is taken to be 3 meters,
placing one zone boundary
1 meter from its associated door. When an agent is within a
target zone, it is considered
to have reached the target point associated with that zone.
3.5.6 Exit signs
Exit signs is an active evacuation measure that could aid agents
in finding an efficient
(short distance) route out of a building. Exit signs are
modelled to be situated right
above doorways and illuminated such that they are assumed to be
always visible if
within the sight range of an agent. Exit signs can have three
colours: Green, Red or
Plain. Door target points with Green signs are considered by
agents to be a preferable
before Plain or Red signs and Plain signs are considered
preferable before Red signs.
The influence of Exit signs on exit choice is further explained
in section 3.6. Adding the
sign property to the door target point concept urges the
extension of the definition of a
door target point.
Definition 3.17. An extended door target is a door target which
in addition to its
elements point and direction has en element colour, where colour
∈ {Green, P lain,Red}.
Since an extended door target with colour ”Plain” is equivalent
in the Point Search
Algorithm (described in section 3.6) to a door target, the more
general concept extended
door target will be used in the remainder of this thesis. For
ease of communication the
two concepts will be used synonymously.
-
Chapter 3. The Model CEPABS 29
3.6 Point Search Algorithm
The ability of agents to spot target points is an integral part
of the Exit Search Al-
gorithm. In this section a point search algorithm (referred to
as the Point Search
Algorithm) for determining whether a target is visible to an
agent or not is described.
The algorithm draws inspiration from the one described in [4].
Before continuing, a few
things needed to describe the Point Search Algorithm are
reiterated.
From the introduction of this chapter an agent has a position r,
a target point ptarget
and a sight range rsight. From the conclusions of definition 3.8
an agent is by necessity
situated in one room with room index i, and the set of all
visual obstacles in a room
with room index i is called Wi.
The set of all potential targets in room i is now
introduced.
Definition 3.18. The set of potential targets in room i is
PD,i∪PV,i∪PF if the agent’s
position r ∈ O. Otherwise it is PD,i ∪ PV,i.
The set of potential targets is denoted Ppot. Ppot is in other
words the set of targets that
an agent will look for during evacuation.
Before continuing, mutual visibility of two points is defined.
It is restated that visual
obstacles are composed of straight line segments, each which can
be described as a subset
of a line.
Definition 3.19. Two points p1, p2 ∈ R2 are defined to be
mutually visible in the
presence of a set of visual obstacles Wvisual if the straight
line segment L defined by p1
and p2 does not intersect any of the line segments in Wvisual
that are non-parallel with
L and the length of L is less than a positive scalar
Rmax,vis.
Rmax,vis is a scalar representing a sight range.
A motivation for excluding all line segments inWvisual that are
parallel to L is that such
a line segment does not obstruct line of sight, in accordance
with the ”visibility” concept
in real life. Furthermore, excluding parallel lines enables the
use of linear algebra to find
any intersection points between L and a line in Wvisual.
Definition 3.19 has a special interpretation when one of the
points is an agent’s current
position, the other point a target point in Ppot, Wvisual is Wi
and Rmax,vis is Rsight of
-
Chapter 3. The Model CEPABS 30
the agent. Then the definition tells us whether a target point
is visible to an agent or
not.
Below, an algorithm for finding the visibility of a target for
an agent is described. It
can make use of a sparse matrix and is thus beneficial when
efficiency is desired. The
algorithm is used in CEPABS.
1. Consider only the set Wi,non−parallel ∈ Wi of obstacles in Wi
that are not parallel
to the line L between r and rtarget.
2. Pose one linear system of equations for each line overlapping
a line segment of
Wi,non−parallel and L.
3. Solve each system of equations to get the set of intersection
points Pintersect.
4. Discard all points in Pintersect that do not lie on the line
segment corresponding
to the considered line (those points do not obstruct line of
sight).
5. Consider the rectangle Arect with diagonal points r and
rtarget and for each point
pi ∈ Pintersect consider the distance di between r and pi.
6. If no point pi satisfies (di < rsight) ∧ (pi ∈ Arect),
then that target is visible
according to definition 3.19 (no proof given).
3.7 Mental map
It was shown in the previous section that each agent has a set
of visible target points
Pvisible for every position. This does however make an agent
unable to consider a target
point as soon as it falls out of line of sight. In order to
better reflect the way a human
being remembers targets, the sets of visited and known targets
are introduced.
Definition 3.20. Every agent has a set of known target points,
which consists of all
target points that have at at least one time step since the
start of the simulation been
part of the set of visible points Pvisible of the agent.
The set of known target points is denoted Pknown. Some subsets
of Pknown are Pknown,i,
which is the set of known target points in a room with room
index i, the set of known
-
Chapter 3. The Model CEPABS 31
door taregt points Pknown,D, the set of known viewpoint target
points Pknown,V and the
set of known terminal points Pknown,F .
Similarly, an agent keeps track of all target points that has
been visited at least once.
Definition 3.21. Every agent has a set of visited target points,
which consists of all
target points that have at at least one time step since the
start of the simulation had
the agent’s r in its target zone.
The set of visited target points is denoted Pvisited. Pvisited
has subsets that are defined
analogue to those of Pknown.
Definition 3.22. Every agent has a set of invalidated target
points, which consists of
all target points that are not considered to be candidate target
points by an agent.
The set of invalidated target points is denoted Pinvalid.
Reasons for invalidating a point
could be that there is a perceived imminent danger at the door
or that the agent has
grown impatient of pursuing that door (see section 3.8).
Pinvalid has subsets that are
defined similarly to those of Pknown and Pvisited.
The mental map of an agent denoted S is now defined as S =
{Pknown,Pvisited,Pinvalid},
and intuitively contains information about all doors that an
agent has been made aware
of up until a certain time. It should be noted that [12] uses a
similar concept called
cognitive map, but that a different name has been used as to not
cause confusion between
the concepts.
The cognition and remembrance of target points plays a key role
in the Exit Choice
Algorithm described in section 3.13.4.
3.8 Patience
Another aspect of the human mind that has been modelled in
CEPABS is that of pa-
tience, drawing inspiration from [6]. Patience is the concept of
an agent wanting to
change its rtarget if all of two criteria (and possibly a third
optional criterion) are ful-
filled:
-
Chapter 3. The Model CEPABS 32
1. There should be at least one available target point that is
not the current target
point.
2. The patience factor ppatience exceeds a threshold value
ppatience,min.
3. (Optional) The current time step should be an update
time.
An available target point (in criterion 1) is a target point
that is currently in Ppot,i ∩
P∗invalid. This criterion functions such that if there is only
one available door, the agent
will still pursue that door and not get impatient with it.
ppatience and ppatience,min in
criterion 2 are described below. The third optional criterion
primarily gives computa-
tional benefits of a lower update frequency, but could also
allow for an agent to build
up speed after having become impatient as to not be impatient
directly afterwards.
When an agent has become impatient, it adds its current target
point to the set of
invalidated targets Pinvalid,i and sets out to find a new
target. Once the agent has
reached a target point in the current room, all doors in the set
of invalidated points
Pinvalid,i that have been invalidated due to impatience are
removed from that set.
Definition 3.23. The patience factor ppatience of an agent is
defined as
ppatience = 1− 〈v〉v0
(3.14)
where 〈v〉 is the mean value of the agent’s speed over the
npatience last time steps and
v0 is the desired speed of the agent. The lower the averaged
speed over npatience time
steps in relation to the desired speed, the higher is ppatience.
In other words, the patience
factor is larger the lower the speed of an agent in relation to
desired speed. npatience is
in CEPABS set to four time steps, with time step 0.025. If
npatience is set too small,
temporary peaks or dips of the speed could have large influence
on 〈v〉, while a too large
npatience could result in an agent that is unresponsive to low
speeds, which counteracts
the purpose of the patience factor.
The minimum patience factor ppatience,min required in order to
fulfil the first criterion of
impatience is in CEPABS set to 0.85, producing reasonable
results.
-
Chapter 3. The Model CEPABS 33
3.9 The leader concept
One active intervention measure is the concept of a
leader-follower mechanism. In this
mechanism there are some agents that are followers and some
agents that are leaders.
As described in section 2.1.3 some authors divide agents into
distinct classes of leaders
and followers while others let agents have degrees of leader or
follower mentality. In
CEPABS, the scheme of [12] and [7] is adopted, having a distinct
class of leaders and
one class of followers.
Definition 3.24. A leader is an agent that does not consider
patience, does not follow
other agents, for which Pknown = PD and the only exit strategy
is the exit search strategy
for leaders (see section 3.12).
That an agent knows know the complete floor plan allows it to
pick an optimal route
through doors for finding its way out of a building. The
leader-follower mechanism and
exit search strategies are described in the sections 3.12 and
3.13.
3.10 Pathfinding Algorithm
A pathfinding algorithm is an algorithm used by an agent for
finding a path to a sought
target along a set of allowed waypoints. This kind of algorithm
can be used by leaders
in order to find the shortest way out of a building, or for an
agent to find a path to a
target point that it remembers. Here, an algorithm is presented
in which the allowed
waypoints are door target points PD. The problem of finding the
shortest path to a
target point through a set of waypoints lends itself well to be
described using a graph.
Definition 3.25. A door target graph GD is an undirected graph
in which all door
target points in the set PD are nodes, and in which weighted
edges exist between nodes
(door target points) that are mutually visible (according to
definition 3.19), excluding
all obstacles that are not walls from the set of fundamental
visible targets. The weight
of an edge is the Euclidean distance between the two nodes for
which the edge is defined,
except if the coordinate of two nodes is the same, in which case
the edge between them
is given a weight that is negligible compared to all edges that
connect nodes that do not
share coordinate.
-
Chapter 3. The Model CEPABS 34
For a building B and outside O, there is only one GD. Edges
between nodes (door
target points) represent routes between door target points that
may be considered by
agents. The distance weights of the edges represent the penalty
of moving along that
edge. The reason for adding a negligible weight to nodes that
share coordinate is that
an undirected zero-cost edge could be traversed an arbitrary
number of times without
affecting the cost of a route that contains that edge. What is a
negligible distance in a
building will have to be decided by the one who runs the
simulation. Visual obstacles
that are not walls are not considered, because it is viable that
such obstacles should be
easily passable. What constitutes an impassable object is not
well defined in this thesis
and until a strict definition has been made it is up to the one
who runs a simulation to
decide that. In order to assure that every node can be reached
from every other node in
GD, GD needs to be connected. This is not ensured in the current
definition of GD and
is discussed in chapter 5.
There exists many algorithms for finding the shortest path from
one point to another
point in an undirected weighted graph. The algorithm used in
this thesis is Dijkstra’s
Algorithm, provided by MATLAB’s TMbuilt-in function
graphshortestpath.
3.11 Pathfollowing Algorithm
The pathfollowing algorithm presented here is the algorithm used
by an agent following
a path found using the Pathfinding Algorithm described in
section 3.10. The algorithm
is as follows:
Given a path defined as a sequence of nodes:
1. Set the target point rtarget of the agent to be the first
node in the path (which is
a door target point).
2. If the zone of the current target point rtarget is reached,
if rtarget is a door target
point go to 2a, else if rtarget is an auxiliary target point go
to 2b, else if rtarget is
a terminal target point go to 2c.
(a) rtarget to be the auxiliary point associated with the just
reached target point.
-
Chapter 3. The Model CEPABS 35
(b) Set rtarget to be the next node in the path.
(c) Terminate the Pathfinding Algorithm.
3. Repeat 2.
3.12 Exit search strategy for leaders
Leaders, knowing the complete floor plan of a building are
modelled as being able to
find the shortest way out of it. The algorithm for doing this is
the following:
1. Find the door target point with the closest distance to the
leader’s r and pick that
door target point as the starting point in the Pathfinding
Algorithm described in
section 3.10.
2. Find the terminal target point with the closest distance to
the leader’s r and pick
that door target point as the final point in the Pathfinding
Algorithm.
3. Get the nodes that define the shortest path from the starting
point to the final
point and if two nodes share coordinate, discard the point that
appears first in the
path.
4. Follow the pathfollowing algorithm (defined in 3.11) until
the final target is reached
and the leader is evacuated.
Leaders do not consider other strategies for evacuation in the
current model.
3.13 Exit search strategy for non-leaders
The exit search algorithm for non-leader agents (agents that are
not leaders according to
definition 3.24) is comprised of three strategies: Leader
Following, Single Target Pursuit
and (non-leader) Pathfollowing. In addition, patience may
interfere with the strategies
Single Target Pursuit and Pathfollowing. First the three
strategies are described, fol-
lowed by the Exit Search Algorithm which determines when the
respective strategies are
triggered. Since the algorithm for prioritizing target points is
central, it is dedicated a
subsection of its own.
-
Chapter 3. The Model CEPABS 36
3.13.1 Prioritising of target points
When an agent sets out to find a new target point in the Single
Target Pursuit strategy,
it makes use of the Point Search Algorithm described in 3.6 to
find target points to
include in its Pvisible. From that set the agent needs to choose
one target point to be
its rtarget. In doing so the agent needs to prioritise between
points in the sets PD,visible,iand PV,visible,i and take into
account whether a target point has been visited or not,
the distance to the target point, the colour of if the target
point is a door target point
door and whether the target point has been invalidated. In the
current model only door
target points can be invalidated. The priorities for targets are
given as a list, where
invalidated and visited target points can not be chosen at
all:
1. Terminal target points
2. Green door target points
3. Plain door target points
4. Viewpoint target points
5. Red door target points
If there are no target points in Pvisible,i ∩P∗visited,i
∩P∗invalid, then the agent shall pursue
the strategy Pathfollowing (after first having acquired a path
with the Pathfinding Al-
gorithm). The motivation for excluding invalidated target points
is that the invalidation
of a target implies that it should be avoided at all costs. The
motivation for excluding
visited targets is that agents should prefer to explore new
targets rather than targets
they have already visited.
The priority list for targets is based solely on heuristics and
trial during simulations. It
should be critically assessed and investigated in extensions to
the model CEPABS.
3.13.2 Leader Following
Non-leaders can follow a leader (see definition 3.24) given that
two criteria are fulfilled:
1. The agent and leader are in rooms with the same room
index.
-
Chapter 3. The Model CEPABS 37
2. The distance between the leader and agents positions is less
than Rfollow,max.
Rfollow,max is a maximum distance for which the agent is under
sufficient influence from
the leader to follow it. In CEPABS, Rfollow,max is set to 10
meters. This value is chosen
from trial simulations but should be critically assessed in an
extension to CEPABS.
The following definition defines what it means to follow an
agent:
Definition 3.26. An agent that is following a leader sets its
rtarget to the leader’s
position rleader at every time step.
The leader following in definition 3.26 produces duckling-like
behaviour, meaning that
an agent strives to acquire the leader’s position at every time
step without trying to
predict a leader’s movement.
3.13.3 Single Target Pursuit
Single Target Pursuit is a strategy for finding the way out of a
building. The strategy
consists of that an agent pursues one target, and