Stanford AA274A Principles of Robotic Autonomy | Autumn 2019 | EKF SLAM
Stanford Online
Unknown correspondences 0:05
Localization now drops the assumption that each measurement already has a known landmark match. The task is to estimate the correspondence variable by maximum likelihood: for each measurement, you test every landmark assignment and keep the one that makes the observation most likely given the map, past controls, and past measurements. That is useful, but it is brittle, because once you commit to a match, any mistake is carried forward. The method therefore often needs extra protection, such as outlier rejection or keeping multiple hypotheses. In practice, the full assignment problem is expensive, so the course uses an EKF-style approximation and handles each measurement one at a time.
Association and landmarks 21:02
The algorithm rests on three steps. You predict the pose forward, correct it with a measurement, and then match that measurement to a landmark. The course has used point landmarks, but lines also work. For homework, the common landmark is a line segment, described by two numbers, r and alpha. When several landmarks could fit, you choose the one with the smallest Mahalanobis distance.
Particle filter localization 30:00
Localization can also use a nonparametric belief, built from particles instead of a Gaussian. In Monte Carlo localization, you run the same particle filter idea with the robot’s motion and sensor models. You propagate each particle, weight it by how well it explains the measurement, then resample with replacement. This is simpler than EKF and is robust, but it can be slow and can suffer from particle starvation if too many particles collapse to one hypothesis.
From localization to SLAM 42:01
SLAM means you estimate the robot pose and the map at the same time from the measurement and control history. The map is no longer known in advance. The lecture points out two versions: online SLAM, which keeps only the current pose and map, and full SLAM, which keeps the whole trajectory too. Both need measurement-to-landmark correspondence, which is often unknown.
Augmented state model 52:01
EKF SLAM turns the problem into one filtering problem by augmenting the state vector with the robot state and all landmark coordinates. For a unicycle robot with point landmarks, the vector has 3 plus 2n entries. The environment is assumed static, so only the robot state follows the motion model and carries process noise; the landmarks stay fixed.
State and measurement models 58:02
The pose and the map are packed into one augmented state. The robot pose has noisy motion, while the landmark positions stay fixed. The measurement model stays the same as before: with range and bearing sensors, you measure distance to a landmark and the angle to it relative to the robot heading. The model is nonlinear, so it is linearized around the most likely state before the filter update.
Initializing and matching landmarks 1:04:02
At the start, the robot pose is set to the origin of the global frame. The landmark means are set to zero, but their uncertainty is taken as infinite because their positions are unknown. When a landmark is first seen, its position is initialized from the current pose estimate, the measured range, and the measured bearing. Later, each measurement is matched to a landmark, or treated as new if the match is unknown.
Next Topics Ahead 1:18:00
Good landmark choice matters because feature detection depends on picking landmarks that are distinctive. Next week the class moves to sensor fusion and to open source software for autonomy, especially Autoware. There will also be ten more minutes on EKF SLAM with unknown correspondences, and a makeup lecture on particle filter SLAM later.
AI-generated summary. It can be wrong or incomplete - check anything that matters against the original.

