Fits a robust state space model by minimizing a Huber loss objective as per Crevits and Croux (2018), providing protection against moderate outliers. The predicted observations used in the Huber loss are computed using the Huber robust filter from Cipra and Romera (1997).
Arguments
- y
A numeric matrix of observations (time points in rows).
- init_par
A numeric vector of initial parameter values.
- build
A function that returns a
dlmmodel given a parameter vector. Thespecify_SSM()function can be used to create thisbuildfunction.- lower
Optional numeric vector of lower bounds for parameter estimation. Defaults to
-Inf. Must be of same length asinit_par.- upper
Optional numeric vector of upper bounds for parameter estimation. Defaults to
Inf. Must be of same length asinit_par.- control
Optional list of control parameters passed to
optim. Default islist(parscale = init_par), which can help the optimizer if parameters are on vastly different scales.
Value
An object of class huber_robust_SSM containing the optimization result, the original data, and the original build function.
References
Crevits R. and Croux C. (2018). Robust Estimation of Linear State Space Models. *Communications in Statistics: Simulation and Computation*
Cipra, T., Romera, R. (1997). Kalman filter with outliers and missing observations. *Test* 6, 379–395. https://doi.org/10.1007/BF02564705
