用电子计算机对于问题解有关的概率模型进行统计模拟或抽样的近似计算方法。也称随机模拟方法,随机抽样技术或统计试验。
为求解数学、物理、工程技术及生产管理中的问题,**建立一个概率模型或随机过程模型,使其参数为问题的解;然后通过对模型的观察或抽样统计来计算所求参数的统计特征,*后给出所求解的近似值。解的精度可用估计值的标准差或方差来表示。
*早的例子之一是18世纪后半叶蒲丰(G.L.L.Buffon)的投针试验,即利用多次随机投针的实验求出圆周率π的近似值。20世纪40年代中叶,乌拉姆(S.Ulam)和冯·诺伊曼(J.Von Neumann)等人在原子弹研制过程中,用电子计算机对中子的随机扩散进行随机抽样模拟,并把这一方法命名为蒙特卡罗法。
用蒙特卡罗法解决的问题可分为两类。**类是确定性的数学问题。例如求解定积分:dx〔B≧厂(x)≧A≧0〕。作出在{a≦x≦b,A≦y≦B}范围内均匀分布的大量随机数组(x,y),则由上述定积分所定义的面积与整个范围的面积之比,可以认为近似地等于y≦f(x)的数组个数与总数组个数之比(设为P),所以有近似解:I=P(B-A)(b-a)。此外,对于计算多重积分、求逆矩阵、解线性代数方程组、解微分方程、解某些偏微分方程的边值问题及计算微分算子的特征值等,通过对问题建立适当的随机模型,也可以用蒙特卡罗法求解。第二类是随机性问题。如果随机问题难以建立方程,或者虽建立了方程但难以求解,此时,常常不能对原问题本身进行模拟而只能对用相同的或简化的方程所表述的随机模型进行模拟。
在进行模拟时,总希望在样本空间固定的前提下提高精度;或对于固定的精度要求减少对样本的需要量。这就是所谓的方差减少技术。采用这种技术可以缩短模拟的运行时间。蒙特卡罗法是一种重要的方差减少技术。
随机数
在区间〔0,1〕上均匀分布的随机变量的抽样值。用蒙特卡罗法进行模拟时,需要产生各种概率分布的随机变量。而它们的抽样都可以借助于随机数来实现。例如,可以用多次掷硬币的方法,以硬币正面与反面随机出现的情况来模拟某一事件的两种可能结果。这种方法可用产生一组随机数的方法来取代。设奇数代表硬币出现正面;偶数代表硬币出现反面,统计这组随机数中奇数和偶数的出现频数就可模拟掷硬币的结果。因此,随机数是蒙特卡罗法的基本工具。随机数可用适当的物理装置产生而得到随机数表,使用时可直接由表中查取。用电子计算机进行模拟时,如把随机数表全部存入机内会占用很多内存,影响计算效率;为此,实用中都使用数学递推公式和计算程序产生伪随机数。其中*常用的是平方取中和同余技术。由于伪随机数是按照确定的递推公式求得的,所以它存在周期现象,并不是真正的随机数。在实际应用中,只要伪随机数能通过均匀性、独立性(不相关性)、组合规律性和无连贯性等检验,就可以把它当作随机数来使用。