0
$\begingroup$

I was trying to understand how the Kalman gain works, from what I understand it determines the reliance on the measurement based on current state and measurement uncertainty.

The Kalman gain, K, is given by

$$ K_k = P_k H^T (H P_k H^T + R)^{-1} $$

for predicted state covariance $P_k$, measurement Jacobian $H$, and measurement noise $R$. I am using values from an example discussed in this other question.

$$ P_k = \left( \begin{array}{cc} 200.25 & 100.5 \\ 100.5 & 101 \end{array} \right) $$

$$ H = \left( \begin{array}{cc} 1 & 0 \end{array} \right) $$

so for $R = \left( 0 \right)$, I am getting $$K_k = \left(\begin{array}{c} 1.0000 \\ 0.5019 \end{array} \right).$$

However simplification of the Kalman gain equation for $R = \left( 0 \right)$ becomes $$ K_k = P_k H^T (H P_k H^T + 0)^{-1} $$ $$ K_k = P_k H^T (H P_k H^T)^{-1} $$ $$ K_k = P_k H^T (P_k H^T)^{-1} H^{-1} $$ $$K_k = H^{-1}$$ Which in my opinion is a pseudo inverse, accordingly $$K_k = \left(\begin{array}{c} 1.0000 \\ 0.0 \end{array} \right).$$

am I violating anything fundamental, or is it just computer approximation error?

$\endgroup$
2
  • $\begingroup$ Can you clarify the claimed 'simplification of the Kalman gain equation' ? $\endgroup$ – Juho Kokkala Aug 14 '15 at 15:32
  • $\begingroup$ I have modified the question to show that. $\endgroup$ – hashmuke Aug 14 '15 at 15:52
2
$\begingroup$

The simplification of the Kalman gain attempted in the question is mistaken. $H$ and $P_k\,H^\mathrm{T}$ are not square matrices in this case (the measurement and the state have different dimensions) and thus $(H \, P_k \, H^\mathrm{T})^{-1}$ cannot be written as $(P_k\, H^\mathrm{T})^{-1}\,H^{-1}$. The latter expression does not even make sense since $H$ and $P_k\,H^\mathrm{T}$ do not have inverses.

(Pseudoinverse exists, but it does not have all properties inverse has.)

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.