Artificial intelligence Can";蒙特卡罗树搜索“;适用于一个;不完全信息的两人博弈;你喜欢什么?

Artificial intelligence Can";蒙特卡罗树搜索“;适用于一个;不完全信息的两人博弈;你喜欢什么?,artificial-intelligence,minimax,alpha-beta-pruning,Artificial Intelligence,Minimax,Alpha Beta Pruning,我想开发一个信息不完全的两人游戏——“Stratego” 这场比赛“有点”像国际象棋,但一开始我们对对手棋子的等级一无所知。当一个棋子攻击或被某个对手的棋子攻击时,他们的等级被显示,高等级的棋子杀死/捕获低等级的棋子。 更多关于游戏的细节可以找到 我做了一点调查。我读了J.A.斯坦基维茨的《战略中的对手建模》。但是我找不到关于如何开发游戏的完整教程。我在两人游戏《奥赛罗》a.k.a.Reversi之前就已经成功开发了,我熟悉MINIMAX算法和alpha-beta修剪 我在某处发现蒙特卡罗树搜索

我想开发一个信息不完全的两人游戏——“Stratego”

这场比赛“有点”像国际象棋,但一开始我们对对手棋子的等级一无所知。当一个棋子攻击或被某个对手的棋子攻击时,他们的等级被显示,高等级的棋子杀死/捕获低等级的棋子。 更多关于游戏的细节可以找到

我做了一点调查。我读了J.A.斯坦基维茨的《战略中的对手建模》。但是我找不到关于如何开发游戏的完整教程。我在两人游戏《奥赛罗》a.k.a.Reversi之前就已经成功开发了,我熟悉MINIMAX算法和alpha-beta修剪

我在某处发现蒙特卡罗树搜索也被用于开发零和两人游戏。它可以用于像stratego这样的游戏吗?我能得到同样的完整教程吗


任何不涉及蒙特卡罗树搜索的其他教程也会很有用:)

我不知道有任何MCT可以提供我had顶部的不完整信息,而且似乎需要对算法进行实质性修改才能使其工作

即使在一种非常有限的战术中,每边只有十个棋子,只有两种棋子,只有一个“更强”的棋子,你仍然在玩十种可能的实际游戏之一。在一场完整的stratego比赛中,由于起跑位置的大量组合,不确定性远远大于此,这些组合看起来都很相似

似乎您还必须增强算法以捕获“显示的知识”,例如,在我们的玩具示例中,碎片之间的每次遭遇都会显示一些关于敌人位置的信息


这似乎是一个有趣的尝试,但一开始只是针对一个非常受限的StrategyGo-like问题,并且理解到现成的MCT是不够的,您必须仔细深入地思考算法的正确扩展

我认为MCT在Stratego游戏中会遇到困难,因为最初的扩散函数非常大,而最佳的游戏非常依赖于游戏的实际情况。也就是说,在最好的情况下,MCT会让你在对手棋子的所有可能变化中发挥出统计上的优势,但下一步的最佳动作在很大程度上取决于他们选择的特定变化

我仍然在发展对MCT的深入理解,但在我看来,MCT在涉及隐藏信息的多回合欺骗游戏中表现不佳(扑克,规范上,但我也会说,stratego)。在这样的游戏中,你真的需要建立一个其他玩家情况/策略的模型,MCT的本质是给你一个与所有树相关的答案,而不仅仅是地面真相树


MCTS适用于涉及大量机会的游戏(双陆棋和其他涉及骰子和许多纸牌游戏的棋类游戏),在我看来,它是一种优秀的通用解决方案,可以迅速应用于大量现代“欧洲风格”的棋类游戏。(有趣的是,尽管它们涉及“欺骗性策略”,但它们通常涉及的隐藏信息相对较少。)

你能提供一个链接到任何用于开发Stratego的教程吗?如果将MCT修改为ISMCT,它似乎可以用于不完美的信息游戏。不幸的是,缺少例子,我也有一个类似的问题,我正在开发的一个特殊的游戏既有机会也有不完整的信息。但我会赢的