强化学习(RL)完全入门:从零基础到理解无人机智能飞控
本文目标:让没有任何强化学习基础的读者,理解 RL 的核心原理、数学公式、三大范式,以及为什么它正在改变无人机飞控和自动驾驶。阅读本文大约需要 30 分钟。
引言:为什么 RL 值得学?
2025-2026 年,强化学习(Reinforcement Learning, RL)正在经历一个「第二次爆发」:
- 无人机竞速:TU Delft 的 SkyDreamer 用 RL 实现了 21 m/s 的自主高速飞行,完成倒飞筋斗和 Split-S 机动
- 自动驾驶:小鹏 VLA 2.0、理想 MindVLA-o1 纷纷将 RL 嵌入端到端驾驶系统
- 世界模型:DreamerV3 让飞行器「先做梦再飞」,真机交互量降低 10000 倍
- 大模型对齐:ChatGPT 的 RLHF 本质就是 RL——人类反馈作为奖励信号
但 RL 的入门门槛确实高——Bellman 方程、策略梯度、TD 误差……术语密集、数学抽象。
本文用一个方法解决:概念→定义→性质→表示→例子→应用,每一步都不跳。
一、概念:强化学习的直觉理解
1.1 核心比喻:训狗
想象你在训一只狗:
- 你发出指令「坐下」
- 狗做了各种动作:转圈、叫、坐下
- 坐下时你给零食(奖励),其他动作不给
- 狗自己摸索出「坐下 → 有零食」的规律
这个过程的数学抽象就是 RL:
1 | Agent(狗)在 Environment(训练场)中 |
1.2 与监督学习的本质区别
| 监督学习 | 强化学习 | |
|---|---|---|
| 数据 | 人标注的正确答案 | 环境返回的奖励信号 |
| 反馈 | 即时告知「你错了」 | 延迟告知「总分多少」 |
| 目标 | 模仿正确答案 | 最大化长期收益 |
| 错误 | 直接修正 | 自己尝试发现 |
| 适合 | 分类、检测、翻译 | 控制、博弈、决策 |
RL 的核心挑战:延迟奖励——你可能做了 100 步操作,最后一步才知道结果。怎么把最后的结果「归功」到前面的关键步骤?这就是 Bellman 方程要解决的问题。
二、定义:MDP 的数学形式化
2.1 历史渊源
1957 年:Richard Bellman 提出动态规划和 Bellman 方程。他当时研究的是最优控制问题——如何分配有限资源达到最大效益。
1960 年:Ronald Howard 出版《Dynamic Programming and Markov Processes》,将 Bellman 的工作系统化为 MDP 框架。
1989 年:Chris Watkins 提出 Q-Learning,首次将 MDP 与「从经验中学习」结合,开创了现代 RL。
2015 年:DeepMind 的 DQN 在 Atari 游戏中超越人类,标志着深度 RL 时代的到来。
2.2 MDP 五要素
MDP(Markov Decision Process,马尔可夫决策过程)是 RL 的数学框架,由五个要素构成:
① 状态空间 S(State Space)
所有可能的状态集合。例如飞行器的状态:
其中 是位置, 是速度, 是姿态角。
② 动作空间 A(Action Space)
所有可能动作的集合。例如四旋翼:
其中 是总推力, 是三个轴的力矩。
③ 转移概率 P(Transition Probability)
给定当前状态 和动作 ,下一状态 的概率分布。对于确定性环境(如物理仿真),这就是牛顿力学:
④ 奖励函数 R(Reward Function)
环境返回的标量信号。对截击任务:
- 命中目标:
- 缩短距离:
- 脱靶:
⑤ 折扣因子 γ(Discount Factor)
控制「远见」程度:
- :只看眼前,鼠目寸光
- :考虑约 100 步后的长期收益()
2.3 马尔可夫性
MDP 的核心假设——未来只取决于现在,与过去无关:
这在物理系统中天然成立——飞行的下一时刻只由当前位置、速度和受力决定。
三、性质:RL 的核心特性与关键折衷
3.1 三个核心性质
| 性质 | 含义 | 飞行器中的体现 |
|---|---|---|
| 试错学习 | 不需要人教正确答案,自己从奖励中学习 | 飞控策略在仿真中摔了几万次后学会飞 |
| 延迟奖励 | 动作的后果可能很久才显现 | 前 50 步的飞行姿态选择,在最后 1 步决定是否命中 |
| 探索与利用 | 已经会的方法 vs 尝试新方法 | 用已知的 PN 制导律 vs 尝试一个没见过的机动 |
3.2 探索-利用困境(Exploration-Exploitation Dilemma)
这是 RL 最核心的矛盾:
1 | 已知最优动作:Q值最高 → 选它(利用 Exploitation) |
经典解法——ε-greedy:
1 | 以概率 1-ε:选择 Q 值最大的动作(利用) |
3.3 三大范式的根本分歧
| 维度 | 学什么 | 怎么决策 |
|---|---|---|
| Value-Based | 价值函数 Q(s,a) | 选 Q 值最大的动作 |
| Policy-Based | 策略函数 π(a|s) | 直接从状态映射到动作 |
| Model-Based | 环境模型 f(s,a)→s’ | 在世界模型中规划/「做梦」 |
四、表示:Bellman 方程与价值函数
4.1 历史
Bellman 方程得名于 Richard Bellman(1920-1984),美国应用数学家。他在 1950 年代为兰德公司研究多阶段决策过程时提出了动态规划和「最优性原理」——「最优策略具有这样的性质:无论初始状态和初始决策如何,剩余决策必须构成关于初始决策所产生状态的最优策略。」
这句话被压缩成了那条著名的方程。
4.2 Bellman 方程
RL 的唯一定理:
逐字翻译:在状态 做动作 的价值 = 即时奖励 + 折扣 × 新状态下最佳动作的价值。
直觉:
- 右边的 — 立刻得到的好处
- 右边的 — 后续能走多远
- 左边的 — 当前决策的总价值
4.3 价值函数的标准形式
状态价值函数 V(s)(从状态 s 出发的期望累积奖励):
动作价值函数 Q(s,a)(从状态 s 做动作 a 出发):
两者关系:
4.4 TD 误差(Temporal Difference Error)
| | 实际比预期好 → 上调 Q(s,a) |
| | 实际比预期差 → 下调 Q(s,a) |
| | 完美估计 → 不动 |
Q-Learning 的更新规则:
其中 是学习率(0~1),控制更新速度。
五、例子:手算 Grid World
5.1 设置
考虑一个 3×4 的网格世界(详见第二节的 MDP 图):
- 起点 S₀:左上角 (0,0)
- 目标 ⭐:右下角,奖励 +10
- 陷阱 ⚠:右上角,奖励 -10
- 墙:第二行第二列,不可穿越
- 动作:↑↓←→,每次移动奖励 -1(鼓励走最短路径)
5.2 手算 Bellman 更新
假设 Q 表初始化全是 0。经过多次更新后,目标周边格子的 Q 值:
步骤 1:从目标左边的格子 (3,1) 出发,向右走:
1 | Q((3,1), →) = -1 + 0.9 × 0 = -1 # 第一次,还不知道目标值 |
步骤 2:从目标上方格子 (2,2) 出发,向下走:
1 | Q((2,2), ↓) = -1 + 0.9 × max Q((3,2), ·) = -1 + 0.9×0 = -1 |
步骤 N:多次迭代后 Q 值收敛:
1 | Q((3,1), →) = -1 + 0.9 × 10 = 8.0 # 目标右边 → 值很高 |
5.3 最优策略
经过足够多次更新后,Q 表收敛。最优策略 = 每步选 Q 值最大的动作:
1 | 起点 → 下 → 下 → 右 → 右 → 右 → 目标 |
六、Value-Based 方法:先学会「评价」,再选动作
6.1 Q-Learning(1989)
核心思想:不学策略,学价值。有了准确的价值估计,最优动作自然就是 Q 值最大的那个。
算法伪代码:
1 | 初始化 Q(s,a)=0(或随机) |
关键性质:Q-Learning 是 off-policy 的——它学习最优策略,但执行时可以用任意策略(如 ε-greedy)。这意味着可以从历史数据中学习,不需要每次学完重新采样。
6.2 DQN(Deep Q-Network, 2013/2015)
为什么需要 DQN:Q-Learning 用表格存 Q 值,状态空间稍大就存不下。四个电机每个 1000 个取值 → 1000⁴ = 1 万亿个状态。
DQN 的解法:用神经网络拟合 Q 函数:
| 创新 | 解决的问题 | 方法 |
|---|---|---|
| 经验回放 | 样本相关性 → 训练不稳定 | 随机从历史中采样 batch |
| 目标网络 | Q 值估计和更新耦合 → 发散 | 固定一个旧网络计算目标值 |
| 损失函数 | 回归问题 |
历史意义:2013 年 DeepMind 用 DQN 在 7 个 Atari 游戏中超越人类玩家。2015 年 Nature 论文扩展到 49 个游戏。
6.3 后续发展
| 算法 | 年份 | 改进 |
|---|---|---|
| DDQN | 2016 | 解决 Q 值高估问题:用当前网络选动作,目标网络评价值 |
| Dueling DQN | 2016 | 分解 Q=V+A,分别估计状态价值和动作优势 |
| Rainbow | 2017 | 整合 6 项改进(DDQN+Dueling+优先回放+分布式+噪声网络+多步) |
七、Policy-Based 方法:直接学「怎么做」
7.1 为什么需要 Policy Gradient?
Value-Based 方法有一个致命缺陷——只能处理离散动作。飞行器的电机指令是连续值,不能简单地「选油门=50% 还是 51%」。
7.2 REINFORCE(Williams, 1992)
最简单的策略梯度算法:
直觉:
- 如果一条轨迹的总奖励 R(τ) 高 → 增大这条轨迹上所有动作的概率
- 如果总奖励低 → 减小概率
问题:方差极大——好轨迹里的坏动作也被鼓励,坏轨迹里的好动作也被惩罚。
7.3 Actor-Critic 架构
引入 Critic(评价者)来降低方差:
1 | ┌──────────┐ ┌──────────┐ |
优势函数(Advantage Function):
- :这个动作比平均水平好
- :这个动作比平均水平差
用 替代 REINFORCE 中的 ,方差大幅降低。
7.4 PPO(Proximal Policy Optimization, 2017)
当前最主流的 RL 算法。PPO 解决 Actor-Critic 的核心问题——策略更新太快导致训练崩溃。
核心技巧——Clip:
其中 是新旧策略的概率比。
直觉:
- 如果新旧策略差异在 范围内 → 正常更新
- 如果差异超过这个范围 → 截断,不更新
PPO 的成功案例:
- OpenAI Five(Dota 2,2018)
- 波士顿动力 Atlas 行走(2020)
- SkyDreamer 无人机竞速(2025)
八、Model-Based RL:学一个「世界模型」
8.1 为什么需要世界模型?
PPO 这样的 Model-Free 算法需要海量交互:
1 | 训练一个四旋翼飞控: |
对于真实飞行器,每次飞行都有时间和磨损成本,不可能在真机上跑 1000 万次。
8.2 DreamerV3:在「梦」中学习
DreamerV3(DeepMind, 2023)是 Model-Based RL 的代表作:
1 | Step 1: 用少量真机数据学习世界模型 |
8.3 SkyDreamer:世界模型驱动的无人机
SkyDreamer(TU Delft, 2025)将 Dreamer 的思想用于无人机竞速:
| 传统 PPO | SkyDreamer (Model-Based) | |
|---|---|---|
| 仿真交互 | 1000 万步 | ~1 万步 + 世界模型训练 |
| 世界模型解码 | 无 | 预测真值姿态 + 电池衰减 + 电机上限 |
| 真机部署 | 需要域随机化 + 系统辨识 | 零微调(世界模型已隐式估计物理参数) |
| 性能 | ~10 m/s | 21 m/s, 6G, 倒飞筋斗 |
关键洞察:SkyDreamer 的世界模型不重建图像——它解码到「特权信息」(真实位姿、电机参数),这让策略隐式地学会了状态估计。
九、对比:三大范式一表总结
| 维度 | Value-Based | Policy-Based | Model-Based |
|---|---|---|---|
| 学什么 | Q 函数 | 策略 π | 环境模型 + 策略 |
| 代表算法 | DQN, Rainbow | PPO, SAC | DreamerV3, MuZero |
| 动作空间 | 仅离散 | 连续 ✓ | 离散/连续 |
| 样本效率 | ★★☆☆☆ | ★★☆☆☆ | ★★★★★ |
| 训练稳定性 | ★★★★☆ | ★★★☆☆ | ★★☆☆☆ |
| 在线/离线 | 可离线 | 需在线 | 可「做梦」 |
| 适合场景 | 游戏、推荐 | 机器人控制 | 飞行器、自动驾驶 |
9.1 2025-2026 趋势:范式融合
- PPO + World Model:Dreamer 系列用 Model-Based 提高样本效率 × Policy Gradient 的灵活性
- Actor-Critic 统一:PPO/SAC 本来就是 Value+Policy 的融合
- 在线适应:Neural-Fly 在飞行中在线更新世界模型,不需要离线重训练
十、工程应用:飞行器与自动驾驶
10.1 RL 在无人机中的应用
| 应用 | RL 方法 | 效果 |
|---|---|---|
| 敏捷飞行 | PPO / DreamerV3 | 21 m/s 竞速、倒飞筋斗 |
| 自主避障 | DQN / PPO | 森林中 20 m/s 穿行 |
| 编队控制 | Multi-Agent RL | 250 架无人机协同 |
| 抓取与操作 | SAC / PPO | 飞行机械臂抓取 |
| 截击制导 | PPO / SAC | 超越 PN 律的拦截策略 |
10.2 RL 在自动驾驶中的应用
| 应用 | RL 方法 | 代表 |
|---|---|---|
| 端到端驾驶 | PPO + World Model | 小鹏 VLA 2.0 |
| 轨迹规划 | DreamerV3 | Wayve GAIA-1 |
| 强化学习对齐 | RL from Human Feedback | — |
| 在线学习 | X-World + RL | 闭环仿真评估 |
10.3 RLHF:RL 在大模型中的应用
ChatGPT 的核心训练管线最后一步就是 RL:
1 | 预训练 → 监督微调(SFT) → 奖励模型 → PPO(RL) |
RLHF 中的 = 奖励模型的输出分数,策略 π = LLM 本身(决定下一个 token 选什么)。这里的「动作空间」是 50000 个 token 的词汇表——Q-Learning 直接失效(动作太多),必须用 PPO。
知识体系总览
完整概念地图
1 | ┌──────────────────────────┐ |
核心公式速查卡
| 公式 | 名称 | 作用 |
|---|---|---|
| Bellman 方程 | RL 的核心定理 | |
| TD 误差 | 衡量「现实 vs 预期」 | |
| Q 更新 | 用误差修正估计 | |
| 策略梯度 | Policy-Based 的核心 | |
| 优势函数 | Actor-Critic 的关键 | |
| PPO 损失 | 稳定策略更新 |
给自学者的推荐阅读顺序
- 第一步(30 分钟):本文 一~五 节——建立 MDP 和 Bellman 方程的直觉
- 第二步(1 小时):本文 六~九 节——理解三大范式的区别
- 第三步(动手):OpenAI Gym 跑一个 CartPole(DQN 实现,~50 行代码)
- 第四步(进阶):读 DreamerV3 论文(DeepMind, 2023)理解世界模型
- 第五步(实战):Flightmare 或 Isaac Gym 环境训练一个四旋翼飞控
参考文献
- Sutton, R. S., & Barto, A. G. (2018). Reinforcement Learning: An Introduction (2nd ed.). MIT Press.
- Watkins, C. J. C. H. (1989). Learning from Delayed Rewards. PhD Thesis, Cambridge.
- Mnih, V., et al. (2015). Human-level control through deep reinforcement learning. Nature, 518, 529–533.
- Schulman, J., et al. (2017). Proximal Policy Optimization Algorithms. arXiv:1707.06347.
- Hafner, D., et al. (2023). Mastering Diverse Domains through World Models. arXiv:2301.04104.
- Verraest, A., et al. (2025). SkyDreamer: Interpretable End-to-End Vision-Based Drone Racing with Model-Based RL. arXiv:2510.14783.
- Bellman, R. (1957). Dynamic Programming. Princeton University Press.
- Williams, R. J. (1992). Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning. Machine Learning, 8, 229–256.