围棋游戏的设计与实现-演示文稿_第1页
围棋游戏的设计与实现-演示文稿_第2页
围棋游戏的设计与实现-演示文稿_第3页
围棋游戏的设计与实现-演示文稿_第4页
围棋游戏的设计与实现-演示文稿_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

围棋游戏的设计与实现,围棋,围棋是中华民族传统文化中的瑰宝,它体现了中华民族对智慧的追求,古人常以“琴棋书画”论及一个人的才华和修养,其中的“棋”指的就是围棋。被人们形象地比喻为黑白世界的围棋,是我国古人所喜爱的娱乐竞技活动,同时也是人类历史上最悠久的一种棋戏。由于它将科学、艺术和竞技三者融为一体,有着发展智力,培养意志品质和机动灵活的战略战术思想意识的特点,因而,几千年来长盛不衰, 并逐渐地发展成了一种国际性的文化竞技活动。 围棋的规则十分简单,却拥有十分广阔的落子空间,使得围棋变化多端,比其它棋类复杂深奥。这就是围棋的魅力所在。下围棋对人脑的智力开发很有帮助,可增强一个人的计算能力、创造能力、思维能力、判断能力,也能提高人的注意力和控制力。下围棋对儿童少年的智力发展起到积极作用,使他们能更好的分析事物。,研究背景,意义,越来越多的具有智能的机器进入了人类的生活,人工智能的重要性如今显而易见。自己对人工智能比较感兴趣,而围棋游戏程序的开发实现这个课题,正好提供给我这样一个研究的机会,通过对人工智能中博弈方面的研究(人机对弈),让我在简单的人机对弈全局设计,以及具体到相关算法上有了深入的了解。人工智能属于计算机科学的领域,它以计算机技术为基础,近几十年来,它的理论和技术已经日益成熟,应用领域也正在不断扩大,显示出强大的生命力。 这个题目核心是人工智能和Socekt编程,。并且人工智能中的博弈部分,由于采用了大量的搜索算法,其中很多被利用到各方面。它的概念、方法和技术,正在各行各业广泛渗透。智能已经成为当今各种新产品、新装备的发展方向。所以,趁着这个机会,对人工智能中比较容易实现的人机博弈进行了解研究学习,也是很实用且很有必要的。 Java语言是当今最为流行的程序设计语言之一 作为一门非常优秀和极为健壮的编程语言,它同时具有的面向对象,与平台无关,分布式应用,安全,稳定和多线程等优良的特征,使用Java语言,不仅可以开发出功能强大的大型应用程序,而且Java语言本身突出的跨平台的特性也使得它特别适合于Internet上的应用开发,可以这样说,Java的出现使得所开发的应用程序“一次编写,处处可用”的实现成为了可能。,设计内容,此设计是一个小游戏(围棋)的实现,主要运用了GUI(用户图形界面)API(应用程序接口)来实现。此程序没有用到图片的引用,棋盘和棋子的设计完全是应用函数绘制, 再加入复选框,按钮,标签及实现本游戏的用户界面布局。 在页面上通过单纯的JCreator实现的下棋程序,能够实现提子,打劫等简单的下棋功能。更好的掌握java编程以及布局和设计。通过课程设计把课堂上讲的内容融会贯通,学会设计程序、开发应用软件、开发系统软件等各项工作。通过实习掌握语言的语法结构,理解类和对象的概念,准确的使用各种数据类型,对面向对象中的继承和多态的概念要理解、会使用,在程序中提高代码的重用性,使设计的程序结构清晰、易于维护。,任务,1综述围棋游戏的系统结构,功能实现;2了解java的布局和设计,主要是GUI(用户图形界面)和API(应用程序接口)等相关技术;3熟悉java开发工具myeclipse的使用和开发环境;4设计并实现围棋对弈游戏界面和部分功能;5. 深入分析编写围棋游戏的关键技术与编写语言java的设计流程,论文插图,界面设计流程图:,论文插图,运行流程图:,论文插图,库存管理功能模块图:,论文插图,运行界面:,论文插图,获胜者:,系统主要功能,主要功能包括: 1、能够在局域网上实现多人在线对战。 2、能够实现单机版游戏对战。开始游戏之后: 1、用户双方选择白棋和黑棋。 2、任何一方可以随时随地认输,游戏结束。 3、要实现围棋最基本吃掉对方的法则。,系统开发及运行环境,硬件平台: 惠普6450B软件平台: 操作系统:Windows 7旗舰版。 开发工具包:JDK Version1.6.0_13 MyEclipse8.5 分辨率:最佳效果1024768像素。,系统首页展示,结论以及展望,围棋对弈系统的研究与实现为进一步进行计算机博弈打下了一定的基础。但该系统目前仍有许多问题亟待解决,例如,对死活库的建立,可以为将来系统进一步判断死活打下基础,达到真正智能化,并进一步实现“人-机”对弈。毋庸置疑,这是一个很有研究价值的领域。 多次获得计算机围棋世界冠军的“手谈”开发者陈志行教授在电脑围棋门径中提到了设计计算机围棋的方法:第一,显示棋盘棋子及其他必须显示的内容;设置黑白选择、进子及有关的功能。第二,设置计算和记录棋子串气数的功能,赋予提子和禁着的功能。第三,设计一种函数,表征每个棋子对周围的影响,用以划分势力范围,作为静态形式判断的基础。第四,要对盘上各着点分别试进黑子和白子,比较进子前后的静态形势,以估算该点的进子价值,成为着点选择的基本依据。还要设置棋谱记录、计时、发声、显示形式对比、计算胜负等功能。“首先必需完成前两个部分,其次先解决后两个部分,这样程序就算是基本会下棋了”。 围棋对弈系统的设计完成了前三个部分,故本系统下一步的工作要解决第四部分的内容,分别对棋局中的各点着黑子和白子,并对落子前后的静态局面形势进行比较,进而估算该点的着子价值,以此作为基本依据进行着点选择,其中还包括算法优化问题,以进一步提高系统的效率。,参考文献,主要参考文献(资料): 1 Java网络编程实例教程,清华大学出版社,冯博等,2005 2Java网络编程实例教程,清华大学出版社,冯博等,2005.1 3赵文靖编著.Java程序设计基础与上机指导.清华大学出版社,2006 4(美)Rogers Cadenhead. Java编程入门经典.梅兴文译.第4版.人民邮电出版社,2007 5(美)Bruce Eckel编.Java编程思想第3版.机械工业出版社, 2005 6陈国君等编著.Java2程序设计基础.清华大学出版社,2006 7朱喜福等编.Java程序设计.人民邮电出版社,2005 8(美)Doug Lea著.Java并发编程:设计原则与模式.中国电力出版社译。2004 9李芝兴,杨瑞龙编.Java程序设计之网络编程.清华大学出版社,2006 10赵越超.应用JSP技术开发Web应用程序J. 中国金融电脑. 2002,致谢,在本次毕业设计过程中,得到了指导老师王华老师和毛勤斌老师的指导与支持。在此特别感谢我的指导老师。指导老师的悉心指导和大力支持,在总体结构、功能的把握上给予了非常大的帮助,同时根我提供了非常优越的设计环境,并对我在编程、设计等细节工作上给予了耐心的指导,对于我顺利完成这次毕业设计起到了关键性的作用。 我还要感谢我的母校太原理工大学,以及在大学四年生活中给予我关心和帮助的老师和同学,是他们教会了我专业

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论