蒙特卡洛算法详解

蒙特卡洛算法是20世纪十大最伟大的算法之一,阿法狗就采用了蒙特卡洛算法。

1、定义

蒙特卡洛方法也称为 计算机随机模拟方法,它源于世界著名的赌城——摩纳哥的Monte Carlo(蒙特卡洛)。

它是基于对大量事件的统计结果来实现一些确定性问题的计算。其实质就是将问题转化为一个概率问题,并用计算机模拟产生一堆随机数,再对随机数进行统计工作。

2、原理

2.1 基本思想:

当所求解问题是某种随机事件出现的概率,或者是某个随机变量的期望值时,通过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的概率,或者得到这个随机变量的某些数字特征,并将其作为问题的解。

本质是一种统计方法,即用大量的随机样本出现的频率或概率当作问题的解。

2.2 特点

 优点:(可以求解复杂图形的积分、定积分,多维数据也可以很快收敛)

能够比较逼真地描述具有随机性质的事物的特点及物理实验过程
受几何条件限制小
收敛速度与问题的维数无关
具有同时计算多个方案与多个未知量的能力
误差容易确定
程序结构简单,易于实现

 缺点:

收敛速度慢
误差具有概率性

3、举例

3.1 计算圆周率π

 显然上图1/4圆与正方形的面积比为:

扫描二维码关注公众号,回复: 14635439 查看本文章

 那么,如果在正方形内随机产生n个点,通过计算这些点和原点的距离,判断这些点是否在1/4圆内。 在1/4圆内的点数/n = π/4 。即点落在1/4圆内的概率*4 = π。 随机模拟30000个点,π的估算值与真实值相差0.07%

推而广之,可以计算任意一个积分的值。

 3.2 阿法狗

阿法狗是怎么下棋的呢?

简单的说     

①. 根据一定的策略选出可能的下法;     

②. 然后进行蒙特卡罗模拟计算胜率。       

以上2步反复进行,显然,模拟的次数越多,越有可能得到最优解。

4、应用 

粒子输运问题(实验物理,反应堆物理)

统计物理

典型数学问题

真空技术

激光技术

医学

生物

探矿等

猜你喜欢

转载自blog.csdn.net/u012998680/article/details/128821750