首页 文章

蒙特卡洛树搜索 - “最有前途”的移动功能

提问于
浏览
2

我试图实现tic-tac-toe hello-world MCTS游戏玩家,但我遇到了一个问题 .

在模拟游戏并选择“最有希望的”(利用/探索)节点时,我只考虑总胜数(“利用”部分) - 这会导致某些问题,所得算法根本不具防御性 . 因此在选择之间

  • 移动导致(100次抽奖; 10次失败)

  • 移动导致(1胜; 109输)

选择较差的一个(1; 109),因为我的uct函数贪婪计算avg wins而不是“value” .

我是否正确地认识到了这个问题?我应该从“avg wins”切换到考虑所有结果类型的其他 Value 指标吗?

欢迎任何建议,谢谢

1 回答

  • 3

    由于井字游戏是一种零和游戏(一个玩家的状态值总是等于对手的否定值),你的得分函数也应该反映这一点 .

    这意味着,在计算平均分数时,您应该使用如下值:

    每场胜利

    • 1
      每次抽奖
    • 0
      每一次损失都是
    • -1

    在您的示例中,这将导致以下平均分数:

    • 移动导致(100次抽奖; 10次失败):平均得分= -10/110 = -0.0909...

    • 移动导致(1胜; 109输):平均 . 得分= -108/110 = -0.98181...

    因此,第一种选择将被视为更好的选择

相关问题