经典文献阅读之--One Policy to Run Them All:(一策通行:一种端到端学习的多具身智能运动方法)

0. 简介

深度强化学习技术在鲁棒的腿部运动控制中取得了最先进的成果。尽管存在各种各样的腿部平台,如四足机器人、人形机器人和六足机器人,但该领域仍缺乏一个能够轻松有效地控制所有这些不同具身智能的统一学习框架,并且能够零样本或少样本地迁移到未见过的机器人具身智能中。本文介绍了URMA,即统一机器人形态架构(Unified Robot Morphology Architecture),以填补这一空白。本文的框架将端到端多任务强化学习方法引入了腿部机器人的领域,使学习到的策略能够控制任何类型的机器人形态。本文方法的关键思想是通过形态无关的编码器和解码器,使网络能够学习一个抽象的运动控制器,从而在不同具身智能之间无缝共享。这种灵活的架构可以被视为构建腿部机器人运动基础模型的潜在第一步。本文的实验表明,URMA能够在多种具身智能上学习运动策略,并且可以轻松地迁移到仿真和现实世界中未见过的机器人平台上。

1. 简介

在过去的几年里,机器人社区已经掌握了鲁棒步态生成的问题。在深度强化学习(Deep Reinforcement Learning, DRL)技术的帮助下,腿部机器人可以展示出令人印象深刻的运动技能。有许多高灵活性的四足机器人运动的例子,比如学习以高速奔跑、跳过障碍、在崎岖地形上行走、做倒立和完成跑酷课程[1, 2, 3, 4, 5, 6]。实现这些灵活运动通常依赖于在许多并行的仿真环境中进行训练,并使用精心调整或自动生成的任务难度课程[7, 8]。即使是在真实机器人上直接学习简单的运动行为也是可能的,但需要更高效的学习方法[9, 10]。类似的方法也被应用于生成双足和人形机器人的鲁棒行走步态[11, 12, 13]。通过在训练过程中广泛使用域随机化(Domain Randomization, DR)[14, 15],学习到的策略可以有效地迁移到现实世界,并能够在各种地形上工作。此外,像学生-教师学习[1, 16]这样的技术,或者在学习过程中加入基于模型的组件[17, 18]或约束[19, 20, 21],可以进一步提高学习效率和策略的鲁棒性。

在这里插入图片描述

图1:上图 – 本文在仿真中为多个机器人具身智能训练单一的运动策略。下图 – 通过在训练过程中随机化具身智能和环境动态,本文可以将该策略迁移并部署到三个现实世界的平台上。

同时,计算能力的新进展、大规模数据集的可用性以及基础模型的发展正在为人工智能开辟新的前沿,**允许本文实现和学习更复杂和智能的代理行为。**未来的机器人将需要将这些模型融入控制流程中[22, 23]。然而,要充分利用基础模型,本文需要能够将这些高层次策略与机器人的低层次控制集成起来。长期目标是开发用于运动的基础模型,允许零样本(或少样本)部署到任何任意平台。然而,要实现这一目标,必须使底层学习系统适应不同的任务和形态。因此,本文认为多任务强化学习(Multi-Task Reinforcement Learning,MTRL)问题是未来机器人运动研究的一个基本主题,实际上,这一表述最近已经引起了社区的兴趣,使用了结构化[24]和端到端学习方法[25]。MTRL算法在任务之间共享知识,并学习一个通用的表示空间,可以用来解决所有任务[26, 27]。为了将不同大小的观测和动作空间映射到共享表示空间内外,通常的实现方法是用零填充观测和动作以适应最大长度[28],或者为每个任务使用一个单独的神经网络头[26]。这些方法允许高效的训练,但在尝试迁移到新任务或环境时可能会受到限制:对于每个新机器人,训练过程必须从头开始,因为不同的具身智能需要不同的超参数、奖励系数、训练课程等。即使在相同的机器人形态情况下,例如四足机器人,当机器人关节数量不同时,训练的策略也不能轻松迁移。这在尝试跨不同类型的形态重用学习到的步态时更为明显。这一问题与机器人学中的基本对应问题密切相关[29],因为策略必须学习不同动作和观测空间以及具身智能本身之间的内部映射,这定义了机器人的运动学。在实践中,腿部机器人关节和脚的数量决定了其动作和观测空间的大小,每个新机器人可能有所不同。这通常会阻碍现有策略的直接迁移,因为学习架构完全依赖于特定的机器人平台。

为了解决这个问题,并迈向更强大和通用的策略,使其可以作为运动基础模型使用,本文提出了一种新颖的多任务强化学习(MTRL)框架,该框架能够轻松有效地同时学习具有多种不同形态的运动任务。本文的方法基于一种新颖的神经网络架构,能够处理不同大小的动作和观测空间,使策略能够轻松适应各种机器人形态。此外,本文的方法还允许将策略零样本部署到未见过的机器人上,并在新目标平台上进行少样本微调。本文首先通过理论分析,然后通过在16个机器人上训练单一的运动策略,展示了本文方法的有效性,这些机器人包括四足机器人、六足机器人、双足机器人和人形机器人。最后,本文将学习到的策略零样本迁移到两个仿真机器人和三个实际机器人上,展示了本文方法的可迁移性和鲁棒性。

2. 多体态运动控制与单一策略

在多任务强化学习(MTRL)中,目标是学习一个单一策略 π θ \pi_\theta πθ,以优化在 M M M任务上期望折扣回报的平均值 J m ( θ ) J_m(\theta) Jm(θ),该回报基于奖励函数 r m r_m rm

J ( θ ) = 1 M ∑ m = 1 M J m ( θ ) , J m ( θ ) = E τ ∼ π [ ∑ t = 0 T γ t r m ( s , a ) ] , J(\theta) = \frac{1}{M} \sum_{m=1}^{M} J^m(\theta), \quad J^m(\theta) = \mathbb{E}_{\tau \sim \pi} \left[ \sum_{t=0}^{T} \gamma^t r^m(s, a) \right], J(θ)=M1m=1MJm(θ),Jm(θ)=Eτπ[t=0Tγtrm(s,a)],


其中 τ \tau τ 是由状态-动作对 ( s t , a t ) (s_t, a_t) (st,at) 给出的轨迹, γ \gamma γ折扣因子 T T T时间范围。在我们的研究中,我们将不同的机器人体态视为独立的任务,并训练一个控制所有机器人的策略,以优化公式(1)中描述的目标。我们的目标是设计一个策略,使得其底层神经网络架构与可能的体态集合无关。因此,我们提出了统一机器人形态架构(URMA),该架构完全不依赖于形态,即可以应用于任何类型的机器人,无论关节数量如何,因此无需事先定义可能的形态或关节。我们使用URMA来学习稳健的运动控制策略,但其公式足够通用,可以应用于任何控制任务。图2展示了URMA的示意概述。一般而言,URMA将机器人的观察分为不同部分,通过一个简单的注意力编码器 [38] 进行编码,该编码器具有可学习的温度 [39],并使用我们的通用形态解码器为机器人的每个关节生成动作。

在这里插入图片描述

图2:URMA概述 左侧 – 关节观察和描述通过一个注意力头被编码并组合成一个单一的关节潜在向量底部中央 – 脚部观察和描述以相同的方式进行编码。顶部中央 – 关节潜在向量、脚部潜在向量和一般观察被输入到核心网络中,以获取动作潜在向量。右侧 – 通用形态解码器对关节描述进行编码,并将其与动作潜在向量和单一关节潜在向量配对,以生成最终动作的均值和标准差。

为了处理任何形态的观察,URMA首先将观察向量 o o o 分割为机器人特定观察 o g o_g og 和一般观察, 其中前者可以具有不同的大小,而后者具有固定的维度。对于运动,我们将机器人特定观察细分为关节观察和脚部观察。这种分割并不是必需的,但使得运动的应用更加清晰。在以下文本中,我们将所有内容描述为与关节特定观察相关,但同样适用于脚部特定观察。机器人的每个关节由关节特定观察 o j o_j oj 和描述向量 d j d_j dj 组成,后者是一个固定大小的向量,可以通过使用关节的旋转轴、在机器人中的相对位置、扭矩和速度限制、控制范围等特征属性唯一描述该关节(更多细节见附录A)。描述向量和关节特定观察分别通过多层感知器(MLPs) f ϕ f_\phi fϕ f ψ f_\psi fψ 进行编码,然后通过一个简单的注意力头传递,该注意力头具有可学习的温度 τ \tau τ 和最小温度 ϵ \epsilon ϵ,以获得一个单一的潜在向量:

z ˉ j o i n t s = ∑ j ∈ J z j , z j = exp ⁡ ( f ϕ ( d j ) τ + ϵ ) ∑ j ∈ J exp ⁡ ( f ϕ ( d j ) τ + ϵ ) f ψ ( o j ) , (2) \bar{z}_{joints} = \sum_{j \in J} z_j, \quad z_j = \frac{\exp\left(\frac{f_\phi(d_j)}{\tau + \epsilon}\right)}{\sum_{j \in J} \exp\left(\frac{f_\phi(d_j)}{\tau + \epsilon}\right)} f_\psi(o_j), \tag{2} zˉjoints=jJzj,zj=jJexp(τ+ϵfϕ(dj))exp(τ+ϵfϕ(dj))fψ(oj),(2)

该向量包含所有关节的关节特定观察信息。在注意力机制的帮助下,网络可以学习分离相关的关节信息,并通过将 softmax 的温度 τ \tau τ 降低到接近零的值,精确地将其路由到潜在向量的特定维度。关节潜在向量 z ˉ j o i n t s \bar{z}_{joints} zˉjoints 然后与脚部潜在向量 z ˉ f e e t \bar{z}_{feet} zˉfeet 和一般观察 o g o_g og 连接,并传递给策略核心 MLP h θ h_\theta hθ 以获取动作潜在向量 z ˉ a c t i o n = h θ ( o g , z ˉ j o i n t s , z ˉ f e e t ) . \bar{z}_{action} = h_\theta(o_g, \bar{z}_{joints}, \bar{z}_{feet}). zˉaction=hθ(og,zˉjoints,zˉfeet).为了获得机器人的最终动作,我们使用通用形态解码器,该解码器接受一般动作潜在向量,并将其与编码的特定关节描述集和单一关节潜在向量配对,以生成每个关节的动作均值和标准差,从中最终动作被采样为:

a j ∼ N ( μ ν ( d a j , z ˉ a c t i o n , z j ) , σ ν ( d j a ) ) , d j a = g ω ( d j ) . (3) a_j \sim N(\mu_\nu(d_{a_j}, \bar{z}_{action}, z_j), \sigma_\nu(d^a_j)), \quad d^a_j = g_\omega(d_j). \tag{3} ajN(μν(daj,zˉaction,zj),σν(dja)),dja=gω(dj).(3)

为了确保只有完全归一化和良好行为的观察进入网络,我们在每个输入层后使用 LayerNorm [40]。学习过程也受益于在动作均值网络 μ ν \mu_\nu μν 中添加另一个 LayerNorm。我们认为这一选择改善了进入 μ ν \mu_\nu μν 的不同潜在向量之间的对齐。为了确保公平比较,我们在基线架构中也使用相同原理的 LayerNorm。在附录D的图4中,我们强调了在URMA中使用LayerNorm的好处。

在这里插入图片描述

图4:URMA架构中LayerNorm层的消融实验

我们的第二个贡献是开源的模块化学习框架,使我们能够轻松地为各种四足机器人训练出稳健且可迁移的运动策略。当将新机器人添加到训练集中时,只需调整奖励系数、控制器增益和领域随机化范围,这些都可以通过稍微修改框架中现有机器人的参数来轻松完成。由于奖励函数中的惩罚项对于学习核心运动并非必不可少,而只是用来塑造最终的步态,我们应用了一个时间依赖的固定长度课程 r c ( t ) = min ⁡ ( t T , 1 ) r c T r_c(t) = \min\left(\frac{t}{T}, 1\right)r^T_c rc(t)=min(Tt,1)rcT,其中 t t t 是当前训练步骤, T T T 是课程长度, r c T r^T_c rcT 是最终的惩罚系数。这加快了学习速度,并使得系数调优过程更加简单和宽容,因为当策略已经学会执行基本运动时,它能够更好地处理更高的惩罚。关于环境设置、奖励函数和领域随机化的完整细节可以在附录A中找到。

3. 理论分析

为了评估通过URMA学习跨机器人形态共享表示的好处,我们将Maurer等人[41]和D’Eramo等人[26]的多任务风险界限扩展到我们的形态无关编码器和解码器。由于我们将在学习框架中使用近端策略优化(PPO)算法,我们将问题框架化为对PPO在经验数据集上的训练与在无限样本下的最优策略更新之间性能差异的评估。在我们的简化分析中,我们假设:i. 我们的策略优化步骤能够找到最小化当前数据集上代理损失的策略;ii. 信任区域足够小,以至于代理损失和策略的期望折扣回报足够接近;iii. 代理损失是用真实优势计算的。给定我们的机器人表现集合 μ = ( μ 1 , … , μ M ) \mu = (\mu_1, \ldots, \mu_M) μ=(μ1,,μM),输入样本集合 X ˉ ∈ X M n \bar{X} \in X^{Mn} XˉXMn 来自每个任务的观察、描述和动作空间 X X X,以及相应的优势集合 Y ˉ ∈ R M n \bar{Y} \in \mathbb{R}^{Mn} YˉRMn,我们可以将策略学习描述为寻找以下优化问题的最小化者 f ^ , h ^ , w ^ \hat{f}, \hat{h}, \hat{w} f^,h^,w^

…详情请参照古月居

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敢敢のwings

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值