职场大变样社区

5598

主题

6638

帖子

79

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
79
跳转到指定楼层
楼主
发表于 2017-9-6 10:22:07 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
技术:Java
摘要:
在最近的几年当中,我们通过改革开放引进许多新的技术,而用计算机编写的象棋程序也拥有极高的水平。20世纪的时候,有一个算法非常大的提升了机器下棋水准,alpha-beta修剪算法大家可以上了解一下,把需要走下一步棋用的搜索量降到了最低。我们通过前面学术人员总结出的经验和教训,来设计我们自己的程序,我们自己的软件。
关键词:java;象棋;棋盘;Zobrist键值;单据库;置换表;评价残局

目录:
摘  要    Ⅰ
ABSTRACT    Ⅱ
目  录    III
1 概述    1
1.1 棋盘的标记    2
1.1.1 纵线方式    2
1.1.2 坐标方式    2
1.2 棋子的名称    2
1.3 棋谱的记录方法    3
1.3.1 坐标记法    3
1.3.2 中文纵线记法    3
1.3.3 符号纵线记法    4
2 基本数据结构——位棋盘    5
2.1 什么是位棋盘    5
2.2 位棋盘的作用    5
2.3 位棋盘的基本运算    7
2.4 JAVA中位棋盘的实现    7
2.4.1 位棋盘类的实现    7
2.4.2 位棋盘的初始化    8
2.4.3 位棋盘的更新    9
3 基本数据结构——ZOBRIST键值    11
3.1 比较局面的方法    11
3.2 ZOBRIST键值的实现方法    11
3.3 ZOBRIST键值的工作原理及用途    11
3.3.1 ZOBRIST键值的工作原理    11
3.3.2 ZOBRIST键值的用途    11
3.4 JAVA中实现ZOBRIST键值    12
4 着法生成    13
4.1伪合法着法的生成    13
4.1.1 数组及其下标的含义    13
4.1.2 举例算法——车和炮的走法    16
4.2 合法着法的生成    18
5 搜索算法    20
5.1 最小-最大搜索    20
5.1.1基于最小-最大的评价函数    21
5.1.2 最小-最大搜索    22
6 程序的设计及实现    23
6.1 搜索引擎的实现(ENGINE包)    23
6.2 棋子信息的传输(MESSAGE包)    23
6.3 棋子(PIECES包)    24
6.4 主控模块(MAIN包)    25
参考文献    26
致   谢    27

论文字数:9177
包含资料:


截图:


百度网盘下载地址(金币充值):
游客,本付费内容需要支付 200金币 才能浏览支付



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

职场大变样社区 分享高质量学习资料(电子课本、毕业设计、编程视频、项目源码、电子书籍等)

快速回复 返回顶部 返回列表