Abh*_*han 5 artificial-intelligence minimax alpha-beta-pruning
我想开发一个具有不完全信息的双人游戏 - "Stratego".
这场比赛"有些"像国际象棋,但最初我们对对手的棋子不了解.当一件作品被一些对手的作品攻击或攻击时,他们的等级被揭示出来并且较高等级的作品杀死/捕获较低等级的作品.有关游戏的更多细节可以在这里找到.
我做了一点研究.我读了JA Stankiewicz撰写的"Stratego中的对手建模".但我找不到关于如何开发游戏的完整教程.我已经成功开发了一款双人游戏 - "Othello"又名Reversi,我熟悉MINIMAX算法和alpha-beta修剪.
我发现蒙特卡罗树搜索也用于开发零和二玩家游戏.它可以用于像Strategiesgo这样的游戏吗?我可以获得相同的完整教程吗?
任何其他不涉及蒙特卡罗树搜索的教程也很有用:)
我认为 MCTS 在 Stratego 中会遇到困难,因为初始传播函数太大,而最佳玩法非常依赖于游戏的基本事实。也就是说,在最好的情况下,MCTS 会给你一个在对手棋子的所有可能变化中统计上良好的玩法,但最好的下一步棋很大程度上取决于他们选择的特定变化。
我仍在对 MCTS 形成扎实的理解,但在我看来,MCTS 在涉及隐藏信息的多轮欺骗性游戏很重要的游戏中表现不佳(典型的是扑克,但我想说的是策略)。在此类游戏中,您确实需要开发其他玩家情况/策略的模型,而 MCTS 本质上将为您提供一个与所有树(而不仅仅是地面实况树)在统计上相关的答案。
MCTS 适合涉及大量机会的游戏(双陆棋和其他涉及骰子和许多纸牌游戏的棋盘游戏),在我看来,这是一个出色的通用解决方案,可以快速应用于大量现代“欧洲风格”棋盘游戏。(有趣的是,尽管它们涉及“欺骗策略”,但它们通常涉及相对较少的隐藏信息。)