什么算法可以适用于公爵夫人(象棋这样的棋盘游戏)

我一直在寻找称为Duchess的游戏算法/方法http://www.cse.unsw.edu.au/~blair/duchess/rules.html

我正在考虑alpha beta修剪,但我不知道它是否适用于两个以上玩家的游戏。


团队和团队版本可以使用alpha-beta修剪和类似的游戏树搜索技术进行游戏,因为它是一个零和双人游戏。 你只需要把球队视为球员。

树型玩家的版本不适合标准的alpha-beta类似的游戏树搜索方法,因为它不是双人零和游戏。

问题在于,在双人游戏中,您可以使用“评估函数”来评估玩家1的给定棋盘配置有多好,例如尝试将此解释为玩家1从给定配置中获胜的“概率” “好戏。 如果玩家1的获胜概率是P,那么对于玩家2而言,这显然是1-P,所以P足以代表对棋盘配置的评估。 Alpha-beta修剪在算法的核心使用此评估值。

当你有三名球员时,这不再是明确的定义,因为玩家1从一个给定配置中获得的假设“良好”玩法的可能性取决于玩家2和玩家3是否会与玩家1共同合谋。 此外,还存在被称为“制造王”的情况,其中玩家1不能获胜,但玩家1仍然可以决定玩家2还是玩家3获胜。

对于三名玩家来说,基本上不得不采用一种方案,即将棋盘配置评估为P1,P2和P3三个值,每个值代表给定玩家达到该配置的相对偏好。 之后,您可以进行三次搜索,每个玩家都试图在搜索边界处最大化玩家的偏好值。 但是,您需要例如回答一个问题,即如果球员X因为获得比赛胜利而失去胜利,或者失去胜利者而更倾向于失败,并且如果是这样,那么多少。


我认为迷你最大值算法可以用于最大((球员数量) - 1)每次对手的回合和最小回合次数。 因此,对于一轮树木,您的树木深度等于玩家人数。在这种情况下,您必须考虑累积最大值(所有对手的最大总和)。 算法的工作将很大程度上取决于你如何进行得分。

链接地址: http://www.djcxy.com/p/56411.html

上一篇: What algorithms can be applied to Duchess (a board game like Chess)

下一篇: Beta Pruning algorithm for a Othello/Reversi game