Geometric Computation for Motion Planning
CP SC 6370 and ME EN 6960-03

Schedule: MWF 12:55 - 1:45
Location: MEB 3105
Instructor: David Johnson
Email: dejohnso@cs.utah.edu
Office: 3330 MEB (ph) 585-1726
Hours: I am generally available and through appointment. The best hours for drop-in meetings are in the morning and late afternoon.
TA: Shafagh Abassi - hours in WEB CADE lab Tuesdays 1-2 Thursdays 11:45-12:45
Texts: Principles of Robot Motion: Theory, Algorithms, and Implementations
by Howie Choset, et al.

MatLab student edition
(you need MatLab availablility, either through purchase or use in the labs)

Objectives

Robot motion planning formulates safe motion through a modeled environment. This problem can be formulated in a high dimensional space, known as a configuration space, and various approaches to a solution use this abstraction in creative ways. Underlying these approaches are fundamental geometric computations, such as model-model intersection and minimum distance, with broader application in computer animation, simulation, computer-aided design, haptics, and virtual reality. Topics to be covered in this course are spatial subdivision and model hierarchies, model intersection, distance queries and distance fields, medial axis computations, configuration spaces, geometric constraint solving, and motion planning. Classical geometric planning algorithms will be covered as well as current randomized approaches and topics on localizations and SLAM. The course will rely on lectures, readings, and projects to provide understanding of current practices in the field.

Students should finish the course with:

Grading

Your course grade will depend on the following factors:
 Programming Assignments (6) 60%
 Final Project Paper and Talk 25%
 Paper Critiques 5%
 Final Exam 10%

Policies

Late Policy: Zero credit is given for late work, please just submit what you have for partial credit if unfinished. However, you may submit one assignment (not the final project) up to two days late. You must notify me of your intent to use this privilege by the original due date. Also, additional leeway can be given for officially sanctioned University activities.

Cheating and Plagiarism: Students are encouraged to discuss approaches with one another and to help one another with computer infrastructure questions, but not to share or view another person’s code.

This is a graduate level course. As such, students are expected to behave in a professional manner.

Accommodations: The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities. If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations.

Schedule (to be adjusted as needed)

August
20 - MonCourse/Syllabus overview
Introduction to Motion Planning
 
22 - WedSimple primitives (p. 479-80) Notes on metrics and primitives
24 - FriIntroduction to a simple planner
Graph search (p. 521-546)
 Assignment 1: (10%) Simple primitives
27 - MonConfiguration spaces (chap. 3) 
29 - WedConvex objects
Minkowski sum/difference
 Assignment 1 due
31 - FriVisibility algorithms (p. 110-116) 
September
 3 - Mon  Labor Day Holiday
 5 - WedGJK algorithm Ericson notes Assignment 2: (10%) Visibility Graphs
 7 - FriTrapezoidal decomposition (p. 162-168) 
10 - MonCell decomposition 
12 - WedLinkages, forward kinematics
Hierarchical decomposition and graph building
 Assignment 2 due
14 - FriMore on hierarchical decomposition Assignment 3: (10%) Hierarchical decomposition
17 - MonPotential field methods Class starts 5 minutes late today
19 - WedRepresenting angles, numerical integration, linear and angular velocity
21 - FriOther potential field methods 
24 - MonGeneral polygonal models, rep and collision Assignment 3 due
26 - WedCollision using OBBs, PCA, covariance, etc. Here is a summary of PCA
28 - FriDistance for triangle models 
October
 1 - MonAssignment discussion  Assignment 4: (10%) Potential field planner
 3 - WedSpline models and Distance to spline models
Spline applets
 
 5 - FriRoadmaps
Voronoi Diagrams
Voronoi Applet
 Paper critique paper - Overmars
How to do a critique
 8 - Mon  Fall Break
10 - Wed  Fall Break
12 - Fri  Fall Break
15 - MonGeneralized Voronoi diagrams 
17 - WedOvermars' GVD work Paper critique 2 due
19 - FriNo class 
22 - MonProbabilistic Roadmaps (Chap. 7) Assignment 4 due
24 - WedPRM Expansiveness and Sampling
Matlab Demo of PRM
 Assignment 5: (10%) A PRM
26 - FriMore PRM sampling - medial axis, fattening, and visibility Paper critique paper - Flocking
29 - MonRRT - Section 7.2.2 RRT page 
31 - WedMultiple robots, flocking, and swarms Paper critique 3 due
November
 2 - FriProject Planning 
 5 - MonGaussians Estimation, and probability Assignment 5 due
 7 - WedKalman filtering Greg Welch's Kalman site
 9 - FriProject Pitches 
12 - MonLocalization with grid and Monte Carlo methods 
14 - WedParticle Localization  Assignment 6 cancelled
16 - FriSLAM and FastSLAM 
19 - MonGrasp and assembly Final project progress report due
21 - WedProject consult - email me for requested meetings 
23 - Fri  Thanksgiving Break
26 - MonGuarding and Pursuer-Evader 
28 - WedDARPA Urban Challenge talk 
30 - FriManipulation and Flexible object planning 
December
 3 - MonProtein Applications 
 5 - WedReview 
 7 - FriMini-final 
Final Dec. 14th 1-3PM : - Final project presentations