Robot SLAM and Localization
Map Your World and Localize Your Robot
Course Overview
A mobile robot can only move with purpose when it understands two things: what the space around it looks like, and where it stands within that space. This course focuses on exactly those two questions.
You will start with the ideas behind mapping and localization, then move quickly into applying them with tools widely used in the ROS2 ecosystem. The goal is to understand why each step works, not only how to run it.
Whether you are preparing for autonomous navigation or want to strengthen your mobile robotics foundation, this course gives you a clear and practical understanding of how robots perceive and place themselves in the world.
What You'll Learn
Why SLAM is a chicken and egg problem, and the difference between Online SLAM and Full SLAM
How encoders and LiDAR are used in SLAM, and why sensor drift distorts maps in the real world
The intuition behind Graph SLAM, pose graphs, and loop closure for map optimization
How maps are represented as binary and probabilistic occupancy grids
The SLAM Toolbox architecture and its synchronous, asynchronous, and offline mapping modes with ROS Bag files
Creating a SLAM package, configuring Lifecycle Nodes, Launch files, and YAML parameters, and mapping a simulated apartment world
Saving maps with the save_map service and serializing them for continuous mapping
How AMCL and the particle filter localize a robot, including its adaptive feature
Configuring and launching AMCL with the map server and lifecycle manager, tuning odometry noise, initial pose, and particles
Testing localization with teleoperation in simulation and recovering from a bad pose with global localization
Curriculum Explorer6 Sections • 48 Lessons • Training Hours: 20h 0m
hardware Requirements
Solid understanding of ROS2 basics: Nodes, Topics, Services, Packages, and Launch files
Familiarity with robot models and Gazebo simulation is helpful but not required
Basic Linux Terminal familiarity is helpful
Your Instructor
Kyrillos Fekry
Senior Robotics Software Engineer
"Senior Robotics Software Engineer and Systems Architect with over Five years of experience leading the design, architecture, and production deployment of autonomous mobile robot platforms. Demonstrated ability to remotely lead cross-functional engineering teams, architect scalable robot software systems—from behavior engines and navigation stacks to CI/CD pipelines and mass-production workflows."
Robotics Engineering
Certificate of Completion
Official industry-recognized credential upon finishing.
