随机数的生成及随机变量抽样.ppt
《随机数的生成及随机变量抽样.ppt》由会员分享,可在线阅读,更多相关《随机数的生成及随机变量抽样.ppt(52页珍藏版)》请在三一办公上搜索。
1、实验目的,实验内容,学习主要的随机变量抽样方法,1、均匀分布U(0,1)的随机数的产生2、其他各种分布的随机数的产生方法3、随机数生成实例4、实验作业,随机数的生成及随机变量抽样,随机数的生成,随机数的产生是实现MC计算的先决条件。而大多数概率分布的随机数的产生都是基于均匀分布U(0,1)的随机数。首先,介绍服从均匀分布U(0,1)的随机数的产生方法。其次,介绍服从其他各种分布的随机数的产生方法。以及服从正态分布的随机数的产生方法。最后,关于随机数的几点注。,一、均匀分布U(0,1)的随机数的产生,产生均匀分布的标准算法在很多高级计算机语言的书都可以看到。算法简单,容易实现。使用者可以自己手动
2、编程实现。Matlab 中也提供给我们用于产生均匀分布的各种函数。我们的重点是怎样通过均匀分布产生服从其他分布的随机数。因此,直接使用Matlab提供的可靠安全的标准函数,当然不用费事了。,IMSL库中的函数使用,RNSET:种子的设定 CALL RNSET(ISEED)RNOPT:产生器的类型的设定 CALL RNOPT(IOPT)RNUN/DRNUN:产生均匀分布的随机数 CALL RNUN(NR,R),例1生成1行1000列的110上离散均匀分布的随机数;生成1行1000列2130上离散均匀分布的随机数;生成1行1000列5011000上离散均匀分布的随机数。并画经验分布函数曲线。,Ra
3、ndnum=unidrnd(10,1,10000);cdfplot(Randnum);pauseRandnum=unidrnd(10,1,10000)+10;cdfplot(Randnum);pauseRandnum=unidrnd(500,1,10000)+500;cdfplot(Randnum),cdfplot(x),解:由密度函数知,例2设总体X的密度函数为,其中 0,生成 1行10000列的随机数.,具有均值为 的指数分布,Randnum=exprnd(2,1,10000)+5,并画经验分布函数曲线。,cdfplot(Randnum),二、其他各种分布的随机数的产生,基本方法有如下三种
4、:逆变换法 合成法 筛选法,逆变换法,设随机变量 的分布函数为,定义 定理 设随机变量 服从 上的均匀分布,则 的分布函数为。因此,要产生来自 的随机数,只要先产生来自 的随机数,然后计算 即可。其步骤为,为常数,例3 设密度函数为,并画经验分布函数曲线。,例4 设X分布函数为F(X),生成n=20的1行10000列随机数,并画经验分布函数曲线。,n=20Randnum=1-(1-unifrnd(0,1,1,10000).(1/n);cdfplot(Randnum),为常数,例5 设密度函数为,并画经验分布函数曲线。,合成法,合成法的应用最早见于Butlter 的书中。构思如下:如果 的密度函
5、数 难于抽样,而 关于 的条件密度函数 以及 的密度函数 均易于抽样,则 的随机数可如下产生:可以证明由此得到 的服从。,筛选抽样,假设我们要从 抽样,如果可以将 表示成,其中 是一个密度函数且易于抽样,而,是常数,则 的抽样可如下进行:定理 设 的密度函数,且,其中,是一个密度函数。令 和 分别服从 和,则在 的条件下,的条件密度为,三、生成标准正态分布的随机数,的随机数产生方法很多。简要介绍三种。法1、变换法(Box 和Muller 1958)设,是独立同分布的 变量,令 则 与 独立,均服从标准正态分布。法2、结合合成法与筛选法。(略)法3、近似方法(利用中心极限定理)即用 个 变量产生
6、一个 变量。其中 是抽自 的随机数,可近似为一 个 变量。,例6,生成单位圆上均匀分布的1行10000列随机数,并画经验分布函数曲线。,Randnum=unifrnd(0,2*pi,1,10000);xRandnum=cos(Randnum)Y,II=sort(xRandnum)yRandnum=sin(Randnum)plot(xRandnum(II),yRandnum(II),.),例7,生成单位正方形上均匀分布的1行10000列随机数,并画散点图。,mm=10000;Randnum=unifrnd(0,4,1,mm);xRandnum=zeros(1,mm);yRandnum=zeros
7、(1,mm);for ii=1:mm if Randnum(1,ii)=1 xRandnum(1,ii)=0;yRandnum(1,ii)=Randnum(1,ii);else if Randnum(1,ii)=2 xRandnum(1,ii)=Randnum(1,ii)-1;yRandnum(1,ii)=1;else if Randnum(1,ii)=3 xRandnum(1,ii)=1;yRandnum(1,ii)=1-(Randnum(1,ii)-2);else xRandnum(1,ii)=1-(Randnum(1,ii)-3);yRandnum(1,ii)=0;end end end
8、 end Y,JJ=sort(xRandnum);plot(xRandnum(JJ),yRandnum(JJ),.),离散型随机变量的生成离散型随机变量X,它的取值是非光滑连续的值,它只能间断地即离散地取值x1,x2,x3,xn,且规定x1x2x3xn。其概率密度函数为 p(xi)=pX=xi概率分布函数为,例10 对某车间每天需求某种零件的数量历史数据中统计获得表1的结果。生成1行1000列零件需求的随机数。并画经验分布函数曲线。表1 某零件每天需求量 X,随机变量生成的算法为产生一个u(0,1),并令i=0;令i=i+1;若uF(xi),转回到第步,否则转至;输出得 Xxi。,mm=100
9、00;Randnum=unifrnd(0,1,1,mm);xRandnum=zeros(1,mm);for ii=1:mm if Randnum(1,ii)=0.1 xRandnum(1,ii)=10;else if Randnum(1,ii)=0.3 xRandnum(1,ii)=20;else if Randnum(1,ii)=0.7 xRandnum(1,ii)=30;else if Randnum(1,ii)=0.95 xRandnum(1,ii)=40;else xRandnum(1,ii)=50;end end end end end cdfplot(xRandnum),三角分布(
10、a,m,b)的随机变量其密度函数为,其分布函数为,在用Monte Carlo等方法解应用问题时,随机向量的抽样也是经常用到的.若随机向量各分量相互独立,则它等价于多个一元随机变量的抽样。,随机向量的抽样方法,例8,生成单位正方形内均匀分布的1行10000列随机数,并画散点图。,mm=10000 xRandnum=unifrnd(0,1,1,mm);yRandnum=unifrnd(0,1,1,mm);plot(xRandnum,yRandnum,.),mm=100000 xRandnum=unifrnd(0,1,1,mm);yRandnum=unifrnd(0,1,1,mm);Y,JJ=sor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 随机数 生成 随机变量 抽样

链接地址:https://www.31ppt.com/p-6148563.html