资源下载地址:https://download.csdn.net/download/sheziqiong/85948720
资源下载地址:https://download.csdn.net/download/sheziqiong/85948720
五子棋人机博弈问题
摘 要
五子棋的人机博弈是two-agent对抗搜索算法的一个很具有标志性的应用,类似于其他的各种棋类问题,五子棋问题的求解最终都趋向于Minimax算法(极小化极大算法)。本次实验即利用这一算法给出了五子棋棋局形势的评价函数,通过该评价函数对当前棋局进行层次搜索,最终确定落子位置。
为了节约搜索时长,本次实验的搜索树采用了α-β剪枝算法,剪去了不会改变最终决策的分支,避免了大量无谓的计算。同时,本项目小组还根据五子棋的特点对普适的α-β剪枝算法进行了优化,例如不对周围八个位置没有棋的格点进行搜索等。
而在用户UI方面,本次实验采用了Qt框架来实现,通过使用Qt框架提供的一系列图形界面封装函数,可以实现鼠标点击位置的检测,从而实现简单的UI交互。
关键词:五子棋博弈,Minimax算法,α-β剪枝算法,Qt框架
Man-Machine Game of Gobang
ABSTRACT
The man-machine game of Gobang is a very symbolic application of two-agent anti search algorithm. Similar to other chess problems, the solution of Gobang problems eventually tends to minimax algorithm. In this experiment, we use this algorithm to give the evaluation function of the situation of the game of Gobang. Through this evaluation function, we search the current game hierarchically and finally determine the position of the drop.
In order to save the search time, the search tree in this experiment adopts the α-β pruning algorithm, which cuts off the branches that will not change the final decision and avoids a lot of unnecessary calculation. At the same time, the project team also optimized the general α-β pruning algorithm according to the characteristics of Gobang, such as not searching eight grid points without chess around.
In terms of UI interface, QT framework is used in this experiment. By using a series of graphical interface encapsulation functions provided by QT framework, the detection of mouse click position can be realized, so as to realize simple UI interaction.
Key words:Gobang game, minimax algorithm, α-β pruning algorithm, QT framework
目 录
1 实验概述 1
1.1 实验目的 1
1.2 实验内容 1
1.3 五子棋人机博弈问题简介 1
2 实验方案设计 2
2.1 总体设计思路与总体架构 2
2.1.1 内核部分思路说明 2
2.1.2 内核部分总体架构 2
2.1.3 UI部分思路说明 3
2.1.4 UI部分总体架构 3
2.2 核心算法及基本原理 3
2.2.1 Minimax算法 3
2.2.2 α-β剪枝算法 4
2.3 模块设计 4
2.3.1 内核部分模块设计说明 4
2.3.2 UI部分模块设计说明 5
2.3.3 各模块图示说明 5
2.4 其他创新内容或优化算法 6
2.4.1 评估函数说明 6
2.4.2 对搜索次序的优化 6
2.4.3 使用栈型结构来存储双方落子位置 7
3 实验过程 8
3.1 环境说明 8
3.1.1 内核部分开发环境说明 8
3.1.2 展示部分开发环境说明 8
3.2 源代码文件与主要函数清单 8
3.3 实验结果展示 10
4 总结 14
4.1 实验中存在的问题及解决方案 14
4.1.1 Qt框架下的格点监测不准确 14
4.1.2 评估函数总是远高于预期结果 14
4.2 心得体会 14
4.3 后续改进方向 15
4.4 总结 15
参考文献 16
小组分工 16
附录: 16







本文转载自:http://www.biyezuopin.vip/onews.asp?id=15902





资源下载地址:https://download.csdn.net/download/sheziqiong/85948720
资源下载地址:https://download.csdn.net/download/sheziqiong/85948720

基于QT的五子棋人机博弈问题设计与实现 文档+任务书+答辩PPT+演示视频+项目源码相关推荐

  1. 基于SSH的通讯网络电子计费系统 毕业论文+任务书+开题报告+文献综述+外文翻译及原文+答辩PPT+代码清单+项目源码及数据库文件

    下载地址:https://download.csdn.net/download/junkyio321/40671271 项目介绍: 基于SSH的通讯网络电子计费系统 毕业论文+任务书+开题报告+文献综 ...

  2. 基于html5+Java+MySQL的健身俱乐部网站设计与实现 文档+任务书+开题报告+答辩PPt+项目源码及数据库文件

    全套资料下载地址:https://download.csdn.net/download/sheziqiong/85593638 目 录 引言 1 系统分析 2 2.1可行性分析 2 2.2需求分析 2 ...

  3. 基于Python和Cpp的汉英词语自动对齐系统 课程报告+演示视频+项目源码

    目录 一. 实验内容: 1 二.实现平台 1 三.实验人员和分工情况 1 四.项目成果展示 2 五.核心算法和模块 3 六.移植过程 9 (一).准备语料库 9 (二).修改GIZA++源码 10 ( ...

  4. 基于JavaSSH框架的网上商城设计与实现 毕业论文+任务书+外文翻译及原文+项目源码及数据库文件

    下载地址:https://download.csdn.net/download/ouyangxiaobai123/20720855 项目介绍: 基于JavaSSH框架的网上商城设计与实现 毕业论文+任 ...

  5. Pseudo-document-based Topic Model(基于伪文档的主题模型)的理解以及源码解读

    本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 论文来源 Zuo Y, Wu J, Zhang H, e ...

  6. 基于文档注释接口文档生成工具(代码0侵入附源码)

    本文主要分享一个基于个人兴趣,旨在提高工作效率,开发了一个基于文档注释,接口文档生成工具,欢迎大佬指点. 源码以及使用demo地址 :传送门 1.前置介绍 1.1前世 现在大多数项目都走向了前后端分离 ...

  7. 图书馆座位预定管理系统前端设计_jsp+ssm+mysql实现图书馆预约占座管理系统项目源码...

    [项目功能描述] 图书馆预约占座管理系统的开发技术为jsp+ssm+mysql,前端技术为jquery easyui框架,后台用的ssm(spring.springMVC.mybaits)框架,主要实 ...

  8. 基于Android实现高德地图校内导航出行app项目演示【项目源码+简要论文说明】分享

    基于Android实现高德地图校内导航出行app项目演示 如今手机的发展非常迅速,手机越来越成为人们不可缺少的东西.手机从最初功能简单的功能机,发展到如今几乎无所不能的智能机,满足了人们的日常需求,手 ...

  9. 俄罗斯方块android论文,基于Android的俄罗斯方块游戏设计与实现(论文+任务书+答辩PPT+设计源码)...

    摘  要 随着移动平台的崛起,越来越多的传统PC软件被移植到移动平台,比如ipad,iphone,Android等智能终端设备,在这些平台中,Android占领着最大的市场份额,所以为Android用 ...

最新文章

  1. memcached原理详述及配置
  2. Codeforces 757C - Felicity is Coming!
  3. sgolayfilt函数_Matlab中Savitzky-Golay filtering(最小二乘平滑滤波)函数sgolayfilt的使用方法...
  4. @noi.ac - 488@ cleaner
  5. 90-40-010-源码-CUBE-引擎为MR写入Habse的构建
  6. Android 3.0“.NET研究”七大特性全解析
  7. Unity获取安卓手机运营商,电量,wifi信号强度,本地Toast,获取已安装apk,调用第三方应用,强制自动重启本应用...
  8. 沸点网络电视 v3.2 官方版
  9. CDH安装过程中出现:主机 cdh04 上的内存被调拨过度。总内存分配额是 4.0 艾字节 个字节,但是 RAM 只有 62.8 吉字节 个字节(其中的 12.6 吉字节 个字节是保留给系统使用的)。
  10. mysql键值相同_mysql什么是键值重复
  11. 3DTouch功能开发
  12. PC 真的不行了!Intel、AMD 同遭生死劫
  13. Mac设计的必备设计软件,看看你还差什么
  14. 网课查题极速响应系统-公众号查题
  15. 【毕业设计】LSTM股票预测系统 - python 深度学习
  16. New York Comic Con 2013 - 2013年纽约动漫展
  17. 基于IO多路复用的TCP客户端
  18. 【Android】上下文菜单ContextMenu的使用
  19. 华为云存储空间图库占比太大_终于知道为什么华为手机删了照片,存储空间还是不足了!...
  20. 实现Windows XP自动登录的两种方法

热门文章

  1. Activity详解—— Activity基本用法
  2. Python适合零基础入门吗?零基础学 Python 有什么建议?
  3. Unity zip解压和压缩
  4. C# 取高8位或低8位
  5. 详解1247:河中跳房子(二分经典例题)
  6. c++语言转换为字符串函数,C++字符编码转换函数
  7. 计算机毕业设计Java智能外包管理平台(源码+系统+mysql数据库+Lw文档)
  8. AxureRP实战(三)Banner轮播图交互(进阶篇)
  9. message from server: Host 'DESKTOP-QIR7OV5' is not allowed to connect to this MySQL server问题
  10. 2020年8计算机软件基础自考,浙江省2020年8月高等教育自学考试计算机软件基础(二)试题.docx...