# Java-Gobang
Java实现的五子棋游戏基本功能,人机对战中包含Alpha-Beta剪枝极大极小博弈算法
## 程序设计分析
在开始编写程序之前,我们应该先要对五子棋游戏要做的事进行剖析,明确设计任务,功能要求等等。通过程序要实现的功能,设定具体的每个模块所完成的每一个功能,然后连接每一个模块来实现所需要的功能设计。
### 画棋盘
绘制左侧的棋盘:绘制棋盘线、绘制天元和星、绘制预选框、绘制左侧数字和底下字母、绘制棋子、给棋子添加序号。
绘制右侧的功能区:添加显示棋子估值信息区域、模式:人人对战、人机对战、智能:估值函数、估值函数+搜索树、搜索树:搜索深度、每层节点、其他:显示落子顺序、悔棋、新游戏、人类先手、机器先手
### 添加事件
在下棋区域鼠标移动,预选框跟随鼠标移动、在交叉点点击落子、悔棋、新游戏、显示落子顺序、人类先手、机器先手、在棋子上点击鼠标右键显示估值
### 人人下棋
在交叉点落子的时候,判断输赢
### 人机下棋
估值函数、极大极小值搜索、Α-β剪枝优化。
估值函数:计算某个点的多价值有高。
首先设计好可能出现的棋型,并且根据会赢的概率给出相应的分值。
攻:对我自己有利的棋型的价值
守:对对方有利的棋型的价值
某个点的价值 = 攻价值+守价值
估值函数有个弊端,只考虑眼前的事
### 极大极小值搜索:
思想:轮到自己下棋的时候,找最大值。轮到对方下的时候,寻找最小值。但是这样计算量是比较大的。开始游戏有,棋盘上是有一个黑子。人工下一个白子。搜索5层。第一个层可选择位置:223。第二层:223x222。第三层 223 x 222 x 221 ……
Α-β剪枝优化:Α-β是两个值,Α自己,β对手。初始值Α是无穷小的数。β是无穷大的数。A<β这个场景才会合法。否则这枝(树枝)将被剪掉(不进行遍历)
如果是自己的棋,得到得分以后,和Α进行比较,如果得分大于Α。Α=score
如果是对手的棋,得到得分以后,和β进行比较,如果得分小于β。Β=score
![result](https://user-images.githubusercontent.com/51311844/133026670-00a69807-0706-443a-bad6-74dd1083d4c8.png)
![image](https://user-images.githubusercontent.com/51311844/133027491-f2def21e-7134-4f09-9c90-ae13cae7eae1.png)
没有合适的资源?快使用搜索试试~ 我知道了~
Java实现的五子棋,人机对战中包含Alpha-Beta剪枝极大极小博弈算法Java-Gobang.zip
共8个文件
java:5个
txt:1个
properties:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 64 浏览量
2024-05-12
17:15:16
上传
评论
收藏 12KB ZIP 举报
温馨提示
五子棋游戏想必大家都非常熟悉,游戏规则十分简单。游戏开始后,玩家在游戏设置中选择人机对战,则系统执黑棋,玩家自己执白棋。双方轮流下一棋,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【技术】 Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes
资源推荐
资源详情
资源评论
收起资源包目录
Java实现的五子棋,人机对战中包含Alpha-Beta剪枝极大极小博弈算法Java-Gobang.zip (8个子文件)
manualType.properties 10B
系统.txt 7B
Java-Gobang-master
gobang
ChessBean.java 2KB
GoBangPanel.java 26KB
GoBangFrame.java 5KB
GoBangUtil.java 699B
GoBangTest.java 152B
README.md 2KB
共 8 条
- 1
资源评论
枫蜜柚子茶
- 粉丝: 7431
- 资源: 5103
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功