如何调整我的Minimax搜索树来处理没有基于游戏的游戏?

Zap*_*ica 5 algorithm artificial-intelligence minimax alpha-beta-pruning

我必须做一个我们需要实现mancala棋盘游戏的项目,然后为它实现AI.

我们已经被指示我们需要修改或更改minimax树以便能够与mancala一起工作,因为在游戏中玩家可以连续多次转弯.

我已经实现了我的游戏逻辑和GUI,但是在我开始使用AI之前,我想尝试一下它背后的理论.我在网上搜索了非转弯的迷你最大树,我似乎无法找到任何东西.但是我看到很多人都在谈论使用minimax来制造mancala.

现在我理解了正常的minimax树以及每个级别如何在最小节点和最大节点之间交替.有了我现在需要的树,我会说: min > max > max > min > max如果第二个玩家得到两个转弯?

我们还需要能够指定Minimax树的给定层深度.我们还需要进行alpha beta修剪,但是一旦我实际拥有一棵树,那就是以后的修剪.

Kyl*_*nes 0

如果一方可以在一个回合中进行多次移动,那么必须有某种方法来检测它。当检测到时,让对手的移动生成器生成仅包含空移动(即不执行任何操作的移动)的列表。对手将被迫采取该行动(什么都不做),然后第一个玩家可以计算他的下一步行动。