当前位置: 首页 > 科技观察

单GPU实现20Hz在线决策,解读最新的基于序列生成模型的高效轨迹规划方法

时间:2023-03-20 01:14:49 科技观察

之前我们介绍了基于Transformer和扩散模型(DiffussionModel)的序列建模方法。在连续控制领域的应用。其中,TrajectoryTransformer(TT)和Diffusser是基于模型的规划算法。它们表现出非常高精度的轨迹预测和良好的灵活性,但相对而言,决策延迟相对较高。特别是TT将每个维度独立离散化为序列中的一个符号,这使得整个序列非常长,并且序列生成的耗时会随着状态和动作维度的增加而迅速增加。为了让轨迹生成模型能够达到实用水平的决策速度,我们开始了与Diffusser并行的高效轨迹生成和决策的项目(有重叠但应该在后面)。我们的第一个想法是在连续空间而不是离散分布中用Transformer+MixtureGaussian来拟合整个轨迹分布。虽然不排除实现问题,但我们未能在这种方法下获得相对稳定的生成模型。然后我们尝试了VariationalAutoencoder(VAE),并取得了一些突破。但是VAE的重构精度不是特别理想,以至于下游的控制性能与TT有较大差异。经过几轮迭代,我们最终选择了VQ-VAE作为轨迹生成的基本模型,最终得到了一种可以高效采样和规划的新算法,在高维控制任务中远优于其他基于模型的方法。称为轨迹自动编码规划器(TAP)。项目主页:https://sites.google.com/view/latentplan论文主页:https://arxiv.org/abs/2208.10291规划效率和高维性能单GPU下,TAP可以轻松运行在20HzDecision-makingefficiency在线决策,在低维D4RL任务中,决策延迟仅为TT的1%左右。更重要的是,随着任务状态和动作维度D的增加,TT的理论决策延迟会立方增加,Diffusser理论上会线性增加,TAP的决策速度不受维度的影响。在代理的决策性能方面,随着动作维度的增加,TAP的性能相比其他方法有所提升,尤其是与基于模型的方法(如TT)相比。决策延迟对决策和控制任务的重要性是非常明显的。虽然像MuZero这样的算法在模拟环境中表现良好,但面对现实世界中需要实时快速响应的任务,过多的决策延迟将成为其部署的一大难点。另外,在有模拟环境的前提下,决策速度慢也会导致类似算法的测试成本高,用于在线强化学习的成本也会比较高。此外,我们认为序列生成建模方法可以顺利扩展到更高维度的任务也是TAP非常重要的贡献。在现实世界中,我们希望强化学习最终能够解决的问题,大部分都具有更高的状态和动作维度。例如,对于自动驾驶,即使经过各种感知级别的预处理,各种传感器的输入也不太可能低于100。复杂的机器人控制往往具有很高的动作空间。人体所有关节的自由度约为240,对应至少240维的动作空间。像人一样灵活的机器人也需要同样的高维动作空间。随着任务维度的增加,四组任务决策延迟随着维度和相对模型性能的增加而增加。方法概述首先,训练VQ-VAE的自动编码器部分,它与原始VQ-VAE在两个方面有所不同。第一个区别是编码器和解码器都是基于CausalTransformer,而不是CNN。第二个区别是我们学习了一个条件概率分布,要建模的可能轨迹必须都是从当前状态开始的。自动编码器学习从当前状态和潜在代码开始的轨迹之间的双向映射。这些隐藏码和原来的轨迹一样是按照时间顺序排列的,每一个隐藏码都会对应到实际的步进轨迹。因为我们使用了CausalTransformer,所以在时间上排名靠后的潜在代码(例如)不会将信息传递给排名靠前的序列(例如),这使得TAP可以通过前N个隐藏代码解码长度NL,这在以后使用它进行计划时非常有用。然后我们将使用另一个GPT-2-styleTransformer来对这些隐藏代码的条件概率分布进行建模:在做出决策时,我们可以通过在隐藏变量空间中进行优化来找到最佳未来轨迹,而不是在原始动作空间中。优化。一个非常简单但有效的方法是直接从隐藏代码的分布中采样,然后选择性能最好的轨迹,如下图所示:在选择最优轨迹时,参考目标得分(objectivescore)将是同时考虑轨迹的预期回报(奖励加上最后一步的估值)和轨迹本身的可行性或概率。如下面的公式,这是一个远大于最高收益的数,当一条轨迹的概率高于一个阈值时,判断这条轨迹的标准将是它的预期收益(红色高亮),否则概率为该轨迹本身将是主要部分(以蓝色突出显示)。也就是说,TAP会在大于阈值的轨迹中选择期望回报最高的那个。虽然样本数量足够多,但当预测序列较短时,直接采样也能很好地工作。在限制样本数量和规划总时间的前提下,使用更好的优化器仍然会带来更好的结果。表现。下面两个动画展示了在预测未来144步时直接采样和波束搜索生成的轨迹之间的差异。轨迹按最终目标得分排序,得分较高的轨迹在顶部,轨迹得分较低的堆叠在后面。此外,得分较低的轨迹也将具有较低的透明度。图中我们可以看到很多直接采样生成的轨迹都不稳定,不符合物理规律,尤其是背景中较亮的轨迹几乎是浮动的。这些都是概率比较低的轨迹,在最终选择方案制定的时候就会淘汰掉。前排的弹道看起来比较动感,但是相应的表现比较差,好像要掉下来一样。相比之下,beamsearch在扩展下一个隐藏变量时,会动态考虑轨迹的概率,使得概率低的分支会提前终止,这样生成的候选轨迹都集中在性能较好的和可能性比较大的轨迹围绕着它。直接对Beamsearch的实验结果进行采样,无需更高级的估值和策略改进,仅依靠预测精度的优势,TAP在低维任务上取得了与其他离线强化学习相当的性能:在高维任务上的gymlocomotioncontrol,TAP取得了比其他基于模型的方法更好的性能,它也优于常见的无模型方法。这里实际上有两个悬而未决的问题尚未得到解答。第一个是为什么以前的基于模型的方法在这些高维离线强化学习任务中表现不佳,第二个是为什么TAP在这些任务上可以胜过许多无模型方法。我们的假设之一是,在考虑到政策与行为政策偏离太多的情况下,很难对高维问题进行政策优化。当学习模型时,模型本身的错误可能会放大这种困难。但是,TAP将优化空间移动到一个小的离散隐变量空间,这使得整个优化过程更加鲁棒。Someslicestudiesofdroitrobotichandcontrol对于TAP中的众多设计,我们也针对gym的运动控制任务做了一系列的切片研究。第一个是每个隐藏代码(黄色直方图)对应的轨迹的步数。事实证明,让一个隐变量对应多步状态转移,不仅具有计算优势,还能提高最终模型的性能。通过调整搜索到的目标函数(红色直方图)中触发低概率轨迹惩罚的阈值,我们也证实了目标函数的两部分确实对模型的最终性能有帮助。还有一点就是未来规划的步数(规划范围,蓝色直方图)对模型的性能影响不大。即使在部署后搜索中只扩展一个隐藏变量,最终智能体的性能也只会下降10%。关于。最后,我们尝试了使用直接采样(绿色直方图)的TAP的性能。注意这里采样的样本数是2048,而上面的动画只有256,上面的动画生成了接下来144步的计划,但实际上我们的基础模型指导了15步的计划。结论是,当样本数量足够直接采样且规划路径不长时,那么直接采样也可以达到类似beamsearch的性能。但这是从学习到的隐藏变量的条件分布中抽样的情况。如果直接从隐藏代码中等概率采样,最终还是会比完整的TAP模型差很多。切片研究的结果