资源描述:
《一维正态分布随机数序列产生的方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一维正态分布随机数序列产生的方法【摘要】正态分布在数理统计中具有基础性的作用,因此产生高质量的正态分布有重要的意义。现在我们总结了一些方法来介绍一维正态分布随机数序列的生法:中心极限定理,Hasiting有理逼近法,统计工具箱,反函数法,舍选法,R软件及一维正态随机数的检验。【关键词】正态分布;一维;随机数。正态分布的定义:若连续随机变量§的概率密度为然而,得到服从正态分布的随机数的基本思想是先得到服从均匀分布的随机数,再将服从均匀分布的随机数转变为服从正态分布。一维正态分布随机数序列产生的方法一、用matla
2、b统计工具箱产生R=normrnd(MU,SIGMA)(生成均值为MU,标准差为SIGMA的正态随机数)R=normrnd(MU,SIGMA,m)(生成1×m个正态随机数)R=normrnd(MU,SIGMA,m,n)(生成m行n列的m×n个正态随机数)例如(1)R=normrnd(0,1,[15])生成5个正态(0,1)随机数(2)R=normrnd([123;456],0.1,2,3)生成期望依次为[1,2,3;4,5,6],方差为0.1的2×3个正态随机数。二.利用分布函数的反函数1、设连续型随机变量Y的
3、概率函数为f(x),需产生给定分布的随机数.算法:(1)产生n个RND随机数r1,r2,…,rn;(2)所得yi,i=1,2,…,n即所求.2、基本原理:设随机变量Y的分布函数F(y)是连续函数,而且随机变量X~U(0,1),令Z=F-1(X)。则Z与Y有相同分布。证明:FZ(z)=P{F-1(X)≤z}=P{X≤F(z)}=G(F(z))=F(z)因G(x)是随机变量X的分布函数:若Y的概率密度为f(y),由Y=F-1(X)可得:对给出定的(0,1)上均匀分布随机数ri,则具有给定分布的随机数yi可由方程解出
4、。若要得到分布函数为F(x)的随机变量Y。可令,其中u是服从均匀分布的随机变量,有因而,对于任意的分布函数,只要求出它的反函数,就可以由服从均匀分布的随机变量实例来生成服从该分布函数的随机变量实例。现在来看正态分布的分布函数,对于,其分布函数为:显然,要想求其反函数是相当困难的,同时要想编程实现也很复杂。可见,用此种方法来生成服从正态分布的随机变量实例并不可取。三.利用中心极限定理1、2、产生服从N(μ,σ2)的算法步骤:(1)产生n个RND随机数:r1,r2,…,rn;(2)(3)计算y=σx+μ,y是服从N
5、(μ,σ2)分布的随机数。3、原理分析:设ζ1,ζ2,…,ζn是n个相互独立的随机变量,且ζi~U(0,1),i=1,2,…,n,==由中心极限定理知:,渐近服从正态分布N(0,l)。注意:我们现在已经能产生[0,1]均匀分布的随机数了,那么我们可以利用这个定理来产生标准正态分布的随机数。现在我们产生n个[0,1]均匀分布随机数,我们有:为方便起见,我们特别选n=12,则:这样我们很方便地就把标准正态分布随机数计算出来了。4、中心极限定理说明,无穷多个具有相同分布的随机变量之和是服从标准正态分布的。相应的,如果
6、多个随机变量均为[0,1]区间的均匀分布,则生成标准正态分布的式子为:其中,k为[0,1]区间均匀分布的随机变量的个数。k值可以根据计算精度来选取,若取k=12,则。此时算得的将不超过(-6,6)的范围,这对于一般可靠度的计算已达足够精度。四.使用BoxMuller方法先证明:令,则令,则有。接下来再来得出BoxMuller方法:设为一对相互独立的服从正态分布的随机变量。则有概率密度函数令,其中,则有分布函数:令如果服从均匀分布,则的分布函数即为。最后,可以用代替,令为,其中,,得:从而,只需要有两个服从均匀分
7、布的随机变量,就能通过公式来得到一个服从正态分布的随机变量。用BoxMuller方法来生成服从正态分布的随机数是十分快捷方便的。五、Hasiting有理逼近法这是一种计算速度快,也能满足一定精度的算法。我们可以构造分布函数反函数的近似逼近公式,来产生标准正态分布的随机数。其计算公式为:这里,系数为:a0=2.515517b1=1.432788a1=0.802853b2=0.189269a2=0.010328b3=0.001308六、舍选法1、基本思想:实质上是从许多RND随机数中选出一部分,使之成为具有给定分布
8、的随机数。2、设随机变量X的概率密度函数为f(x),存在实数a