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 taken an Intro to Robotics class and have a good knowledge of programming and data structures.

Spring 2017 Course Information

Announcements

Dates/times

Class meetings: Tuesdays, Thursdays, 3:00-4:20PM, Wean Hall 5328

Instructor

Who Email
Maxim Likhachev

Office Hours

Location Hours
NSH 3211 Thu, 9-10AM & by appointment

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 posted here (PDF)

Date Topic Slides Homeworks Additional Info
1/17 (Tue) Introduction, What is Robot Planning? slides
-
-
1/19 (Thu) Planning Representations: Skeleton- and Grid-based Graphs slides
-
-
1/24 (Tue) Search Algorithms: Uninformed A* Search slides
-
-
1/26 (Thu) Search Algorithms: A* Search slides
-
-
1/31 (Tue) Search Algorithms: Heuristics, Weighted A* Search slides
-
2/2 (Thu) Interleaving Planning and Execution: Anytime Heuristic Search slides
-
-
2/7 (Tue) Interleaving Planning and Execution: Incremental Heuristic Search slides
-
-
2/9 (Thu) Interleaving Planning and Execution: Real-time Heuristic Search slides
-
-
2/14 (Tue) Planning Representations: Lattice-based Graphs, Explicit vs. Implicit Graphs slides
-
-
2/16 (Thu) Case Study: Planning for Autonomous Driving slides
-
-
2/21 (Tue) Planning Representations: Probabilistic Roadmaps for Continuous Spaces slides
-
-
2/23 (Thu) Planning Representations/Search Algorithms: RRTs slides
-
2/28 (Tue) Case Study: Planning for Mobile Manipulators and Articulated Robots slides
-
-
3/2 (Thu) Search Algorithms: Multi-goal A*, IDA* slides
-
-
3/7 (Tue) Case Study: Planning for Coverage, Mapping and Surveyal slides
-
-
3/9 (Thu) Search Algorithms: Markov Property, Dependent Variables slides
-
-
3/14 (Tue) SPRING BREAK: NO CLASSES -
-
-
3/16 (Thu) SPRING BREAK: NO CLASSES -
-
-
3/21 (Tue) Planning Representations: Symbolic Representation for Task Planning slides
-
-
3/23 (Thu) Search Algorithms: Planning on Symbolic Representations slides
-
-
3/28 (Tue) Planning under Uncertainty: Minimax Formulation slides
-
-
3/30 (Thu) Planning under Uncertainty: Expected Value Formulation slides
-
4/4 (Tue) Planning under Uncertainty: Solving Markov Decision Processes slides
-
-
4/6 (Thu) Presentation of Final Project Ideas -
-
-
4/11 (Tue) NO CLASS -
-
-
4/13 (Thu) Planning under Uncertainty: Solving Markov Decision Processes (cont'd) Same slides
-
-
4/18 (Tue) Exam Review No slides
-
4/20 (Thu) Spring Carnival, NO CLASS -
-
-
4/25 (Tue) Exam -
-
-
4/27 (Thu) Multi-Robot Planning slides
-
-
5/2 (Tue) Multi-Robot Planning (cont'd) Same slides
-
-
5/4 (Thu) Final Project Presentations -
-
-