連続型確率変数の擬似乱数
樋口さぶろお
龍谷大学理工学部数理情報学科
計算科学☆実習
B L07(2018-05-29 Tue)最終更新: Time-stamp: ”2018-05-29 Tue 19:09 JST hig”
今日の目標
2
次元配列を使わず
multiply transfを書ける
U(a, b)
にしたがう連続型擬似乱数を生成できる
確率変数の変換を説明できる
http://hig3.net反射壁
x= 0,5は説明の一貫性から残してるけど無駄
.実質的には状態 空間
S ={1,2,3,4}なので
,4×4行列でいい
.
1 0 0 0 0 0 0h h 0 00 0h 0h0 0 0 0h 0h0 0 0 0h h0 0 0 0 0 0 1
世の中で正しい答としては
,反射壁を表現する
Mは他にも作れるけど
,授業で説明したのはこれ
.L06-Q1
Quiz
解答
:離散的なランダムウォークの確率の転置推移確率行列
1
1 17 0 0 0 0 47 17 0 0 0 27 47 17 0 0 0 27 47 0 0 0 0 27 1
ランダムウォークの境界条件・偏微分方程式の数値計算
2
略
ここまで来たよ
6
ランダムウォークの境界条件・偏微分方程式の数値計算 状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
7
連続型確率変数の擬似乱数
1
次関数で連続型一様擬似乱数の生成
確率変数の変数変換
ランダムウォークの境界条件・偏微分方程式の数値計算 状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
例:ランダムウォークや偏微分方程式 マルコフ過程の数値計算を使って,解こう.
−∞< x <+∞とは言えないけど,⃗p(t)は100次元くらいで. L07-Q2
Quiz(ランダムウォークの時間発展)
次の転置推移確率行列を持つ,状態空間S={x}={0,1,2, . . . , m−1}上のマルコフ連鎖を 考えよう.
M=
0 1 0 · · · · 0 0 0 1 . .. ... ... . .. ... ... ... ...
... . .. ... 1 0
0 . .. 0 1
1 0 · · · · 0 0
.
1 d o u b l e p [m] , q [m ] ;
で表されるp, ⃗⃗qに対して,入力⃗pを受け取り⃗q=M ⃗pを計算する関数
1 i n t m u l t i p l y t r a n s (d o u b l e q [ ] , d o u b l e p [ ] ,i n t m) ;
を書こう.行列Mを2次元配列で表現せず,Mの規則性を利用して(=加算や代入の回数が O(m2)でなくO(m)となるように)書くこと.
次元mが小さいとき
1 i n t m u l t i p l y t r a n s (d o u b l e q [ ] , d o u b l e p [ ] , i n t m){
2 i n t x , y ;
3 d o u b l e M [ ] [ NS ] ={ {0 . 0 , 1 . 0 , 0 . 0 ,/∗略∗/, 0 ,};
4 f o r( x =0; x<m; x++){
5 q [ x ] = 0 ;
6 f o r( y =0; y<m; y++){
7 q [ x]+=M[ x ] [ y ]∗p [ y ] ;
8 }
9 }
10 r e t u r n 1 ;
11 }
Quiz解答:ランダムウォークの時間発展
ソースコード1:疎な転置推移確率行列
1 i n t m u l t i p l y t r a n s (d o u b l e q [ ] , d o u b l e p [ ] ,i n tm){
2 i n t x ;
3 f o r( x =0; x<m−1; x++){
4 q [ x ] = 1 . 0∗p [ x +1]/∗ +0.0∗p [ x +2]∗/;
5 }
6 q [ m−1]=1.0∗p [ 0 ] 7 r e t u r n 0 ;
8 }
⃗ q=M ⃗p. qx=
m∑−1 y=0
Mxypy
今の場合= 0 +· · ·+ 0 + 1×px+1+ 0 +· · ·+ 0 (x < m−1).
疎行列sparse matrixほとんどの成分が0な行列. 2次元配列でなく,上のような表現方法を
ランダムウォークの境界条件・偏微分方程式の数値計算 状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
L07-Q3
Quiz(
大きな転置推移確率行列をかける関数
)次の推移確率行列を持つ
,状態空間
{x}={0,1,2, . . . , m−1}上のマルコフ連鎖 を考えよう.
M =
7 10
2
10 0 · · · · 0
3 10 5
10 2
10 0 ...
0 103 105 . .. ... ...
... 0 . .. ... 2
10 0
... . .. 3
10 5 10
2 10
0 · · · · 0 103 108
.
1 d o u b l e p [m] , q [m ] ;
で表される
⃗p, ⃗qに対して, 入力
⃗pを受け取り
⃗q=M ⃗pを計算する関数
1 i n t m u l t i p l y t r a n s (d o u b l e q [ ] , d o u b l e p [ ] ,i n t m) ;
を書こう. 行列
Mを
2次元配列で表現せず,
Mの規則性を利用して書くこと.
ここまで来たよ
6
ランダムウォークの境界条件・偏微分方程式の数値計算 状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
7
連続型確率変数の擬似乱数
1
次関数で連続型一様擬似乱数の生成
確率変数の変数変換
連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
(
復習
)離散型と連続型の確率変数
離散型
:確率分布
,確率関数 連続型
:確率密度関数
f(r)得点
r確率
f(r) 0 0.06671 0.2
2 0.3333
3 0.3
4 0.1
f(r)
-3-2-1123x 0.2 0.4 0.6 0.8 1.0 p
確率密度関数
f(r)
が大きいほど
,その値
rが
でやすい
0≤f(r).
f(r)
は
1を超えることもある
.連続型確率変数の母期待値
(復習
)母期待値の定義
離散型確率変数
E[ϕ(X)] =∑x
f(x)·ϕ(x). f(x):
確率関数
,確率分布 連続型確率変数
E[ϕ(X)] =∫ +∞
−∞ f(x)·ϕ(x) dx. f(x):
確率密度関数
母比率
(の一種
) P(x0 ≤X≤x1) = E[1[x0≤X≤x1](X)] =∫ x1
x0
f(x) dx.
全事象の確率
1 = E[1] =∫ +∞
−∞ f(x) dx.
連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
一様分布
西川確率統計定義3.4(p.66) 確率統計☆演習I(2017)L08一様分布
U(a, b)確率変数
Xの確率密度関数が次で与えられるとき
,Xは区間
[a, b)の一 様分布
U(a, b)に従うという
.f(x) = {
C(
定数
) (a≤x < b)0 (
他
)L07-Q1
Quiz(一様分布)
連続型確率変数
Xが一様分布
U(a, b)にしたがう
.1 C
を求めよう
.2 E[X]
を求めよう
.3 √
V[X]
を求めよう
.Y =aX+b
の意味
Xが 一様分布
U(r, s)にしたがうとき
,Y =aX+b
は 一様分布
U(ar+b, as+b)にしたがう
.E[aX+b] =
√V[aX+b] =
2 4 6 8 10 12x
-0.5 0.5 1.0 1.5 2.0 f(x)
左から
X ∼U(3,5),Z = 14X+214 ,Y = 2X+ 1.連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
連続型確率変数に対応する擬似乱数
例 一様分布
U(a, b)Y ∼U(0,1)
の確率密度関数
f(y) ={
1 (0≤y <1) 0 (
それ以外
)に対応する擬似乱数
([0,1)一様乱数
)は
?以後しばらく
, Yと書いたら
Y ∼ U(0,1).0.5 1.0 1.5 2.0
y 0.5
1.0 1.5 2.0 p
答
:double getuniform()
そのもの
計算科学☆実習B(2017)L01[0,2)
一様乱数を作るには
?R∼U(a, b)
の確率密度関数
fR(r)が与えられたとき
,r=g(y)でそれに したがう乱数を作ろう
.f(r) = {
? (0≤r <2) 0 (
それ以外
)1 d o u b l e g e t r a n d o m (d o u b l e y ){
2 d o u b l e r ;
3 r =??? ;
4 r e t u r n r ;
5 }
6 r=g e t r a n d o m ( g e t u n i f o r m ( ) ) ;
12345r 1 2 3 4 5 p
y r
0.31 0.62 0.82 1.64 0.49 0.98 0.04 0.08 0.60 1.20 r=g(y) = ???
連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
考え方
1:グラフ拡大縮小
fY(y) ={1 (0≤y <1) 0 (
他
)考え方
2:母平均値や両端ををあわせる
離散型乱数の復習
今までは
,Yを
int getrandom(double y)で
,離散的な擬似乱数
Rに
‘
変換
’していた
.R
確率
1 1/2 2 1/6 3 1/3
1 i n t g e t r a n d o m (d o u b l e y ){
2 i n t r ;
3 i f( y<3 / 6 . 0 ){
4 r =1;
5 }e l s e i f( y<( 3 + 1 ) / 6 . 0 ){
6 r =2;
7 }e l s e{
8 r =3;
9 }
10 r e t u r n r ;
11 }
0.5 1.0 1.5 2.0 2.5 3.0 3.5y
1 2 r
y r 0.31 1 0.82 3 0.49 1 0.04 1 0.60 2
g(y) =
1 (0≤y <1/2) 2 (1/2≤y <2/3) 3 (2/3≤y <1)
連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
[3,4)
一様乱数を作るには
?f(r) = {
? (3≤r <4) 0 (
それ以外
)1 d o u b l e g e t r a n d o m (d o u b l e y ){
2 d o u b l e r ;
3 r =??? ;
4 r e t u r n r ;
5 }
6 r=g e t r a n d o m ( g e t u n i f o r m ( ) ) ;
12345r 1 2 3 4 5 p
y r
0.31 3.31 0.82 3.82 0.49 3.49 0.04 3.04 0.60 3.60 r=g(y) = ??? .
考え方
1:グラフ平行移動
fY(y) ={
1 (0≤y <1) 0 (
他
)考え方
2:母平均値や両端ををあわせる
[2,5)
一様乱数を作るには
?f(r) = {1
3 (2≤r <5) 0 (
それ以外
)12345r 1 2 3 4 5 p
r =g(y) =???
連続型確率変数の擬似乱数 1次関数で連続型一様擬似乱数の生成
[0,32)∪[72,5)
一様乱数を作るには
?f(r) =
1
3 (0≤r < 32)
1
3 (72 ≤r <5) 0 (
それ以外
) 12345r 1 2 3 4 5 p
r =g(y) =???
g(y)
の設計方法の解釈
1 2 3 4 5y
1 2 r
1 2 3 4 5y
1 2 r
1 2 3 4 5y
1 2 3 4 5 r
1 2 3 4 5y
1 2 3 4 5 r
1 2 3 4 5y
1 2 3 4 5 r
自分の言葉でどうぞ
連続型確率変数の擬似乱数 確率変数の変数変換
ここまで来たよ
6
ランダムウォークの境界条件・偏微分方程式の数値計算 状態数が大きく規則的なマルコフ連鎖の時間発展の数値計算
7
連続型確率変数の擬似乱数
1
次関数で連続型一様擬似乱数の生成
確率変数の変数変換
確率変数の変数変換
L07-Q2
Quiz(
確率変数の変換
)一様分布
U(0,1)に従う連続型確率変数
Yと,
R=g(Y) = 2√Y
で定まる連続型 確率変数
Rを考える.
1 E[R],V[R]
を求めよう.
2
母比率
(確率)F(r) =P(R < r)を求めよう.
3 R
の確率密度関数
fR(r)を求めよう.
連続型確率変数の擬似乱数 確率変数の変数変換
Q
の乱数生成は簡単
.1 d o u b l e g e t r a n d o m (d o u b l e y ){
2 d o u b l e r ;
3 r =2∗s q r t ( y ) ;
4 r e t u r n r ;
5 }
6 r=g e t r a n d o m ( g e t u n i f o r m ( ) ) ;
標本
y r=√ y
0.49 0.70
0.00 0.10
... ...
0.81 0.90
連続型確率変数の擬似乱数 確率変数の変数変換
1 y 1
2 s
1 y
1 2 s
0.5 1.0 1.5 2.0 s
0.5 1.0 1.5 2.0 p
連続型確率変数の擬似乱数 確率変数の変数変換
確率密度関数の変換のおぼえ方
r =g(q)を単調増加な関数とするとき
,f(r) dr
は変数変換しても不変
: fR(r) dr=fQ(q) dq fR(r) = 1dr
dq(q)fQ(q)
L07-Q3
Quiz(確率変数の変換)
一様分布
U(0,1)に従う連続型確率変数
Yと
,R=g(Y) = eYで定まる 連続型確率変数
Rを考える
.1 E[R],V[R2]
を求めよう
.2
母比率
(確率
) F(r) =P(R < r)を求めよう
.3 R
の確率密度関数
fR(r)を求めよう
.連続型確率変数の擬似乱数 確率変数の変数変換
プチテスト
(筆記
)やります
!2018-06-05火5, 10分(外部記憶ペーパー作成)+80分(筆記), 20ピーナッツ.配 点も範囲も昨年度と異なります.介護等体験などで欠席する人は事後に届を出せ ば不利にならないように扱います.
お奨めの準備方法過去問題は公開してますがあてになりません. QuizやMoodle の予習復習問題を再実行することをお奨めします.
出題計画プログラミングや乱数の問題はありますが, Visual StudioやExcelやR の問題はありません. 2018-05-29火 に最終的に確定します.
(0)日本語の説明(1)ランダムウォークの座標の初期条件と漸化式, (2)確率 p(x, t)の初期条件と漸化式, (3)マルコフ連鎖の推移図と初期分布, (4)マル コフ連鎖の転置推移確率行列と初期条件のどれかが与えられたときどれかを 求める×n問(予L04)
確率p(x, t)を求める
▶和事象,積事象で計算する(L03)
▶漸化式を使って表を作る(L03)
▶Mを対角化して⃗p(t)を求める(L05)
マルコフ連鎖の分布,母比率,母期待値,定常分布,極限分布を求められる (L04,L05,予E04,予L05)
ランダムウォークの境界条件を,Xの漸化式や,転置推移確率行列Mに反映 させられる(L06)
拡散方程式で,ある関数が解になっているかを判定できる(L06,予E06) Cの擬似乱数を正しく使う. srandとrandを使ったプログラムの出力の確率 を求められる(L01,L02,予L03)
母比率や母期待値を推定する確率シミュレーションのプログラムが書ける (sim11,sim13,予E02,予L03,予L06)
U(a, b)にしたがう擬似乱数を生成できる(L07)
R=g(Y),Y∼U(a, b)で定義される確率変数Rの母期待値や確率密度関 数を求められる(L07)
お知らせ
提出場所
https://learn.math.
ryukoku.ac.jp/moodle
モバイルアプリ
https://download.moodle.org/mobile
通信量を抑えられるス キャナアプリ
.おす すめ
: CamScanner on iOS/Androidhttps://www.camscanner.
com/
チューター
/Mathラウンジ 月火水木昼
1-614 2018-06-05火 プチテスト
(筆記
)2018-06-20
水 数理情報セミナー履修説明会
Visual Studio