BB_Evac: Fast Location-Sensitive Behavior-Based Building Evacuation
Past work on evacuation planning assumes that evacuees will follow instructions — however, there is ample evidence that this is not the case. While some people will follow instructions, others will follow their own desires. In this paper, we present a formal definition of a behavior-based evacuation problem (BBEP) in which a human behavior model is taken into account when planning an evacuation. We show that a specific form of constraints can be used to express such behaviors. We show that BBEPs can be solved exactly via an integer program called BB_IP, and inexactly by a much faster algorithm that we call BB_Evac. We conducted a detailed experimental evaluation of both algorithms applied to buildings (though in principle the algorithms can be applied to any graphs) and show that the latter is an order of magnitude faster than BB_IP while producing results that are almost as good on one real-world building graph and as well as on several synthetically generated graphs.
There have been many buildings that needed to be evacuated quickly. Prime examples, include the World Trade Center and Pentagon in 2001. Other buildings that needed evacuation during terror attacks include the Westfield Mall in Kenya, and the Taj and Oberoi Hotels in Mumbai. In November 2015, at least two major airports (London and Miami) had to be partly evacuated. These situations have led to the development of work on building evacuation models in both the operations research Hoppe and Tardos (1994, 2000); Hamacher et al. (2013) and AI communities Hentenryck (2013); Song et al. (2015); Even et al. (2015). Yet, all of these works have been based on the assumption that in an emergency, people will do what they are told. However, if you are in a building at location and a fire or terrorist attack or earthquake occurs and you are told to move along a given route to an exit that you know is further away than the nearest exit , would you do so? Often, the answer is no. Past works on building evacuations assume people will do what they are told and that they will not select mechanisms that are individually optimal, but globally sub-optimal.
There is a long history of work in fire-fighting and emergency response communities on understanding human behavior in such emergencies. Løvas (1998) presents an excellent overview of this line of inquiry, describing cognitive issues that lead to some routes being preferred by individuals. For instance, Løvas (1998) points out that routes with lots of turns are perceived by people to be longer as are routes involving many intersections Herman et al. (1986). Several studies Herman et al. (1986) have observed that familiar paths are perceived to be shorter than unfamiliar paths. All of this suggests that different individuals make decisions that strive to find “shortest” paths according to different definitions of “shortest”, not necessarily in terms of actual physical distance.
We consider the problem of evacuation planning using mobile phones to locate individuals within a building, taking such behavior models into account. For this, parts of the team of the first two authors have outfitted one floor of a building in Kolkata, India, with two types of devices Ahmed et al. (2015) as part of a system called SmartEvacTrak. The “MagnetoFence” component uses electromagnets deployed on this one floor that detect entry and exit of smartphones from regions covered by the electromagnets. Assuming people’s mobile phones are by and large in close proximity to the person, this means that the individuals can be accurately tracked within the building. Second, the “ZoneWi” component of the system uses Received Signal Strength Indicator (RSSI for short) technology to identify signal strength. This method can also be used to detect people who use older (not so smart) phones. There is plenty of research (e.g. Blueeye Ghose et al. (2013), LandMarc Ni et al. (2004), Pinpoint Youssef et al. (2006) and Horus Youssef and Agrawala (2008)) that uses these and other similar indicators to accurately pinpoint locations of phones in buildings. This paper therefore makes two assumptions. First, we assume that such a tracking system exists within the buildings we seek to evacuate. Second, we assume that the location of a person’s mobile phone is a proxy for his/her location. Because RSSI technology is very cheap, we believe that it is feasible to deploy this — in particular, SmartEvacTrak Ahmed et al. (2015) explicitly avoided using RFID methods in order to provide a very cheap solution that costs about $ 10 per door to deploy. For instance, a shopping mall with 500 stores, each with 4 doors on average (including doors to the mall) would only cost around $ 20,000 to equip using this technology.
In this paper, we start from the assumption that (using methods such as those listed above) we know the location of individuals when an emergency occurs. Almost all past work on evacuation planning in operations research Hoppe and Tardos (2000); Hamacher et al. (2013); Løvas (1998); Yin (2009); Dressler et al. (2010) and artificial intelligence Song et al. (2015); Even et al. (2014); Pillac et al. (2016); Wei et al. (2013); Lu et al. (2005); Kim et al. (2008) assumes that an evacuation plan that is generated will be followed by the evacuees. However, even as far back as 1978, we know that this is not the case Bryan (1978).
We make a different assumption, namely that all evacuees will act in accordance with a behavior model.
We show that we can express many (but not necessarily all) evacuation behavior models via a set of constraints and specifically show to express two behavior models: one called the “nearest exit” behavior model (NEBM for short) where evacuees try to go to the exit closest to them, and another called the “delayed” behavior model (DBM for short) where evacuees respond to an evacuation alert with a delay.
We develop the BB_IP algorithm which uses classical integer programming to compute optimal evacuation plans in the context of a behavior model. However, BB_IP takes a lot of time to solve when an emergency occurs, taking the current location of people in a building into account. We therefore also develop a heuristic algorithm, BB_Evac, which is much faster in finding an evacuation plan, but which may evacuate fewer people than an optimal evacuation plan found by BB_IP (though this latter process may take inordinately long — in many cases, people would be dead before the optimal evacuation plan is returned by BB_IP).
We ran detailed experiments with BB_IP and BB_Evac, varying several parameters such as the size of the building graph (number of nodes and edges), the deadline by which the evacuation should be achieved, the number of people in the building, and more. Our experiments show that: (i) In many cases, BB_IP cannot compute an evacuation schedule even after two hours of running, (ii) In those cases where BB_IP actually finishes computation, BB_Evac can often run in 10-20% of the time required by BB_IP, and (iii) BB_Evac computes evacuation schedules that can evacuate around 80-90% of the people evacuated by BB_IP. As BB_IP may take very long to compute a final evacuation schedule, this means that we may end up waiting an inordinate amount of time for BB_IP to find a slightly better plan than BB_Evac.
2 Related Work
One of the earliest papers on the evacuation problem was by Hoppe and Tardos Hoppe and Tardos (1994). Their linear programming based polynomial time algorithm uses the ellipsoid method and runs in time, where is the number of nodes in the graph and is the evacuation time for the given network. It uses time-expanded graphs for the network, where there are copies of each node. The expression for time-complexity shows that it is not scalable even for small networks (e.g. a small network with just 10 nodes and a very small deadline of 10 time points would be time units which is infeasible using their algorithm).
Lu et al. Lu et al. (2005) proposed the Capacity Constrained Route Planner (CCRP). CCRP uses Dijkstra’s generalized shortest path algorithm to find shortest paths from any source to any sink, provided that there is enough capacity available on all nodes and edges of the path. An important feature of CCRP is that instead of a single value which does not vary with time, edge capacities and node capacities are modeled as time series. Yin et al. Yin (2009) introduced the CCRP++ algorithm. The main advantage of CCRP++ is that it runs faster than CCRP. But the quality of solution is not as good, because availability along a path may change between the times when paths are reserved and when they are actually used.
Min and Neupane Min and Neupane (2011) introduced the concept of combined evacuation time () and quickest paths, which considers both transit time and capacity on each path and provides a fair balance between them. Gupta and Sarda Gupta and Sarda (2014) have given an algorithm called CCRP*, where the evacuation plan is same as that of CCRP, but it runs faster in practice. Instead of running Dijkstra’s algorithm from scratch in each iteration, they resume it from the previous iteration.
Kim et al. Kim et al. (2008) studied the contraflow network configuration problem to minimize the evacuation time. In the contraflow problem, the goal is to find a reconfigured network identifying the ideal direction for each edge to minimize the evacuation time, by reallocating the available capacity. They proved that this problem is NP-complete. They designed a greedy heuristic to produce high-quality solutions with significant performance. They also developed a bottleneck relief heuristic to deal with large numbers of evacuees. They evaluated the proposed approaches both analytically and experimentally using real-world data sets. Min and Lee Min and Lee (2013) build on this idea to design a maximum throughput flow-based contraflow evacuation routing algorithm.
NICTA Evacuation Planer Even et al. (2014) integrates an approach to produce evacuation plans that simultaneously schedules the evacuation and selects contraflow roads. The evacuation planning problem with contraflow is decomposed in a master problem and a path generation subproblem, where the subproblem generates diverse evacuation paths while the master problem assigns paths to evacuated areas and schedules the evacuation. As one of the first systems dealing with the evacuation problem, we recall HICAP Muñoz-Avila et al. (1999), a case-based tool for assisting the militarises with formulating evacuation plans. It combined a doctrine-guided task decomposition process with a case-based reasoning approach to support interactive plan formulation.
Even et al. Even et al. (2015) introduced the concept of convergent evacuation plans to produce evacuations avoiding forks that, as demonstrated by evidence collected during evacuations, lead to congestion as drivers hesitate when approaching them. Convergent evacuation plans assign an evacuation route to each residential zone and ensure that all evacuation routes converge to safe zones. To efficiently find convergent evacuation plans maximizing the number of people evacuated, a two-stage approach is proposed separating the design of the convergent evacuation routes from the scheduling of evacuees along these routes.
Min Min (2012) proposed the idea of synchronized flow based evacuation route planning. Synchronized flows replace the use of time-expanded graphs and provide higher scalability in terms of the evacuation time or the number of people evacuated. The computation time only depends on the number of source nodes and the size of the graph.
Dressler et al. Dressler et al. (2010) uses a network flow based approach to solve this problem. They use two algorithms: one is based on minimum cost transshipment and the other is based on earliest arrival transshipment. To evaluate these two approaches, they used a simulation that computes the movements of evacuees when they get a certain exit assignment as input. The minimum cost approach does not consider the distances between evacuees and exits. It may fail if there are exits that are very far away. Problems also arise if a lot of exits share the same bottleneck edges. The earliest arrival approach uses an optimal flow over time and thus does not suffer from these problems. However, the exit assignment computed by the earliest arrival approach may not be optimal.
There is some prior research which considered the behavior of people in an emergency. Løvas Løvas (1998) proposed different models of finding escape routes in an emergency. They assume that people often select their paths randomly, due to lack of information. They consider different way-finding models such as always turn left, random choice, directional choice, shortest local path, frequently used path. They also discuss choice in groups. Song et al. Song et al. (2015) collect big and heterogeneous data to capture and analyze human emergency mobility following different disasters in Japan. They try to discover knowledge from big disaster data and understand what basic laws govern human mobility following disasters. However, they do not build evacuation plans. Instead, they develop a general model of human emergency mobility using a Hidden Markov Model (HMM) for generating or simulating large amount of human emergency movements following disasters.
Other notable works include Shahabi and Wilson (2014), Min et al. (2014), Mingxia (2012), Desmet and Gelenbe (2014), Hausknecht et al. (2011), Pillac et al. (2016, 2014), Wei et al. (2013). All of these papers implicitly assume people will follow evacuation instructions. We remove this assumption.
Table 1 presents a succinct summary of past work with our BB_Evac framework.
3 Behavior-Based Evacuation Framework
This section proposes the basic theory underlying our evacuation framework. We use to denote the set of people in a building that must be evacuated, is the set of all time points. We assume evacuation planning starts at time and ends by . We now introduce building graphs.
Definition 1 (Building Graph)
A building graph is a tuple , where is the set of vertices, is the set of edges, are the capacity function and the travel time function, respectively, and is the set of exits.
and represent the capacity of vertex and edge , respectively.
is the time required to travel from one end of edge to the other,
even if the edge is at full capacity.
We assume that:
i) for all vertices , i.e. the time needed to traverse a vertex is negligible. If this is not the case, a location previously modeled with a vertex can instead be modeled by means of a new edge whose endpoints are appropriately connected with the vertices adjacent to and such that its capacity is greater than zero.
ii) for all the vertices , i.e. an exit has a capacity sufficient to contain all people. If a person reaches an exit, he is safe.
Figure 1 shows a sample building graph. Vertex labels show vertex name and capacity. The capacity and travel time for edge is shown by the pair next to . Persons are located on the vertices respectively. The exits and are situated on and respectively.
A state is a mapping telling us where each person is at some fixed time point. At a given time, a person can be at a vertex or on an edge connecting two vertices. While this paper does not develop a method to assess where a person is at a given time, we recall from the Introduction that there are many existing techniques to precisely pinpoint the location of a person’s cell phone within a building Ghose et al. (2013); Ni et al. (2004); Youssef and Agrawala (2008). Therefore, we can identify locations of people in buildings in real-time (assuming they are with their cell phones) with reasonable accuracy using these previously developed methods.
Figure 1 shows a state at time . This state tells us that people are located at vertices respectively. For instance, and . Suppose starts moving from at toward . For the edge , travel time . At he will be on (i.e., at ). At he may reach the vertex or still stay on edge .
3.1 Evacuation Schedules
An evacuation schedule is a sequence of states capturing positions of the people for each . We define two types of evacuation schedules: weak and strong. A strong evacuation schedule is one that can actually be executed — a weak evacuation schedule, on the other hand, may not be executable. The reason is that weak execution schedules do not satisfy capacity constraints that specify how many people may be present (at a given time) at either a node or an edge. Even though we wish to generate strong evacuation schedules that satisfy all such constraints, the behavior of evacuees may lead to infeasible schedules (e.g. if the evacuees’ behavior causes all of them to end up at the same place at the same time, leading to over-crowding). This is the reason why weak evacuation schedules, defined below, are needed.
Definition 2 (Weak evacuation schedule (WES))
Let be the set of all possible states. A weak evacuation schedule (WES) is a mapping such that:
, if and and , then either:
such that , or
such that .
This constraint says that if a person is in a vertex at time , then at time (s)he either stays in or moves to an edge incident on or an adjacent vertex .
, if and and , then either of the following is true: (a) , (b) , (c) . That is, if a person is on an edge at time , then at time (s)he either stays in or moves to one of the vertices incident on .
, , if and then and only if . That is, if a person is in at time , then (s)he can reach an adjacent vertex only if travel time elapses.
, , if and and , then . That is, if a person reaches an exit at some time point, then (s)he cannot go back to other places leaving the exit.
As a WES may violate capacity constraints and not get all people to an exit by , WESs always exist.
Table 2 shows a WES for the building graph of Figure 1. Each column (except the leftmost) is a state. Rows report the evacuation schedule for person . Note that between and , and are crossing the edge whose capacity is , thus violating a capacity constraint. Although it is not required by WESs, all evacuees reach an exit (at time point ) w.r.t. .
WES in Table 3 differs from . (i) as well as and move with a delay of one time point, while immediately reach exit . (ii) does not reach any exit but stops on after passing through . (iii) The capacity constraint of edge is not violated as only and are crossing this edge at the same time.
A schedule is strong if it satisfies the capacity constraints and everyone reaches an exit by time .
Definition 3 (Strong evacuation schedule (SES))
A WES is said to be a strong evacuation schedule (SES) iff it satisfies the following additional constraints:
, , if then . This constraints says that the number of people in a vertex cannot exceed its capacity at any time.
, , if then , i.e. the number of people in an edge cannot exceed its capacity.
, such that , i.e. every person must reach an exit by time .
We use (resp. ) to denote the set of all SESs (resp. WESs).
denotes the set of all probability density functions (pdfs for short)
Definition 4 (Behavior model)
A behavior model is a function that associates a pdf over the set of all WESs with each SES.
tells us the probability that if the system tells users
to follow SES , they will instead end up following
the WESs in with corresponding probabilities. For instance, if our BB_Evac system creates a flow sending people to certain nodes/edges in the graph at certain times, we would like this to be an SES.
However, when evacuees are presented with this SES (e.g. via an app that sends messages to their mobile phone), the evacuees might behave differently. This is why a behavior model associates a pdf over the set of all WESs for each given SES. When a given SES is presented to evacuees, they may act in accordance with a pdf that assigns one value to another value to , and so forth.
When a different SES is presented to evacuees,
they may act in accordance with a different pdf that assigns one value (possibly different) to another value (also possibly different) to ,
and so forth.
Because evacuees may act out of self-interest and without considering the overall evacuation plan (that involves other evacuees), their behavior leads to a de-facto weak evacuation schedule in general, though in special (lucky) cases, it could be a strong evacuation schedule. Thus, a behavior model tells us what the expected behavior of the evacuee population would be if they were told to follow a given strong evacuation schedule.
Later in this paper, we will show how our formal definition of a behavior model allows us to express specific behavior models. In addition to the classical behavior model in which all evacuees follow the instructions given to them by the system, our framework supports other behavior models as well. We show that the “Nearest Exist Behavior Model” (NEBM) where evacuees try to head to the nearest exit as well as the “Delayed Behavior Model” in which evacuees follow the suggested evacuation route — but with a delay — can be expressed within our framework.
Definition 5 (Evacuation framework)
An evacuation framework is a triple , where is a building graph, is the state at time , and is a behavior model.
3.2 Behavior-Based Evacuation Problem
Before formalizing the evacuation problem addressed in this paper, we introduce some preliminary definitions.
Definition 6 (Number of people evacuated)
Given a strong (or weak) evacuation schedule and deadline , the number of people evacuated by is given by
Thus, given an evacuation schedule, this merely captures the number of people who get to an exit within the specified time period. For this, we merely need to check if the person is at an exit at time because the last condition in our definition of a SES does not allow people to move away from an exit, once they have reached one.
Given an SES , a deadline , and a behavior model , the expected number of people evacuated by is as follows:
We now formally define an evacuation problem.
Definition 7 (Evacuation Problem (Ep))
Given an evacuation framework and a deadline , find a strong evacuation schedule (SES) that maximizes the expected number of people evacuated successfully at or before time , i.e., find such that is maximized.
For the evacuation framework of our running example, assuming , our goal is to find an SES that maximizes the expected number of people evacuated successfully on or before time . Clearly, for the very simple case that is a singleton the unique SES in is the optimum one. However, in general, several SESs can be defined for a building graph, each of them associated with a pdf over the set of WESs, and resulting in different expected numbers of people evacuated successfully.
We believe that it is important that a solution to the Evacuation Problem be a strong evacuation schedule. Simply put, the system should not tell people to do something that is infeasible. We want to find an SES that maximizes the expected number of people saved before a deadline, even if the behaviors of those people leads to some weak evacuation schedules occurring because of the evacuees’ behavior.
4 Complexity of the Evacuation Problem
To characterize the complexity of the optimization problem EP, we first introduce its decision version DEP and show that it is intractable in Theorem 1. The intractability of EP follows from this.
Definition 8 (Decision version of Ep (Dep))
Given an evacuation framework , a deadline , and number of persons , DEP is the problem of deciding whether there is an SES such that .
The following theorem states that DEP is hard.
DEP is NP-hard.
Proof. We show a reduction to our problem from the Simple Undirected 2-Commodity Integral Flow (SU2CIF) problem, which was shown to be NP-hard in Even et al. (1976). Given an undirected graph , a pair of vertices called the sources, a pair of vertices called the terminals, and requirements , the SU2CIF problem is deciding whether there exists two flow functions (i.e., denoting an undirected edge between and as , represents a flow from to and represents a flow in the opposite direction) such that: 1) , i.e., the total flow in both directions is bounded by , which is the capacity of each edge (from this the word Simple in the problem’s name); 2) for each commodity and vertex , flow is conserved at ; and 3) for each commodity , the net flow into under flow is at least .
Given an instance
of SU2CIF problem,
we construct an instance
of DEP as follows.
Let the set of persons consist of two disjoint groups and
whose cardinalities are the requirements and , that is,
where and .
Let be a graph having the same vertices and edges as ,
and such that the set of exits consists of the terminals .
Let the capacity and travel time functions be such that for each
and for each .
We define deadline , , and .
Let the initial state be such that at time the persons belonging to group are located at vertex , that is for and for .
Let be a behavior model according to which, given a SES , each person follows iff is advised to reach by time and no other person uses an edge used by during the evacuation, otherwise moves according to a -time points delayed version of . More formally, for an evacuation schedule , let for , and for . Then, for every SES , it is the case that is a pdf over (with ) if for and , it is not the case that and ; otherwise is a pdf over (with ).
We now show that an instance of SU2CIF problem is true iff the corresponding instance of DEP is true.
() Let and be two feasible flow functions. For each flow , let be the set of paths over representing flow , that is, belongs to iff for each pair of consecutive vertices , either or . Observe that, no pair of paths in share an edge of (as each edge has capacity equal to one) and the number of paths in is equal to , that is, there is one path in for each unit of commodity . Given a path , we denote with the -th vertex in , and with length its length. Thus, and length if . W.l.o.g. we assume that no path contains a cycle (if contains a cycle it can be replaced by its cycle-free version without affecting the feasibility of flow ). Thus, length.
We define a SES according to which the -th person belonging to group follows the route in entailed by the path of the -th unit of commodity . Formally, for each commodity , for each length, with , where and are, respectively, the -th person belonging to group and the path in of the -th unit of commodity . Moreover, for each time point length, length. Note that, no distinct persons use the same edge of during the evacuation schedule since no distinct paths in share an edge of . In addition, since for each commodity , the net flow into under flow is at least , then at time point it is the case that for all the persons . Thus, the number of people evacuated at time point is . Finally, by the way is defined, the behavior model is such that is a pdf over the single non-zero probability evacuation schedule , and thus it follows that .
() Let be a SES such that . Due to the behavior model , the only way to have is that is a pdf over the single non-zero probability evacuation schedule such that, for each (with ), and no other person uses an edge used by during the evacuation. Thus, . Starting from we define flows and as follows. For each commodity and edge , flow (resp., ) if there is such that and (resp. and ) with for some time point , otherwise . It is easy to see that satisfies both the capacity of each edge as well as the conservation of flow at each vertex. Moreover, as for each , it is the case that , meaning that requirement is satisfied as well.
Clearly, DEP can be reduced to EP, meaning that EP is also intractable.
EP is NP-hard.
We note that EP is still intractable even in the special case that all the edge’s capacities and travel times are equal to one and the behavior model is a simple mapping between SESs. In fact, this follows immediately from the proof of Theorem 1.
Given an evacuation framework , EP is NP-hard even if (i) for each edge of ; (ii) at the initial state , the people in are located in at most two vertices of ; (iii) is such that is a pdf over a singleton where .
5 Integer Linear Programs for WES and SES
Table 5 shows two sets of constraints. We use to denote the set of constraints (1)-(8), and to denote the set of constraints (9)-(11). The solutions of and , respectively, capture the set of all WESs and SESs of a building graph .
Variables in Table 5
We now explain the variables and constraints used in and . We start with a simplification of the building graph . We can think of edges with travel time as three edges by introducing virtual nodes and (cf. Fig. 2). is a new vertex (on edge ) that can be reached in one time unit from . Likewise, is the location on edge that can reach in one time unit. Thus, , and (if then meaning that the transition between the two virtual vertices can be instantaneous).
We have a variable for each , telling us the number of people at at time ; similarly, we have variables and for each and telling us the number of people at virtual nodes and , associated with (cf. Fig. 2), at each time .
Likewise, denotes the net
6number of people that leave at time and reach at time [when ].
But when , we have 3 variables.
denotes the net number of people who have left along edge at time and are “on” the edge (see Fig. 2) at time .
denotes the net number of people who have left at time and reach at time .
is the net number of people who have left at time and are on their way toward that will be reached at time .
We now explain the constraints of Table 5. We start with the set .
Constraints of Table 5 for WESs
We now briefly explain each of the constraints associated with WESs (i.e. Constraints (1)-(8)).
Constraint (2) says that, for each edge , the number of people at at time equals the number at at time minus the number (i.e. ) who left for at time plus the number who arrived () from .
Constraint (1) looks more complicated but can be interpreted in a similar manner. It says that the number of persons at a vertex at time equals the number of people at at time minus the number of people that moved from at time to an adjacent vertex or an edge plus the number of people that came from an adjacent vertex or an edge to at time .
Constraint (3) applies to virtual vertex and can be read analogously by noting that moving from to takes time. Thus it says that the number of people at at time equals the number of people at at time minus the number of people that moved from to at time plus the number of people that moved from to at time .
Constraint (4) says that no person can move from to , if the travel time of the edge is greater than 1.
Similarly, Constraint (5) says that no person can move from to if the travel time of the edge is 1.
Constraint (6) says that the number of people that reaches an exit never decreases: if a person reaches an exit at some time , he can’t move out of that exit at a later time .
Constraints (7) and (8) ensure that , and are positive integers and , , and are integers.
We will discuss Constraints (9)-(11) shortly.
The following results state that the set of solutions of corresponds to the set of weak evacuation schedules. We use to denote the value assigned by a solution of to variable .
Every WES corresponds to a solution of such that
is equal to the number of people on vertex at time according to ;
is equal to the number of people on edge at time according to