spacer.png, 0 kB
spacer.png, 0 kB
CERA-CRANIUM

CERA-CRANIUM Cognitive Architecture  

CERA (Conscious and Emotional Reasoning Architecture) is a software architecture that allows the integration of different cognitive components into a single autonomous system. It is designed to be a flexible research framework in which different consciousness and emotion models can be integrated and tested. The CERA native components have been already implemented following the object oriented design methodology. Original design requirements are to fulfil nine modules of reasoning consciousness and their associated functionality [1]. These foundation classes can be extended and modified in a way that the desired models are represented and interrelated. This software engineering process is called CERA instantiation, as it produces a domain specific instance of CERA.

An instantiation called K-CERA (Khepera CERA) is described in [1], where we have adapted the foundation classes for the specific domain of unknown environment exploration using the Khepera robot. CERA foundation classes are designed to integrate reasoning consciousness with the rest of possible cognitive components of a model of the mind. CERA is structured in a three-layer architecture.

CERA layered design. The core layer is where the reasoning consciousness model foundation classes are located. Then, the instantiation layer adds the domain-specific cognitive systems. Finally, the top layer encloses the agent-specific perception and motor systems. 

The inner layer, called CERA Core, encloses the reasoning consciousness model. Next layer is the instantiation layer, which contains the domain-specific cognitive components as discussed above. On top of the instantiation layer, an additional so called physical layer is required to adapt the cognitive components to the actual sensorimotor machinery of the autonomous robot.
 

The CERA core, which comprises the reasoning consciousness modules, defines a framework for implementing versatile cognitive processes. However, the knowledge representation is not concretely defined in this layer. An abstract knowledge class is used in CERA core in order to make the high level RCM processes definition representation-independent. This means that CERA core per se cannot be instantiated. A domain-specific instantiation layer is always required in order to build a complete cognitive model. Analogously, the physical layer is required in order to implement the actual autonomous agent control system.


Latest versions of CERA have been integrated in Microsoft Robotics Studio (MSRS), and the CRANIUM component has been added to provide access to both simulated and real sensors and actuators [2]. MSRS incorporates a common language runtime (CLR)-based library called the Concurrency and Coordination Runtime (CCR). Parts of CERA and CRANIUM are based on the CCR, thus supporting many complex asynchronous coordination patterns. Also, the CCR high-performance thread pools are used to execute a large number of unconscious processors and maximize concurrency (despite of robot's asynchronous I/O operations). The thread pool dispatcher allocate threads in all machine's CPUs. 

Following the MSRS services-oriented architecture, CERA and CRANIUM modules are integrated as light-weight distributed services. The Decentralized Software Services Protocol (DSSP) makes the composition of services available through orchestration. The Decentralized Software Services Protocol service model allows the interaction of services in a decentralized environment; therefore, the problem of a robot's limited onboard computational power virtually disappears.

CRANIUM (Cognitive Robotics Architecture Neurologically Inspired Underlying Manager) makes use of Microsoft Robotics Studio libraries in order to provide CERA with an interface to access robot's sensor and actuators (both real hardware and simulated in Robotics Studio Visual Simulation Environment).

Several concurrent processors have been defined in order to manage asynchronous communications with robot sensors and actuators. These services provide CERA Physical layer with the required percept messages from sensors and command messages to actuators.

I am currently working with the MobileRobots Pioneer 3 DX robot base, therefore most custom CRANIUM services are written for ARCOS based robots.

 

 


[1]  Arrabales Moreno, R. and Sanchis de Miguel, A. "A Machine Consciousness Approach to Autonomous Mobile Robotics". In: 5th International Cognitive Robotics Workshop. AAAI-06. Boston, MA. July 2006.

[2] Arrabales Moreno, R. Ledezma Espino, A. and Sanchis de Miguel, A. "Modelling Consciousness for Autonomous Robot Exploration". In 2nd International Work-Conference on the Interplay between Natural and Artificial Computation, IWINAC 2007. Lecture Notes in Computer Science Series, Vol. 4527. pp. 51-60.


 

 
spacer.png, 0 kB
spacer.png, 0 kB