18-799-R Cognitive Robotics
Location: Africa
Units: 12
Semester Offered: Spring
Location: Africa
Units: 12
Semester Offered: Spring
ECE
This course provides an introduction to cognitive robotics, a branch of robotics in which knowledge plays a central role in supporting action selection, planning, and execution. Cognition is essential for robots to be able to perform tasks in response to a request by a human, but without the human having to specify explicitly everything that is needed to fulfill the task. Many everyday activities fall into this category. For example, when we ask someone to fetch something for us, we don’t have to say how they are to fetch it. The goal of the course is to give students an understanding of what is involved in the design of a cognitive robot and give them the knowledge and skills to produce working implementations for simple instances of cognitive fetch and place tasks. Students will learn through a combination of classroom lectures and laboratory assignments that consolidate their understanding through practical exercises using both robot simulators and physical robots. Student progress is assessed by a series of multiple-choice tests and individual & group assignments.
Students will be introduced to the general area of robotics. They will learn how to develop software using ROS (Robot Operating System) and they will learn the principles of robot manipulation and task-level robot programming, including the mathematical tools required to specify the position and orientation of robots and objects in the robot environment. Students will be introduced to the main topics in artificial cognitive systems, including the different paradigms of cognitive science and cognitive architectures. These components form the foundation for the remainder of the course, involving a detailed study of the CRAM (Cognitive Robot Abstract Machine) cognitive architecture, building on ROS, and exploiting functional programming in Lisp to reason about and execute under-determined tasks in everyday activities. Students will learn how to write CRAM plans in the Lisp-based CRAM plan language for the PR2 humanoid mobile robot in a simulation environment and the Lynxmotion AL5D robot manipulator, both simulated and real.
After completing this course, students will be able to:
There are no prerequisites for taking this course, although it would be an advantage to have taken 18-799-L Robotics: Principles and Practice and 18-799-K Artificial Cognitive Systems.