マルコフ連鎖の母期待値の時間発展の数値計算(markovexpect03) - 課題p042

Time-stamp: "2018-05-15 Tue 09:57 JST hig"

情報

  • 出題:2018-05-15
  • 実行/提出期限:2018-05-25
  • 提出
    • markovexpect03.c プログラム
    • markovexpect03.R R Script
    • markovexpect03.docx RStudioのレポート

学習目標

  • マルコフ連鎖で母期待値の時間変化を計算するプログラムを書ける.

課題

状況の説明

課題markov02と同じ状況. 転置推移確率行列 \(M\) も同じ.

課題のタスク

  • 課題markov02で作成したプログラム, または解答のプログラムを改造して, 時刻ごとに母平均値 \(\mathrm{E}[X(t)]\),母分散\(\mathrm{V}[X(t)]\), 母比率\(P(X(t)>1)\)を計算する, 仕様の通りのプログラムを作成しよう.
  • T=30で実行し, 横軸t, 縦軸母期待値or母分散or母比率でグラフを描こう.

プログラムの入力

  • t=0での初期分布ベクトルの成分p[0] p[1] ... p[m-1](m個の小数)
  • 最終時刻T(0以上の整数)

プログラムの入力例

1.0 0.0 0.0 0.0
3

プログラムの出力

  • 1行目に#T=に続いて 最終時刻\(T\)
  • 2行目にラベル t,p0,p1,p2,p3,EX,VX,P
  • 3行目にコンマで区切って, 時刻t=0の\(t, p_0,p_1,p_2,\ldots,p_{m-1},\mathrm{E}[X(T)]\),\(\mathrm{V}[X(T)]\),母比率\(p\)
  • 4行目にコンマで区切って, 時刻t=1の\(t, p_0,p_1,p_2,\ldots,p_{m-1},\mathrm{E}[X(T)]\),\(\mathrm{V}[X(T)]\),母比率\(p\)
  • T+3行目にコンマで区切って, 時刻t=Tの\(t, p_0,p_1,p_2,\ldots,p_{m-1},\mathrm{E}[X(T)]\),\(\mathrm{V}[X(T)]\),母比率\(p\)

プログラムの出力例

#T=3
t,p0,p1,p2,p3,EX,VX,P
0,1.0,0.0,0.0,0.0,0.0,1,1,0
1,1.0,0.0,0.0,0.0,0.0,1,1,0
2,1.0,0.0,0.0,0.0,0.0,1,1,0
3,1.0,0.0,0.0,0.0,0.0,1,1,0

アドバイス

\(\mathrm{V}[X(t)]=\mathrm{E}[X(t)^2]-\mathrm{E}[X(t)]^2\)を使うのがいいでしょう.

標本ナントカじゃなく母ナントカなのでご注意. \(m=4\)って標本サイズじゃなくて母分布の量だよね. 標本抽出してるわけじゃないからもちろんそうなんですけど.

print_distを書き替えるのがいちばん簡単かも. 関数プロトタイプ宣言も同時に変更しないと.

この課題では反則だけど, 課題markov02で出力したCSVファイルをRで加工して, 同じグラフを描くこともできるはず.

  • すべてのガイド
  • このサイトのコンテンツ

    QRcode to hig3.net

    http://hig3.net