1、简单的说明:一开始α和β是负正无穷,α表示到目前为止路径上发现的MAX的最佳(即极大值)选择,β表示到目前为止路径上发现的MIN的最佳(即极小值)选择。

α-β搜索中不断更新α和β的值,并且当某个节点的值分别比目前的MAX的α或者MIN的β的值更差时剪裁此节点剩下的分支(即终止递归调用)。

2、开始:每一个节点上都标明了可能的取值范围,先从B下面第一个叶节点3开始,这时作为MIN节点的B值最多为3。如下图所示

3、B下的第二个值为12,比3大,由于B想要最小值,则不考虑12,但却是会拿12与3作比较,所以12也会被算法计算到,此时MIN还是为3,8同理。此时已观察了B的所有后继,确定了最终的B的值为3,如下图所示。

4、当C下面第一个后继为2,则C的MIN最多为2,此时B的值为3大于C的2,由于A要选MAX值,最少就是3不会再考虑C了,即C的另外两个后继不论是取何值,均不会再考虑了,此时我们就把C的另外两个后继裁剪掉,这就是α-β剪枝的实例。如下图所示。

5、D下面第一个值为14,则D的值最多为14(比B的3要大,则继续向后探索),如下图所示。

6、D继续向后探索,第二个值为5比14小,则D最大为5(此时仍比B的3大,继续向后探索),D的最后一个后继是2,则D最后的值为2,小于B的3,则最终MAX在根节点的决策是走向值为3的B节点。如下图所示。

7、还可以把这个过程看作对MINIMAX公式的简化。根节点的值计算如下:

MINIMAX(root) = max( min(3, 12, 8), min(2, x, y), min( 14, 5, 2) )

= max( 3, min(2, x, y), 2)

= max(3, z, 2)      其中z = min(2, x, y) <= 2

= 3

其实可以理解为B,C,D需要各自后继的最小值,A需要B,C,D的最大值。

转载请与本人说明情况。

如果你也觉得很不错,那就请一键三连吧~

阿尔法α-贝塔β剪枝相关推荐

  1. 基于阿尔法贝塔剪枝算法的五子棋_C4.5算法剪枝2

    作者:柏安之    封面:自己想吧 1 悲观错误剪枝 在讲解悲观剪枝思路的时候,将会运用统计学的相关知识,所以我们将对这部分知识进行粗略的复习,再进行悲观错误剪枝的学习. 首先,我们认为决策树构建期间 ...

  2. 怎样做一道阿尔法贝塔剪枝的题(图解)

    写在前边 现在的时间:2019-06-20 不讨论原理,不说为什么,只讲怎么做这道题. 上学期就是说要考这个,结果没考,这学期又说要考,不知道考不考.记下来,万一再说下学期考呢. 概念与做题依据 概念 ...

  3. 阿尔法贝塔阀原理_α是阿尔法,β是贝塔,那接下去呢?

    展开全部 1 Α α alpha a:lf 阿尔法 2 Β β beta bet 贝塔32313133353236313431303231363533e78988e69d833133336566626 ...

  4. 阿尔法贝塔阀原理_臭氧投加在污水处理中的应用_美国阿尔法Alpha

    首页 > 新闻列表 > 正文 发布时间:2020-12-09 07:11:40 浏览: 77 导读:美国阿尔法Alpha为您提供臭氧投加在污水处理中的应用的相关知识与详情: 自动控制. 减 ...

  5. 阿尔法贝塔阀原理_图总结 - 阿尔法个贝塔 - 博客园

    一.思维导图 二.概念笔记 图的存储结构 1. 邻接矩阵 定义:设图G有n (n大于等于1) 个顶点,则邻接矩阵是一个n阶方阵. 当矩阵中的 [i,j] !=0(下标从1开始) ,代表其对应的第i个顶 ...

  6. 人工智能——阿尔法元

    AlphaGo Zero 思考再三,决定研究一下 AlphaGo Zero,并把 AlphaGo Zero 的思想运用到五子棋 中,毕设就决定做这个. 后文: 蒙特卡洛树搜索(MCTS)代码详解[py ...

  7. 【OI备忘录】dalao博文收藏夹

    [dalao学习笔记总览] [数学] 矩阵树定理Matrix_Tree:矩阵树Matrix-Tree定理与行列式 杨氏矩阵:杨氏矩阵和钩子公式 Hall定理:Hall定理学习小记 最小支配集,最小点覆 ...

  8. 【人工智能算法从图解入手】

    作为Grokking Deep Learning <深度学习图解>的译者,当清华大学出版社编辑诚邀我来翻译这本有关人工智能的图书时,对于要不要接手,我其实犹豫了良久一虽然深度学习如此火爆, ...

  9. 人工智能:极大极小算法

    用Python实现极小极大算法(和Alpha-beta剪枝) 你会学到什么 极大极小算法 极大极小算法在Python中的实现 阿尔法-贝塔剪枝算法 Alpha-Beta剪枝算法在Python中的实现 ...

最新文章

  1. mysql数据库c 操作o_linux下c操作mysql数据库。gcc报错。谁能帮忙看下啊。
  2. spring开发_Spring+Struts2
  3. python_Django之模板模型
  4. ZooKeeper架构设计及其应用要点
  5. NYOJ 309 BOBSLEDDING(dp)
  6. 数组排序(选择排序和冒泡排序)
  7. 【C语言】中的版本规范(C89 C99等)
  8. 二次与三次B样条曲线c++实现
  9. zebradesigner2教程_ZebraDesigner pro 2免费版
  10. 手机qq下载文件地址
  11. CSS案例——静态网页制作
  12. 【论文笔记】视频分类系列 Temporal Relational Reasoning in Videos (TRN)
  13. 身高预测和体脂判断,选择结构练习,C语言
  14. CDH Parcels 离线安装
  15. 异常org.apache.ibatibinding.BindingException: Invalid bound statement (not found): com.sxt.mybatis.map
  16. 查看linux当前屏保文件夹,linux下屏保设置
  17. Flutter _ 状态管理指南篇,Android开发两年
  18. 泊松分布,指数分布介绍以及其联系与区别
  19. html+css语法基础
  20. ubuntu:软件包

热门文章

  1. Python 斐波那契数列 及 杨辉三角
  2. NAND Flash硬件原理
  3. SVN命令--命令大全
  4. 815. 打印字符串
  5. 笔记本HDMI1.4 1080p下外接高刷显示器的实现方法之一
  6. pv uv vv cv 的区别
  7. 使用redis的setnx可以非同一线程进行加锁和解锁(附源码)
  8. 软件缺陷报告与JIRA工具使用学习笔记
  9. STM32第一课(Keil, Type, macro)
  10. RS485通信学习笔记