CS498GC: Mobile Robotics

Fall 2025

Course Description

This course introduces students to foundational principles of mobile robotics with a focus on developing software for robots. Students will gain hands-on experience with ROS2 (Robot Operating System 2) and implement core algorithms for robot perception, navigation, and sensor fusion. Through practical coding exercises and real sensor data processing, students will learn how robots perceive, navigate, and interact with their environment.

Topics covered include dynamic modeling, coordinate transformations, sensor processing (IMU, GPS, wheel encoders, LiDAR, cameras), sensor fusion algorithms including Kalman filters, Simultaneous Localization and Mapping (SLAM), and feedback control for robotics. The course emphasizes practical implementation and real-world applications in autonomous systems.

Course Time and Location
Lecture: Wednesdays & Fridays, 3:30-4:45 PM
Location: 0216 Siebel Center for Computer Science
Format: In-person
Online Platforms
Canvas for course materials and grades
Campuswire for discussions
Gradescope for assignment submission
ROS2 Documentation for reference

Instructor

Prof. Girish Chowdhary
Prof. Girish Chowdhary
Associate Professor
Agricultural & Biological Engineering
Department of Computer Science
Office Hours: By appointment
Office: CSL 150 / AESB 376
Email: girishc@illinois.edu

Teaching Assistant

Kulbir Singh Ahluwalia
Kulbir Singh Ahluwalia
PhD Candidate
Department of Computer Science
Office Hours: TBD
Location: CSL 157 / Virtual
Email: ksa5@illinois.edu

Learning Objectives

By the end of this course, students will be able to:

  • Design and implement ROS2 nodes for robot control and perception
  • Develop sensor fusion algorithms using Extended Kalman Filters
  • Process and integrate data from multiple sensors (IMU, GPS, encoders, LiDAR)
  • Implement SLAM algorithms for robot localization and mapping
  • Apply coordinate transformations and quaternion operations in robotics
  • Create motion control algorithms for mobile robots
  • Evaluate and optimize robot navigation systems

Prerequisites

Students are expected to have the following background:

  • Mathematics: MATH 221 (Calculus), MATH 225 (Linear Algebra), MATH 285 (Differential Equations)
  • Statistics: STAT 400 or equivalent
  • Programming: CS 125, CS 225 or equivalent - proficiency in Python required
  • Note: Graduate standing is sufficient to waive prerequisite requirements for graduate students

Important Dates

Event Date
First Day of Class August 27, 2025 (Wed)
Assignment 4 Part A Sept 3 - Nov 21, 2025
Problem Set 1 Sept 21 - Oct 7, 2025
Coding Exercise 1 Oct 8-28, 2025
Quiz 1 October 10, 2025 (Fri)
Problem Set 2 Oct 27 - Nov 11, 2025
Quiz 2 November 7, 2025 (Fri)
Coding Exercise 2 Nov 15 - Dec 2, 2025
Problem Set 3 Nov 24 - Dec 11, 2025
Assignment 4 Part B Nov 24 - Dec 16, 2025
Thanksgiving November 26-28, 2025
Quiz 3 December 5, 2025 (Fri)
Last Day of Class December 12, 2025 (Fri)
Coding Exercise 3 Dec 12-30, 2025

Grading Distribution

Component Points Percentage
Coding Exercises (3) 500 45.5%
Problem Sets (3) 300 27.3%
Assignment 4 (Simulation Project) 100 9.1%
Quiz 1 50 4.5%
Quiz 2 75 6.8%
Quiz 3 75 6.8%
Total 1100 100%

Grading Scale

Grade Grade Points Range
A+ 1034-1100
A 990-1034
A- 957-990
B+ 924-957
B 880-924
B- 847-880
C+, C, C- 770-847
D+, D, D- 660-769
F 0-659