围棋中的蒙特卡洛方法
其思想很简单,对于当前棋局,随机地模拟双方走步,直到分出胜负为止。通过多次模拟,计算每个可下棋点的获胜概率,选取获胜概率最大的点走棋。
在围棋程序中实际使用的是一种被称为蒙特卡洛树搜索的方法,边模拟边建立一个搜索树,父节点可以共享子节点的模拟结果,以提高搜索的效率。是二十世纪40年代中期由S.M.乌拉姆和J.冯·诺伊曼提出的一类随机模拟方法的总称,其名称来源于摩纳哥的著名赌城,可以用随机模拟的方法求解很多问题的数值解。
著名的“蒲丰投针”就属于这类方法,通过向画有格子的纸上投针计算π值。
蒙特卡洛法方法很简单,围棋不是难于对棋局打分吗?那么就想法避开这一步,不再对棋局进行静态的打分,而是根据随机模拟的方式,给出每个下棋点可能取胜的概率,用该概率值作为对棋局的评估。这样带来的最大好处是,不再需要程序设计者对具体的棋有多深的了解,只要掌握基本的下棋规则即可。
这样一来,就把程序的所有智能,全部给了机器,而不再依靠人的总结,而且是一个相对通用的,具有很好的推广性。”
其基本原理,分为四步
1)选择:以当前棋局为根节点,自上而下地选择一个落子点。
2)扩展:向选定的节点添加一个或多个子节点。
3)模拟:对扩展出的节点用蒙特卡洛方法进行模拟。
4)回传:根据模拟结果依次向上更新祖先节点的估计值。
信心上限决策方法
信心上限决策是研究多臂老虎机问题时提出的一个统计决策模型,根据该模型,可以最大化效益。
使用在围棋中的蒙特卡洛方法的第一步“选择”。
人在计算的过程中,对可能的走棋点会分轻重缓急,重要的点多考虑,次要的点少考虑,甚至不考虑。计算机程序在第一步“选择”过程中如何体现这一想法呢?信心上限决策方法的引入就是这一思想的体现。在围棋问题中,每个可落子点相当于多臂老虎机的一个臂,要选择可带来最大化效益的那个节点扩展。按照信心上限决策方法,要考虑两个因素:
1)优先选择模拟过程中到目前为止胜率最大的节点,以进一步考察它是否是一个好点。
2)优先选择那些到目前为止模拟次数比较少的节点,以考察这些点是否有潜在的好点。
信心上限决策方法就是对上述两个因素的加权折中,公式就是上述两个因素的加权和。