Joint Posterior Update Nonlinear Filtering p ( x 0: t | y 1: t ) Andreas Kl¨ ockner p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y 1: t | x 0: t ) p ( x 0: t ) p ( y 1: t − 1 ) = · Nonlinear p ( y 1: t ) p ( y 1: t − 1 | x 0: t − 1 ) p ( x 0: t − 1 ) Filtering Monte Carlo p ( y t | x 0: t ) p ( x 0: t ) · p ( y 1: t − 1 ) CI Filters = Particle Filters p ( y 1: t ) p ( x 0: t − 1 ) Importance Sampling p ( y t | x 0: t ) p ( x 0: t ) p ( x t | x t − 1 ) · p ( y 1: t − 1 ) Markov Quadrature = Filters p ( y 1: t ) p ( x 0: t ) Error Estimates p ( y t | x 0: t ) p ( x t | x t − 1 ) Continuous- · p ( y 1: t − 1 ) = Time p ( y 1: t ) Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering p ( x 0: t | y 1: t ) Andreas Kl¨ ockner p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y 1: t | x 0: t ) p ( x 0: t ) p ( y 1: t − 1 ) = · Nonlinear p ( y 1: t ) p ( y 1: t − 1 | x 0: t − 1 ) p ( x 0: t − 1 ) Filtering Monte Carlo p ( y t | x 0: t ) p ( x 0: t ) · p ( y 1: t − 1 ) CI Filters = Particle Filters p ( y 1: t ) p ( x 0: t − 1 ) Importance Sampling p ( y t | x 0: t ) p ( x 0: t ) p ( x t | x t − 1 ) · p ( y 1: t − 1 ) Markov Quadrature = Filters p ( y 1: t ) p ( x 0: t ) Error Estimates p ( y t | x 0: t ) p ( x t | x t − 1 ) Continuous- · p ( y 1: t − 1 ) = Time p ( y 1: t ) Filtering p ( y t | x t ) p ( x t | x t − 1 ) = p ( y t | y 1: t − 1 ) Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear We can expand the denominator as Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear We can expand the denominator as Filtering Monte Carlo � Filters Particle Filters p ( y t | y 1: t − 1 ) = p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t . Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear We can expand the denominator as Filtering Monte Carlo � Filters Particle Filters p ( y t | y 1: t − 1 ) = p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t . Importance Sampling Quadrature Filters Two drawbacks: Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear We can expand the denominator as Filtering Monte Carlo � Filters Particle Filters p ( y t | y 1: t − 1 ) = p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t . Importance Sampling Quadrature Filters Two drawbacks: Error Estimates Denominator not explicitly known Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Joint Posterior Update Nonlinear Filtering Andreas Kl¨ ockner p ( x 0: t | y 1: t ) = p ( y t | x t ) p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) Outline p ( y t | y 1: t − 1 ) Nonlinear We can expand the denominator as Filtering Monte Carlo � Filters Particle Filters p ( y t | y 1: t − 1 ) = p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t . Importance Sampling Quadrature Filters Two drawbacks: Error Estimates Denominator not explicitly known Continuous- Time Filtering Don’t care about the joint posterior–only want p ( x t | y 1: t ) Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering Andreas p ( x t | y 1: t ) Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner � p ( y t | x t ) p ( x t | x t − 1 ) Outline JointUp p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Nonlinear p ( y t | y 1: t − 1 ) Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner � p ( y t | x t ) p ( x t | x t − 1 ) Outline JointUp p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Nonlinear p ( y t | y 1: t − 1 ) Filtering � p ( y t | x t ) Monte Carlo = p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 Filters p ( y t | y 1: t − 1 ) Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner � p ( y t | x t ) p ( x t | x t − 1 ) Outline JointUp p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Nonlinear p ( y t | y 1: t − 1 ) Filtering � p ( y t | x t ) Monte Carlo = p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 Filters p ( y t | y 1: t − 1 ) Particle Filters Importance � Sampling p ( y t | x t ) Markov p ( x t | x 0: t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Quadrature p ( y t | y 1: t − 1 ) Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner � p ( y t | x t ) p ( x t | x t − 1 ) Outline JointUp p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Nonlinear p ( y t | y 1: t − 1 ) Filtering � p ( y t | x t ) Monte Carlo = p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 Filters p ( y t | y 1: t − 1 ) Particle Filters Importance � Sampling p ( y t | x t ) Markov p ( x t | x 0: t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Quadrature p ( y t | y 1: t − 1 ) Filters Error Estimates p ( y t | x t ) Continuous- = p ( y t | y 1: t − 1 ) p ( x t | y 1: t − 1 ) Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recursive Posterior Update Nonlinear Filtering � Andreas p ( x t | y 1: t ) = p ( x 0: t | y 1: t ) d x 0: t − 1 Kl¨ ockner � p ( y t | x t ) p ( x t | x t − 1 ) Outline JointUp p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Nonlinear p ( y t | y 1: t − 1 ) Filtering � p ( y t | x t ) Monte Carlo = p ( x t | x t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 Filters p ( y t | y 1: t − 1 ) Particle Filters Importance � Sampling p ( y t | x t ) Markov p ( x t | x 0: t − 1 ) p ( x 0: t − 1 | y 1: t − 1 ) d x 0: t − 1 = Quadrature p ( y t | y 1: t − 1 ) Filters Error Estimates p ( y t | x t ) Continuous- = p ( y t | y 1: t − 1 ) p ( x t | y 1: t − 1 ) Time Filtering p ( y t | x t ) p ( x t | y 1: t − 1 ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Posterior t − 1 → Prediction t : Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Posterior t − 1 → Prediction t : Filtering Monte Carlo Start with Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Posterior t − 1 → Prediction t : Filtering Monte Carlo Start with Filters Particle Filters � Importance p ( x t ) = p ( x t | x t − 1 ) p ( x t − 1 ) d x t − 1 , Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Posterior t − 1 → Prediction t : Filtering Monte Carlo Start with Filters Particle Filters � Importance p ( x t ) = p ( x t | x t − 1 ) p ( x t − 1 ) d x t − 1 , Sampling Quadrature Filters Error Estimates and obtain Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
The Complete Recursion Nonlinear Prediction t → Posterior t : Filtering Andreas p ( y t | x t ) p ( x t | y 1: t − 1 ) Kl¨ ockner p ( x t | y 1: t ) = � p ( y t | x t ) p ( x t | y 1: t − 1 ) d x t Outline Nonlinear Posterior t − 1 → Prediction t : Filtering Monte Carlo Start with Filters Particle Filters � Importance p ( x t ) = p ( x t | x t − 1 ) p ( x t − 1 ) d x t − 1 , Sampling Quadrature Filters Error Estimates and obtain Continuous- Time � Filtering p ( x t | y 1: t − 1 ) = p ( x t | x t − 1 ) p ( x t − 1 | y 1: t − 1 ) d x t − 1 . Andreas Kl¨ ockner Nonlinear Filtering
Outline Nonlinear Filtering Andreas 1 Nonlinear Filtering Kl¨ ockner Outline 2 Monte Carlo Filters Nonlinear Filtering Particle Filters Monte Carlo Importance Sampling Filters Particle Filters Importance Sampling 3 Quadrature Filters Quadrature Filters Error Estimates Error Estimates Continuous- Time 4 Continuous-Time Filtering Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner 1 x t − 1 Outline x t = 2 x t − 1 + 25 1 + x 2 Nonlinear t − 1 Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner 1 x t − 1 Outline x t = 2 x t − 1 + 25 1 + x 2 Nonlinear t − 1 Filtering Monte Carlo Filters x �→ x x t Particle Filters Importance Sampling x t Quadrature Filters Error Estimates Continuous- x t − 1 Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner 1 x t − 1 Outline x t = 2 x t − 1 + 25 + 8 cos (1 . 2 t ) + v t , 1 + x 2 Nonlinear t − 1 Filtering Monte Carlo Filters x �→ x x t Particle Filters Importance Sampling x t Quadrature Filters Error Estimates Continuous- x t − 1 Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner 1 x t − 1 Outline x t = 2 x t − 1 + 25 + 8 cos (1 . 2 t ) + v t , 1 + x 2 Nonlinear t − 1 Filtering x 2 Monte Carlo t = 20 + w t , y t Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Our Example Process Throughout this presentation, we will stick to the following Nonlinear Filtering model: Andreas Kl¨ ockner 1 x t − 1 Outline x t = 2 x t − 1 + 25 + 8 cos (1 . 2 t ) + v t , 1 + x 2 Nonlinear t − 1 Filtering x 2 Monte Carlo t = 20 + w t , y t Filters Particle Filters Importance Sampling where x 0 ∼ N (0 , σ 2 1 ), v t ∼ N (0 , σ 2 v ), w t ∼ N (0 , σ 2 w ). Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters N t p ( d x t +1 | y 1: t ) = 1 � p ( d x t +1 | x ( i ) Particle Filters ˆ t ) Importance N t Sampling i =1 Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters N t p ( d x t +1 | y 1: t ) = 1 � p ( d x t +1 | x ( i ) Particle Filters ˆ t ) Importance N t Sampling i =1 Quadrature Filters and the update formula: Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters N t p ( d x t +1 | y 1: t ) = 1 � p ( d x t +1 | x ( i ) Particle Filters ˆ t ) Importance N t Sampling i =1 Quadrature Filters and the update formula: Error Estimates Continuous- Time N t 1 � Filtering p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . ˜ C t +1 · N t i =1 Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters N t p ( d x t +1 | y 1: t ) = 1 � p ( d x t +1 | x ( i ) Particle Filters ˆ t ) Importance N t Sampling i =1 Quadrature Filters and the update formula: Error Estimates Continuous- Time N t 1 � Filtering p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . ˜ C t +1 · N t i =1 Problem: Andreas Kl¨ ockner Nonlinear Filtering
Particle Approximations Assume a discrete approximation of the posterior density Nonlinear Filtering N t Andreas p ( d x t | y 1: t ) = 1 � Kl¨ ockner ˆ δ x ( i ) t ( d x t ) . N t Outline i =1 Nonlinear Then insert that into the prediction formula: Filtering Monte Carlo Filters N t p ( d x t +1 | y 1: t ) = 1 � p ( d x t +1 | x ( i ) Particle Filters ˆ t ) Importance N t Sampling i =1 Quadrature Filters and the update formula: Error Estimates Continuous- Time N t 1 � Filtering p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . ˜ C t +1 · N t i =1 Problem: (Generally) Nontrivial to sample from! Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline . . . that may only be known up to a proportionality Nonlinear constant. Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline . . . that may only be known up to a proportionality Nonlinear constant. Filtering Recall our particle update formula: Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline . . . that may only be known up to a proportionality Nonlinear constant. Filtering Recall our particle update formula: Monte Carlo Filters Particle Filters N t Importance 1 � Sampling p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . Quadrature ˜ C t +1 · N t Filters i =1 Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline . . . that may only be known up to a proportionality Nonlinear constant. Filtering Recall our particle update formula: Monte Carlo Filters Particle Filters N t Importance 1 � Sampling p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . Quadrature ˜ C t +1 · N t Filters i =1 Error Estimates Continuous- That’s exactly our situation. Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling Nonlinear Filtering Importance Sampling lets you sample. . . Andreas Kl¨ ockner . . . from an (almost) arbitrary density. . . Outline . . . that may only be known up to a proportionality Nonlinear constant. Filtering Recall our particle update formula: Monte Carlo Filters Particle Filters N t Importance 1 � Sampling p ( y t +1 | x t +1 ) p ( x t +1 | x ( i ) p ( x t +1 | y 1: t +1 ) = ˆ t ) . Quadrature ˜ C t +1 · N t Filters i =1 Error Estimates Continuous- That’s exactly our situation. Time Filtering Trick: Give each particle a weight in addition to its position. Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering –the importance density Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering –the importance density Monte Carlo Then assign Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering –the importance density Monte Carlo Then assign Filters Particle Filters Importance Sampling w ( i ) ∝ p ( x ( i ) ) Quadrature Filters π ( x ( i ) ) Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering –the importance density Monte Carlo Then assign and normalize the weights Filters Particle Filters Importance Sampling w ( i ) ∝ p ( x ( i ) ) w ( i ) w ( i ) := Quadrature ˜ j w ( j ) . � Filters π ( x ( i ) ) Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Importance Sampling in Detail Nonlinear Filtering Suppose we have: Andreas Kl¨ ockner p ( x ) ∝ q ( x ) not easy to sample from, q known exactly Outline π ( x ) a different density that is easy to sample from Nonlinear Filtering –the importance density Monte Carlo Then assign and normalize the weights Filters Particle Filters Importance Sampling w ( i ) ∝ p ( x ( i ) ) w ( i ) w ( i ) := Quadrature ˜ j w ( j ) . � Filters π ( x ( i ) ) Error Estimates Continuous- Any unkown proportionality constant in p or w goes away in Time Filtering the normalization step. Andreas Kl¨ ockner Nonlinear Filtering
Why and How Importance Sampling Works Nonlinear Filtering Now Andreas N Kl¨ ockner � w ( i ) δ ( x − x ( i ) ) , p ( x ) ≈ ˆ p ( x ) := ˜ Outline i =1 Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Why and How Importance Sampling Works Nonlinear Filtering Now Andreas N Kl¨ ockner � w ( i ) δ ( x − x ( i ) ) , p ( x ) ≈ ˆ p ( x ) := ˜ Outline i =1 Nonlinear assuming the particles x ( i ) have been drawn using π ( x ). Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Why and How Importance Sampling Works Nonlinear Filtering Now Andreas N Kl¨ ockner � w ( i ) δ ( x − x ( i ) ) , p ( x ) ≈ ˆ p ( x ) := ˜ Outline i =1 Nonlinear assuming the particles x ( i ) have been drawn using π ( x ). Filtering Monte Carlo Why? Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Why and How Importance Sampling Works Nonlinear Filtering Now Andreas N Kl¨ ockner � w ( i ) δ ( x − x ( i ) ) , p ( x ) ≈ ˆ p ( x ) := ˜ Outline i =1 Nonlinear assuming the particles x ( i ) have been drawn using π ( x ). Filtering Monte Carlo Why? Filters Particle Filters A uniformly weighted distribution sampled from p ( x ) is Importance Sampling (approximately) the same as a distribution weighted with Quadrature p ( x ) /π ( x ) sampled from π ( x ). Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Why and How Importance Sampling Works Nonlinear Filtering Now Andreas N Kl¨ ockner � w ( i ) δ ( x − x ( i ) ) , p ( x ) ≈ ˆ p ( x ) := ˜ Outline i =1 Nonlinear assuming the particles x ( i ) have been drawn using π ( x ). Filtering Monte Carlo Why? Filters Particle Filters A uniformly weighted distribution sampled from p ( x ) is Importance Sampling (approximately) the same as a distribution weighted with Quadrature p ( x ) /π ( x ) sampled from π ( x ). Filters Error Estimates � � Continuous- f ( x ) p ( x ) Time π ( x ) π ( x ) d x = f ( x ) p ( x ) d x . Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Recall the joint update equation Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Recall the joint update equation Monte Carlo Filters Particle Filters p ( x 0: t | y 1: t ) ∝ p ( x 0: t − 1 | y 1: t − 1 ) p ( y t | x t ) p ( x t | x t − 1 ) . Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Recall the joint update equation Monte Carlo Filters Particle Filters p ( x 0: t | y 1: t ) ∝ p ( x 0: t − 1 | y 1: t − 1 ) p ( y t | x t ) p ( x t | x t − 1 ) . Importance Sampling Quadrature Filters This yields the weight update equation Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Recall the joint update equation Monte Carlo Filters Particle Filters p ( x 0: t | y 1: t ) ∝ p ( x 0: t − 1 | y 1: t − 1 ) p ( y t | x t ) p ( x t | x t − 1 ) . Importance Sampling Quadrature Filters This yields the weight update equation Error Estimates Continuous- ∝ p ( x ( i ) Time 0: t | y 1: t ) Filtering w ( i ) = t π ( x ( i ) 0: t | y 1: t ) Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Sampling Nonlinear Particle Framework + Importance Sampling = ? Filtering Andreas To maintain the recursive update property, demand Kl¨ ockner Outline π ( x 0: t | y 1: t ) = π ( x 0: t − 1 | y 1: t − 1 ) π ( x t | x 0: t − 1 , y 1: t ) . Nonlinear Filtering Recall the joint update equation Monte Carlo Filters Particle Filters p ( x 0: t | y 1: t ) ∝ p ( x 0: t − 1 | y 1: t − 1 ) p ( y t | x t ) p ( x t | x t − 1 ) . Importance Sampling Quadrature Filters This yields the weight update equation Error Estimates Continuous- p ( y t | x ( i ) t ) p ( x ( i ) t | x ( i ) ∝ p ( x ( i ) Time t − 1 ) 0: t | y 1: t ) Filtering w ( i ) = w ( i ) . t t − 1 π ( x ( i ) π ( x ( i ) t | x ( i ) 0: t | y 1: t ) 0: t − 1 , y 1: t ) Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Andreas Kl¨ ockner Choosing a good π ( x ) is extremely important. Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Andreas Kl¨ ockner Choosing a good π ( x ) is extremely important. It can direct particles to interesting parts of the state space–or Outline far away from there. Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Andreas Kl¨ ockner Choosing a good π ( x ) is extremely important. It can direct particles to interesting parts of the state space–or Outline far away from there. Nonlinear Filtering Goal: Keep the weights as uniform as possible. Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Andreas Kl¨ ockner Choosing a good π ( x ) is extremely important. It can direct particles to interesting parts of the state space–or Outline far away from there. Nonlinear Filtering Goal: Keep the weights as uniform as possible. Monte Carlo Filters Particle Filters Optimal choice: Importance Sampling Quadrature π opt ( x t | x ( i ) t − 1 , y t ) = p ( x t | x ( i ) Filters t − 1 y t ) . Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Andreas Kl¨ ockner Choosing a good π ( x ) is extremely important. It can direct particles to interesting parts of the state space–or Outline far away from there. Nonlinear Filtering Goal: Keep the weights as uniform as possible. Monte Carlo Filters Particle Filters Optimal choice: Importance Sampling Quadrature π opt ( x t | x ( i ) t − 1 , y t ) = p ( x t | x ( i ) Filters t − 1 y t ) . Error Estimates Continuous- Not usually easy to sample from → back to original problem. Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Popular choice: Andreas Kl¨ ockner π prior ( x t | x ( i ) t − 1 , y t ) := p ( x t | x ( i ) t − 1 ) Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Popular choice: Andreas Kl¨ ockner π prior ( x t | x ( i ) t − 1 , y t ) := p ( x t | x ( i ) t − 1 ) Outline Nonlinear Filtering Readily available and often Gaussian → easy choice. Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Popular choice: Andreas Kl¨ ockner π prior ( x t | x ( i ) t − 1 , y t ) := p ( x t | x ( i ) t − 1 ) Outline Nonlinear Filtering Readily available and often Gaussian → easy choice. Monte Carlo Ignores observations → not always a good choice. Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Popular choice: Andreas Kl¨ ockner π prior ( x t | x ( i ) t − 1 , y t ) := p ( x t | x ( i ) t − 1 ) Outline Nonlinear Filtering Readily available and often Gaussian → easy choice. Monte Carlo Ignores observations → not always a good choice. Filters Particle Filters Weight update for π prior : Importance Sampling Quadrature Filters p ( y t | x ( i ) t ) p ( x ( i ) t | x ( i ) t − 1 ) Error Estimates w ( i ) ∝ w ( i ) = w ( i ) t − 1 p ( y t | x ( i ) t ) . t t − 1 Continuous- π ( x ( i ) t | x ( i ) t − 1 , y t ) Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Choice of Importance Density Nonlinear Filtering Popular choice: Andreas Kl¨ ockner π prior ( x t | x ( i ) t − 1 , y t ) := p ( x t | x ( i ) t − 1 ) Outline Nonlinear Filtering Readily available and often Gaussian → easy choice. Monte Carlo Ignores observations → not always a good choice. Filters Particle Filters Weight update for π prior : Importance Sampling Quadrature Filters p ( y t | x ( i ) t ) p ( x ( i ) t | x ( i ) t − 1 ) Error Estimates w ( i ) ∝ w ( i ) = w ( i ) t − 1 p ( y t | x ( i ) t ) . t t − 1 Continuous- π ( x ( i ) t | x ( i ) t − 1 , y t ) Time Filtering → Actually implementable algorithm. Andreas Kl¨ ockner Nonlinear Filtering
SIS Implementation Nonlinear def s i s ( model , n=1000, max time =20): Filtering p a r t i c l e s = [ model . s a m p l e i n i t i a l () for i in range (n ) ] p a r t i c l e h i s t o r y = [ p a r t i c l e s ] Andreas Kl¨ ockner weights = [1/ n for i in range (n ) ] w e i g h t h i s t o r y = [ weights ] Outline Nonlinear x = model . s a m p l e i n i t i a l () Filtering x h i s t o r y = [ x ] Monte Carlo Filters for t in range (1 , max time ) : Particle Filters x = model . s a m p l e t r a n s i t i o n ( t , x ) Importance Sampling y = model . sampl e observation ( t , x ) Quadrature x h i s t o r y . append ( x ) Filters Error Estimates e v o l v e d p a r t i c l e s = [ model . s a m p l e t r a n s i t i o n ( t , xp ) xp for Continuous- weights = [ weight ∗ model . o b s e r v a t i o n d e n s i t y ( t , y , xtp ) Time weight , xtp z i p ( weights , e v o l v e d p a r t i c l e s ) for in Filtering weight sum = sum( weights ) weights = [ weight / weight sum weight weights ] for in p a r t i c l e h i s t o r y . append ( p a r t i c l e s ) w e i g h t h i s t o r y . append ( weights ) Andreas Kl¨ ockner Nonlinear Filtering
SIS Results Nonlinear SIS Method Filtering trajectory Andreas posterior Kl¨ ockner Outline Nonlinear Filtering Density Density Monte Carlo Filters 1 Particle Filters 0.8 20 Importance Sampling 0.6 18 16 Quadrature 0.4 14 Filters 0.2 12 Error Estimates 0 10 Time Continuous- 8 Time 6 Filtering 40 4 30 20 10 0 2 -10 -20 -30 0 -40 x Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Resampling Pure SIS degenerates → all weight on one particle. Nonlinear Filtering Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Sequential Importance Resampling Pure SIS degenerates → all weight on one particle. Nonlinear Filtering Idea: Andreas Kl¨ ockner Outline Nonlinear Filtering Monte Carlo Filters Particle Filters Importance Sampling Quadrature Filters Error Estimates Continuous- Time Filtering Andreas Kl¨ ockner Nonlinear Filtering
Recommend
More recommend