个人对Alpha-Beta搜索算法的理解

Alpha-Beta是对Max-Min搜索的剪枝。
那么Max-Min究竟是什么呢?
这个Max-Min算法可以应用于很多棋类游戏,例如五子棋。

博弈树

五子棋很明显的一个特点就是,你将尽最大努力在横竖斜方向使五个棋子连续排在一起,而你的对手将对你穷追堵截,最后谁先达到目标谁就获胜。
棋类游戏都有一个特点,你下一手,我下一手,那么如何使我下的每一手棋都是最优呢?枚举。
枚举出现在棋盘上我能下的每一手棋,在我下的每一手棋的基础上再去穷举对手的所有下法。。。如此下去,再由结果重新回溯至当前棋盘,就能知道当前棋盘的最优步。在这个枚举的过程中,一个棋盘衍生出N个棋盘,N个棋盘再衍生,这就是一个N叉树,也就是一颗博弈树。在每个棋盘当中,我们先规定有个分值,对应于这幅棋盘,对于我方而言,自然是分值越高,棋面越优。至于如何计算这个分值,这个过程就叫评估函数,这里暂且不提,每个棋类游戏的评估函数都不同。我们先假设我们已经有了每个棋盘所对应的分值,那么接下来的任务就是从博弈树中找到我们想要的分值。

Max-Min搜索

AB两个选手下棋,以A为思考对象,肯定想要使得棋面分数尽量地高,但对B而言,恰好相反。即矩形节点每次都想从子节点中取得极大值,而圆形节点则每次想从子节点中取得极小值。如下图代表下棋过程各个棋面的变化过程,假设已经知道了叶子节点棋盘的各分值,计算出根节点的分值应该不难,4B1=Min(3,17)=3,4B2=Min(2,12)=2,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值