拡張カルマンフィルタ(EKF)は、非線形なシステムにおける状態推定を行うためのアルゴリズムです。通常のカルマンフィルタを非線形関数へ適用できるように拡張したもので、ロボットの自己位置推定やセンサーフュージョンなどの分野で広く利用されています。
拡張カルマンフィルタとは
一言でいうと、非線形な現象やダイナミクスを持つシステムの内部状態を、誤差を含んだ観測データから高精度に推定するための数学的手法です。
詳しく解説
現実世界の多くのシステムは非線形であり、単純な線形方程式ではモデル化できません。拡張カルマンフィルタは、非線形な状態方程式や観測方程式をテイラー展開によって局所的に線形化し、ヤコビ行列を計算することで、標準的なカルマンフィルタの枠組みを適用できるようにします。予測ステップと更新ステップを繰り返すことで、ノイズの影響を低減しながら正確な状態をリアルタイムに推定できるため、自動運転車やドローンの姿勢制御、SLAMにおいて不可欠な技術となっています。
具体例・使われ方
自動運転車やロボット分野では、GPSやIMU(慣性計測装置)などの異なるセンサーデータを統合するセンサーフュージョンに利用されます。GPSの誤差やIMUのドリフトを補正しながら、車両の位置や速度をリアルタイムに推定します。
似た用語との違い
線形なシステムを前提とする通常のカルマンフィルタとは異なり、非線形システムに対応している点が最大の違いです。また、非線形性を線形化するのではなく確率分布の近似によって対応するアンセンテカルマンフィルタと比較して、計算コストが低い一方で強い非線形性に対しては推定精度が低下する特性があります。
注意点
テイラー展開による1次近似に依存しているため、システムの非線形性が極端に強い場合には線形化誤差が蓄積し、推定精度が大幅に低下あるいは発散するリスクがあります。また、ヤコビ行列を解析的に導出・計算する必要があるため、モデルが複雑な場合には実装や計算の負担が増加する点に注意が必要です。