这个项目能做什么
stable-retro-scripts是一个Python脚本集合,用于训练强化学习模型来玩复古主机游戏。它基于stable-retro(gym-retro的一个分支)和stable-baselines3构建,面向希望在模拟器游戏上训练智能体、运行模型对战或导出模型以供模拟器前端使用的用户。
README中描述的主要功能:
- 使用scripts/train.py等脚本在复古游戏上训练模型,支持环境、策略网络、并行环境数量、时间步数和超参数等选项。
- 通过scripts/train_curriculum.py和JSON课程文件进行基于课程的学习训练。
- 在玩家对玩家游戏中让两个训练好的模型相互对抗,示例包括NHL94、真人快打和WWF摔角狂热:街机游戏。
- 与改进的AI对手对战。
- 通过独立的retro-ai-runtime项目导出模型以供模拟器前端使用。
列出的支持模型架构:MLP、Nature CNN、Impala CNN以及组合输入模型(图像加标量)。注意力MLP被标记为实验性。
安装说明:已在Ubuntu 22.04/24.04和Windows 11 WSL2(Ubuntu 22.04虚拟机)上测试。需要Python 3.10至3.12、gymnasium、stable-baselines3和stable-retro。系统包包括python3、pip、venv、git、zlib1g-dev、libopenmpi-dev、ffmpeg、cmake和libgl1-mesa-dev。依赖项从requirements.txt安装,可选lint工具在requirements-dev.txt中。可安装可编辑的stable-retro检出以进行模拟器开发。
ROM处理:用户必须提供自己的ROM;README指出Airstriker是stable-retro中已包含的公共领域ROM。使用python3 -m retro.import导入ROM。
示例命令包括在Airstriker-Genesis上使用CnnPolicy、8个环境、1,000,000个时间步并启用回放进行训练,以及运行NHL94课程。
C++推理库已移至retro-ai-runtime仓库,该仓库在RetroArch等模拟器前端中运行导出模型以控制玩家输入。训练、评估和模型导出仍保留在此仓库中。RetroArch端集成位于RetroArchAI。README还链接了NHL94和WWF摔角狂热的游戏特定页面、WSL2设置视频以及关于RetroArch和PyTorch的教程视频。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。