【问题标题】:Alpha Beta Pruning AssumptionsAlpha Beta 修剪假设
【发布时间】:2014-12-12 06:15:36
【问题描述】:

我正在学习博弈树(国际象棋),并且想知道 alpha beta 修剪是否基于两个玩家是“完美玩家”的假设。如果一个不完美的人玩了一个坏棋,会发生什么?当对手并不总是选择最佳移动时,alpha beta pruning 如何工作。

【问题讨论】:

  • 根据假设,除了国际象棋引擎考虑的那些动作之外的所有其他动作可能更糟糕。情况并非总是如此,但大多数时候都是如此。这在很大程度上取决于评估标准的好坏。

标签: algorithm chess alpha-beta-pruning


【解决方案1】:

每次你有一个位置,它都可以被认为是分析树的根。 Alpha-beta pruning 的哲学是假设对手下的棋完美,因为如果对手犯了错误,那么自然而然地,计算机的情况会更好。因此,经典的 alpha-beta 剪枝假设对手是完美的,并且每当出现意外情况时,例如

  • 对手的失误
  • 发现被认为是最好的线并不是最好的

算法重新考虑位置。经典的 alpha-beta 剪枝会在每次移动发生时一次又一次地计算位置,但自然会有很大的改进:

  1. 您可以将吸引人着法的递减列表转移到下一步,如果对手做出预期的行动,您首先计算最吸引人的变化,注意,国际象棋游戏是使用每个玩家的时间进行的,并且我们应该避免时间上的麻烦。

  2. 当对手认为你可以在第二、第三等最具吸引力的变化中建立你最好的场景

  3. 国际象棋实际上是一个非常复杂的游戏。 Alpha-beta 修剪只是给你假设,它不能确定最佳移动。作为一台计算机,您可以通过计算变体中的战术野性(叉子、串子等的数量)来调整攻击性,并使用可以通过调整攻击性来添加“个性”的权重。此外,您还可以调整技巧,即计算机会选择稍差的动作以使事情复杂化并使对手更难的概率。

  4. 您可以调整时间和深度策略。

还有很多东西,但我不会在这里描述它们,因为我不想因为分享太多细节和无聊的人而迅速获得很多反对票:)

【讨论】:

猜你喜欢
  • 2021-04-15
  • 1970-01-01
  • 2015-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-18
  • 1970-01-01
相关资源
最近更新 更多