package robkalman
play

Package robKalman . Kalmans revenge or obustness for Kalman - PowerPoint PPT Presentation

Package robKalman . Kalmans revenge or obustness for Kalman Filtering evisited Package robKalman . Kalmans revenge or obustness for Kalman Filtering evisited Peter Ruckdeschel 1 Bernhard Spangl 2 1 Fraunhofer ITWM,


  1. –Package robKalman — . Kalman’s revenge or obustness for Kalman Filtering evisited

  2. –Package robKalman — . Kalman’s revenge or obustness for Kalman Filtering evisited Peter Ruckdeschel 1 Bernhard Spangl 2 1 Fraunhofer ITWM, Kaiserslautern, Germany, Peter.Ruckdeschel@itwm.fraunhofer.de 2 Universität für Bodenkultur, Vienna, Austria, Bernhard.Spangl@boku.ac.at Rennes, July 9, 2009 1

  3. Euclidean State Space Models Definitions and Assumptions: — Time–Discrete, Euclidean Setup ideal model: indep . x t = F ( x t − 1 , t ) + v t , v t ∼ ( 0 , Q t ) , [ p –dim ] , indep . y t = Z ( x t , t ) + ε t , ∼ ( 0 , V t ) , [ q –dim ] , ε t x 0 ∼ ( a 0 , Q 0 ) , [ p –dim ] , { v t } , { ε t } , x 0 indep. as processes functions F , Z smooth with known derivatives; hyper–parameters Q t , V t , a 0 known extensible to: • continuous time (SDE’s) • incorporate user-specified controls 2

  4. Euclidean State Space Models Definitions and Assumptions: — Time–Discrete, Euclidean Setup ideal model: indep . x t = F ( x t − 1 , t ) + v t , v t ∼ ( 0 , Q t ) , [ p –dim ] , indep . y t = Z ( x t , t ) + ε t , ∼ ( 0 , V t ) , [ q –dim ] , ε t x 0 ∼ ( a 0 , Q 0 ) , [ p –dim ] , { v t } , { ε t } , x 0 indep. as processes functions F , Z smooth with known derivatives; hyper–parameters Q t , V t , a 0 known extensible to: • continuous time (SDE’s) • incorporate user-specified controls 2

  5. Euclidean State Space Models Definitions and Assumptions: — Time–Discrete, Euclidean Setup ideal model: indep . x t = F ( x t − 1 , t ) + v t , v t ∼ ( 0 , Q t ) , [ p –dim ] , indep . y t = Z ( x t , t ) + ε t , ∼ ( 0 , V t ) , [ q –dim ] , ε t x 0 ∼ ( a 0 , Q 0 ) , [ p –dim ] , { v t } , { ε t } , x 0 indep. as processes functions F , Z smooth with known derivatives; hyper–parameters Q t , V t , a 0 known extensible to: • continuous time (SDE’s) • incorporate user-specified controls 2

  6. Types of Outliers exogenous outliers affecting only singular observations re id di AO :: t ∼ ( 1 − r AO ) L ( ε t ) + r AO L ( ε t ) ε t ∼ ( 1 − r SO ) L ( y re t ) + r SO L ( y id di SO :: y t ) endogenous outliers / structural changes IO :: v t ∼ ( 1 − r IO ) L ( v re t ) + r IO L ( v id t ) di Different and competing goals A/SO attenuation of “false alarms” IO tracking: detect structural changes as fast as possible; recovering: clean data from structural changes A/SO & IO identification problem: simultaneous treatment only possible with delay 3

  7. Types of Outliers exogenous outliers affecting only singular observations re id di AO :: t ∼ ( 1 − r AO ) L ( ε t ) + r AO L ( ε t ) ε t ∼ ( 1 − r SO ) L ( y re t ) + r SO L ( y id di SO :: y t ) endogenous outliers / structural changes IO :: v t ∼ ( 1 − r IO ) L ( v re t ) + r IO L ( v id t ) di Different and competing goals A/SO attenuation of “false alarms” IO tracking: detect structural changes as fast as possible; recovering: clean data from structural changes A/SO & IO identification problem: simultaneous treatment only possible with delay 3

  8. Classical Method: Kalman–Filter Filter Problem � 2 = min f t ! , � � E � x t − f t ( y 1 : t ) with y 1 : t = ( y 1 , . . . , y t ) , y 1 : 0 := ∅ General solution: E [ x t | y 1 : t ] —difficult to compute Kalman–Filter assuming F ( x , t ) = F t x , Z ( x , t ) = Z t x optimal solution among linear filters — Kalman[/Bucy] [60/61]: Initialization: x 0 | 0 = a 0 Prediction: x t | t − 1 = F t x t − 1 | t − 1 , [∆ x t = x t − x t | t − 1 ] x t | t = x t | t − 1 + M 0 Correction: t ∆ y t , [∆ y t = y t − Z t x t | t − 1 ] and corresponding recursions for the prediction/filtering error covariances Σ t | t [ − 1 ] and the Kalman gain M 0 t 4

  9. Classical Method: Kalman–Filter Filter Problem � 2 = min f t ! , � � E � x t − f t ( y 1 : t ) with y 1 : t = ( y 1 , . . . , y t ) , y 1 : 0 := ∅ General solution: E [ x t | y 1 : t ] —difficult to compute Kalman–Filter assuming F ( x , t ) = F t x , Z ( x , t ) = Z t x optimal solution among linear filters — Kalman[/Bucy] [60/61]: Initialization: x 0 | 0 = a 0 Prediction: x t | t − 1 = F t x t − 1 | t − 1 , [∆ x t = x t − x t | t − 1 ] x t | t = x t | t − 1 + M 0 Correction: t ∆ y t , [∆ y t = y t − Z t x t | t − 1 ] and corresponding recursions for the prediction/filtering error covariances Σ t | t [ − 1 ] and the Kalman gain M 0 t 4

  10. Features of the Kalman–Filter + an easy, understandable structure: initialization, prediction, correction step + correction step is easily evaluable and interpretable: it is linear ! + strict recursivity / Markovian structure: all information from the past useful for the future is captured in the value of x t | t − 1 . − the correction step is linear and thus not robust, as y enters unbounded; Aim of robustification: try to retain all “ + ”’s, revise “ − ” 5

  11. Features of the Kalman–Filter + an easy, understandable structure: initialization, prediction, correction step + correction step is easily evaluable and interpretable: it is linear ! + strict recursivity / Markovian structure: all information from the past useful for the future is captured in the value of x t | t − 1 . − the correction step is linear and thus not robust, as y enters unbounded; Aim of robustification: try to retain all “ + ”’s, revise “ − ” 5

  12. R -package robKalman — Contents • Kalman filter: filter, Kalman gain, covariances • ACM-filter: filter, multivariate version, GM-estimator • rLS-filter: filter, calibration of clipping height – AO/SO-robust version – IO-robust version – with a certain delay joint treatment of AO/SO’s & IO’s • extensible to further recursive filters: � general interface recursiveFilter with arguments: – data – state space model (hyper parameters) [will be: object of class SSM] – functions for the init./pred./corr.step [will be: object containing them] – [will be: control object] 6

  13. R -package robKalman — Contents • Kalman filter: filter, Kalman gain, covariances • ACM-filter: filter, multivariate version, GM-estimator • rLS-filter: filter, calibration of clipping height – AO/SO-robust version – IO-robust version – with a certain delay joint treatment of AO/SO’s & IO’s • extensible to further recursive filters: � general interface recursiveFilter with arguments: – data – state space model (hyper parameters) [will be: object of class SSM] – functions for the init./pred./corr.step [will be: object containing them] – [will be: control object] 6

  14. R -package robKalman — Contents • Kalman filter: filter, Kalman gain, covariances • ACM-filter: filter, multivariate version, GM-estimator • rLS-filter: filter, calibration of clipping height – AO/SO-robust version – IO-robust version – with a certain delay joint treatment of AO/SO’s & IO’s • extensible to further recursive filters: � general interface recursiveFilter with arguments: – data – state space model (hyper parameters) [will be: object of class SSM] – functions for the init./pred./corr.step [will be: object containing them] – [will be: control object] 6

  15. Implementation concept • Programming language – completely in S , perhaps some code in C later ( � FKF ) • Use existing infrastructure: zoo , timeSeries – for: graphics, diagnostics, management of date/time • Code in different layers – internal functions: no S4 -objects, no time stamps (helps bringing in code by “non- S4 -people”) – user interface: S4 -objects, time stamps • Use generating functions for encapsulation – without using structured arguments: ⋆ too many arguments � user looses track ⋆ prone to name mis-matchings (positional, partial matching) ⋆ bad alternative: fix defaults. . . – have generating functions to produce control objects – control objects may be reused 7

  16. Implementation concept • Programming language – completely in S , perhaps some code in C later ( � FKF ) • Use existing infrastructure: zoo , timeSeries – for: graphics, diagnostics, management of date/time • Code in different layers – internal functions: no S4 -objects, no time stamps (helps bringing in code by “non- S4 -people”) – user interface: S4 -objects, time stamps • Use generating functions for encapsulation – without using structured arguments: ⋆ too many arguments � user looses track ⋆ prone to name mis-matchings (positional, partial matching) ⋆ bad alternative: fix defaults. . . – have generating functions to produce control objects – control objects may be reused 7

  17. Implementation concept • Programming language – completely in S , perhaps some code in C later ( � FKF ) • Use existing infrastructure: zoo , timeSeries – for: graphics, diagnostics, management of date/time • Code in different layers – internal functions: no S4 -objects, no time stamps (helps bringing in code by “non- S4 -people”) – user interface: S4 -objects, time stamps • Use generating functions for encapsulation – without using structured arguments: ⋆ too many arguments � user looses track ⋆ prone to name mis-matchings (positional, partial matching) ⋆ bad alternative: fix defaults. . . – have generating functions to produce control objects – control objects may be reused 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend