MPC与RL的区别
MPC(模型预测控制) 和 强化学习(RL) 都用于求解序列决策问题,但它们的核心理念、依赖条件和应用场景有本质区别。
简单直观的比喻:
-
MPC 像一位精于计算的工程师:基于已知的物理模型,在线快速计算未来几步的最优路径。每一步都重新规划。
-
强化学习 像一位从经验中成长的棋手:通过与环境的反复试错(离线训练),最终形成能应对各种局面的“直觉”或策略。执行时决策极快。
下面从几个关键维度对比:
| 维度 | MPC | 强化学习 |
|---|---|---|
| 核心思路 | 在线、基于模型。在每一时刻,利用系统模型预测未来N步的演化,求解一个有限时域的开环优化问题,然后只执行第一步。 | 离线、基于数据。通过智能体与环境的大量交互(或已有数据),学习一个从状态到动作的映射(策略),使得累积回报最大化。 |
| 对模型的要求 | 强依赖。需要精确或足够准确的数学模型(微分/差分方程),描述状态如何随动作变化。 | 弱依赖/无依赖。可以不依赖模型(Model-free RL,如DQN,PPO),或利用模型辅助(Model-based RL)。模型可以是学到的。 |
| 计算方式 | 在线实时计算。每个采样时刻都要解一个优化问题(通常是非线性规划或二次规划)。计算负担重,但能适应新变化。 | 离线训练,在线执行。训练时间可能很长(数小时甚至数周),但训练完成后,在线决策只需要一次简单的策略网络前向计算(微秒级)。 |
| 适应性与鲁棒性 | 对模型误差敏感。若模型不准,性能会下降甚至不稳定。常结合鲁棒MPC或自适应MPC。 | 对训练环境分布内的扰动有一定鲁棒性。但面对训练中未见过的场景(分布外情况)可能表现很差。 |
| 目标和奖励 | 成本函数:通常是二次型或具体物理量(如能量、误差),目标明确,物理意义清晰。 | 回报函数:可以是非线性、非平滑、甚至无法解析表达的稀疏奖励(如“到达目标+1,碰到障碍-100”)。 |
| 典型应用 | 机器人轨迹跟踪、自动驾驶车辆横纵向控制、化工过程控制、无人机飞行控制。 | 游戏AI(AlphaGo,Atari)、机器人操作技能学习、推荐系统、自动化参数调优。 |
1. 模型预测控制(MPC)
- 核心流程:预测(用模型预测未来 N 步状态)→优化(求解有限时域最优控制序列)→执行(只取第一个动作,下一时刻重复)。
- 关键特点:
- 适合模型精确、约束明确、短期优化的场景。
- 在线计算依赖优化求解器(如 QP),实时性受求解速度限制。
- 模型误差会直接影响性能,需频繁校准。
2. 强化学习(RL)
- 核心流程:智能体与环境交互→接收奖励→更新策略 / 价值函数→迭代优化。
- 关键特点:
- 适合模型未知、不确定性强、长期奖励优化的场景。
- 训练完成后推理速度快、开销小,但训练样本需求高。
- 可解释性弱,安全约束需额外设计。

浙公网安备 33010602011771号