16-782 Planning and Decision-making in Robotics

Planning and Decision-making are critical components of autonomy in robotic systems. These components are responsible for making decisions that range from path planning and motion planning to coverage and task planning to taking actions that help robots understand the world around them better. This course studies underlying algorithmic techniques used for planning and decision-making in robotics and examines case studies in ground and aerial robots, humanoids, mobile manipulation platforms and multi-robot systems. The students will learn the algorithms and implement them in a series of programming-based projects.

To take the class students should have a good knowledge of programming and data structures.

Fall 2018 Course Information



Class meetings: Mondays, Wednesdays, 1:30-2:50PM, Newell-Simon Hall 3002


Who Email
Maxim Likhachev

Teaching Assistants

Who Email
Anahita Mohseni Kabir
Dhruv Saxena

Office Hours

Who Location Hours
Instructor NSH 3211 Fri 9:30-10AM & by appointment
TA Anahita Mohseni Kabir NSH 1505 Tue 2-3PM
TA Dhruv Saxena NSH 4222 Thu 10-11AM


The criteria used to compute the final grade will consist of a combination of scores obtained on the exam, three programming assignments (homeworks), pop quizzes, final project and class participation:

Three homeworks 33%
Exam 20%
In-class pop quizzes 10%
Final project 32%
Participation 5%

Each student has a total of 3 free late days that may be used as needed for homeworks. No late days may be used for the final project!
Additional details: A late day is defined as a 24-hour period after the deadline. After the free late days are used up, each additional late day will incur a 10% penalty on the maximum achievable score. For example, if the assignment is worth 100 points, your maximum score will drop to 90 points for 1 additional late day and to 80 points for 2 additional late days, etc.

Class lectures/notes:

Tentative schedule posted here (PDF)

Date Topic Slides Homeworks Additional Info
8/27 (Mon) Introduction, What is Planning, Role of planning in Robots. slides
8/29 (Wed) Planning Representations: Implicit vs. Explicit Graphs; Skeletonization, Cell decomposition, Lattice-based Graphs slides
9/5 (Wed) Search Algorithms: A*, Weighted A*, Backward A* slides
9/10 (Mon) Search Algorithms: A*, Weighted A*, Backward A* (cont'd) -
9/12 (Wed) Search Algorithms: Heuristic Functions, Multi-Heuristic A* slides
9/17 (Mon) Interleaving Planning and Execution: Anytime and Incremental A* slides