Our new communication paradigm is situated within a team member architecture suitable for multiagent domains in which team members must act autonomously while working towards a common team goal. The team can synchronize ahead of time but while executing the task, communication is limited. Based on a standard agent architecture, our team member architecture allows agents to sense the environment, to reason about and select their actions, and to act in the real world. At team synchronization opportunities, the team also makes a locker-room agreement for use by all agents during periods of low communication.
An agent keeps track of three different types of state: the world state, the locker-room agreement, and the internal state. The agent also has two different types of behaviors: internal behaviors and external behaviors.
The world state reflects the agent's conception of the real world, both via its sensors and via the predicted effects of its actions. It is updated as a result of processed sensory information. It may also be updated according to the predicted effects of the external behavior module's chosen actions. The world state is directly accessible to both internal and external behaviors.
The locker-room agreement is set by the team when it is able to privately synchronize. It defines the flexible team structure as presented below as well as inter-agent communication protocols. The locker-room agreement may change periodically when the team is able to re-synchronize; however, it generally remains unchanged. The locker-room agreement is accessible only to internal behaviors.
The internal state stores the agent's internal variables. It may reflect previous and current world states, possibly as specified by the locker-room agreement.
The internal behaviors update the agent's internal state based on its current internal state, the world state, and the team's locker-room agreement. The external behaviors reference the world and internal states, sending commands to the actuators. The actions affect the real world, thus altering the agent's future percepts. External behaviors consider only the world and internal states, without direct access to the locker-room agreement.
Internal and external behaviors are similar in structure, as they are both sets of condition/action pairs where conditions are logical expressions over the inputs and actions are themselves behaviors. In both cases, a behavior is a directed acyclic graph (DAG) of arbitrary depth. The leaves of the DAGs are the behavior types' respective outputs: internal state changes for internal behaviors and action primitives for external behaviors.
Some internal state variables need to be devoted to communication. When an agent hears a message, it interprets it and updates the world state to reflect any information transmitted by the message. It also stores the content of the message as a special variable last-message. Furthermore, based on the locker-room agreement, an internal behavior then updates the internal state. If the message requires a response, three variables in the internal state are manipulated by an internal behavior: response, response-flag, and communicate-delay. response is the actual response that should be given by the agent as determined in part by the locker-room agreement. All three of these variables are then referenced by an external behavior to determine when a response should be given. For example one condition-action pair of the top-level external behavior might be: if (response-flag set and communicate-delay==0) then SAY(response).
Locker-room agreements can be used to eliminate or reduce the need for future communication, and they can also be used to increase communication reliability. For example, team members could agree upon a code number with which all messages should start in order to distinguish their messages from those of other teams in case other teams send similar messages on the single communication channel. They could also synchronize internal clocks if there is no globally accessible clock.