登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 理工学类 > 自动化 > 正文

智能五子棋对弈系统设计与集成毕业论文

 2020-02-18 11:55:00  

摘 要

自古以来,棋类游戏以其独特的方式锻炼和提升人们的思维能力,吸引人们娱乐其中。在互联网没有普及之前,棋类游戏只能与好友当面进行;随着互联网的发展和普及,棋类游戏结合到了互联网当中,借助互联网的通讯便捷性,使得棋类游戏不再局限于面对面,而更是面向连接相距遥远的两方。直到如今,随着互联网进一步发展和智能机器人技术的兴起,互联网游戏与智能机器人技术的结合到了一起,使得服务人类的机器人无需在本地搭载强大的算法,只需要搭建一个互联网的通讯接口,通过互联网接口连接远端服务器上强大的智能算法,机器人就能为人类提供优质的服务。由于服务器端能够提供更强大的计算资源,这样的结合不仅能缩减智能机器人的生产成本,也将使机器人更加智能,为人类提供更优质的服务。这将推动智能机器人的进一步普及,也将推动游戏行业的进一步发展。

因此,本设计根据上述思想,搭建一个不仅能在网页中对战,也能在现实条件下对战的智能五子棋人机对弈系统。

本设计的主要工作为:

首先,通过互联网和学校图书馆对Web开发进行学习,了解常用的开发语言、开发框架,完成基本的开发知识积累;

然后,根据已掌握的知识和本系统的功能需求构建前后端开发理论模型,选定uni-app作为前端框架,flask作为后端开发框架,并采用WebSocket通讯方式;

再者,根据设计方案搭建系统,包括前端界面编写、后端服务器搭建和WebSocket通讯平台的搭建。

最后,进行系统验证。对弈智能体系统、机器人落子系统、棋盘落子图像识别系统以及前端页面通过WebSocket与后端服务器构建连接通道,系统最终实现在线好友对弈、在线人机对弈的功能,以及搭配其他系统实现在真实条件下实现人机对弈。

关键词:WebSocket;五子棋;人机对弈;flask;uni-app;

Abstract

Since ancient times, board games have trained and enhanced people's thinking ability in a unique way to attract people to entertain. Before the Internet became popular, board games could only be carried out face to face with friends. With the development and popularity of the Internet, board games were integrated into the Internet. With the convenience of communication on the Internet, board games are no longer limited to face-to-face. It is more open to the two sides of the distance. Until now, with the further development of the Internet and the rise of intelligent robot technology, the combination of Internet games and intelligent robot technology has enabled robots that serve humans without having to carry powerful algorithms locally. They only need to build an Internet communication interface through the Internet. The interface connects to powerful intelligent algorithms on the remote server, and the robot can provide excellent service to humans. Because the server can provide more powerful computing resources, this combination can not only reduce the production cost of intelligent robots, but also make the robots more intelligent and provide better services for human beings. This will promote the further popularization of intelligent robots and will further promote the further development of the game industry.

Therefore, based on the above ideas, this design builds a smart Utopia man-machine game system that can not only play against the webpage but also compete under realistic conditions.

The main work of this design is:

First, learn about Web development through the Internet and school libraries, learn about common development languages, development frameworks, and complete basic development knowledge accumulation;

Then, based on the knowledge acquired and the functional requirements of the system, the front-end development theory model is constructed, uni-app is selected as the front-end framework, and the flask is used as the back-end development framework, and WebSocket communication is adopted.

Furthermore, the system is built according to the design scheme, including front-end interface writing, back-end server building and WebSocket communication platform.

Finally, perform system verification. The game agent system, the robot drop subsystem, the chessboard image recognition system, and the front-end page establish a connection channel through the WebSocket and the back-end server. The system finally realizes the function of online friend game and online man-machine game, and is implemented under real conditions with other systems. Realize the man-machine game.

Keywords: WebSocket; gobang; Man-machine game; Flask; uni-app;

目录

摘要 I

第1章 绪论 1

1.1 研究背景及意义 1

1.2 国内外研究现状 2

1.3 本文主要研究内容与结构 3

第2章 Web开发理论基础 4

2.1 前端开发工具 4

2.2 前端开发的相关技术 4

2.2.1 uni-app前端开发框架 4

2.2.2 view视图组件 4

2.2.3 canvas画布组件 5

2.2.4 form表单组件 5

2.2.5 WebSocket互联网通信协议 5

2.3 后端开发的相关技术和工具 6

2.3.1 flask后端开发框架 6

2.3.2 nginx服务器 6

2.3.3 MySQL数据库 6

2.3.4 supervisor进程管理工具 7

2.4 本章小结 7

第3章 系统方案设计 8

3.1 五子棋人机对弈系统的组成 8

3.2 棋盘落子图像识别系统接口和通信 9

3.3 对弈智能体系统接口和通信 9

3.4 机器人落子系统接口和通信 9

3.5 前端界面接口和通信 9

第4章 系统集成实践 11

4.1 前端搭建 11

4.1.1 整体结构 11

4.1.2 界面设计 11

4.1.2.1 登陆界面 11

4.1.2.2 功能选择界面 13

4.1.2.3 人机对弈界面 14

4.1.2.4 线下人机对弈的在线战况显示界面 17

4.1.2.5 好友在线对弈界面 18

4.2 服务器环境搭建 19

4.3 uni-app前端项目的部署上线 20

4.4 在线好友对弈与数据存储的后端实现 21

4.5 服务端hub功能实践 23

4.5.1 hub功能总体结构 23

4.5.2 与各个子系统的通信 23

4.6 本章小结 25

第5章 系统功能验证 26

5.1 在线人机对弈验证 26

5.2 好友在线对弈验证 29

5.3 线下人机对弈的在线战况显示验证 30

5.4 本章小结 32

第6章 总结与展望 33

参考文献 34

致谢 35

第1章 绪论

1.1 研究背景及意义

AlphaGo围棋程序是在2016年由Google公司研发出来的,其中最主要的部分就是落子选择器和棋局评估器。围棋程序主要采用的监督学习的策略网络,在当前棋盘上,根据已下棋子数据预测下一步棋子的最佳落子位置。棋局评估器能够统筹整个棋盘局面,采用价值网络对落子后对弈双方获胜的概率进行评判,用以辅助落子选择器进行落子选择[1]。AlphaGo和世界围棋冠军李世石的对弈在互联网和新闻媒体上引起了广泛关注,使人工智能成为社会热议的话题,让大家对计算机博弈产生了浓厚兴趣。这大大促进了计算机博弈的长远发展。目前研究人员对计算机博弈的研究主要集中在五子棋、六子棋、国际象棋、围棋等博弈项目中。在计算机博弈领域,棋类有效备受关注,因为研究成果的好与坏可以直接通过与人的博弈进行判断。

棋类游戏不仅能锻炼人的思维,而且对于人的修身养性也有不小的作用[2]。在计算机博弈领域,棋类有效备受关注,因为研究成果的好与坏可以直接通过与人的博弈进行判断。而五子棋是一种双人对弈的纯策略性的棋类游戏,棋具与围棋通用,是源自中国古代的传统黑白棋种之一,是世界智力运动会竞技项目之一,是一种既趣味横生又能增强思维能力的众人喜爱的智力对弈游戏。五子棋游戏很容易上手,而且老少皆宜。它不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋对战双方分别使用黑白两色的棋子轮流在棋盘垂直线与水平线的交叉点上落下棋子;在竖直方向、水平方向和对角方向三个方向中任意一个方向上,首先形成五子串连的一方为胜利者。

在当今时代,互联网技术飞速发展,互联网产品中的游戏逐渐成为了生活中比较普遍一种的娱乐活动。互联网游戏的兴起带动了游戏行业的发展,游戏的开发模式变得多种多样。其中,基于HTML5开发的游戏不要求用户进行特定客户端下载与安装,用户只需要打开一个游戏网页,即可随时开始游戏。HTML5游戏无需占用太多的本地资源存储空间,获得了不错的用户体验。

HTML 5是HTML的第五个和当前主要版本,它于2008年1月22日首次以面向公众的形式发布,2014年10月获得重大更新和“W3C推荐”状态[3, 4]。其目标是通过支持最新的多媒体和其他新功能来改进语言;保持语言既易于被人类阅读[5],又能被计算机和设备(如Web浏览器,解析器等)持续理解,而不受XHTML的严格限制;并保持与旧软件向后兼容。 HTML 5包括详细的处理模型,以鼓励更多可互操作的实现;它扩展,改进和合理化文档可用的标记,并为复杂的Web应用程序引入标记和应用程序编程接口(API)。

在高速发展的今天,各式各样的机器人推动着现代多样化工业的经济发展。在生产生活中,对于一些高精度、高风险、高强度的特殊工作,人类没办法高效地完成,而机器人却可以轻松完成。这很大程度上提高了人们的劳动效率,并且还可以促进科学发展,提高经济效率,从而整体加速人类社会文明的进展。随着机器视觉的深入研究,工业机器人也得到了相应的发展。在生产线上,如果采取人力,由于现实因素,人类的视觉测量以及判断会因为个体差异以及疲劳度等多方面因素产生误差,严重时会演变成错误,但是机器能大幅度减少误差,保持高稳定性工作。机器视觉作为主流的传感检测技术,以其特有的非接触测量、广谱视觉范围、长时间工作等优点,正逐渐取代传统的传感检测技术,成为机器人新传感检测技术的主要力量。

本设计在上述背景下将在搭建传统五子棋对弈游戏网站的基础上,构建一个平台将前端web页面、机器视觉、机械手以及智能算法有机结合到一起,组成一个智能五子棋人机对弈系统。该系统不仅能实现五子棋在线人机对弈和好友对弈,更会实现真实条件下的人机对弈。

1.2 国内外研究现状

在社会快速发展的今天,在国内各大理工类高校中关于计算机线上对局博弈的研究不多,其他学科对这方面的研究少之又少。一方面国内起步较晚,同时有关部门对计算机线上对局博弈不够重视,使得该领域的发展极其缓慢。另一方面,由于国外的技术封锁,国内关于这方面的资料严重不足。即使是在这种不利的情况下,2006年东北大学自动控制系的徐心和教授研制的象棋博弈程序在世界范围内的各种比赛中都获得了优异的成绩。第二年,计算机博弈专业委员会成立,由徐心和教授担任会长,由此国内的计算机博弈的学术、技术和竞赛交流平台如雨后春笋般冒了出来,计算机博弈在国内的发展往前迈了一大步。同时,由该委员会举办的各类计算机博弈大赛吸引了全国各个省市、各大高校甚至国外的研究团体前来参赛。2008年,陈朝营研发的"象棋旋风"博弈程序在国际Olympic比赛中获得冠军,这一消息传回国内,在该领域掀起了轩然大波。计算机博弈理论研究与人工智能有着密不可分的关联,前者是后者的基础,后者推动前者的发展。

国外关于计算机线上博弈的研究开始以上世纪50年代初期,经过近七十年的发展已经取得了不少优秀的成果。例如1956年美国科学家约翰·麦卡锡提出的α-β剪枝算法成为当下计算机博弈领域的经典搜索算法;1959年塞缪尔研发了有关自主学习算法,可实现对当前对局的学习,也可以导入各种棋谱使其自主学习。这一款可以自主学习跳棋程序在其第三个年头就成功战胜了这一年的跳棋冠军。由此向人们展示了其强大学习能力。1997年IBM公司研制出"深蓝"象棋电脑,并利用该象棋电脑战胜了当时世界排名第一的象棋大师卡斯帕洛夫。深蓝的胜利对计算机博弈发展具有非常深远的意义,其表明计算机博弈程序在博弈领域己经可超越人类智慧[5]

国内外对于五子棋人机对弈系统的大部分研究都是专注于本地系统的计算机博弈算法和HTML5五子棋游戏,对融合计算机博弈、智能机器人以及HTML5技术的五子棋人机对弈系统的研究很少。

1.3 本文主要研究内容与结构

本文主要对承载计算机博弈的可视化以及通讯系统进行研究,目的在于构建一个服务于计算机博弈的可视化多功能平台-智能五子棋对弈系统。后文将按照实际的开发过程进行详细介绍。第2章是对本系统设计需要的一些Web开发技术与软件知识的简单了解和学习;第3章会对系统的设计方案进行讲解;第4章将详细介绍到系统的搭建过程;第5章为系统功能的验证环节,检验系统功能是否实现;第6章是我对本次系统设计的总结和对系统未来发展的展望。

第2章 Web开发理论基础

2.1 前端开发工具

2.1.1 HBuilderX

HBuilderX是由DCloud(数字天堂)推出的一款支持HTML5 Web开发的集成开发环境(IDE)。HBuilderX的最大优势是快,HBuilderX的启动、大文件打开都是极速响应。在代码编辑的过程中,通过其强大语法分析能力对代码进行深度语法分析并给出开发者准确完整的语法提示;除此之外,HBuilderX附带强大便捷的代码编辑功能,如智能双击等。这使HBuilderX能大幅度提升HTML5的开发效率。

2.1.2 Chrome

Chrome是由Google公司开发的一款简单、高效的Web浏览器,其主要特点是简洁、快速、高效和便捷。Chrome浏览器对于前端开发者来说,最大的优点在于其优秀的前端调试功能,通过鼠标右键的功能选择中的“检查”,就会进入Chrome浏览器的Debug模式,在Debug模式中,有许多帮助前端调试的功能,如Console、Sources、Network等。通过这些功能的帮助,我们能便捷地监控前端界面的视图元素、数据的收发以及错误信息的产生等,加快给前端开发带来便利。

2.2 前端开发的相关技术

2.2.1 uni-app前端开发框架

uni-app 是一个可以进行跨平台开发的前端开发框架,它基于vue.js[9]。与其它大型框架不同的是,Vue.js被设计为可以自底向上逐层应用[10]。Vue.js的关注重点在于视图层,不仅易于上手,还便于与第三方库或既有项目整合。uni-app基于vue.js,继承了vue.js的优点,并拥有自己独特的闪光点,即跨平台开发。uni-app在跨平台开发的同时,通过条件编译和平台特有API调用,可以便捷地为某个特定的平台编写独特的处理代码,调用专有能力而不影响其他平台。由于uni-app基于通用的前端技术栈,采用vue语法与微信小程序api结合,所以,对于熟悉Vue.js和微信小程序的开发者来说,uni-app的学习成本几乎为零。

2.2.2 view视图组件

以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。

相关图片展示:

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

企业微信

Copyright © 2010-2022 毕业论文网 站点地图