在现实世界中安全地学习运动技能

1726718630767.jpg

深度强化学习(RL) 在自主解决复杂高维问题方面具有良好的前景,这引起了机器人、游戏和自动驾驶汽车等领域的广泛关注。 然而,要有效地训练RL 策略,需要探索大量的机器人状态和动作,其中包括许多对机器人不安全的状态和动作。这是一个相当大的风险,例如,在训练有腿的机器人时。由于这种机器人本质上是不稳定的,因此机器人在学习过程中很有可能跌倒,从而造成损坏。

通过在计算机模拟中学习控制策略,然后将其部署到现实世界中, 可以在一定程度上减轻损坏风险。然而,这种方法通常需要解决困难的模拟与现实之间的差距,即在模拟中训练的策略由于各种原因无法在现实世界中轻松部署,例如部署中的传感器噪声或模拟器在训练期间不够逼真。解决这个问题的另一种方法是直接在现实世界中学习或微调控制策略。但同样,主要的挑战是确保学习过程中的安全性。

在“腿部运动的安全强化学习”中,我们引入了一个安全的强化学习框架,用于学习腿部运动,同时满足训练期间的安全约束。我们的目标是让机器人在整个学习过程中不摔倒,而是在现实世界中自主学习运动技能。我们的学习框架采用双策略安全强化学习框架:一种“安全恢复策略”,可将机器人从近乎不安全的状态中恢复过来;另一种“学习者策略”,经过优化,可执行所需的控制任务。安全学习框架在安全恢复策略和学习者策略之间切换,使机器人能够安全地获得新颖而敏捷的运动技能。

拟议框架

我们的目标是确保在整个学习过程中,无论使用哪种学习者策略,机器人都不会摔倒。与孩子学习骑自行车的方式类似,我们的方法在使用“训练轮”的同时向代理传授策略,即安全恢复策略。我们首先定义一组状态,我们称之为“安全触发集”,其中机器人接近违反安全约束,但仍可以通过安全恢复策略挽救。例如,安全触发集可以定义为一组状态,其中机器人的高度低于某个阈值,并且滚动、俯仰、偏航角过大,这表明跌倒。当学习者策略导致机器人处于安全触发集内(即可能跌倒的位置)时,我们会切换到安全恢复策略,这将使机器人回到安全状态。我们利用机器人的近似动力学模型来预测机器人的未来轨迹,从而确定何时切换回学习者策略。例如,根据机器人腿部的位置以及基于滚动、俯仰和偏航传感器的机器人当前角度,未来它是否有可能摔倒?如果预测的未来状态都是安全的,我们将控制权交还给学习者策略,否则,我们继续使用安全恢复策略。

所提方法的状态图。(1)如果学习者策略违反了安全约束,我们将切换到安全恢复策略。(2)如果在切换到安全恢复策略后,学习者策略在不久的将来无法确保安全,我们将继续使用安全恢复策略。这允许机器人在确保安全的同时进行更多探索。

这种方法可确保复杂系统的安全性,而无需借助可能对应用中的分布变化敏感的不透明神经网络。此外,学习者策略能够探索接近安全违规的状态,这对于学习稳健的策略非常有用。

由于我们使用“近似”动力学来预测未来轨迹,因此我们还会研究如果使用更精确的动力学模型,机器人的安全性会提高多少。我们对这个问题进行了理论分析,并表明与完全了解系统动力学的方法相比,我们的方法可以实现最小的安全性能损失。

腿部运动任务

为了证明该算法的有效性,我们考虑学习三种不同的腿部运动技能:

高效步态:机器人学习如何以低能耗行走,并因消耗更少的能量而获得奖励。

猫步:机器人学习猫步步态模式,其中左脚和右脚彼此靠近。这很有挑战性,因为通过缩小支撑多边形,机器人变得不太稳定。

双腿平衡:机器人学习双腿平衡策略,其中前右脚和后左脚站立,另外两只脚抬起。如果没有精细的平衡控制,机器人很容易摔倒,因为接触多边形退化为线段。

本文考虑的运动任务。顶部:高效步态。中间:走秀。底部:双腿平衡。

实现细节

我们使用分层策略框架,将 RL 和传统的控制方法相结合,用于学习者和安全恢复策略。该框架由高级 RL 策略组成,该策略产生步态参数(例如,步频)和脚部位置,并将其与称为模型预测控制(MPC) 的低级过程控制器配对,该控制器接收这些参数并计算机器人中每个电机所需的扭矩。由于我们不直接控制电机的角度,这种方法提供了更稳定的操作,由于动作空间较小而简化了策略训练,并产生了更强大的策略。RL 策略网络的输入包括先前的步态参数、机器人的高度、基座方向、线性、角速度和反馈,以指示机器人是否正在接近安全触发设置。我们对每个任务使用相同的设置。

我们训练了安全恢复策略,并给予尽快达到稳定性的奖励。此外,我们根据可捕获性理论设计了安全触发集。具体来说,初始安全触发集的定义是为了确保机器人的脚不会落在机器人可以使用安全恢复策略安全恢复的位置之外。然后,我们使用随机策略在真实机器人上微调该集合,以防止机器人跌倒。

真实世界的实验结果

我们报告了真实世界的实验结果,展示了有效步态、走秀和双腿平衡任务中的奖励学习曲线和安全恢复策略激活百分比。为了确保机器人能够学会安全,我们在触发安全恢复策略时添加了惩罚。在这里,所有策略都是从头开始训练的,除了双腿平衡任务,因为它需要更多的训练步骤,所以在模拟中进行了预先训练。

总体而言,我们发现在这些任务中,奖励会增加,而安全恢复策略的使用百分比会随着策略更新而减少。例如,在高效步态任务中,安全恢复策略的使用百分比从 20% 下降到接近 0%。对于双腿平衡任务,该百分比从接近 82.5% 下降到 67.5%,这表明双腿平衡比前两个任务难得多。不过,该策略确实提高了奖励。这一观察意味着学习者可以逐渐学习任务,同时避免触发安全恢复策略。此外,这表明可以设计一个安全触发集和一个安全恢复策略,而不会随着性能的提高而妨碍对策略的探索。

在现实世界中使用我们的安全 RL 算法的奖励学习曲线(蓝色)和安全恢复策略激活的百分比(红色)。

此外,以下视频展示了双腿平衡任务的学习过程,包括学习者策略和安全恢复策略之间的相互作用,以及在情节结束时重置到初始位置。我们可以看到,机器人在跌倒时试图通过将抬起的腿(左前腿和右后腿)向外放下来抓住自己,从而形成一个支撑多边形。学习情节结束后,机器人会自动走回重置位置。这使我们能够在无人监督的情况下自主安全地训练策略。

早期训练阶段。

后期训练阶段。

没有安全恢复策略。

最后,我们展示了学习策略的片段。首先,在走秀任务中,两腿之间的距离为 0.09 米,比标称距离小 40.9%。其次,在双腿平衡任务中,机器人可以通过双腿跳跃四次来保持平衡,而通过模拟预先训练的策略则只需跳跃一次。

最后学会了双腿平衡。

结论

我们提出了一个安全的 RL 框架,并演示了如何使用它来训练机器人策略,在整个学习过程中不会摔倒,也不需要手动重置,从而实现高效的步态和走秀任务。这种方法甚至可以在只有四次摔倒的情况下训练双腿平衡任务。安全恢复策略仅在需要时触发,使机器人能够更充分地探索环境。我们的结果表明,在现实世界中可以自主安全地学习腿部运动技能,这可以开启新的机遇,包括为机器人学习进行离线数据集收集。

没有一个模型是没有限制的。我们目前在理论分析中忽略了来自环境和非线性动力学的模型不确定性。包括这些将进一步提高我们方法的通用性。此外,切换标准的一些超参数目前正在启发式调整。根据学习进度自动确定何时切换会更有效率。此外,将这个安全的 RL 框架扩展到其他机器人应用(例如机器人操作)也会很有趣。最后,在结合安全恢复策略时设计适当的奖励会影响学习性能。我们使用基于惩罚的方法,在这些实验中获得了合理的结果,但我们计划在未来的工作中对此进行研究,以进一步提高性能。

致谢

我们要感谢我们的论文合著者:Tingnan Zhang、Linda Luu、Sehoon Ha、Jie Tan 和 Wenhao Yu。我们还要感谢 Google 机器人团队成员的讨论和反馈。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论