本ページでは、MCDC ツールによるモデル推定の実行例として、Kitagawa モデルに従う観測データ系列のモデル推定を行う手順を紹介します。
Kitagawa モデルは、非線形状態空間モデルの一つで、時刻 t に対して以下の式で表されます。
- 状態遷移関数
x1(t) = a1 * x1(t-1) + b1 * x1(t-1) / (1 + x1(t-1) ^ 2) + c1 * cos(1.2 * t) + sqrt(q1) * randn; x2(t) = a2 * x2(t-1) + b2 * x2(t-1) / (1 + x2(t-1) ^ 2) + c2 * cos(1.2 * t) + sqrt(q2) * randn;
- 観測関数
y1(t) = d1 * x1(t) ^ 2 + d2 * x2(t) ^ 2 + sqrt(r1) * randn; y2(t) = d3 * x1(t) ^ 2 + sqrt(r2) * randn; y3(t) = d4 * x2(t) + sqrt(r3) * randn;
ただし a, b, c, d はモデルパラメータであり、q, r は系列に加えられるノイズの大きさを制御するパラメータです。
この実験では、Kitagawa モデルから生成された観測データ系列を与えて、モデル推定を行い、推定されたモデルの観測データ系列への当てはめを確認します。モデルパラメータは以下のように設定しました。
パラメータ名 | 内容 | 設定値 |
---|---|---|
T | 系列の長さ | 1,000 |
(a1, b1, c1) | 状態変数 x1 に関するモデルパラメータ | (0.5, 28, 8) |
(a2, b2, c2) | 状態変数 x2 に関するモデルパラメータ | (0.6, 30, 10) |
(d1, d2, d3, d4) | 観測変数 y に関するモデルパラメータ | (0.05, 0.06, 0.07, 0.08) |
(q1, q2) | 状態遷移関数に加えられるノイズの大きさ | (1e-1, 1e-1) |
(r1, r2, r3) | 観測関数に加えられるノイズの大きさ | (1e-1, 1e-1, 1e-1) |