- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学生毕业论文 题 目: 连珠五子棋的编程与制作 作 者: 陈 涛 指导教师: 张云老师 电子信息工程 学院 计算机 系 软件技术 专业 07 级 三 年制 1 班 2009年 12 月 9 日 目录 目录 2 主要内容简介: 3 1 引言 4 1.1 五子棋介绍 4 1.2 开发背景 4 1.3 开发环境及运行环境 5 1.3.1 开发环境 5 1.3.2 运行环境 5 2 软件架构 5 3 系统需求分析 6 4、系统流程及模块划分 7 4.1 棋盘类 7 4.2 游戏模式类 8 4.3、人工智能模块 14 4.4、声音播放模块 25 结论 28 参考文献: 29 致谢 30 主要内容简介: 基于java的单机版五子棋的游戏的总体功能是要设计出来具有精美界面的、具有人工智能的、具有玩家对弈的五子棋游戏。本系统最终的目的是建立一个具有规则的五子棋平台,使双人能在同一台计算机上对弈,以及人机对战。为了满足上面提出的功能要求,基于java单机版五子棋需要达到以下目标。 制定合法的规则,能够判断出非法操作,以使博弈公正的进行并分出胜负。 支持人机对战,能够让计算机按照游戏规则通过人工智能选择最优走法。 具有精美的操作界面方便用户的操作和使用。 具有优美的音乐增加博弈的乐趣。 连珠五子棋的编程与制作 陈涛 (甘肃联合大学电子信息工程学院07软件技术专业,甘肃 兰州730000) 摘 要:当前网络上流传的五子棋游戏功能并不尽善尽美,其中最主要的问题就是人机对战和玩家对战不能够一起实现,所以我决定开发一个既能够人机对战,玩家对战。下面就对连珠五子棋的各模块内的耦合与模块间的内聚进行分析。主要是各模块的实现全过程进行详细的分解讲述。 关键字:图形界面;人工智能;声音 1 引言 1.1 五子棋介绍 五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“連珠”,英译为“Renju”,英文称之为“Gobang”或“FIR”(Five in a Row的缩写),亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。 五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。 1.2 开发背景 当前网络上流传的五子棋游戏功能并不尽善尽美,其中最主要的问题就是人机对战和玩家对战不能够一起实现,所以我决定开发一个既能够人机对战,玩家对战。 1.3 开发环境及运行环境 1.3.1 开发环境 ADM Athlon(tm) 64 X2 1.9GHz,2GMicrosoft? Windows 7 旗舰版 JDK-1_6_0_04-windows-i586-p Eclipse-SDK-3.2.1 Myeclipse6.0-Myclipse5.5 1.3.2 运行环境 Intel? Pentium? 2及以上处理器,32M以上内存,4G以上硬盘 Microsoft? Windows? 9X/NT操作系统 800*600或以上的屏幕分辨率 安装JVM虚拟机 2 软件架构 图1.软件的总体架构 考虑到整个的下棋过程可以分为:玩家一对战玩家二、玩家对战电脑,设置己方棋盘数据这一系列过程。 3 系统需求分析 棋盘类基本功能分析 棋盘类是整个系统的核心部分,它除了负责绘制棋盘和棋子之外,还封装了人机对弈所需的人工智能算法,例如下一步的最优落子位置、判断胜负等。 总的来说,人工智能算法就是要让电脑知道在哪一点下子,这就需要根据棋盘的优势,为每一可落子的点计算其重要程度,也就是当着子落下后会形成什么样的棋型(如“冲四”、“活三”等),然后统揽全盘选出最重要的一点,这便是最基本的算法思想。当然,仅依靠当前盘面进行判断是远远不够的,这样下棋很容易掉进对方预先设下的陷阱,因为他没有考虑以后的变化,所以在此基础上加入递归调用,及在电脑中预测出今后几步的各种走法,以便作出最佳选择。 下面是五子棋人工智能部分的核心算法。 首先是数据结构:建立一张表用已记录棋子信息,这里使用一个15*15(15*15是五子棋棋盘的大小)的二位数组Table[15][15],数组的每一个元素对应棋盘上的一个交叉点,用0表示空位、1代表己方的子
文档评论(0)