# Measurements processing order impact in Kalman filter

In sequential Kalman filters the measurements are processed as scalars one after the other. The sequence is somewhat:

1. Compute innovation
2. Compute Kalman gain (I consider for simplification a linear Kalman filter)
3. State and covariance innovation

The next measure will go through the same process. However, the covariance matrix will have smaller terms, therefore reducing the weight of the next measures. I kind of see it as a weigthed least-square algorithm where the weight diminishes depending on the measurement number in each time step. If this is true the order of measurement processing would impact the results. I understand this is not the case and there should be a mathematical demonstration that shows that the order of measurements does not impact the KF. Does someone knows how to demonstrate this?

I understand as it is explained in the reference below that there is a second order impact in terms of jacobian computation and measure rejection, but this is not the component that bothers me:

There are many varieties of Kalman filter (KF), as more complicated algorithms were gradually developed to describe more complicated processes or to avoid certain kinds of numerical errors. ​There are some mathematical properties all of them possess, but there are other properties which apply to just one. Considering only the linear version (LKF) may lead you to draw conclusions which are incorrect for extended (EKF), unscented (UKF), or other kinds of related filters.

In almost all cases, the order of measurement processing does indeed impact the results, as physically it must. The essence of a Kalman filter is a model of how the state changes with time all by itself. The gain formula is a rule for updating your estimate of the state based on measurements, but the state would continue to change even if you stopped trying to measure it. Insensitivity to measurement order, or equivalence to batch least squares, is a property only of the linear Kalman filter with zero process noise and state transition matrix the identity. That would usually be a terrible idea, but there is one situation where it might come in handy.

The NASA book (150 pages!) you linked is all about filtering as a means of incorporating data into ephemeris estimates, so when they say "state", they mean the position and velocity of some orbiting object, plus any additional information of interest. Section 3.2 concerns a subtle aspect of incorporating variable measurement rates in a discrete time Kalman filter. If there is sufficient time between each measurement and the next, there is no need to do what they describe, and the order dependence of the resulting computation is desirable and physically realistic.

If, however, the time interval between some measurements becomes exactly zero, then things can go wrong. In that case only, the set of measurements which all pertain to a single time step should be treated equally, and there is no need for state updates between them, because in zero time there is zero change to the state (the object does not move). The algorithm they give is simply a way to avoid having to write a separate batch least squares estimator within each discrete time step by fooling your Kalman filter into doing the same job. It's not the most straightforward way to approach the problem, but since you're already using a Kalman filter for something else, you might as well adapt it to do that, too.

• I want to clarify my question a bit: 1) Yes, I am talking about a discrete implementation 2) I am talking about the case where all the measures in all the time steps have the same time stamp (they happen physically at the same time) Does in this case your sentence: 'the order of measurement processing does indeed impact the results, as physically it must.' still holds? I would not say so. In this case I would expect to have implementations with insensitivity to measure order.
– AUP
Sep 7, 2021 at 7:19
• @AUP Yes, I agree. In that one specific case, the general rule does not hold, because there is no time elapsed. The simultaneous observations should be processed in a way which does not make their order with respect to each other significant, because in that one case it would be bad for the order to matter. Sep 7, 2021 at 12:16
• I want tto ry to reformulate my first question in a better way. Comparing two discrete implementations of the Kalman filter that treats measurements with the same time stamp as follows: 1) Classical Kalman filter implementation where 'm' measures are treated as a matrix and the states are update as a linear combination of all measures 2) Sequential Kalman filter where after a decomposition each measure can be treated independently of the others and the update is done one after the other. Will 1) and 2) yield same results? Isn't implementation 2) problematic if it is not the case?
– AUP
Sep 8, 2021 at 7:32
• @AUP that's exactly what the NASA text is saying. 1 and 2 will not yield the same results, which means there's a problem with method 2 in this case. That's why they recommend changing the usual procedure, and not doing any state updates until after applying the information from all m updates at the same time. This is what I meant by "fooling" the KF into doing something different, which would often be bad but in this case turns out to help. Sep 8, 2021 at 12:28
• In my opinion NASA text says that the results will not be the same because the computed jacobian to process the measures will not be the same if the state is updated after each innovation as a consequence of the state variation (H = delta_h/delta_xstate). I see it as a limitation of the classical sequential implementation. I am more concerned by the impact of different weights for different measures as a consequence of covariance propagation between each innovation. The way I understand this would yield variations that could be potentially more dangerous than the previous one.
– AUP
Sep 9, 2021 at 11:19