Learning track
Navigation
How a robot gets from here to there without hitting anything, and what to do when it cannot. Theory lessons for the ideas, labs where you fix real failures.
60 of 60 theory lessons and 35 of 35 labs are open. Items marked coming soon are not yet available. Start with M1-T1: What Is Robot Navigation?.
A shift at Meridian General
Every lab is an incident from one shift of Scout, a delivery robot at a fictional hospital: a door that closes mid-route, a cart parked in the corridor, a glass wall the LiDAR cannot see. You read the incident report, reproduce the failure, fix it, prove the fix on hidden scenarios, and finish with a post-mortem.
Each module pairs theory with practice. A lesson gives the intuition, the mathematics or algorithm, a worked numeric example and its limits. The module ends with the whole shift in the capstone.
Module 1
Navigation Foundations
What navigation is, how the stack fits together, how a robot actually moves, and how to measure whether it navigated well.
Theory (6)
- M1-T1What Is Robot Navigation?Theory
- M1-T2The Navigation Stack at a GlanceTheory
- M1-T3Robot Motion Models for NavigationTheory
- M1-T4Frames, Poses and FootprintsTheory
- M1-T5Configuration SpaceTheory
- M1-T6Measuring Navigation: Success, Efficiency, Safety and ComfortTheory
Labs (3)
- M1-L1Read a Failed RunBrowser tool
- M1-L2Drive the Robot: Unicycle and Car-Like ModelsBrowser lab
- M1-L3Score a Navigation RunBrowser lab
Module 2
Maps and Costmaps
Turning a map into something a planner can trust: occupancy for planning, inflation, distance fields, layers, roads and terrain.
Theory (6)
- M2-T1Occupancy Grids for PlanningTheory
- M2-T2Inflation and FootprintsTheory
- M2-T3Distance Transforms and Euclidean Distance FieldsTheory
- M2-T4Layered CostmapsTheory
- M2-T5Roadmaps, Lanes and Semantic MapsTheory
- M2-T6Traversability and 3D MapsTheory
Labs (3)
- M2-L1Build an Inflated CostmapBrowser lab
- M2-L2Compute a Distance FieldBrowser lab
- M2-L3Find the Ghost ObstaclesBrowser lab
Module 3
Global Planning: Graph Search
Finding a route on a grid or graph: breadth-first search, Dijkstra, A*, heuristics, any-angle search and replanning.
Theory (7)
- M3-T1Search Problems on Grids and GraphsTheory
- M3-T2Breadth-First Search and DijkstraTheory
- M3-T3A*: Search with a HeuristicTheory
- M3-T4Heuristics: Admissible, Consistent, InformedTheory
- M3-T5Any-Angle and Fast SearchTheory
- M3-T6Replanning: D* Lite and LPA*Theory
- M3-T7Planning on a CostmapTheory
Labs (4)
- M3-L1Implement DijkstraBrowser lab
- M3-L2Implement A* with Search ReplayBrowser lab
- M3-L3Fix a Corner-Cutting PlannerBrowser lab
- M3-L4Replan When the Corridor ClosesBrowser lab
Module 4
Sampling-Based and Kinodynamic Planning
Planning where grids are too big or the robot cannot turn on the spot: collision checking, PRM, RRT, RRT*, Dubins curves and Hybrid A*.
Theory (6)
- M4-T1Why Sample? High-Dimensional and Continuous SpacesTheory
- M4-T2Collision CheckingTheory
- M4-T3PRM and RRTTheory
- M4-T4RRT*, Informed RRT* and BIT*Theory
- M4-T5Dubins and Reeds-Shepp CurvesTheory
- M4-T6Hybrid A* and State LatticesTheory
Labs (4)
- M4-L1Collision-Check a FootprintBrowser lab
- M4-L2Grow an RRTBrowser lab
- M4-L3Rewire to a Better Path with RRT*Browser lab
- M4-L4Park the Car-Like RobotBrowser lab
Module 5
Trajectories and Path Following
From a path to motion: smoothing, speed limits, pure pursuit, Stanley, LQR and MPC, and why tracking fails.
Theory (7)
- M5-T1Path versus TrajectoryTheory
- M5-T2Smoothing: Shortcuts, Splines and Gradient MethodsTheory
- M5-T3Curvature, Velocity and Acceleration LimitsTheory
- M5-T4Pure PursuitTheory
- M5-T5Stanley and Cross-Track ControlTheory
- M5-T6LQR and MPC for Path TrackingTheory
- M5-T7When Tracking Goes WrongTheory
Labs (4)
- M5-L1Smooth a Jagged PathBrowser lab
- M5-L2Build a Velocity ProfileBrowser lab
- M5-L3Tune Pure PursuitBrowser lab
- M5-L4Compare Pure Pursuit and StanleyBrowser lab
Module 6
Local Planning and Obstacle Avoidance
Reacting to what the map did not know: potential fields, the dynamic window, moving obstacles, ORCA and social navigation.
Theory (7)
- M6-T1Local versus Global PlanningTheory
- M6-T2Potential Fields and Local MinimaTheory
- M6-T3The Dynamic Window ApproachTheory
- M6-T4Time to Collision and Predicting Moving ObstaclesTheory
- M6-T5Velocity Obstacles, RVO and ORCATheory
- M6-T6Social NavigationTheory
- M6-T7Choosing a Local PlannerTheory
Labs (4)
- M6-L1Escape the Local MinimumBrowser lab
- M6-L2Implement the Dynamic WindowBrowser lab
- M6-L3Avoid a Moving ObstacleBrowser lab
- M6-L4Pass Without Colliding: ORCABrowser lab
Module 7
Safety, Uncertainty and Recovery
Staying safe and getting unstuck: stopping distance, barrier functions, pose uncertainty, perception failures, behaviour trees and recovery.
Theory (7)
- M7-T1Stopping Distance and Speed LimitsTheory
- M7-T2Safety Filters: Control Barrier Functions for NavigationTheory
- M7-T3Navigation Under Pose UncertaintyTheory
- M7-T4Perception Failures: Glass, Dust and DropoutsTheory
- M7-T5Behavior Trees for NavigationTheory
- M7-T6Recovery Behaviors and Stuck DetectionTheory
- M7-T7Localization Loss and the Kidnapped RobotTheory
Labs (4)
- M7-L1Size the Safety MarginBrowser lab
- M7-L2Plan with Pose UncertaintyBrowser lab
- M7-L3Build a Recovery Behavior TreeBrowser lab
- M7-L4Detect and Escape a Stuck RobotBrowser lab
Module 8
Missions, Coverage and Fleets
Beyond one trip: ordering stops, covering a floor, exploring, and sharing space with other robots.
Theory (6)
- M8-T1Waypoint Missions and Route OrderingTheory
- M8-T2Coverage Path PlanningTheory
- M8-T3Frontier ExplorationTheory
- M8-T4Multi-Robot Path FindingTheory
- M8-T5Traffic Management, Deadlock and LivelockTheory
- M8-T6Docking, Charging and Fleet OperationsTheory
Labs (4)
- M8-L1Order the StopsBrowser lab
- M8-L2Cover the FloorBrowser lab
- M8-L3Explore by FrontiersBrowser lab
- M8-L4Break the DeadlockBrowser lab
Module 9
Navigation in the Real World
Running navigation on real systems: Nav2, tuning, frames and timing, evaluation, other platforms and learned navigation.
Theory (6)
- M9-T1Nav2 ArchitectureTheory
- M9-T2Tuning a Navigation StackTheory
- M9-T3Frames, Timing and SimulationTheory
- M9-T4Evaluating NavigationTheory
- M9-T5Other Platforms: Legged, Aerial, Marine and Off-RoadTheory
- M9-T6Learned and Language-Guided NavigationTheory
Labs (4)
- M9-L1Tune the Inflation RadiusBrowser tool
- M9-L2Lint a Nav2 Parameter FileBrowser tool
- M9-L3Validate a Behavior TreeBrowser tool
- M9-L4Bring Up Nav2 in SimulationROS 2 project
Module 10
Capstone: The Shift
Putting it together: design a navigation system for a full hospital shift and defend the trade-offs.
Theory (2)
- M10-T1Designing a Navigation SystemTheory
- M10-T2Engineering Trade-offs and Safety CasesTheory
Labs (1)
- M10-L1The Shift SimulatorBrowser lab
Get notified when the next module is released.
One email per new module.