总体而言对弈程序是个系统工程,它是以下四个系统的有机结合:(1)棋盘结构,(2)局面评价,(3)搜索技术,(4)其他。以ElephantEye为例,这四个部分在程序中的比例各占25%,也就是说,每个方面都很重要。那么这四个部分应该以什么样的方式逐步建立呢?另一个公开源代码的程序VSCCP(VerySimpleChineseChessProgram)给出了一个方向,这是本很好的对弈程序设计的入门教材。尽管VSCCP在棋力上还有很大的提升空间,但是它的结构体系是比较完整的,参考下面一组公式,找到有待提升的空间,只要稍作改进就能成为ElephantEye。
棋盘结构=局面表示+着法移动+着法生成+特殊局面判断
局面评价=知识+优化的局面表示
搜索技术=完全搜索+静态搜索+启发+裁剪+选择性延伸+置换表+残局库+并行技术
其他=开局库+时间控制+后台思考+引擎协议