Kalman Filter

Definition
A Kalman Filter estimates the hidden state of a system that changes over time from noisy measurements. It alternates between prediction (projecting the state forward) and update (correcting with new observations) using linear algebra and Gaussian assumptions. Use it when you need a real-time estimate of a moving target (like position from noisy sensors). It differs from batch methods because it works online step-by-step and assumes linear-Gaussian dynamics; if the system is non-linear, extended or unscented variants are used.
Kalman Filter

How does it work?

A Kalman filter alternates predict and update steps: predict the state forward using the motion model, then incorporate the noisy measurement by computing a gain that balances model and measurement uncertainty. It maintains a mean and covariance and is efficient for linear Gaussian systems; non-linear variants linearize or use sigma-points.

Examples

  • GPS/INS sensor fusion — Estimate vehicle position and velocity by combining inertial predictions and intermittent GPS fixes.
  • Aircraft navigation — Real-time state estimation for flight control using linear dynamics and noisy instruments.
  • Object tracking — Smooth and predict moving object trajectories from noisy radar or camera measurements.

Problems

  • Assumes linear dynamics and Gaussian noise, which often don't hold
  • Tuning process and measurement noise covariance matrices correctly
  • Divergence when the model doesn't match the true system dynamics
  • Needing extended/unscented variants for nonlinear systems, adding complexity
  • Sensitivity to outliers in sensor measurements
  1. Wikipedia: Kalman filter