粒子フィルタ
重点サンプリングにあるように、関数 f ( ⋅ ) {\displaystyle f(\cdot )} の推定値は重みつき平均
∫ f ( x k ) p ( x k | y 0 , ... , y k ) d x k ≈ ∑ L = 1 P w ( L ) f ( x k ( L ) ) {\displaystyle \int f(x_{k})p(x_{k}|y_{0},\dots ,y_{k})dx_{k}\approx \sum _{L=1}^{P}w^{(L)}f(x_{k}^{(L)})}
で近似できる。
粒子の個数が有限である場合、このアルゴリズムの性能は提案分布 π ( x k | x 0 : k − 1 , y 0 : k ) {\displaystyle \pi (x_{k}|x_{0:k-1},y_{0:k})} の選択に依存する。 最適な提案分布は目的分布
π ( x k | x 0 : k − 1 , y 0 : k ) = p ( x k | x k − 1 , y k ) {\displaystyle \pi (x_{k}|x_{0:k-1},y_{0:k})=p(x_{k}|x_{k-1},y_{k})}
である。
しかしながら事前遷移確率
π ( x k | x 0 : k − 1 , y 0 : k ) = p ( x k | x k − 1 ) {\displaystyle \pi (x_{k}|x_{0:k-1},y_{0:k})=p(x_{k}|x_{k-1})}
このアルゴリズムは k {\displaystyle k} における粒子を生成するために k − 1 {\displaystyle k-1} における P {\displaystyle P} 個の粒子の合成を利用しており、 k {\displaystyle k} において P {\displaystyle P} 個の粒子が生成されるまでステップ 2--6 以降を繰り返す。
これは x {\displaystyle x} を2次元配列とみなすと、より視覚的に理解できる。 一つの次元は k {\displaystyle k} であり、もう一つの次元は粒子番号 L {\displaystyle L} である。 例えば x ( k , L ) {\displaystyle x(k,L)} は k {\displaystyle k} における L {\displaystyle L} 番目の粒子であり、 x k ( L ) {\displaystyle x_{k}^{(L)}} と書ける (上記のアルゴリズムの記述に用いた通り)。 ステップ 3 は k − 1 {\displaystyle k-1} においてランダムに選ばれた粒子 x k − 1 ( L ) {\displaystyle x_{k-1}^{(L)}} から潜在的な x k {\displaystyle x_{k}} を生成し、ステップ 6で棄却 / 受領の判定が行われる。言い替えれば、 x k {\displaystyle x_{k}} の値はそれまでに生成された x k − 1 {\displaystyle x_{k-1}} を用いて生成される。