随机数的产生与模拟精.ppt
《随机数的产生与模拟精.ppt》由会员分享,可在线阅读,更多相关《随机数的产生与模拟精.ppt(77页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、随机数的产生与模拟1第1页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟 n用随机模拟方法解决实际问题时,首先要解决的是随机数的产生方法,或称随机变量的抽样方法。本章目录本章目录2第2页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟 n伪随机数:在计算机上用数学方法产生均匀随机数是指按照一定的计算方法而产生的数列,它们具有类似于均匀随机变量的独立抽样序列的性质,这些数既然是依照确定算法产生的,便不可能是真正的随机数,因此常把用数学方法产生的随机数称为伪随机数。本章目录本章目录3第3页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟 n均匀分布随机数均匀分布随机数:本章目录本章目
2、录4第4页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟 n均匀分布随机数均匀分布随机数:该定理说明了任意分布的随机数均可由均匀分布 的随机数变换得到。常简称 的随机数为均匀分布随机数。本章目录本章目录5第5页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生n均匀随机数的产生:均匀随机数的产生:主主要要有有线线性性同同余余法法(LCG),组组合合同同余余法,反馈位移寄存器方法等法,反馈位移寄存器方法等本章目录本章目录6第6页,本讲稿共77页n均匀随机数的产生:均匀随机数的产生:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机
3、数的产生本章目录本章目录线性同余法(LCG)的递推公式为:7第7页,本讲稿共77页n均匀随机数的产生:均匀随机数的产生:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录当 ,上式称为混合同余发生器,当时,称为乘同余发生器,此时当模为素数时,称它为素数模乘同余发生器。8第8页,本讲稿共77页n两个常用的混合式发生器:两个常用的混合式发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录9第9页,本讲稿共77页n常用的素数模乘同余发生器常用的素数模乘同余发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀
4、随机数的产生均匀随机数的产生本章目录本章目录10第10页,本讲稿共77页n常用的素数模乘同余发生器常用的素数模乘同余发生器:随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录11第11页,本讲稿共77页n反馈位移寄存器法(反馈位移寄存器法(FSRFSR):对寄存器中的二进制数码作递推运算,其中是给定的正整数,为给定的常数。取数列中连续的位构成一个位二进制整数,一直下去,一般地有 令 则即为FSR方法产生的均匀随机数列。随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录12第12页,本讲稿共77页n组合发生器组合
5、发生器 :先用一个随机数发生器产生的随机数列为基础,再用另一个发生器对随机数列进行重新排列得到的新数列作为实际使用的随机数。这种把多个独立的发生器以某种方式组合在一起作为实际使用的随机数,希望能够比任何一个单独的随机数发生器得到周期长、统计性质更优的随机数,即组合发生器。随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录13第13页,本讲稿共77页n组合发生器组合发生器 :随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录Maclaren 和 Marsaglia在1965年提出的著名的组合发生器是组合同余发生器
6、,该算法的具体步骤如下:14第14页,本讲稿共77页n组合发生器组合发生器 :1用第一个LCG产生个随机数,一般取。这个随机数被顺序地存放在矢量中。置;2 用第二个LCG产生一个随机整数,要求;3 令,然后再用第一个LCG产生一个随机数,令;置;4 重复23,得随机数列 ,即为组合同余发生器产生的数列。若第一个LCG的模为 ,令 ,则 为均匀随机数 随机数的产生与模拟随机数的产生与模拟1 1 均匀随机数的产生均匀随机数的产生本章目录本章目录15第15页,本讲稿共77页n由由均均匀匀分分布布随随机机数数产产生生非非均均匀匀分分布布随随机机数数的的主主要要方方法法有有:逆逆变变换换法法,合合成成法
7、法和和筛选法。筛选法。随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录16第16页,本讲稿共77页n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 对对任任意意分分布布函函数数,要要产产生生服服从从该该分分布布的随机数,由定理知其抽样步骤为:的随机数,由定理知其抽样步骤为:(1)由)由抽取抽取;(2)计算计算本章目录本章目录17第17页,本讲稿共77页n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录n例例1 1 已
8、已知知(柯柯西西分分布布),试给出其抽样方法。试给出其抽样方法。18第18页,本讲稿共77页n1 1 逆变换法逆变换法:随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 解解:设设,则则,因因此此其抽样步骤如下:其抽样步骤如下:(1 1)由)由抽取抽取;(2 2)计算)计算本章目录本章目录19第19页,本讲稿共77页n1 1 逆变换法逆变换法:其其SASSAS程序为(产生程序为(产生100100个服从柯西分布的随机数):个服从柯西分布的随机数):data ex1;data ex1;seed=678;seed=678;do I=1 to 100;do I=1 to
9、100;r=ranuni(seed);r=ranuni(seed);x=tan(3.14159*(r-0.5);x=tan(3.14159*(r-0.5);output;output;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录20第20页,本讲稿共77页n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 其想法是:如果X的密度难于抽样,而X关于Y的条件密度以及Y的密度函数均易于抽样,则X的随机数可如下产生:由Y的密度抽取y 由条件密度抽取x 则X服从本章目
10、录本章目录21第21页,本讲稿共77页n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 当为离散形式时,即,其中是密度函数,其抽样过程如下:1 产生一个正的随机整数,使得,2 产生分布为的随机数。本章目录本章目录22第22页,本讲稿共77页n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录 设时梯形分布的密度函数为,试用合成法产生其随机数。例例2 223第23页,本讲稿共77页n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀
11、随机数的产生 解:首先将进行分解,即,其中其抽样框图为本章目录本章目录24第24页,本讲稿共77页n2 2 合成法合成法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 产生产生令产生令输出YN本章目录本章目录25第25页,本讲稿共77页n2 2 合成法合成法 :其其SASSAS抽样程序如下(假若产生抽样程序如下(假若产生100100个随机数个随机数,):):data ex2;data ex2;seed=789;a=0.3;seed=789;a=0.3;do I=1 to 100;do I=1 to 100;r=ranuni(seed);r3=ranuni(s
12、eed);r=ranuni(seed);r3=ranuni(seed);if r1=a then do;u=ranuni(seed);x=u;end;if r1=a then do;u=ranuni(seed);x=u;end;else do;u=ranuni(seed);v=ranuni(seed);x=max(u,v);end;else do;u=ranuni(seed);v=ranuni(seed);x=max(u,v);end;output;output;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录26
13、第26页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 假设我们要从 抽样,如果可将 表示成 ,其中 是一个密度函数且易于抽样,而 ,是常数,本章目录本章目录27第27页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 X的抽样可如下进行:1由抽取,由抽取2如果,则;否则,转1则X的密度函数为本章目录本章目录28第28页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀
14、随机数的产生 本章目录本章目录设 ,试用筛选法抽取其随机数。例329第29页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 解:因为:,即:则抽样框图如下:本章目录本章目录30第30页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 独立产生令NY本章目录本章目录31第31页,本讲稿共77页n3 3 筛选抽样法筛选抽样法 :其其SASSAS程序如下:程序如下:data ex3;data ex3;seed=789;seed=789;do
15、 I=1 to 100;do I=1 to 100;r1=ranuni(seed);r2=ranuni(seed);r1=ranuni(seed);r2=ranuni(seed);if r1=r2*3 then do;x=r2;output;end;if r1=r2*3 then do;x=r2;output;end;end;end;run;run;随机数的产生与模拟随机数的产生与模拟2 2非均匀随机数的产生非均匀随机数的产生 本章目录本章目录32第32页,本讲稿共77页蒙蒙特特卡卡罗罗(Monte Monte CarloCarlo)方方法法(即即随随机机模模拟拟方方法法)求求解解实实际问题的
16、基本步骤包括:际问题的基本步骤包括:1 1 建建模模:对对所所求求的的问问题题构构造造一一个个简简单单而而又又便便于于实实现现的的概概率率统统计计模模型型,使使所所求求的的解解恰恰好好是是所所建建模模型型的的参参数数或或有有关关的的特征量。特征量。2 2 改改进进模模型型:根根据据概概率率统统计计模模型型的的特特点点和和计计算算实实践践的的需需要要,尽尽量量改改进模型,以便减少误差和降低成本,提高计算效率。进模型,以便减少误差和降低成本,提高计算效率。3 3 模拟试验模拟试验4 4 求解:对模拟结果进行统计处理,给出所求问题的近似解。求解:对模拟结果进行统计处理,给出所求问题的近似解。随机数的
17、产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 本章目录本章目录33第33页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(1 1)随机投点法)随机投点法 赋初值:试验次数n=0,成功次数m=0;规定投点试验的总次数N;产生两个相互独立的均匀随机数 置n=n+1;判断nN是否成立,若成立转,否则停止试验,转;判断条件 是否成立,若成立置m=m+1,然后转,否则转;计算m/N,则本
18、章目录本章目录34第34页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(1 1)随机投点法)随机投点法 本章目录本章目录35第35页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(2)(2)平均值估计法平均值估计法 平均值估计法的计算步骤:产生0,1区间的均匀随机数 计算 令 =,则 为积分值 的近似解.本章目录本章目录36第36页
19、,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(3)(3)重要抽重要抽样样法法 重要抽样法的计算步骤为:产生均匀随机数 用直接抽样法产生 随机数,即由 计算则 计算 =,则 是 的估计量.本章目录本章目录37第37页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 计算定积分计算定积分(4)(4)分分层层抽抽样样法法 分层抽样法的计算步骤如下:本章目录本章目
20、录38第38页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (1)(1)随机投点法随机投点法 多重积分随机投点法计算步骤为:计算多重定积分计算多重定积分本章目录本章目录39第39页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (1)(1)随机投点法随机投点法 计算多重定积分计算多重定积分本章目录本章目录40第40页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Mo
21、nte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (2)(2)平均平均值值估估计计法法 计算多重定积分计算多重定积分多重积分的平均值法计算步骤为 本章目录本章目录41第41页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 (2)(2)平均平均值值估估计计法法 计算多重定积分计算多重定积分本章目录本章目录42第42页,本讲稿共77页随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的
22、应用方法在解确定性问题中的应用 计算多重定积分计算多重定积分用蒙特卡罗方法计算积分值时,误差的阶数为用蒙特卡罗方法计算积分值时,误差的阶数为 ,它与多重积分的重数它与多重积分的重数k k无关,而用其他数值方法计算多重无关,而用其他数值方法计算多重积分时,其误差与重数积分时,其误差与重数k k是有关的,可见当是有关的,可见当k3k3时,使时,使用蒙特卡罗方法计算多重积分将显现出很大的优越性用蒙特卡罗方法计算多重积分将显现出很大的优越性 本章目录本章目录43第43页,本讲稿共77页应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Carlo3 Monte Carlo方法在解确定性
23、问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算(1)随机投点法 data E1;Do k=1 to 1000;m=0;Do h=1 to 1000;a=ranuni(32789);b=ranuni(32789);if b=(exp(a)-1)/(exp(1)-1)then m=m+1;end;I1=m/1000*(exp(1)-1)+1;output;E1=abs(I1-(exp(1)-1);end;run;proc means data=e1 Mean Var;var I1;run;本章目录本章目录44第44页,本讲稿共77页应用实例应用实例随机数的产生与模拟随机数的产生与
24、模拟3 Monte Carlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算 (2)平均值估计法 data E2;Do k=1 to 1000;s=0;Do i=1 to 1000;x=ranuni(32789);fx=exp(x);s=s+fx;end;I2=s/1000;output;E2=abs(I2-(exp(1)-1);end;run;proc means data=e2 Mean Var;var I2;run;本章目录本章目录45第45页,本讲稿共77页应用实例应用实例随机数的产生与模拟随机数的产生与模拟3 Monte Ca
25、rlo3 Monte Carlo方法在解确定性问题中的应用方法在解确定性问题中的应用 例4:用上述四种方法计算 (3)重要抽样法 data E3;do k=1 to 1000;s=0;Do i=1 to 1000;r=ranuni(32789);x=(3*r+1)*(1/2)-1;s=s+exp(x)/(1+x);end;I3=3/(2*1000)*s;output;E3=abs(I3-(exp(1)-1);End;run;proc means data=e3 Mean Var;var I3;run;本章目录本章目录46第46页,本讲稿共77页应用实例应用实例随机数的产生与模拟随机数的产生与模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 随机数 产生 模拟
限制150内