α-β剪枝算法简单原理说明

看了一大堆文章实在看不懂,看视频也看不懂,但是看着看着突然顿悟了。这篇文章只讲大概的原理,不讲具体过程。

好了既然会搜这个算法,想必已经知道最大值最小值算法了(不知道就去搜吧)。这里直接讲例子。
在这里插入图片描述

如图,你可能会很好奇凭什么就剪那个2和G。是这样的,在搜索过程中,会先搜A,然后搜B,然后搜D,然后回到B再搜E。这其中搜完D后会告诉B,这里最大就是6了,要是之后有比6更大的就不用搜了,因为B要最小值。但是这时候B还不知道E是7,所以会搜E,E什么都没有,继续往下,搜到7。因为E要最大值,意思是再往后面搜不管怎么样E都会选个大于或等于7的,但是E选了大于或等于7的就已经比6大了,所以后面就都不用搜了,2那里就划掉了。实际上是放弃了整个E,但是搜索的时候还是会先搜一下那个7。

再来看那个被剪掉的G,搜索顺序是先从B回到A,然后搜C、E,再回到C再搜G。在B返回A的时候A还不知道C是多少,只知道要找的如果小于B(6)就不用搜了。因为C什么都没有,所以往下搜F,选最大,3,因为C要选最小的,而已经知道有个子节点是3了,所以C肯定小于或等于3,而这也就导致C肯定小于B,A要选最大的,那整个C都不用管了,所以后面也就没必要搜了,所以G以后的(包括G)都剪掉了。

大概就是这么个意思。但愿以后自己看还看得懂。。。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
α-β剪枝算法和博弈树是在人工智能中常用于博弈问题的两个重要概念。 博弈树是一种用来描述博弈过程的树状结构,每个节点表示一个游戏的状态,边表示游戏中的合法移动。从根节点开始,通过递归地生成子节点,构建整个游戏的状态空间。博弈树可以帮助我们分析游戏的决策过程,找到最优的决策策略。 α-β剪枝算法是一种常用于优化博弈树搜索的算法。在博弈树搜索过程中,我们需要评估每个节点的价值,并选择最佳的移动。α-β剪枝算法通过对搜索过程进行剪枝,减少不必要的搜索,从而提高搜索效率。 在α-β剪枝算法中,我们维护两个值:α和β。α表示当前玩家可以确保的最佳值,β表示对手可以确保的最佳值。在搜索过程中,当遇到一个节点时,我们首先评估它的价值,并更新α或β的值。如果当前节点的价值超过了对手可以确保的最佳值β,那么对手就不会选择这个节点,并且我们可以剪掉这个分支。同样地,如果当前节点的价值小于当前玩家可以确保的最佳值α,那么当前玩家也不会选择这个节点,并且我们可以剪掉这个分支。通过不断更新α和β的值,并进行剪枝,α-β剪枝算法可以快速找到最优的决策策略。 综上所述,α-β剪枝算法和博弈树是在博弈问题中常用的两个概念。博弈树用于描述游戏状态和决策过程,α-β剪枝算法则用于优化博弈树搜索,提高搜索效率。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值