五子棋游戏的设计.doc

上传人:m**** 文档编号:559637952 上传时间:2022-11-20 格式:DOC 页数:4 大小:26KB
返回 下载 相关 举报
五子棋游戏的设计.doc_第1页
第1页 / 共4页
五子棋游戏的设计.doc_第2页
第2页 / 共4页
五子棋游戏的设计.doc_第3页
第3页 / 共4页
五子棋游戏的设计.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《五子棋游戏的设计.doc》由会员分享,可在线阅读,更多相关《五子棋游戏的设计.doc(4页珍藏版)》请在金锄头文库上搜索。

1、五子棋游戏的设计1 引言1.1 课题背景五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为连珠,英译为Renju,英文称之为Gobang或FIR(Five in a Row 的缩写),亦有连五子、五子连、串珠、五目、五目碰、五格等多种称谓。五子棋起源于古代中国,发展于日本,风靡于欧洲。对于它与围棋的关系有两种说法,一说早于围棋,早在 “ 尧造围棋 ” 之前,民间就已有五子棋游戏;一说源于围棋,是围棋发展的一个分支。在中国的文化里,倍受人们的青睐。本世纪初五子棋传入欧洲并迅速风靡全欧。通过一系列的变化,使五子棋这一简单的游戏复杂化、规范化,而最终成为今天的职业连珠五子棋,同时也成为一

2、种国际比赛棋。Java语言是当今最为流行的程序设计语言之一 作为一门非常优秀和极为健壮的编程语言,它同时具有的面向对象,与平台无关,分布式应用,安全,稳定和多线程等优良的特征,使用Java语言,不仅可以开发出功能强大的大型应用程序,而且Java语言本身突出的跨平台的特性也使得它特别适合于Internet上的应用开发,可以这样说,Java的出现使得所开发的应用程序“一次编写,处处可用”的实现成为了可能。 1.2 本课题研究的意义近来随着计算机的快速发展,各种各样的电脑游戏层出不穷,使得我们能有更多的娱乐项目,而棋类游戏能起到锻炼人的思维和修身养性的作用,而且棋类游戏水平颇高,大有与人脑分庭抗礼之

3、势。其中战胜过国际象棋世界冠军-卡斯帕罗夫的“深蓝”便是最具说服力的代表;其它像围棋的“手淡”、象棋的“将族”等也以其优秀的人工智能深受棋迷喜爱。 越来越多的具有智能的机器进入了人类的生活,人工智能的重要性如今显而易见。自己对人工智能比较感兴趣,而五子棋游戏程序的开发实现这个课题,正好提供给我这样一个研究的机会,通过对人工智能中博弈方面的研究(人机对弈),让我在简单的人机对弈全局设计,以及具体到相关算法上有了深入的了解。人工智能属于计算机科学的领域,它以计算机技术为基础,近几十年来,它的理论和技术已经日益成熟,应用领域也正在不断扩大,显示出强大的生命力。人工智能大致可以分成几个学科,它们每一个

4、都是独特的,但是它们常常又互相结合起来完成设计任务,这时,这些学科之间的差别就变的很模糊。人工智能在专家系统,自然语言理解,自动定理证明,自动程序设计,人工智能在机器人学、模式识别、物景分析、数据库的智能检索、机器下棋(实质上是博弈论问题)和家用电器智能化等领域都有广泛的应用。而这个课题就是和人工智能中的博弈论领域紧密相关的。这个题目核心是人工智能和Socekt编程,。并且人工智能中的博弈部分,由于采用了大量的搜索算法,其中很多被利用到各方面。它的概念、方法和技术,正在各行各业广泛渗透。智能已经成为当今各种新产品、新装备的发展方向。所以,趁着这个机会,对人工智能中比较容易实现的人机博弈进行了解

5、研究学习,也是很实用且很有必要的。1.3 本课题的研究方法 在进行游戏设计之前,首先决定的第一个问题就是,使用什么开发环境来编写环境? 自己虽然比较熟悉Java语言,但是实际开发项目经验很少,所以决定用Jcreator,其拥有高亮语法编辑、使用向导以及完全定制的用户界面,最主要的是能够自动查找文件于 Main 方法或 Html 文件以支持Java 小应用程序,然后启动相应的工具。 其次确定整个程序的结构框架。由于Applet运行速度较慢,如果在加上算法搜索时间,显然不符合程序的设计要求,决定用Java应用程序开发.整个程序的功能实现流程是这样的:网络对战涉及算法较少,所以先实现网络部分,实现基

6、本的棋盘和棋子的类,添加判断胜负条件,这部是基础,也是很重要的,电脑AI也在这些基础上添加上来的。这个题目的2个功能包括2个重要算法,电脑AI和胜负条件,胜负条件运算量不大,有固定的模式。难点是人工智能,可以这样说,人工智能的好坏决定了这个题目的完成深度。所以,大部份时间花在AI算法的研究和改进上,对于算法我掌握的不多,研究了一些国内的五子棋算法,参考了一些游戏设计算法,详细比较各种算法的优缺点,而且参考了现代五子棋比赛的各种规则和技巧,尽量联系实际,努力提高电脑AI。2.1.2 规则及解释1:黑棋先行,白棋随后。从天元开始相互顺序落子。2:最先在棋盘的横向、竖向、斜向形成连续的相同色五个棋子

7、的一方为胜利。3:黑棋禁手判负、白棋无禁手。黑棋禁手包括“三、三”;“四、四”;“长连”。黑方只能用“四、三”去取胜。4:如分不出胜负,则定位平局。5:对局中拔子、中途退场均判为负6:五连与禁手同时形成,先五为胜。7:黑方禁手形成时,白方应立即指出。若白方未发现或发现后不立即指正,反而继续落子,则不能判黑方负。 五子棋是由两个人在一盘棋上进行对抗的竞技运动。在对局开始时,先由执黑棋的一方将一枚棋子的落在“天元”上,然后由执白棋的一方在黑棋周围的交叉点上落子。如此轮流落子直到某一方首先在棋盘的直线 横线或斜线上形成连续的五子或五子以上,则该方就算获胜。但是五子棋的特点是先行的一方优势很大。因此,

8、在职业比赛种对黑方做了种种限制,以利公平竞争。黑白双方的胜负结果必须按照职业五子棋的规则要求来决定。2.1.4 五子棋攻防五子棋是一项对抗性很强的运动,在开局进入五手两打后,就开始进入了白刃战,相互争夺先手,任何一方都不能掉以轻心,要尽可能少犯错误,甚至不犯错误,否则将会导致速败。众所周知,连珠五子,连五为胜。有四才能有五,有三才有四,以此类推。所以,在五子棋的对局众进攻和防守都是从“二”和“三”的争夺开始的。“好的开始是成功的一半”,这条格言用在五子棋里再合适不过了。五子棋的点的选择十分关键。五子棋实际上是通过选择最佳的落点,加上正确的落子次序,一步一步地占领各个要点,最终获得胜利。对局的早

9、期,选点的着眼点主要是使本方的棋子保持联系,为以后创造尽可能多的成三、成四的机会,同时尽量限制对方成为好形。由于在五子棋对弈过程中,通过行棋落点来控制对方的落点是可能的,比如活三 冲四的应点是可以预知的,完全有可能通过不断走出这样的先手来控制对方的着点直至胜利。所以,在对局的后期,就要在精确计算的前提下,尽早发动攻势,以取得棋局的控制权,否则一旦贻误战机,被对方抢先发动攻势,就会成为被控制的一方。当有多个攻击点可供选择时,要选择后续手段多,又不会被对方反先的着点。如果是黑方,还特别要注意进攻终被对方反击时出现的各种禁手点的可能性。 进攻分为单攻棋和双攻棋,单攻棋指单线即单行或单向的攻棋子,包括三子攻棋(活三、填四)和四子攻棋(冲四、填五)。而双攻棋指双向或双行的攻棋。包括三、三攻棋(双活三、双填四、填四活三);四、三攻棋(冲四活三、冲四填四、填五活三、填五填四);四四攻棋(双冲四、双填五、填五冲四)。五子棋的取胜思路是由一个子开始,目标是运用各种方法在棋盘上发展出五连乃至长连而取胜。在这个发展过程中必然要经过由一子到两子 两子到三子 三子到四子的过程。因此说,把各种形状和各个方面上的二 三 四等子力结构烂熟于胸,做到举一反三,是学习五子棋的基本功,更是能灵活运用五种取胜技巧的基础。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号