Agent Competition Rules of RoboCup 2007 Rescue Simulation League
June 6, 2007

  • Simulation Environment:
    1. Notification:
      1. We focus on improving the stability of simulation environment. Although we should new kernel 0.50.x, due to some stability problems, we decided not to use it for RoboCup 2007 competitions.
      2. That kernel 0.49.9+ has some changes from kernel 0.49.9. The changes is:
        1. The command "AK_CHANNEL" was added. Participating teams should check the "docs" directory for information on how the new system works, and adapt it to their agents.
        2. These parameteres has been added to 0.49.9+:
          
          channel_say_count : 1
          
          channel_radio_count : 10
          
          max_platoon_message_count : 4
          
          
      3. We strongly encourage all participating teams to use the TCP protocol to connect to the kernel. UDP is still available in 2007 but it is deprecated any may be removed from future competitions.
    2. Hardware environments:
      1. PCs for competitions: We have competitions with 2 clusters. So, we play 2 games in parallel. And 4 PCs are used for 1 cluster. 4 PCs are used as 1 for kernel, 1 for 3D viewer and 2 for agents.
      2. Specs. of a PC for kernel and agents: Dell, Pentium4-2.8GHzCPU, 1Gbyte DDR-DIMM, DVD-drive.
      3. Specs. of a PC for 3D viewer: Dell, Pentium4-2.8GHzCPU, 1Gbyte DDR-DIMM, GeForce5200 AGP, DVD-drive.
    3. Software environments:
      1. Simulation Environment: A Linux package will be used.
      2. Simulation Package: At the competition a package of the latest stable version will be used. This package is maintained by Cameron Skinner.
        Anyone can download the package from http://www.robocuprescue.org/robocup2007/package/49withCBS.zip
        1. Kernel should generate random IDs for units in each simulation. This means that the ID generated for a building in each simulation should be different from the next one.
        2. The "round hp/damage feature" has been added. This rounds the values of HP/damage sent to agents to the nearest 1000 or 10 respectively.
      3. Firesimulator:
        1. The initial amount of fuel in the buildings are randomized to some extent.
        2. It should be: a new property called 'temperature' representing the temperature of a burning building can be sensed by the agents that are within the radius of 10m from the center of the building. The sensed value is rounded to the nearest 50. It's not a new property for this year.
    4. Maps: Five maps can be used. The maps to be used are determined by TC.
      1. Maps known to all teams
        1. center of Foligno (Italy)
        2. Kobe (1/10, 1/4)(Japan)
        3. Virtual City
      2. One or more random map prepared at the competition site by the Technical Committee.
    5. Agents: Agents shall be implemented by Teams.
      1. Numbers: The numbers of agents and ignition points specified in gisini.txt are shown in Table 1. The numbers are open to contestants before games.

        Table 1: The number of agents and ignition points specfied in gisini.txt
        Entity Min. Max.
        Fire Brigade 0 15
        Police Force 0 15
        Ambulance 0 8
        Civilian 70 90
        Fire Brigade Center 0 1
        Police Force Center 0 1
        Ambulance Center 0 1
        Refuge 0 5
        Ignition points 2 8*

        * The maximum number of initial burning buildings will increase to 30.
           However these buildings will be grouped into no more than 8 different
           areas - i.e. there will be up to 8 initial fires, but they might begin with
           several burning buildings each.

    6. Civilian Agents: We use Cameron's civilian agents which included in the latest simulation package.

    7. Parameters uses in games:
      1. parameters in config.txt[kernel]:
        Default parameters are used.
        
        Default parameters are used.
        
        round_hp_and_damage: true
        
        send_voice_synchronously: false
        
        
        
        # New options for 2005
        
        send_civilians_at_start: false
        
        
        
        ################################################# 
        
        # new/modified options for the 2004 competition.
        
        
        
        # GIS generates random IDs for units in each simulation.
        
        random_IDs		: true
        
        
        
        # KA_HEAR_TELL and KA_HEAR_SAY are added to the RoboCup Rescue protocol.
        
        additional_hearing	: true
        
        
        
        # The maximum power of one extinguish action. (-1 to unlimit)
        
        max_extinguish_power_sum	: 1000
        
        
        
        # The maximum extinguish power for each nozzle. (-1 to unlimit)
        
        max_extinguish_power		: -1
        
        
        
        # The maximum number of nozzles for one extinguish action. (-1 to unlimit)
        
        max_nozzles			: -1
        
        max_extinguish_distance: 30000
        
        
        
        ################################################
        
        # new options for the 2003 competition.
        
        
        
        # avoid slowdown for spredding fire.
        
        send_far_fire_changed_only	: true
        
        # notify_unchangeable_informaion	: false // Deprecated
        
        
        
        # avoid that the fire simulator becomes some laps behind.
        
        step			: 1000
        
        
        
        # use new synchronization mechanism.
        
        # use_gettimeofday		: false // Deprecated
        
        
        
        # An agent can discover a fire within a distance D[m] roughly proportional
        
        # to its fieryness, where
        
        #       D = K * (cycles from the start of burnup)
        
        # If fire_cognition_spredding_speed >= 0, K is given by                 
        
        # fire_cognition_spredding_speed. Otherwise, K is infinite.
        
        fire_cognition_spreading_speed	: 10000
        
        
        
        # If simulate_tank_quantity is true, tank quantity properties are       
        
        # decreased by extinguishments.  If tank is empty, extinguishments      
        
        # should be faild.
        
        simulate_tank_quantity		: true
        
        
        
        # Tank quantity properties are increased by tank_quantity_recovery_on_refuge
        
        # if the agent is in a refuge.
        
        tank_quantity_recovery_on_refuge : 1000
        
        # same as max_extinguish_power
        
        
        
        # Gives the maximum quantity of a tank.
        
        tank_quantity_maximum		: 15000
        
        
        
        
        
        # not new, but the subject of the discussion
        
        say_max_bytes			: 256
        
        
        
        
        
        ################################################
        
        # new options for the 2002 competition.
        
        
        
        ignore_nozzle_position		: true
        
        area_per_repair_cost		: 20000000
        
        round_down_quantity		: false
        
        accept_multiple_nozzles		: true
        
        near_agents_rescuable		: true
        
        steps_far_fire_invisible	: 5
        
        steps_agents_frozen		: 3
        
        miscsimulator_supports_load	: false
        
         :
        
        
      2. Other parameters:
        • simulation time: 300 steps,
        • range of eyesight is 10m,
        • range of voice is 30m,
        • power of earthquake: shindopolydata.dat, galpolydata.dat

  • Competitions:
    1. There shall be two competitions: Agent competition and infrastructure competition:
      1. Agent Competition:
        1. The Technical Committee shall design the disaster situations to be used during the competitions. Disaster situations chosen for a competition shall be able to test efficiency of agents' task in various conditions.
        2. Simulations held in each day of competitions shall be divided into Sessions. A 'Session' is a group of Simulations held on a specific disaster situation in a round.
        3. Teams shall submit their code/binary before the start of session.
        4. Teams shall NOT know the disaster situation (map, gisini, *polydata, random seeds, *.rays) of the session before it starts.
        5. Teams can either modify their code or submit new code between sessions.
        6. Teams shall have all kinds of agents and must connect the correct number of agents as specified for the current session.
        7. Precomputation defined as an agent”Ēs loading and using MAP-SPECIFIC data which has been created and processed by another program and saved in a file is allowed under the following conditions:
          1. The data should have been generated by a computer program with no human interaction.
          2. Information for all known maps should have been generated by a single computer program.
          3. The computer program used for computing data for known maps should work properly if it is given a new map.
          4. An agent should choose the data file to be used itself.
          5. Agents should be able to work if no precomputed data is present for a map.
          6. The source of the precomputation program shall be open after the competition.
        8. Number of simulations in each round: In each round there shall be more than one simulation on the same map. The number shall be determined and announced on competition site by TC. The score for that round shall be determined by finding the average of the points for the runs.
        9. Evaluation Rule: We will use a new scoring rule of German Open 2005. The scoring was intended to take the new aspects of the fire simulation into account.
          The higher V value for a map, the better rescue operation.
          V=(P + S/Sint) * sqrt(B/Bint)
          P: number of living agents,
          Sint: total HP of all agents at start,
          S: remaing HP of all agents,
          Bint: total area at start,
          B: area of houses that are undestroyed,
          the following rule was used to compute the value B:

          0 no penalty
          1,5 1/3 of area counted as destroyed
          4 water damage, also 1/3 area counted as destroyed
          2,6 2/3 of area considered as destroyed
          3,7,8 whole building considered as destroyed

        10. Valid games: A game may fail with various reasons, although simulation package is debugged. In that case, only ONE more simulation is permitted. When the second game also failed, we judge as follows:
          1. In the case that the simulation continue to the end, the point of the second game is used. When you try the second game, the point of the first game is not used.
          2. In the case that the simulation does not continue to the end, the point is 0. Even if you get the point of the first game, you can't choose the point. When you try the second game, the point of the first game is not used.
          The point at the game is treated on the principle that the continuation should not be in the team's favor.
        11. It is the responsibility of teams to ensure that their code works correctly with the provided simulators. Although the technical committee makes every attempt to provide a reliable simulation environment the committee accepts no responsibility for any kind of software failure at competition time. Bugs reported at competition time will be fixed at the first opportunity but generally this will be after the competition has ended.
        12. Others: All the conditions for a particular disaster situation, including random numbers, etc shall be identical for all the teams.
      2. Infrastructure competition:
        Improvements in simulation components, such as disaster simulators, GIS, kernel, viewers, civilian agents and so on, are essential in rescue simulations. This competition tests the performance of these components. The awarded team will be requested to provide the component for next year's competition. Teams will present their tools in front of all teams. Ranking will be decided with votes from TC members and teams.
    2. Open source policy:
      1. Source code files must be open immediately after games when other teams request to guarantee fair play and to encourage community activity after competition.
      2. Log files and related parameter files will be open.


    Nobuhiro Ito 2007-06-01