RoboCupRescue 2011 - Rescue Simulation League Team Description Ri-one (Japan)
Kanako Watanabe, Gonkichiro Sumidai, Naoko Tanibata, Naoya Hikima, Masatoshi Tsushima, Keisuke Yasuda, Noriyuki Suzuki, Yudai Nakanishi, Katsuari Kamei
Ritsumeikan University, Japan
http://www.pj.is.ritsumei.ac.jp/ri-one/*∼*robocup/public/index.php
Abstract This paper describes the features of Ri-one rescue simulation team. In this year, we add the following three big improvements to Rione team. First, our police forces ignore blockades that do not prevent agents from passing roads. This improves the work efficiency of police force. Next, the optimal number of the fire brigades can be decided by Fire Area. Furthermore, Time Stamp updates old information to more accurate and latest one. By this updating, the agents can suppress their actions to the minimum, and extinguish fire more efficiently. Finally, in the aspect of development efficiency, the viewer provided by Ri-one will help many developers to get detailed information about an individual of agents, and to develop agents efficiently.
1 Introduction
RoboCup Rescue Simulation (RCRS) is one of the most complicated multiagent systems. RCRS servers simulate damages to civilians and buildings caused by disaster in multiple situations. In this simulation, the disaster breaks out buildings and blockades roads. In addition, fire occurs and damages buildings. RCRS agents must rescue more victims in a dangerous situation and prevent fires from spreading. This paper describes new RCRS agents that can reduce damages of disaster more efficiently, based on the former RCRS agents developed by Ri-one.
2 Agent Skills
This section describes the three main agent types in the Ri-one system.
2.1 Ambulance Team
Main duties of ambulance team are to rescue civilian who are buried in the buildings and to take them to refuges. Ambulance teams consider the following information items and then decide the priority of rescue activity.
- distance between ambulance team and civilians
- injury of the civilians
- buried condition of civilian in the building
- information about how much buildings are burning
The information of the above items is used as follows: Keeping distance between the ambulance team and civilians, the ambulance team reduces their movement distance. Judging from injury of civilians, the ambulance teams give priority to civilians severe damaged. Setting a time to complete the rescue of a civilian who is buried in the building, the ambulance team decides the priority of the civilian saving. Considering whether buildings are burning or not and the scale of the fire, the ambulance teams predict a future injury severity of civilians and decide the priority to rescue. As the result, the ambulance teams act according to circumstances and carry out the rescue works in the optimum order.
In addition, for better rescue works, the ambulance teams move to other place where the suffering situation is clearly known and then begin the next rescue activity if they are not sure of the existence of injured civilians in a building. The number of civilians that the ambulance team can rescue is limited because of their resource, therefore we need to allot the most suitable number of ambulance teams to each civilian. The ambulance team calculates the number of members of the ambulance team necessary to rescue based on the information such as how civilians are injured and how much depth civilians are buried. Thus, the ambulance teams can rescue more civilians more quickly.
2.2 Police Force
Police forces are agents to clean the blockade caused by the disaster. The police forces of Ri-one create tasks from each situation that the agents have, and decide their actions from the priority of the tasks. This year, we have changed the constitution of tasks in accordance with the changes of the RCRS rules. One of the main additional elements is a consideration of whether the blockade sure obstructs a road or not. The tasks used by the police forces are following four items of information:
- Target
- Priority of the task
- State of the task (not get started, in execution, finished)
- Police forces in charge
Blockades, buildings, roads, and agents are involved in the target. The priority of the task is considered to be the following elements. Where these elements depend on target's type:
- Common
- Distance to the target
- Blockades
- Cost to clear
- Whether the blockade sure obstructs a road
- The number of buried agents
- Buildings
- Whether the building is a refuge or not
- Whether the building is reachable or not
- Roads
- Whether fires exist around the road or not
- Agents
- Whether the agent is in the blockades or not
Whether the blockade sure obstructs a road is judged by the subtraction of the shape of the expanded blockades from the shape of the road. If the result of subtraction has an enough width for agents to pass, the police force considers the roads are passable. When they subtract the blockade's shapes, our program expands blockades to ensure the enough width for agents to pass. The grey parts on roads (around blockades) in Fig. 1 show the expanded shapes.
In the roads with the width to pass, the agents can pass the roads in spite of existence of small blockades. As a result, more roads become passable.
2.3 Fire Brigade
Fire brigades' purpose is to extinguish fire from disaster perfectly with preventing the burning area from spreading. Therefore, the fire brigades of Ri-one in this year select extinguishing targets based on the following information items :
- Information of the target
- Information of neighbors of the target
- Information of fire area including the target
Specifically, the information is the location, temperature, and degrees of buildings' burns included Fire Area (described later in WorldModel). For example, if the target's temperature is low, the fire brigades can extinguish the target easily. In addition, the fire brigades can prevent fire from spreading efficiently by extinguishing the building where the ignition ratio in the neighbor buildings is small.
Fire brigades calculate buildings' priority with the formula (1).
$$P(I) = rHigh-d1Mid+d2High-tMid-bMid+nLownum-fsizeLow-ts*High$$
Each of items is as follows:
- P(I): Priority of the building I
- High,Mid,Low: They are constants. High > Mid > Low
- r: The building can reach (value = 1) or not (value = 0).
- d1: Distance from Agent to the building
- d2: d1 is shorter than extinguishable distance (value = 1) or not (value = 0).
- t: Temperature of the building
- b: Brokenness of the building
- n: The buildings neighbors temperature
- num: Number of the buildings neighbors
- fsize: Fire Area's size
- ts: Current time The buildings Time Stamp
Furthermore, the fire brigades have Fire Areas. Therefore, they are able to judge the various situations as follows :
- Set solution about Fire Areas like extinguish, prevent fire spreading and give up
- Set the number of fire brigades about Fire Areas
Consequently, the fire brigades could minimize the fire. There were some advancements in fire fighting, too. The fire brigades could extinguish targets by addition of the concept of Time Stamp described later in World Model. Therefore, the fire brigades are able to extinguish targets that they cannot see, that is, they can extinguish fire without their own their sight. In addition, the fire brigades can minimize their movements to confirm the targets' condition.
3 World Model
This section describes the advanced world model components used by Ri-one agents.
3.1 AdvancedWorldModel
We have developed AdvancedWorldModel taking over from StandardWorldModel in RCRS. AdvancedWorldModel plays a part in holding informations which make agents choose better way to work. The main functions we have developed this year are Fire Area and Time Stamp.
3.2 Fire Area
Fire Area has been developed based on the concept of FireLayer in the previous year, and it takes a broad view of fire conditions. For more details of FireLayer, refer to our TDP of 2009[1]. A Fire Area consists of the following factors:
- Burning buildings
- Burned buildings
- Buildings that might catch fire
To extinguish fires efficiently, the fire brigades use Fire Area. We mentioned how the fire brigades use Fire Area in Section 2.3.
3.3 Time Stamp
Time Stamp is a function of AdvancedWorldModel to know the latest updatedtime of each information for agents in Ri-one team. Each entity's state will be changed with simulation cycle. In other words, the accuracy of information about the entity decreases with simulation cycle. Therefore, the agents check each information's Time Stamp and then they use only the information that they believe the information is reliable. The agents judge that the information was changed when they meet following situations:
- Get information from view
- Receive information from radio communication
- Receive information from voice communication
When any of these situations happen, Time Stamp will be updated. Time Stamp is referred by the agents to decide tasks' priorities.
4 Communication
Ri-one team makes a selection of both the Channel for communication and the contents of information in order to achieve efficient information sharing. Therefore, we have developed the Channel Manager to select Channel and the Message Manager to decide amount of message for sending.
4.1 Channel Manager
The Channel Manager chooses channels that the agent uses. Therefore ,this Manager collects the information such as the existence of noise, bandwidth and number of channels. Each Channel Manager uses random numbers to determine the Channel to use.Moreover, the bandwidth is used to generate numbers as a random seed. Fig. 2 shows a relationship between time and the number of agents for each channel. Each line shows each Channel type.
Each Channel's bandwidth in Fig. 2 is as follows:
- 1ch, 64
- 2ch, 2048
- 3ch, 1024
- 4ch, 512
According to Fig. 2, the number of agents for each channel is almost in proportion to the Channel bandwidth.
4.2 Message Manager
The Channel Manager decides Message Manager. The amount of messages to be sent is determined by the bandwidth of the channels. Contents of message are selected in order of the priority of information, and sent to the Channel together. The priority of the information is decided dynamically by the channel used now, either Voice Channel or Radio Channel.
5 Tools
This section describes the development tools used by the Ri-one team.
5.1 Ri-oneViewer
The agents judge the complex situation before choosing what to do and making plan of route. It must be useful for everyone who is developing agents to have a viewer that shows precisely the complex situation of the individual agent and the actions decided by the agent. Therefore, we developed our original viewer, called Ri-one Viewer, based on SampleViewer for efficient agent developments. We create agents who inherited to the agents used actually for debug in the same interface, so that we can separate process of debug from the other processes. This viewer can show and be used for as follows:
- Entities that an agent got in past time and their's information
- Candidates for final plan of route
- Place in the source code of the process that became grounds of action judgment
- Recoding pictures that are results of process at every cycles
- Color changes of agents
- The amount of water used by the fire brigade
- The amount of blockades erased by the police force
- The amount of people saved by the ambulance team
- Route of all agents from start to finish
Part of usage is realized by developer's own idea in agents used for debug. In addition, this viewer can be operated automatically by JavaScript for convenience. Fig. 3 shows an example of working of this viewer. We can change contents of the display by right side panel.
6 Result
We compared this year's team (Ri-one2011) with last year's team (Ri-one2010). Ri-one2010 is a team that we made for RoboCup2010. Ri-one2011 is the team that we have developed in this year. We used VC map for the test and used original scenario that agents and refuges are added to check our team in detail. Figs. 4-6 show relationships between time and simulation scores. The blue and red lines show the score of Ri-one2010 and Ri-one2011, respectively. According to these figures, Ri-one2011 reduce damages of disaster more efficiently than Ri-one2010.
7 Acknowledgment
We are deeply indebted to Akifumi Komukai, Shogo Suzuki, Daiki Yoshihara, Hiroshi Ueno and Yuki Matsuda for their advices.
References
- Y. Otsuki, H. Aoki, K. Nishide, Y. Yamaguchi, Y. Matsuda, A. Komukai, H. Ueno and K. Kamei: RoboCupRescue 2009-Rescue Simulation League. Team Description. Ri-one(Japan), 2009.
- Y. Matsuda, H. Ueno, A. Komukai, D. Yoshihara, S. Suzuki, K. Watanabe, G, Sumidai, N. Tanibata and K. Kamei: RoboCupRescue 2010-Rescue Simulation League. Team Description. Ri-one(Japan), 2010.