• Aucun résultat trouvé

ALLIANCE: The Cooperative Robot Architecture

3.4 Overview of ALLIANCE

ALLIANCE addresses. Second, a control architecture must be developed that not only allows a robot team to complete its mission, but to complete it eciently. The enhanced cooperative architecture L-ALLIANCE, which is discussed in chapter 4, addresses this problem.

3.4 Overview of ALLIANCE

ALLIANCE is a fully distributed architecture for fault tolerant, heterogeneous robot cooperation that utilizes adaptive action selection to achieve cooperative control. Un-der this architecture, the robots possess a variety of high-leveltask-achieving functions that they can perform during a mission, and must at all times select an appropri-ate action based on the requirements of the mission, the activities of other robots, the current environmental conditions, and their own internal states. Adaptive action selection is achieved through the selsh interests of individual robots, modied by their analyses of the current and previous performance of other team members. The performanceof a robot is determined solely by how that robot aects the world, and is not dependent upon explicit, often articial skill metrics.

Adaptive action selection is facilitated in this architecture by designing the robots to be somewhat selsh and lazy. They are selsh in that they only do what they

\want"2 to do and what they \think" is in their own best interests, as determined by their motivations and the environment. The best interests of a robot are dened from the local point of view of that robot, not from some omniscient onlooker with a global view. These interests are dened very simply as the action(s) the robot is most motivated to perform at each point in time. The purpose of this approach is to maintain a purely distributed cooperative control scheme which aords an increased degree of robustness; since individual robots are always fully autonomous, they have the ability to perform useful actions even amidst the failure of other robots.

The robots in this architecture are lazy in the sense that, although they want certain tasks to be accomplished, they do not care if some other robot performs those tasks for them. For example, a baggage-handling robot may want both (1) the baggage to be removed from an airplane, and (2) the removed baggage to be placed on a cart. However, it is ne with this robot if another robot does one or both of

2Throughout this report, I use terms that seem to attribute intent, cognition, and a will to the robots designed under the ALLIANCE and L-ALLIANCE architectures | terms such as \think",

\want", \know", \believe", \decide", and \forget". These qualities are used solely to simplify the discussion and should be viewed strictly as characteristics imposed by an observer watching the behavior of the robots; they usually do not reect the internal organization of the robots. (See [Braitenberg, 1984] for an interesting discussion of this distinction.) The robots in ALLIANCE explicitly donotuse belief systems typical in many multi-agent systems.

these tasks, as long as the tasks get done. This characteristic prevents the needless waste of energy due to replication of eort.

In ALLIANCE, individual robots are designed using a behavior-based approach [Brooks, 1986]. Under the behavior-based construction, as shown in gure 3-1, a number of task-achieving behaviors are active simultaneously, each receiving sensory input and controlling some aspect of the actuator output. The lower-level behaviors, or competences, correspond to primitivesurvival behaviors such as obstacle avoidance, while the higher-level behaviors correspond to higher goals such as map building and exploring. The output of the lower-level behaviors can be suppressed or inhibited by the upper layers when the upper layers deem it necessary. When the output of one layer,L1, is inhibitedby another layer,L2,L1's output is prevented from reaching its destination. When layerL1's output issuppressedby LayerL2, not only isL1's output prevented from reaching its destination, but it is also replaced by an output fromL2. Within each layer of competence may be a number of simple modules interacting via inhibition and suppression to produce the desired behavior, as shown in gure 3-2. (In this and the previous gure, the small circles indicate either inhibition or suppression of the behavior outputs. When we want to distinguish between the two types of interaction, we place an \I" within the circle to indicate inhibition, and an

\S" to indicate suppression.) This approach has been used successfully in a number of robotic applications, several of which are described in [Brooks, 1990b].

Extensions to this approach are necessary, however, when a robot must select among a number of competing actions | actions which cannot be pursued in paral-lel. Unlike typical behavior-based approaches, ALLIANCE delineates severalbehavior sets that are either active as a group or hibernating. Figure 3-3 shows the general architecture of ALLIANCE and illustrates three such behavior sets. Each behavior set aij of a robot ri corresponds to those levels of competence required to perform some high-level task-achieving function. Because of the alternative goals that may be pursued by the robots, the robots must have some means of selecting the appropriate behavior set to activate. This action selection is controlled through the use of moti-vational behaviors, each of which controls the activation of one behavior set. Due to conicting goals, only one behavior set should be active at any point in time. This restriction is implemented via cross-inhibition of behavior sets, represented by the arcs at the top of gure 3-3, in which the activation of one behavior set suppresses the activation of all other behavior sets. However, other lower-level competences such as collision avoidance may be continually active regardless of the high-level goal the robot is currently pursuing. Examples of this type of continually active competence are shown in gure 3-3 as layer 0, layer 1, and layer 2.

3.4. OVERVIEWOF ALLIANCE 33

Layer 3

Layer 2

Layer 1

Layer 0

Sensors Actuators

Figure 3-1: The organization of a typical behavior-based architecture. Each layer is responsible for some level of competence of the robot. For example, a lower layer (Layer 0) might provide obstacle avoidance capabilities, while an upper layer (Layer 3) might provide a map-building competence. The circles indicate inhibition or sup-pression of lower layer outputs by upper layers. Typically, either an \I" or an \S" is placed within each circle to distinguish between inhibition and suppression of outputs.

Module 0 Module 1 Module 2

Module 3 Module 4

Sensors Actuators

S0 S1 S2

A0 A1 Layer x

Figure 3-2: Within each layer of competence are usually several simple modules (dashed rectangles) interacting to produce the desired behavior. The circles indicate suppression or inhibition of module outputs.

3.4. OVERVIEWOF ALLIANCE 35

Layer 0 Layer 1 Layer 2 Motivational Behavior

Motivational Behavior

Motivational Behavior

Behavior Set 0

Behavior Set 1

Behavior Set 2

Sensors

Actuators Inter-Robot

Communi-cation

cross-inhibition

The ALLIANCE Architecture

Figure 3-3: The ALLIANCE architecture, implemented on each robot in the co-operative team, delineates several behavior sets, each of which correspond to some high-level task-achieving function. The robot must have some mechanism allowing it to choose which high-level function to activate; the primary mechanism providing this ability is the motivational behavior. Within each behavior set are a number of layers of competence organized like those shown in gure 3-1, and within each layer of competence are a number of simple interacting modules as shown in gure 3-2. The symbols in the current gure that connect the output of each motivational behavior with the output of its corresponding behavior set (vertical lines with short horizontal bars) indicate that a motivational behavior either allows all or none of the outputs of its behavior set to pass through to the robot's actuators. The non-bold, single-bordered rectangles correspond to individual layers of competence that are always active.