首页 > 解决方案 > 蒙特卡洛树搜索:从部署中获取价值

问题描述

我目前正在为策略游戏 AI 编写 Monte Carlo Tree Search 的实现,并且对 Rollout(模拟阶段)有疑问。

该算法的描述建议您应该运行模拟,直到达到最终状态,但是当您有很大的搜索空间和有限的时间时,这是不切实际的。就我而言,我将模拟步骤的数量限制为某个值(如果终止,则提前完成)。

在模拟的每个步骤中,我都会评估状态,但由于模拟由一系列随机动作组成,因此评估值可以在模拟期间增加或减少。问题是:对于非终端状态模拟,我应该返回最后的状态评估,还是在运行期间观察到的最佳状态评估?

标签: artificial-intelligencemonte-carlo-tree-search

解决方案


通常,您会在模拟结束时使用该值。但是,MCTS 会定期针对许多不同的领域进行调整,因此您可以自由地以一种能够为您提供最佳性能的方式进行调整。

据我所知,这个想法最初是为亚马逊提出的。在应用评估函数之前,他们只使用了“大约 6 步”的随机游走。


推荐阅读