欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    java课程设计---中国象棋对弈系统

    • 资源ID:1397908       资源大小:611.50KB        全文页数:42页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    java课程设计---中国象棋对弈系统

    1、 1 目目 录录 摘要 1 关键字 1 正文 2 1、程序设计说明. 2 1.1 程序的设计及实现 2 1.1.1搜索引擎的实现(engine包) . 2 1.1.2信息传输机制(message包) 3 1.1.3棋子(pieces包) . 3 1.2 主控模块(main包) 3 2、运行结果. 5 3、设计体会. 6 附件 7 程序代码 7 参 考 文 献 资 料 41 中国象棋对弈系统 2 JavaJava 语言程序设计实验报告语言程序设计实验报告 实验项目名称:实验项目名称:中国象棋对弈系统 作者姓名与单位:作者姓名与单位:李非 计算机 101 摘要:摘要: 本文主要是运用 java 实

    2、现具有一定功能的中国象棋对弈系统软件,主要功 能如下: a、 象棋对弈:红方先走,然后黑方再走,红黑交替,直到一方获胜。 b、新游戏:任何时候可以重新开始一盘新的对弈。 c、 悔棋:当走错棋的时候可以悔棋。 d、信息提示:提示当前信息状态。 e、 简单的帮助文档:象棋规则介绍、软件的简单介绍和编制说明 关键词:关键词:java、中国象棋对弈系统 3 正文:正文: 一 程序设计说明 1.1 程序的设计及实现 本系统主要有以下 4 个模块,每个模块对应一个程序包: 1、engine:搜索引擎包,系统的核心部分。 2、message:网络对战过程中各种消息及其传递机制的类实现包。 3、main:主界

    3、面实现包。 4、pieces:棋子及其相关类实现包。 现就各个包中的要点给与说明。 1.1.1 搜索引擎的实现(engine 包) (1) BitBoard.java:位棋盘的实现,见 2.4 节。 (2) CCEvalue.java:评价函数知识类。 本程序使用开源软件“梦入神蛋”的快速评价函数。该函数包含子力价 值和棋子所在位置的奖励值。子力价值分别是:帅-0, 仕- 40, 象-40, 马-88, 车-200, 炮-96, 兵-9。帅是无价的,用 0 表示。以马为例,位置的奖励值如 下: 0, -3, 5, 4, 2, 2, 5, 4, 2, 2, -3, 2, 4, 6,10,12,2

    4、0,10, 8, 2, 2, 4, 6,10,13,11,12,11,15, 2, 0, 5, 7, 7,14,15,19,15, 9, 8, 2,-10, 4,10,15,16,12,11, 6, 2, 0, 5, 7, 7,14,15,19,15, 9, 8, 2, 4, 6,10,13,11,12,11,15, 2, -3, 2, 4, 6,10,12,20,10, 8, 2, 0, -3, 5, 4, 2, 2, 5, 4, 2, 2 上面的每行代表棋盘的一条纵线。其中,-10 所在的位置是“窝心马”,所 以要罚 10 分。 (3) ChessPosition.java:动态局面类 包

    5、含对局过程中的动态信息, 主要实现的是 2.4 节的各类位棋盘和移子函数。 (4) MoveStruct.java:着法表示类。 (5) PreMove.java:伪合法着法生成模块,见 4.1。 中国象棋对弈系统 4 (6) MoveSortStruct.java:合法着法的生成及其排序算法,见 4.2。 (7) SearchMove.java:搜索算法,实现如下功能: 1)主置换表及开局库 2)Alpha-Beta 搜索算法 3)针对吃子着法的静态搜索算法 4)适应性空着裁剪算法:见 5.5.2,根据不同情况来调整 R 值的做法,称 为 “适应性空着裁剪” (Adaptive Null-M

    6、ove Pruning), 它首先由 Ernst Heinz 发表在 1999 年的 ICCA 杂志上。其内容可以概括为: a. 深度小于或等于 6 时,用 R = 2 的空着裁剪进行搜索 b. 深度大于 8 时,用 R = 3; c. 深度是6或7时, 如果每方棋子都大于或等于3个,则用 R = 3, 否则用 R = 2。 5)带时间控制的迭代加深搜索算法:每次加深搜索都判断时间是否够用。 6)“将军”扩展(加深)搜索算法:当搜索到己方被“将”时,增加搜 索的深度。 7)主要变例搜索算法 1.1.2 信息传输机制(message 包) 在对弈过程中(主要是网络对弈)需要在对弈双方之间传输各类信息,抽象 为各类消息。如时间规则的协定、各方的走子信息等。每方都有消息接收、消息 处理和消息发送程序 (OuterMsgReceiver、 LocalMsgReceiver, QzMessageHandler, MessageSender)。己方的 MessageSender 与对方


    注意事项

    本文(java课程设计---中国象棋对弈系统)为本站会员(毕****文)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583