基于QT的中国象棋游戏的设计与实现
技术:C++、QT等摘要:
象棋程序的实现可以分为人工智能和界面程序辅助两大部分。人工智能的部分的主要体现在计算机下棋思路,既计算机如何进行思考的并以最佳走法完成下一步,先有相应的搜索算法进行搜索,并对各种可能的走法进行估值,从中选择胜利最大的一步,而界面及程序辅助程序主要便于用户通过以前的下棋步骤,更好地调整下棋思路,从而更准确的把握整个局面。
本文首先研究了中国象棋在计算机中的表示问题,接着讨论如何产生着法的一系列相关内容。其次研究了博弈树的极大极小搜索技术及在此2基础上发展起来的Alpha-beta剪枝算法,使用QT构建界面和Visual C++ 开发工具,实现了一个中国象棋游戏的程序。
关键字:中国象棋; 人工智能;Alpha-Beta
目录:
摘要……………………………………………………………………………......I
Abstract…………………………………………………………………………….II
目录………………………………………………………………………………….1
1 引言………………………………………………………………………………………….3
1.1象棋设计的目的和意义 ………………………………………….….…..3
1.2 象棋设计研究方法…………………………………………………………..3
2 概述………………………………………………………………………………………….4
2.1 QT 简介…………………………………………………………………………...4
2.2 linux操作系统简介……………………………………………………….….5
3 人工智能算法设计……………………………………………………………….….5
3.1 棋局表示…………………………………………………………………….……6
3.2 着法生成…………………………………………………………………….……8
3.3 搜索算法…………………………………………………………………….……9
3.4 历史启发及着法排序…………………………………………………………13
3.5 局面评估……………………………………………………………………..…13
3.6 程序组装………………………………………………………………………..16
4 界面及程序辅助设计………………………………………………………..……16
4.1 界面基本框架……………………………………………………………..…16
4.2 多线程 ……………………………………………………………………..….17
4.3悔棋和还原…………………………………………………………………….18
5 系统实现……………………………………………………………………………....19
结论…………………………………………………………………………………….……23
致谢………………………………………………………………………………………...24
参考文献…………………………………………………………………………….…..25
附录…………………………………………………..…………………………………...25
包含资料:
截图:
百度网盘下载地址(金币充值):
**** 本内容需购买 ****
膜拜大神,后面的请保持队形@_@
页:
[1]