Robot control

Kalman filter

Definition

A Kalman filter is a recursive estimator that predicts a system's state with a linear model and corrects that prediction using noisy measurements. It tracks both the estimate and its error covariance.

Also known as: KF

Updated

Prediction followed by measurement correction

The filter first predicts the next state and uncertainty. It then compares an observation with the predicted measurement and applies a correction weighted by the Kalman gain. Kalman's original paper derives the recursive linear filtering formulation and the evolution of estimation-error covariance.

For a simple robot tracking problem, the state might contain position and velocity while a sensor measures only position. The motion model connects the unmeasured velocity to later position observations.

Uncertainty controls the weighting

The gain depends on predicted uncertainty and measurement noise. A measurement assigned high uncertainty receives less influence than it otherwise would. Welch and Bishop's tutorial explains the roles of process and measurement covariance in this calculation.

The assumptions matter

The familiar exact Gaussian interpretation assumes linear dynamics and observations with appropriate Gaussian noise. Incorrect noise assumptions can make reported confidence misleading. Nonlinear robot models usually require an extension or another estimator; an extended Kalman filter uses local linearization. Applying the word Kalman to a filter does not establish accuracy under arbitrary motion or sensing conditions.

Sources