ランダムウォークの座標から定まる量の確率シミュレーションによる推定(sim13) - 課題p053

Time-stamp: "2018-06-04 Mon 11:28 JST hig"

情報

  • 出題:2018-05-18
  • 実行/提出期限:2018-05-25
  • 提出
    • sim13.c プログラム
    • sim13.csv 推定結果

学習目標

  • ランダムウォークで, \(X(T)\) の母期待値, \(X(T)\) がある条件を満たす比率(確率)を確率シミュレーションで, ExcelやRを使わずに推定できる.

課題

状況の説明

$t=0$ に $x=0$から出発するランダムウォークの, 時刻\(t\)における座標 $X(t)$ を \[ X(t)=X(t-1)+R(t), X(0)=0 \] とする. ここで確率変数 $R(1),R(2),\ldots,$は, 独立同分布

  • 確率$5/9$で$R(t)=-1$
  • 確率$1/9$で$R(t)=0$
  • 確率$3/9$で$R(t)=+1$
に従う.

課題のタスク

  1. 与えられた最終時刻\(T\) に対して, サンプルサイズ \(N\)の標本を抽出し, チーム別または個人別に指定されたミッションの量をそれぞれ確率シミュレーションで推定して出力するプログラムsim13.cを作ろう. 入出力は下の仕様に従おう.
    チーム別または個人別ミッション番号と内容
    1. 母期待値 \(\mathrm{E}[X(T)^2]\)
    2. 母期待値 \(\mathrm{E}[\cos(\tfrac12\pi\times X(T))]\)
      Visual Studioで定数 M_PIを使うには, Cファイルの先頭で#define USE_MATH_DEFINESする必要がある.
    3. 母期待値 \(\mathrm{E}[1/(X(T)^2+1)]\)
    4. 母比率(確率) \(P(X(T)\neq0))\),
    5. 母比率(確率) \(P(-2\leq X(T)\leq 1)\)
    6. 母比率(確率) \(P(10\leq X(T)\times e^{X(T)} \leq 100)\)
    7. 母比率(確率) \(P(X(T)=0\text{または}X(T)=3)\)
  2. \(T=20,N=1000\)について実行して, 出力を sim13.csvに保存しよう.

プログラムの入力の仕様

改行で区切ってこの順で
  • 乱数のシード\(d\)
  • ランダムウォークの最終時刻\(T\geq0\)
  • サンプルサイズ\(N\geq1\)

プログラムの入力例

XYZ自分で決めるシード
20
1000

プログラムの出力の仕様

  • 1,2,3,4行目に改行で区切って"#a=, #d=, #T=, #N="に続いてミッション番号,\(d,T,N\)
  • 5行目にラベル(時刻)0,1,,..,T,
  • 6,..,N+5 行目にランダムウォークの座標X(0),..,X(T),
  • N+6行目に"#e="に続いて担当するミッションの推定値

プログラムの出力例

#a=1ミッション番号
#d=XYZシード
#T=20
#N=1000
0,1,...,20,
0,1,...,8,
0,-1,...,-2,
    ...
    0,1,...,-4,   
    #e=80.38

実装の指定

母期待値\(\mathrm{E}[\phi(X)]\)を考える関数 \(\phi(x)\) に対応して, Cの関数int or double phi(int x)を定義しよう.

アドバイス

  • 検算のアイデア: CSVをRで読み込んで, meanとかで標本ナントカを求めると同じ値になる?
  • 検算のアイデア: CSVを開いてみて, 座標と, 推定する量の間の関係は正しい? 条件が成立しているかどうかって正しく判定されてる?

自分でチェック!

  • 確率って何以上何以下?
  • すべてのガイド
  • このサイトのコンテンツ

    QRcode to hig3.net

    http://hig3.net