本科毕业论文:基于C#的五子棋毕业论文

上传人:汽*** 文档编号:480254887 上传时间:2024-01-19 格式:DOC 页数:26 大小:130.50KB
返回 下载 相关 举报
本科毕业论文:基于C#的五子棋毕业论文_第1页
第1页 / 共26页
本科毕业论文:基于C#的五子棋毕业论文_第2页
第2页 / 共26页
本科毕业论文:基于C#的五子棋毕业论文_第3页
第3页 / 共26页
本科毕业论文:基于C#的五子棋毕业论文_第4页
第4页 / 共26页
本科毕业论文:基于C#的五子棋毕业论文_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《本科毕业论文:基于C#的五子棋毕业论文》由会员分享,可在线阅读,更多相关《本科毕业论文:基于C#的五子棋毕业论文(26页珍藏版)》请在金锄头文库上搜索。

1、本科毕业论文:基于C#的五子棋毕业论文 毕业设计(论文)题 目基于C#的五子棋游戏的设计与开发 系 别 软件与服务外包学院专 业 软件技术(游戏设计) 班 级 * 学生姓名*学 号 * 指导教师 * 2012年 4月基于C#的五子棋游戏的设计与开发摘要:随着人们的生活节奏的变快,游戏已经成为人们生活中不可缺少的一部分,它不仅能使人娱乐,放松人们的心情,也能够开发人的智力。所以说休闲游戏的开发将会是大势所趋,本文主要是通过对五子棋游戏的开发来提高自己的编程能力。 五子棋游戏是一种简单大众的游戏,自从计算机实现以来,深受广大电脑玩家的喜爱,现在流行的五子棋游戏软件大多缺乏美观的界面,和容易的操作方

2、法,电脑的AI值也不是很高。本文通过C#语言在计算机图形方面的编程,设计了五子棋游戏软件,使该软件具有美观友好的截面,在人机对弈时,使电脑具有较高的智商。本游戏是以C#语言作为开发工具,采用搜索算法设计最优落子点开发的游戏软件。本文详细地介绍了五子棋游戏软件设计的全过程,描述了该软件的功能,以及和其它五子棋程序的一些比较。 关键词:五子棋、C#语言、软件Based on the C # Gobang Development and DesignAbstract:With the faster pace of life, the game has become an indispensable

3、part of life, which not only makes fun, relax the mood, but also to the development of human intelligence. So the development of casual games will be the trend, this paper is on the development of Gobang to improve their programming skills. Gobang game is a simple and popular game, since the compute

4、r to achieve, by the love of computer players, but now most popular game soft gobang lack aesthetic interface, and easy method of operation, the value of the computer AI is not high. The adoption of the C# programming language in computer graphics, designed gobang game software to enable the softwar

5、e with a beautiful and friendly interface in both game, the computer has a higher IQ. The game is based on C# language, using searching algorrithm to design best gobang. The detailed presentation of the whole process of gobang game software design, describes the software functions and procedures and

6、 other gobang other gobang some more. Key Words:Gobang、C# language、Software目录前言1第一章 需求分析2 1.1本课题研究的意义2 1.2五子棋发展史2 1.3五子棋特点及规则2 1.4五子棋常用术语3 1.5五子棋攻防4 1.6开发工具选择5 1.7 C#编程语言的介绍6 1.8 C#编程语言的特点6 1.9 Visual Studio 软件简介7 1.9.1简介7 1.9.2 Visual Studio 2005的特点7第二章 系统分析9 2.1系统调研及可行性分析9 2.1.1 系统调研9 2.1.2 可行性分析9

7、 2.1.3 技术可行性分析10 2.2设计分析10 2.2.1游戏运行说明11 2.2.2游戏规则11 2.2.3游戏操作12 2.3游戏玩法13 2.4主要模块分析14 2.4.1下棋类的实现14 2.4.2游戏输赢判断类16 2.4.3悔棋类的实现18第三章 运行测试20第四章 总结部分22致谢22参考文献24 前言 五子棋是人们喜欢的一种棋类游戏,近来,随着计算机的快速发展,以计算机作为对战平台,各种棋类游戏如雨后春笋般纷纷冒出,使得那些喜爱下棋,有常常苦于没有对手的棋迷们能随时过足棋瘾,而且这类软件个个水平颇高,大有与人脑分庭抗礼之势。其中战胜过国际象棋世界冠军?卡斯帕罗夫的“深蓝”

8、便是最具说服力的代表。 当我们与电脑对战对时,您知道这些软件是怎样像人脑一样进行思考的吗?总的来说(我们假定您熟悉五子棋的基本规则),要让电脑知道该在哪一点下子,就要根据盘面的形式,为每一可能落子点计算其重要程度,也就是当这子落下后会形成什么模型,然后通览全盘选出最重要的一点,这便是最基本的算法。当然,仅靠当前盘面进行判断是远远不够的,这样下棋很容易掉进玩家设下的陷阱,因为它没有考虑以后的变化。所以在此基础上我们需要使用好的算法是电脑能预测出今后几步的各种走法,以便做出最佳选择,这也是我们下棋时常说的“想了几步”。怎样才能达到这个程度呢?这是本文所要讨论的主要问题。作为一个五子棋游戏爱好者,在

9、使用了众多的五子棋游戏软件后,发现当今大多数五子棋游戏软件中电脑的AI值不是很高,难与人脑抗衡,这是基于以上的最基本算法扩展而出的电脑最优落子算法不够优秀而造成的。本人使用C#语言作为开发工具,在吸收别人所编的五子棋游戏软件的基础上,再融入自己的创新思想(最优落子算法的改进),编写了这个五子棋游戏,软件实现了人机对弈和双人对弈的功能,游戏软件界面美观,操作容易,电脑的AI值也较高。第一章 需求分析1.1本课题研究的意义 越来越多的具有智能的机器进入了人类的生活,人工智能的重要性如今显而易见。自己对人工智能比较感兴趣,而五子棋游戏程序的开发实现了这个课题,正好提供给我这样一个研究的机会,通过对人

10、工智能中博弈方面的研究(人机对弈),让我在简单的人机对弈全局设计,以及具体到相关算法上有了深入的了解。人工智能大致可以分成几个任务,这时,这些学科之间的差别就变的很模糊。人工智能在机器人学、模式识别、物景分析、数据库的智能检索、机器下棋(实际上是博弈论问题)和家用电气智能化等领域都有广泛的应用。而这个课题就是和人工智能中博弈论领域紧密相关的。 想要编写五子棋,首先要了解五子棋的发展史,和规则,这样才能在理解的基础上更好的编写出更优秀的五子棋代码。1.2五子棋发展史 五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“连珠”,英译为“Renju”,英文称之为“Gobang”或“FIR

11、”Five in a Row的缩写,亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。 五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。 对于五子棋与围棋的关系有两种说法,一说早于围棋,早在“尧造围棋”之前,民间就已有五子棋游戏;一说源于围棋,是围棋发展的一个分支。在

12、中国的文化里,倍受人们的青睐。古代的五子棋的棋具与围棋相同,纵横各十七道。五子棋大约随围棋一起在我国南北朝时先后传入朝鲜、日本等地。1.3五子棋特点及规则 五子棋的娱乐性强、规则简单、易学、流行性广,普通人不需长时间专门训练即可自如行棋,因此极受大众喜欢。 五子棋规则为: 第一:五子棋行棋时,黑棋先下第一子,由天元开始,后白棋在黑棋周围的交叉点的落子。接着黑方再以天元中心的25个交叉点的范围内落盘面的第三子,之后黑白双方相互顺序子。 第二:最先在棋盘线交点横向,纵向,斜向形成已方的五个棋子连续的一方为胜。 第三:出现禁手对方指出后将判负,其中包括两个或两个以上的活三,活四,长连均称之为禁手。

13、第四:禁手只对黑棋有效,白棋无禁手。 第五:黑方禁手形成时,白方需立即指出,黑方将被判负。若白方未发现黑方禁手存在而继续应子,其后指出黑方禁手不能判黑方负。 第六:黑方连五与禁手同时形成,因黑方已连成五即黑方已获胜,故禁手规则失效。 第七:在对局中,在盘上落下的子又拿起来,此动作称为拔子,若拔子将被判为负。 第八:在对局中棋子掉落在棋盘上将被判负。若推子或蹭子,以盘面第一落点为准。用手将棋子推正不算违犯规则。 第九:在对局中,一方自行中止比赛如:中途退场,将被判负。 第十:在对局中对方宣布认输,本局获胜。 第十一:超过比赛规定所用时间限制,将被判为负:正式比赛期间,迟到时间超过比赛容许时间将被

14、判负。 第十二:如下至最终一子仍不分胜负则定为平局。 第十三:中盘期间双方 同意和局提议,判定为平局。1.4五子棋常用术语二:二是五子棋的一切进攻的基础;有分为活二和死二。活二:既再下一子可形成活三的二。死二:既再下一子可形成死三的二。三:三是五子棋最常见的攻击手段。三分为活三、死三、眠三。活三:为再下一子既可变成活四的三。或三分为连三、跳三。我们通常所说的三就是指活三而言。如果是死三,将特别指出。死三:既对方有棋子在同一条线相邻交叉防守的三:死三分为三种。眠三:是死三的一种特性,它看上去相邻点没有对方棋子防守,很橡活三,由于受空间限制,不论如何发展不可能称为活四,故称为“眠三”。 反三:反三

15、不是指一种“三”的形状,而是指再阻止对方进攻的同时使自己成为一道活三的反攻,称为反三。? 四:四的形状有三种,它分为:活四,冲四、跳冲四。冲四;在同一条线上相连的相同的四个棋子,它与活四不同的是,其中的一端有对方的棋子进行阻挡,它只有再在另一端下一手棋才可以形成“连五”。 跳冲四“它的形状在“四”中是比较特殊的,一般分为两种,它的特点是同一条线上的同色的四个棋子,有一个或两个棋子与另外三个或两个棋子之间有一个交叉点的间隔,它的下一手棋只有下在间隔的交叉点上才能形象哼“连五。因此,对方的棋子防守时,也只能阻挡在间隔的交叉点上。 一子双杀:指用同一手棋同时形成两个胜点的方法。 追下取胜:是指白棋逼迫黑棋形成禁手而取胜的方法。 自由获胜:除了追下取胜以外的获胜方法,称之为自

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

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