游戏源码
点击放大

agent1的实现(难点:不同的coach代码实现形式不统一,需要进行整合,提示:整合所有的parse函数)项目结构:
---
> 上述会开启若干个进程,请注意赋予相应的执行权限
--agenti 定义了第i个玩家使用何种AI模型进行游戏。默认1号玩家为EggPan,其他玩家为Demo(Demo就是随即策略)
> EggPan也就是两年前和队友一起参加掼蛋比赛时起的队名hhh
游戏结束后,会有相关的提示,然后按下 Ctrl + C 或者 Ctrl + Z 退出即可。请在看到绿色的进程销毁信息后再关闭终端,否则残余的进程可能会使得下一次的启动出现端口占用的问题。如果你强行退出了,请检查 23456 号端口是否被占用,如果被占用,请手动关闭。
> 整个系统,无论是训练还是推理,都是通过launch/launch.py文件来执行的,但是launch.py需要配置的参数比较多。为了方便使用,我还对launch.py进行了二次封装,比如train.py。
add_argument函数中了,执行如下语句来获取帮助:---
launch/config.yaml文件,请直接使用train.py,且整个模型默认只训练第一个agent。训练产生的checkpoints默认会创建在./model/checkpoints_年_月_日_时_分_秒文件夹中。产生的每个pth结构如下:
参数说明:
value.log文件中。你可以如下图进行训练调试:
---
train.py可以接受一个参数model,代表需要继续训练的模型的路径。默认是None,即从头训练。如果你需要进行断点续训,请指派该参数,参数的内容为数据结构和上述描述的pth一致的(至少包含model_state_dict),如果输入的pickle同时包含model_state_dict与model_class,请确保它们保持一致。
如果你嫌model参数过于麻烦,可以使用lock_value参数和lock_reward参数。以lock_value参数为例,参数为float,指定后系统会去.\model文件夹中去搜寻名字中带有value(模仿学习训练过程的checkpoints,先搜索最近时间的),且值为lock_value的pth文件,并将该文件的根目录相对路径赋予参数model。
比如你刚刚的模仿学习训练得到了value=7.28的一个模型,那么为了在此基础上继续训练,你可以:
对于强化学习的结果(reward值),同理可得。
---
如果你像修改或添加coach中的代码,我强烈建议使用unit_test/test_coach.py进行验证。如果运行完该文件并没有报错,则说明编写的coach程序没有问题。同理,如果你需要修改我的多进程,在修改完后也请运行测试用例。
---
启动强化学习(调整lock_value)
开发语言:未知
项目类型:AI掼蛋系统(深度学习+强化学习)
Star 数:0
这是一套AI掼蛋系统(深度学习+强化学习),代码结构清晰,适合开发者学习棋牌游戏的服务端与客户端开发。项目涵盖了棋牌游戏的核心玩法逻辑、网络通信、用户管理、房间匹配等模块,对理解棋牌类游戏的完整开发流程具有较高的参考价值。
从技术实现角度看,棋牌类项目的难点在于:游戏逻辑的状态机设计、并发房间管理、牌型算法、以及服务端与客户端的协议同步。本项目在这些方面提供了可运行的实现,开发者可以在此基础上进行二次开发或学习研究。
1. 下载源码压缩包,解压到本地开发环境。
2. 根据项目类型准备对应的运行环境(Node.js / Go / C++ / Java 等)。
3. 按照 README 中的步骤配置依赖、数据库和配置文件。
4. 先启动服务端,再启动客户端,即可进入游戏进行测试。
注意:本项目仅供学习研究使用,请勿用于商业或非法用途。
对于想进入棋牌游戏开发领域的开发者来说,这套源码是一个很好的入门参考。通过阅读代码,可以学习到棋牌游戏的核心玩法实现、网络协议设计、房间与匹配机制、以及游戏状态管理等关键技术点。
同时,项目中的代码组织方式和模块划分,也展示了棋牌类项目在工程化方面的实践经验,值得开发者深入研究和借鉴。理解一个完整棋牌项目的架构,对后续开发其他实时对战类游戏也很有帮助。
本资源来源于开源社区,仅供学习研究和技术交流使用,请勿用于任何商业或违法违规用途。使用本项目产生的一切后果由使用者自行承担。若涉及第三方权益,请联系删除。
| 资源标题 | NUAA-guandan - AI掼蛋系统(深度学习+强化学习) |
| 所属分类 | 游戏源码 |
| 发布作者 | admin |
| 发布时间 | 2026-10-05 17:47:37 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 103 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |