The title "Coupled Layer Architecture for Robotics Autonomy" (CLARATy) refers to a software architecture for robots that has been proposed to (1) improve the modularity of robotic-system software while (2) tightening the coupling between autonomy and control software subsystems. Whereas prior robotic architectures have typically been characterized by three layers, the CLARATy is characterized by only two layers. The CLARATy provides for interaction of decision-making and functional infrastructures at all levels of system granularity. This architecture is flexible enough to encompass research and application domains, and provides for an explicit coupling of artificial-intelligence and robotics techniques. The architecture is also implemented in an object-oriented fashion that makes it possible to leverage software design through both inheritance and aggregation, thereby eliminating the need for duplication of effort in the development of new software.
In a typical three-layer architecture (see figure), the dimension along each layer can be thought of as the breadth of the system in terms of hardware and capabilities. The dimension up from one layer to the next can be thought of as increasing intelligence, from reflexive, to procedural, to deliberative. However, the responsibilities and height of each layer are not strictly defined, and the line between the planner and executive layers can be blurred.
In the CLARATy, the planner and executive layers are replaced by a single decision layer that performs both planning and executive functions. The CLARATy offers two major advantages over a typical three-layer architecture: explicit representation of the granularity in a third dimension and blending of the declarative and procedural techniques for decision making. The addition of the granularity dimension enables explicit representation of the hierarchies in the functional layer while accounting for the de facto nature of planning horizons in the decision layer. For the functional layer, an object-oriented hierarchy describes the nested encapsulation of subsystems of the system and provides basic capabilities at each level of the nesting. For instance, a command to "move" could be directed at a motor, appendage, mobile robot, or team. For the decision layer, granularity maps to an activities time line that is being created and executed. Because of the nature of the dynamics of the physical system controlled by the functional layer, there is a strong correlation between its system granularity and the time-line granularity of the decision layer.
The blending of declarative and procedural techniques in the decision layer emerges from the trend of planning and scheduling systems that have executive qualities and vice versa. This trend has been a cumulative result of recent advances in algorithms for robotic systems and the development of computers capable of processing data at higher speeds. The CLARATy enhances this trend by explicitly providing for access to the functional layer at higher levels of granularity (that is, larger grains), and hence less frequently, thereby providing more time for iterative replanning. However, it is still recognized that there is a need for procedural system capabilities, both in (1) the interface between the executive and functional layers and (2) the infusion of procedural semantics for specifying plans and scheduling operations. Therefore, the CLARATy includes a single database at the interface between planning and executive sublayers, leveraging recent efforts to merge the executive and planner layers.
This work was done by Darren Mutz, Hari Das, Issa Nesnas, Richard Petras, Richard Volpe, and Tara Estlin of Caltech for NASA's Jet Propulsion Laboratory. For further information, access the Technical Support Package (TSP) free on-line at www.nasatech.com/tsp under the Information Sciences category.
This software is available for commercial licensing. Please contact Don Hart of the California Institute of Technology at (818) 393-3425. Refer to NPO-21218.
This Brief includes a Technical Support Package (TSP).

Coupled-Layer Architecture for Advanced Software for Robots
(reference NPO-21218) is currently available for download from the TSP library.
Don't have an account? Sign up here.

NASA Tech Briefs Magazine
This article first appeared in the December, 2002 issue of NASA Tech Briefs Magazine.
Read more articles from the archives here.