1次元のカルマンゲインの導出には、様々な方法があります。ここでは、シンプルな導出法を紹介します。
観測値 \( z_{n} \) と事前推定値 \( \hat{x}_{n,n-1} \) が与えられたとき、観測値と事前推定値に基づいた、最適な推定値 \( \hat{x}_{n,n} \) を求めたいとします。
最適な推定値は、観測値と事前推定値の重みつき平均(加重平均)で表現します。
\[ \hat{x}_{n,n} = k_{1}z_{n} + k_{2}\hat{x}_{n,n-1} \]
ここで、\( k_{1} \) と \( k_{2} \) は観測値と事前推定値の重み係数です。
\[ k_{1} + k_{2} = 1 \]
\[ \hat{x}_{n,n} = k_{1}z_{n} + (1 - k_{1})\hat{x}_{n,n-1} \]
分散の関係は次のように与えられます。
\[ p_{n,n} = k_{1}^{2}r_{n} + (1 - k_{1})^{2}p_{n,n-1} \]
ここで、
\( p_{n,n} \):最適な事後推定値 \( \hat{x}_{n,n} \) の分散
\( p_{n,n-1} \):事前推定値 \( \hat{x}_{n,n} \) の分散
\( r_{n} \):観測値 \( z_{n} \) の分散
最適な推定値を求めるためには、\( p_{n,n} \)の最小化を考えます。
\( p_{n,n} \) を最小にする \( k_{1} \) を見つけるために、\( p_{n,n} \) を \( k_{1} \) で微分し、それをゼロと置きます。
\[ \frac{dp_{n,n}}{dk_{1}} = 2k_{1}r_{n} - 2(1 - k_{1})p_{n,n-1} \]
したがって、
\[ k_{1}r_{n} = p_{n,n-1} - k_{1}p_{n,n-1} \]
\[ k_{1}p_{n,n-1} + k_{1}r_{n} = p_{n,n-1} \]
\[ k_{1} = \frac{p_{n,n-1}}{p_{n,n-1} + r_{n}} \]
カルマンゲインを導出できました!
カルマンゲインは、推定値の分散を最小化することから、カルマンフィルタは最適フィルタ (optimal filter) とも呼ばれます。