资源描述:
《十五个数学模型5 随机模拟.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一随机模拟(蒙特卡罗算法)一随机模拟法随机模拟法也叫蒙特卡罗法,它是用计算机模拟随机现象,通过大量仿真试验,进行分析推断,特别是对于一些复杂的随机变量,不能从数学上得到它的概率分布,而通过简单的随机模拟就可以得到近似的解答。MonteCarlo法也用于求解一些非随机问题,如重积分、非线性方程组求解、最优化问题等。需要指出的是,MonteCarlo计算量大,精度也不高,因而主要用于求那些解析方法或常规数学方法难解问题的低精度解,或用于对其他算法的验证。蒙特卡罗方法的基本思想是:当所求解问题是某种随机事件出现的概率,或者是某个随机变量的
2、期望值时,通过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的概率,或者得到这个随机变量的某些数字特征,并将其作为问题的解。在解决实际问题的时候应用蒙特·卡罗方法主要有两部分工作:用蒙特卡罗方法模拟某一过程时,需要产生各种概率分布的随机变量。用统计方法把模型的数字特征估计出来,从而得到实际问题的数值解。使用蒙特卡罗方法进行分子模拟计算是按照以下步骤进行的:使用随机数发生器产生一个随机的分子构型。对此分子构型的其中粒子坐标做无规则的改变,产生一个新的分子构型。计算新的分子构型的能量。比较新的分子构型于改变前的分子构型的能量变
3、化,判断是否接受该构型。若新的分子构型能量低于原分子构型的能量,则接受新的构型。若新的分子构型能量高于原分子构型的能量,则计算玻尔茲曼常数,同时产生一个随机数。若这个随机数大于所计算出的玻尔兹曼因子,则放弃这个构型,重新计算。若这个随机数小于所计算出的玻尔兹曼因子,则接受这个构型,使用这个构型重复再做下一次迭代。如此进行迭代计算,直至最后搜索出低于所给能量条件的分子构型结束。二随机模拟法应用实例考虑二重积分,其中根据几何意义,它是以为曲面顶点,A为底的柱体C的体积。用下列简单思路求I的近似值:假设C被包在几何体D的内部,D的体积为已
4、知,若杂D内产生1个均匀分别的随机数,那么P(随机数落在C内)C的体积/D的体积现产生在D内N个均匀分别的随机数,若其中在C的内部,那么ID的体积,从而求得I的解。试用这一方法计算积分显然该几何体在立方体
5、x
6、,的内部,立方体体积为4。而C是。M文件eg8_1.m中N取1000,计算得I2.624。N越大结果越精确。由于随机模拟的特点,,每次运行的结果都有差异。M脚本eg8_1.mClear;N=1000;X=unifrnd(-1,1,,N,1);y=unifrnd(-1,1,N,1);z=rand(N,1);Cl=(x.^2+y.
7、^2)<1;c2=(x.^2+y.^2)<1;Nc=sum(c1&c2);I=Nc/N*4三蒙特卡罗法优缺点分析蒙特卡罗模拟是一种有效的统计实验计算法.它无需了解计算值的分布,可以人为地造出一种概率模型,使它的某些参数恰好重合于所需计算的量;又可以通过实验,用统计方法求出这些参数的估值:把这些估值作为要求的量的近似值.在项目管理中,常常用到的随机变量,如与成本和进度有关的变量如价格,用时等,由于实际工作中可以获得的数据量有限,它们往往是以离散型变量的形式出现的.例如,对于某种成本只知道最低价格,最高价格和最可能价格;对于某项活动的用
8、时往往只知道最少用时,最多用时和最可能用时三个数据.经验告诉我们,项目管理中的这些变量服从某些概率模型.蒙特卡罗技术则提供了把这些离散型的随机分布转换为预期的连续型分布的可能,通过将这些随机变量变成某种规律的分布,来把握项目的风险和不确定因素但无论是理论上还是在实践中,传统的蒙特卡罗技术都存在工作量大的问题.从理论上来说,蒙特卡罗方法需要大量的实验.实验次数越多,所得到的结果才越精确.而且实验表明,一直到公元20世纪初期,尽管实验次数数以千计,利用蒙特卡罗方法所得到的圆周率n值,还是达不到公元5世纪祖冲之的推算精度.这可能是传统蒙特
9、卡罗方法长期得不到推广的主要原因.但计算机技术的发展使得蒙特卡罗方法在最近10年得到快速的普及.现代的蒙特卡罗方法,己经不必亲自动手做实验,而是借助计算机的高速运转能力,使得原本费时费力的实验过程,变成了快速和轻而易举的事情.蒙特卡罗方法可以利用计算机针对某种概率模型进行数以千计,甚至数以万计的蒙特卡罗模拟随机抽样.借助计算机技术,蒙特卡罗方法实现了两大优点:一是简单,省却了繁复的数学推导和演算过程,使得一般人也能够理解和掌握;二是快速.简单和快速,是蒙特卡罗方法在现代项目管理中获得应用的技术基础。