Phillip AI 项目介绍
Phillip AI 是一个基于深度强化学习开发的超级粉碎兄弟近战(SSBM)游戏AI项目。虽然这个项目目前已不再活跃,且可能存在软件老化的问题,但其继任项目基于 Slippi 游戏重放的模仿学习在持续发展。
项目背景
Phillip AI 是一款旨在挑战并重现人类玩家水平的AI。通过使用深度强化学习,这个AI在训练期间自我学习并提升游戏技能。需要注意的是,由于项目已经停止开发,许多依赖项和项目环境可能不再与最新版本的软件兼容。
系统要求
Phillip AI 已在以下系统上测试过:Ubuntu 14.04及以上、OSX,以及 Windows 7/8/10。为了运行 Phillip AI,用户需要满足以下环境要求:
- Dolphin 模拟器:在 Linux 系统中可能需要从源码编译,而在 Windows 系统中则需安装定制版本。
- SSBM ISO 镜像:需要 NTSC 1.02 版本的 ISO 镜像。
- Python 3:Windows 用户推荐使用 Anaconda 来设置相关环境。
- 安装 Phillip AI 软件包:可以通过下载项目源码并用 Python 的 pip 工具来安装。
- 预训练的 AI 代理:项目包含了一些已训练好的 AI 代理,完整的代理集合可以从指定的网络驱动中获取。
如何进行游戏
运行游戏时,需要知道 Dolphin 模拟器的具体位置,例如在 Mac 系统中其路径为 /Applications/Dolphin.app/Contents/MacOS/Dolphin
。通过以下命令可以开始游戏:
python3 phillip/run.py --gui --human --start 0 --reload 0 --epsilon 0 --load agents/FalconFalconBF --iso /path/to/SSBM.iso --exe /path/to/dolphin [--windows]
用户可以使用不同的 AI 代理,位于 agents
目录下,最接近人类水平的代理推荐使用 delay18/FalcoBF
。
Windows 用户注意事项
- 路径中斜杠需用反斜杠替代。
- 有可能需要省略命令中的
python3
和pip3
中的数字。 - 如果不使用 Anaconda,可能需要手动调整系统 PATH 变量。
- 与 Dolphin 的通信通过本地主回路接口实现。
- 在 Windows 10 上,建议在 Linux 子系统中操作,但需注意获取 Dolphin 软件的步骤不同。
AI 训练
AI 训练由 phillip/train.py
控制。本地和集群上的训练均可进行,推荐使用定制的 Dolphin 模拟器以通过 zmq 协议实现与 AI 的同步。训练可通过以下步骤进行:
python3 runner.py # 生成训练路径
python3 launcher.py saves/path/ --init --local [--agents number_of_agents] [--log_agents]
使用 tensorboard
可查看训练日志。注意,目前 Windows 系统不支持训练功能。
支持与社区
相关支持可以通过项目的 Discord 社区获得。此外,项目开发者会在各大视频网站上发布相关的游戏录像与教程。
鸣谢
项目得到了许多社区贡献者的支持,特别感谢 altf4
和 spxtr
提供了许多宝贵的技术支持和资源。