The extended Kalman filter (EKF) generalises the Kalman filter from linear-Gaussian systems to non-linear ones by local linearisation. The state-space model becomes:
$$x_t = f(x_{t-1}, u_t) + w_t, \qquad w_t \sim \mathcal{N}(0, Q)$$ $$z_t = h(x_t) + v_t, \qquad v_t \sim \mathcal{N}(0, R)$$
where $f$ and $h$ are general non-linear differentiable functions. The EKF assumes the posterior remains approximately Gaussian and propagates the mean exactly through $f$ and $h$, while propagating the covariance through their Jacobians evaluated at the current estimate:
$$F_t = \left.\frac{\partial f}{\partial x}\right|_{\hat x_{t-1|t-1}, u_t}, \qquad H_t = \left.\frac{\partial h}{\partial x}\right|_{\hat x_{t|t-1}}$$
Predict step:
$$\hat x_{t|t-1} = f(\hat x_{t-1|t-1}, u_t)$$ $$P_{t|t-1} = F_t P_{t-1|t-1} F_t^\top + Q$$
Update step:
$$y_t = z_t - h(\hat x_{t|t-1})$$ $$S_t = H_t P_{t|t-1} H_t^\top + R, \qquad K_t = P_{t|t-1} H_t^\top S_t^{-1}$$ $$\hat x_{t|t} = \hat x_{t|t-1} + K_t y_t, \qquad P_{t|t} = (I - K_t H_t) P_{t|t-1}$$
The EKF is widely used in robotics and aerospace because real systems are almost never linear. Robot motion is governed by non-linear kinematics with trigonometric coupling between heading and position; range-bearing sensors give measurements that are non-linear in robot pose; aircraft and spacecraft attitude is on $SO(3)$, a non-linear manifold. Concrete applications include GPS-INS fusion in aviation (combining inertial measurements with GPS fixes), EKF-SLAM in mobile robotics (joint estimation of robot pose and a map of landmarks, with a state vector that grows as new landmarks are added), and target tracking with bearing-only or range-only sensors.
The EKF has well-known limitations. The linearisation is only valid in a small neighbourhood of the current estimate, so the filter can diverge if the initial estimate is far from the truth or if the system is highly non-linear. A linearisation-induced bias arises because the mean of $f(x)$ is not in general $f$ of the mean. Computing Jacobians requires either symbolic differentiation in advance or numerical differentiation at every step, and for high-dimensional systems both are tedious. These drawbacks motivated the unscented Kalman filter, which avoids Jacobians by deterministically sampling sigma points and passing them through the non-linear functions, and the particle filter, which abandons the Gaussian approximation entirely.
Despite these limitations the EKF is, alongside the linear Kalman filter, the workhorse of practical state estimation: when the non-linearities are mild and the noise is approximately Gaussian, it is fast, accurate, and easy to implement, and it dominated the SLAM literature for two decades before being displaced by graph-based optimisation.
Video
Related terms: Kalman Filter, Particle Filter, SLAM, Gaussian Distribution
Discussed in:
- Chapter 12: Sequence Models, Robotics and Control