国际象棋游戏的评估函数是否考虑棋盘上的所有棋子



我希望这是一个容易回答的问题,但我对国际象棋游戏的评估函数如何工作感到有些困惑。我正在使用最小最大值算法来评估叶节点处的电路板,同时考虑材料、方块表、移动性等。最小最大值算法(不是负最大值(的评估函数是否考虑板上的每个部分(黑色和白色(来计算电路板值,或者它只查看最小化器(黑色(或最大化器(白色(的碎片。

例如,我是将黑色和白色的材料相加,还是在调用 evaluate_board(( 方法时对哪一侧的轮次求和?

如果这令人困惑,我深表歉意,但我对此是新手。即使稍作澄清,也将不胜感激。谢谢。

对职位的评估可以考虑任何事情。如果你使用minimax,你可能希望负分数对白人有利,对黑人有利 - 或类似的东西。因此,如果仅使用材料进行评估,则可以将每个白色部分算作-N,将每个黑色部分视为+N。起始位置为 0。

请记住,即使进行了修剪,如果您甚至进行几层(深度(,最小最大值也可能需要很长时间。因此,评估方法越便宜或越快好。简单的材料优势恕我直言是您唯一需要的评估。

当然,国际象棋

维基有一篇关于国际象棋引擎评估部分的详尽文章:https://chessprogramming.wikispaces.com/Evaluation

最新更新