アンサンブルカルマンフィルタ

アンサンブルカルマンフィルタ（Ensemble Kalman Filter；EnKF）とは、逐次型データ同化手法の一つである。シミュレーションモデル内の状態を表す確率変数について、その分布を実現値集合（アンサンブルと称す）によって保持し、観測を得るごとに、観測モデルをもとにしたカルマンフィルターによる推定により、2次モーメントまでが一致するよう、アンサンブルを修正することを繰り返す方法である。 まず、時刻kにおけるシミュレーションモデル（状態方程式）は以下である。 x k = f k ( x k − 1 , v k ) {\displaystyle {\boldsymbol {x}}_{k}={\boldsymbol {f}}_{k}({\boldsymbol {x}}_{k-1},{\boldsymbol {v}}_{k})} ここで、 x k {\displaystyle {\boldsymbol {x}}_{k}} は状態ベクトル、 v k {\displaystyle {\boldsymbol {v}}_{k}} はシステムノイズである。 また、観測モデル（観測方程式）は、以下である。 y k = h k ( x k , w k ) {\displaystyle {\boldsymbol {y}}_{k}={\boldsymbol {h}}_{k}({\boldsymbol {x}}_{k},{\boldsymbol {w}}_{k})} ここで、 y k {\displaystyle {\boldsymbol {y}}_{k}} は観測ベクトル、 w k {\displaystyle {\boldsymbol {w}}_{k}} は観測ノイズである。 本項目では、以下の線形の観測モデルを考える。 y k = H k x k + w k {\displaystyle {\boldsymbol {y}}_{k}={\boldsymbol {H}}_{k}{\boldsymbol {x}}_{k}+{\boldsymbol {w}}_{k}} ここでN個のアンサンブル { x k − 1 ∣ k − 1 } i = 1 N {\displaystyle \{{\boldsymbol {x}}_{k-1\mid k-1}\}_{i=1}^{N}} を考えたとき、条件付き分布pを以下のように δ {\displaystyle \delta } 関数を用いて近似する。   p ( x k ∣ y 1 : k − 1 ) ≅ 1 N ∑ i = 1 N δ ( x k − x k ∣ k − 1 ( i ) ) {\displaystyle \ p({\boldsymbol {x}}_{k}\mid {\boldsymbol {y}}_{1:k-1})\cong {\frac {1}{N}}\sum _{i=1}^{N}\delta ({\boldsymbol {x}}_{k}-{\boldsymbol {x}}_{k\mid k-1}^{(i)})}   p ( x k ∣ y 1 : k ) ≅ 1 N ∑ i = 1 N δ ( x k − x k ∣ k ( i ) ) {\displaystyle \ p({\boldsymbol {x}}_{k}\mid {\boldsymbol {y}}_{1:k})\cong {\frac {1}{N}}\sum _{i=1}^{N}\delta ({\boldsymbol {x}}_{k}-{\boldsymbol {x}}_{k\mid k}^{(i)})} アンサンブルカルマンフィルタの解析は、予測（prediction）、濾波（filtering）および平滑化（smoothing）の三つの推定問題に分類することができる。以下に三つの問題を示す。 アンサンブルメンバー x k − 1 ∣ k − 1 ( i ) {\displaystyle {\boldsymbol {x}}_{k-1\mid k-1}^{(i)}} をシミュレーションモデルに基づいて更新し、予測分布のアンサンブルを得る。すなわち、以下の式が得られる。 x k ∣ k − 1 ( i ) = f k ( x k − 1 ∣ k − 1 ( i ) , v k ( i ) ) {\displaystyle {\boldsymbol {x}}_{k\mid k-1}^{(i)}={\boldsymbol {f}}_{k}({\boldsymbol {x}}_{k-1\mid k-1}^{(i)},{\boldsymbol {v}}_{k}^{(i)})} x ′ k ∣ k − 1 ( i ) = x k ∣ k − 1 ( i ) − 1 N ∑ j = 1 N x k ∣ k − 1 ( j ) {\displaystyle {\boldsymbol {x'}}_{k\mid k-1}^{(i)}={\boldsymbol {x}}_{k\mid k-1}^{(i)}-{\frac {1}{N}}\sum _{j=1}^{N}{\boldsymbol {x}}_{k\mid k-1}^{(j)}} V ^ k ∣ k − 1 = 1 N − 1 ∑ j = 1 N x ′ k ∣ k − 1 ( j ) x ′ k ∣ k − 1 ( j ) T {\displaystyle {\hat {\boldsymbol {V}}}_{k\mid k-1}={\frac {1}{N-1}}\sum _{j=1}^{N}{{\boldsymbol {x'}}_{k\mid k-1}^{(j)}{\boldsymbol {x'}}_{k\mid k-1}^{(j)}}^{T}} R ^ k = 1 N − 1 ∑ j = 1 N w k ( j ) w k ( j ) T {\displaystyle {\hat {\boldsymbol {R}}}_{k}={\frac {1}{N-1}}\sum _{j=1}^{N}{{\boldsymbol {w}}_{k}^{(j)}{\boldsymbol {w}}_{k}^{(j)}}^{T}} 次に、以下のカルマンゲインより、アンサンブルメンバーを得る。 K ^ k = V ^ k ∣ k − 1 H k T ( H k V ^ k ∣ k − 1 H k T + R ^ k ) − 1 {\displaystyle {\hat {\boldsymbol {K}}}_{k}={\hat {\boldsymbol {V}}}_{k\mid k-1}{\boldsymbol {H}}_{k}^{T}({\boldsymbol {H}}_{k}{\hat {\boldsymbol {V}}}_{k\mid k-1}{\boldsymbol {H}}_{k}^{T}+{\hat {\boldsymbol {R}}}_{k})^{-1}} x k ∣ k ( i ) = x k ∣ k − 1 ( i ) + K ^ k ( y k + w k ( i ) − H k x k ∣ k − 1 ( i ) ) {\displaystyle {\boldsymbol {x}}_{k\mid k}^{(i)}={\boldsymbol {x}}_{k\mid k-1}^{(i)}+{\hat {\boldsymbol {K}}}_{k}({\boldsymbol {y}}_{k}+{\boldsymbol {w}}_{k}^{(i)}-{\boldsymbol {H}}_{k}{\boldsymbol {x}}_{k\mid k-1}^{(i)})} 以下のアンサンブルメンバーを得る。ここで、 J ^ k ′ ∣ k {\displaystyle {\hat {\boldsymbol {J}}}_{k'\mid k}} はカルマンゲインに相当する。 J ^ k ′ ∣ k = 1 N − 1 ( ∑ i = 1 N ( x k ′ ∣ k − 1 ( i ) − x ^ k ′ ∣ k − 1 ) ( x k ′ ∣ k − 1 ( i ) − x ^ k ′ ∣ k − 1 ) T ) H k T ( H k V ^ k ∣ k − 1 H k T + R ^ k ) − 1 {\displaystyle {\hat {\boldsymbol {J}}}_{k'\mid k}={\frac {1}{N-1}}(\sum _{i=1}^{N}({\boldsymbol {x}}_{k'\mid k-1}^{(i)}-{\hat {\boldsymbol {x}}}_{k'\mid k-1})({\boldsymbol {x}}_{k'\mid k-1}^{(i)}-{\hat {\boldsymbol {x}}}_{k'\mid k-1})^{T}){\boldsymbol {H}}_{k}^{T}({\boldsymbol {H}}_{k}{\hat {\boldsymbol {V}}}_{k\mid k-1}{\boldsymbol {H}}_{k}^{T}+{\hat {\boldsymbol {R}}}_{k})^{-1}} x k ′ ∣ k ( i ) = x k ′ ∣ k − 1 ( i ) + J ^ k ′ ∣ k ( y k + w k ( i ) − H k x k ∣ k − 1 ( i ) ) {\displaystyle {\boldsymbol {x}}_{k'\mid k}^{(i)}={\boldsymbol {x}}_{k'\mid k-1}^{(i)}+{\hat {\boldsymbol {J}}}_{k'\mid k}({\boldsymbol {y}}_{k}+{\boldsymbol {w}}_{k}^{(i)}-{\boldsymbol {H}}_{k}{\boldsymbol {x}}_{k\mid k-1}^{(i)})} 中村和幸、上野玄太、樋口知之；データ同化：その概念と計算アルゴリズム、統計数理、第53巻、第2号、pp.211-229、2005. 三好建正；アンサンブル・カルマンフィルタ‐データ同化とアンサンブル予報の接点‐、天気、Vol.52、No.2、pp.93-104、2005. Evansen, G.: The ensemble Kalman filter : theoretical formulation and practical implementation, Ocean Dynamics, 53, pp.343-367, 2003. Hamill, T.M.: Ensemble-based atmospheric data assimilation, A tutorial, NOAA-CIRES Climate Diagnostics Center, pp.1-46, 2003.