《VC1002五子棋游戏程序的设计.doc》由会员分享,可在线阅读,更多相关《VC1002五子棋游戏程序的设计.doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、五子棋游戏程序的设计摘 要随着科技的快速发展,以及个人计算机的普及,越来越多的人和家庭有计算机了。对于大多数的计算机使用者来说,电脑上装几个小游戏是一个很不错的选择。它不仅可以益智,还可以使人放松。而五子棋人机对战程序就是这样一个游戏。对于五子棋游戏,虽然网上也有很多,但是大多都是没有人工智能的人人对战。对于大多数的用户,这个程序将会成为他们解除疲劳,轻松娱乐的好游戏。通过对该游戏的研究,同样也可以加深对人工智能的认识和对算法的研究。论文介绍了一个人机对战五子棋程序的设计和优化过程,以及对于人工智能的实现。首先对五子棋游戏程序有一个简单的概述,同时对于机器搏弈的基本思想也做了介绍。然后对开发这
2、个程序是所用到的一些知识如五子棋游戏的基本规则以及相关术语和什么是C+、MFC库进行了介绍。在系统需求分析中我们对于两种算法,普通的极大极小值算法和alpha-beta剪枝算法进行了比较,同时对于系统的一些具体的设计做了部署。 对于模块化设计中各模块之间的组织关系以及各模块具体的实现方法进行了详细的分析和介绍,同时对于系统中一些基本的程序进行了简单的描述。关键词:人机对战,alpha-beta剪枝,估值函数 目 录第1章 引言111开发该游戏的意义112五子棋游戏程序的概述113 什么是C+214 什么是MFC库3第2章 五子棋程序设计相关知识简介521五子棋游戏的介绍5211五子棋游戏的基本
3、规则5212五子棋游戏中涉及的相关术语介绍5213五子棋游戏中关于禁手的规定622机器搏弈的基本思想7第3章 系统需求分析931项目背景932 系统设计的目标933系统可行性分析934系统设计的思想1035 普通的极大极小值算法和Alpha-beta剪枝的比较1136系统拟运行方式12第4章 系统设计与实现1341系统存在的问题及解决方法1342各模块间的关系1343搜索核心的实现1444棋形的分解以及价值大小的设定1545查表的实现1846估值函数的实现1847胜负的判断1948 减小分支因子2049界面设计20410程序运行界面截图22总 结27参考文献28致 谢29图4.9初始界面2单击游戏选项出现“开始”和“退出”两个选项,选择“开始”选项,会提示你选择黑棋还是白棋如图4.10所示。图4.10选择棋子界面3选择完棋子进入走棋界面,如图4.11所示。图4.11走棋界面4当你赢棋或输棋,分别显示如图4.12和4.13所示界面。图4.12赢棋界面图4.13输棋界面Powered by 计算机毕业论文网