Purdue CS49000 Introduction to Robotics (Fall 2022)

Any intelligent robot system interacting with our environment needs to have perception, planning, and control methods in its cognition process. The perception module outlines the robot's procedures to gather and interpret sensory observations into world models. The underlying planning and control modules use those world models to plan robot behaviors and their interaction with our natural environments. Therefore, this course will cover the fundamental topics in robot perception, planning, and control to design general-purpose robot cognition algorithms. Overall, this course is divided into four modules:

  • Robot perception: This covers fundamental techniques needed for robot localization and mapping from raw 3D sensory information.

  • Robot planning: Given the generated maps, this module will discuss robot behavior planning techniques such as A*, RRT*, and trajectory optimization.

  • Robot Control: This introduces basic control techniques such as PID controller to execute the robot's planned behaviors in the real world.

  • Robot Learning: This part will briefly introduce machine learning techniques for robot decision-making and control.

Full syllabus is available here.

Administrative Information

  • Instructor: Ahmed H. Qureshi (ahqureshi@purdue.edu) | Office Hours & Location: Monday 3:00 - 4:00 pm at HAAS 152

  • TA: Hanwen Ren | Office Hours & Location: Wednesday 9 - 10 A.M. at HAAS G050

  • Time & Location: TTH:10:30 - 11:45 am, LWSN 1106

Course Content

Sr Date Topics (Tentative) Readings
1 8/23 Course Introduction
2 8/25 Probability, Bayesian Reasoning & Gaussian Distribution
3 8/30 Homogeneous Coordinates H.C
4 9/1 Gaussian Discriminant Analysis
9/1 Assignment 1 (Release 11:59 pm)
59/6 Robot Motion Model
6 9/8 Robot Sensor Model ~Q1
7 9/13 Feature-based Robot Localization
8 9/15 Featureless Localization, Bayesian Filter
9/15 Assignment 1 (Due 11:59 pm)
9/16 Assignment 2 (Release 11:59 pm)
9 9/20 Kalman Filter
109/22 Extended Kalman Filter (EKF) ~Q2
119/27 Simultaneous Localization and Mapping (SLAM)
12 9/29 Robot Motion Planning
9/30 Assignment 2 (Due 11:59 pm)
10/4 Assignment 3 (Release 11:59 pm)
13 10/4 Robot Manipulator (Forward/Inverse Kinematics)
14 10/6 Sampling-based Planners I: PRM, RRT
10/11 October Break
1510/13 Sampling-based Planners II: RRTConnect, RRT*, Bidirectional-RRT*
16 10/18 Combinatorial Planners
1710/20 Properties of Motion Planners ~Q3
10/24 Assignment 3 (Due 11:59 pm)
18 10/25 PID Control I
1910/27 PID Control II
10/27 Assignment 4 (Release 11:59 pm)
2011/1 Robust Control
21 11/3 Markov Decision Process, Dynamic Programming, Belman Eq
22 11/8 Vanilla Policy Gradient
23 11/10 Neural Networks I
11/10 Assignment 4 (Due 11:59 pm)
11/11 Assignment 5 (Release 11:59 pm)
24 11/15 Neural Networks II
2511/17 Imitation Learning for Robot Control
26 11/22 Deep Reinforcement Learning for Robot Control
11/24 Thanksgiving Vacation
2711/29 Advanced Topics in Robotics
11/29 Assignment 5 (Due 11:59 pm)
2812/1 Robot Ethics ~Q4
29 12/6 Closing Remarks

Prerequisites

Students are required to have strong familiarity with Data Structures & Algorithms, basic Calculus, and Linear Algebra, i.e., CS 25100 and [MA 26100 or MA 27101] and [MA 26500 or MA 35100].

Textbooks

There are no specific textbooks. However, some helpful reference books include:

  • Principles of Robot Motion (Theory, Algorithms, and Implementations) by Howie Choset, Kevin M. Lynch, Seth Hutchinson, George A. Kantor, Wolfram Burgard, Lydia E. Kavraki and Sebastian Thrun.

  • Planning Algorithms by Steven M LaValle. Cambridge university press, 2006.

  • Probabilistic Robotics by Wolfram Burgard, Dieter Fox, and Sebastian Thrun. MIT Press (2005).

  • Reinforcement learning: An introduction by Richard S. Sutton, and Andrew G. Barto. MIT press, 2018.

  • Deep Learning by Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. MIT press, 2016.

Additional reading material including lecture notes will be available to students via Brightspace.

Grading Policy

There are no midterm and final exams.

Assignments Weightage (%)
Assignments (5 X 15%) 75%
Quizzes (4 X 5%) 20%
Class Participation 5%
  • Participation (5%; ongoing). Participation points can be earned by actively engaging in discussions on piazza. Please read the feedback that I provide for ways to enhance this grade going forward, and consult with me if you find yourself struggling to participate so we can develop appropriate strategies together.

  • Assignments (75%). The assignments will be around the topics taught in the course to provide hands-on experience of programming robot algorithms.

  • Quizzes (20%). There will be four quizzes that will be held in person during the class. There would be no retake of the examination unless a student had a proof of an unavoidable emergency.

Late Submission Policy: All deadlines are firm unless notified in advance. Late submissions can only be accepted within next 48hr (1second==48hr) of the deadline but will result in a straight 25% off.

Academic Integrity

This course defaults to Purdue standards on intellectual integrity and academic conduct. Therefore, students are responsible for reading the following pages and comply with them throughout this course.