What is SLAM?

SLAM (Simultaneous Localization and Mapping) is the computational problem of building a map of an unknown environment while simultaneously determining the robot’s position within that map. It’s the foundation of autonomous navigation.

The Two Problems

Localization: “Where am I?” — requires a map. Mapping: “What does the world look like?” — requires knowing where you are.

SLAM solves both at once by iterating:

  1. Robot moves and observes the environment
  2. New observations update the map
  3. Updated map refines the robot’s estimated position
  4. Repeat

Sensor Inputs

SensorWhat It ProvidesCommon Use
LiDAR3D point cloud of surroundingsWarehouse robots, autonomous vehicles
CameraVisual features, texture, colorDrones, visual SLAM systems
imuAcceleration and rotation rateAll mobile robots — fills gaps between other sensors
Wheel odometryDistance traveledGround robots; accumulates error over time

Key Algorithms

  • lidar SLAM: LOAM, LeGO-LOAM, Cartographer — precise, works in darkness
  • Visual SLAM: ORB-SLAM, VINS-Mono — uses cameras, cheaper hardware
  • Visual-Inertial SLAM: Fuses camera + imu — popular for drones and AR

The Challenges

  • Dynamic environments: A warehouse with moving pallets breaks static-map assumptions
  • Loop closure: When the robot returns to a previously visited spot, aligning old and new observations is computationally hard
  • Scale: Mapping a 100,000 sq ft warehouse in real time requires significant compute
  • Featureless spaces: A white corridor with no texture gives cameras nothing to track

The Bottom Line

SLAM is solved for structured environments (warehouses, highways, indoor spaces). It’s still hard for unstructured terrain — which is why DARPA RACER focused on off-road autonomy, and why military UGVs still struggle in forests and rubble.