基于Qt的嵌入式终端应用程序——五子棋游戏开发Word文档下载推荐.doc
《基于Qt的嵌入式终端应用程序——五子棋游戏开发Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《基于Qt的嵌入式终端应用程序——五子棋游戏开发Word文档下载推荐.doc(30页珍藏版)》请在冰豆网上搜索。
2015年05月
黑龙江八一农垦大学
本科毕业设计(论文)任务书
学生姓名
所在班级
电子2011
(1)
导师姓名
李文顺
导师职称
副教授
论文题目
基于Qt的嵌入式终端应用程序开发——五子棋游戏
题目
分类
Ö
1.应用与非应用类:
〇工程〇科研〇教学建设〇理论分析〇模拟
2.软件与软硬结合类:
〇软件〇硬件〇软硬结合〇非软硬件
(1、2类中必须各选一项适合自己题目的类型在〇内打√)
主要研究内容及指标:
1.用Qt-creator进行五子棋应用程序的设计。
1)建立主机开发环境;
2)开发应用程序;
2.将应用程序移植到arm2440开发板上。
主要参考文献:
[1]金春霞,白秋产.基于Qt技术开发与实现.北京:
中国青年出版社,2002
[2]于建新,贾世祥.嵌入式应用程序开发综合实验9例.北京:
清华大学出版社,2004
[3]基于arm2440之Linux移植开发实战指南.
[4]侯捷,孟岩.智能五子棋算法的设计实现.
[5]彭建国,张书.五子棋开局指南
阶段规划:
1.Qt的基本内容的学习,包括软件安装和库函数,API函数,组件工具的应用,信号和曹函数的运用等基本技能的理解和学习。
2.熟练运用Qt尝试进行五子棋游戏的程序编写和界面处理,学习arm的系统移植和第三方资源库的配置,学习熟悉应用程序的烧写过程。
3.全部完成五子棋游戏的应用程序,并且烧写进开发板。
最后成功运行。
开题时间
2015.3.2
完成论文时间
2015.5.24
专家审定意见:
系主任签字:
年月日
注:
1.任务书由指导教师填写后交给学生,要求学生妥善保存。
2.此任务书夹于论文扉页与论文一并装订,作为论文评分依据之。
摘要
人工智能与生物工程、空间技术并称为二十一世纪的三大尖端技术,是近几年非常活跃的研究领域之一。
它主要是研究如何使计算机去做那些只能靠人力才能做的事情。
人机对战是人工智能研究的其中一个分支,它的研究为人工智能带来了许多的重要的方法和理论,并且产生了广泛的社会和学术影响。
研究其计算机算法,可以让我们看到人工智能的雏形,也有助于我们人脑的开发。
更有五子棋的游戏源于我国,研究它不仅让更多的外国人了解五子棋,更有助于我国优秀文化的推广和传播。
本论文以五子棋游戏作为研究课题,对五子棋的算法与规则做了研究,阐述了如何在Linux下用Qt来开发实现五子棋游戏并且给出了具体实现的方法。
关键词:
五子棋Qt人工智能arm2440
—IV—
ABSTRACT
Artificialintelligenceandbiotechnology,spacetechnology,andknownasthe21stcenturythethreecutting-edgetechnology,inrecentyears,averyactivefieldofresearchisoneofthe.Itmainlystudieshowtomakethecomputerdothatonlyrelyonmanpowertodo.Man-machinewaristheartificialintelligenceresearchwhereabranch,itsresearchforartificialintelligencehasresultedinanumberofimportantmethodandtheory,andproducedawiderangeofsocialandacademicimpact.Thestudyofcomputeralgorithms,wecanseetheprototypeofartificialintelligencedevelopment,butalsohelpustohumanbrain.MoreGobanggamesourceinourcountry,theitnotonlyletmoreforeignerstounderstandGobang,butalsohelpinthepromotionanddisseminationoftheexcellentcultureinourcountry.Thispapertakesthechessgameastheresearchsubject,theGobangalgorithmandruletodotheresearch,elaboratedhowinlinuxusingQTtodeveloptoachieveGobanggameandgivetheconcretemethodofrealizingthe.
Keywords:
GobangQtartificialintelligencearm2440
前言
目录
摘要 I
Abstract II
前言 IV
1绪论 1
1.1选题的目的和意义 1
1.2课题研究的主要内容 1
1.3五子棋的一些规则和术语 1
2系统需求分析 3
2.1系统需求 3
2.2功能需求 3
2.3系统的设计目标 3
3系统开发的技术背景 5
3.1Qt技术 5
3.2arm2440开发板简介 5
3.3Linux操作系统简介 6
3.4可行性分析 6
4系统总体设计 8
4.1五子棋游戏设计原则 8
4.2五子棋游戏的总体设计结构 8
5系统模块设计 9
5.1用Qt-creator进行五子棋应用程序的主要功能实现 9
5.2将应用程序移植到arm2440的开发板上 13
6系统调试 18
6.1五子棋游戏测试概述 18
6.2系统设计和移植过程中出现的问题及解决方法 18
结论 21
参考文献 22
致谢 23
前言
在嵌入式技术的不断发展和推广下,嵌入式的应用领域也变得广泛起来。
随着IC设计的不断发展衍生出的工业化ARM芯片,可以预见ARM微处理机在未来绝对是嵌入式开发的主宰。
在开发五子棋人机对战中的计算机算法的同时,让我们看到人工智能的稚形,它有助于我们人脑的开发。
五子棋最早是我国古代先人发明的,研究它不仅可以让五子棋更国际化,还助于我国优秀文化的推广。
所以我们以五子棋游戏作为毕业设计的研究课题,更对五子棋的算法与规则做出研究,阐述如何在Linux环境下用Qt来开发五子棋游戏。
所有用户界面都采用能跨多平台的Qt图形界面设计软件进行开发实现,这是因为Qt图形界面设计具有优良的跨平台、面向对象、丰富的API、大量的开发文档等诸多优点。
目前,五子棋这一棋类运动已迅速在国际上发展起来。
现如今已经有40多个国家和地区开展了五子棋相关活动和比赛。
但由于人们对于五子棋不同的用意及使用方法,从而对五子棋的爱称也不一样,如韩国人把五子棋称为“情侣棋”,言下之意也就是说情人之间下五子棋有利于增加情感和交流;
欧洲人则称之为“绅士棋”,喻棋手下五子棋的君子风度胜似绅士;
美洲人称之为“商业棋”,意思可能是边下五子棋边谈生意,是商业贸易之桥;
日本人则称之为“中老年棋”等等。
但不同语言、地区的人们都可以借助五子棋这一简单而又深奥的棋艺进行交流、比赛,以增进友谊。
我国是上世纪90年代引进了五子棋世界规则,此后的十多年里,五子棋在民间开始迅速的传播开来。
北京是五子棋发展最早也是普及最高的地区,1992年就成立了我国的第一个五子棋民间组织——“京都五子棋社”。
在北京的带动下,我国其他地区也先后成立了五子棋组织,从此积极的投身于这项益智的游戏中,2004年成立中国围棋协会五子棋分会,它属于中国五子棋界的领导机构,并且先后在部分地区组织俱乐部,组织比赛,让越来越多的人参与和喜爱这项活动,但是中国还是没有专业的棋手,在这方面的相关规则和体系还不完善,能够真正弄懂的人还是很少,所以中国在五子棋方面的发展空间是很大的,这就需要我们不断的努力探索和研究才能把五子棋发展的更加壮大。
那么在现在网络五子棋游戏的产生也让更多的人收益,人们不仅可以和电脑下棋,还可以和异地的陌生人下棋,更可以在下棋的时候和对方交流心得,这就是我此次设计的主题,在未来的五子棋的发展来说的话,也许比赛的规则会改变,棋局会变的更复杂且所需的技巧也会越来越多,这就需要我们所有人的努力才会实现了。
1绪论
1.1选题的目的及意义
五子棋对人的智力开发有一些益处,,并且在非智力因素上的帮助也是很明显的,比如毅力、耐心、细心、思考方式等等。
五子棋起源于我国古代,有着广泛的群众基础。
但与世界先进的五子棋技术相比,我们的棋艺水平还有待进一步提高,所以我们要积极地推广五子棋,宣传五子棋。
中国作为五子棋的发源国,不仅要回到国际大家庭中,更重要的是要靠我们的力量为五子棋在下个世纪的发展起到世界性的推动作用,并为国际连珠棋成为奥运项目做出自己的贡献!
1.2课题研究的主要内容
开发主机装有Linux。
我们选择QT-embedded-2.3.4和Qtopia作为开发环境,下载RPM包并安装。
QtEmbedded和Qtopia函数库:
包含了完整的开发嵌入式Linux应用程序的核心函数库。
主要完成的任务有NFS配置及使用,嵌入式Linux开发交叉编译器的安装,Bootloader的编译与烧写,Linux内核的编译与烧写,根文件系统的烧写与NFS挂载,编译第三方库,即在开发板上Qt所用到的库文件。
安装完这些,再加上g++(GNUC++编译器),就可以进行基于Qtopia应用程序的开发、编译和调试了。
1.3五子棋的一些规则和属术语
五子棋游戏是专业围棋的变体。
五子棋的规则尽管比起那些围棋要复杂一些,但它仍旧很简单(Sakata和Ikawa,1981),这个游戏是在一个15*15的棋盘的交叉点上进行的。
垂直线用字母A到O标注,水平线用数字1到15标注。
棋盘左下方的位置的A1.黑棋白棋两位玩家轮流执他们自己的颜色的棋子放在棋盘中空的十字交叉点上。
执黑子的玩家先开始下棋,并且必须把棋子放在棋盘的正中间(H8)。
最先完成五子连线(垂直、水平或斜线方向)的玩家获胜。
五子棋中黑子有一些限制,例如,对于黑子来说有些落子是被认为禁止的,如果黑子落子被禁止不是偶然的就是被迫的,那么白子就获胜了,禁止黑子落子的情况有:
‘长连’,‘双四’,‘双三’(具体定义见第三部分)。
白子没有禁止落子的情况,所以白子也可以制造一个‘长连’来赢得游戏,如果没有选手成功的完成五子连线,并且黑子没有禁止落子和棋盘已经满了,则认为这盘游戏平局。
下面我们提供一系列术语以及他们的定义。
长连:
六个或六个以上的同色棋子连成一线,垂直方向、水平方向或斜线方向(图2“A”处)。
五珠:
精确的只有五个同色的棋子连成一线,垂直方向、水平方向或斜线方向。
冲四:
四个同色棋子连成一线(垂直、水平或斜线方