Artificial intelligence 有可能对两个以上玩家的非零和游戏使用alpha-beta修剪吗?

Artificial intelligence 有可能对两个以上玩家的非零和游戏使用alpha-beta修剪吗?,artificial-intelligence,minimax,alpha-beta-pruning,Artificial Intelligence,Minimax,Alpha Beta Pruning,我在某个地方读到过,minimax算法可以推广到两个以上的参与者。假设我们有3个玩家,他们每个人都想最大化自己的答案。在这种情况下可以使用alpha-beta修剪吗?还是没用?为什么? 注意:游戏是非零和游戏 是的,但你必须清楚游戏机制。给定的树首先显示蓝色,然后显示绿色,最后显示红色 根据游戏机制,这里有两种方法。如果每个玩家的唯一目的是最大化他们自己的结果,那么你需要为活跃玩家求解每个等级,只考虑相关的奖励 在给定的示例中,假设奖励按顺序(蓝色、绿色、红色)列出,则红色在配对(2-4)、(9

我在某个地方读到过,minimax算法可以推广到两个以上的参与者。假设我们有3个玩家,他们每个人都想最大化自己的答案。在这种情况下可以使用alpha-beta修剪吗?还是没用?为什么?

注意:游戏是非零和游戏


是的,但你必须清楚游戏机制。给定的树首先显示蓝色,然后显示绿色,最后显示红色

根据游戏机制,这里有两种方法。如果每个玩家的唯一目的是最大化他们自己的结果,那么你需要为活跃玩家求解每个等级,只考虑相关的奖励

在给定的示例中,假设奖励按顺序(蓝色、绿色、红色)列出,则红色在配对(2-4)、(9-4)、(0-6)、(0-2)中的四个选择将是R、L、R、R;用值(8-5)、(9-3)呈现绿色
。从中,
绿色
将选择L,L<代码>蓝色
获得选择(6-8)并将做出R选择,确定游戏值(8,9,6)


然而,如果玩家还有其他动机,比如最大化总体收益(我们碰巧在上面实现了这一点)或赋予净差额价值,那么你需要使用更复杂的决策算法;同样的逻辑也适用


在一个足够复杂的游戏中,玩家是敌对的,并且动作是秘密同时进行的,你可能必须切换到“一对所有”模式,在这个模式中,每个玩家都假设其他玩家将做出最小化选择玩家回报的选择。这种最坏情况下的计划会让你回到一个简单的极大极小过程,在这个过程中,两个对手被合并成一个玩家,假装游戏实际上是一个零和问题。

从堆栈溢出的意义上讲,这不是一个与编程相关的问题。不过还是个好问题。你可能想问这个问题,因为以下原因,这是不可能的。正如问题中提到的,博弈是非零和博弈。因此,玩家之间没有竞争,每个人都想最大化自己的价值。因此,alpha-beta修剪在这里没有用处!我首先概述了您描述的游戏过程,给出了在树的每一层上所做的详细选择。如果这就是你真正需要的,那就停止阅读水平线;你完了。