本文讲述笔者对 负值最大与 Alpha-Beta 剪枝的结合 的理解,代码参考计算机博弈-象棋百科全书:Alpha-Beta 搜索,感谢作者与译者
由于本人知识浅薄,难免有解释不当的地方,还请您带着怀疑的态度阅读本文,如有不当之处还请不吝指正
前置内容
此处对极大极小算法与 Alpha-Beta 剪枝不再赘述
可参考博弈游戏的AI设计(一):极大极小树
博弈游戏的AI设计(二):博弈树与 α-β 剪枝
负值最大算法
负值最大是对最小-最大的一种优化,它使得代码形式十分简洁:
int NegaMax(int depth) {
int best = -INFINITY;
if (depth <= 0) {