Course Title: Mobile Robotics
Course Code: IA712
Term: Fall 2025 & Spring 2026
This course provides a comprehensive introduction to the fundamental concepts and practical applications of mobile robotics. Students will gain a solid understanding of robot kinematics, locomotion, perception, and navigation, with a strong emphasis on hands-on experience using the Robot Operating System 2 (ROS 2). The curriculum is designed to equip students with the necessary skills to design, program, and integrate mobile robotic systems in various environments.
Upon completion of this course, students will have a general understanding of the field of mobile robotics (including both hardware and software), understand various problems and existing solutions (at the system and algorithm levels), and be able to use ROS middleware.
Integrating theory with practice, students will also gain hands-on experience using simulators to address fundamental mobile robotics problems, such as frontier-based exploration, SLAM using 2D laser rangefinders/cameras, grid-map-based robot navigation, etc.
Programming experience (e.g., C, C++, Python, Java, etc.) is essential.
Basic knowledge of linear algebra, calculus, and probability theory is required.
Experience with Linux (especially command-line) is helpful.
Lecture 1 (.pdf): Introduction (1h30, overview of mobile robotics, history, applications, and challenges)
Lecture 2 (.pdf): Software for Robotics (1h30, robot software architectures and communication protocols)
Lecture 3 (.pdf): System Integration (1h30, interfacing hardware and software, building and managing development workspaces)
Lecture 4 (.pdf): Locomotion (1h30, types of mobile robot locomotion including wheeled and legged)
Lecture 5 (.pdf): Kinematics (1h30, forward and inverse kinematics of wheeled robots)
Lecture 6 (.pdf): Perception (1h30, introduction to robot sensors such as lidar, camera, IMU and encoders)
Lecture 7 (.pdf): SLAM (1h30, fundamentals of Simultaneous Localization and Mapping)
Lecture 8 (.pdf): Exploration (1h30, strategies for autonomous robot exploration)
Lecture 9 (.pdf): Planning (1h30, task and path planning algorithms)
Lecture 10 (.pdf): Navigation (1h30, global and local navigation strategies, obstacle avoidance, and dynamic environments)
Lecture 11 (.pdf): Multi-robot Systems (1h30, coordination, communication, and task allocation in multi-robot teams)
Lecture 12: Exam
David FILLIAT. Robotique Mobile. ENSTA.
Roland Siegwart, Illah Reza Nourbakhsh, and Davide Scaramuzza. Introduction to Autonomous Mobile Robots. MIT Press.
Sebastian Thrun, Wolfram Burgard, and Dieter Fox. Probabilistic Robotics. MIT Press.
Howie Choset, Kevin M. Lynch, Seth Hutchinson, George A. Kantor, Wolfram Burgard, Lydia E. Kavraki, and Sebastian Thrun. Principles of Robot Motion: Theory, Algorithms, and Implementations. MIT Press.
Shuuji Kajita, Hirohisa Hirukawa, Kensuke Harada, and Kazuhito Yokoi. Introduction to Humanoid Robotics. Springer.