If I have m measurements to estimate an n dimensional state vector, and I am using Kalma

Blericker74

Blericker74

Answered question

2022-07-05

If I have m measurements to estimate an n dimensional state vector, and I am using Kalman filter to do the filtering, then: Should I put all the m measurements together in the measurement matrix (measurement transformation matrix ) and perform the filtering or, should I filter each measurement sequentially? Please provide some supporting explanation for your choice.
For e.g: Let m = 2 and n = 3. The state vector is 3 dimensional and we need to use the two measurements to get the posterior estimate the state vector. Now I can use one of these two methods:

1. Use all these measurements together to form a gain matrix of size 3 × 2.
2. Use one measurement at one time and perform the filtering two times. The gain matrix will be 3 × 1 in this case.

Which of the two methods is a better choice?

Answer & Explanation

Karla Hull

Karla Hull

Beginner2022-07-06Added 20 answers

Short Answer:
This is an interesting question that I have wondered myself, but I have not worked out this problem. My intuition says that both approaches are equivalent as long as the measurements are uncorrelated. The reason is that if the measurements are correlated, then you must include the off diagonal terms of the covariance matrix. This wouldn't be possible if the updates are performed one after another.
However, we can know once and for all if we work out the equations, which shouldn't be too difficult. Here, we will consider scalar measurements for simplicity, but the concept applied for vector measurements as well.

Long Answer:
I suggest looking at the information form of the Kalman filter (KF) and extended Kalman filter (EKF) for more insight in this respect. The information matrix (i.e., inverse of covariance matrix) of the information form can be written in a single equation as follows where the time indices are omitted for clarity:
P 1 = ( F P 1 F T + Q ) 1 + H T R 1 H
where P is the covariance matrix, F and H are the Jacobians for the process and observation models, and Q and R are the covariance matrices for the process and observation noises.

Case 1 (Sequential Updates)
Let A = h A x i represent the Jacobian for the first measurement with measurement function h A , and let B = h B x i represent the Jacobian for the second measurement with measurement function h B . If we perform sequential updates, then we have the following:
P 1 = ( F P 1 F T + Q ) 1 + A T R A 1 A + B T R B 1 B
Now, assume the measurement is a scalar, then
A T R A 1 A = [ a 00 a 0 n a n 0 a n n ] , B T R B 1 B = [ b 00 b 0 n b n 0 b n n ]
where
a i j = R A 1 h A x i h A x j , b i j = R A 1 h B x i h B x j
Therefore,
A T R 1 A + B T R 1 B = [ a 00 + b 00 a 0 n + b 0 n a n 0 + b n 0 a n n + b n n ]

Case 2 (Simultaneous Updates) Let h=[hA,hB]T represent the measurement function, but in this case, the measurement function is a vector-valued function; therefore, the Jacobian and is given as follows:
H = [ h A x 0 h A x 1 h B x 0 h B x 1 ]
Now,
H T R 1 H = [ H 00 H 0 n H n 0 H n n ]
where
H i j = h A x j ( R A 1 h A x i + R B A 1 h B x i ) + h B x j ( R A B 1 h A x i + R B 1 h B x i )
where (with slight abuse of notation)
R 1 = [ R A 1 R A B 1 R B A 1 R B 1 ]
So, if the measurements are uncorrelated (i.e., R A B 1 = R B A 1 = 0), then H T R 1 H = A T R 1 A + B T R 1 B, which means that applying the updates sequentially or simultaneously givens the same results. However, in general, you cannot apply the updates sequentially for correlated measurements.

Do you have a similar question?

Recalculate according to your conditions!

Ask your question.
Get an expert answer.

Let our experts help you. Answer in as fast as 15 minutes.

Didn't find what you were looking for?