2.随机数 蒙特卡罗课件.ppt
文本预览下载声明
第二章 随机数 随机数的定义及产生方法 伪随机数 产生伪随机数的方法 伪随机数的评价方法 第二章 随机数 从具有已知分布的总体中抽取简单子样,在蒙特卡罗方法中占有重要地位。总体和子样的关系,属于一般和个别的关系,或者说属于共性和个性的关系。从具有已知分布的总体中产生简单子样,就是由简单子样中若干个性近似地反映总体的共性。 随机数是实现由已知分布抽样的基本量,在由已知分布的抽样过程中,将随机数作为已知量,用适当的数学方法可以由它产生具有任意已知分布的简单子样。 随机数的定义及产生方法 随机数的定义 随机数表 物理方法 随机数的定义 在连续型随机变量的分布中,最简单且最基本的分布是单位均匀分布。由该分布抽取的简单子样称随机数序列,其中每一“个体”称为随机数。 单位均匀分布也称为[0,1]上的均匀分布,其分布密度函数为: 随机数的定义 分布函数为: 随机数表 可以使用随机数表产生随机数。随机数表是由0,1,…,9十个数字组成,每个数字以0.1的等概率出现,数字之间相互独立。这些数字序列称为随机数字序列。如果要得到n位有效数字的随机数,只需将表中每n个相邻的随机数字合并在一起,且在最高位的前边加上小数点即可。 随机数表 物理方法 用物理方法产生随机数的基本原理——利用某些物理现象,在计算机上增加特殊设备,可在计算机上直接产生随机数,称为随机数发生器。 用作随机数发生器的物理源主要有两种: (1)根据放射性物质的放射性, (2)利用计算机的固有噪声。 方法: 一般情况下,任意一个随机数用二进制数表示为: 其中εi(i=1, 2, …, m)或者为0,或者为1。 因此,利用物理方法在计算机上产生随机数,就是要产生只取0或1的随机数字序列,数字之间相互独立,每个数字取0或1的概率均为0.5。 不足: (1)用物理方法产生的随机数序列无法重复实现,不能进行程序复算,给验证结果带来很大困难。 (2)需要增加随机数发生器和电路等附加设备,费用昂贵。因此,该方法也不适合在计算机上使用。 伪随机数 伪随机数 伪随机数存在的两个问题 伪随机数的周期和最大容量 伪随机数 在计算机上产生随机数最实用、最常见的方法是数学方法,即用如下递推公式: 产生随机数序列。 对于给定的初始值ξ1,ξ2…,ξk,确定ξn+k,n=1,2,…。 伪随机数存在的两个问题 用数学方法产生的随机数,存在两个问题: 递推公式和初始值ξ1,ξ2…,ξk确定后,整个随机数序列便被唯一确定。不满足随机数相互独立的要求。 由于随机数序列是由递推公式确定的,这种方法产生的随机数序列就不可能不出现重复。即,出现了周期性的循环现象,这与随机数的要求是不相符的。 因这两个问题的存在,所产生的随机数为伪随机数。 对上述存在的问题,具体分析如下。 对第一个问题,不能从本质上改变,但只要递推公式选得好,随机数间的相互独立性是可以近似满足的。 对第二个问题,则不是本质的。用蒙特卡罗方法解任何具体问题,所用的随机数的个数总是有限的,只要所用随机数的个数不超过伪随机数序列出现循环时的长度就可以了。 优点: (1)用数学方法产生的伪随机数容易在计算机上得到; (2)可以进行复算; (3)不受计算机机型的限制。 因此,这种方法虽然存在一些问题,但仍然广泛使用。 伪随机数的周期和最大容量 发生周期性循环现象的伪随机数的个数称为伪随机数的周期。 从伪随机数序列的初始值开始,到出现循环为止,所产生的伪随机数的个数称为伪随机数的最大容量。 产生伪随机数的方法——乘同余方法 一般形式:对于任一初始值x1,伪随机数序列由下面递推公式确定: 其中a为常数。 为了便于在计算机上使用,通常取M=2s , 其中,s为计算机中二进制数的最大可能有效位数。 可以取 x1= 奇数,a = 52k+1 ,
显示全部