ランダムウォークの座標の期待値の推定(sim13) - 課題p041
情報
- 出題:2019-04-30
- 実行/提出期限:2019-05-06 23:55:00
- 提出
- sim13_n.c プログラム, nは推定する量の番号
学習目標
- ランダムウォークで, \(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$
課題のタスク
- 与えられた最終時刻\(T\) に対して, サンプルサイズ \(N\)の標本を抽出し,
チーム別または個人別に指定されたミッションの量をそれぞれ確率シミュレーションで推定(母期待値は点推定, 母比率は信頼係数95%で区間推定)して出力するプログラムsim13.cを作ろう. 入出力は下の仕様に従おう.
チーム別または個人別ミッション番号と内容
- 母期待値 \(\mathrm{E}[X(T)^2]\)
- 母期待値 \(\mathrm{E}[\cos(\tfrac12\pi\times X(T))]\)
Visual Studioで定数
M_PI
を使うには, Cファイルの先頭で#define _USE_MATH_DEFINES
する必要がある. - 母期待値 \(\mathrm{E}[1/(X(T)^2+1)]\)
- 母期待値 \(\mathrm{E}[\sqrt{|X(T)|}]\)
- 母比率(確率) \(P(X(T)\neq0))\),
- 母比率(確率) \(P(-2\leq X(T)\leq 1)\)
- 母比率(確率) \(P(10\leq X(T)\times e^{X(T)} \leq 100)\)
- 母比率(確率) \(P(X(T)=0\text{または}X(T)=3)\)
- \(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母期待値のとき点推定 #i=[0.027:0.029]母比率のとき区間推定
実装の指定
母期待値\(\mathrm{E}[\phi(X)]\)を考える関数 \(\phi(x)\) に対応して, Cの関数int or double phi(int x)
を定義しよう.
アドバイス
自分でチェック!
- 確率って何以上何以下?