2

Matlab でカルマン フィルターを構築するために使用したい状態空間モデルのパラメーターの推定に問題があります。

 S_t = S_(t-1)+e_t
 Y_t = B*S_t+v_t

Y_t約 20 の時系列を含む観測行列はどこS_tにあり、スカラーであると想定されています。Bパラメータ行列を推定するサンプル コードが見つからず、これまでのところすべてのテストが失敗しています。

4

1 に答える 1

1

カルマン フィルターで何をすべきかを簡単な言葉で説明しようと思います。より良いアドバイスが必要な場合は、質問してより多くの情報を提供してください。

カルマン フィルターでは、動的システム (時間とともに変化する) の真の状態を推定しようとします。あなたの場合の状態はS_t(いくつかのシステムからの電流、GPS位置、またはその他の数値または数値のセットである可能性があります)です。S_(t-1)動的システムでは、通常、状態から状態への変化について通知する遷移マトリックスがありますS_t。あなたが書いたように、遷移行列は1に等しくなるようです。つまり、ガウスノイズが追加された場合にのみ、前の値と同じ値を期待する必要があります。ガウス ノイズは、モデル化が難しく、状態と相関しないすべての異なるソースから発生します。

これで、システムの状態は通常、何らかのセンサーによって測定され、Y_tセンサーからの読み取り値が得られます。読み取り値は、B観測行列によって状態に関連付けられます。v_tすべてのセンサーには、センサーの不完全性に起因するノイズがあります。は、Y_t推定したい状態の読み取り値です。

Y_1あなたが書いたこの文章から、 からまでの 20 の読みがあることがわかりますY_20。20 秒後、たとえば 20 秒後の動的システムの状態の真の値を推定したいとします。S_t=A*S_(t-1)+e_t最初に、遷移行列が A=1 であり、 と同じであることが正しいかどうかを考える必要がありますS_t=S_(t-1)+e_t。モデルA化するには、動的システムに関するある程度の知識が必要です。多くの場合、微分方程式を使用してモデル化されます。システムをモデル化した後、この推定したいものと測定値 (センサーに来るもの) との関係を考えると、B.

カルマン フィルターは反復フィルターであるため、時系列のY場合、モデルを接続して測定を反復します。Y-2Y_3、 ... までY_20の推定と、推定がどれだけ優れているかを示す誤差共分散で終了する必要があります。

この手順について考えてみてください。何か助けが必要な場合は、コメントで提案されている詳細を提供して、良い質問をしてください。

幸運を

于 2013-03-17T14:05:27.140 に答える