CMRoboBits Wiki

The Wiki for 15-491: "CMRoboBits: Creating Intelligent Robots," School of Computer Science, Carnegie Mellon University, Fall 2011, GH3201.

Instructor: Professor Manuela Veloso; Teaching Assistants: Ryan Cahoon, Tekin Meriçli.

The 15-491 CMRoboBits class is a project-based course, where students learn about creating complete intelligent robots with perception, cognition, action, and cooperation. In the Fall of 2011, we use the humanoid NAO robots. The students work on three large one-month projects, with weekly milestones to achieve and
demonstrate. This Fall, the three projects are:

  1. Correcting the straight biped walk of the NAOs through human feedback. The students learn the robot motion and realize that the robots cannot move in an exact straight line in open loop even with sophisticated calibration. Furthermore, different robots act differently due to the inevitable hardware differences, even if minor. The students then learn how to provide feedback to the robots, in particular sound feedback. The final demonstration of project 1 consists of having a robot walk on a perfect straight line by making it correct its walk as a function of sound feedback on their left or right ear-microphones. Final demo: September 26th.
  2. Traverse a maze based on colored signs using an illumination-independent vision algorithm. The students learn color vision processing on the NAOs. They first demonstrate effective color calibration under a fixed illumination setting. Then they investigate and implement an illumination-independent color vision processing algorithm. They finally combine the vision processing as markers in a maze that the robots need to traverse by moving right or left as a function of the color of the markers. The specific shape of the maze for the final demonstration is not known ahead by the students. The final demonstration is also performed under multiple illumination settings. Demonstration of two-color detection: October 5th. Demonstration of maze solving with fixed illumination: October 24th. Demonstration of maze solving under varying light conditions: November 2nd.
  3. Coordinate multiple robots for a clean-up task. In the last project, the students now work on multi-robot coordination, involving communication of perceptual information, role assignment, and positioning. A large area is set with multiple colored balls and teams of robots need to clean up specific ball colors and push the balls into a home position. The robots need to communicate with each other, so that they divide the task among them. This final project combines all the aspects of the course, namely robust biped motion, vision processing, and multi-robot coordination. Demonstration of cooperative ball kicking: December 7th.

Nao humanoid robots

Cobot service robots

General Items


Where/When is the course held?

We meet on Mondays and Wednesdays, 3:00-4:30pm, in GHC 3201.

What is the grading criteria?

The course is a project-based course. There are three main projects: one project by the end of September, another by the end of October, and a final project by the end of November/beginning of December. These projects will span the topics of Sensing, Cognition, and Acting. The evaluation will be based on both reports and level of performance achieved.

When are the office hours?

Manuela Veloso

  • by email appointment


  • Mondays 4:30 pm to 6:30 pm
  • Thursdays 6:00 pm to 7:30 pm

What is the password/serial number of X (robot, computer, software, etc)?

Please contact the TA for assistance.

Latest activity