Cognitive robotics
Cognitive robotics is concerned with endowing a robot with intelligent behavior by providing it with a processing architecture that will allow it to learn and reason about how to behave in response to complex goals in a complex world. Cognitive robotics may be considered the engineering branch of embodied cognitive science and embodied embedded cognition.
Core issues
While traditional cognitive modeling approaches have assumed symbolic coding schemes as a means for depicting the world, translating the world into these kinds of symbolic representations has proven to be problematic if not untenable. Perception and action and the notion of symbolic representation are therefore core issues to be addressed in cognitive robotics.
Starting point
Cognitive robotics views animal cognition as a starting point for the development of robotic information processing, as opposed to more traditional Artificial Intelligence techniques. Target robotic cognitive capabilities include perception processing, attention allocation, anticipation, planning, complex motor coordination, reasoning about other agents and perhaps even about their own mental states. Robotic cognition embodies the behavior of intelligent agents in the physical world (or a virtual world, in the case of simulated cognitive robotics). Ultimately the robot must be able to act in the real world.
Learning techniques
Motor Babble
A preliminary robot learning technique called motor babbling involves correlating pseudo-random complex motor movements by the robot with resulting visual and/or auditory feedback such that the robot may begin to expect a pattern of sensory feedback given a pattern of motor output. Desired sensory feedback may then be used to inform a motor control signal. This is thought to be analogous to how a baby learns to reach for objects or learns to produce speech sounds. For simpler robot systems, where for instance inverse kinematics may feasibly be used to transform anticipated feedback (desired motor result) into motor output, this step may be skipped.
Imitation
Once a robot can coordinate its motors to produce a desired result, the technique of learning by imitation may be used. The robot monitors the performance of another agent and then the robot tries to imitate that agent. It is often a challenge to transform imitation information from a complex scene into a desired motor result for the robot. Note that imitation is a high-level form of cognitive behavior and imitation is not necessarily required in a basic model of embodied animal cognition.
Knowledge acquisition
A more complex learning approach is "autonomous knowledge acquisition": the robot is left to explore the environment on its own. A system of goals and beliefs is typically assumed.
A somewhat more directed mode of exploration can be achieved by "curiosity" algorithms, such as Intelligent Adaptive Curiosity[1][2] or Category-Based Intrinsic Motivation.[3] These algorithms generally involve breaking sensory input into a finite number of categories and assigning some sort of prediction system (such as an Artificial Neural Network) to each. The prediction system keeps track of the error in its predictions over time. Reduction in prediction error is considered learning. The robot then preferentially explores categories in which it is learning (or reducing prediction error) the fastest.
Other architectures
Some researchers in cognitive robotics have tried using architectures such as (ACT-R and Soar (cognitive architecture)) as a basis of their cognitive robotics programs. These highly modular symbol-processing architectures have been used to simulate operator performance and human performance when modeling simplistic and symbolized laboratory data. The idea is to extend these architectures to handle real-world sensory input as that input continuously unfolds through time. What is needed is a way to somehow translate the world into a set of symbols and their relationships.
Questions
Some of the fundamental questions to still be answered in cognitive robotics are:
- How much human programming should or can be involved to support the learning processes?
- How can one quantify progress? Some of the adopted ways is the reward and punishment. But what kind of reward and what kind of punishment? In humans, when teaching a child for example, the reward would be candy or some encouragement, and the punishment can take many forms. But what is an effective way with robots?
Books
Cognitive Robotics book [4] by Hooman Samani,[5] takes a multidisciplinary approach to cover various aspects of cognitive robotics such as artificial intelligence, physical, chemical, philosophical, psychological, social, cultural, and ethical aspects.
See also
References
- http://www.pyoudeyer.com/ims.pdf
- http://www.pyoudeyer.com/oudeyer-kaplan-neurorobotics.pdf
- http://science.slc.edu/~jmarshall/papers/cbim-epirob09.pdf
- "Cognitive Robotics". CRC Press. Retrieved 2015-10-07.
- "Hooman Samani". www.hoomansamani.com. Retrieved 2015-10-07.
- The Symbolic and Subsymbolic Robotic Intelligence Control System (SS-RICS)
- Intelligent Systems Group - University of Utrecht
- The Cognitive Robotics Group - University of Toronto
- The IDSIA Robotics Lab and Cognitive Robotics Lab of Juergen Schmidhuber
- What Does the Future Hold for Cognitive Robots? - Idaho National Laboratory
- Cognitive Robotics at the Naval Research Laboratory
- Cognitive robotics at ENSTA autonomous embodied systems, evolving in complex and non-constraint environments, using mainly vision as sensor.
- The Center for Intelligent Systems - Vanderbilt University
- Institute for Cognition and Robotics (CoR-Lab) at Bielefeld University
- SocioCognitive Robotics at Delft University of Technology
- Autonomous Systems Laboratory at Universidad Politecnica de Madrid
- Knowledge Technology at Universität Hamburg
- The Cognitive Robotics Association, founded in 1998, directed by Gerhard Lakemeyer, University of Aachen, organizes every two years the Cognitive Robotics Workshop and it is generously supported by the AI journal