Course Syllabus
Weekly Schedule
| Week | Dates | Wednesday | Friday | Assignments/Quizzes | Files |
|---|---|---|---|---|---|
| 1 | Aug 27, 29 | Welcome | Mobile robotics | ||
| 2 | Sept 3, 5 | Mobile robotics and linear algebra | Coordinate frames | Assignment 4 Part A Released PS1 Released (Wed Sep 3, 11:00 PM) |
|
| 3 | Sept 10, 12 | ROS, and launch assignment 4 | Quaternions | 📚 ROS2 Tutorial | |
| 4 | Sept 17, 19 | Dynamics of wheeled robots | Dynamics of aerial robots | PS1 Due (Fri Sep 19, 11:00 PM) | |
| 5 | Sept 24, 26 | Control | Control | ||
| 6 | Oct 1, 3 | Ded reckoning and GPS | Ded reckoning and GPS | CE1 Released (Thu Sep 25) | |
| 7 | Oct 8, 10 | Kalman Filters | GPS-INS sensor fusion: EKF formulation / Quiz 1 | PS2 Released (Sun Oct 5) CE1 Due (Tue Oct 28) Quiz 1 (Fri Oct 15) |
📦 Problem Set 2 |
| 8 | Oct 15, 17 | Coding exercise 2 Introduction and Final Project Discussion | LiDAR and Cameras | ||
| 9 | Oct 22, 24 | LiDAR and Cameras | Foundations of machine vision | CE2 Released (Thu Oct 16) PS2 Due (Tue Oct 21) |
|
| 10 | Oct 29, 31 | Foundations of machine vision | SLAM | 📚 Assignment 4 - Demo session | |
| 11 | Nov 5, 7 | SLAM | SLAM | PS3 Released (Sun Nov 2) CE2 Due (Thu Nov 6) |
|
| 12 | Nov 12, 14 | SLAM | Guest lecture | CE3 Released (Thu Nov 13) | |
| 13 | Nov 19, 21 | Coding exercise 3 introduction | Quiz 2 (Online on Canvas, 24 hours) | PS3 Due (Tue Nov 18) Quiz 2 (Fri Nov 21, online 24h) Assignment 4 Part A Due (Fri Nov 21) Assignment 4 Part B Released (Mon Nov 24) |
|
| 14 | Nov 26, 28 | Fall Break | Fall Break - Thanksgiving | ||
| 15 | Dec 3, 5 | In-class presentations by graduate students | In-class presentations by graduate students | ||
| 16 | Dec 10, 12 | In-class presentations by graduate students / Quiz 3 (Mon Dec 8, online) | Last Day of Class | CE3 Due (Thu Dec 4) Assignment 4 Part B Due (Thu Dec 4) Quiz 3 (Mon Dec 8, online 24h) |
|
| Finals Week | |||||
Course Modules and Schedule
Module 1: Introduction to Mobile Robotics (5 hours)
- What is a mobile robot
- What makes mobile robotics challenging and exciting
- Applications of mobile robotics
- In what ways is robot programming different?
- Introduction to Robot Operating System (ROS2)
Dates: Week 1-2 (August 26 - September 6)
Module 1.5: Fundamental Mathematical Principles (3.75 hours)
- Mathematical notation, norms, vector spaces
- Basics of ordinary differential equations and difference equations
- Review of Matrix theory
Dates: Week 2-3 (September 4-13)
Assignment: Problem Set 1 out (September 3) - Due September 19
Module 2: Dynamics of Mobile Robots (5 hours)
- Coordinate transformations with Euler angles
- The space of rotation matrices SO(2) and SO(3)
- Quaternions as a way of representing and working with rotations
- General 6 DOF Kinematic and Dynamics equations with quaternions
- Holonomic dynamics: Case study - Aerial Multirotor robots (drones)
- Nonholonomic dynamics: Case study - Independent all-wheel drive wheeled robots
- Advanced applications: walking robots
Coding Exercise: Writing programs for coordinate transformation. Creating simulations of mobile robots using ROS and Gazebo.
Dates: Week 3-4 (September 11-20)
Assignment: Coding Exercise 1 out (September 26) - Due October 28
Module 3: Principles of Robot Motion Control (3.75 hours)
- Introduction to robot control: feedback control
- PID controllers
- Limitations of linear control for mobile robots
- Nonlinear control
- Introduction to Model Predictive Control and variants
- Case study: Waypoint navigation for aerial drones
- Case study: Motion control of a wheeled robot
- Vignette: Model Reference Adaptive Control of quadrotors
Coding Exercise: Motion control of a wheeled robot
Dates: Week 5-6 (September 23 - October 4)
Assignment: Problem Set 1 due (September 19), Problem Set 2 out (October 5) - Due October 21
Module 4: Mobile Manipulation (3.75 hours)
- Introduction to mobile manipulation
- Kinematics of manipulators on mobile bases
- Workspace analysis and reachability
- Coordinated motion planning for base and arm
- Force control and compliance
- Grasping and manipulation strategies
- Case study: Agricultural robots with manipulators
- Case study: Warehouse automation and pick-and-place
Assignment 4 Component: Mobile manipulation concepts incorporated in simulation project
Dates: Week 7 (October 7-11)
Quiz 1: October 15 (Friday)
Module 5: Multi-Sensor Proprioceptive Sensor Fusion (3.75 hours)
- Dead-reckoning: Intuition and foundations
- GNSS: Global frame localization - Mathematics of GPS and satellite navigation
- Inertial sensor systems and mathematical models
- Kalman Filtering and Bayesian data fusion
- Bayes principle and the Chapman-Kolmogorov Equation
- Optimal filtering problem with Gaussian noise and linear dynamics (Kalman Filters)
- Extended Kalman filters, using point-based linearization for nonlinear dynamics
- Vignette: Particle filters and unscented Kalman filter
- GPS-INS sensor fusion with Extended Kalman Filters
- Process and noise models
- Filter formulation
Coding Exercise: Develop software for GPS-INS fusion with EKF given data
Dates: Week 8-9 (October 14-25)
Assignment: Coding Exercise 2 out (October 16) - Due November 6
Module 6: Symbolic Exteroceptive Perception (5 hours)
- Active exteroceptive sensors: Sonar
- Active exteroceptive sensors: LiDAR
- Passive exteroceptive sensors: Camera as a sensor
- Stereo camera and RGB-D cameras
- Machine vision foundations for robotics
- Image formation and encoding
- The pinhole camera model and camera calibration
- Basic image processing
- Convolutional filters
- Edge detection, line detection, SURF, SIFT, and other heuristic features
- Vignette: Deep learning as a way of image processing for robotics
Dates: Week 9-10 (October 21 - November 1)
Assignment: Problem Set 3 out (November 2) - Due November 18
Module 7: Localization and Mapping (6.25 hours)
- What is SLAM, Why SLAM?
- The need for path planning
- Topological and Metric maps
- Localization
- Probabilistic map-based localization
- Landmark-based localization
- Position beacon systems
- Route-based localization (graph maps)
- Map building
- SLAM
- Extended Kalman Filter (EKF) SLAM
- Visual SLAM with single camera
- Discussion of open/advanced problems in SLAM
Coding Exercise: EKF-SLAM with LIDAR in ROS
Dates: Week 11-13 (November 4-22)
Quiz 2: November 21 (Friday, online on Canvas, 24 hours)
Assignment: Coding Exercise 3 out (November 13) - Due December 4
Module 8: Frontiers in Mobile Robotics (5 hours)
- Traversability and waypoint-free navigation
- Foundation models for robotics
- Mobile manipulation
- Graduate student presentations
- What courses can you take from here in your journey as a roboticist
Dates: Week 14-15 (December 2-11)
Quiz 3: December 8 (Monday, online on Canvas, 24 hours)
Final Project Presentations: December 9-11
Important Dates Summary
| Date | Event |
|---|---|
| August 27 (Wed) | First Day of Class |
| September 3 (Wed) | Assignment 4 Part A Released + Problem Set 1 Released (11:00 PM) |
| September 19 (Fri) | Problem Set 1 Due (11:00 PM) |
| September 26 (Thu) | Coding Exercise 1 Released (8:00 AM) |
| October 5 (Sun) | Problem Set 2 Released (8:00 AM) - Download |
| October 15 (Fri) | Quiz 1 (Canvas) |
| October 28 (Tue) | Coding Exercise 1 Due (11:00 PM) |
| October 16 (Thu) | Coding Exercise 2 Released (8:00 AM) |
| October 21 (Tue) | Problem Set 2 Due (11:00 PM) |
| November 2 (Sun) | Problem Set 3 Released (8:00 AM) |
| November 6 (Thu) | Coding Exercise 2 Due (11:00 PM) |
| November 21 (Fri) | Quiz 2 (Canvas, online 24 hours) |
| November 21 (Fri) | Quiz 2 Extra Credit Due (11:00 PM) - Guide |
| November 13 (Thu) | Coding Exercise 3 Released (8:00 AM) |
| November 18 (Tue) | Problem Set 3 Due (11:00 PM) |
| November 9-14 | Assignment 4 Early Submission Window (+10 bonus points) - Guide |
| November 21 (Fri) | Assignment 4 Part A Due (11:00 PM) |
| November 24 (Mon) | Assignment 4 Part B Released |
| November 26-28 | Thanksgiving Break - No Classes |
| December 4 (Thu) | Coding Exercise 3 Due (11:00 PM) |
| December 4 (Thu) | Assignment 4 Part B Due (11:00 PM) |
| December 8 (Mon) | Quiz 3 (Canvas, online 24 hours) |
| December 9 (Tue) | Quiz 3 Extra Credit Due (11:00 PM) - Guide |
| December 12 (Fri) | Last Day of Class |
Required Textbooks
Primary Text:
- Siegwart et al., Autonomous Mobile Robots (available electronically in UIUC library)
Additional Reading (Optional):
- Murphy, Introduction to AI for Robotics
- Kuipers, Quaternions and Rotation Sequences (available electronically in UIUC library)
- Farrell, Aided Navigation, GPS with High-rate Sensors
- Kelly, Mobile Robotics: Mathematics, Models, and Methods
- Dudek and Jenkin, Computational Principles of Mobile Robotics
- Thrun et al., Probabilistic Robotics
Learning Outcomes
By the end of this course, students will be able to:
- Identify what makes mobile robotics challenging and exciting
- Provide a taxonomy of different types of mobile robotic systems and methods of locomotion
- Construct dynamic models of holonomic and nonholonomic mobile robots
- Explain the workings of different sensor systems and construct their mathematical models
- Create sensor fusion algorithms and software through Bayesian filtering
- Derive Kalman Filters from scratch and construct approximation or sampling-based filters for nonlinear systems
- Construct Kalman filtering-based GPS-INS algorithms and architectures
- Describe basic architectures and principles of SLAM algorithms
- Create motion control algorithms for aerial and wheeled ground robots
- Create basic path planning algorithms using PRM, RRT, RRT*, and MDPs
- Design and implement robot software with ROS2 middleware and Python