DAMN: A Distributed Architecture For Mobile Navigation: Julio K. Rosenblatt
DAMN: A Distributed Architecture For Mobile Navigation: Julio K. Rosenblatt
DAMN: A Distributed Architecture For Mobile Navigation: Julio K. Rosenblatt
Julio K. Rosenblatt
Robotics Institute
Carnegie Mellon University
Pittsburgh, PA 15213
jkr@cmu.edu
Abstract
An architecture is presented in which distributed task- to reason about the systems own intentions and goals.
achieving modules, or behaviors, cooperatively determine a Hierarchical approaches allow slower abstract reasoning at
mobile robots path by voting for each of various possible
the higher levels and faster numerical computations at the
actions. An arbiter then performs command fusion and selects
that action which best satisfies the prioritized goals of the lower levels, thus allowing varying trade-offs between
system, as expressed by these votes, without the need to responsiveness and optimality as appropriate at each level
average commands. Command fusion allows multiple goals (Payton, 1986; Albus, McCain and Lumia, 1987). While
and constraints to be considered simultaneously. Examples of such an approach provides aspects of both deliberative
implemented systems are given, and future research directions
planning and reactive control, the top-down nature of
in command fusion are discussed.
hierarchical structures tends to overly restrict the lower
Keywords: mobile robots, distributed architecture, behaviors, levels (Payton, Rosenblatt and Keirsey, 1990). In
voting, arbitration, command fusion hierarchical architectures, each layer controls the layer
beneath it and assumes that its commands will be executed
as expected. Since expectations are not always met, there is a
Introduction
need to monitor the progress of desired actions and to report
In order to function in unstructured, unknown, or dynamic failures as they occur (Simmons, Lin and Fedor, 1990). In an
environments, a mobile robot must be able to perceive its unstructured, unknown, or dynamic environment, this
surroundings and generate actions that are appropriate for approach introduces complexities and inefficiencies which
that environment and for the goals of the robotic system. could be avoided if higher level modules participated in the
Mobile robots need to combine information from several decision-making process without assuming that their
different sources. For example, the CMU Navlab vehicles commands will be strictly followed.
are equipped with sensors such as video cameras, laser range Rather than imposing a top-down structure to achieve this
finders, sonars, and inertial navigation systems, which are desired symbiosis of deliberative and reactive elements, the
variously used by subsystems that follow roads, track paths, Distributed Architecture for Mobile Navigation takes an
avoid obstacles and rough terrain, seek goals, and perform approach where multiple modules concurrently share control
teleoperation. Because the raw sensor data and the internal of the robot by sending votes to be combined rather than
representations used by these subsystems tend to vary commands to be selected and executed (Rosenblatt, 1995;
widely, especially when these modules have been developed Rosenblatt and Thorpe, 1995).
independently, combining them into one coherent system The Distributed Architecture for Mobile Navigation has
which combines all their capabilities has proven to be very been successfully used to integrate the various subsystems
difficult. mentioned above, thus providing systems that perform tasks
To function effectively, an architectural framework for such as road following, cross-country navigation, and
these sensing and reasoning processes must be imposed to teleoperation while avoiding obstacles and meeting mission
provide a structure with which the system may be developed, objectives. In addition to its use on the CMU Navlab
tested, debugged, and understood. However, the architecture vehicles, DAMN has also been used at Martin Marietta,
should serve as an aid, not a burden, in the integration of Hughes Research Labs, and the Georgia Institute of
modules that have been developed independently, so it must Technology.
not be overly restrictive. It must allow for purposeful goal-
oriented behavior yet retain the ability to respond to
potentially dangerous situations in real-time while The Distributed Architecture for
maintaining enough speed to be useful. Mobile Navigation
The earliest work in robot control architectures attempted Deliberative planning and reactive control are equally
to reason by manipulating abstract symbols using only pure important for mobile robot navigation; when used
logic (Nilsson, 1984). The limitations of this top-down AI appropriately, each complements the other and compensates
approach led to a new generation of architectures designed in for the others deficiencies. Reactive components provide
a bottom-up fashion to provide greater reactivity to the the basic capabilities which enable the robot to achieve low-
robots surroundings, but sacrificed generality and the ability level tasks without injury to itself or its environment, while
deliberative components provide the ability to achieve while an attempt is made to keep the perception and
higher-level goals and to avoid mistakes which could lead to planning components of a behavior as simple as possible
inefficiencies or even mission failure. But rather than without sacrificing dependability, they can and often do
imposing an hierarchical structure to achieve this symbiosis, maintain internal representations of the world. Brooks
the Distributed Architecture for Mobile Navigation (DAMN) (1993) has argued that the world is its own best model,
takes an approach where multiple modules concurrently but this assumes that the vehicles sensors and the
share control of the robot. In order to achieve this, a scheme algorithms which process them can not benefit from
is used where each module votes for or against various evidence combination between consecutive scenes. In
alternatives in the command space based on geometric addition, disallowing the use of internal representations
reasoning, without regard for the level of planning involved. requires that all environmental features of immediate
Figure 1 shows the organization of the DAMN interest be visible to the vehicle sensors at all times; thus
architecture, in which individual behaviors such as road adding unnecessary constraints and reducing the flexibility
following or obstacle avoidance send votes to the command of the overall vehicle system
arbitration module; these inputs are combined and the The DAMN architecture is designed to provide the basic
resulting command is sent to the vehicle controller. Each capabilities essential to any mobile robot system, or first
action-producing module, or behavior, is responsible for a level of competence in the parlance of the Subsumption
particular aspect of vehicle control or for achieving some Architecture. In DAMN, this consists of safety behaviors
particular task; it operates asynchronously and in parallel which limit turn and speed to avoid vehicle tip-over or
with other behaviors, sending its outputs to the arbiter at wheel slippage, obstacle avoidance behaviors to prevent
whatever rate is appropriate for that particular function. Each collisions, as well as various auxiliary behaviors (see
behavior is assigned a weight reflecting its relative priority DAMN Behaviors section). As new functions are needed,
in controlling the vehicle. A mode manager may also be used additional behaviors can be added to the system without
to vary these weights during the course of a mission based on any need for modification to the previously included
knowledge of which behaviors would be most relevant and behaviors, thus preserving their established functionality.
reliable in a given situation. Since both deliberative and reflexive modules are
DAMN is a behavior-based architecture similar in some needed, DAMN is designed so that behaviors can issue
regards to reactive systems such as the Subsumption votes at any rate; for example, one behavior may operate
Architecture (Brooks, 1986). In contrast to more traditional reflexively at 10 Hz, another may maintain some local
centralized AI planners that build a centralized world model information and operate at 1 Hz, while yet another module
and plan an optimal path through it, a behavior-based may plan optimal paths in a global map and issue votes at
architecture consists of specialized task-achieving modules a rate of 0.1 Hz. The use of distributed shared control
that operate independently and are responsible for only a allows multiple levels of planning to be used in decision-
very narrow portion of vehicle control, thus avoiding the making without the need for an hierarchical structure.
need for sensor fusion. A distributed architecture has several However, higher-level reasoning modules may still exert
advantages over a centralized one, including greater meta-level control within DAMN by modifying the voting
reactivity, flexibility, and robustness (Payton, Rosenblatt weights assigned to behaviors and thus controlling the
and Keirsey, 1990). However, one important distinction degree to which each behavior may influence the systems
between this system and purely reactive systems is that, decision-making process and thus the robots actions.
FOLLOW MAINTAIN
ROAD HEADING
-0.125 0 +0.125
E
vehicle path D
A BC obstacles
Figure 9: Vehicle path and corresponding votes over time, and vote distributions at five specified locations.
Figure 9 illustrates the way the DAMN arbiter combined votes are still at a maximum for a left turn because of the
outputs from the behaviors. The first section of the figure greater weight of the obstacle avoidance behaviors votes,
shows the path of the vehicle as it travels around a set of and so the arbiter continues to steer the vehicle well clear of
obstacle points, and the distribution of votes for each of the the obstacles.
behaviors and for the arbiter along that path. The horizontal By the time the vehicle has reached point D, it is just
axis is time, with the total length of the sequence being 30 passing the obstacles, so that the obstacle avoidance
seconds. For each module, the vertical axis is the set of turn behavior is now only disallowing extreme right or left turns
choices from a hard left to a hard right turn. The votes were because of field of view constraints. The goal behavior is
sampled every 200ms for display purposes. The votes are now able to have more influence over the chosen turn
displayed as shaded pixels, with the brightest pixels direction, and a right turn is now executed so that the desired
corresponding to the highest possible vote of 1.0 and the vehicle heading is restored. Note that between points C and
black pixels corresponding to the lowest possible vote of - D, there is a transition period where the turn radius chosen
1.0. In addition to the raw votes from the arbiter, the figure by the arbiter is neither the hard left favored by the obstacle
shows an enhanced display of the arbiters distribution of avoidance behavior nor the medium right favored by the goal
votes, obtained by normalizing the pixel values using the behavior. Instead, as turns other than hard left become
actual minimum and maximum values at each time slot acceptable to the obstacle avoidance behavior, and as the
instead of the extreme possible values. The enhanced arbiter distribution of votes from the goal behavior shift further to
display is included to facilitate the visual interpretation of the right, the vehicle is commanded to make ever softer left
the vote distribution only and was not used for driving the turns, and eventually turns to the right. As can be seen in the
vehicle. In addition to the vote distribution, Figure 9 also graph of the commanded turn radius in Figure 9, rather than
includes a graph of the commanded turn radius over time; abruptly switching modes from avoiding obstacles to
the commanded turning radius is derived from the maximum following a heading, the transition proceeds smoothly and
of the vote distribution of the arbiter, as described in the steadily as the situation gradually changes.
Turn Arbiter section. Finally, at point E, the vehicle has completely cleared the
Five points of interest along the vehicle path, labeled as A obstacles and they are no longer in the local map, so that the
through E, are shown in greater detail by the five graphs that votes from the obstacle avoidance behavior are mostly +1.
follow in Figure 9. Each graph depicts the votes issued for The goal behavior now dominates completely and a right
each turn choice by the obstacle avoidance and goal turn is commanded. Through the interaction of the avoid
behaviors, as well as the weighted sum of these votes as obstacles and goal behaviors, the vehicle was thus able to
computed by the arbiter. The horizontal axis of each graph successfully circumvent an obstacle and regain its desired
shows the possible turn radius choices encoded from -8 heading. This simple experiment shows that the arbiter
meters for hard left to +8 meters for hard right (curvature and combines the preferred commands from different behaviors
turn radius are multiplicative inverses). The sequence of five in an efficient and natural way.
points selected is typical of a path around a single obstacle.
At point A, the obstacle is first reported and the obstacle
avoidance behavior generates high votes for turning left to Future Work
go around the obstacle, and inhibits right turns with negative DAMN has proven to be very effective as an architecture
votes, as shown by the solid line in the graph. At the same which greatly facilitates the integration of a wide variety of
time, the goal behaviors vote distribution is relatively flat different vehicle navigation subsystems; however, as
around the straight direction since the vehicle is currently DAMN is used for increasingly complex tasks where many
headed in the desired direction; this is shown by the dashed behaviors may be issuing votes concurrently, there will be a
line. Because of the small relative weight of the goal greater need to have the semantics of the voting process
behavior, the combined vote distribution in the arbiter, defined more carefully. By explicitly representing and
shown as a thicker solid line, is dominated by the votes reasoning about uncertainty within the decision-making
received from the obstacle avoidance behavior; a left turn is processes, a system can be created whose effects are well-
therefore commanded. At point B, the obstacle is still close defined and well-behaved.
to the vehicle and the votes distributions are similar to the We have decided to pursue utility theory as a means of
ones at A, thus maintaining the vehicle to the left of the defining the semantics of the voting and arbitration
obstacle. processes. Because we are attempting to decide which
At point C, the obstacle avoidance behavior is still voting among a set of possible actions to take, it is natural to make
in favor of a sharp left turn, but the votes for the softer left judgments on the usefulness of each action based on its
turns is now not as low as it was at A or B, since the vehicle consequences. If we assign a utility measure U(c) for each
is now clearing the obstacles. At the same time, the goal possible consequence of an action, then the expected utility
behavior is starting to shift its votes towards turning right in for an action a is:
order to bring the vehicle back to the target. The summed
U(a) = U(c) P(c a, e) levels of competence have been implemented in DAMN thus
far, as shown in Figure 10. These levels of competence are
c
where P(c|a,e) is the probability distribution of the convenient for describing the incremental manner in which
consequence configuration c, conditioned upon selecting the systems capabilities evolve; however, it is important to
action a and observing evidence e (Pearl, 1988). Thus, if we note that all behaviors co-exist at the same level of planning.
can define these utilities and probabilities, we can then apply The importance of a behaviors decisions is reflected by the
the Maximum Expected Utility (MEU) criterion to select the weighting factor for its votes, and is in no way affected by
optimal action based on our current information. the level of competence in which it is described.
If utility theory is to be applied to the problem of evidence
combination and action selection for mobile navigation
tasks, a means for defining the utility functions must be GOALS
provided. Behaviors are defined in order to achieve some
task, so it is fair to assume that there must be at least an Subgoals
implicit measure of goodness or utility with respect to that Gradient Fields
task. For example, an obstacle avoidance behaviors task is ACTION D*
to maximize distance to obstacles, so that the distance from
the vehicle to the nearest obstacle could be used as a measure Road Following
of goodness. Likewise, proximity to the current goal could Cross-Country
be used for the goal-based behaviors, as proximity to the SAFETY Teleoperation
center of a road (or lane) could be used by road following
modules. Vehicle Dynamics
We will also be investigating command fusion using a Obstacle Avoidance
local map for turn and speed arbitration, as was done for the
field of regard arbiter. This will allow the arbiter to ensure Auxiliary
consistency in the voting process by transforming votes as
the vehicle moves. This will also allow behaviors to vote on Figure 10: Evolutionary system development in DAMN
where to travel rather than how to steer; however,
The safety behaviors are used as a first level of
complications due to the non-holonomic constraints of the
competence upon which other levels can be added. The
vehicle will need to be addressed.
second level of competence, Action, has been implemented
Another issue that needs to be addressed is the coupling
using road following, cross-country navigation, and
between turn and speed commands. Currently, the turn and
teleoperation behaviors; they have all been run together with
speed arbiters operate independently. Turn behaviors can use
the obstacle avoidance behavior to provide various forms of
vehicle speed as one of their inputs and vice versa; however,
generating purposeful action while maintaining safety
there is currently no mechanism which allows behaviors to
(Thorpe et al, 1991). The third level of competence is
vote for a combination of turn and speed. Research is
comprised of the various map-based goal-seeking behaviors.
ongoing to determine a command representation which
Cross-country behaviors have been combined with goal-
allows both coupled and independent voting, and is still
oriented behaviors to produce directed off-road navigation
efficient enough for real-time purposes.
(Keirsey, Payton and Rosenblatt, 1988; Stentz, 1993).
The scenario described in the Experimental Results
Conclusion section shows that a reactive architecture is capable of
navigating cross-country terrain while pursuing mission
DAMN is designed so that various behaviors can be easily objectives such as goal locations. The reactive nature of the
added or removed from the system, depending on the current system is possible because the perception module simply
task at hand. Although the modules described in the DAMN produces lists of binary obstacles as needed by the
Behaviors section all use very different paradigms and navigation system. If the output of the perception system
representations, it has been relatively straightforward to were instead a detailed geometric model of the terrain, then
integrate each and every one of them into the framework of planning would require significantly more computation, thus
DAMN. Sensor fusion is not necessary since the command precluding the use of a reactive approach.
fusion process in DAMN preserves the information that is The current design of DAMN, with the arbiter taking
critical to decision-making, yielding the capability to inputs from a set of specialized behaviors, is flexible enough
concurrently satisfy multiple objectives without the need for to allow for a variety of other behaviors to be combined or
centralized bottlenecks. All of the behaviors described have substituted. In addition to its use on the CMU Navlab
been used in conjunction with each other in various vehicles, DAMN has also been used at Martin Marietta (now
configurations, yielding systems that were more capable Lockheed Martin), Hughes Research Labs, and Georgia
than they would have been otherwise. Conceptually, three Institute of Technology. Like other behavior-based
architectures, it avoids sensory and decision-making not be reconciled, then one of the two must be chosen. Meta-
bottlenecks and is therefore able to respond in real-time to level control may be exerted so that behaviors with mutually
external events; however, it imposes no constraints on the exclusive goals do not operate simultaneously; however,
nature of the information or the processing within a plans are not used in a top-down fashion but rather as a
behavior, only on the interface between the behavior and the source of advice, so that the flexibility of the reactive level is
command arbiter. Furthermore, the behaviors are not subject preserved.
to any timing constraints; each behavior operates The hypothesis proposed here is that centralized
asynchronously and in parallel. arbitration of votes from distributed, independent decision-
Non-reactive behaviors may use plans to achieve goals making processes provides coherent, rational, goal-directed
and coordinate with other agents; thus, like centralized or behavior while preserving real-time responsiveness to its
hierarchical architectures, DAMN is able to assimilate and immediate physical environment.
use high-level information. Finally, unlike architectures with
2. Interfaces-- How can human expertise be easily
prioritized modules, DAMNs vote arbitration scheme
brought into an agents decisions? Will the agent need to
allows multiple goals and constraints to be fulfilled
translate natural language internally before it can interact
simultaneously, thus providing goal-oriented satisficing
with the world?
behavior without sacrificing real-time reactiveness.
Natural language is not needed for human-computer
interaction, and in many domains would actually be more
Acknowledgments difficult for an operator to use than other modes of
The UGV project is supported by ARPA under contracts interaction. For example geometric information or mission
DACA76-89-C-0014 and DAAE07-90-C-R059, and by the goals can be more easily specified via a Graphical User
National Science Foundation under NSF Contract BCS- Interface (GUI), and direct control of the robot can be better
9120655. Julio Rosenblatt is supported by a Hughes effected through the use of a joystick, for example.
Research Fellowship. The author would like to acknowledge In DAMN, the user may specify which behaviors are to be
the cooperation in vehicle experimentation of Martial Hebert active and what their relative weights should be, either a
and Dirk Langer, the support and guidance of Dave Payton priori or during run-time via a GUI, thus providing meta-
and Chuck Thorpe, as well as the shared efforts and level control. Behaviors that support teleoperation have also
technical support of the Navlab group at Carnegie Mellon been implemented, so that the user may specify the robot
University. path via waypoints in a video image, by using a joystick, or
by typing simple keystroke commands. As with all other
behaviors, the users input is expressed as votes which are
Appendix 1: Responses to issues raised then combined with the votes of other behaviors and
1. Coordination-- How should the agent arbitrate/ arbitrated.
coordinate/cooperate its behaviors and actions? Is there a 3. Representation-- How much internal representation of
need for central behavior coordination? knowledge and skills is needed? How should the agent
Centralized architectures provide the ability to coordinate, in organize and represent its internal knowledge and skills? Is
a coherent fashion, multiple goals and constraints within a more than one representational formalism needed?
complex environment, while decentralized architectures The DAMN system only requires votes from each behavior,
offer the advantages of reactivity, flexibility, and robustness. so that each module is free to use whatever representation
The DAMN architecture takes the position that some and paradigm best serves for its particular task. However, the
centralization is needed, but the right level must be chosen selection of which behaviors should be active at any given
so that it does not create a bottleneck, and the interfaces must time is currently done in a fairly rudimentary way; an
be defined so as to avoid being overly restrictive. explicit representation of each behaviors skills would allow
Rather than imposing an hierarchical structure or using a for more dynamic and flexible responses to unforeseen
prioritized behavior-based systems to effect a traded control situations, and may also facilitate learning.
system, the Distributed Architecture for Mobile Navigation
takes a shared control approach where several modules 4. Structural-- How should the computational capabilities
concurrently have some responsibility for control of the of an agent be divided, structured, and interconnected? How
robot. In order to achieve this, a common interface is much does each level/component of an agent architecture
established so that modules can communicate their have to know about the other levels/components?
intentions without regard for the level of planning involved. The capabilities of an agent should be divided up as finely as
Votes from all behaviors are used in determining what the is practical among task-achieving behaviors which operate
next action should be, so that compromises are made when asynchronously. They should be completely modular and
possible; however, if two behaviors suggest actions that can independent, so that new capabilities may be added in an
evolutionary fashion without a need to disrupt or modify for other behaviors such as goal-seeking.
existing functionality. Another possibility for a normalized utility measure is
Ideally, higher level components that exert meta-level analogous to the one used by the D* behavior described in
control should only need to know which skills are provided the Goal-Directed Behaviors section. After computing gb(c)
by the lower levels, without any knowledge of how those for each possible consequence c, we determine the
skills are implemented whatsoever. maximum and minimum values gmax and gmin, and use the
following measure:
5. Performance-- What types of performance goals and
metrics can realistically be used for agents operating in U b(c) = ( g b(c) g min ) ( g max g min )
dynamic, uncertain, and even actively hostile environments?
While this measure has the desirable property of being
Objective quantitative evaluation of mobile robot systems
bounded by the interval [0,1], it has the potentially
has historically proven to be very difficult, and the task is
undesirable property that the range of utility values will
doubly difficult when attempting to compare entire
always completely span that interval. Thus, for example, if
architectures because there are so many degrees of freedom
all potential actions have exactly the same utility except for
in the design and implementation of a mobile robot system.
one that has a slightly higher value, then the normalized
The most straightforward means of evaluation is to attempt
utility values will be 1 for that one action and 0 for all the
to define measures of the quality of the path which a vehicle
rest.
has traversed under autonomous control. The measures I
suggest within the body of the paper are the paths utility,
Path Smoothness Another general measure of the quality of
smoothness, and accuracy:
the path is the smoothness with which it is controlled.
Integrating the squared derivative of curvature along the
Utility Measures One means of evaluating architectures is
vehicles actual path provides a measure of smoothness that
to use measures of goodness like those used to define the
can be applied to the architecture (Kamada, Naoi and Goto,
utility of each action for the various behaviors. Although
1990), and the derivative of acceleration, or jerk, provides a
evaluating the performance based on the utility measures
measure of smoothness in the vehicles speed as well as
defined in the Future Work section would appear to be
steering. Integrating the squared vehicle curvature along the
circular, they are the best measures available. Furthermore,
vehicles path may also be useful as a measure of
their evaluation is not vacuous given that uncertainty exists
smoothness, which reflects consistency in decision-making
in all aspects of a system: in the declarative knowledge,
and the ability to anticipate events.
sensed information, procedural knowledge, and in the effects
of its actions and the actions of other agents; thus the
Path Accuracy The accuracy of the path, i.e. the extent to
expected utility will in general not agree with the actual
which the commanded path matches the actual path taken by
utility that can be measured for those actions that are taken.
the vehicle, can also provide an important means of
Let the goodness value for behavior b at a state s be
evaluating an architecture and its planning subsystems. Path
computed by the function gb(s). Then one possible measure
accuracy can be measured by integrating the squared error
for the utility, with respect to behavior b, of consequence c is
between estimated and actual vehicle poses. If the system
the change in this measure of goodness with respect to the
commands trajectories which are not physically realizable,
current state s0:
the actual path taken may deviate significantly. Likewise, if
U b(c) = g b = g b(c) g b(s 0) large latencies exist in the system and are not adequately
compensated for, the commanded path will only begin to be
However, the value of this measure can be arbitrarily executed well after the system intended it.
large, so it must be normalized and assigned a consistent
6. Psychology-- Why should we build agents that mimic
semantic meaning for all behaviors. One means of
anthropomorphic functionalities? How far can/should we
normalization would be to divide by the larger of the two
draw metaphoric similarities to human/animal psychology?
goodness measures:
How much should memory organization depend on human/
U b(c) = g b Max(g b(c), g b(s 0)) animal psychology?
If the goal of the system is to produce an efficient means of
This would bound the absolute value of Ub(c) to be no
controlling artificially constructed agents, as is the case with
greater than 1. It would also have the effect that, for the same
DAMN, then existing systems, i.e. humans and other
gb, the utility of an action would be greater when the animals, should serve merely as an inspiration, never as a
goodness measure is small than when it is large. This
constraint. Furthermore, good software engineering practices
appears to be desirable for behaviors such as obstacle
dictates that robotic systems must evolve in a more orderly
avoidance whose importance should grow as the situation
fashion than their biological counterparts.
worsens; however, the suitability of this measure is less clear
7. Simulation-- What, if any, role can advanced There currently is no learning within the DAMN
simulation technology play in developing and verifying architecture. The most important set of parameters in
modules and/or systems? Can we have standard virtual DAMN is the behavior weights. While setting these weights
components/test environments that everybody trusts and can for a small number of behaviors has been simple, doing so
play a role in comparing systems to each other? How far can for larger systems with more complex interactions could be
development of modules profitably proceed before they problematic. Reinforcement learning would seem to be a
should be grounded in a working system? natural means of acquiring information regarding the utility
of various actions in different circumstances, and the
Simulation technology can be a very important tool for
relevance and usefulness of each behavior in particular
developing systems which are eventually realized in a
situations might also be learned through techniques such as
physical implementation, but the former must not replace the
genetic algorithms. The mode manager changes behavior
latter. In my experiences in developing navigation systems,
weights according to a precomputed schedule, but adaptive
simulation has often played a key role in their success.
techniques such as those in (Maes, 1991) are necessary for
Simulation provides a means to develop and extensively test
dealing with a wider variety of situations and for fully
the system with minimal resources and without risking
autonomous control.
physical damage to a robot or its surroundings. Subsequent
testing on a real robot then provides not only a means of
validating the system, but also a means of discovering the References
flaws in the simulation so that its fidelity may be improved
for future use. Albus, J., McCain, H. and Lumia, R. (1987) NASA/NBS
Any attempt to standardize the virtual components of a Standard Reference Model for Telerobot Control System
robotic system would be premature at this point, as there is Architecture (NASREM), NBS Tech. Note 1235,
still much debate as to what form the decomposition of the Gaithersburg, MD.
architecture should take. Also, different needs in terms of Arkin, R. (1987) Motor Schema Based Navigation for a
complexity, responsiveness, and optimality will require Mobile Robot: An Approach to Programming by Behavior.
different architectures which make different trade-offs. Proceedings of the International Conference on Robotics
Standardized test environments, however, are something and Automation, Atlanta, GA, 1993.
that is sorely needed so that architectures may be compared
to each other in a systematic way. Again, different Brooks, R. (1986) A Robust Layered Control System for a
environments with different demands in complexity, Mobile Robot. IEEE Journal of Robotics and Automation
responsiveness, and optimality will be needed to highlight vol. RA-2, no. 1, pp. 14-23, April 1986.
the relative strengths and weaknesses of each architecture in Brooks, R. (1993) Intelligence Without Reason. Proceedings
various domains. While a real robot provides the best of the International Joint Conference on Artificial
testbed, simulation can also play an important role because Intelligence, Chambery, France, August 1993.
of its accessibility, its low cost, and because it provides the
ability to record every aspect of a trial for analysis and for Daily, M., Harris, J., Keirsey, D., Olin, K., Payton, D., Reiser,
reproducing results. K., Rosenblatt, J., Tseng, D. and Wong, V. (1988)
Autonomous Cross-Country Navigation with the ALV.
8. Learning-- How can a given architecture support IEEE Conference on Robotics and Automation,
learning? How can knowledge and skills be moved between Philadelphia, PA, April, 1988; (also appears in DARPA
different layers of an agent architecture? Knowledge Based Planning Workshop, December, 1987
For the sake of generality, the higher levels of a robot pp 20-1 to 20-10).
architecture tend to use knowledge-based systems containing Kamada, H., Naoi, S. and Goto, T. (1990) A Compact
explicit representations; thus, given a sufficient domain Navigation System Using Image Processing and Fuzzy
model, these levels may be amenable to techniques such as Control. Proceedings of IEEE Southeastcon, New Orleans,
explanation-based learning. For the sake of efficiency, the April 1-4, 1990
lower levels of an architecture tend to use compiled routines
and implicit representations, and therefore the various forms Kay, J., Thorpe, C. (1993) STRIPE Supervised Telerobotics
of learning via gradient descent are more applicable. Using Incremental Polygonal Earth Geometry.
Knowledge learned at the higher levels may be compiled via Proceedings of Intelligent Autonomous Systems
mechanisms such as chunking, and eventually migrated to Conference, Pittsburgh, PA, February 15-18, 1993, IOS
the lower levels for repeated use. Press.
Keirsey, D.M., Payton, D.W. and Rosenblatt, J.K. (1988) Rosenblatt, J. (1995) DAMN: A Distributed Architecture for
Autonomous Navigation in Cross-Country Terrain. Mobile Navigation. Proceedings of AAAI Spring
Proceedings of Image Understanding Workshop, Symposium on Lessons Learned from Implemented
Cambridge, MA, April, 1988. Software Architectures for Physical Agents, H. Hexmoor
and D. Kortenkamp (Eds.), Menlo Park, CA: AAAI Press.
Langer, D., Rosenblatt, J. and. Hebert, M. (1994) A
Behavior-Based System For Off-Road Navigation. IEEE Rosenblatt, J. and Payton, D. (1989) A Fine-Grained
Journal of Robotics and Automation, vol. 10, no. 6, pp. Alternative to the Subsumption Architecture for Mobile
776-782, December 1994; (also appears as An Integrated Robot Control. Proceedings of the IEEE/INNS
System For Autonomous Off-Road Navigation. International Joint Conference on Neural Networks,
Proceedings of the IEEE International Conference on Washington DC, vol. 2, pp. 317-324, June 1989; (also
Robotics and Automation, San Diego, May 1994). appears in 1989 AAAI Spring Symposium Series).
Lee, C. (1990) Fuzzy Logic in Control Systems: Fuzzy Logic Rosenblatt, J. and Thorpe, C. (1995) Combining Multiple
Controller -- Parts I and II. IEEE Transactions on Systems, Goals in a Behavior-Based Architecture. Proceedings of
Man and Cybernetics, Vol 20 No 2, March/April 1990. International Conference on Intelligent Robots and
Systems (IROS), Pittsburgh, PA, August 7-9, 1995.
Maes, P. (1991) A Bottom-Up Mechanism for Action
Selection in an Artificial Creature. Adaptive Behavior: Rosenschein, S. and Kaelbling, L. (1986) The Synthesis of
From Animals to Animats, edited by S. Wilson and J-A Digital Machines with Provable Epistemic Properties.
Meijer, MIT Press. Proceedings of Theoretical Aspects of Reasoning about
Knowledge. pp 83-98.
Nilsson, N. (1980) Principles of Artificial Intelligence. Tioga
Pub. Co., Palo Alto, Calif. Simmons, R., Lin, L.J., Fedor, C. (1990) Autonomous Task
Control for Mobile Robots. Proceedings of IEEE
Nilsson, N. (1984) Shakey the Robot, SRI Tech. Note 323,
Symposium on Intelligent Control, Philadelphia, PA,
Menlo Park, Calif.
September 1990.
Payton, D. (1986) An Architecture for Reflexive
Stentz, A. (1993) Optimal and Efficient Path Planning for
Autonomous Vehicle Control. IEEE International
Unknown and Dynamic Environments. Carnegie-Mellon
Conference on Robotics and Automation, San Francisco,
Technical Report CMU-RI-TR-93-20, Pittsburgh, PA.
CA, April 7-10, 1986, pp. 1838-1845.
Stentz, A. and Hebert, M. (1994) A Complete Navigation
Payton, D. (1990) Internalized Plans: A Representation for
System for Goal Acquisition in Unknown Environments.
Action Resources, Robotics and Autonomous Systems,
Carnegie-Mellon Technical Report CMU-RI-TR-94-7,
6(1), 1990, pp. 89-103. (Also in Designing Autonomous
Pittsburgh, PA.
Agents, ed. Pattie Maes, MIT Press, Cambridge, Mass.
1991, pp. 89-103.) Thorpe, C., Amidi, O., Gowdy, J., Hebert, M. and Pomerleau,
D. (1991) Integrating Position Measurement and Image
Payton, D., Rosenblatt, J. and Keirsey, D. (1990) Plan Guided
Understanding for Autonomous Vehicle Navigation.
Reaction. IEEE Transactions on Systems Man and
Proceedings of Workshop on High Precision Navigation,
Cybernetics, 20(6), pp. 1370-1382.
Springer-Verlag Publisher.
Payton, D., Keirsey, D., Kimble, D., Krozel, J. and
Yen, J. and Pfluger, N. (1992) A Fuzzy Logic Based Robot
Rosenblatt, J. (1993) Do Whatever Works: A Robust
Navigation System. Proceedings of AAAI Fall Symposium
Approach to Fault-Tolerant Autonomous Control. Journal
on Intelligent Applications of Artificial Intelligence to
of Applied Intelligence, Volume 3, pp 226-250.
Real-World Autonomous Mobile Robots, Boston, MA,
Pearl, J. (1988) Probabilistic Reasoning in Intelligent 1992.
Systems: Networks of Plausible Inference. Morgan
Zadeh, L. (1973) Outline of a New Approach to the Analysis
Kaufmann Publishers.
of Complex Systems and Decision Processes. IEEE
Pomerleau, D. (1992) Neural Network Perception for Mobile Transactions on Systems, Man and Cybernetics, Vol 3 No
Robot Guidance, Ph.D. dissertation, Carnegie-Mellon 1, January 1973.
Technical Report CMU-CS-92-115, Pittsburgh, PA.