首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Alpha-Beta剪枝特例?

Alpha-Beta剪枝特例?
EN

Stack Overflow用户
提问于 2017-08-20 03:52:15
回答 1查看 241关注 0票数 1

我正在尝试理解alpha-beta-pruning算法,但有一个特定的情况我不理解。

考虑到this treethis应该是解决方案。我不明白为什么用红色标记的节点的值应该是19。显然,这是一个“特例”,红色下面节点的值是19,因为3<9< 10 < 19 (这是alpha的当前值)。这随后导致上面的节点也具有值19。

这对我来说没有任何意义,因为这会表明在最右侧的子树中有一个值为19的叶子。这是不是完全错误,并且两个节点都应该具有值10?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-20 05:43:15

这个节点的值是19 (alpha的值)还是10 (子节点中的最大值),这取决于不同的alpha-beta算法中存在的变体。当最大化的值小于alpha时,一些算法将分配alpha的值,而另一些算法将分配较小的值(因此位于alpha-beta窗口之外)。类似的事情也发生在beta版本中。

无论使用哪种方法,都不会影响最佳走法的选择。存在alpha-beta窗口是为了表明,位于alpha-beta窗口之外、从下面冒出的任何值都不是重要的。已经有一个更好的变体已知。

在这种情况下,最好的变体通过根的中间子节点运行。最大化玩家可以确定至少可以达到19个。通过将10或19分配给第三个选项,可以得出相同的结论:这不是一个比我们已经拥有的更好的举措。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45775744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档