樋口さぶろお
龍谷大学理工学部数理情報学科
計算科学☆実習
B L08(2017-06-12 Mon)
最終更新: Time-stamp: ”2017-06-12 Mon 18:06 JST hig”
今日の目標
(
区分的)
一様分布にしたがう連続型確率変数に 対応する擬似乱数が生成できる変換
y = g(x)
のもとでの確率密度関数の変化 を計算できるhttp://hig3.net
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 1 / 24
ランダムウォークの境界条件・偏微分方程式の数値計算
アニメ
http://www.a.math.ryukoku.ac.jp/~hig/course/compsci2_
2013/img/pde-diff.gif
壁に対応する行列の話では
, x = 0, 1, 2, 3, 4, 5
のマス目の図から行列を作 る説明したけど,
マス目じゃなくて推移図(
状態の◦がx = 0, 1, 2, 3, 4, 5
で,
その間をつなぐ矢印がある)
があって,
それを転置推移行列に直すっ ていう,
先週の問題の形で言ったほうがよかったかな.
反射壁
x = 0, 5
は説明の一貫性から残してるけど無駄.
実質的には状態 空間S =
{1, 2, 3, 4
}.
1 0 0 0 0 0 0h h 0 0 0 0h 0h0 0 0 0h 0h0 0 0 0h h0 0 0 0 0 0 1
世の中で正しい答としては
,
反射壁を表現するM
は他にも作れるけど,
授業で説明したのはこれ.
L07-Q1
Quiz解答:離散的なランダムウォークの確率の転置推移確率行列
1
1
170 0 0 0
47 170 0 0
27 47 170 0 0
27 470 0 0 0
271
2 略
L07-Q2 L07-Q3
Quiz解答:偏微分方程式の条件チェック
u(x, t) = e
−18tsin(3x).
L08-Q4 L08-Q5
Quiz解答:大きな転置推移確率行列をかける関数
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 3 / 24
ランダムウォークの境界条件・偏微分方程式の数値計算
ソースコード
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 t m){
2 i n t x ;
3 q [ 0 ] = 7 . 0 / 1 0∗p [ 0 ] + 2 . 0 / 1 0∗p [ 0 + 1 ] ;
4 f o r( x =1; x<m−1; x++){
5 q [ x ] = 3 . 0 / 1 0∗p [ x−1]+5.0/10∗p [ x ] + 2 . 0 / 1 0∗p [ x ] ;
6 }
7 q [ m−1]=3.0/10∗p [ m−2]+8.0/10∗p [ m−1 ] ;
8 r e t u r n 0 ;
9 }
q
の成分ごとに代入していくわけだから, M
の行に規則性があるかどう か考えるx = 1,
· · ·, m
−2
は規則的なので, for loop
で自然に書ける. x = 0, m
−1
は規則から外れているので,
その行の成分を見て,
そのまま 書けばいい.
for(x=0;x<m,x++)
みたいに書いていると,
範囲の端で,
代入文の右辺にp[-1]
やp[m]
がでてきておかしいことに気づく.
ここまで来たよ
7 ランダムウォークの境界条件・偏微分方程式の数値計算
8 連続型擬似乱数の生成と変換 一様乱数の生成
確率変数の変数変換
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 5 / 24
連続型擬似乱数の生成と変換 一様乱数の生成
(
復習)
離散型と連続型の確率変数離散型
:
確率分布,
確率関数塚田確率統計§3.2 連続型:
確率密度関数塚田確率統計§3.3f (r)
得点
r
確率f (r) 0 0.0667
1 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
を超えることもある.
連続型確率変数の母期待値
(
復習)
母期待値の定義塚田確率統計§3.2,§3.3離散型確率変数
E[ϕ(X)] =
∑x
f (x)
·ϕ(x). f (x):
確率関数,
確率分布連続型確率変数
E[ϕ(X)] =
∫ +∞
−∞
f (x)
·ϕ(x) dx. f (x):
確率密度関数母比率
(
の一種) P(x
0 ≤X
≤x
1) = E[1
[x0≤X≤x1](X)] =
∫ x1
x0
f (x) dx.
全事象の確率
1 = E[1] =
∫ +∞
−∞
f (x) dx.
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 7 / 24
連続型擬似乱数の生成と変換 一様乱数の生成
連続型確率変数に対応する擬似乱数 例 一様分布
U(a, b)
塚田確率統計§4.6Y
∼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)
の確率密度関数f
R(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:
グラフ拡大縮小f
Y(y) =
{
1 (0
≤y < 1) 0 (
他)
考え方
2:
母平均値や両端ををあわせる塚田確率統計p.63樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 9 / 24
連続型擬似乱数の生成と変換 一様乱数の生成
離散型乱数の復習
今までは
, Y
をint getrandom(double y)
で,
離散的な擬似乱数R
に‘
変換’
していた.
R
確率0 1/2 1 1/6 2 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 =0;
5 }e l s e i f( y<( 3 + 1 ) / 6 . 0 ){
6 r =1;
7 }e l s e{
8 r =2;
9 }
10 r e t u r n r ;
11 }
0.5 1.0 1.5 2.0y
1 2
r
y r
0.31 0 0.82 2 0.49 0 0.04 0 0.60 1
g(y) =
0 (0
≤y < 1/2)
1 (1/2
≤y < 2/3)
2 (2/3
≤y < 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:
グラフ平行移動f
Y(y) =
{1 (0
≤y < 1) 0 (
他)
考え方
2:
母平均値や両端ををあわせる樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 11 / 24
連続型擬似乱数の生成と変換 一様乱数の生成
[2, 5)
一様乱数を作るには?
f (r) =
{13
(2
≤r < 5) 0 (
それ以外)
12345r 1 2 3 4 5 p
r = g(y) =???
[1, 2) ∪ [3, 5)
一様乱数を作るには?
f (r) =
1
3
(1
≤r < 2)
1
3
(3
≤r < 5)
0 (
それ以外)
12345r 1 2 3 4 5 p
r = g(y) =???
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 13 / 24
連続型擬似乱数の生成と変換 一様乱数の生成
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
自分の言葉でどうぞ
ここまで来たよ
7 ランダムウォークの境界条件・偏微分方程式の数値計算
8 連続型擬似乱数の生成と変換 一様乱数の生成
確率変数の変数変換
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 15 / 24
連続型擬似乱数の生成と変換 確率変数の変数変換
確率変数の変数変換
逆の問. g(q), fQ(q)が与えられたとき,r=g(q)のfR(r)を求めよう.
L08-Q1
Quiz(確率変数の変換)
あるクッキーマシンの作る正方形のクッキーの面積(生地の量)Qは,次の確率密 度関数にしたがう(単位省略).
fQ(q) = {1
36 (64≤q <100)
0 (他)
クッキーの一辺の長さはR=g(Q) =√
Qで与えられる(単位省略).
1 Qの母平均値と母分散を求めよう.
2 確率P(Q >82)を求めよう.
3 fR(r)を求めよう.
4 Rの母平均値と母分散を求めよう(2つの方法で).
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 , q ;
3 r=a∗y+b ; /∗ [ 6 4 , 1 0 0 ) 一 様 乱 数 ∗/
4 q=s q r t ( r ) ;
5 r e t u r n q ;
6 }
7 q=g e t r a n d o m ( g e t u n i f o r m ( ) ) ; 標本
q r =
√q
81 9.00
96 9.80
.. . .. .
64 8.00
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 17 / 24
連続型擬似乱数の生成と変換 確率変数の変数変換
R
の確率密度関数f
R(r)
は? I
原理
P (g(a)
≤R < g(b)) =P(a
≤Q < b)
∫ g(b)
g(a)
f
R(r) dr =
∫ b
a
f
Q(q) dq
連続型擬似乱数の生成と変換 確率変数の変数変換
確率密度関数の変換の原理
+
おぼえ方r = g(q)
を単調増加な関数とするとき, f (r) dr
は変数変換しても不変:
f R (r) dr = f Q (q) dq
f
R(r) = 1
dr
dq
(q) f
Q(q)
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 19 / 24
連続型擬似乱数の生成と変換 確率変数の変数変換
L08-Q2
Quiz(確率変数の変換)
[0, 1)
一様分布に従う連続型確率変数Q
と, R = g(Q) = aQ + b
で定ま る連続型確率変数R
を考える.
ただし, a > 0, b
は定数である.
1 確率
P (R <
12a + b)
を求めよう.
2
R
の確率密度関数f
R(r)
を求めよう.
答
:R = g(Q) = √ Q I
確率密度関数
f
Q(q) =
{136
(64
≤q < 100) 0 (
他)
R = g(Q) =
√Q
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 21 / 24
連続型擬似乱数の生成と変換 確率変数の変数変換
1 2 3 4 5 y
1 2 3 4 5 r
y 1
2 s
y 1
2 s
g
の傾き大⇕
f
R(r)
小.
L08-Q3
Quiz(確率変数の変換)
[0, 1)
一様分布に従う連続型確率変数Y
と, R = g(Y ) = e
Y で定まる連 続型確率変数R
を考える.
1
E[R
2]
を求めよう.
2
R < 2
となる確率を求めよう.
3
R
の確率密度関数f
R(r)
を求めよう.
樋口さぶろお (数理情報学科) L08連続型擬似乱数の生成と変換 計算科学☆実習B(2017) 23 / 24
連続型擬似乱数の生成と変換 確率変数の変数変換
初夏のプチテスト
(
プログラミング)
やります!
2017-06-21
水3
初夏のプチテスト(
プログラミング)
15
ピーナッツ. (
旧カリキュラムの人は演習の30
ピーナッツ/100)
実施方法 春のプチテストと同じ非参照非相談プログラミングのテス トだけど90
分フルに使います チームでなく個人戦です 別紙参照 出題計画 別紙参照介護等体験などのやむを得ない欠席の方
:
事後に樋口指定の紙と証明書 で届を出してくれれば,
科目の成績計算の分子分母から除きます.
お知らせチューター
/Math
ラウンジ 月火水木昼1-614, 1-612.
樋口オフィスアワー 月