What is This Class About?

NASA/GM's Robonaut2 and Astronaut

Robots have fascinated people for generations. Today, robots are built for applications as diverse as exploring remote planets, de-mining war zones, cleaning toxic waste, assembling cars, inspecting pipes in industrial plants, and mowing lawns. Robots are also interacting with humans in a variety of ways: robots are museum guides, robot pets entertain, and robots assist surgeons in life-saving operations. Soon we will see commercially available self-driving cars.

The field of robotics studies not only the design of new mechanisms but also the development of algorithms and frameworks that make these mechanisms useful in the physical world. This class focuses on the algorithms that make robots work. The class integrates elements from artificial intelligence, computer graphics and animation, and mixed reality systems. This is a class on algorithms and artificial intelligence and not a class on robot hardware and control.

To get a glimpse of what we will be discussing come to the first class.

Who is This Class For?

This class is for undergraduates in computer science as well as electrical engineering, bioengineering, and mechanical engineering. The class requires mathematical maturity, knowledge of algorithms, and ideally knowledge of C++. Students who know Java have few problems transitioning to this class. The same is true for students who know C. Please check the resources here for a guide to transitioning to C++. Help will be provided to the students who need it.

Perequisites can be waived for non-CS students after talking to the instructor.

Graduate students should register for COMP/ELEC/MECH 550. Information about 550 will be given in class.

It is very important to attend the first lecture of the class if you are trying to decide whether to take this class or not.

Important Announcement

Waymo's Autonomous Vehicle

If this class is full and you wish to take it, please contact the instructor.

Where and When?

Tuesdays & Thursdays 1:00–2:15pm
Location MEL 251

People Involved

Instructor: Professor Lydia Kavraki
Office: Duncan Hall 3106
Office Hours: Thursdays 2:30–4:00pm and by appointment
Email: kavraki/AT/rice/DOT/edu

Check Dr. Kavraki's group website for her work in robotics.

Class Material

Class material will be distributed through Canvas. This course involves both written and programming assignments. The programming assignments use the OMPL Library which is written in C++.


Principles of Robot Motion: Theory, Algorithms, and Implementations.
ISBN: 0262033275

Several originals papers will be used during the semester to complement the material of the book.