五子棋毕业论文.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《五子棋毕业论文.doc》由会员分享,可在线阅读,更多相关《五子棋毕业论文.doc(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 编号 总页数: 毕业设计专业名称: 班 级: 姓 名: 学 号: 指导老师: 二 年 月 日 基于JAVA的五子棋游戏开发*计算机工程系摘要:五子棋作为一个棋类竞技运动在民间十分流行,为了熟悉五子棋规则及技巧,以及研究简单的人工智能,决定用Java开发五子棋游戏。本系统是一个基于JavaME平台的无线网络移动端的五子棋游戏,利用JavaMEWirelessToolkit(WTK)开发包工具在无线网络移动端上实现经典的五子棋游戏。论文开始部分对无线网络移动系统开发中常使用几种开发语言和环境作了比较,说明了选择JavaMEWirelessToolkit作为开发环境的的原因并对它作了相关的介绍。并
2、展示了在WTK中打开一个项目、把源文件打包成JAR包、产生混淆包的方法和过程。在系统设计时,遵循了无线网络移动端程序的startApp、pauseApp、destroyApp的开发生命周期。在设计与实现方面,分成难度选择、游戏规则、电脑智能级别、棋盘大小等这几个模块进行实现。在开发与实现的同时也介绍了五子棋这款古老而经典游戏的游戏背景、规则以及相关特性。最终展示了无线网络移动端的游戏开发的基本开发过程和设计思路。在人机对弈中通过深度搜索和估值模块,来提高电脑棋手的智能。分析估值模块中的影响精准性的几个要素,以及提出若干提高精准性的办法,以及对它们搜索的节点数进行比较,在这些算法的基础上分析一些
3、提高电脑AI方案,如递归算法、电脑学习等。算法的研究有助于理解程序结构,增强逻辑思维能力,在其他人工智能方面也有很大的参考作用。关键词:无线网络移动端;JavaME;五子棋;游戏开发;算法;电脑AI目录1 绪论42 游戏开发环境42.1 Java的编程环境42.2 Java ME WTK52.3 WTK安装过程53 五子棋游戏设计63.1游戏背景6传统五子棋6称谓7起源73.2五子棋游戏规则及解释73.3五子棋常用术语83.4五子棋攻防九诀94 游戏总体设计104.1程序流程:105 游戏详细设计115.1操作界面设计115.1.1 界面绘制125.1.2棋盘绘制135.2游戏设置145.3
4、程序流程控制设计156 游戏调试247 总结258 参考文献251 绪论Java是由美国的Sun Microsystems公司发展出来的一套面向对象程序语言,因为它的面向对象,分散运算,跨平台等等特性,又支持多线程。使得许多用过的人都爱不释手。Java既是一种程序设计语言,也是一种完整的平台。作为一种程序语言,它简洁、面向对象、安全、健壮,以及适用于Internet技术;而作为一个平台对于符合Sun公司Java标准的应用程序,都可以在Java平台上正确运行,与程序运行操作系统无关。Java发展到今天,已从编程语言发展成为全球第一大通用开发平台,Java技术已被计算机行业主要公司所采纳。1999
5、年,Sun公司推出了以Java2平台为核心的J2EEJ2SE和J2ME三大平台。随着三大平台的迅速推出,全球形成了一股巨大的Java应用浪潮。这个五子棋游戏正是用这个平台做的,在实践中充分体现了Java面向对象给我们带来的方便。多用户聊天程序也让我们体会到了Java多线程的强大功能。2 游戏开发环境2.1 Java的编程环境首先要下载J2SE,安装后就要设置环境变量:(1)classpath类路径的设置:在桌面选择“我的电脑”单击鼠标右键,选择“ 属性”在菜单中选择“高级”选项卡,点击“环境变量”选择“系统变量”点“新建”出现两个输入框,一个为变量名,一个为变量值。在变量名输入“classpa
6、th”。变量值输入lib文件夹下的所有jar包的路径。(注意:输入前加一个“.”表示当前路径,然后用“;”隔开,每一个路径都要隔开。)(2)path系统路径同样在环境变量下,选择“系统变量”点“编辑”出现两个输入框,一个为变量名,一个为变量值。变量名为path,变量值是把bin路径加到变量值输入框内就可以了。设置完了,我们来测试一下。在开始菜单中选择“运行”,输入cmd,打开命令窗口,又称为控制台窗口(dos窗口),输入“java-version”如果设置正确会显示你当前的下载版本信息。再输入javac来执行,正确就会显示java编译器命令的参数。2.2 Java ME WTK 1. 什么是J
7、2ME Wireless ToolkitWTK 的全称是Sun J2ME Wireless Toolkit Sun的无线开发工具包。这一工具包的设计目的是为了帮助开发人员简化j2me的开发过程。使用其中的工具可以开发与 Java Technology for the Wireless Industry (JTWI, JSR 185) 规范兼容的设备上运行的j2me 应用程序。该工具箱包含了完整的生成工具、实用程序以及设备仿真器。到本文写作时为止可以获取有四个版本,分别是1.0.4, 2.0, 2.1和2.2。每个版本都包括英语,日语,简体中文,繁体中文4个语种包。1.0.4版只能够开发MIDP
8、1.0 应用程序。2.0版只能够开发MIDP2.0 应用程序。2.1版则可以同时开发MIDP1.0、 JTWI(CLDC 1.0, MIDP2.0, WMA1.1)可改用CLDC1.1或加入MMAPI1.1),自定义(自己随机组合Configuration, Profile以及Optional Package)三种环境下的应用程序。2.2版中,WTK全面的支持JTWI规范。具体的说,即MIDP 2.0, CLDC 1.1, WMA 2.0, MMAPI 1.1, Web Services (JSR 172), File and PIM APIs (JSR 75), Bluetooth and
9、OBEX APIs (JSR 82), and 3D Graphics (JSR 184);同时也可以使用该版本开发面向CLDC1.0 和MIDP1.0的应用程序。系统要求上,WTK2.2至少需要50MB可用硬盘,128MB系统RAM和800MHZ Pentium III CPU。可以在sun的官方网站免费下载。WTK2.2 下载链接: WTK是Sun提供的一个开发工具包。目前各大手机厂商往往把WTK经过自身的简化与改装,推出适合自身产品,如SonyEricsson,Nokia Developers suit等,都属于此种类型;而通过JBuilder, Eclipse等IDE,J2ME开发包工
10、具可以被绑定在这些集成开发环境中,进一步提高开发效率。2.3 WTK安装过程WTK的安装程序与普通程序一样简单,只有一点需要注意,由于WTK自身并没有附带Java的运行环境JDK,所以,在WTK安装之前你需要安装自己的JDK(我们这里选用的是JDK1.4.2)。WTK会首先自动检测当前系统已有的Java虚拟机;然后显示出当前虚拟机所在路径,在确定无误后,就可以继续了,最后安装成功后,将得到一个包括多种实用工具的开发包。WTK是用来开发MIDP的,为了让MIDlet可以顺利编译和执行,WTK必须具有CLDC和MIDP的类库,WTK可以帮助我们省去额外安装调试这些类库的时间。而不同版本的WTK包含
11、的程序库内容是不一样的,比如说2.0中包含了midpapi.jar, wma.jar, mmapi.jar,而在2.1中则变为了cldcapi10. jar, cldcapi11.jar, midpapi10.jar, midpapi20.jar, wma.jar以及mmapi.jar;在2.2中,wma.jar又细分为wma11.jar, wma20.jar。如果您在开发中需要某个特定的jar包而当前的WTK版本又没有时,您可以简单把这个jar包拷贝如当前WTK的lib文件夹即可。3 五子棋游戏设计3.1游戏背景传统五子棋传统五子棋的棋具与围棋相同,棋子分为黑白两色,棋盘为1919,棋子放置
12、于棋盘线交叉点上。两人对局,各执一色,轮流下一子,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。 因为传统五子棋在落子后不能移动或拿掉,所以也可以用纸和笔来进行游戏。 图1称谓五子棋,日文亦有“连五子、五子连、串珠、五目、五目碰、五格、五石、五法、五联、京棋”等多种称谓,英文则称之为“FIR (Five In A Row的缩写)、Gomoku(日语“五目”的罗马拼音)、Gobang、connect 5、mo-rphion”。捷克语piskvorky,韩语omok 许多国家的人对五子棋都有不同的爱称,例如,韩国人把五子棋称为“情侣棋”,暗示情人之间下五子棋有利于增加情感的交流;
13、欧洲人称其为“绅士棋”,代表下五子棋的君子风度胜似绅士;日本人则称其为“中老年棋”,说明五子棋适合中老年人的生理特点和思维方式;美国人喜欢将五子棋称为“商业棋”,也就是说,商人谈生意时可边下棋边谈生意,棋下完了生意也谈成了。 起源五子棋相传起源于四千多年前的尧帝时期,比围棋的历史还要悠久,可能早在“尧造围棋”之前,民间就已有五子棋游戏。有关早期五子棋的文史资料与围棋有相似之处,因为古代五子棋的棋具与围棋是完全相同的。在上古的神话传说中有“女娲造人,伏羲做棋”一说,增山海经中记载:“休舆之山有石焉,名曰帝台之棋,五色而文状鹑卵。”李善注引三国魏邯郸淳艺经中曰:“棋局,纵横各十七道,合二百八十九道
14、,白黑棋子,各一百五十枚”。这段虽没明讲是何种棋类,但至少知道远古就以漂亮的石头为棋子。因而规则简单的五子棋也可能出自当时,并是用石子作棋子。亦有传说,五子棋最初流行于少数民族地区,以后渐渐演变成围棋并在炎黄子孙后代中遍及开来。在古代,五子棋棋具虽然与围棋相类同,但是下法却是完全不同的。正如辞海中所言,五子棋是“棋类游戏,棋具与围棋相同,两人对局,轮流下子,先将五子 连成一行者为胜”。3.2五子棋游戏规则及解释1.黑棋先行,白棋随后。从天元开始相互顺序落子。2.最先在棋盘的横向、竖向、斜向形成连续的相同色五个棋子的一方为胜利。3.黑棋禁手判负、白棋无禁手。黑棋禁手包括“三、三”;“四、四”;“
15、连”。 黑方只能用“四、三”去取胜。4.如分不出胜负,则定位平局。5.对局中拔子、中途退场均判为负。6.五连与禁手同形成,先五为胜。7.黑方禁手形成时,白方颖立即指出。若白方未发现或发现后不立即指正,反而继续落子,则不能判黑方负。五子棋是由两个人在一起盘上进行对抗的竞技运动。在对局开始时,先由执黑棋的一方将一枚棋子落在“天元”上,然后再由执白棋的一方在黑棋周围的交叉点上落子。如此轮流落子直到某一方首先在棋盘的直线、横线或斜线上形成连续的五子或五子以上,则该方就算获胜。但是五子棋的特点是先行的一方优势大。因此,在职业比赛中对黑方做了种种限制,以利公平竞争。黑方双方的胜负结果必须按照职业五子棋的规
16、则要求来决定。3.3五子棋常用术语1.着:也称“步”。对局中把一棋子按照规则放到某一交叉点,称之为一着棋。一着棋是否完成有两种规则:(1)在执行落子舞会规则时,以行棋者的手离开棋子一着已完成。(2)在执行限时规则时,以行棋者按下棋钟作为一着完成。2.PASS:五子棋中引入的英文名称,即应该行棋的一方主动放弃此次行棋的机会,由对方继续行棋。3.先手:对方必须应答的着法,如对方形成三必须阻止形成活四。4.绝对先手:相对先手而言,即形成同色连四或嵌五,对方必须应着,就是绝对先手。绝对先手又叫“冲”。5.VCF:(Victory of Continus Four的缩写)意思是利用连续冲四取胜之意。利用
17、连续不断地冲四或嵌五德绝对先手,制止形成连五获得胜利的一种方法。在对局接近尾声或排局解题中一种常见的取胜技巧。6.追下取胜:是指白棋利用黑棋禁手取胜的战术。白1冲四,迫使黑2行成“四、四”禁手(即冲四,活四禁手),这种取胜方法叫做追取胜。7.自由取胜:追下取胜以外的取胜方法,即未利用黑棋禁手战术取胜。8.一子双杀:是指对局中一方落子后出现两个获胜点,而使对方无法防守情形。一般是有两个冲四活三点,白棋的双活三,双四均可称为一子双杀。9.阳线:棋盘上可见的横线与直线的总称。10.阴线:也称“斜线”。是棋盘上不可见的横斜线。11. “四、三”:指同时具备两个先手,其中一个四,另一个是活三。12. “
18、活三”、“嵌五”、“冲四”:参见五子棋重要棋形讲座。13. 禁手:对局中禁止使用的战术或被判为负的行棋手段。14. 开局:也称“布局”。布局阶段大体为七至十几着之内。种类繁多,职业连珠五子棋有二十四种开局。15. 局面:亦称“局势”。为对局中某一段时间内双方子力的配置情况。16. 优势:是指足以取胜的优势局面,其对方即为败势。17.妙着:对局中走出的一步精妙的着法。既合乎逻辑又出人意料,有使局面顿时改观的效果,对局势的发展及对局的质量有重大影响。18. 好着:也称“佳着”。对局中成功的某一步。19. 正着:对局的某一局面中的正确着法。20. 劣着:对局中,导致严重不利后果的一步错误着法。21.
19、 败着:也称“失着”“漏着”。对局中造成局面恶化的一步严重错误着法。22. 等着:对局中具有等待性的一步着法,主要意图是等待有利时机。23. 废着:也称“空着”。对局中不起作用的着法。实际上指浪费时间毫无疑义的错着。24. 抢先:对局中利用反活三或冲四的强制手段夺取主动权的着法。25. 打谱:按照棋谱演练着法,是提高棋艺水平的重要方法之一。26. 复局:也叫“复着”。对局结束又重演对局的过程。一般用以研究、比较双方的成败得失和着法的优劣。3.4五子棋攻防九诀博弈之道,贵在严谨;连珠之妙,贵在争先。 执黑先行,巧妙布阵,先手先机,一举成功。 执白后行,稳固防守,守中带攻,变后为先。 开局布二,力
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 五子棋 毕业论文
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内