Tutorial Series · Part 8 of 27
From Guessing to Filtering: Prediction Plus Correction
Introduce recursive filtering using prediction and measurement update.
Navigation from First Principles
This article is part of an ordered course. Use the previous and next links to stay in sequence.
A navigation filter alternates between two questions:
- Prediction: Where should I be now, based on my motion model?
- Correction: What do my measurements say, and how much should I trust them?
This pattern is the heart of Kalman filtering. Welch and Bishop’s introduction is a good foundation for the discrete Kalman filter and EKF.1 MathWorks’ insEKF documentation describes the same practical idea in an inertial-navigation context: continuous-time state prediction with discrete-time sensor corrections.2
Why this matters
A moving car receives noisy position measurements every second. Between measurements, it still moves. A useful filter keeps predicting the state, then corrects it when the next measurement arrives.
A simple model
Use a 1D constant-velocity state:
Prediction:
where:
Covariance prediction:
Measurement model:
Update:
Interactive demo
The demo below uses that same 1D model. The car follows a changing acceleration profile, the filter propagates its constant-velocity estimate, and the correction step only happens when a new measurement arrives.
Prediction-Correction Demo
A simple constant-velocity Kalman filter predicts between measurements, then corrects when a noisy position update arrives.
The most useful combinations to try are the failure modes:
- Raise measurement noise and lower process noise to make the estimate smooth but late.
- Lower the measurement update rate to watch the covariance band widen between corrections.
- Raise process noise to make the filter react faster to manoeuvres, at the cost of a noisier estimate.
Try it
Set measurement noise high and process noise low. The filter should become smooth but slow to respond. Then increase process noise. The estimate should follow manoeuvres better, but become noisier.
Limits of this model
This is a linear 1D filter. GNSS/INS fusion is nonlinear, multi-dimensional and uses rotations, biases and coordinate frames. But the mental pattern does not change: predict with a model, correct with measurements, and carry uncertainty forward.
Footnotes
-
Greg Welch and Gary Bishop, “An Introduction to the Kalman Filter”, TR 95-041. https://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/WELCH/kalman.html - Practical introduction to the discrete Kalman filter and EKF. Accessed 2026-06-11. ↩
-
MathWorks, “insEKF - Inertial Navigation Using Extended Kalman Filter”. https://www.mathworks.com/help/nav/ref/insekf.html - Continuous-discrete EKF object using inertial sensors for prediction and discrete measurements for correction. Accessed 2026-06-11. ↩