A proposal of Civilian

From: NODA Itsuki (I.Noda@aist.go.jp)
Date: Thu 29 Nov 2001 - 19:53:09 GMT


Dear RoboCupper,

I like propose new civilians for RoboCup-2002. Basically, the
behaviors are based on the current civilians (RoboCup-2001). We are
trying to re-write the code using a kind of rule-base behavior engine
for the future development. Also, it uses new syntax of ACL.

Here is a proposal.

--Itsuki

----------------------------------------------------------------------
%% -*- Mode: Memo -*-

[] A proposal of Behaviors of Civilian Agents

Civilian agents are consists of three groups, selfish agents, obedient
agents, and volunteer agents. Behaviors of those agents are based on
civilian agents used in RoboCup 2001, and re-written using a rule-base
behavior engine.

The rule-base behavior engine generates behaviors based on multiple
scenarios, which is a set of rules and state-transitions.

The details of behaviors of each type of agents are as follows:

%%----------------------------------------------------------------------
[.] Selfish Agents

Selfish agents behaves only based on their own sensing information.
So, the agents do not take care about messages from other agents.

[..] Building Scenario

        If the agent is in a building, then it tries to evacuate from
        the building.

        After for a while (10 minutes) after the evacuation, if the building
        looks safe, the agent try to go back into the building
        to pick-up important things in a certain possibility (20%).

[..] Refuge Scenario

        Do nothing for a while (10 minutes) in a state of shock.

        If the agent can see a refuge, then move to the refuge.

        If the agent knows the direction of refuge, then move toward the
        direction.

        If the agent does not know the refuge, then try blind-search.

        When the agent arrives to the refuge, stay there until end of the
        simulation.

[..] Avoiding-Fire Scenario

        If a fire is near of the agent (within 5m), then
        try to escape from the fire.

[..] Looking-Fire Scenario

        Do nothing for a while (10 minutes) in a state of shock.

        If a fire is relatively near of the agent (5m to 20m), then
        stay there for a while (10 minutes) in a certain possibility (50%).

[..] Cry-Help Scenario

        If the agent is buried, then cry "help!" in a certain interval
        (once in 3 minutes.)
        The syntax of the message is as follows.

%%----------------------------------------------------------------------
[.] Obedient Agents

Obedient agents have a behavior to follow requests by rescue agents
in addition to the selfish agents.

[..] Obey Scenario

        Do nothing for a while (10 minutes) in a state of shock.

        When a rescue agent say a request message to move,
        then the civilian agent tries to obey the move request.
        The rescue agent can specify the direction of the move
        by roads, nodes (crossings), and refuges in sight of the
        civilian agent.
        The syntax of the message is as follows.

%%----------------------------------------------------------------------
[.] Volunteer Agents

Volunteer agents have a behavior to inform a rescue agents
about the location where they heard "help" messages.

[..] Inform-help Scenario

        Do nothing for a while (10 minutes) in a state of shock.

        When the agent hear "help" message, it memories
        the current location.

        When the agent meets a rescue agent, then it says
        the location of the message.

        The agent stop to inform after informing N times (N = 2)
        or a certain duration (120 minutes).

%%======================================================================
[.] Syntax of Message

[..] help

        (request :sender (agent :id 100)
                 :receiver (agent :tid T1)
                 :content (do :action (help)
                              :object (agent :id 100)))

        (request :sender (agent :id 100)
                 :content (do :action (help)
                              :object (agent :id 100)))

[..] request to move

        (request :sender (agent :id 100)
                 :receiver (agent :id 200)
                 :content (do :subject (agent :id 200)
                              :action (move)
                              :destination LOC))
        where
                LOC ::= (road :from 150 :to 250)
                        | (node :id 150)
                        | (refuge :id 300)

[..] inform the location of help

        (inform :sender (agent :id 100)
                :receiver (agent :id 200)
                :content (do :subject (agent :id 100)
                             :action (hear)
                             :content (help)
                             :location LOC
                             :time 1200))

                LOC ::= (road :from 150 :to 250)
                        | (node :id 150)
                        | (building :id 300)

----------------------------------------------------------------------

                        NODA Itsuki, Dr. Eng. <I.Noda@aist.go.jp>
                        Senior Research Scientist
                        Cyber Assist Reseach Center
                        National Institute of
                        Advanced Industrial Science and Technology

                        2-41-6 Aomi, Koto-ku, Tokyo 135-0064, JAPAN
                        Tel. +81-3-3599-8296 Fax. +81-3-5530-2067



This archive was generated by hypermail 2.1.4 : Sun 22 Sep 2002 - 18:52:58 GMT