question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Implement a square root version of the Kalman Filter

See original GitHub issue

Minimally this would just to be to create a SquareRootKalmanUpdater which executes the update function on a square root parameterisation of the covariance matrix. Such a recursion is more numerically stable than the usual Kalman version.

There are several versions of the how exactly to do $P = WW^T$, and the version I currently favour is from Andrews 1968. Which seems a touch outdated. If you have a preference, please detail below.

Would suggest that the class checks the format of the incoming covariance matrix and adjusts it if needed but returns the square root format. Or perhaps both?

Also, no plans to do 'SquareRootKalmanPredictor`, because that wouldn’t be worthwhile as it doesn’t solve a problem related to numerical instabilities.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:8 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
paulhorridgecommented, Apr 30, 2020

Added my implementation which takes a full covariance matrix - haven’t integrated into SqrtGaussianState class yet.

0reactions
sdhiscockscommented, Sep 14, 2020

Closed with #223

Read more comments on GitHub >

github_iconTop Results From Across the Web

SquareRootKalmanFilter — FilterPy 1.4.4 documentation
Create a Kalman filter which uses a square root implementation. This uses the square root of the state covariance matrix, which doubles the...
Read more >
Square root algorithm (Kalman Filter) - Cross Validated
3.) The essential idea behind the algorithm is to compute Pt=StS′t, as such a multiplication will always yield a symmetric non negative matrix....
Read more >
Square root Kalman filter U-D vs standard implementation?
My point is that any Kalman filter implementation in which the covariance is factorized in the time or measurement update, and then re-computed...
Read more >
A Square-Root Kalman Filter Using Only QR Decompositions
Abstract: The Kalman filter operates by storing a Gaussian description of the state estimate in the form of a mean and covariance.
Read more >
A study of QR decomposition and Kalman filter implementations
These methods include square-root and unscented versions of the filter that make use of numerical methods such as QR, LDL and Cholesky Decomposition....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found