强化学习(Reinforcement Learning, RL)和模型预测控制(Model Predictive Control, MPC)在许多领域都有广泛的应用,如自动驾驶、机器人控制和能源管理等。它们都是求解最优控制问题策略的方法,但在方法和应用上有一些显著的区别和联系。本文将以清华大学李升波教授编著的强化学习教材《Reinforcement Learning for Sequential Decision and Optimal Control》为参考,深入对比分析强化学习(RL)和模型预测控制(MPC)。
从架构上看,强化学习(RL)和模型预测控制(MPC)均可统一为求解马尔可夫决策过程
subject to
or
其中
RL起源于人工智能领域,主要依赖于试错和奖励机制来训练智能体,在解决复杂系统和未知环境中的决策问题时表现突出,广泛应用于机器人控制、游戏 AI 和自动驾驶等领域。RL的核心思想是通过试错来获得经验,并根据这些经验调整策略。在强化学习中,智能体在每个时间步与环境进行交互,执行动作,并接收环境的奖励。强化学习的求解算法可以分为直接法和间接法:
(1)直接法直接优化策略的参数,例如策略梯度方法(Policy Gradient Methods)。这类方法通过估计策略梯度来更新参数,使得策略能够更好地选择价值更高的动作;
(2)间接法通过求解贝尔曼方程(Bellman Equation)来间接优化策略。这类方法包括值迭代(Value Iteration)和策略迭代(Policy Iteration)。值迭代通过反复更新状态值函数来找到最优策略,而策略迭代则交替进行策略评估和策略改进,直到收敛到最优策略。
直接法:优化策略参数
间接法:迭代求解贝尔曼方程
MPC起源于控制工程领域,广泛应用于工业过程控制、机器人运动规划和航空航天等领域。MPC在预测时域内利用系统动力学模型来预测未来的系统状态,并优化控制动作。在每个控制周期内,MPC通过求解优化问题来确定一个最优的控制序列,但只应用序列中的第一个控制量,然后,系统状态更新,新的预测和优化基于最新状态进行。通过这种滚动优化和反馈校正,MPC能够在满足约束条件的同时,实现系统的最优控制。
MPC中的滚动时域控制
尽管RL和MPC都可以用于实现最优控制,它们由于来自不同的领域,呈现出显著的差异,尤其在描述语言、所需对象信息以及优化过程方面。
描述语言差异
RL起源于统计学习领域,而MPC则根植于反馈控制理论。由于背景不同,它们在描述系统和任务时采用了不同的语言。下表总结了两者的描述语言,存在三个显著的差异:
1.RL通常处理随机环境,而MPC多应用于确定性系统;
2.RL通常使用概率模型表示环境转移,而MPC则构建状态空间方程来表示系统模型;
3.RL的目标是最大化累计奖励函数,而MPC则最小化累计代价函数。
RL和MPC描述语言差异
所需对象信息差异
MPC依赖于准确的系统动力学模型来预测未来状态并优化动作,这意味着需要事先对环境进行建模。然而,对于复杂系统,无论是基于物理定律的建模还是统计学习方法,精确获取系统动力学模型都是极具挑战性的。
RL则通过与环境交互,借助试错机制训练智能体,这需要一个可供交互的环境进行训练。尽管RL也有无模型(model-free RL)和有模型(model-based RL)之分,但在model-based RL中,模型通常是利用交互数据与策略联合训练的。
优化过程差异
RL和MPC在求解和应用最优动作的过程中存在明显不同。RL通常通过离线学习阶段与环境交互,进而求解出整个状态空间的最优策略,并在在线阶段将其应用于被控系统。而MPC则在每个时间步在线求解当前状态下的最优动作序列,并仅将第一步动作应用于系统。
下图对比了RL和MPC在求解最优动作方式上的不同。由于RL需要搜索整个状态空间,即便只有少数局部状态不可行,RL仍可能无法求解出可行策略。相比之下,MPC在处理不可行状态时具有更高的容忍度,因为它只需针对当前状态计算最优动作序列,而不必顾及所有可能的状态。
RL和MPC求解最优动作的比较
由于求解过程的不同,RL和MPC在实际应用中的计算负担也有所区别。RL的策略通常以神经网络为载体,在在线阶段通过策略网络的前向传播得到最优动作,因而在线计算负担较小。而MPC则利用系统动力学模型,构造优化问题,随着预测时域的增加,优化问题的计算复杂度会迅速上升。特别是对于状态变量和控制变量维度较大的复杂对象,优化问题的规模也会变得更为庞大。对于一般的非线性模型而言,所需求解的非线性优化问题属于NP难题,目前尚无通用的多项式时间解法,这使得在线优化的负担较重,难以实现实时求解。不过,显式MPC技术是一个值得注意的例外。它在离线阶段通过多参数优化方法生成最优策略查找表,从而在在线阶段大幅降低计算负担。实际上,显式MPC可以被看作是一种特殊的基于模型的RL算法。
参考资料
[1] Li, S. E. Reinforcement Learning for Sequential Decision and Optimal Control. Springer Verlag, 2023.
[2] Guan, Y., et al. Direct and Indirect Reinforcement Learning. International Journal of Intelligent Systems, vol. 36, no. 5, 2021, pp. 4439-4467.
[3] Bertsekas, D. Reinforcement Learning and Optimal Control. Athena Scientific, 2019.
[4] Garcia, C. E., Prett, D. M., and Morari, M. Model Predictive Control: Theory and Practice—A Survey. Automatica, vol. 25, no. 3, 1989, pp. 335-348.
[5] Allgöwer, Frank, and Alex Zheng, editors. Nonlinear Model Predictive Control. Vol. 26, Birkhäuser, 2012.
[6]陈虹. 模型预测控制. 科学出版社, 2013.