SLAM

1. SLAM

Simultaneous localization and mapping (SLAM): a body with quantative sensors moves through a previously unknown, static environment, mapping it and calculating its egomotion. Most SLAM algorithms make makes of natural scene features, Features should be easily recognisable from different viewpoints to enable reliable matching.

In SLAM, we store & update a joint distribution over the states of both the robot and the mapped world. Features are gradually discovered as the robot explores, so the dimension of this joint distribution problem will grow.

2. Methodology

The most common way to efficiently represent the high-dimensional probability distributions is a joint Gaussian distribution, updated via the Extended Kalman Filter. The PDF is represented by a state vector and covariance matrix:

The state vector contains the robot's state () and all feature states .

3. Practical Solutions

Purely metric probabilistic SLAM is limited to small domains:

Instead, lots of little local maps are made which are then related at a higher level.

Modern solutions follow a metric / topological approach to approximate full metric SLAM. They need:

This avoids maintaining a single massive joint covariance matrix.

3.1 Loop Closure Detection

Loop closure can be detected using image retrieval techniques such as Visual Bag-of-Words. When an old place is recognised, strong constraints are added to the map.

Place recognition converts perceptual similarity into geometric constraints that reduce accumulated drift.

3.2 Pure Topological SLAM

In purely topological SLAM, the environment is represented as a graph of places and connections. No explicit metric coordinates are stored.

This representation is compact and well-suited for symbolic planning but lacks precise geometric detail.

4. Pose Graph Optimisation

In graph-based SLAM, nodes represent robot poses and edges represent relative motion constraints. When loops are detected, pose graph optimisation adjusts all poses to maximise global consistency.

Optimisation only meaningfully changes the map when loops are present to constrain accumulated drift.

A factor graph expresses the SLAM posterior as a product of measurement likelihoods:

Each factor has Gaussian form:

where is the measurement precision matrix.

Solving a factor graph means computing the most probable configuration of variables or their marginals. Sparsity of the graph allows scalable optimisation.

Common approaches include:

Back to Home