DrillSime version 2.0 (hse) Copyright (c) 2005 Donald Bren School of Information and Computer Science University of California, Irvine Irvine, CA 92697 o Sharad Mehrotra (Faculty) o Nalini Venkatasubramanian (Faculty) o Chris Davison (Technology Manager) o Vidhya Balasubramanian (Ph.D. Student) o Daniel Massaguer (Ph.D. Student) o Earth Chandrruangphen (Ph.D. Student) o Ali Khodaei (MS student) o Thomas Chen (Undergraduate Student) University of California, Irvine This project is generously supported by the National Science Foundation under Award Numbers 0331707 and 0331690 Please send technical questions about this release to simulator@ics.uci.edu . --------------------------------------------------------------------- --------------------------------------------------------------------- - Introduction The roles of IT solutions are closely related to crisis response process. When an unexpected event happens, the response is an interrelated set of activities that play out in the same space and time. For each activity, there are a set of decisions, which are made based on variety of criterion, such as damage assessment, etc. Therefore, information is the driver for the decisions and the more accurate and timely the information, the more successful the response. The role of the IT solutions we are developing is to get the relevant information accurately and quickly to the decision makers. Currently we are mainly focus on the following four fields: 1) information collection; 2) information analysis; 3) information sharing; 4) information dissemination. At the micro level, the simulator simulates agents corresponding to humans. Agents could either be controlled by computer programs or alternatively by human participants. To certain extend, a simulator, which is simulating the response activity at the mixture of micro and macro level, is similar to immersive environments. As in computer games where players are immersed in the virtual environment, human participants are also immersed in the simulation in a similar way. We refer to such agents as human agents. Human agents could participate along multiple roles. They may play the role of being victims, or first responders, response planners, or commanders. The purpose for human controlled agents is to allow for dynamic calibration of the simulation - Platform Requirements: Any Java-compatible environment with a Java 2 SDK. (We tested the code on Java(TM) 2 Runtime Environment, Standard Edition, version "1.4.1_01", "1.5.0_02, and "1.5.0_03".) - Installation 1. Download the DrillSim_hse.zip file from the simulator webpage: http://www.ics.uci.edu/~projects/drillsim. The zip file contains a jar file and some sample maps. 2. Unzip the file and add the jar file to the classpath variable. - Used Libraries: o JADE : Java Agent Development Environment (download jade.jar, jadeTools.jar, iiop.jar, and Base64.jar from http://jade.tilab.com/ and add them to the classpath as well) - How to use the simulator: 1, find a floor map in GIF format (e.g. "map_original.gif" in our "example_map" folder) 2, convert the map into the right size so that it can be displayed nicely in the computer screen. (E.g. "map.gif" in the "example_map" folder) 3, covert the map into some text reperesentation 3.1 convert map into the right size. In our simulator, a 80x60(pixel) image will be represented as a 80x60 matrix. o A very large matrix will certainly researve more information of the original map, but it is computational expensive. o A small matrix will make the simulator run faster, but it may lose information from the original map. o In our test, a 100x100 matrix is considered reasonable. (e.g. "map_tiny.gif" in "example_map" folder). 3.2 edit it the map using graphics tool (Photoshop, MS paint) o accessible regions are represented using white color o inaccessible regions are represented using non-white color, e.g. black, gray, etc 3.3 use class/test/simeva/Viewer.class to convert background image into a text file For an example, if the map is called "map_tiny.gif", we can convert it using the following commands: o on Windows/Unix environment (at home folder of the installation): Java test.simeva.Viewer map_tiny.gif The output will be automatically written to a file called "map_tiny.gif.txt" 3.4 put easy/tough/assembly area in text file o Open the txt representation file, you will find that accessible regions are presented as '0's and inaccessible regions are presented as '1's. o We also have other legends. - Normal Accessible Region (0) - Blocked Region (1) - Easy Region (2) - Assembly Area (3). In our current version, only one assembly area is allowed. If multuple areas are defined, when the file is read into the simulator, the later one will overwrite the previous ones. o User can alter the map representation freely. 4, Run the simulator by executing : "java prototype.hse.MyApplet" 4.1 before you press start, you have to choose the map to load. For an example, "map.gif". o Please note that, due to some not yet known reasons, you need to change the size of the simulator window frame after loading a map. 4.2 after loading the map, you can change the map at real time o select the type of region you want to add by clicking "Build Map -> Easy/Tough/Very Tough" o Clicking 4.3 set an assembly area if it is not yet defined 4.4 picking parameters, such as agent number 4.5 start the simulator by clicking "simulate->start". Give it a few seconds to let the agents initialize. 4.6 suspend/resume/terminate while running the simulator 4.7 After the simulator is terminated, either manually (click the terminate botton) or automatically (no agent in the building), goto step 4.1 if you want. [new features] 4.8 Agents will not move until they either hear the fire alarm or another agent tells them to do so. 4.8.1. To activate the fire alarm, click on the fire alarm button 4.8.2. To make an agent tell another agent to leave, see 4.11. 4.9 The magenta agent is the floor warden. When it learns is time to evacute the building (e.g., by hearing the fire alarm), it puts its grenn hat and vest on and goes towards the assembly area. 4.10 Agents react different to the fire alarm depending on their cognitive characteristics. Currently, the relevance an agent gives to the fire alarm regarding deciding whether to evacuate or not is randomly initialized. The same applies for the relevance given to a floor warden shouting to evacuate the floor. This holds for all agents but the floor warden agent. The floor warden agent gives maximum relavance to the fire alarm; therefore, it is usually the first agent to start moving and it puts its green hat and vest on immediately after the fire alarm is fired. 4.11 Controlling an agent. To control an agent, left-click on it (you should see the message 'auch' if correctly clicked). Possible actions are: 4.11.1 Walk. While holding the 'w' key down, left-click where you want the agent to walk to. 'w' key can be released right after the left-click. 4.11.2 Shout. Type 's' once and the agent will start shouting. You can learn which agents are hearing the message by the messages being print at the console. Type 's' again and the agent will stop shouting. Enjoy. Last updated: April 29, 2005.