Experiments with the subsumption architecture

The subsumption architecture (SA) is a special case of behavior-based control for robotics. Behavioral modules are added as 'layers', with each layer performing a complete behavior. Higher-level behaviors override lower level ones by taking control of their effectors or manipulating their internal states. The control layers are built of finite-state machines connected by links that act essentially like wires. A prototype airplane controller made with the architecture was developed. This controller flies a simulated aircraft from take-off to landing and was run on a C-based implementation of the subsumption architecture. It was noted that the SA as currently defined is not sufficiently modular, a clean interface between different behaviors would be desirable, and a more general relationship than strict hierarchy between high-level and low-level modules is required. None of these problems is insoluble within the behavior-based approach, but all must be solved if realistic problems are to be dealt with. Some candidate solutions are given.<<ETX>>