Re: [rescue:5532] Re: Proposals for RoboCupRescue 2003 regulations

From: Morimoto Takeshi (morimoto@takopen.cs.uec.ac.jp)
Date: Sat 12 Oct 2002 - 14:33:10 GMT

  • Next message: Mazda Ahmadi: "Re: [rescue:5532] Re: Proposals for RoboCupRescue 2003 regulations"

    Dear RoboCup Rescuers, and Sebastien,

    > The structure seems relly restrictive.

    We agree that our proposal II is very restrictive. It is important
    for us to discuss with a message definition, so we would like to
    counter with slightly modified another proposal, although, we do not
    back down on our proposal II.

    Of course, we understand that the deadline of proposal for the
    RoboCup2003 has already been over, and this alternative proposal may
    be rejected immediately. However, we think this kind of discussion
    will be fruitful for future RoboCupRescue. We will appreciate your
    comments.

    Definition of Messages --- Less Restrictive Version

    Differences of this proposal from the previous one are:
        - A message can specify its receiver, and
        - A message can contain a numeric value for arbitrary usage
          besides an ID.
    It is a major premise that this proposal does not change the current
    kernel.

    (1) A center agent can hear up to N sentences in a cycle, where
           N = 2 * (number of its platoon agents).
    So the center agent can play a more important role than before. To
    sum up,

                      | AK_TELL/SAY | AK_HEAR
        --------------+-------------+---------
        Platoon agent | 4 | 4
        Center agent | 4 | N

    (2) A sentence should conform to the following format:

        int id
        int msgSize
        char* msg

    which is not different from the current one of the AK_TELL/SAY's
    message for compatibility, but the contents of msg is limited
    definitely.

    (2-1) The id field must be the ID of the sender.

    (2-2) The msgSize and msg is ether one of:

        12rk format: {12, "rrrrrrrrrrkk"},
        14rkd format: {14, "rrrrrrrrrrkkdd"},
        22rki format: {22, "rrrrrrrrrrkkiiiiiiiiii"}, or
        24rkid format: {24, "rrrrrrrrrrkkiiiiiiiiiidd"}.

    where k's, i's, r's, and d's are digits from 0 to 9 (ASCII codes 0x30
    to 0x39).

    (2-2-1) Two digit number kk denotes the kind of sentence, which can be
    freely defined by the agent developer. So at most 100 kinds of
    sentences can be uttered in a team (maybe enough for the Version 0).
    The numbers 12, 14, 22, and 24 are integers denoting the message
    length (msgSize).

    (2-2-2) The ten digits number iiiiiiiiii denotes the ID of an object
    or an agent existing on the map. The kernel does not check the
    validity of the denoted ID at run time. However, we hope no one would
    represent something else by this ten digit number.

    (2-2-3) The ten digits number rrrrrrrrrr denotes zero or the ID of a
    receiver agent. Zero means the message is sent to unspecified
    receivers. The receiver ID may be used as the subject of the message.

    Each agent can decide either to hear or not by knowing the sender and
    receiver ID. Additionally, each agent does not need to forget the
    sender and receiver, even if the agent decides not to hear the
    message.

    Note that if the receiver denotes a different kind of platoon agent,
    the message told by an agent cannot be passed to the receiver
    directly, because there is no means for an agent to tell a different
    platoon agent directly. Moreover, civilian agents do not use the
    receiver ID (i.e. they must set zero to the receiver ID, and must not
    refer one), because it is unnatural that they know IDs of platoon
    agents.

    (2-2-4) Two digit number dd denotes the adjunct which can be freely
    used by agent developers. For example, dd may mean a time, a
    buriedness, an ID abbreviated through agent's negotiation.

    (3) The half of sentence kinds, that is, sentence kind from 0 to 49,
    are reserved for a common interagent language. The following is a
    tentative plan, where "ii" and "rr" are iiiiiiiiii and rrrrrrrrrr, and
    "d1"/"d2" is the first/second digit of the dd.

    kk sentence semantic
    -------------------------------------------------------
    00 There is a human at place[ii], whose buriedness is [dd].
        [rr], there is a human at place[ii], whose buriedness is [dd].
    01 Nobody is buried at place[ii].
        [rr], nobody is buried at place[ii].
    02 The fieryness of the building[ii] is [dd].
        [rr], the fieryness of the building[ii] is [dd].
    03 The road[ii] has [d1]/[d2] passable lines toward its HEAD/TAIL.
        [rr], the road[ii] has [d1]/[d2] passable lines toward its HEAD/TAIL.

    04 Go to place[ii].
        Agent[ii], go to place[ii].
    05 Get away from place[ii].
        Agent[ii], get away from place[ii].
    06 Rescue a human[ii]. == Help me.
        Agent[ii], rescue a human[ii].
    07 Rescue a human at place[ii] == Help me at place[ii].
        Agent[ii], rescue a human at place[ii].
    08 Load a human at place[ii].
        Agent[ii], load a human at place[ii].
    09 Load a human[ii].
        Agent[ii], load a human[ii].
    10 Extinguish the building[ii].
        Agent[ii], extinguish the building[ii].
    11 Clear the road[ii].
        Agent[ii], clear the road[ii].

    12 [rr] is at place[ii].
    13 [rr] are rescuing a human at place[ii].
    14 [rr] are rescuing a human[ii].
    15 [rr] are loading a human at place[ii].
    16 [rr] are loading a human[ii].
    17 [rr] are extinguishing the building[ii].
    18 [rr] are clearing the road[ii].

    19 [rr] will go to place[ii].
    20 [rr] will rescue a human at place[ii].
    21 [rr] will rescue a human[ii].
    22 [rr] will load a human at place[ii].
    23 [rr] will load a human[ii].
    24 [rr] will extinguish the building[ii].
    25 [rr] will clear the road[ii].

    26 [rr] have already rescued a human at place[ii].
    27 [rr] have already rescued a human[ii].
    28 [rr] have already loaded a human at place[ii].
    29 [rr] have already loaded a human[ii].

    [More to be added.]

    (4) We wish civilian agents to speak more kinds of sentences in the
    above syntax, for example:
        "There is an injured at ...",
        "The building ... is burning.",
        "The road ... is blocked.",
        "I loose my way.",
        "I am hungry." and other non-informative sentences etc.
    So civilian agents can play a more important role as information
    sources than before, but some information are not useful for search
    and rescue.

    --
    Prof. Ikuo Takeuchi,
    Takeshi Morimoto,
    Hiroki Endo
    The University of Electro-Communications, Japan
    


    This archive was generated by hypermail 2.1.4 : Sat 12 Oct 2002 - 15:09:57 GMT