Hacker News new | past | comments | ask | show | jobs | submit login

Kalman filters are a simple idea when viewed from the right angle, at least for someone with a good grasp of linear algebra.

You have a linear dynamical system with normal-distributed dynamical noise. You then take linear measurements of that system over time, and again those measurements are subject to noise that is normally distributed. The question is then, given the series of measurements, what is the best estimate of the state of the dynamical system? When written out like this, it's just a least squares problem. What makes it efficiently solvable is that the matrix structure is block tridiagonal. If you apply the block version of Gaussian elimination to that block tridiagonal system, you get the Kalman filtering equations. That's all there is to it.




The best introduction I have seen so far is the Udacity course on robotic cars, although it touches very slightly the Kalman filter. I think the exposition, starting with the general case of bayesian filtering and then deriving from it several types of filters is very clear.

If you want to dig more I think the best book, by far, is "Applied Optimal Estimation" by Arthur Gelb. (I have not read yet Probabilistic Robotics, though).

Finally, a finer point of Kalman filtering which is not normally mentioned is that you don't need your distributions to be gaussian. If your distributions are gaussian the Kalman filter is optimal, if they are not gaussian then the Kalman filter is not generally optimal, but it is still the best linear filter.


Do you know a reference that presents state estimation from this point of view? I have painstakingly arrived to this myself, following somewhat sketchy remarks in Gilbert Strang's "Computational Science and Engineering".

The classical exposition is a perfect example of confounding the model and the algorithm but it just refuses to die.


Thank you, it makes sense now. Sometimes it is useful to describe things in terms of their derivation.




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: