Bayes Filtering and State Estimation

4 minute read ·

Published:

In robot state estimation, the Bayes filter is a probabilistic approach that estimates the state from a sequence of controls and measurements by recursively performing prediction with a motion model and correction with a measurement model. In practice, some common instantiations of the Bayes framework are the Kalman filter, information filter, and particle filter.

Mathematical Formulation of Bayes Filter

Given a sequence of measurements and controls , and a measurement model and a motion model . The Bayes filter provides a recursive framework for estimating the state in terms of a probability distribution function, known as the belief , or posterior.

The dynamic Bayes network that characterizes the evolution of controls, states, and measurements. [1]

The filtering algorithm is built upon two assumptions of conditional independence:

  • Motion model is (1st-order) Markov:
  • The measurement model is memoryless:

Given these two assumptions, we can propagate the belief over time:

We can define the predicted belief of the state at time to be the probability distribution before knowing the current measurement, i.e., . Then, the above equation becomes

where is the normalization coefficient, and

which is essentially a correction applied to the belief after observing the current measurement.

What remains to be done, obviously, is to predict the belief from the previous state:

Then, recognizing , we have

In summary, the Bayes filter provides a two-step framework for updating the belief of the current state from the belief of the previous state :

  • Prediction using the motion model (Equation 1);
  • Correction using the measurement model (Equation 2).

These two steps can be performed recursively to estimate the state over time.

Kalman Filter

The Kalman filter is an instantiation of the Bayes filter with the assumption of linear Gaussian models. This means the motion model and the measurement model should be

  • linear with respect to their arguments:

    Specifically, suppose , , and . Let , , and be matrices (linear maps).

    • Motion model:
    • Measurement model:

    where and are white noise with variance and , respectively.

    White noise

    A discrete-time random process (a sequence of random vectors), , is called white noise if

  • following a multivariate Gaussian distribution:

    Specifically,

    • Motion model: ;
    • Measurement model: .

    Note: here we need to interpret as a realization rather than a random variable.

    Multivariate Gaussian PDF

    is the probability distribution function of a random variable that follows a Gaussian distribution with mean and covariance matrix ,

Before deriving the algorithm for the Kalman filter, there are two important properties of the multivariate Gaussian distribution that are useful here.

  1. Affine transformation:

    Let be a random vector following a Gaussian distribution , then the random vector follows a Gaussian distribution .

    Proof

    Will come later

  1. Conditional distribution:

    Let be a random vector of dimension . Partition into a vector of dimension , and a vector of dimension , , and partition and respectively,

    then, the conditional distribution , where

    Proof

    Will come later

Now, if we assume the initial belief to be Gaussian, i.e., . Then, from equations (1) and (2), we can see that all subsequent beliefs will be Gaussian. Thus,

Then, we only need to track in the prediction step and in the correction step.

For the prediction step, use the joint distribution and realize

Derivation [2]

From equation (3),

Compute the mean and covariance,

Then can be obtained by marginalize ,

For the correction step, form a joint distribution and realize

Derivation [2]

Since and , where . From property 1, we have

Furthermore,

Thus, , where

Finally, normalize for numerical stability

Extended Kalman Filter (EKF)

One way to handle the case where motion model and measurement model are not linear is to approximate the functions via local linearization (Taylor expansion). Specifically, we extend the Kalman filter algorithm to cases where models are non-linear:

  • Motion model
  • Measurement model

Let

The EKF algorithm is

Unscented Kalman Filter (UKF)

Another non-linear Kalman filter is the unscented Kalman filter which uses deterministic sampling to approximate the distribution.

Let a function be a non-linear transformation. Suppose and . We draw a set of sigmapoints, , and compute a weight for each sigma point by executing

Further let , then , where

The UKF algorithm is

Reference

[1] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. Mit Press, 2010.
[2] M. Ghaffari, ROB530 Lecture Slides — Kalman Filtering. University of Michigan, 2026.

Categories: Robotics