首页> 中文学位 >国际象棋游戏的学习软件的设计与实现
【6h】

国际象棋游戏的学习软件的设计与实现

代理获取

目录

封面

声明

中文摘要

英文摘要

目录

第一章 绪论

1.1研究背景和意义

1.2 论文的主要工作

1.3章节安排

第二章 相关技术介绍

2.1 关于Visual C++

2.2 MFC概述

2.3 人工智能概述

第三章 国际象棋学习软件的需求分析

3.1 软件实现的目标分析

3.2 用户的特点

3.3 系统初步分析

3.4 对功能的设定

3.5 本章小结

第四章 国际象棋学习软件的架构设计

4.1 初步设计

4.2 局面表示

4.3 数据结构

4.4 走法生成

4.5 搜索算法

4.6 局面评估

4.7 窗口探测

4.8 静寂搜索

4.9 历史启发

4.10 深层迭代

4.11 静态评估算法详述

4.12 静态估值函数的缺陷

4.13 局势因子及动态局势再评估函数

4.14 动态局势再评估算法的步骤

4.15 本章小结

第五章 国际象棋学习软件系统实现

5.1 界面实现

5.2 走棋规则

5.3 胜负判断

5.4 游戏模式及限时

5.5 AI算法分析

5.6 本章小结

第六章 程序测试

6.1 系统测试环境

6.2 测试方法

6.3 测试用例设计

6.4 测试计算时间

6.5 测试结果分析

第七章 总结与展望

7.1 全文总结

7.2 未来展望

致谢

参考文献

展开▼

摘要

计算机博弈是人工智能研究领域的一个重要方面。鉴于国际象棋的复杂程度较高,人工智能的发展水平,切实的表现在计算机博弈的能力上。国际上对国际象棋的研究有卓越的成就,而电脑跟国际象棋冠军对弈并获胜,已经街知巷闻。国际象棋计算机博弈在国际上的地位不容置疑,在人工智能领域也是举足轻重。
  本人在查阅大部分关于计算机博弈,游戏程序开发资料的基础上,结合本人对国际象棋的理解,介绍如何实现一款具有一定棋力,且能双人博弈,交互友好的国际象棋学习软件程序,文中的主要工作如下:
  1.分析并总结国际象棋计算机博弈的关键技术问题,包括数据结构组成、搜索算法研究、局面评估函数还有交互界面的绘制等等。
  2.对整个系统进行初步分析,确定开发过程中要实现什么功能。文中详细写了本系统的设计,包括界面设计,局面表示,走法表示,还有胜负判断,游戏模式设置等。
  3.首先解决的是国际象棋在计算机中的绘制问题,研究如何能让计算机绘制成正确的棋盘跟把正确的棋子贴图放到正确的位置。
  4.文中还研究了游戏中的算法设计,即什么样的着法是合理的,如果程序连不合理的着法都不能检测出来,那么对手就可以利用这种着法来欺骗程序;找出所有合理着法的算法,这样程序就可以从这些着法中找到最好的,而不是随便找一种着法;比较方法,包括比较着法的方法和比较局面的方法,这样程序就可以选择最佳的着法。
  5.然后对搜索算法进行了一部分研究,首先所处的局面进行评估,得出评估值,然后通过搜索算法搜索出最佳的局面,最后进行判断,本文还提出引入置换表,开局残局库的概念,供以后扩展程序做基础。
  6.对开发出来的国际象棋游戏的学习软件Chess进行一系列的测试,防止出现低级错误
  根据本文的研究,使用MFC文档视图,基于Visual C++编写的,国际象棋是“信息完备”的游戏,因为游戏双方面对的局面是同一个局面,任何一方所掌握的棋子及其位置的信息是一样的。最后开发出一个完整的国际象棋游戏的学习软件Chess,能基本实现人机对弈,双人对弈。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号