16-350 Planning Techniques for Robotics

Planning is one of the core components that enable robots to be autonomous. Robot planning is responsible for deciding in real-time what the robot should do next, how to do it, where the robot should move next and how to move there. This class does an in-depth study of popular planning techniques in robotics and examines their use in ground and aerial robots, humanoids, mobile manipulation platforms and multi-robot systems. The students learn the theory of these methods and also implement them in a series of programming-based projects.

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

Spring 2019 Course Information

Announcements

Dates/times

Class meetings: Mondays, Wednesdays, 1:30-2:50PM, NSH 3002

Instructor

Who Email
Maxim Likhachev

Teaching Assistants

Who Email
Shohin Mukherjee

Office Hours

Who Location Hours
Shohin NSH 1502E Mon & Thu, 9-10AM
Maxim NSH 3211 By appointment or Friday around 10AM

Grading

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 for the class (PDF)

Date Topic Slides Homeworks Additional Info
1/14 (Mon) Introduction, What is Robot Planning? slides
-
-
1/16 (Wed) Planning Representations: Skeleton- and Grid-based Graphs slides
-
-
1/21 (Mon) MLK Day - NO CLASS -
-
-
1/23 (Wed) Search Algorithms: Uninformed A* Search slides
-
-
1/28 (Mon) Search Algorithms: A* Search slides
-
-
1/30 (Wed) NO CLASS DUE TO WEATHER -
-
2/4 (Mon) Search Algorithms: Heuristics, Backward A*, Weighted A* Search slides
-
-
2/6 (Wed) Interleaving Planning and Execution: Anytime Heuristic Search slides
-
-
2/11 (Mon) Interleaving Planning and Execution: Incremental Heuristic Search slides
-
-
2/13 (Wed) Interleaving Planning and Execution: Real-time Heuristic Search slides
-
-
2/18 (Mon) Planning Representations: Lattice-based Graphs, Explicit vs. Implicit Graphs slides
-
-
2/20 (Wed) Case Study: Planning for Autonomous Driving slides
-
2/25 (Mon) Planning Representations: Probabilistic Roadmaps for Continuous Spaces slides
-
-
2/27 (Wed) NO CLASS -
-
-
3/4 (Mon) Planning Representations/Search Algorithms: RRTs slides
-
-
3/6 (Wed) Case Study: Planning for Mobile Manipulators and Articulated Robots slides
-
-
3/11 (Mon) SPRING BREAK: NO CLASSES -
-
-
3/13 (Wed) SPRING BREAK: NO CLASSES -
-
-
3/18 (Mon) Search Algorithms: Multi-goal A*, IDA* slides
-
-
3/20 (Mon) Case Study: Planning for Coverage, Mapping and Surveyal slides
-
3/25 (Mon) Planning Representations: Symbolic Representation for Task Planning slides
-
-
3/27 (Wed) Presentation of Final Project Proposals -
-
-
4/1 (Mon) Search Algorithms: Planning on Symbolic Representations slides
-
4/3 (Wed) Planning under Uncertainty: Minimax Formulation slides
-
-
4/8 (Mon) Planning under Uncertainty: Expected Value Formulation slides
-
-
4/10 (Wed) Planning under Uncertainty: Solving Markov Decision Processes slides
-
-
4/15 (Mon) Planning under Uncertainty: Partially-Observable Markov Decision Processes slides
-
-
4/17 (Wed) Planning under Uncertainty: Partially-Observable Markov Decision Processes (cont'd) Same slides
-
4/22 (Mon) Exam -
-
-
4/24 (Wed) Multi-Robot Planning slides
-
-