Bellman filter
| Class | Nonlinear filter; recursive state estimator |
|---|---|
| Data structure | State-space model (latent state and observations) |
| Worst-case performance | Per time step: Kalman-style prediction plus numerical optimisation in the update step (model- and method-dependent) |
| Worst-case space complexity | Stores state estimates and covariance matrices (dimension-dependent) |
The Bellman filter is a recursive algorithm for estimating a sequence of unobserved (latent) states in a state-space model from noisy observations. It is typically formulated for models with a linear–Gaussian state transition and a possibly nonlinear and/or non-Gaussian observation density, and it updates the state by solving a per-time-step optimisation problem involving . Under linear–Gaussian observation models, it reduces to the standard Kalman filter update.[1][2][3]
From a dynamic-programming perspective, the Bellman filter applies Bellman's principle of optimality to a mode-estimation problem, yielding a recursion for an (online) maximisation objective whose maximiser is a filtered state estimate. In contrast with grid-based maximisation (as in the Viterbi algorithm for models with discrete states), the Bellman filter keeps the state space continuous and replaces the exact Bellman value functions by parametric (typically quadratic) function-space approximations, which makes the recursion computationally feasible in moderate to high dimensions.
Background
In a discrete-time state-space model, an unobserved state vector evolves over time and generates observations. The linear–Gaussian case admits an optimal recursive solution via the Kalman filter, and standard econometric treatments include the monographs by Harvey and by Durbin & Koopman.[4][5]
For nonlinear and/or non-Gaussian observation models, exact filtering generally becomes intractable and practical methods rely on approximation (e.g. extended/iterated Kalman filtering) or simulation (e.g. particle filters). The Bellman filter can be presented as a dynamic-programming-based alternative using function-space approximations of the value function at each time step.[1]
Model and notation
Although the approach is more generally applicable, a commonly used specification keeps the classic linear–Gaussian state transition while allowing a general observation density. For :[1]
- Observation equation:
- State-transition equation:
where .
The filter maintains predicted quantities , and filtered quantities , .
Fisher information
For the observation model, Fisher information is defined as: where operates on .
Algorithm
Prediction step
This is identical to the prediction step in the Kalman filter.[3]
Updating step
The update step is well defined if is concave in or if is sufficiently large.[1][2] In some cases, in the formula for can be replaced by the realised negative Hessian .
The maximisation can be interpreted as a maximum a posteriori (MAP) estimate of : it combines the log-likelihood term with a quadratic log-prior coming from the Gaussian prediction . Equivalently, the update solves a regularised likelihood problem: it chooses the state that best explains while penalising deviation from the predicted mean according to the precision .
Special cases and relationships
Linear–Gaussian observation equation
If where , then the level update and covariance update reduce to the usual Kalman filter update.[1][2][3]
Iterated (extended) Kalman filtering
For a nonlinear observation equation with additive Gaussian noise, with , the Bellman update objective is proportional to the (negative) nonlinear least-squares criterion Applying a Gauss–Newton method to this problem yields the iterated extended Kalman filter (see article on the Extended Kalman filter). Bell and Cathey show that this iterated update is a Gauss–Newton method for the corresponding maximum-likelihood problem.[6] Equivalently, this is the special case of the Bellman filter update with given by the Gaussian log-likelihood (up to an additive constant).
Nonlinear/non-Gaussian state-transition equation
Although the exposition above assumes a linear–Gaussian state transition (so that the prediction step has closed form), Bellman's recursive approach applies also to state-space models with a general transition density . In this more general setting, solving Bellman's equation involves a joint maximisation over .[2] In this setting, degenerate state dynamics can be handled by equating some elements of to those of and optimising only over the free components.
Smoothing
With a linear–Gaussian state transition, the (fixed-interval) Rauch–Tung–Striebel (RTS) smoother can be applied to the filtered output to obtain smoothed estimates and . Define the smoothing gain
Initialise at with and .
Then for :
In the Bellman-filter setting (linear–Gaussian state transition with a general observation density), these RTS recursions still apply to the (possibly approximate) filtered quantities produced by the Bellman filter.[1][2]
Parameter estimation
In many applications the model depends on unknown static parameters (for example, coefficients in the observation density , or elements of ). These can be estimated by fitting to the observed data, typically by running the Bellman filter for each candidate and then maximising an (approximate) log-likelihood objective with a numerical optimiser, subject to any required constraints (e.g. positive definiteness of covariance matrices). A simple estimator of this type is:
The first term measures how well the Bellman-filtered (mode) estimate explains the observation . The remaining terms form a nonnegative regularisation penalty that discourages overfitting by penalising large adjustments from to , with the determinant ratio reflecting the reduction in (approximate) state uncertainty after incorporating .
In the linear–Gaussian observation case this coincides with the maximum likelihood estimator; otherwise it can be interpreted as maximising a second-order approximation to the usual prediction-error decomposition.[1][2]
References
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 Lange, R.-J. (2024). "Short and simple introduction to Bellman filtering and smoothing". arXiv:2405.12668 [stat.ME].
- ↑ 2.0 2.1 2.2 2.3 2.4 2.5 Lange, R.-J. (2024). "Bellman filtering and smoothing for state–space models". Journal of Econometrics 238 (2). doi:10.1016/j.jeconom.2023.105632.
- ↑ 3.0 3.1 3.2 Kalman, R. E. (1960). "A New Approach to Linear Filtering and Prediction Problems". Journal of Basic Engineering 82 (1): 35–45. doi:10.1115/1.3662552.
- ↑ Harvey, A. C. (1990). Forecasting, Structural Time Series Models and the Kalman Filter. Cambridge University Press. ISBN 978-0-521-40573-7.
- ↑ Durbin, J.; Koopman, S. J. (2012). Time Series Analysis by State Space Methods (2nd ed.). Oxford University Press. ISBN 978-0-19-964117-8.
- ↑ Bell, B. M.; Cathey, F. W. (1993). "The iterated Kalman filter update as a Gauss–Newton method". IEEE Transactions on Automatic Control 38 (2): 294–297. doi:10.1109/9.250476.
Further reading
- Durbin, J.; Koopman, S. J. (2012). Time Series Analysis by State Space Methods (2nd ed.). Oxford University Press. ISBN 978-0-19-964117-8.
- Harvey, A. C. (1990). Forecasting, Structural Time Series Models and the Kalman Filter. Cambridge University Press. ISBN 978-0-521-40573-7.
- Lange, R.-J. (2024). "Short and simple introduction to Bellman filtering and smoothing". arXiv:2405.12668 [stat.ME].
- Kalman, R. E. (1960). "A New Approach to Linear Filtering and Prediction Problems". Journal of Basic Engineering 82 (1): 35–45. doi:10.1115/1.3662552.
- Rauch, H. E.; Tung, F.; Striebel, C. T. (1965). "Maximum likelihood estimates of linear dynamic systems". AIAA Journal 3 (8): 1445–1450. doi:10.2514/3.3166.
