蒙特卡洛算法是20世纪十大最伟大的算法之一,阿法狗就采用了蒙特卡洛算法。
1、定义
蒙特卡洛方法也称为 计算机随机模拟方法,它源于世界著名的赌城——摩纳哥的Monte Carlo(蒙特卡洛)。
它是基于对大量事件的统计结果来实现一些确定性问题的计算。其实质就是将问题转化为一个概率问题,并用计算机模拟产生一堆随机数,再对随机数进行统计工作。
2、原理
2.1 基本思想:
当所求解问题是某种随机事件出现的概率,或者是某个随机变量的期望值时,通过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的概率,或者得到这个随机变量的某些数字特征,并将其作为问题的解。
本质是一种统计方法,即用大量的随机样本出现的频率或概率当作问题的解。
2.2 特点
优点:(可以求解复杂图形的积分、定积分,多维数据也可以很快收敛)
能够比较逼真地描述具有随机性质的事物的特点及物理实验过程
受几何条件限制小
收敛速度与问题的维数无关
具有同时计算多个方案与多个未知量的能力
误差容易确定
程序结构简单,易于实现
缺点:
收敛速度慢
误差具有概率性
3、举例
3.1 计算圆周率π
显然上图1/4圆与正方形的面积比为:
那么,如果在正方形内随机产生n个点,通过计算这些点和原点的距离,判断这些点是否在1/4圆内。 在1/4圆内的点数/n = π/4 。即点落在1/4圆内的概率*4 = π。 随机模拟30000个点,π的估算值与真实值相差0.07%
推而广之,可以计算任意一个积分的值。
3.2 阿法狗
阿法狗是怎么下棋的呢?
简单的说
①. 根据一定的策略选出可能的下法;
②. 然后进行蒙特卡罗模拟计算胜率。
以上2步反复进行,显然,模拟的次数越多,越有可能得到最优解。
4、应用
粒子输运问题(实验物理,反应堆物理)
统计物理
典型数学问题
真空技术
激光技术
医学
生物
探矿等