军旗游戏的设计与实现

 2022-02-06 19:08:12

论文总字数:19549字

摘 要

本文详细介绍了一个运用Eclipse开发工具和java语音编译,在windows环境下运行的二国军棋游戏的设计与实现。该二国游戏军棋游戏主要研究与实现了二国军棋游戏。主要分为棋盘部分与AI部分。棋盘的部分主要包含了棋盘与棋子的数据结构,根据军棋的规则在计算机上实现了军棋游戏的走棋与吃棋操作。AI部分包括AI走法的判断,运用了Alpha-beat博弈搜索树,AI的思路将军旗游戏当做明棋来下,不考虑不完全信息博弈,当在做决策时,设计了对当前的棋局进行评估和分析的评估函数。

最后实现了二国军棋简单的人机博弈。

关键词:Eclipse 军棋 游戏 人机博弈 java

Design and implementation of military chess

Abstract

In this paper, we describe the design and implementation of a Erguo game-playing system based on windows, which introduces the technology of Eclipse and java. This game-playing system mainly focuses on man-machine gambling, including the study of interface and engine. The interface is used for visualization of human-computer interaction. It includes some buttons like chessboard and submission. The engine, however, is in charge of arithmetic. It is responsible for judgment of AI tread and data structures of chessboard and pieces. Erguo is a double-person gaming. Different from Chinese Chess, Erguo is a game of incomplete information. In this game model, participants are not fully aware of all the information about the game. As a matter of fact, they must conduct

An assessment when they make decisions.

目录

第一章 绪论 4

1.1引言 4

1.2博弈算法的当今研究状况 4

1.3人机博弈的现状 4

1.4军棋游戏介绍 5

1.4.1军棋游戏简要介绍 5

1.4.2走棋的规则 6

1.4.3.吃子的规则 6

1.4.4.判断胜负的条件 6

1.4.5.游戏的特点 6

第二章 人机博弈的AI设计 8

2.1常用的博弈搜索算法 8

2.2具体实现算法的思路 10

第三章 军棋游戏棋盘的设计与实现 12

3.1开发运行环境 12

3.2设计要求 12

3.3该游戏软件各个功能的简要介绍 12

3.4军棋游戏的地图设计与实现 13

3.5军棋游戏中棋子的设计与实现 15

3.6军棋游戏中棋子摆放的设计与实现 16

3.7开始游戏前棋子的布局生成与调整的设计与实现 17

3.8军棋游戏中棋子行走操作的设计与实现 18

3.9军棋游戏中吃子时的设计与操作 21

3.10军棋游戏中认输与跳过设计与实现 23

3.11军棋游戏中一盘游戏结束后棋盘的重新生成 23

第四章 游戏测试 25

4.1什么是软件测试 25

4.2棋子的初始化测试 25

4.3棋子移动的测试 25

4.3棋子吃棋的测试 26

4.4判断胜负的测试 26

总结与展望 27

参考文献 28

第一章 绪论

1.1引言

游戏已经成为了现在人们生活中的一种社会形式,具有一定的人际互动的重要作用,而游戏内容的丰富程度也日益见长。自上一个世纪的90年一直到今天,个人电脑、平板电脑还有越来越多的可携带智能设备的普及,不论是当年流行一时的“俄罗斯方块”还是近年来的“植物大战僵尸”、“2048”等。不知不觉之中游戏已经成为了我们生活中不可或缺的一个部分。在生活中,我们甚至可以看到在宿舍里,在地铁、公车上拿着许多使用着可携带智能设备的人们沉浸在游戏之中。而棋类游戏由于竞技性强,上手容易等特征,棋类游戏的需求日益增加,如今已经占据了十分庞大的市场,其中军棋游戏就是在国内当前十分流行的一款棋类游戏之一,备受具中国玩家的喜爱。[[1]]同时军棋也作为中国的一种特色文化,它不仅仅包含了文化,还包含了科学、文化、竞技于一身。适合各个年龄段的玩家来进行博弈,在博弈中,不仅仅可以锻炼自己的思维,增强自我的竞技意识,还可以感受到棋类游戏的魅力。

1.2博弈算法的当今研究状况

博弈论别名为对策论,其实早有古人摸索出了博弈论的思路,从我国最早的兵书《孙子兵法》中,就已经体现出了许多当今博弈论思想,甚至可以称之为我国最早的博弈论著作。[[2]]一般来说,博弈论是两个人在平等的对抗中,根据对方的策略来分析与调整自己的策略,最终达到获胜的目的。

人机博弈的主要内容就是博弈树的搜索算法,博弈树搜索算法也是近年来人机博弈研究的核心部分。在游戏的博弈过程中,其实我们作为玩家的思路就是根据当前棋局的局势进行分析判断,思索下一步棋有哪一些可能性的走法,然后设想自己根据这种走法后,对手会如何进行应对,就可以形成一颗博弈树,一般来说一个玩家构思的博弈树的深度越深,代表该玩家的棋艺愈精湛。因此在程序设计之中,实现的博弈搜索树的深度越深,也可以简单认为是该AI的智能程度越高,但在实际设计中我们发现博弈树的深度到达一定程度之后就超出了计算机可以计算的范围。

1.3人机博弈的现状

人工智能中的一个重要研究方向就是人机博弈。其实早在上一个世纪的四五十年代,就有许多计算机软件的人才想要去实现机器和人之间的博弈。随着时间的推移,IT行业与互联网的急速发展,游戏产业更是占据了重要的一席之地。人机博弈的游戏种类繁多,但是它们都具有共同的特点:都是由人们运用计算机软件技术来进行分析与设计,经过不断的修改与优化,越来越成熟的AI技术浮出水面,这种人机博弈的“智商”水平已经可以达到了与人难分高低的程度,丰富且满足了许多人的个人爱好。因此人们也逐渐喜欢上了这类人机博弈游戏,不论老少、不论男女都能被人机游戏博弈的魅力所吸引,在与AI对战的过程中感受到的乐趣丝毫不亚于与人博弈,甚至挑战AI成功以后的喜悦感、成就感相比与人博弈还有过之。[3]近期,谷歌的超级人工智能谷歌AlphaGo(又称为阿尔法狗)在2016年的3月份与著名的韩国顶级围棋冠军李世石进行了5把人机博弈,让人们感到惊讶的是,AlphaGo最终以4比1的总比分获得了这场人机博弈的胜利。由此可见当今的人工智能技术已经上升到了可以与人类智慧相抗衡甚至在某方面略胜于人类的程度,当今的人工智能技术已然引起了世人十足的关注。

如今,象棋,围棋,五子棋,都已经实现了十分强大的电脑对手,可以说是让大部分棋手望而却步,而不少棋盘类游戏却鲜有强大的AI,由此可见人工智能拥有一定的局限性,解决了一种棋的问题同时不一定能够解决其他棋类游戏。因此人机博弈作为人工智能的一个重要领域,其中值得我们研究的地方还有很多,而人工智能的发展已经成为当今社会的必然。

1.4军棋游戏介绍

1.4.1军棋游戏简要介绍

军棋是深受我国玩家喜欢的一款棋类游戏。同时军棋具有十足的中国特色,这种棋类游戏可以分为两人一对一的大战,也可以是四人二对二大战的游戏模式。当进行四人大战模式时,四个人的棋子分别占据棋盘上下左右其中的一侧,分成两方,相对着的两家结成联盟,相互合作,与另外的两家进行博弈对抗。而进行两人对战模式时,只需要占用地图的上下两侧,相互对战,每一种不同的游戏模式分别对应了不同的规则与玩法。四国军棋的游戏地图如图1.1。

剩余内容已隐藏,请支付后下载全文,论文总字数:19549字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;