知识卡片

Alpha-Beta 剪枝用局面评估函数压缩穷举搜索

专业/工作 · 729.c

内容

棋类 AI 的直觉思路是把每一种可能的走法都展开成一棵树,一层代表自己走一步、下一层代表对手走一步,递归展开到一定深度,再挑一条对自己最有利的路径——这就是极小化极大(minimax)搜索:自己这一层挑局面值最大的走法,对手那一层假设对方会挑对自己(即当前视角)最不利、也就是局面值最小的走法。但穷举所有分支的计算量随深度指数级增长,Alpha-Beta 剪枝通过维护当前已确定的”最好下界”和”最坏上界”两个值,一旦某个分支的结果注定不会比已经找到的更优,就直接跳过,不再展开这个分支剩下的可能性,从而大幅削减需要实际计算的节点数而不影响最终选出的最优解。这一切依赖一个局面评估函数——把当前棋盘局势换算成一个数字,评估函数的准确度直接决定了搜索出来的”最优解”是否真的对局势有利,搜索算法本身不产生棋力,只是更高效地在评估函数划出的价值地形里找高点。

参考来源

《Swift全解析:新式iOS实战开发》第24章《卡牌斗兽棋》