国际象棋游戏的评估功能是否考虑了棋盘上的所有棋子?

时间:2018-03-15 23:05:57

标签: java chess minimax evaluation-function

我希望这是一个容易回答的问题,但我对国际象棋游戏的评估功能如何运作感到有些困惑。我正在使用minimax算法来评估叶节点处的电路板,考虑材料,片方表,移动性等。对于minimax算法(不是negamax)的评估函数是否考虑了电路板上的每个部分,无论是黑色还是白色,都可以计算出一个电路板值,或者仅仅看一下微型电池(黑色)或最大化(白色)的部分。

例如,当调用evaluate_board()方法时,我是否将黑白材料或者其中任何一侧的材料相加?

如果这令人困惑,我道歉,但我是新手。即使是一点点澄清也会非常感激。三江源。

1 个答案:

答案 0 :(得分:1)

对头寸的评估可以考虑任何内容。如果你使用minimax,你可能希望负分数对白色有好处,对黑色有积极作用 - 或类似的东西。因此,如果您仅使用材料进行评估,则可以将每个白色部分计为-N,将每个黑色部分计为+N。起始位置为0。

请记住,即使修剪,如果你去了几层(深度),minimax可能需要很长时间。所以更便宜或评估方法越快越好。简单的物质优势恕我直言是您唯一需要的评估。

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