Chapter 23 Cognitive Robotics
Introduction
In its most general form, we take cognitive robotics to be the study of the knowledge representation and reasoning problems faced by an autonomous robot (or agent) in a dynamic and incompletely known world. To quote from a manifesto by Levesque and Reiter [42]:
We take this idea of knowledge representation and reasoning for the purpose of high-level robotic control to be central to cognitive robotics [71]. This connects cognitive robotics not only to (traditional, less cognitive) robotics but also, as discussed later, to other areas of AI such as planning and agent-oriented programming.“Central to this effort is to develop an understanding of the relationship between the knowledge, the perception, and the action of such a robot. The sorts of questions we want to be able to answer are
and so on. With respect to robotics, our goal (like that of many in AI) is high-level robotic control: develop a system that is capable of generating actions in the world that are appropriate as a function of some current set of beliefs and desires. What we do not want to do is to simply engineer robot controllers that solve a class of problems or that work in a class of application domains. For example, if it turns out that online reasoning is unnecessary for some task, we would want to know what it is about the task that makes it so.”
- •
to execute a program, what information does a robot need to have at the outset vs. the information that it can acquire en route by perceptual means?
- •
what does the robot need to know about its environment vs. what need only be known by the designer?
- •
when should a robot use perception to find out if something is true as opposed to reasoning about what it knows was true in the past?
- •
when should the inner workings of an action be available to the robot for reasoning and when should the action be considered primitive or atomic?
To illustrate the knowledge representation and reasoning issues relevant to high-level robotic control, we will use Reiter's variant of the situation calculus. There are several reasons for this: we, the authors, have worked with the situation calculus and hence feel most comfortable with it; the situation calculus is a very expressive formalism which can be used to model many of the features relevant to cognitive robotics; it was already introduced at length in a chapter of this volume (which we assume as a prerequisite), so that we do not need to present it from scratch; and last but not least, it is a tribute to Ray Reiter. For a book length treatment of cognitive robotics not based on the situation calculus, see [81].
The structure of the this chapter is as follows. In Section 23.2, we discuss some of the knowledge representation issues that arise in the context of cognitive robotics. In Section 23.3, we turn to problems in automated reasoning in the same setting. In Section 23.4, we examine how knowledge representation and reasoning come to bear on the issue of high-level agent control. Finally, in Section 23.5, we briefly draw conclusions and suggest a direction for future research.
Section snippets
Knowledge Representation for Cognitive Robots
As a special sort of knowledge-based system, cognitive robots need to represent knowledge about relevant parts of the world they inhabit. What makes them special is the emphasis on knowledge about the dynamics of the world, including, the robot's own actions. In currently implemented systems, knowledge about objects in the world can be very simple, as in robotic soccer [21], where little is known beyond their position on a soccer field, to the very complex, involving knowledge about the actual
Reasoning for Cognitive Robots
The research problems in cognitive robotics are not limited to problems in representation seen in the previous section. We are fundamentally concerned with how these representations are to be reasoned with, and furthermore, as we will see in the next section, how this reasoning can be used to control the behavior of the robots.
High-Level Control for Cognitive Robots
As noted earlier, one distinguishing characteristic of the area of cognitive robotics is that the knowledge representation and reasoning are for a particular purpose: the control of robots or agents. We reason about a world that is changing as the result of actions taken by agents because we are attempting to decide what to do, what actions to take towards some goal. This is in contrast, for example, to reasoning for the purposes of answering questions or generating explanations.
Conclusion
Cognitive robotics is a reply to the criticism that knowledge representation and reasoning has been overly concerned with reasoning in the abstract and not concerned enough with the dynamic world of an embodied agent. It attempts to address the sort of representation and reasoning problems an autonomous robot would face in trying to decide what to do. In many ways, it has only scratched the surface of the issues that need to be dealt with.
A number of cognitive robotic systems have been
Bibliography (82)
- et al.
Using temporal logics to express search control knowledge for planning
Artificial Intelligence
(2000) - et al.
Reasoning about noisy sensors and effectors in the situation calculus
Artificial Intelligence
(1999) - et al.
Experiences with an interactive museum tour-guide robot
Artificial Intelligence
(1999) The computational complexity of propositional strips planning
Artificial Intelligence
(1994)- et al.
ConGolog, a concurrent programming language based on the situation calculus
Artificial Intelligence
(2000) - et al.
Nonmonotonic causal theories
Artificial Intelligence
(2004) - et al.
strips: A new approach to the application of theorem proving to problem solving
Artificial Intelligence
(1971) Relevance from an epistemic perspective
Artificial Intelligence
(1997)On the semantics of strips
- et al.
How to progress a database
Artificial Intelligence
(1997)