SEIF SLAM: constant-time online SLAM via sparsification, active features, and amortized map recovery.
EKF SLAM is online but O(N2). EIF SLAM is efficient but batch. Can we get an online algorithm that's also efficient? The Sparse Extended Information Filter (SEIF) achieves exactly this.
The SEIF maintains the same state as EKF SLAM — current pose xt and map m — but in information form (Ωt, ξt). Four steps per update: measurement, motion, sparsification, and state estimation.
SEIF divides landmarks into two categories:
| Type | Definition | Link to Robot |
|---|---|---|
| Active | Recently observed landmarks | Non-zero Ωx,mj |
| Passive | Not recently observed | Zero Ωx,mj |
The number of active features is bounded by a constant (typically 5-20). Only active features participate in the expensive parts of the update. Passive features sit quietly in the information matrix, their inter-feature links preserved but no direct link to the current robot pose.
The measurement update is the easiest part. Observing landmark j adds a local constraint to Ω and ξ:
Each measurement only modifies the block linking xt and mj — a 5×5 addition. This is constant time per observation, regardless of map size.
After the measurement update, the observed landmark becomes active (if it wasn't already). If there are now too many active features, sparsification will deactivate one.
The motion update is trickier. When the robot moves, it loses information about its pose relative to all active features. This manifests as:
• Links between robot and active features weaken (motion noise degrades pose certainty).
• Links between pairs of active features strengthen (the relative positions of features are unaffected by robot motion).
The motion update only involves active features — a bounded-size submatrix. If k features are active, the computation is O(k2), which is O(1) for bounded k.
The side effect: motion introduces new feature-feature links between all pairs of active features. This is how the information matrix accumulates structure over time.
Sparsification is SEIF's defining approximation. It deactivates features by removing their link to the robot pose:
1. Choose an active feature mj to deactivate (e.g., the one with the weakest robot link).
2. Set Ωx,mj = 0 (remove the link).
3. Redistribute the removed information into links between remaining active features and the robot.
Sparsification can be performed in O(k2) time, where k is the number of active features. Since k is bounded by a constant, this is O(1).
The information form stores Ω and ξ, but for data association and visualization we need the means μ = Ω-1ξ. Inverting the full information matrix would cost O(N3) — defeating the purpose.
SEIF uses amortized approximate map recovery: an iterative relaxation algorithm that propagates mean estimates through the information graph, one node at a time:
How many active features should SEIF maintain? This is a key design parameter.
| Active Features | Update Cost | Approximation Error | Practical Range |
|---|---|---|---|
| Very few (2-3) | Very fast | High (too much information lost) | Not recommended |
| Moderate (5-10) | Fast | Low | Typical choice |
| Many (20+) | Moderate | Very low | When accuracy is critical |
Data association in SEIF requires mean estimates (for predicting expected measurements) and covariance estimates (for Mahalanobis distances). Both come from the amortized map recovery.
Two approaches are used: incremental data association using the approximate means and covariances from the relaxation algorithm, and tree-based search for more complex scenarios where multiple features are observed simultaneously and mutual exclusion must be enforced.
SEIF naturally extends to multi-robot SLAM. When two robots meet and establish correspondence between their feature maps, the information can be fused by adding the information matrices:
The challenge: establishing correspondence between the two robots' feature maps. If robot A calls a landmark "feature 3" and robot B calls the same landmark "feature 7," we need to discover this equivalence. Meeting in the same place (mutual observation) or observing shared landmarks enables this discovery.
| Algorithm | Online? | Per-step Cost | Map Size | Representation |
|---|---|---|---|---|
| EKF SLAM | Yes | O(N2) | ~1,000 | Dense covariance |
| EIF SLAM | No (batch) | O(1) add, O(T3) solve | ~100,000 | Sparse information |
| SEIF SLAM | Yes | O(1) | ~100,000 | Sparse information (approx.) |