蒙特卡洛树搜索:对手在MCTS树边界之前移动

MCTS算法的步骤如下:

  1. 选择
  2. 扩展
  3. 模拟
  4. 回溯

我的问题涉及第三步,模拟。我们已经用一个新节点扩展了决策树,并模拟剩余的移动直到游戏结束。这个模拟可以分为两部分:

  1. 我们使用决策树中的策略进行的回合
  2. 为双方设置随机移动的回合(或使用特定游戏的替代默认策略)

分隔这两个阶段的MCTS树线的可视化可以在该出版物的图1中找到:http://www.ru.is/faculty/yngvi/pdf/FinnssonB09a.pdf

我对第一部分感到困惑。为了模拟游戏,我们首先在第一个节点采取树策略,然后对手移动,然后我们采取另一个树策略移动,依此类推,直到我们到达算法第二步创建的节点。在我们到达树线之前,我们在树策略移动之间让对手做哪些移动?一个随机移动的对手可能会做一个阻止我们进行下一个树策略移动的动作。还是我有其他误解?


回答:

新节点位于决策树的底部。这个决策树代表了双方的移动。当你在树中的一个节点时,树中包含了以该位置结束的准确移动序列。

剩余的移动是根据模拟步骤进行模拟的。

在实践中,计算机通常不需要继续模拟第一阶段的移动。相反,它只会缓存节点处的位置,然后可以从该点反复开始模拟游戏。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注