CS189: Autonomous Robotic Systems
Building autonomous robotic systems requires understanding how to make
robots that observe, reason, act and
coordinate. Many programming and engineering principles come
into play. For example, how to make sense of noisy and limited sensor
inputs, how to control one's actions reliably and recover from
failures, when to reason about the world and when to just react, how
to balance short-term problems versus long-term goals, and how to
efficiently coordinate to with others. Integrating these components
into a working system requires other skills, for example how to
compose many parallel behaviors into a modular and reusable software
architecture.Ultimately though, the goal is to create embodied artificial intelligence: robots that
solve complex problems without human intervention.
Fall 2013: a.k.a. We Love Robots!
WATCH the Class Video!
Course Website (2013)
Course Website (2014)
We will study these questions using the E-puck robot platform. In the
first third of the course we will concentrate on low-level autonomous
control concepts, such as motion control, camera vision, and finite
state machine controllers. You will create a robot that collects pucks
and takes them to its nest, and gets a score based on how many pucks
it collects vs its opponent. In the second third of the course, we
will focus on higher-level autonomy for single robots, especially
navigation tasks such as localization, coverage, and mapping. In this
section, you will create a robot that can explore an unknown shaped
environment and produce a map of that environment. Finally in the last
third of the course, we will work on multi-robot control, in the
context of a competition: The battle for Middle Earth begins!
Spring 2011: a.k.a. Can Robots Play Soccer?
Link to Course Website
WATCH our class video!
In this first offering, we studied these questions in
the context of a semester-long project to develop an Autonomous Robot Soccer Team. In the robot soccer
competition, two teams of 5 robots compete against each other with
rules that closely mimic real soccer. One key focus is the artificial
intelligence that allows the team to choose actions and responses to
an opponent during the game, without any human intervention. Another
key focus is the design of a high-performance real-time
hardware-software system. The goal of this course was to get a
hands-on experience with the design and execution of a robotics
engineering project, that combines CS sophistication with the
uncertainty and complexity of hardware operating in the real
world. Read more about how the course went on the website!
CS199r, Spring 2009: Special Topics in Computer Science
Prior to cs189, we offered a version of this class in 2009 as a
Special Topics class. The theme of the class was autonomous robot
soccer, but the focus was on the low-level control for the robots
(network, vision, low-level feedback control, etc). We also co-hosted
the US Open Small-Size League at Harvard at the Hilles Penthouse, with
teams from CMU and Georgia Tech Tech.