Mortal麻将AI:Rust+深度强化学习打造的竞技级日本麻将智能体
Mortal麻将AIRust深度强化学习打造的竞技级日本麻将智能体【免费下载链接】Mortal️ A fast and strong AI for riichi mahjong, powered by Rust and deep reinforcement learning.项目地址: https://gitcode.com/gh_mirrors/mo/MortalMortal是一款基于Rust和深度强化学习的开源日本麻将人工智能在竞技麻将领域展现出了卓越的性能表现。这款开源AI不仅超越了传统麻将AI Akochan更通过技术创新实现了平均排名领先0.09个身位的显著优势。本文将深入剖析Mortal的技术架构、实战表现和应用价值为开发者和麻将爱好者提供全面的技术解析。 项目亮点速览特性描述优势核心架构Rust高性能引擎 Python深度学习模型兼顾性能与灵活性性能表现平均排名领先Akochan 0.09身位竞技级麻将AI训练效率支持批量处理2000局游戏高效训练框架兼容性支持mjai协议易于集成到现有系统开源协议AGPL-3.0完全开源可自由修改️ 架构设计揭秘Mortal的技术栈采用分层架构设计每个层次都有其独特的技术优势Rust高性能引擎层位于libriichi/src/的核心模块实现了麻将游戏的基础逻辑和快速模拟。Rust语言的内存安全性和零成本抽象特性使得引擎在执行效率上具有显著优势状态表示优化libriichi/src/state/obs_repr.rs实现了高效的牌局状态编码算法加速libriichi/src/algo/sp/calc.rs中的算法优化使决策速度提升30%以上并行处理支持多线程模拟充分利用现代多核CPU深度学习模型层mortal/model.py中定义了基于注意力机制和残差块的神经网络架构# 模型核心架构 class MortalModel(nn.Module): def __init__(self, config): super().__init__() # 注意力机制层 self.attention_layers nn.ModuleList([ AttentionBlock(config.hidden_size) for _ in range(config.num_layers) ]) # 残差连接 self.residual_blocks nn.ModuleList([ ResidualBlock(config.hidden_size) for _ in range(config.num_residual) ])训练框架层mortal/train.py提供的强化学习训练系统支持大规模并行训练分布式训练支持多GPU并行处理数据流水线mortal/dataloader.py实现高效数据加载配置管理通过mortal/config.py进行灵活参数配置Mortal麻将AI实战决策场景 - 东3局牌局分析界面 实战应用场景竞技对局表现根据docs/src/perf/strength.md中的测试数据Mortal在1v3重复麻将测试中展现出显著优势关键性能指标对比Mortal 3.1 vs Akochan平均排名得分1.890967 vs -5.672901领先7.56分和牌率21.22% vs 19.54%提升1.68%放铳率11.26% vs 13.04%降低1.78%立直率18.91% vs 21.53%降低2.62%决策优化特点Mortal在实战中展现出以下技术特点风险评估精准通过深度强化学习优化风险收益平衡牌效计算高效Rust引擎实现毫秒级决策响应局面理解深刻基于注意力机制的多维度特征提取Mortal麻将AI牌局分析界面 - 实时评估手牌价值和对手策略️ 快速上手指南环境准备# 克隆项目 git clone https://gitcode.com/gh_mirrors/mo/Mortal cd Mortal # 创建Python虚拟环境 python -m venv venv source venv/bin/activate # Linux/macOS # 或 venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt配置模型复制配置文件模板并修改cp mortal/config.example.toml mortal/config.toml启动训练# 启动训练过程 python -m mortal.train # 使用预训练模型进行对战 python -m mortal.player --model path/to/model.ptDocker部署项目提供了完整的Docker支持# 构建镜像 docker build -t mortal . # 运行容器 docker run -it --gpus all mortal⚡ 性能优化技巧Rust引擎优化内存布局优化通过libriichi/src/array.rs中的自定义数据结构减少缓存未命中并行计算利用Rust的rayon库实现数据并行处理算法剪枝在libriichi/src/algo/shanten.rs中实现高效的向听数计算深度学习模型优化混合精度训练使用FP16/FP32混合精度加速训练梯度累积支持大批次训练减少显存占用模型量化推理时使用INT8量化加速训练策略优化课程学习从简单到复杂的渐进式训练策略自对弈通过自我对弈不断改进策略多智能体训练支持1v3、2v2等多种对战模式 扩展与集成mjai协议兼容Mortal完全兼容mjai协议可以轻松集成到现有的麻将AI生态系统中# 使用mjai协议进行通信 from mortal.client import MortalClient client MortalClient(model_pathpath/to/model.pt) client.connect_to_server(localhost, 8888)自定义策略开发开发者可以通过扩展mortal/model.py中的神经网络架构或修改libriichi/src/agent/mortal.rs中的决策逻辑来实现自定义策略。数据分析工具项目提供了丰富的日志记录和分析工具位于log-viewer/目录下支持对局回放和统计分析。 未来发展方向技术演进趋势多模态学习结合视觉和文本信息进行更精准的牌局理解元学习能力让AI能够快速适应不同对手的打法风格解释性增强提供决策过程的透明化解释帮助人类玩家理解AI思路性能提升方向分布式训练支持更大规模的并行训练加速模型迭代硬件优化针对GPU和TPU的专门优化进一步提升推理速度内存效率优化模型参数量降低部署门槛生态扩展计划多规则支持扩展支持中国麻将、台湾麻将等不同规则变体教育应用开发面向初学者的教学工具帮助玩家提升技能竞技平台构建在线对战平台让更多玩家体验AI对战的乐趣 学习资源汇总官方文档项目文档docs/src/目录下的详细使用指南API参考libriichi/src/lib.rs中的Rust API文档配置说明mortal/config.example.toml中的配置参数说明代码示例基础使用mortal/player.py中的对战示例训练脚本mortal/train.py中的完整训练流程性能测试mortal/one_vs_three.py中的对战测试脚本性能数据完整测试结果docs/src/perf/strength.md中的详细性能数据基准测试与Akochan等传统AI的对比数据社区支持问题反馈通过项目Issue报告问题或提出功能建议技术讨论参与Pull Request和代码审查贡献指南遵循项目的开发规范和代码风格Mortal麻将AI不仅是一个技术产品更是一个开放的研究平台。通过深度解析其技术实现和性能表现我们可以看到现代AI技术在传统博弈游戏中的巨大潜力。无论是作为研究工具还是实战助手Mortal都为麻将AI的发展树立了新的标杆。随着技术的不断演进我们有理由相信未来的麻将AI将更加智能、更加人性化为这个古老的游戏注入新的活力。而对于开发者和研究者来说Mortal提供了一个绝佳的起点让我们能够站在巨人的肩膀上探索人工智能在复杂决策问题中的无限可能。【免费下载链接】Mortal️ A fast and strong AI for riichi mahjong, powered by Rust and deep reinforcement learning.项目地址: https://gitcode.com/gh_mirrors/mo/Mortal创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

ESP32驱动三轴舵机机械臂:从运动学算法到绘图实践全解析

ESP32驱动三轴舵机机械臂:从运动学算法到绘图实践全解析

1. 项目概述:当ESP32遇见机械臂,桌面上的数字艺术家最近在工作室里捣鼓出了一个挺有意思的小玩意儿:一个用ESP32微控制器驱动的绘图机械臂。这可不是那种工业级的大家伙,而是一个可以放在你书桌上,用几根马克笔就能在A…

2026/10/28 5:58:41 阅读更多 →
MTO1804无刷电机实测:从方波驱动到FOC矢量控制的性能对比与应用选型

MTO1804无刷电机实测:从方波驱动到FOC矢量控制的性能对比与应用选型

1. 项目概述:从开箱到理解一颗“小钢炮”电机最近在捣鼓一个需要高推重比的小型无人机项目,选型时,一颗型号为MTO1804、标注为CW(顺时针旋转)的无刷直流电机进入了我的视野。这玩意儿个头不大,直径18毫米&a…

2026/10/28 6:44:11 阅读更多 →
数据质量校验前置 智圣新创高校一表通建设的全域实效落地路径

数据质量校验前置 智圣新创高校一表通建设的全域实效落地路径

当前教育数字化转型已经进入深水区,全国高校普遍完成第一轮智慧校园基础平台搭建后,存量数据质量差、跨系统重复填报等共性问题逐渐凸显,安徽建筑大学联合智圣新创落地的一表通建设项目,跳出了传统数据治理投入大、见效慢的误区&a…

2026/10/28 6:43:56 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/27 17:33:32 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/27 4:06:49 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/27 7:21:53 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/27 18:20:50 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/27 6:20:47 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/27 4:06:50 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 13:55:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 7:21:50 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 19:19:37 阅读更多 →