CMU Robotics Institute DAMN: The Distributed Archicture for Mobile Navigation

DAMN: The Distributed Archicture for Mobile Navigation

Investigators: Julio Rosenblatt, Chuck Thorpe

Table of Contents


The Distributed Architecture for Mobile Navigation (DAMN) is a behavior-based architecture similar in spirit to the Subsumption Architecture. In contrast to more traditional centralized AI planners that build a world model and plan an optimal path through it, a behavior-based architecture consists of specialized task-achieving modules that operate independently and are responsible for only a very narrow portion of vehicle control, thus avoiding the need for sensor fusion. A distributed architecture has several advantages over a centralized one, including greater reactivity, flexibility, and robustness. The figure below shows the organization of the DAMN system, in which individual behaviors such as road following and obstacle avoidance send steering or speed commands the command arbitration module which combines these inputs into a single steering direction and speed command. Within the framework of DAMN, behaviors provide the task-specific knowledge for controlling the vehicle. Each behavior runs completely independently and asynchronously, providing votes to its appropriate arbiter, each at its own rate and according to its own time constraints. The arbiter periodically combines all the latest commands from each behavior and issues a command to the vehicle controller.

In order to allow multiple considerations to affect vehicle actions concurrently, DAMN uses a scheme where each behavior votes for or against each of a set of possible vehicle actions. An arbiter then performs command fusion to select the most appropriate action. For example, vehicle commands such as steering turn radius are discretized into a fixed set of possible alternatives, and each behavior then votes for or against each command option, with varying weights reflecting the relative priority of the behaviors. The arbiter then computes a weighted sum of the votes it has received from each behavior, and the command choice with the highest value is selected and issued to the vehicle controller.

DAMN is designed so that various behaviors can be easily added or removed from the system, depending on the current task at hand. Behaviors that have been used include one that interfaces to the ALVINN road following system, to the GANESHA obstacle mapping system, to the STRIPE teleoperation system, and to various other navigation modules; details on each of the subsystems are available on other samplers, or in reprints available from the Robotics Institute.