游戏AI
概述
游戏一直是AI研究的重要试验场。从简单的Atari游戏到复杂的即时战略游戏,强化学习在游戏AI中取得了一系列里程碑式的突破。
Atari:从DQN到Rainbow
DQN(Deep Q-Network)
Mnih et al. (2015) 首次证明深度RL可以直接从像素学习玩Atari游戏:
关键创新:
- 卷积神经网络处理原始像素输入
- 经验回放(Experience Replay)打破数据相关性
- 目标网络(Target Network)稳定训练
输入:最近4帧84×84灰度图像堆叠
输出:每个动作的Q值
结果:在49款Atari游戏中,29款超过人类水平
Double DQN
Van Hasselt et al. (2016) 解决Q值过估计问题:
用在线网络选择动作,目标网络评估价值。
Dueling DQN
Wang et al. (2016) 分离状态价值和动作优势:
Prioritized Experience Replay
Schaul et al. (2016) 优先采样TD误差大的经验。
Rainbow
Hessel et al. (2018) 将六项改进整合:
- Double DQN
- Prioritized replay
- Dueling architecture
- Multi-step returns
- Distributional RL (C51)
- NoisyNet
结果:在大多数Atari游戏上达到SOTA。
棋盘游戏:AlphaGo系列
AlphaGo
Silver et al. (2016) 首次击败围棋世界冠军:
三阶段训练:
- 监督学习策略网络:从人类棋谱学习 \(p_\sigma(a|s)\)
- RL策略网络:通过自我对弈(self-play)强化 \(p_\rho(a|s)\)
- 价值网络:预测局面胜率 \(v_\theta(s) \approx \mathbb{E}[z|s]\)
MCTS(蒙特卡洛树搜索):
在推理时结合策略网络和价值网络引导搜索:
AlphaZero
Silver et al. (2018) 完全去除人类知识,从零开始学习:
关键简化:
- 无人类数据:完全通过自我对弈学习
- 单一网络:同时输出策略 \(\mathbf{p}\) 和价值 \(v\)
- 统一框架:同样的算法玩围棋、国际象棋、日本将棋
训练目标:
其中 \(z\) 是实际对弈结果,\(\boldsymbol{\pi}\) 是MCTS搜索概率。
结果:仅用几小时训练就超越了AlphaGo,以及所有传统国际象棋引擎。
MuZero
Schrittwieser et al. (2020) 进一步去除了对环境规则的依赖:
学习的模型:
- 表示函数:\(h(o_t) \to s_t\)(观测→隐状态)
- 动力学函数:\(g(s_t, a_t) \to (r_{t+1}, s_{t+1})\)(状态转移)
- 预测函数:\(f(s_t) \to (p_t, v_t)\)(策略和价值)
关键创新:
- 不需要知道游戏规则
- 学到的模型只需要对规划有用,不需要重构观测
- 在Atari上也取得SOTA
graph LR
A[AlphaGo<br/>2016] --> B[AlphaGo Zero<br/>2017]
B --> C[AlphaZero<br/>2018]
C --> D[MuZero<br/>2020]
A1[人类数据 + RL] --> A
A2[纯自我对弈] --> B
A3[多游戏通用] --> C
A4[无需规则] --> D
style A fill:#faa
style B fill:#fda
style C fill:#ffa
style D fill:#afa
电子竞技
OpenAI Five(Dota 2)
OpenAI (2019) 在5v5 Dota 2中击败世界冠军队伍:
规模:
- 每个英雄由独立的LSTM策略控制
- 观测空间:~20000维(无视觉输入,使用游戏API)
- 动作空间:~170000(离散化)
- 训练:使用PPO,128000个CPU + 256个GPU
- 训练时长:相当于人类45000年的游戏经验
关键技术:
- 大规模PPO:分布式训练基础设施
- 奖励塑形:精心设计的密集奖励
- 手术式学习率调整:训练过程中精细调参
- 协作策略:5个智能体共享参数但独立决策
局限:
- 有一些限制规则(如英雄池受限)
- 依赖游戏API而非视觉输入
AlphaStar(StarCraft II)
Vinyals et al. (2019) 在星际争霸II中达到大师级水平:
挑战:
- 不完全信息(战争迷雾)
- 实时决策(非回合制)
- 长期战略规划(一局约20分钟)
- 巨大的动作空间
关键技术:
- 联赛训练(League Training):维护一个智能体联赛
- 主智能体(Main Agent):不断进化
- 主利用者(Main Exploiter):专门针对主智能体弱点
- 联赛利用者(League Exploiter):利用整个联赛的弱点
- 模仿学习预训练:从人类对战数据开始
- Transformer架构:处理变长的实体列表
- 自回归策略:分步输出动作类型、目标等
结果:达到99.8%的玩家水平(大师级),击败顶尖职业选手。
开放世界游戏
Voyager(Minecraft)
Wang et al. (2023) 使用LLM驱动的智能体在Minecraft中持续探索:
架构:
- 自动课程:LLM生成越来越复杂的任务
- 技能库:将成功的行为存储为可复用的代码
- 迭代提示:根据执行反馈改进代码
特点:不使用传统RL训练,而是用LLM的推理能力实现探索和适应。
STEVE-1
基于预训练视觉模型和文本指令的Minecraft智能体,结合了基础模型和RL微调。
社交与沟通游戏
CICERO(Diplomacy)
Meta AI (2022) 在外交游戏中达到人类水平:
挑战:
- 需要自然语言沟通
- 需要战略规划
- 需要建立信任和联盟
- 涉及欺骗和谈判
架构:
- 语言模型:生成自然语言消息
- 战略推理:基于搜索的行动规划
- 意图建模:预测其他玩家的行为
- 对话-行动一致性:确保说的和做的一致
结果:在在线匿名对局中,排名前10%。
游戏AI发展脉络
graph TD
A[2013: DQN<br/>Atari] --> B[2016: AlphaGo<br/>围棋]
B --> C[2017: AlphaZero<br/>多棋类]
A --> D[2018: Rainbow<br/>Atari SOTA]
C --> E[2019: OpenAI Five<br/>Dota 2]
C --> F[2019: AlphaStar<br/>星际争霸]
C --> G[2020: MuZero<br/>无规则]
F --> H[2022: CICERO<br/>外交]
G --> I[2023: Voyager<br/>Minecraft]
style A fill:#faa
style B fill:#fda
style C fill:#ffa
style E fill:#afa
style F fill:#afa
style H fill:#abf
style I fill:#abf
游戏AI的启示
技术层面
| 突破 | 关键技术 | 通用化程度 |
|---|---|---|
| DQN | 深度Q网络 + 经验回放 | 高 |
| AlphaGo | MCTS + RL + SL | 中(需要自我对弈) |
| AlphaZero | 纯自我对弈 | 高(多游戏通用) |
| MuZero | 学习的世界模型 | 高(无需规则) |
| OpenAI Five | 大规模PPO | 中(需要大量工程) |
| AlphaStar | 联赛训练 | 中 |
| CICERO | RL + LLM | 新范式 |
从游戏到现实
游戏AI的方法正在向现实应用迁移:
- MCTS规划 → 机器人规划
- 自我对弈 → 对抗训练
- 联赛训练 → 多智能体竞争
- LLM + RL → 通用智能体
参考文献
- Mnih et al., "Human-level Control through Deep Reinforcement Learning" (Nature 2015)
- Silver et al., "Mastering the Game of Go with Deep Neural Networks and Tree Search" (Nature 2016)
- Silver et al., "A General Reinforcement Learning Algorithm that Masters Chess, Shogi, and Go" (Science 2018)
- Schrittwieser et al., "Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model" (Nature 2020)
- OpenAI, "Dota 2 with Large Scale Deep Reinforcement Learning" (2019)
- Vinyals et al., "Grandmaster Level in StarCraft II Using Multi-Agent Reinforcement Learning" (Nature 2019)
- Meta FAIR, "Human-Level Play in the Game of Diplomacy by Combining Language Models with Strategic Reasoning" (Science 2022)
- Wang et al., "Voyager: An Open-Ended Embodied Agent with Large Language Models" (2023)