カルマンフィルターは、いつ単純な移動平均よりも良い結果を出しますか?


14

最近、ランダムな速度と加速度で粒子の位置を測定する簡単な例にカルマンフィルターを実装しました。カルマンフィルターはうまく機能することがわかりましたが、次に、これと移動平均を行うことの違いは何ですか?移動平均がカルマンフィルターよりも優れている約10サンプルのウィンドウを使用した場合、カルマンフィルターを使用すると移動平均を使用するだけの利点がある例を見つけようとしていることがわかりました。

移動平均はカルマンフィルターよりもはるかに直感的で、状態空間のメカニズムを気にせずに盲目的に信号に適用できます。私はここで基本的な何かを見逃しているように感じます、そして誰かが提供することができるどんな援助も感謝します。



私はこの投稿を見ましたが、私の質問は、カルマンフィルターが移動平均よりも良い結果をもたらす例について尋ねています。
dvreed77

アプリケーションで移動平均が十分であれば、それを使用します。カルマンフィルター(KF)は必要ありません。特定の仮定の下で、KFは可能な限り最良の推定値を提供します。これらの仮定がアプリケーションに当てはまらないか、KF実装を確認する必要があります。
アリ

これらの仮定は何ですか?ガウスノイズ?もしそうなら、それは私のシミュレーションが追加しているものです。私のコードは、信号処理クラスから与えられたコードのわずかに修正されたバージョンであり、他のいくつかのソースに対してチェックしました。更新と予測の方程式は正しいはずです。移動平均のパフォーマンスが向上する理由は、KFが使用している最後のサンプルだけでなく、過去10個のサンプルを使用しているためだと思います。エラーの共分散はサンプルを追加するごとに厳しくなってきていると思うので、MAのパフォーマンスの向上に戸惑っています。
dvreed77

そして、それが違いを生む場合、私がアウターパフォーマンスと言うとき、移動平均を使用してMSEが小さくなることを意味します。
dvreed77

回答:


4

移動平均によって与えられる推定は、真の状態よりも遅れます。

一定の速度で上昇する飛行機の高度を測定し、ノイズの多い(ガウス)高度測定があるとします。ノイズのある高度測定の時間間隔の平均は、その時間間隔の中央に飛行機がどこにあったのかを適切に推定できる可能性があります

移動平均に長い時間間隔を使用すると、平均はより正確になりますが、飛行機の高度をより早く推定します。移動平均に短い時間間隔を使用すると、平均の精度は低下しますが、最近の時間に飛行機の高度を推定します。

ただし、一部のアプリケーションでは、移動平均の遅れは問題になりません。

編集:この投稿は同じ質問をし、より多くの応答とリソースがあります


2

問題の設定に使用した元のパラメーターを使用すると、移動平均のパフォーマンスが向上することがわかりましたが、動的モデルを定義したパラメーターで遊んでみると、カルマンフィルターのパフォーマンスがはるかに優れていることがわかりました。パラメータが再生する効果を確認するための設定ができたので、正確に何が起こっているかについてのより良い直観を得られると思います。私の質問があいまいであった場合/答えてくれた人に感謝します。


1
答えに再現性のあるおもちゃのコードを入れて、彼らが「実際にそれを見る」ことができるようにすると、質問に関与する他の人にとって役立つかもしれません。個人的に、他の人が最も高く評価した私の答えは、再現可能なコンテンツを持つ傾向があります。
EngrStudent-モニカの復活
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.