我正在实现一个 Alpha-Beta 修剪算法,该算法将用于在奥赛罗游戏中获得最佳移动。当算法到达叶节点(即没有有效移动或达到最大深度)时,我基于此计算该节点的启发式值:
最大化玩家(运行算法并将使用算法返回的移动的玩家)在该节点的棋盘上有多少砖?(每块砖+1)
最大化玩家在这个节点有多少有效移动?(每步+10)
最大化玩家有多少个角砖?(每个角砖+100)
问题是:如果不是最大化玩家在叶子节点上交,我该怎么办?然后不可能计算他的有效动作,因为轮不到他。我可能误解了整个 alpha-beta 修剪算法,或者至少误解了启发式函数应该如何工作。有人可以给我一个提示吗?
谢谢