欢迎来到天天文库
浏览记录
ID:39580052
大小:902.88 KB
页数:7页
时间:2019-07-06
《五子棋JAVA实验报告 (1)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JAVA实验报告课程名称:JAVA程序设计教程实验题目:五子棋院系:公共管理学院信息管理系班级:信息管理与信息系统一班学号:2013190325姓名:谢巧婷五子棋JAVA实验报告一、实验目的和要求1、能够用编程语言实现一个简单的五子棋程序2、在实际系统中使用、实现人工智能的相关算法3、进一步加深对人工智能算法的理解二、五子棋的基本常识与原理1、五子棋的基本常识与任何一种竞技棋一样,五子棋的每一局棋也分为三个阶段:开局,中局和残局。五子棋的开始阶段称为开局,或称布局。其开局阶段是十分短暂的,大约在七着与十几着之间。在
2、这一阶段的争夺中,双方的布局,应对将对以后的胜负起着极为关键的作用。在开局阶段取得的形势好坏,主动与被动,先手与后手的优劣程度,往往直接影响中局的战斗。因此积极处理好开局和开局向中局的过渡十分重要。五子棋是从一至五,逐渐布子,发展连系,同时运用限制和反限制的智慧,在连子的过程中为自己的棋子争得相对的主动权和优势,逐步扩展优势,或者从劣势转化为优势,击溃对方的防线,最后连五取胜或抓禁手取胜或迫使对方投子认负。2、五子棋比赛的相关规定(1)职业连珠规则a.黑方先下子,白后下,从天元开始相互顺序落子。b.最先在棋盘横向、
3、竖向、斜向形成连续的相同色五个棋子的一方为胜。c.黑棋禁手判负,白棋无禁手。黑棋禁手包括“三三”(包括“四三三”)、“四四”(包括“四四三”)、“长连”。即黑棋只能以“四三”取胜。有关术语解释请见图示说明。d.如分不出胜负,则定为平局。对局中拔子、中途退场均判为负。e.五连与禁手同时形成,判胜。(2)比赛中的规定和特例a.对局开始前,双方猜子,大数减小数,单数交换,偶数不换。b.白棋第一手(即盘面第二着棋)应在天元为界自己一侧布子,主要以示尊重对方,之后双方可任意行子。c.对局中双方应遵守“职业连珠五子棋规则”,如
4、出现争议,应由裁判判定。d.对局中掉子(棋子掉落在棋盘上)的一方判负。如遇推子或蹭子,以盘面第一落点为准。用手将棋子扶正不算违规。e.对局中应礼貌行棋,防止不正常声音、动作影响对方思考。f..比赛结束后,双方应将各自棋子放回原处。g.对局中如黑方出现禁手,白方应立即指出禁手点,黑方即负。如白方在黑方出现禁手后,又下一步白子,黑棋禁手则不成立了。h.比赛对局时间,双方分别为15分钟、1小时、2小时、5小时四个等级标准,超时判负。三、五子棋的系统设计1、系统用例模型设计五子棋系统应该具有选择玩家先落子还是电脑先落子的功
5、能,应该具有开始游戏和重新开始的功能,但是在这个游戏中我设定是玩家先行,玩家可以指定位置落子的功能。以上描述,用用例图在图1中做进一步描述。这部分功能,主要通过界面与系统的交互来实现。落子选择玩家先落子开始游戏玩家选择电脑先落子重新开始图1五子棋系统的玩家用例图各个用例,简单描述如下:选择电脑先落子:选择后,在游戏过程中,由电脑执黑子,先落子;玩家执白子,于电脑后落子;选择玩家先落子:选择后,在游戏过程中,由玩家执黑子,先落子;电脑执白子,于玩家后落子;落子:原则上说,只要不违反禁手规则,在玩家鼠标点击最近的
6、落子点落子,但是在本系统中,简单起见,没有考虑禁手规则;开始游戏:选择后,根据设定的电脑还是玩家先落子,开始游戏;重新开始:在游戏途中,可以选择重新开始,中断游戏并重新开始游戏。同时,五子棋系统本身应该具有棋盘绘制、棋势扫描、棋势排序、棋势评估、择位落子,以及胜负判定的功能,尤其是对于棋势排序、棋势评估和择位落子,这里是体现五子棋系统人工智能(AI)的关键之处。以上描述,用用例图在图2中进一步描述。图2五子棋系统的系统用例图各个用例,简单描述如下:棋盘绘制:绘制15*15的棋盘及相关按钮和选项,并负责电脑、玩
7、家落子后棋子的具体绘制;棋势扫描:扫描目前棋盘上的所有八个方向上的落子情况,获取整个对弈双方的棋势;棋势排序:对获取的八个方向的棋势(实际上下合一,左右合一,左下右上合一,坐上右下合一,为四个方向),进行排序,便于进行棋势评估;棋势评估:分别对电脑和玩家的棋势进行评估,量化棋势;择位落子:比较电脑和玩家的棋势,若有利于玩家,则采取“守、堵”的策略,若有利于电脑,则采取“攻、走”的策略;胜负判定:每次电脑或是玩家落子后,判断胜负情况,若出现“五子连珠”,则“连珠”一方取胜,另一方失败,游戏结束。2、系统界面
8、设计为了实现玩家的用例所需要的功能,同时又便于使用,五子棋系统的界面设计得比较简单,如图3所示。整体界面为一个15*15的棋盘。在棋盘的右侧是一些控制和提醒选项、按钮和对弈状态标签。其中,选项有“从头再来”是重新开始按钮有“做你所想”是可以由玩家设定时间,超过这个时间就算胜负。标签有“不会点我”是帮助玩家快速掌握游戏规则,“再见了”是退出游戏,可以点“悔一步
此文档下载收益归作者所有