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 2020 Course Information

Announcements

Dates/times

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

Instructor

Who Email
Maxim Likhachev

Teaching Assistants

Who Email
Navyata Sanghvi

Office Hours

Who Location Hours
Navyata Smith 208 Mon 4-4:30PM and Thu 2-2:30PM
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 with an upper limit on the penalty of 50%. 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/13 (Mon) Introduction, What is Robot Planning? slides
-
-
1/15 (Wed) Planning Representations: Skeleton- and Grid-based Graphs slides
-
-
1/20 (Mon) MLK Day - NO CLASS -
-
-
1/23 (Wed) NO CLASS -
-
-
1/27 (Mon) Search Algorithms: Uninformed A* Search slides
-
-
1/29 (Wed) Search Algorithms: A* Search slides
-
2/3 (Mon) Search Algorithms: Heuristics, Backward A*, Weighted A* Search slides
-
-
2/5 (Wed) Interleaving Planning and Execution: Anytime Heuristic Search slides
-
-
2/10 (Mon) Interleaving Planning and Execution: Incremental Heuristic Search slides
-
-
2/12 (Wed) Interleaving Planning and Execution: Real-time Heuristic Search slides
-
-
2/17 (Mon) Planning Representations: Lattice-based Graphs, Explicit vs. Implicit Graphs slides
-
-
2/19 (Wed) Case Study: Planning for Autonomous Driving slides
-
-
2/24 (Mon) Planning Representations: Probabilistic Roadmaps for Continuous Spaces slides
-
-
2/26 (Wed) Planning Representations/Search Algorithms: RRT, RRT-Connect, RRT* slides
-
3/2 (Mon) Planning Representations/Search Algorithms: RRT, RRT-Connect, RRT* (cont'd) -
-
-
3/4 (Wed) Case Study: Planning for Mobile Manipulators and Articulated Robots slides
-
-
3/9 (Mon) SPRING BREAK: NO CLASSES -
-
-
3/11 (Wed) SPRING BREAK: NO CLASSES -
-
-
3/16 (Mon) CLASSES CANCELED -
-
-
3/18 (Wed) Search Algorithms: Multi-goal A* slides
-
-
3/23 (Mon) Case Study: Planning for Coverage, Mapping and Surveyal slides
-
3/25 (Wed) Planning Representations: Symbolic Representation for Task Planning slides
-
-
3/30 (Mon) Search Algorithms: Planning on Symbolic Representations slides
-
-
4/1 (Wed) Search Algorithms: Planning on Symbolic Representations (cont'd) -
-
4/6 (Mon) Presentation of Final Project Proposals -
-
4/8 (Wed) Planning under Uncertainty: Minimax Formulation slides
-
-
4/13 (Mon) Planning under Uncertainty: Expected Value Formulation slides
-
-
4/15 (Wed) Planning under Uncertainty: Solving Markov Decision Processes slides
-
-
4/17 (Fri) Planning under Uncertainty: Solving Markov Decision Processes (cont'd) -
-
-
4/20 (Mon) Exam -
-
-
4/22 (Wed) Multi-Robot Planning slides
-
-
4/27 (Mon) Multi-Robot Planning (cont'd) -
-
-