Computer Science 154
Robotics
Overview/Syllabus, Spring 2005



General Information

Instructor: Zachary Dodds
Office: Olin 1265
Phone: x78990     (909-607-8990)
E-mail: dodds@cs.hmc.edu
Official Office Hours: MWF 3-5
Real Office Hours: Anytime


Class Time and Place: Course Homepage: http://www.cs.hmc.edu/courses/2005/spring/cs154/index.html

Is This Course for You?

Yes! CS 70 is a prerequisite in order to handle the programming components of the course; even more important is the ability to learn new languages/APIs quickly, since these appear all over the place in robotics.

What Is This Course About?

The goal is to provide a hands-on introduction to robotics. Robotics is the study of computational interaction with the physical environment, and this course will take a rather computer-science approach to the field. That is, we will worry less about the actuators (motors) and their low-level control and more about sensing (vision, sonar, IR, ...), and reasoning (system architecture and planning) about spatial interaction. We will look at theoretical and practical tools and algorithms that support robotics, including kinematic modeling, path planning, configuration space, probabilistic data analysis, and computer vision. The assignments and lab component of the course is an opportunity to apply these ideas through both scripted and open-ended labs.

Reading

Required reading will come from a variety of robotics papers and from the prepress materials (permission pending) from Probabilistic Robotics by Sebastian Thrun . Robotics is a relatively immature subfield of computer science (I would say that this is a good thing!) -- as a result, fundamental results and principles are still being developed. These papers will provide snapshots of this ongoing work, as well as some classic breakthroughs.

Assignments and Grades

Collaboration Policy - Honor Code

All conduct in this course should be conducted in accordance with the Harvey Mudd Honor Code. In particular, the projects in CS154 offer the opportunity to work with one or two other students. It is important that that work truly be a product of all of those participants. Also, while discussion about problems or projects is welcome outside of a lab group, you may not share (give or receive) work with other groups or others outside the class. Of course, you may use the assistance of the instructor and grader/tutors (if there are any).