The City College of New York

Department of Electrical Engineering

G3300: Advanced Mobile ROBOTICS

Spring 2022

Course Objective:

This course is an in-depth study of state-of-the-art technologies and methods of mobile robotics. The course consists of two components: lectures on theory, and course projects. Lectures will draw from textbooks and current research literature with several reading discussion classes. In project component of this class, students will do computer simulation of SLAM algorithms and/or implement algorithms on mobile devices or robot platforms at the CCNY Robotics Lab.

Prerequisites: G5501 (Introduction to Robotics), Matlab or other programming language


You can download the G5501 lecture notes about the mobile robotics (starting from week 10) from the course website:

General Information:


Graduate level course, 3 credits, will be offered in spring semester every year. 


G5501 (Introduction to ROBOTICS), 

Lecture Time:

Tue. 6:30-9:15pm             


Prof. John (Jizhong) Xiao


Shepard Hall 73 and Zoom meeting


Steinman Hall, Room T-534

Office Hours:

Tue. 3:00-6:00pm or by appointment





CCNY Robotics Lab:     Dr. Xiao's Personal website:


1. Probabilistic ROBOTICS, Sebastian Thrun, Wolfram Burgard, Dieter Fox, The MIT Press, 2005, ISBN 0-262-20162-3. (You may find on-line copy of the book)

Reference materials:

1.  Introduction to AI Robotics, Robin R. Murphy, The MIT Press, 2000, ISBN 0-262-13383-0.

2.   Introduction to Autonomous Mobile Robots, Roland Siegwart, Illah R. Nourbakhsh, The MIT Press, 2004, ISBN 0-262-19502-X. 

3.   Papers from current research literature.

You can find these books (new or used) from

Tentative Topics:

Mathematic Background for Probabilistic Robotics, Mobile Robot Simultaneous Localization and Mapping (SLAM)

Course Schedule and Update:

Week and date

Lecture notes



Week 1 (Feb. 1)

Syllabus/Introduction/Review: ppt format

Reading Assignment

1) Measurement and Correction of Systematic Odometry Errors in Mobile Robots, Johann Borenstein, Liqiang Feng, IEEE Transaction on Robotics and Automation, Vol. 12, No. 6, Dec. 1996.

2) A calibration method for odometry of mobile robots based on the least-squares technique: theory and experimental validation
Antonelli, G.; Chiaverini, S.; Fusco, G.; IEEE Transaction on Robotics, Vol 21,  Issue 5,  pp 994-1004, Oct. 2005.


HWK1 Due date: Feb 15

Hint: You can either use "ode45" function in Matlab to solve the differential equation and embed in each sample step or write your own C/C++ program and use small step (0.001) integration to iteratively calculate the trajectory.  

I need a homework report consisting of the answers, plots, and Matlab code together. You can show me the animation after the class to gain extra credit.

Week 2 (Feb. 8)


Week 3 (Feb. 11~13) 

College closed




Week 3 (Feb. 15)


Reading Assignment: Chapter 1 and 2 of the textbook,

Probabilistic Robotics I. Mathematic Background for Bayes Filters.

Additional Reading for Homework: Probability-Basics, Markov Chain, Entropy Rate of Markov Chain, and Entropy,



HWK2: Exercises 1, 2 and 3 (a), (b) on pp36-37 of the textbook

Hint: You can use Matlab function

%y = sample(x) returns y sampled from distribution x

You can also use C++ programming,

Srand ( time(NULL)); // seed random number generator

HWK2 Due date: March 1

Feb. 21 President's Day


Week 4 (Feb 22)

Reading Assignment: Chapter 3 and 7 of the textbook

Probabilistic Robotics II: Mathematic Background for Gaussians and Kalman Filter 


HWK3: Section 2.8 Exercise 4 in the textbook, (p37~38)

HWK3 Due date: March 8

Week 5 (March 1)

Reading Assignment: Chapter 6 of the textbook. Robot Perception Model


HWK 4: Section 3.8 Exercise 1 and 2 in the textbook, (p81~82), Due date: March 15

Week 6 (March 8)

Reading Assignment: Chapter 5 and 7 of the textbook. Robot Motion and EKF-Localization

Week 7 (March 15)

Reading Assignment: Chapter 10 of the textbook. SLAM

Week 8 (March. 22) 

Homework review: HWK solutions

Week 9 (March 29)

Mid-term Exam: Time: 6:30~9:00pm, Closed book, One-page cheat sheet allowed



Week 10 (April 5) 

Reading Assignment: Chapter 4 and Chapter 8 of the textbook. Particle Filter

Project 1, with hint to derive F and G matrix, Project-1 Solution, Due date: April 26

Week 11 (April 12)

Reading Assignment: Chapter 13 of the textbook. Fast SLAM,


Week 12 (April 15~ April 22)

Spring recession



Week 12 (April 19)

College Closed


Week 13 (April 26)

Project Tutorial, Final Project Assignment (ORB-SLAM)

Final Project, Due date: May 24,

Week 14 (May 3)

Project practice/ Paper reading/presentation (Visual Inertia Odometry, VIO)


Week 15 (May 10)

Project practice/ Paper reading/presentation (Quaternion representation of 3D pose)

Week 16 (May 17)

Project practice/ Paper reading/presentation (ORB-SLAM, code architecture)


You will get 80 if you can run the ORB-SLAM existing code. You can earn extra points if you improve the code.

Week 16 Final Exam Week

(May 18~May 24)

May 17 (Last day of Classes)


Final Project Due date: May 24, 2022

Special request for grace period will be granted case by case.


Score board:

For these students who haven't finished the final project, INC grades will be given. The grade will be changed after you submit the final project report and show me the demo. If you have any special request or have dispute on the grade, please email me as soon as possible.   


Grading Policy (tentative):

Homework                                                          20%
Mid-term Exam                                                   30%   
Project 1                                                              20%
Final Project                                                        30%

A: 90~100; B: 80~90; C: 70~80; D: 60~70; F: under 60