An Architecture for Situation-aware Evacuation Guidance in Smart Buildings Holger Billhardt1, Jürgen Dunkel2, Marin Lujak1, Alberto Fernández1, Ramón Hermoso3, and Sascha Ossowski1 Abstract.1Smart Cities require reliable means for managing In this paper, we focus on the problem of evacuation of installations that offer essential services to the citizens. In this installations of the aforementioned type in case of emergencies. In paper we focus on the problem of evacuation of smart buildings in particular, we focus on smart buildings equipped with information case of emergencies. In particular, we present an abstract processing, sensing and actuation facilities. In [2], for instance, a architecture for situation-aware evacuation guidance systems in recommender system has been put forward that arranges smart buildings, describe its key modules in detail, and provide some concrete examples of its structure and dynamics. personalized visits through a museum, based on user profiles and visitor location data provided by in-door localization techniques. Such situation-aware recommender systems con be considered as a 1 INTRODUCTION special type of that take the current Context-aware Recommender Systems (CARS) that are discussed in detail in [3]. As cities in the 21st century are growing both in size and The present work aims at exploiting infrastructures of this type population, it is necessary to have reliable means to manage also for evacuation purposes. installations that offer essential services to the citizens (e.g., The objective of an evacuation is to relocate evacuees from airports, train stations, sports centres, museums, and so on). hazardous to safe areas or the areas where the life-threatening risk Although there are already experts who design and manage such is minimal while providing them with safe routes. Present building facilities, there is a lack of operational tools and knowledge to evacuation approaches are mostly static and preassigned. explore their functional limitations in a principled manner, to Frequently, no coordination is available except for predefined identify potentially dangerous situations (a crisis is always evacuation maps. Still, due to the lack of the overall evacuation identified when it is too late), and to support decision-making in network information, there might be casualties caused by a too case of emergencies. slow evacuation on hazardous routes. Real-time route guidance Recommendations or guidelines about what to consider and systems, which dynamically determine evacuation routes in inner how to react do exist, but they can hardly be challenged or debated spaces based on the imminent or ongoing emergency, can help upon as they are often based on specific cases and experiences reducing those risks. A dynamic, context-sensitive notion of route rather than strong general arguments. In practice, frequently it is up safety is a key factor for such recommendations, in particular as to human decision-makers to design and monitor an appropriate herding and stampeding behaviours may occur at potential and timely course of action in response to a specific emergency. bottlenecks depending, among other factors, on the amount of Recently, it was proposed that, by bringing together works from people who intend to pass through them. Furthermore, smart the fields of Agent-Based Social Simulation (ABSS), Ambient devices allow guidance to be personalized, taking into account, for Intelligence (AmI), and Agreement Technologies (AT), advanced instance, the specific circumstance of the elderly, disabled persons, methods and tools can be developed to address the aforementioned or families. In such settings, an adequate notion of fairness of problem [1]. In particular, it has been suggested to use ABSS as a evacuation route recommendations is of utmost importance to means for realistically modelling human crowds in large assure the trustworthiness of the system from the standpoint of its installations (taking into account both individual and herd users [4]: the guidance should not only achieve good overall behaviours, as well as their interplay); AmI techniques are performance of the evacuation process, but must also generate adequate to model and simulate physical devices in smart spaces proposals for each of its users that each of them perceive as that capture relevant features of the situation (sensors) and provide efficient. Finally, large groups of people may need to be evacuated decision–makers with the means to act upon it (actuators); while so scalability plays a key role. AT are used to explore intelligent strategies for managing such Therefore, we concentrate on real-time situation-aware advanced installations as large-scale open distributed social evacuation guidance in smart buildings such that we keep track of systems. the related fairness considerations among the paths assigned to 1 individuals based on their mobility limitations, initial positions, CETINIA, University Rey Juan Carlos, Spain, email: {holger.billhardt, respecting individual´s privacy, and other evacuation requirements. alberto.fernandez, marin.lujak, sascha.ossowski}@urjc.es 2 Computer Science department, Hochschule Hannover, Germany, email: Section 2 describes in detail the particular problem that we are juergen.dunkel@hs-hannover.de addressing, extracts requirements for the architecture, and provides 3 Computer Science department, University of Zaragoza, Spain, email: a brief overview of the devices, methods and tools, mainly from the rhermoso@unizar.es fields of AmI and AT, that we will use to address them. Section 3 outlines our abstract architecture, describes the structure and 2.1 Technologies dynamics of its key modules in further detail, and provides some concrete examples to this respect. We conclude the paper with Section 4, describing lessons learnt and future lines of work. 2.1.1 Indoor location infrastructure A. Localization with landmarks A prerequisite for intelligent routing guidance is a detailed 2 EVACUATION GUIDANCE IN EMERGENCY knowledge about the current localization of all persons in the SITUATIONS building: First, the routing algorithm must know about the A pedestrian route recommender system for smart spaces that occupancy of each space in a building for calculating an recommends the safest routes to pedestrians and simultaneously appropriate route. Secondly, the precise position of each person is optimizes conflicting objectives of finding the social optimum and necessary for providing her with individualized routing minimizing individual path travel times in steady state conditions recommendations taking her specific constraints into account. while considering people flow and fairness was presented in [4]. There are various technological approaches to localize persons The system considers the influence of stress on human reactions in buildings: to the recommended routes and iteratively ponders user response to • WIFI: The intensity of a WiFi signal can be measured the suggested routes influenced by stress-related irrational (RSSI – received signal indication) to derive the distances behaviours until system acceptable routes are found. Moreover, the to several access points, which allows calculating a influence of affiliate ties and self-concerned individuals among person’s position via trilateration. Unfortunately, WiFi evacuees was studied in [5]. Here, Lujak et al. model self- doesn´t yield good accuracy: the distance between a concerned and social group behaviour via individual and team mobile phone and a WiFi access point is often rather reasoning. The recommended routes take in consideration the large and may not be precisely estimated on base of the affiliate ties to guarantee evacuee's compliance with the routes. RSSI, because the signal strength changes significantly If real-time infrastructure information is available to evacuees with environmental conditions. and they can negotiate their routes, it becomes possible to provide • RFID (Radio Frequency Identification) technology can a selection of safe fair routes considering individual safety also be used for indoor positioning. Persons equipped requirements. Therefore, we assume that the building and evacuees with passive RFID tags can be detected by RFID readers are monitored by a strategically positioned network of sensors. that are spread in the building. RFID technology has The monitoring permits us both to recognize the evacuees' behavior several drawbacks: First, it is rather expensive to equip a in respect to the suggested route and time window as to perceive building with an adequate number of RFID readers. That the congestion and safety conditions of the infrastructure. means that the number of RFID readers is relatively small Furthermore, we assume that the people flow demand (i.e., and localization must also apply triangulation based on evacuation requests) is known at the beginning of the time window distance measures, which causes the same drawback as of evacuation. This can be achieved based on the number of the one described above for WiFi. Secondly, it might be persons detected by the sensor network in the building. difficult to provide each person with a personal RFID tag. The aim of the architecture is, thus, to safely evacuate all the evacuees' demand on (temporally) efficient and safe routes and if • iBeacon technology has recently been introduced to not possible, then evacuate as many people as possible within the support indoor navigation [6]. An iBeacon device uses allotted time period. To this aim, we should find optimal paths Bluetooth LE to send in a configurable frequency a toward safe exits that maximize evacuees’ safety and minimize unique ID that can be read by any smartphone. Therefore, their evacuation cost considering critical crowd density and flow an iBeacon infrastructure is set up easily: Beacons are and thus avoiding the crowdedness conditions that might result in cheap enough to distribute many of them, so that they can panic. The path cost can reflect different factors, such as the form a much denser network in the building. evacuation time or cost incurred because an evacuee is too close to Furthermore, no specific beacon readers are necessary, a hazard (e.g., fire, smoke). because usual smartphones are capable of reading and In the case of contingencies, the architecture should reroute processing beacon signals. evacuees towards safe exits and, thus, propose evacuation routes that are adaptive to unpredictable safety drops in the evacuation Table 1: Characteristics of indoor location technologies network. As a continuation of the works mentioned previously that #Sender #Reader Accuracy mathematically model the safe evacuation problem and propose a WiFi few senders per 1 reader per low scalable and robust optimization method applicable in real world, floor person in this paper we propose an architecture that uses necessary RFID 1 sender per 1 reader per medium sensory, localization, semantics, and processing technologies that person room can provide real time situation awareness and evacuee guidance Beacon many senders 1 reader per high based on individual requirements. per room person Table 1 summarizes the characteristics of the different technologies that are applicable for indoor localization. It states the superior accuracy of iBeacon technology: there are as many readers as users, and each building section can be equipped with so many beacons that a dense net of landmarks is given. Furthermore, some 2.1.2 Complex Event Processing (CEP) of our former projects proved that iBeacons provide sufficient localization accuracy [7][8]. Therefore, we applied beacon A key issue in emergency recommender systems is detailed technology in our scenario, i.e. all sections of the buildings contain knowledge about the current situation in the building. In our a sufficient number of iBeacons that cover completely the space in scenario, an appropriate and individualized guidance for all people the building. in the building requires the information about: • the smart space network structure, and dimensions B. User smartphones: The personal smartphones of the users play two different roles: • the current position of each person and the occupancies of they serve as readers of the iBeacon signals and they can exploit all sections in the building their built-in sensors to derive more details about the current • the situations that can provoke panic situation of its particular user. • Beacon reader for localization: In smartphone operating • the space safety for each constituent part of the smart systems such as iOS and Android, the capability of space network that can be jeopardized by, e.g., fire or reading iBeacon signals is already integrated. In ranging build-up smoke, or panic related herding and stampeding mode, a smartphone estimates the proximity to an behaviors. iBeacon according to the three proximity ranges: Apparently, such situational knowledge cannot be predefined, - IMMEDIATE: [0, 0.5m] but must be inferred by exploiting live data. Usually, live-data is - NEAR: [0.5m, 2m] provided by sensors, which monitor their environment and produce - FAR: > 2m a continuous stream of data. In our scenario, we use smartphone Each room is equipped with several iBeacons with non- sensors and further sensors that are permanently installed in the overlapping ranges. As soon as a user approaches an environment, such as iBeacons, temperature and smoke sensors. iBeacon within the predefined range (e.g. NEAR) the Each set of sensor data they emit corresponds to a particular event smartphone triggers an event carrying the iBeacon ID. in the environment. Then the smartphone knows that it is near that iBeacon Situational knowledge can be considered as dynamic knowledge and can forward this information to a server that with a high change frequency. In emergencies, these streams of coordinates emergency situations. An iBeacon ID is events must be evaluated in real-time to achieve situation hierarchical structured, (i) a UUID specifies the particular awareness. institution (such as a university), (ii) a major ID could Considering a solitary event is usually of no significance, correspond to a certain building and (iii) a minor ID to a because it represents just a single incident in the physical world. certain room. For instance, it is of no importance if a single person is running, • User activity recognition: The built-in sensors of a but if all persons in a room are running it could indicate a panic smartphone can be exploited to derive the current activity situation. of its particular user. There exist several works on how to Complex event processing (CEP) is a software technology to use phone-based sensors for performing activity extract the information value from event streams [10], [11]. CEP recognition. For instance, the authors in [9] applied analyses continuous streams of incoming events in order to identify different machine learning techniques, such as decision the presence of complex sequences of events, so called event trees, logistic regression and neural networks to classify patterns. The main goal of CEP is to extract a domain-specific accelerometer data as certain activities. In our scenario, meaning out of the observed streams of simple fine-grained and the current behavior of the users is crucial to detect panic uncorrelated events. Instead, according to the key idea of CEP, a situations, e.g. the situation that most persons in a room set of fine-grained simple events must be correlated to a single are running. complex event with a significant meaning [10]. For instance, a panic event can be inferred, if the smartphones of nearly all visitors Furthermore, the smartphones serve as an individualized in certain area emit a running event. communication channel to each user to provide personalized Event stream processing systems manage the most recent set of routing guidance. events in- memory and employ sliding windows and temporal operators to specify temporal relations between the events in the C. Further Sensors and Infrastructure stream (each event has a timestamp). The core concept of CEP is a Further sensors are necessary for achieving situation awareness in declarative event processing language (EPL) to express event the emergency recommender system. In particular, these sensors processing rules. An event processing rule contains two parts: a can be used to detected unexpected events in the building. For condition part describing the requirements for firing the rule and an instance, smoke and temperature sensors could be used for fire action part that is performed if the condition matches. The detection. The signals of these sensors could be collected and condition is defined by an event pattern using several operators and analysed on a centralized emergency management system. This further constraints. server also provides a central hub for the data of all user In the following, we use a simplified pseudo language for smartphones for calculating the global situation in a building such expressing event processing rules, which is easier to understand as room occupancy and general user behavior. than an EPL of a productive CEP system. This pseudo language Furthermore, building operators can specify current incidents supports the following operators: that could be detected automatically. Operators detected (e.g., an emergency event is detected through complex ∧, ∨ Boolean operator for events or constraints. event processing), the system alerts some human operator who can NOT Negation of a constraint activate an evacuation process and the system enters in evacuation -> Sequence of events (e1 -> e2 meaning e1 occurred mode. In this mode, the situation of the building is still monitored before e2). and an evacuation route recommendation algorithm is executed, Timer Timer(time) defines a time to wait which provides individualized route guidance to the people that are Timer.at(daytime) is a specific (optionally periodic) currently in the building. point of time The system consists of two main parts: User Agents (UA) and .within defines a time window in which the event has to occur. Emergency Manager (EM), as well as a set of Sensors that are located at different points in the infrastructure. An event processing engine analyses the stream of incoming events and executes the matching rules. Luckham introduced the concept User Agent (UA) of event processing agents (EPA) [10]. An EPA is an individual The user agent manages and stores all the information that is CEP component with its own rule engine and rule base. Several related to a particular user (a person that is currently located in the EPAs can be connected to an event processing network (EPN) that building under consideration). The UA is executed as an app on the constitutes a software architecture for event processing. Event smartphone of each user. Here, we assume that people that enter processing agents communicate with each other by exchanging the building have either downloaded and run such an app on their events. smartphones, or they have been provided with some Smartphone like device that runs the app when they entered the building. The UA contains three parts: a preference module, a user 3 IN-DOOR EMERGENCY MANAGEMENT situation awareness module and a recommendation interface. The ARCHITECTURE preferences and constraints module allows the user to specify In this section we present an abstract architecture and describe the certain preferences or constraints regarding evacuation scenarios; different components comprising it. Then, we give some details e.g. certain handicaps that imply to a restricted mobility of the and examples of the CEP and Route recommender modules. person (wheelchair, blind, etc.). This information is entered during the configuration of the UA and is stored locally in form of RDF2 data. RDF is a standard data model for knowledge representation 3.1 Abstract Architecture commonly used on the semantic Web. We propose a solution concept of an evacuation guidance system The user situation awareness module exploits sensor data (from architecture that combines different CEP modules in order to the smart phone and beacons installed in the building) and reasons provide situation awareness for an evacuation route about the behaviour and location of the user (through local CEP recommendation algorithm. An overview of this architecture is processes). This derived information is passed to the situation given in Figure 1. module in the EM. In order to assure privacy, the amount of The general operation dynamics of the system is based on two information provided to external components is different in modes: standard mode and evacuation mode. In standard mode, the standard and in evacuation mode. In standard mode, only certain system continuously monitors the current state of the building, basic data about the user’s situation are forwarded to the EM (e.g., trying to detect a possible emergency scenario. If such a situation is location, running events). In case of the activation of an evacuation 2 https://www.w3.org/RDF/ Figure 1.Overall architecture of the evacuation guidance system (e.g., the EM broadcasts an evacuation event to all user agents), - The distribution of people in the building (e.g., number of more detailed events are detected and also the preferences and persons in each node and edge) constraints regarding user mobility are passed to the EM. That is, - Momentary positions, evacuation preferences, and mobility we consider that an emergency situation prevails upon privacy constraints of each person. issues. - Information on nodes and edges that are blocked for Finally, the evacuation mode will also trigger the evacuation, and the reason for blockage. Possible reasons recommendation interface. This interface provides the user with are fire, smoke and panic (that can be detected through the personalized navigation guidelines for evacuation, helping her to situation awareness module) and others (as specified by an leave the building in the way it was calculated for her by the operator). evacuation route recommender. During evacuation, the global situation of the building is dynamically updated in order to reflect the situation in each Emergency Manager (EM) moment. In the same way, the guidance algorithm controls The emergency manager is the central part of the system. A continuously the viability of the current evacuation strategy. If building situation awareness module combines and analyses the changes occur (e.g., new events are detected) that may violate that events provided from the individual user agents with data from viability, then the evacuation route recommender recalculates new smart building sensors and generates information about the global guidance data for each user. situation of the building. This information is stored in the data In the following two subsections we describe in more detail the model as RDF data. In this process CEP is used to filter irrelevant CEP component deployed in the user and building situation information and to generate higher level events. Especially in the modules, and the principal functioning of the evacuation guidance case of the user events, individual data is aggregated to detect algorithm. events regarding groups of users as well as identifying the density of the distribution of users in the building. When the building situation awareness module detects an 3.2 CEP Components emergency situation, an alert is sent to the operator interface. This Both agent types, User Agent (UA) and Emergency Manager interface allows, on one hand, to monitor the situation of the (EM) analyse the incoming streams of events to understand the building and, on the other hand, to trigger an evacuation process current situation. In this subsection, we will discuss in some detail and to execute control actions in such a process (e.g., specifying the underlying event models and give some examples for blockage of parts of the building). If an evacuation process is appropriate rules for achieving situation awareness. To make the initiated, the system enters evacuation mode and the evacuation description more comprehensive, we will simplify the event model route recommender [4] is executed. The module sends an and the corresponding rules. evacuation event to all user agents informing them about the situation. Then it starts to calculate individual evacuation routes for all users. In this process, the algorithm uses three types of data: 3.2.1 CEP in the User Agent • Data regarding the building topology: Static information about The UA exploits sensor data and infers (i) the location and (ii) physical elements in a building (e.g. rooms, corridors, floors, the behavior of a single user. To explain the CEP component in doors, etc.) and relation among them (e.g. room A is 10 m2, is more detail, we will assume that the UA monitors two types of next to room B and both are in floor F). In general, we use the explicit (or atomic) events to achieve this type of situation term section to refer to physical elements. Topology awareness: knowledge is represented in such a way that is sufficient to - beaconEvent(beaconID): an iBeacon with a describe the building network by a digraph with weights and certain ID3 has been detected tags on the constituent nodes and connecting edges. A node - accelerationEvent(velocity): the phone is refers to some physical area (e.g., a room, a hall, a segment of a moving with a certain velocity large corridor or floor, or some other open space). An edge connects two adjacent nodes and, thus, represents a way to (i) The beaconEvents collected by a particular phone are move from one node to another. An edge represents, e.g., a used to derive the current position of its owner. The following CEP passage, walkway, corridor, staircase, and alike. Nodes and rule creates enteringSection and leavingSection edges are described through their type, surface, area, events, meaning that the user is entering, respectively leaving a inclination, etc. certain space. These events can be considered as complex (or • Emergency ontology: This static ontology contains general materialized) events. They carry the ID of the user and the related knowledge about emergency and evacuation scenarios, e.g., beacon ID. facts that people with strong affiliate ties should always be evacuated together (for instance, families with children and CONDITION beaconEvent AS b1 à beaconEvent AS b2 persons with disability and their assistants), the appropriateness ∧ b1.id <> b2.id of certain routes for people with limited mobility in emergency ACTION: CREATE enteringSection(userID, b2) situations, The influence of certain events like fire and smoke CREATE leavingSection(userID, b1) on the security level of an edge or node for evacuation purposes, etc. • Global situation: Contains the current situation of the building itself as well as regarding the people that are currently in the 3 building. This information includes: Note that the beaconID is structured and includes, among other information, the ID of a certain section or room. The rule describes the situation that a new beaconEvent b2 numerous persons could not continue their recommended has been read in the phone, where the beacon ID has changed. evacuation path along the staircase. (Here the beacon ID, more precisely its minor ID, corresponds with a section of a building) Furthermore, there are other sensors in the smart building that can be exploited to derive certain building states. For instance, the (ii) Detecting a running user is another situation that must be data from temperature and smoke sensor can be used to detect a forwarded to the Emergency Manager, because many running users fire situation in a certain space of the building. There are can indicate a panic situation. An appropriate CEP rule checks if appropriate CEP rules that derive such situations as well. the average velocity of a user is higher than 5 km/h considering a time window of 5 seconds: 3.3 Evacuation Route Recommender Model CONDITION accelerationEvent As a[win:time:10sec] An evacuation route recommender model was presented in [4]. For ∧ average(a.velocity) > 5 km/h the self-completeness of this work, we describe it briefly in the ACTION create runningEvent(userID) following. The model is made of the optimization and human factor module. Furthermore, the optimization module is made of If the condition matches, then the rule creates a the Routes' safety optimization component and the Routes’ travel runningEvent that contains the ID of the corresponding user. time system optimization with fairness component, Figure 2. 3.2.2 CEP in the Emergency Manager The CEP component in the Emergency Manager is responsible for deriving the global situation in the building. For instance, it could receive and analyze the following atomic events: produced by the CEP rules running on the users’ smartphones. - enteringSection (userID, sec): a user with a certain ID has entered section sec. - leavingSection (userID, sec): a user with a - certain ID has left section sec. - runningEvent (userID): a user with a certain ID is running. Figure 2. Evacuation route recomender model Another kind of situational knowledge describes the global Our objective is not only to find routes with satisfied minimal situation. A first type of rules is calculating the occupancy of safety conditions since it may occur in hazardous situations that no different sections in the building. This data is used as input for a such route exists. Thus, with the objective to increase the chances situation-aware routing recommendation algorithm. of survival, in the routes’ safety optimization, we need to find The following CEP rule calculates the number of persons routes that maximize Nash social welfare of the safety of the staying in a certain section by counting all entries and exits in that routes. We opt for this choice since it gives the best compromise section during the last 15 minutes: between the optimization of the evacuees’ utilitarian and egalitarian social welfare. Therefore, the safety optimization CONDITION: problem maximizing Nash product of the safeties of the constituent (enteringSection AS e ∨ leavingSection As l) edges of evacuation paths is to be solved. [win:batch:15min]group_by(e.sec) ∧ e.sec = l.sec To facilitate scalability and robustness of the system in the ∧ count(e) AS entries evacuation of large premises, a distributed approach to this route ∧ count(l) AS exits safety optimization problem can be applied, as presented in [5]. ACTION CREATE occupancy(e.sec, entries - exits) Since we treat a highly computationally complex problem, the implementation of this distributed approach to our proposed The second type of rules tries to infer a global behavior of the architecture adds scalability by enabling the computation of the people currently staying in the building. For instance, the next rule overall routing solution in parallel computation processes where intends to detect a panic situation in the building: each process is responsible of the computation of an evacuation CONDITION: runningEvent AS r [win:time:1 min] route for a group of users with similar preferences and constraints group_by(r.sec) in the same section of the building. The solution of the safety ∧ count(r) > r.sec.occupancy * 0.2 optimization model is a connected graph that assures the ACTION: CREATE panicEvent(r.sec) maximization of routes’ safeties. The basic idea of the module for the routes’ travel time system It groups all runningEvent according to a time-spatial optimization with fairness is as follows. The route's travel time window. The grouping criterion is defined by the section, where optimization with fairness is divided into two layers. On the upper the runningEvent have occurred, and a time interval of 1 layer, Nash social welfare maximization problem with included minute. If more than 20% of the people staying in the room are envy-freeness and fairness constraints is decomposed to obtain a running, a panic situation is indicated. subproblem that can be optimized individually locally by the Note that also other situation could be detected by appropriate CEP rules. For instance, a blocked staircase could be inferred, if processes described previously. The details on the optimization ACKNOWLEDGEMENTS approach can be found in [12]. Moreover, based on the total demand expressed in terms of person This work has been partially supported by the Autonomous Region flow per time unit, each process tries to achieve a sufficient of Madrid through grant “MOSI-AGIL-CM” (P2013/ICE-3019) number of shortest paths considering fairness for all its evacuees. co-funded by EU Structural Funds FSE and FEDER, “SURF” The processes compute a sufficient number of shortest paths for (TIN2015-65515-C4-4-R) funded by the Spanish Ministry of their evacuees through, e.g., k-shortest path routing algorithm [13]. Economy and Competitiveness, and through the Excellence The prices of networks’ edges are adjusted based on the overall Research Group GES2ME (Ref. 30VCPIGI05) co-funded by URJC processes’ demand on the routes influencing congestion on the and Santander Bank. highly demanded arcs. The prices are Lagrange multipliers that are calculated through a REFERENCES distributed dual-decomposition of the primal evacuation problem. On the other hand, each process calculates shortest paths to the set [1] MOSI-AGIL project: https://www.gsi.dit.upm.es/mosi/ (2016). of safe exits with updated edges' prices, envy-freeness prices, [2] R. Hermoso, J. Dunkel, and J. Krause, ‘Situation Awareness for Push-Based Recommendations in Mobile Devices”, 19th Intern. consistency dual prices, and user demand distribution over routes’ Conf. on Business Information Systems (BIS) conference, (2016). prices and thus decides upon the amount of users to be routed on [3] G. Adomavicius and A. Tuzhilin. Context-aware recommender each of the assigned routes. systems. In Recommender Systems Handbook, pages 217–253. After the route assignment is made for all evacuation requests Springer, 2011. on the first level of the optimization model, each process decides, [4] M. Lujak and S. Ossowski, ‘Intelligent People Flow Coordination in on the second level, of its users’ assignment to the routes assigned Smart Spaces’. Post-Proceedings of the 13th European Conf. on to it on the first level, based on relevant social welfare parameters Multi-Agent Systems / 3rd Int. Conf. on Agreement Technologies, that guarantee fairness of the assigned routes to its users through an Rovatsos M. et al. (Eds.), LNAI vol. 9571, 34–49, (2016). iterative auction. While the negotiation for the assignment of the [5] M. Lujak, S. Giordani, S., and S. Ossowski, ‘Distributed Safety routes among different processes on the first level includes the Optimization in Evacuation of Large Smart Spaces’. The 9th communication among processes when they share the same arc(s), International Workshop on Agents in Traffic and Transportation (ATT 2016 @ IJCAI 2016), (2016). the negotiation through auctions on the second level is local [6] Apple Inc., iBeacons https://developer.apple.com/ibeacon/ between each process and its users and considers a fair assignment [7] W. Zimmermann, Indoor Navigation with iBeacon Technology, of the available routes based on the users’ individual evacuation Master thesis, Hannover University of Applied Sciences and Arts, preferences and mobility constraints. 2016. [in German] [8] M. Brown, Introducing iBeacon Technology at SXSW 2015. http://www.sxsw.com/news/2015/introducing-ibeacon-technology- 4 CONCLUSIONS sxsw-2015 (2015). [9] J.R. Kwapisz, G.M. Weiss, and S.A. Moore, ‘2010: Activity In this paper we have presented an abstract architecture for Recognition using Cell Phone Accelerometers’, ACM SIGKDD situation-aware evacuation guidance in smart building. The system Explorations, 12 (2), 74–82, (2010) provides an individual evacuation route recommendation to each [10] D. Luckham, The Power of Events. Addison-Wesley, 2002. user of a smart large installation. The proposal takes into account [11] O. Etzion and P. Niblett P. Event Processing in Action. Manning, the current location and building state obtained through sensors and 2010. personal mobile devices, as well as human factors in emergencies. [12] M. Lujak, S. Giordani, and S. Ossowski, ‘Route guidance: Bridging We described the architecture and the main technologies System and User Optimization in Traffic Assignment’, proposed to implement it, namely, iBeacons and smartphones for Neurocomputing, 151 (1), 449-460, (2015). obtaining live building information, CEP for efficiently event [13] J.Y. Yen, ‘Finding the k shortest loopless paths in a network’, processing, and a distributed optimization algorithm for route Management Science, 17 (11), 712-716, (1971). recommendation. Our proposal addresses the computational complexity of managing the huge amount of data that can be continuously generated in a large installation. On the one hand, users’ smartphones process events perceived from the infrastructure and forward only relevant high level events to the emergency manager. On the other hand, we proposed a distributed evacuation route recommendation algorithm. Moreover, the decision of running the user agent on personal smartphones facilitates dealing with private information. In the future we plan to test our architecture in a simulated scenario where we will evaluate the correctness of CEP rules and the route recommendation algorithm in different settings. Then, we will deploy a field test in a University building.