HonorNet_v1 / README.md
clarenceleo's picture
Duplicate from clarenceleo/HonorNet_v1
dd9e164

HonorNet 🎮

一个基于行为克隆的王者荣耀AI,从零开始,在Mac上训练,在Android模拟器中运行。

MIT License Python 3.9+ PyTorch

✨ 项目简介

HonorNet 是一个完全开源的王者荣耀AI项目。它的特点:

  • 🍎 在Mac上训练:利用Apple Silicon的MPS加速
  • 📱 控制Android模拟器:通过ADB截图和发送触摸事件
  • 🧠 行为克隆:学习人类玩家的操作数据
  • 🎯 16个动作空间:移动8方向 + 技能 + 攻击 + 战术
  • 🔓 MIT协议:完全开源,任意使用

这不是一个“调用API”的demo,而是一个从数据采集到模型训练再到部署的完整工程。

🎯 项目状态

阶段 状态
数据采集 ✅ 完成(886帧标注)
行为克隆训练 ✅ 完成(验证准确率54.5%)
模拟器部署 ✅ 完成
强化学习微调 🚧 进行中

🏗️ 项目结构

HonorNet/
├── data/              # 数据处理脚本
├── models/            # 模型定义 + 训练
├── inference/         # 模拟器控制 + AI运行
├── config.py          # 配置文件
└── requirements.txt   # 依赖

🚀 快速开始

1. 环境配置

# 克隆仓库
git lfs clone https://huggingface.co/clarenceleo/HonorNet_v1
cd HonorNet_v1

# 安装依赖
pip install -r requirements.txt

# 安装ADB(macOS)
brew install android-platform-tools

2. 准备数据

将王者荣耀1v1录屏放入 data/raw_videos/,然后:

# 抽帧
python data/extract_frames.py

# 预处理
python data/preprocess.py

# 标注动作(可选,我们提供了标注工具)
python data/annotate.py

3. 训练模型

python models/train_bc.py

4. 让AI打游戏

  1. 启动Android模拟器,打开王者荣耀1v1模式
  2. 运行AI:
python inference/run_ai.py

📊 训练结果

使用886帧标注数据训练50轮:

指标 数值
最佳验证准确率 54.49%
随机基线 6.25%
训练准确率 95.48%

54.5%的准确率意味着AI学会了

  • 根据画面判断移动方向
  • 何时普攻、放技能
  • 何时回城、升级

🛠️ 技术栈

  • PyTorch:深度学习框架
  • ADB:Android调试桥,控制模拟器
  • OpenCV:图像处理
  • Android Studio AVD:模拟器运行环境

📈 后续计划

  • 强化学习微调(PPO)
  • 支持更多英雄
  • 5v5多智能体
  • 实时学习(边打边学)

🤝 贡献

模型开发与训练数据清洗标注:李天祎(1637321445@qq.com) 训练数据录制与提供:姜懿原

欢迎提交Issue和Pull Request!