java期末大作业(星辰对决--五子棋AI)

星辰闪耀星空棋,璀璨洒满宇宙间。
Java编织智慧谱,FindYou翩舞奇妙规。
黑白对弈纵横展,人机较量激荡心。
星光指引胜利路,创造奇迹指尖舞。


代码:

等改好了再放上来

效果图:

日志:

2023/12/17 

今天去网上学了一下AI下五子棋的算法,有 极小化极大算法(Minimax) Alpha-Beta剪枝算法,这两个算法看视频理解起来还是可以的 但是写代码的时候 脑子还是跟不上,然后就写了一个简单的估值的方法,虽然听起来简单,但是代码是真的多,调代码还不好调..... 但是它的胜率还是可以的了,和他下了10盘,就赢了1局 但是还是比较菜的 后期再去跟着别人学一下更好的算法吧

bug:

黑子在竖着的时候出现5个棋的时候 并没有显示胜利,这是什么情况......


2023/12/18 0:03 黑子竖着的时候出现5个子已被修复

bug: 队友测试出来的bug:

  1. 当棋子下的没有规律且分散时,人机的棋子也没有规律(算法的问题)
  2. 当我方连成三枚棋子时,无论有没有已经被堵住一边,都会去堵,所有可以根据这个bug获得胜利,即落下的棋子满足刚好连成两对三个棋子,其中一个两边都没有白棋,即有概率获胜

增加的功能:

  1. 对游戏添加了落子的声音,也就是当落子的时候,会播放下载好的音频,注意需要把mp3转换为wav的形式,在线转换网站:MP3轉WAV轉換器。在线自由 — Convertio 添加音频参考的链接:https://blog.csdn.net/qq_51901495/article/details/122385014
  2. 添加了菜单栏,关于我们 联系我们 打赏 等 还等完善


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/284779.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue3知识点总结

目录 一.创建Vue2工程 1.使用 vue-cli 创建 2.使用 vite 创建 二.常用 Composition API setup ref函数 reactive函数 计算属性与监视 1.computed函数 2.watch函数 3.watchEffect函数 一.创建Vue2工程 1.使用 vue-cli 创建 查看vue/cli版本,确保vue/cli版本…

《计算机视觉处理设计开发工程师》

《计算机视觉处理设计开发工程师》 了解到一项2024年企业和个人都在报考的工业和信息化部电子工业标准化研究院颁发的证书,分享给大家: 为进一步贯彻落实中共中央印发《关于深化人才发展体制机制改革的意见》和国务院印发《关于“十四五”数字经济发展规…

力扣59. 螺旋矩阵 II

文章目录 力扣59. 螺旋矩阵 II示例思路代码实现总结收获 力扣59. 螺旋矩阵 II 示例 思路 本题并不涉及到什么算法,就是模拟过程,但却十分考察对代码的掌控能力,容易出错! 而求解本题要坚持循环不变量原则。就能很大程度避免错误 …

火山引擎DataLeap:助你实现从数据研发1.0到数据研发3.0的跨越

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 近日,火山引擎开发者社区 Meetup 第 12 期暨超话数据专场在深圳举办,本次活动主题为“数智化转型背景下的火山引擎大数据技术揭秘 ”&#x…

css+html横向滚动+固定宽

没什么好说的&#xff0c;快上代码&#xff01; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Do…

【02】GeoScene海图生产环境创建

1.1 海图生产环境 GeoScene中的企业级海事制图由中央航海信息系统数据库&#xff08;NIS库&#xff09;来处理&#xff0c;将之前传统桌面产品库&#xff08;PL库&#xff09;产品管理方面的能力已经移植到NIS数据库&#xff0c;以ProductDefinitions、ProductCoverage、Produ…

【Avue】点击新增再点击表单得radio选项出现新表单,且编辑页面关不掉新表单处理方法

一、问题描述 1、点击新增 2、 点击radio选择值 1、点击否得时候没反应 2、点击是得时候出现新表单 2.1、旧代码 {label: 是否危险源,prop: isBigdanger,searchLabelWidth: 120,overHidden: true,span: 24,rules: [{required: true,message: 请选择是否重大危险源,trigger: bl…

【精选】计算机网络教程(第7章网络安全)

目录 前言 第7章网络安全 1、公钥 2、私钥 3、数字签名 前言 总结计算机网络教程课程期末必记知识点。 第7章网络安全 1、公私密钥和对称密钥 公私密钥&#xff08;或非对称密钥&#xff09;和对称密钥是在密码学中用于加密和解密数据的两种不同的密钥类型。 公私密钥…

浅析PAM市场价值

随着全球数字化蓬勃发展&#xff0c;云计算、人工智能、大数据、5G等技术的应用范围不断扩大&#xff0c;在企业运用新技术提高自身效率的同时也面临着更多由新技术诱发的网络威胁&#xff0c;全球网络威胁形势愈发严峻。网络攻击行为日趋复杂&#xff0c;构建全面的安全防护体…

ROS机器人入门

http://www.autolabor.com.cn/book/ROSTutorials/ 1、ROS简介 ROS 是一个适用于机器人的开源的元操作系统。其实它并不是一个真正的操作系统&#xff0c;其 底层的任务调度、编译、寻址等任务还是由 Linux 操作系统完成&#xff0c;也就是说 ROS 实际上是运 行在 Linux 上的次级…

算法专题二:滑动窗口

算法专题二&#xff1a;滑动窗口 一.长度最小的子数组&#xff1a;1.思路一&#xff1a;暴力解法2.思路二&#xff1a;滑动窗口双指针3.GIF题目解析&#xff1a;思路一&#xff1a;思路二&#xff1a; 二.无重复字符的最长子串&#xff1a;1.思路一&#xff1a;滑动窗口2.GIF题…

Unity 如何通过2D Sprite切割一张图为多张

1、理解 在一些2D游戏开发中&#xff0c;我们常常使用2D Sprite把一张大图切割成多个小图使用。 这样做有不少好处&#xff0c;首先&#xff0c;通过精准使用小图&#xff0c;能够一定程度上节省内存&#xff0c;提高渲染性能。 其次把同类的小图做成一张大图在切割使用会更…