COMP 790-099: Robotics

Fall 2009

Time: Tuesdays, Thursdays 2:00pm - 3:15pm

Location: SN 115

Instructor: Prof. Ron Alterovitz

Office hours: Thursdays 3:15pm - 4:30pm or by appointment, 223 Sitterson Hall


Robotics technology is having a significant impact in medicine, transportation, defense, and entertainment, in addition to manufacturing and automation. Creating robotic systems raises a unique combination of questions in algorithm design, computational geometry, control theory, and systems engineering. This introductory course will provide an overview of robotics with an emphasis on the computational and algorithmic aspects.

The course will begin by introducing the fundamentals of robotics systems and algorithms and then lead to discussions on current research and applications. The topics to be covered, which may be modified based on the interests of enrolled students, include:

Who should attend: Students with interests in robotics, motion planning algorithms, graphics, and computational geometry, as well as application areas such as those listed above. Students from Computer Science as well as other departments are welcome. For students in Computer Science, the course project report could serve as a basis for the MS Program Product requirement and/or the department technical writing requirement.

Credits: Students can register for either 1 or 3 credits. Students who register for 1 credit will be required to participate in class discussions and present one paper. Students who register for 3 credits will complete a project of their choice as well as the presentations and/or assignments as described below.

Grading: For 3 credits: 40% course project, 40% paper presentations/assignments, 20% participation. Each student will select the topic of his/her course project. Each student will also either (1) present two papers of his or her choice from the research literature, or (2) complete a pair of written/programming assignments and present one paper of his or her choice. For 1 credit: 50% paper presentation, 50% participation.

Prerequisites: Knowledge of undergraduate level calculus, linear algebra, and programming (any language, such as Java, Matlab, C, C++, etc.). Both graduate and undergraduate students are welcome to enroll.

Textbook: There is no textbook for this course. Course notes, in-class handouts, and links to relevant papers will be provided.

Tentative Schedule (subject to change)

Date Topics Details
August 25 What is Robotics?
August 27 Introduction to Configuration Space
September 1 Deterministic Motion Planning
September 3 C-Spaces, Introduction to Sampling-based Motion Planning
September 8 Probabilistic Roadmaps
September 10 Improving PRM's and Single-Query Sampling-based Motion Planning
September 15 Motion Planning with Uncertainty Project ideas
Robotics Algorithm paper selection due
September 17 Introduction to Markov Decision Processes Assignment 1 posted
September 22 Markov Decision Processes Project proposal due
September 24 Stochastic Motion Roadmaps
September 29 Robot Sensing
October 1 Deformable & Dynamic Environments
Gu Ye: Dynamic Environments
Hina Shah: Deformable objects
Assignment 1 due
Presentation slides due 1 week before your talk
October 6 Kalman Filters
Jonathan Bidwell: Kalman filters
October 8 Sampling-based Planning
Dwight Springthorpe: Optimal Configuration Sampling
Jinghe Zhang: Probabilistic Cell Decomposition
October 13 Guest lecture: Edgar Lobaton on Computer Vision and Image Processing
October 15 Planning with Uncertainty
Jia Pan: Belief Roadmaps
Shih-ling Keng: Exploration/Exploitation
October 20 Vision and Human-Robot Interaction (HRI)
Andy Lim: Grasping using Vision
Kelli Bacon: Spatial Reasoning for HRI
Robotics Application paper selection due
Project progress report #1 due
October 22 Fall recess
October 27 Kinematics
October 29 Inverse Kinematics
November 3 Manipulation
Dwight Springthorpe: Microparticle Manipulation
Kelli Bacon: Demonstrations of Home Tasks
Presentation slides due 1 week before your talk
November 5 Neural interfaces and Vision
Maggie Zhou: Robotic Neural Interface
Jonathan Bidwell: Visual Odometry
November 10 Navigation and Medical Robotics
Ezra Stuetzel: Learning Car Navigation
Jia Pan: Continuum Robots
Assignment 2 posted
November 12 Aerial Vehicles
Jinghe Zhang: Flapping Wing Aerial Vehicle
Jeff Pool: Navigation for Indoor Flying
Project progress report #2 due,
Send ordered list of preferred project presentation dates
November 17
November 19
November 24 Project presentations:
Jinghe Zhang and Gu Ye
Assignment 2 due
November 26 Thanksgiving holiday
December 1 Project presentations:
Kelli Bacon, Hina Shah, Andy Lim
Project progress report #3 due (2-4 pages, use IEEE template (not Magnetics))
December 3 Project presentations:
Jonathan Bidwell, Ezra Stuetzel, Maggie Zhou
December 8 Project presentations:
Jia Pan, Shih-ling Keng, and Dwight Springthorpe,
Final project report due December 17 at noon (5-8 pages, use IEEE template (not Magnetics))

Reading Materials

Below is a list of suggested papers to select for presentations. Please check back for updates. Download links are provided for some papers. Other papers can be downloaded from the UNC library.

Papers on Robotics Algorithms

Papers on Robotics Applications

Relevant Textbooks

There is no textbook for this course. Below are standard textbooks in the field that you may find useful or interesting.

Advice on Presentations

Giving an Academic Talk by Jonathan Shewchuk