Purdue CS49000 Introduction to Robotics (Fall 2023)

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 2:00 - 3:00 pm at HAAS 152

  • TA: Zixing Wang (wang5389@purdue.edu) | Office Hours: Wednesday 3:00-4:00 at HAAS 143

  • Time & Location: TTH:10:30 - 11:45 am, GRIS 133

Course Content

Sr Date Topics (Tentative) Readings
1 8/22 Course Introduction
2 8/24 Probability, Bayesian Reasoning & Gaussian Distribution
3 8/29 Homogeneous Coordinates
4 8/31 Gaussian Discriminant Analysis
9/1 Assignment 1 (Release 11:59 pm)
59/5 Robot Motion Model
6 9/7 Robot Sensor Model ~Q1
7 9/12 Feature-based Robot Localization
8 9/14 Featureless Localization, Bayesian Filter
9/15 Assignment 1 (Due 11:59 pm)
9/16 Assignment 2 (Release 11:59 pm)
9 9/19 Kalman Filter
109/21 Extended Kalman Filter (EKF) ~Q2
119/26 Simultaneous Localization and Mapping (SLAM)
12 9/28 Motion Planning, Forward/Inverse Kinematics
9/29 Assignment 2 (Due 11:59 pm)
9/30 Assignment 3 (Release 11:59 pm)
13 10/3 Invited Talk (Prof. Sooyeon Jeong): Human-Robot Interaction I
14 10/5 Combinatorial Planners
10/10 October Break
1510/12 Sampling-based Planners I: PRM, RRT
16 10/17 Sampling-based Planners II: RRTConnect, RRT*, Bidirectional-RRT*
1710/19 Properties of Sampling-based Planners ~Q3
10/20 Assignment 3 (Due 11:59 pm)
18 10/24 Robot Control
1910/26 PID Control I
10/27 Assignment 4 (Release 11:59 pm)
2010/31 PID Control II
21 11/2 Combining Planning + Control + Localization
22 11/7 Markov Decision Process
23 11/9 Dynamic Programming
11/10 Assignment 4 (Due 11:59 pm)
11/11 Assignment 5 (Release 11:59 pm)
24 11/14 Invited Talk (Prof. Angelique Taylor, Cornell Tech): Human-Robot Interaction II
2511/16 MCMC, TD-learning
26 11/21 Neural Networks
11/23 Thanksgiving Vacation
2711/28 Deep Q Learning for Robot Control ~Q4
11/29 Assignment 5 (Due 11:59 pm)
2811/30 Modern Day Robotics and Robot Ethics
29 12/5 Final Exam
30 12/7 Closing Remarks

Prerequisites

Undergraduate level CS 25100 Minimum Grade of C or Equivalent.

Textbooks

Siciliano, B., Khatib, O., & Kröger, T. (Eds.). (2008). Springer handbook of robotics (Vol. 200). Berlin: springer. Additional material will be selected from other sources which may 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

Items Weightage (%)
Assignments (5 X 10%) 50%
Quizzes (4 X 5%) 20%
Final Exam 25%
Class Participation 5%
  • Participation (5%; ongoing). Participation points can be earned by actively engaging in discussions during class and 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 (50%). 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.

  • Final Exam (25%). There will be a final exam 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.