CS 4803/8803: BHR - Building Humanoid Robots
TR 3:05 - 4:25, College of Computing 102
Spring 2009

Instructor: Mike Stilman

Office hours:
College of Computing 254
Thursday 2:00 - 3:00 or by appointment.

Tentative Syllabus

Introductory Materials:

  • Jan 6: Intro Slides [PDF]

  • Jan 8: Organization Slides [PDF]


    Humanoid robots such as Data, Terminator and Rosie are more than just anthroporphic machines. We envision these robots having significant computational resources that enable them to control their minds and bodies. In this class we will study what it means to build robots that reach towards human level mental and physical capabilities.

    The primary goal of this course is to construct a humanoid robot as shown in the picture above. Members of this class will operate as a team to design and implement the mechanical, electrical and computational systems. To gain a deeper understanding of the project, we will explore existing humanoid robot designs and algorithms that use their capabilities.


    Students will form groups of two or three according to their skills and interests. Each group will focus on an element of design, simulation, construction or algorithm development. Specific topics and responsibilities will change in accordance with progress in robot development. Furthermore, collaboration between groups will be strongly encouraged.

    Each student will be expected to contribute to the development of the robot platform. The student will keep an online journal of his or her results, findings, challenges and solutions. By the end of the semester, the instructor expects a detailed account of the work performed with pictures, videos, equations and anything else that shows progress on the project. This will benefit not only the students themselves, but all members of the class and the research community.

    Each week will be split into two sections. On tuesdays, we will all meet to discuss results from the previous week and decide directions for the coming week. On thursdays, students will give in-depth presentations of recent work in humanoid robotics and lead class discussion on the consequences and relevance of existing research.


    Grading will be based on the contribution to the development of the platform, a presentation on external research, and a group presentation on progress made towards the goal of robot construction. Contributions will be evaluated based on effort and thoroughness of the online journal. The breakdown is as follows:


    The course has no official prerequisites. Some knowledge of programming will be assumed, preferably in C, C++ or Matlab as well as some background in Linear Algebra.

    We welcome students from all engineering majors such as EE, ME, ECE and CS. This course is highly interdisciplinary and will give students the opportunity to explore applications of their previous studies and acquire familiarity with other fields.