2 随机数与随机变量的产生

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
交通运输学院
所以,统计量
当 n 充分大时渐近服从

2


k
( f oi f ei ) f ei
2
i 1
k 1 自由度的
2
分布。
2
用 n 个观察值计算统计量 当
2 2
的值,并查出临界值
, k 1,
2
, k 1时,拒绝均匀分布的假
I 1 20 25 2 20 25 3 20 20 4 20 17 5 20 15
ห้องสมุดไป่ตู้
e-λx = R
则有 X = 1/λ lnR REXP.CPP float REXP(float LAMDA) {float X; X = float(rand()) / float(RAND_MAX); X = -log(X) / LAMDA; return (X); }
交通运输学院
例3、产生参数为m的威布尔分布随机数。
2.3 随机数的检验
2.3.1 参数检验
确认随机数的均值、方差等各项数字特征的估计量和理 论值的差异是否显著。
随机数r1, r2, r3, … … rn,其 均值 方差
r 1 n s
2

1
n
ri
i 1

n 1

n
( ri r )
2
i 1
假设
E (r ) E (s )
2
1 2 1 12
加同余法 乘余数法 混合同余法
( 0, 1 ): x i 1 ( x i )(mod ( 0, 1 ): x i 1 x i (mod m)
m)
( 1且 0 ): x i 1 ( x i )(mod
0
m)
1 e ,x 0 分布函数: F ( x ) 0 ,x 0 m 令 1 e x = R* R* 是0,1区间均匀分布随机变量
x
m
e
x
m
= 1R* =R
e
x
m
1- R*也 是0,1区间均匀分布随机变量 =R

1-R*
则有
X = (ln R)1/m
WEIB.CPP float WEIB(float B) {float W; W = float(rand()) / float(RAND_MAX); W = pow((-log(W)),(1.0/B)); return (W); }
r 1 ri r=F(x) x=G(r)
0
xi
X
交通运输学院
逆转换法步骤:
1.确定随机变量X的概率分布函数F(x);
2.在0<F(x)< 1时,求F(X)=R的反函数X=G(R); 3.产生一系列(0,1)区间均匀分布随机数r1,r2,… ,ri,…,rn; 4.按xi =G(ri )计算出对应的一系列x1, x2, …, xi, … , xn,即为随机变量X的样本观察值,F(x)为X的概 率分布函数。
2
7587

周期比平方取中法长 随机数的均匀性比平方取中法好
随机数仍然具有退化趋势
交通运输学院
2.2.3 同余数法
三 个 参 数 : , , m x i 1 x i ) ( m o d m) ( R i 1 xi 1 / m 初 值 x0 称 为 随 机 数 种 子
交通运输学院
2.4.2
函数变换法
1
(x ) 2
2 2
产生正态分布随机数: 密度函数是 f ( x ) 分布函数是

x
2
e
,- x
(x ) 2
2 2
F (x)


1 2

e
dx
先产生两个独立的标准正态分布Z1和Z2 ,即 X1= μ + σZ1
X2= μ + σZ2
X 1 171
2 3
71 49 31
71 49
1349 931

素数取模乘同余法(PMMLCG)
x i 1 5 x i mod 2 (
5
35
31) 1)
x i 1 7 x i mod 2 (
5
31
交通运输学院
RAN.CPP
符号位 高15位 低16位 long IX; float RAN() { long A,P,B15,B16,XHI,XALO,LEFTLO,FHI,K; A=16807; // 75 B15=32768; //215 B16=65536; //216 P=2147483647; //231-1 XHI = IX / B16; //取IX的高15位 XALO = (IX - XHI * B16) * A; //取IX的低16位,形成低位结果 LEFTLO = XALO / B16; //取低位结果的高15位 FHI = XHI * A + LEFTLO; //取形成结果的高15位 K = FHI / B15; //取整个结果的溢出部分 IX = (((XALO-LEFTLO*B16)-P)+(FHI-K*B15)*B16)+K; if (IX < 0) //预先减P,汇集全部结果 IX += P; //如果必要加回P return (float(IX) * 4.656612875E-10); //除以2147483647转换为 } //0,1区间均匀分布 交通运输学院
伪随机数
交通运输学院
2.2 均匀分布随机数的产生
设R是[0,1]区间上均匀分布的随机变量 密度函数是 1 ,0≤r ≤ 1
f(r)= 0 0 F(r)= r 1 1

分布函数是

均值
E (R) D (R)
,其它 ,r<0 ,0 ≤ r ≤ 1 ,r>1
2
方差
1 12
交通运输学院
2.2.1 平方取中法
例 3、取 19 , m 100 , X X
0
11 为初值产生随机数 R 1 0 . 09 R 2 0 . 71 R 3 0 . 49 R 4 0 . 31
交通运输学院
11
X X X
0
209
X 1 09 X X X
2 3 4
X 1 09 X X
2 3
D (r )
1
12 n 1 2 D (s ) 180 n
交通运输学院
统计量
u1
r E (r ) D (r )
r
1 2 12 n ( r 1 2 )
1 12 n
u2
s 2 E (s 2 ) D (s )
2
s
2

1 180 n ( s
2
12 1 180 n

1 12
)
服从N(0,1)分布 取α=0.05
当 | u 1 | 1 . 96 , 拒绝 E ( r )
2
1 2
及 D (r ) 1 12
2
1 12 n
的假设,否则接受这一 1 180 n 的假设,否则接受这一
假设。 假设。
当 | u 2 | 1 . 96 , 拒绝 E ( s )
2
, R 3 0 . 6743 , R 4 0 . 4680
x 3 6743 , x 3 45468049
2
x 4 4680
周期较短,还会发生退化现象
交通运输学院
2.2.2 倍积取中法
N 位整数 初值 初值 K 2 N 位整数 K
0
取中间 N 位
将第一个随机数
例 2 、取 N 4, X X X
0 n
1234 , K 5678 为初值产生随机数 K X
n
X
n 1
R n 1 0 . 0665 0 . 7587 0 . 0789
1234
7006652 3775870 43078986
0665 7587 0789
X 1 0665 X
设,否则接受这一假设
6 20 24 7 20 17 8 20 24 9 20 17

10 20 15
fei foi
(foi-fei)2/fei 1.25 1.25
0
0.45 1.25 0.8 0.45 0.8 0.45 1.25

2
7 . 95 , 取 0 . 05 ,自由度为
2
2 9 时, 0 . 05 , 9 16 . 92 ,
交通运输学院
例1、产生(A,B)区间均匀分布随机数。
分布函数:
0 x A F (x) B A 1 ,x A ,A x B ,x B
F(x)

R = (XA) /( BA)
1
则有 X = (BA)R + A
RANAB.CPP float RANAB(float A,float B) {float X; X = float(rand())/float(RAND_MAX); X = (B - A) * X + A; return (X); }
Z1和Z2的联合密度函数 2 z 1 1 f ( z1 , z 2 ) e 2 2 令 Z1 = r sin θ
根据当
2 0 . 05 , 9时,接受均匀性假设。
交通运输学院
2.3.3 独立性检验
用来确认随机数序列中各数据间不存在相 关性。 可用各阶自相关系数是否为0来检验。 j阶自相关系数的估计量为:
1 n
n j
ˆ
j
[
j
ri ri
j
(r ) ] / s
2
2
i 1
交通运输学院
及 D (s )
交通运输学院
用上节的程序产生200个[0,1]均匀分布随机数
计算出
r 0 . 4681 s 0 . 0835
2
u1 u2
12 200 ( 0 . 4681
1 2
) 1 . 5628 1 12 ) 0 . 0316
180 200 ( 0 . 0835
西南交通大学 西南交通大学
第2章
随机数与随机变量的产生
交通运输学院
2.1 随机数概述 2.1.1 均匀分布随机数的一般要求
1.统计特性好 2.周期长 3.产生随机数的速度快 4.生成的随机数序列必须能够复制 5.占用的内存要尽可能小
交通运输学院
2.1.2 产生均匀分布随机数的方法
1.随机数表法 2.物理方法 3.数学方法 rn= f( rn-1 , rn-2 ,… ,rn-k )
接受ρ1=0, ρ2=0的假设。
交通运输学院
2.4 连续随机变量的产生
不同方法比较的准则: 1.准确性,即精度 2.计算机时间 3.内存需要量 4.算法复杂性
交通运输学院
2.4.1 逆转换法
定理:如果随机变量X的分布函数F(x)为连续函数,则
R=F(x)确定一个新的随机变量,它服从(0,1)均匀分布。 随机变量X,分布函数F(x)是(0,1)区间单调非递减的连 续函数。R是(0,1)区间的均匀分布的随机变量,那么 X=G(R)是连续随机变量,其概率分布为F(x)。
假设自相关系数ρj=0, 则统计量
u
j
ˆ
j
n j
在n充分大时渐近服从N(0,1)分布。 计算j=1,2,…时的uj。取α=0.05, 当|uj|>1.96时,拒绝j阶自相关系数ρj=0的假设,否则, 接受这一假设。 以上一节的程序产生的200个随机数,计算出各阶自相 关系数:
ρˆ1 0 .030 ρˆ 2 0 .0405 u 1 0 .4274 u 2 0 .5699 |u 1| 1 .96 |u 2| 1 .96
A B
x
交通运输学院
例2、产生参数为λ的负指数分布随机数。
分布函数:
1 e x F (x) 0 ,x 0 ,x 0
令 1e-λ x = R*,R* 是0,1区间均匀分布随机变量 e-λ x = 1R* , 1 R*也是0,1区间均匀分布随机变量

1R* =R
N 位整数 初值 初值
2
2 N 位整数
取中间 N 位
将第一个随机数再平方

例 1 .以 2152 为初值产生随机数 x 0 2152 , x 0 04631104
2 2
, R 1 0 . 6311
x 1 6311 , x 1 39828721 , R 2 0 . 8287 x 2 8287 , x 2 68674369
由于 | u 1 | 1 . 96 且 | u 2 | 1 . 96 ,所以当显著性水平 接受总体均值为 1 / 2,方差为 1 / 12 的假设。
0 . 05 时,
交通运输学院
2.3.2 均匀性检验
用来确认观察值落在各区间的频率与理论频率 的差异是否显著。 将[0,1]区间分成k个不相交的等长小区间,n 个观察值落在第i区间的频数为foi, 假设观察值来自均匀分布的总体, 那么,落在每一小区间的理论频率应相等,且 各为1/k, 理论频数fei也各相等,均为n/k的统计量。
相关文档
最新文档