Simple robots operate through a perception-action cycle, or loop, which allows them to make decisions and form a response based on the information they receive on each cycle. Adding layers in a robot’s perception-action cycle enables it to “think outside the loop”, supporting parallel information processing on different levels simultaneously, thus making it generally more responsive and generally – other things being equal – smarter. The design of such layers is done in what we call a robot’s cognitive architecture.
A cognitive architecture is typically a mixture of software and hardware which facilitates the perception of input from the environment (cameras, microphones, other sensors) and the processing thereof to produce responses that can be executed by the robot’s on-board motors, speakers, and screens. It must be able to process this input in real-time, in light of the current set of contexts (goals, tasks, expectations), and plan a suitable set of soft-real-time outputs (visuals, speech, motor commands).
The bottom layer of a cognitive architecture deals with physical inputs and outputs and the top layer deals with decision making. By adding layers in between processing and reacting can progress incrementally, with increased foresight – a broadening of the time and data that is taken into account in addition to the concrete data input. With increasing abstraction it is easier to work with perceptions and actions taking place at different timescales and abstraction levels. This also facilitates timely responses to events, some of which don’t require as much abstraction (e.g. obstacles to be avoided or a human interrupting the conversation) as higher levels of cognition (e.g. understanding and responding to what a human actually said, or re-planning a route based on new information).
The CoCoMaps project expands on an existing implementation of an archicecture approach called Cognitive Maps, originally built to enable the Honda robot ASIMO to learn from and interact with its environment, in particular to play various card and board games with kids. CoCoMaps will integrate closely with the robot hardware using the Robot Operating System (ROS) and distribute the full system across computer on and off-board the robot.