We state the following requirements for the robot's architecture.
R1: The architecture must accommodate deliberative and reactive behavior. The robot has to coordinate the actions it deliberately undertakes to achieve its designated objective (e.g., collect a sample of rocks) with the reactions forced on it by the environment (e.g., avoid an obstacle).
R2: The architecture must allow for uncertainty. Never will all the circumstances of the robot's operation be fully predictable. The architecture must provide the framework in which the robot can act even when faced with incomplete or unreliable information (e.g., contradictory sensor readings).
R3: The architecture must account for the dangers inherent in the robot's operation and its environment. By incorporating consideration of fault tolerance (R3a), safety (R3b), and performance (R3c) attributes, the architecture must help in maintaining the integrity of the robot, its operators, and its environment. Problems like reduced power supply, dangerous vapors, or unexpectedly opening doors should not spell disaster.
R4: The architecture must give the designer flexibility. Application development for mobile robots frequently requires experimentation and reconfiguration. Moreover, changes in tasks may require regular modification.
The degree to which these requirements apply depends both on the complexity of the work the robot is programmed to perform and the predictability of its environment. For instance, fault tolerance is paramount when the robot is operating on another planet as part of a space mission; it is still important, but less crucial, when the robot can be brought to a nearby maintenance facility.
Updated Halloween 95 by
Comments to maintainer