HomeRobotics & KinematicsPose-Graph SLAM: Loop-Closure Optimization

Pose-Graph SLAM: Loop-Closure Optimization

Drive a robot around a closed loop with noisy odometry, watch dead-reckoning drift accumulate, then trigger a loop-closure constraint and pose-graph relaxation that snaps the whole trajectory back into a globally consistent map.

Robotics & Kinematics3DAdvanced60 FPS📱 Mobile-adapted⇄ 2D version
slam-algorithms ↗ Open standalone

Simultaneous Localization and Mapping (SLAM) has to solve a problem odometry alone can't: every wheel-encoder or IMU measurement carries a little noise, and that noise compounds step after step into a trajectory that drifts steadily away from the truth. This simulator drives a robot around a closed loop while integrating noisy relative-pose measurements into a dead-reckoning estimate, then adds the one thing pure odometry lacks — a loop-closure constraint from recognizing a previously visited place — and runs a real pose-graph relaxation over the resulting graph of nodes and relative-pose edges. Watch the raw odometry trajectory drift away from ground truth, then watch loop-closure optimization redistribute that error across the whole loop until the pose-graph estimate collapses back onto a globally consistent trajectory, exactly the back-end step that runs inside every modern SLAM stack.

⚙ Under the hood

Drive a robot around a closed loop with noisy odometry, watch dead-reckoning drift accumulate, then trigger a loop-closure constraint and pose-graph relaxation that snaps the whole trajectory back into a globally consistent map.

SLAMroboticsloop closurepose graphodometrysensor fusion

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)