数学建模(7)——蒙特卡罗算法(Monte Carlo)

来源:互联网 发布:网络彩票赌博怎么举报 编辑:程序博客网 时间:2024/06/05 20:03

Monte Carlo方法的实质是通过大量随机试验,利用概率论解决问题的一种数值方法,基本思想是基于概率和体积间的相似性,基于大量事件的统计结果来确定一些确定性事件的计算。

理解:
在广场上画一个边长一米的正方形,在正方形内部随意用粉笔画一个不规则的形状,现在要计算这个不规则图形的面积,怎么计算列?蒙特卡洛(Monte Carlo)方法告诉我们,均匀的向该正方形内撒N(N 是一个很大的自然数)个黄豆,随后数数有多少个黄豆在这个不规则几何形状内部,比如说有M个,那么,这个奇怪形状的面积便近似于M/N,N越大,算出来的值便越精确。在这里我们要假定豆子都在一个平面上,相互之间没有重叠。

应用

例题

y = x2、y=12-x与 x 轴在第一象限围成一个曲边三角形,求该图形面积的近似值

设计思路:
在矩形区域【0,12】*【0,9】上产生均匀分布的107个随机点,统计随机点落在曲边三角形的频数,面积则近似为上述矩形的面积乘以频率

代码

clear,clcx=unifrnd(0,12,[1,10000000]);%产生1*10000000的0~12随机的连续均匀分布的数组y=unifrnd(0,9,[1,10000000]);pinshu = sum(y<x.^2&x<=3)+sum(y<12-x&x>=3);area_apper=12*9*pinshu/10^7;area_apper
原创粉丝点击