1. 首页 > 电脑手机 >

蒙特卡洛树搜索 蒙特卡洛模拟

您好,今天小源来为大家解答以上的问题。蒙特卡洛树搜索相信很多小伙伴还不知道,现在让我们一起来看看吧!

蒙特卡洛树搜索 蒙特卡洛模拟蒙特卡洛树搜索 蒙特卡洛模拟


1、蒙特卡洛树搜索(Monte Carlo tree search;简称:MCTS)是一种用于某些决策过程的启发式搜索算法,最引人注目的是在游戏中的使用。

2、一个主要例子是计算机围棋程序,它也用于其他棋盘游戏、即时电子游戏以及不确定性游戏。

3、比如围棋,棋手需要针对盘面的情况,选择下一步走哪个位置。

4、这个决策过程可以认为是一个决策函数a = f(s) ,即面对 可能的状态s , 决策函数f 会提供一个 行动a (落子位置)。

5、当然,我们希望 f 尽可能优秀,其决策a能够尽可能赢棋。

6、我们也可以将f构造为一颗决策树。

7、从盘面初始状态开始(没有棋子),令初始状态为根节点,第一手棋有19*19=361个位置,因此根节点下面有361个子节点,第二手棋有360个可能的位置,即361个节点下,每个节点又有360个子节点......随着双方的落子,树的分枝越来越多,每个分支最终会进入叶子状态(对局结束,黑胜或白胜)。

8、理论上可以列举所有可能的情况,做一棵完整的决策树,但实际上这个数据量大到不可能实现。

9、因此,我们必须在有限的时间和空间之内,高效的构建一个子树,这是一个不完整但 尽量好的决策树 。

10、即便只是尽量好的决策,也是很困难的。

11、因为一步棋的好坏通常不能立即判断出来,最终的评判要到下完的时候才能决定谁赢,况且即便赢了棋,也不代表其中每一步都是好的。

12、但是,无论怎样,必须提供某种方法让AI知道一步棋好不好,也就是要提供一些 启发 ,于是我们可以采用蒙特卡洛树搜索方法。

13、刚才我们说到下一盘棋不能判定其中走法的好坏,但如果下很多次呢?比如在某个特定盘面s1情况下,进行n次对局(接着s1盘面往后走),如果统计下来黑棋赢得多,说明s1情况对黑棋比较有利。

本文到这结束,希望上面文章对大家有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息