Hugging Face AI vs. AI:多智能体强化学习竞赛系统
Hugging Face 推出了 AI vs. AI,这是一套开源系统,旨在对多智能体环境中的深度强化学习(RL)模型的实力进行排名。通过促进智能体之间的持续竞争,该系统提供了相对的技能衡量以及一种稳健的评估技术,可在多样化的行为范围内测试策略。
系统架构与组件
AI vs. AI 由托管在 Hugging Face 基础设施上的三个主要技术要素组成:
- Hugging Face Space: 利用匹配算法和调度器,在免费硬件上将模型对战作为后台任务运行。
- Hugging Face Dataset: 充当持久层,存储比赛历史和模型评分。
- Leaderboard: 一个公共界面,从数据集检索比赛结果并展示模型当前的 ELO 评分。
当用户将训练好的模型推送到 Hub 时,系统会自动对其进行评估,并与其他已提交的智能体进行排名。
ELO 评分与匹配算法
AI vs. AI 并不依赖客观指标,而是使用 ELO 评分系统 来建立相对的技能衡量。在此实现中,系统为所有新模型设定一个任意的初始评分 1200。为了保持整个池的平均 ELO 恒定,得分与失分是对称的(例如 +10 与 -10)。
匹配流程
匹配算法通过以下步骤确保多样性与竞争平衡:
- Model Gathering: 从 Hub 收集所有可用模型。
- Queue Creation: 将模型放入队列。
- Pairing: 系统弹出第一个模型,并与从评分最接近的 $n$ 个模型中随机选取的模型配对。
- Simulation: 在环境中(例如 Unity 可执行文件)模拟比赛,并将结果记录到 Hugging Face Dataset 中。
- Rating Update: 根据比赛结果使用 ELO 公式更新双方的评分。
- Iteration: 重复该过程直至队列为空,然后循环重新开始。
实现:SoccerTwos 挑战
为了演示该系统,Hugging Face 在其深度强化学习课程的第 7 单元中实现了 SoccerTwos Challenge。该挑战使用 Unity ML-Agents 环境,2 对 2 的足球队需要协作进球。
此实现的关键特性包括:
- Visual Demo: 一个专用的 Space,允许用户选择两支球队并实时可视化它们的比赛。
- Community Engagement: 一个专用的 Discord 频道 (
ai-vs-ai-competition),用于分享建议和交流见解。
泛化与未来应用
由于 AI vs. AI 系统是 环境无关 的,它可以应用于任何对抗性多智能体场景。Hugging Face 打算将该工具扩展到支持其他环境,包括来自 PettingZoo 的环境以及自定义环境如 "SnowballFight"。
通过让智能体面对多种策略进行测试,该系统作为一种稳健的评估技术,提供了对策略质量的全面视角,而传统的静态指标可能无法捕捉到这些信息。