象棋小巫师有一个很好的教程,一共分为6个步骤。
其中第1、2部分为基础,说明如何表示象棋、走棋
第3部分
从第3部分开始说明如何实现电脑搜索,第3-6部分每一部分都包含了很多内容,深入调试会发现很多问题,每一部分大约都要2-4天时间来消化。
第3部分已经有很多内容,包括局面评价、alpha-beta搜索、杀棋分数、历史记录、迭代加深,已经可以走出不错的棋,但是如果跟踪下电脑思考路线就会发现很多问题,这些问题会在后面有解决
跟踪电脑搜索路径,如果玩家第一步走炮二平五,电脑思考路线如下:
时间(ms) 深度 评价 路线
0 1 81 炮2进7
0 2 -7 马2进3 炮五进四
0 3 4 马2进3 马八进七 车1平2
0 4 -7 马2进3 马八进七 马8进7 炮五进四
47 5 8 车9进1 马八进九 车9平6 仕四进五 马8进7
453 6 -14 马2进3 马二进三 炮8平5 车一平二 马8进7 炮五进四
2141 7 14 车9进1 马八进七 车9平6 炮五进四 马8进7 炮五平一 车6进8
28843 8 -17 炮8平5 马二进三 马8进7 车一平二 车9进1 马八进七 马2进3 炮五进四
120875 9 15 车9进1 马八进七 车9平6 炮五进四 马8进7 炮五平一 炮8平9 炮一退一 车6进8
1700422 10 -19 马8进9 马