引言

想象一下训练一个机器人端着放满饮料的托盘。在模拟环境中,如果机器人绊倒并打碎了杯子,你只需点击“重置”即可。然而,在现实世界中,这种失败代价高昂、危险且难以收拾。这就是深度强化学习 (DRL) 中的根本矛盾。虽然 DRL 已经取得了令人难以置信的成就——从击败围棋特级大师到控制复杂的机械手——但它本质上是通过试错来学习的。它探索世界,犯错,然后逐渐优化策略以最大化奖励。

对于机器人技术而言,仅仅“最大化奖励”是不够的;我们需要稳定性 。 我们需要确保机器人不会进入危险状态或剧烈震荡。传统上,控制理论通过李雅普诺夫 (Lyapunov) 稳定性来提供这些保证,这是一个数学框架,用于证明系统会收敛到一个安全的平衡点。

最近,研究人员试图通过教神经网络在学习控制策略的同时学习李雅普诺夫函数,将这两个领域结合起来。这在学习过程中提供了一个“安全证书”。然而,这里有一个陷阱: 当前的方法样本效率低下 。 它们依赖于“在策略 (on-policy) ”学习,这意味着它们必须丢弃旧数据并不断生成新经验来验证稳定性。对于物理机器人来说,这意味着数小时的磨损和消耗。

在论文 《Off Policy Lyapunov Stability in Reinforcement Learning》 (强化学习中的离策略李雅普诺夫稳定性) 中,来自维多利亚大学的研究人员提出了一种新颖的解决方案。他们引入了一个框架,允许智能体使用离策略 (off-policy) 数据 (即过去收集的经验) 来学习稳定性保证。通过将安全检查与当前策略解耦,他们创造了一种既数学严谨又数据高效的方法。

在这篇文章中,我们将剖析他们是如何做到这一点的,离策略李雅普诺夫学习背后的数学原理,以及他们如何将其整合到软 Actor-Critic (SAC) 和近端策略优化 (PPO) 等最先进的算法中。


背景: 稳定性问题

要理解这篇论文的贡献,我们首先需要了解所涉及的工具: 李雅普诺夫函数及其目前在 RL 中的使用方式。

什么是李雅普诺夫稳定性?

李雅普诺夫稳定性是控制理论的黄金标准。直观地看,想象一颗弹珠在碗里滚动。无论你把弹珠放在哪里,重力都会把它拉向底部 (平衡点) 。

李雅普诺夫函数 , \(L(x)\),是这种“碗”的数学表示。为了证明系统是稳定的,我们需要找到一个满足两个主要条件的函数 \(L(x)\):

  1. 正定性 (Positive Definite) : 该函数在除平衡点 (目标) 以外的任何地方都为正,在平衡点处为零。可以将其视为误差的“能量”。
  2. 导数为负 (Negative Derivative) : 函数值沿着系统的轨迹随时间减小。随着系统的移动,其“能量”必须耗散,直到达到目标。

在经典控制中,工程师使用物理方程手动推导这些函数。在无模型 RL 中,我们没有物理方程。因此,我们需要使用神经李雅普诺夫函数——一个训练来近似这种几何结构的神经网络。

在策略学习的问题

先前的方法,如李雅普诺夫 Actor-Critic (LAC),试图在学习策略的同时学习该函数。它们依赖于李导数 (\(L\) 的变化率) 的标准定义。

对于采样系统,我们使用当前状态 \(s\) 和下一个状态 \(s'\) 之间的有限差分来近似李雅普诺夫函数的变化:

李导数的有限差分近似。

这里,\(\Delta t\) 是时间步长。如果这个值为负,则系统正朝着稳定方向移动。

现有方法的局限性在于,它们是基于当前策略的行为来计算这种变化的。如果你想验证稳定性,你必须运行使用当前策略的机器人来看看它会去哪里。你不能轻易使用 10 分钟前收集的数据 (由旧的、更差的策略生成) ,因为从状态 \(s\) 到 \(s'\) 的转换可能无法反映当前智能体会做什么。

这种限制迫使算法必须是在策略 (on-policy) 的,这需要大量的新鲜数据——这在机器人技术中是一种难得的奢侈品。


核心方法: 离策略学习稳定性

作者提出了一种视角的转变。他们不再依赖仅取决于状态的李雅普诺夫函数 \(L(s)\),而是引入了一个同时取决于状态动作的李雅普诺夫函数 \(L(s, a)\)。

这个看似微小的改变是解锁离策略学习的关键。通过将动作包含在函数中,智能体可以查看存储在经验回放池 (旧数据) 中的转换 \((s, a, s')\),并仍然能够学习稳定性的几何结构,而不管是什么策略生成了该动作。

新的李雅普诺夫风险函数

为了训练这个神经网络,作者定义了一个特定的损失函数 (或“风险”) ,网络必须将其最小化。目标是在网络违反李雅普诺夫条件时对其进行惩罚。

这是目标函数的数学公式:

离策略李雅普诺夫候选函数的损失函数。

让我们分解一下这个方程 (公式 5) :

  1. \(\max(0, -L_{\eta}(s, a))\) : 这一项确保函数是的。如果网络输出负的“能量”值,损失就会增加。
  2. \(\max(0, \mathcal{L}_{f, \Delta t}L_{\eta})\) : 这一项确保函数是递减的。如果“能量”在一个时间步内增加 (即导数为正) ,它会惩罚网络。
  3. 依赖于 \(\pi(s')\) : 注意在图像的第二行中,有限差分依赖于 \(L_{\eta}(s', \pi(s'))\)。这就是“离策略”的魔法所在。我们使用存储的转换来到达 \(s'\),但我们根据当前策略 \(\pi\) 将采取的动作来评估 \(s'\) 处的李雅普诺夫函数。

通过最小化这种风险,神经网络可以使用历史数据 (\(D\)) 学习一个有效的李雅普诺夫候选函数,从而显著提高样本效率。

利用 \(\mu\) 确保收敛

仅仅确保能量“减少” (小于 0) 对于实际学习来说并不总是足够的。系统可能会极其缓慢地减少,以至于实际上停滞不前。为了解决这个问题,作者引入了一个超参数 \(\mu\),它强制执行最小衰减率

修改后的损失函数如下所示:

带有最小衰减率参数 mu 的损失函数。

在这里,导数必须小于 \(-\mu\)。这迫使系统以健康的速度向平衡点收敛。虽然这使得函数在平衡点处不可微,但它为训练期间的神经网络提供了强有力的信号。

算法 1: 李雅普诺夫软 Actor-Critic (LSAC)

作者将这种离策略李雅普诺夫函数集成到了软 Actor-Critic (SAC) 算法中,这是一种以探索能力著称的流行离策略 RL 方法。

在标准 SAC 中,智能体试图最大化一个目标 \(J_{\pi}\),其中包括预期奖励和熵项 (随机性/探索) :

标准 Soft Actor-Critic 目标函数。

作者修改了这个目标以创建 LSAC 。 他们添加了一个惩罚项,每当策略采取违反稳定性条件的动作时,该惩罚项就会激活。

Lyapunov Soft Actor-Critic (LSAC) 目标函数。

在上面的公式 10 中,\(\beta\) 是一个“李雅普诺夫温度”超参数。

  • 如果满足稳定性条件 (导数比 \(-\mu\) 更负) ,则 \(\max\) 项变为 0。李雅普诺夫函数不进行干预,允许智能体自由地最大化奖励。
  • 如果动作导致不稳定 (导数太高) ,惩罚就会介入,迫使策略调整其行为以确保安全。

算法 2: 李雅普诺夫 PPO (LPPO)

近端策略优化 (PPO) 在技术上是一种在策略算法,但由于其可靠性,它是机器人技术中使用最广泛的方法之一。作者展示了他们的离策略李雅普诺夫函数基本上可以为 PPO “增压”。

标准 PPO 通过最大化“优势”函数 \(\hat{A}_t\) 来更新其策略,该函数估计一个动作比平均水平好多少。

作者通过增强这个优势函数来创建 LPPO :

LPPO 的增强优势函数。

如果一个动作满足李雅普诺夫递减 (稳定性) ,优势保持不变。然而,如果动作是不稳定的,优势就会受到惩罚。这个技巧有效地告诉 PPO 算法: “即使这个动作能带来高回报,它也是‘劣势’的,因为它不安全。”

然后将这个修改后的优势直接代入标准的 PPO 截断目标中:

LPPO 目标函数。


实验与结果

为了验证他们的框架,研究人员在两个截然不同的控制任务上测试了这些算法: 经典的倒立摆和高维四旋翼飞行器 (无人机) 模拟。

1. 倒立摆 (Inverted Pendulum)

倒立摆是一个标准基准,智能体必须将摆甩起并在顶部保持平衡。

样本效率: 作者将他们的 LSAC (李雅普诺夫 SAC) 与标准 SAC、PPO 以及现有的基于李雅普诺夫的方法 (如 LAC 和 POLYC) 进行了比较。

倒立摆实验的训练奖励。

在上面的图 2(a) 中,绿线代表 LSAC。请注意它比其他方法更快地飙升至最大奖励。这证实了假设: 使用离策略数据来学习安全证书会显著加快学习速度。

可视化稳定性: 最令人信服的结果之一是学习到的李雅普诺夫函数的可视化。研究人员绘制了摆的“状态空间” (角度与角速度) ,并用红点标记了违反稳定性条件的区域。

LSAC、POLYC 和 LAC 的等高线和稳定性违规。

  • 左图 (LSAC): 图表很干净,红点极少 (0.84% 违规) 。算法已经学习到了一个鲁棒的稳定区域。
  • 右图 (LAC): 图表被红点覆盖 (51% 违规) 。LAC 的在策略性质使其难以有效地探索和认证整个空间。

这个可视化证明了 LSAC 不仅仅是在学习平衡;它正在学习一个数学上有效的吸引域,以此保证安全性。

2. 四旋翼飞行器跟踪 (Quadrotor Tracking)

第二个实验涉及四旋翼无人机跟踪参考轨迹——这是一个更难的任务,具有 13 个状态维度和 4 个控制输入。之前的离策略方法 (如纯 SAC 或 LAC) 通常因为复杂性而在此任务上完全失败。因此,比较主要集中在基于 PPO 的变体上。

性能:

四旋翼飞行器环境的训练奖励。

如图 4 所示,LPPO (绿色) 比 POLYC (青色) 和标准 PPO (红色) 收敛得更快。它在更少的时间步内实现了高回报,加强了样本效率的论点。

轨迹跟踪:

四旋翼飞行器的 3D 轨迹跟踪比较。

图 5 显示了无人机的实际飞行路径。

  • 红线是目标路径。
  • 蓝线是无人机的路径。
  • 图 (a) LPPO: 跟踪紧密且准确。
  • 图 (b) POLYC: 无人机跟踪良好,但在末端略显吃力。
  • 图 (c) PPO: 与目标有显著偏差。

LPPO 智能体使用离策略李雅普诺夫函数来指导其探索。它在训练期间避免了“不安全”的不稳定运动,这有助于它比标准 PPO 更快地收敛到平滑、准确的跟踪策略。


结论与启示

发表在《Off Policy Lyapunov Stability in Reinforcement Learning》上的研究解决了机器人学习中的一个关键瓶颈。通过将李雅普诺夫函数与当前策略解耦,并使其依赖于状态-动作对 \((s, a)\),作者实现了利用历史数据来认证安全性。

关键要点:

  1. 效率: 离策略李雅普诺夫学习比在策略对应方法具有显著更高的样本效率。
  2. 灵活性: 该框架是通用的。它可以将像 SAC 这样的离策略算法转化为稳定的控制器 (LSAC) ,并提高像 PPO 这样的在策略算法的安全性和效率 (LPPO) 。
  3. 安全性: 正如倒立摆的相图所展示的那样,该方法生成的策略具有更少的稳定性违规。

下一步是什么? 虽然模拟结果很有希望,但作者指出,物理硬件测试是合乎逻辑的下一步。现实世界的动态引入了模拟经常忽略的噪声和延迟。此外,还需要理论工作来为这些学习到的函数的稳定性提供形式化保证,确保它们在数学上和经验上一样站得住脚。

对于 RL 的学生和从业者来说,这篇论文凸显了一个重要趋势: 我们不必在离策略学习的效率和控制理论的安全性之间做出选择。有了正确的数学公式,我们可以两者兼得。