Skip to content

[ENH] Add cubature RTS smoother#330

Open
hass-nation wants to merge 1 commit into
rlabbe:masterfrom
hass-nation:feature/ckf-rts-smoother
Open

[ENH] Add cubature RTS smoother#330
hass-nation wants to merge 1 commit into
rlabbe:masterfrom
hass-nation:feature/ckf-rts-smoother

Conversation

@hass-nation

Copy link
Copy Markdown

Summary

  • add a Rauch-Tung-Striebel smoother to CubatureKalmanFilter
  • support both flattened (n, dim_x) and column-vector (n, dim_x, 1) state histories
  • add regression tests against the standard linear Kalman RTS smoother plus input-shape and error-path coverage

Why

filterpy already exposes RTS smoothers for the linear Kalman filter and the unscented Kalman filter, but the cubature filter was missing the same smoothing step. This fills that gap with a cubature smoother implementation that follows the existing module patterns and reuses the library's current CKF machinery.

Validation

  • python -m pytest filterpy/kalman/tests/test_ckf.py -q
  • python -m pytest filterpy/kalman/tests/test_ukf.py -q
  • python -m pytest filterpy/kalman/tests/test_rts.py -q

Reference

  • Arasaratnam, I., and Haykin, S. (2011). Cubature Kalman Smoothers. Automatica, 47(10), 2245-2250.

Add a Rauch-Tung-Striebel smoother to CubatureKalmanFilter, including support for both flattened and column-vector state histories, and regression tests against the linear Kalman RTS smoother. The implementation follows Arasaratnam and Haykin (2011), 'Cubature Kalman Smoothers', Automatica 47(10):2245-2250.

Co-Authored-By: OpenAI Codex <codex@openai.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant