I3-[SharC] - Research

SharC Cognitive Control Architecture

The development of Intelligent Service Robots raises a number of questions that are not applicable in industrial robotics or kinematics. These questions include: how can an autonomous system convey details of its state to a technically naive user? And, how can a large number of diverse software components be integrated in a safe and robust way? Addressing these questions requires more than the improvement of individual software or hardware components. Instead, it is also necessary to develop intelligent system control architectures that facilitate powerful, safe, and robust robot designs. 

The SharC Cognitive Control Architecture is a hybrid design based on the premise that Communities of Deliberative Agents, with their benefits in distributing control of complex systems, can provide an abstraction for robot architecture design that overcomes many of the limitations of current monolithic approaches. The architecture, implemented with the AgentFactory Framework, is currently being deployed on Rolland, the Bremen Autonomous Wheelchair.

Details

The Service Robot is a mobile robot intended for use in everyday environments. Unlike industrial robots, the service robot must be capable of safely performing a wide variety of goal oriented tasks in a dynamic environment. Interestingly, these tasks might often need to be performed with, or under the supervision of, technically naive users. 

Our architectural approach is to split Service Robot control amongst a number of deliberative agents. Each of the agents has the capacity for high level reasoning akin to the traditional hybrid architectures. But, by distributing control amongst a number of agents, we achieve robustness and scalability gains. The SharC Cognitive Control Architecture, presented here, is based on a more abstract MultiAgent Architecture for Robot Control (MARC). 

The SharC architecture is being primarily developed for use on Rolland, the Bremen Autonomous Wheelchair. The figure below shows Rolland's current cognitive control architecture. Yellow block represents a complete control agent that encapsulates a system component. Arrows between the agents show primary information flow. All information exchange is via messages rather than more tightly coupled method calls. This provides a loosely coupled distributed system which can be implemented across a number of different machines. 

Where possible, we have based the agents around off the shelf components. This code re-use approach was essential in precuring the tools for speech synthesis and recognition. However with integrating legacy components, there is always a risk that some components may not behave as expected. In such cases it is importnat that the overall architecture be robust to fault. SharC's agent oriented approach is ideally suited to such occurances. 

 

The architecture is being developed for both German and English use. This bi-lingual requirement is facilitated with linguistic components that will perform mapping from either German or English to internal representations. Key to this mapping is the use of formally verified Linguistic and Domain Ontologies. These two bodies of knowledge provide the agents with a common ontological viepoint, based on which they can also reason about the environment and internal states. The pink area shows where the Spatial Ontology is principally used. This ontology provides SharC agents with a common-sense style of spatial knowledge, and is used in the definition of Rolland's internal map representation, the RouteGraph. The blue region shows the influence of the Linguistic Ontology over the SharC architecture. Concepts for the Linguistic Ontology, or Generalized Upper Model form the cornerstone of SharC's handling of natural language. As can be seen from the ontological overlaps, the SharC architecture can be split between a natural language independent, internal representation, and a language dependent section. The job of natural language generation and understanding is to mediate between these different viewpoints. 

The AgentFactory Agent Development Framework to produce the underlying agent architecture for SharC. Unlike other middleware \em solutions, AgentFactory is based around a true Agent Oriented (AO) language.