论文部分内容阅读
计算机博弈是人工智能研究的一个重要分支,是检验人工智能发展水平的一个重要方面。它的研究为人工智能带来了很多重要的方法和理论,产生了广泛的社会影响的学术影响。专家对其进行了大量卓有成效的研究,这其中就有电脑对抗卡斯帕罗夫等世界冠军的比赛。可以说,象棋研究在人工智能上的地位,就相当于果蝇在遗传学上的地位,举足轻重。
本文对计算机博弈中的相关技术作了一些基础性的研究,在此之上开发了一个完整的中国象棋博弈系统。论文工作主要集中在以下四个方面:
1.介绍了构成计算机博弈系统的四个重要组成部分。
文章首先研究了中国象棋的计算机中的表示问题,接着讨论了如何产生走法等一系列相关内容。其次,研究了博弈树的极小极大搜索技术及在此基础上发展起来的Alpha-Beta剪枝算法。然后,根据中国象棋知识讨论了如何定义一个针对局面优劣的评估机制,即估值函数。
2.详细研究了中国象棋博弈系统中的搜索技术。
这部分首先讨论了Alpha-Beta剪枝过程中存在的问题,提出了将后继走法按某种属性排序以使剪枝过程得到优化的方法。其次讨论了搜索算法中置换表的实现机制,并对其应用中出现的问题分别提出了解决方案。然后对Alpha-Beta剪枝的改进算法PVS算法进行了深入研究,此算法采用零窗口搜索策略,使得搜索效率进一步提高。另外,还介绍了迭代加深思想,它是提高搜索效率的另一个重要手段。
3.研究了中国象棋博弈系统中估值核心的设计。
这部分讨论了设计一个中国象棋博弈系统的估值核心需要考虑的几个方面的问题及估值函数的优化。在估值函数的优化中,提出了建立棋子价值表,将它和终点估值结合运用,提高估值的速度与精度。
4.开发了一个完整的计算机中国象棋博弈系统软件根据前面的研究,使用Microsoft Visual C++开发工具,实现了一个具有一定棋力的计算机中国象棋博弈系统软件。该系统在搜索算法、局面估值等问题上采用了改进的思路与算法,而且在系统的整体设计上也十分注重细节,整个系统的开发遵循面向对象的编程思想,具有一定的科研意义和实用价值。