一维正态分布随机数序列产生的几种方法介绍
【摘要】正态分布在数理统计中具有基础性的作用,因此产生高质量的正态分布有重要的意义。我们将介绍几种数值方法求正态分布:中心极限定理,Hasiting 有理逼近法,统计工具箱,反函数法,舍选法,R软件及一维正态随机数的检验。
【关键词】正态分布;一维;随机数。
一.利用中心极限定理
中心极限定理:(一般 n≥10),
产生服从N(μ,σ)的算法步骤:
(1)产生n 个RND 随机数:r1,r2,…,rn;
计算x ( ri (2) 2)/
i 1n122;
2(3) 计算 y=σx+μ ,y 是服从 N(μ,σ) 分布的随机数。
原理分析:
设ζ1,ζ2,…,ζn是n个相互独立的随机变量,且ζi~U(0,1), i= 1,2, …,n, 有E( i) 1
,D( i) 1,12
n ( i n由中心极限定理知 :)/,渐近服从正态分布N(0, l )。
i 1n
注意:我们现在已经能产生[0,1]均匀分布的随机数了,那么我们可以利用这个定理来产生标准正态分布的随机数。
r 1,r2, ,rn现在我们产生n个[0,1]均匀分布随机数,
我们有: 1n1 u n r n i2 i 1
为方便起见,我们特别选 n = 12,则 : u ri 6
i 112
这样我们很方便地就把标准正态分布随机数计算出来了。
在C语言中表示为:
例1:利用中心极限定理产生标准正态分布随机数并检验
% example 1
clc,clear
for i=1:1000
R=rand(1,12);
X(i)=sum(R)-6;
end
X=X';
m=mean(X)
v=var(X)
subplot(1,2,1),cdfplot(X)
subplot(1,2,2),histfit(X)
h=kstest(X, [X normcdf(X, 0,1)])
结果为:H=0, 接受原假设,变换后的确为标准正态分布。
二.Hasiting 有理逼近法
这是一种计算速度快,也能满足一定精度的算法。我们可以构造分布函数反函数的近似逼近公式,来产生标准正态分布的随机数。其计算公式为:
2a ay ay012 x y 1 b1y b2y2 b3y3
y ( 2lnr)1/2,r~U(0,1),系数为: 这里
a0 = 2.515517 b1 = 1.432788
a1 = 0.802853 b2 = 0.189269
a2 = 0.010328 b3 = 0.001308
三.利用统计工具箱
在MATLAB统计工具箱中为我们提供了大量的产生各种随机数发生器程序,我们只需要调用就可以产生我们想要的随机数。
四.反函数法
设连续型随机变量Y的概率函数为 f(x), 需产生给定分布的随机数.
算法:
(1)产生n个RND 随机数r1,r2,…,rn;
从等式ri f(y)dy中解出yi;所得(2) yiyi, i=1,2, …,n 即所求.
基本原理:
设随机变量Y的分布函数F(y)是连续函数,而且随机变量X~U(0,1),令Z=F(X)。 则Z与Y有相同分布。
证明 :FZ(z)= P{F(X) ≤ z}= P{X≤F(z)}=G(F(z)) = F(z)
因G(x)是随机变量X 的分布函数:
0, G(x) x,
1, -1-1 x 0;0 x 1;1 x.
-1Y若Y的概率密度为 f(y),由Y=F(X)可得: X F(Y) f(y)dy
对给出定的(0, 1)上均匀分布随机数ri,则具有给定分布的随机数 yi 可由方程
if(y)dy解出。 ri y
五.舍选法
基本思想:
实质上是从许多RND随机数中选出一部分, 使之成为具有给定分布的随机数。 设随机变量X的概率密度函数为f(x),存在实数a<b,使P{a<X<b}=1。 算法步骤:
(1) 选取常数λ,使λf(x)<1,x∈(a, b);
(2) 产生两个RND 随机数r1 、r2,令y= a+(b-a)r1 ;
(3) 若r2≤λf(y),则令x=y;否则剔除 r1和r2, 重返步骤(2),重复循环, 产生的随机数x1,x2,…,xN的分布由概率函数 f(x) 确定。
舍选法算法原理分析:
设P{a<Z<b}=1,Z的概率密度为f(z),
(1)选常数λ,使λf(z)≤1,z∈(a,b);
(2)随机变量X1,X2相互独立Xi~U(0, 1),令Y1=a+(b-a)X1~U(a, b);
(3)若X2≤λf(Y1),则令X = Y1,否则剔除X1,X2重复到(2); 则随机变量X的分布与Z相同。
b注: 若不满足条件: f(x)dx 1,a
可选取有限区间(a1, b1),使得 a1f(x)dx 1 (ε是很小的正数) 例如,取 a1=μ-3σ,b1=μ+3σ(x )2 e2dx 1 0.003,有a12 b1 b1
在区间(a1, b1)上应用舍选法,不会出现较大的系统误差。
六.R软件
利用R软件,可方便地求各种常见概率分布的分布函数,分位点及生成各种常见分布的随机数等。在各种分布名称中加上不同的前缀表示不同的意义如:p-求分布函数,q-求分位点,r产生随机数等。
七、一维正态随机数的检验
我们已经基本搞清伪随机数的产生原理,由于并不是真正的随机数,很自然的问题是,它们是否具有真正随机数的那些统计性质如参数大小、独立性,均匀性等等。
设:随机数具有连续的分布函数F(X),则随机变量R=(X)是均匀分布(0,1)的随机变量,因此如果R通过统计检验随机变量 X 也可以通过。因此我们以下着重讨论均匀分布R的检验问题,再简单地讨论正态随机数检验问题。 统计推断原理:
X1,X2, ,Xn为 随机变量序列,则随机序列的函数称为统计量。统计量的定义:设
记为:
S S(X1,X2, ,Xn)显然统计量 S 也是随机变量。既然是随机变量,它们就应该有其分布或称总体的规律,当然也有各种数字特征。例如均值、标准差、方差等等各阶矩。
我们的统计推断方式是:
(1)H0:某假定成立;
(2)在假定成立的条件下构造统计量S;
(3)统计量构造完毕,我们也就知道了该统计量的全部统计规律。如它的分布函数,或密度函数各阶矩等;
(4)根据统计量的分布,在给定的显著性水平α,对统计量S 的一次抽样确定以 1-α为概率的区域,该区域称为接受域 。如果该次抽样计算出统计量 S 的值 s 落入该领域,我们就接受原假,否则推翻原假设。这个就是小概率事件在一次实验实际不可能发生原理。落入由α 确定的区域是一个小概率事件,在一次实验中我们认为是不可能发生的。
统计检验中两类常用统计量的构造检验方法:
,和有限方差D(X)= 2,我们抽 N 1.设随机变量 X 具有数学期望E(X)=
XN
i
次样本X1,X2……,XN,当N充分大时,统计量
以 N(0,1)为极限分布,取显著水平 α = 0.05, 则拒绝为(—∞,—1.96),(1.96,∞)。
U>1.96,则认为差异显著,拒绝假设 E(X)=μ 当2.将样本X1,X2,……,NN,按一定规则分为不相交的 K组,记 i 组的观测频数为 ni(i=1,……,k),若随机变量 X 落于弟 i 组的概率为 Pi,则得理论频数m i= N × Pi,由ni,mi构造统计量。
= 2(mi ni)2 mii 1k
k l 1的分布,简记 2(k l 1)。这里,l 是确定概率 P 时,渐近服从自由度为
由子样 X 中给出的约束条件数。为有效地进行统计检验,一般要求(4.6.2)的样本数 N>30;在(4.6.2)中k≥5,mi≥5。
d 30时,2 2 2d 1,渐近服从N(0,1)分布。 当统计量的自由度
服从柯尔莫格洛夫—斯米尔诺夫的统计量 jN ND 1max n i N1 j kNi 1
NDN 1.35,可拒绝原假设。 取显著性水平α k
我们可以用这种方法进行独立性,及拟合优度检验。
八、其他一维正态分布随机数序列的产生方法:
1、 直接抽样法:
由基本定理我们知道,对于有些随机变量可以建立与R的函数关系,因此只需对R进行抽样,利用函数的映射关系我们就可以方便地得到该随机变量的抽样了。如前面的指数分布随机数。
2、变换抽样:
产生随机变量的变换抽样方法,是讨论均匀分布的不同函数分布,为随机变量抽
样提供一些简单可行的算法。在概率论中,从不同的角度出发,对随机变量函数进行了讨论,以下列出一些结果。
g(x)f(x),Y g(X)是对随机变量 X 的变换,且 设随机变量 X 具有密度函数
的逆函数存在,记为 g 1(x) h(y)
有一阶连续导数,则随机变量的密度函数 Y g(X)
f*(y) f h(y) h'(y)
3.值序抽样
值序统计量 (n)
l,通常称为值序量。是随机向量 (X1,X2, Xn)的一个函数,取其一
个实现 (x1,x2, xn)
并排序得 (x(1),x(2), x(l 1),x(l),x(l 1), x(n))
其中的第 l 个值为函数值。显然这是一个统计量。
若随机变量 (X1,X2, Xn)
的各个分量独立且同分布,则值序统计量 (n)
l的密度函数
和分布函数分别为:
fnl(x) n!
(l 1)!(n l)! F(x) l 1 1 F(x) n lf(x)
Fn!F(x)tl 1
nl(x) n l)!0(1 t)n l(l 1)!( dt
这里,F(x), f(x) 分别为随机变量在分布函数和密度函数。
特别当随机变量 Xii 1,2, ,n为[0,1]上的均匀分布时,
得密度函数为:
n!xl 1(1 x)n l
(l0 x 1
f 1)!(n l)!
nl(x) 0else
这是 分布的密度函数
因此我们可以很容易地产生特殊的 分布的随机数。
【个人体会】
一维正态分布随机数序列的产生方法有很多种,其中直接抽样、变换抽样、值序抽样等抽样方法较简单但比较常用,利用中心极限定理是最常用的一种求正态分布随机数的一种方法。本文还提供了两种随机数的检验方法,用于检验产生的随机数实际值与理论值的差异。反函数法和舍远法是连续随机变量通用的方法,应用与正态分布的时候可适当做调整。
个人体会较深的是,在文献查阅上网搜索过程中,面对繁杂的资料,首先应该明确自己要找什么资料,并大约查找相关资料在头脑中形成要写报告的大体框架,然后逐渐精细到点,然后有针对性地查找资料。
【参考文献】
【1】杨振海,张国志;随机数生成[J]。数理统计与管理,2006,25(2);244-252.
【2】程维虎,杨振海;舍选法几何解释及曲边梯形概率密度随机数生产算法[J]。数理统计与管理,2006,25(4)。
【3】魏宗舒;概率论与数理统计[M]。北京:高等教育出版社,1995。
【4】马砚儒. 经验数学期望及性质[J]。内蒙古民族大学学报,2002 ,17 (2) :97 – 100。
【5】高惠璇,统计计算[M]。北京:北京大学出版社,1995。
【6】杨振海,程维虎.统计模拟[J]。数理统计与管理,2006,25(1):117-126。