トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

BugTrack-状態空間モデリング/5

R備忘録 /状態空間モデリング/donlp2/その他のメモ

状態空間モデリング - 記事一覧

定常状態について

  • 投稿者: みゅ
  • カテゴリ: なし
  • 優先度: 普通
  • 状態: 完了
  • 日時: 2008年06月19日 11時22分46秒

内容

定常状態について

定常状態とは

状態変数の共分散行列P(sspirの表記ではC)がある一定の行列に収束するとき、
定常解を持つという
  • 状態方程式が時間不変なシステム行列を持つときは、P(R言語では「C」)は必ず収束する
  • システム行列とはsspirの表現では「Fmat」「Vmat」「Gmat」「Wmat」のこと
  • 参考書の表現では(3.1)式で表される、Z、T、R、Q(たぶんHも)のこと

例 「co2」データを使った状態空間表現の例

ssm_co2 <- SS(y=matrix(as.numeric(co2)),
    Fmat=function(tt,x,phi) return(matrix(1)),
    Vmat= function(tt,x,phi) return(matrix(1)),
    Gmat= function(tt,x,phi) return(matrix(1)),
    Wmat= function(tt,x,phi) return(matrix(0.1)),
    phi= NULL,
    m0=matrix(1),C0=matrix(1)
)
ssm_co2_f <- kfilter(ssm_co2)
  • 参考書で言う「P」がここでは(R言語では)「C」となっている
  • 今回のケースではCは1×1行列なので行列式を取る必要はないが一般性を確保するため行列式を取っている
> sapply(ssm_co2_f$C, det)
  [1] 0.5238095 0.3841642 0.3262201 0.2988460 0.2851250 0.2780435 0.2743335
  [8] 0.2723746 0.2713360 0.2707841 0.2704905 0.2703342 0.2702510 0.2702067
 [15] 0.2701831 0.2701705 0.2701638 0.2701603 0.2701584 0.2701574 0.2701568
・・・
[456] 0.2701562 0.2701562 0.2701562 0.2701562 0.2701562 0.2701562 0.2701562
[463] 0.2701562 0.2701562 0.2701562 0.2701562 0.2701562 0.2701562

例◆「co2」データを使った状態空間表現の例 - 季節成分を抽出する

  • このケースでは、状態変数の共分散行列P(sspirの表記ではC)が12×12の行列となっている
> ssm_co2_f$C[[1]]
            [,1]       [,2]        [,3]        [,4]        [,5]        [,6]
 [1,]  1.1403509 -1.0526316  0.08771930  0.08771930  0.08771930  0.08771930
 [2,] -1.0526316  1.8947368 -0.15789474 -0.15789474 -0.15789474 -0.15789474
 [3,]  0.0877193 -0.1578947  0.92982456 -0.07017544 -0.07017544 -0.07017544
 [4,]  0.0877193 -0.1578947 -0.07017544  0.92982456 -0.07017544 -0.07017544
 [5,]  0.0877193 -0.1578947 -0.07017544 -0.07017544  0.92982456 -0.07017544
 [6,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544  0.92982456
 [7,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [8,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [9,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
[10,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
[11,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
[12,]  0.0877193 -0.1578947 -0.07017544 -0.07017544 -0.07017544 -0.07017544
             [,7]        [,8]        [,9]       [,10]       [,11]       [,12]
 [1,]  0.08771930  0.08771930  0.08771930  0.08771930  0.08771930  0.08771930
 [2,] -0.15789474 -0.15789474 -0.15789474 -0.15789474 -0.15789474 -0.15789474
 [3,] -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [4,] -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [5,] -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [6,] -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [7,]  0.92982456 -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [8,] -0.07017544  0.92982456 -0.07017544 -0.07017544 -0.07017544 -0.07017544
 [9,] -0.07017544 -0.07017544  0.92982456 -0.07017544 -0.07017544 -0.07017544
[10,] -0.07017544 -0.07017544 -0.07017544  0.92982456 -0.07017544 -0.07017544
[11,] -0.07017544 -0.07017544 -0.07017544 -0.07017544  0.92982456 -0.07017544
[12,] -0.07017544 -0.07017544 -0.07017544 -0.07017544 -0.07017544  0.92982456
> det(ssm_co2_f$C[[1]])
[1] 0.1754386
  • 最初と最後
> sapply(ssm_co2_f$C, det)
  [1] 0.175438596 0.116465863 0.082930955 0.063313902 0.050495697  0.041174841
  [7] 0.033931707 0.028102359 0.023329069 0.019387971 0.016121113 0.011884568
 [13] 0.010034203 0.009280276 0.008815130 0.008417144 0.008062338 0.007743820
 [19] 0.007453030 0.007182760 0.006927999 0.006684012 0.006435661 0.006089259
 [25] 0.005870673 0.005717178 0.005604106 0.005505307 0.005414654 0.005331985
・・・
[451] 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870
[457] 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870
[463] 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870 0.004125870
  • 例,茲蠎束は遅い

コメント