【多目标轨迹预测】Trajectron++:Dynamically-Feasible TrajectoryForecastin With Heterogeneous Data(简化翻译+笔记)

论文地址:https://arxiv.org/abs/2001.03093

代码地址:https://github.com/StanfordASL/Trajectron-plus-plus

摘要:

        智能体的轨迹预测是非常具有挑战性且重要的,目前虽然存在很多轨迹预测方法,但是大部分并不考虑动力约束以及环境信息,比如高精地图等的限制。trajectron++,提供了一种模块化的图结构的循环模型,同时结合智能体的动态和异构数据(例如语义地图等),可以预测一般数量的不同多智能体的轨迹。这个方法主要是为了和下游模块的规控进行集成,它可以以自车的运动规划为条件进行预测。

6. 结论

        在这项工作中提出了 Trajectron++,这是一种生成式多智能体轨迹预测方法,它独特地解决了我们对开放、普遍适用和可扩展框架的需求。它可以结合先前轨迹信息之外的异构数据,并能够产生尊重动力学约束的未来条件预测,同时产生完整的概率分布,这在运动规划、决策和控制等下游机器人任务中特别有用.它在标准和新的现实世界多智能体人类行为数据集的各种指标中实现了最先进的预测性能。

1.前言

动机: 人类可以很自然的在交互复杂的交通场景中选择自己的路线,因为人类本身就具备推理其他人心理行为的能力。自能驾驶也需要这种能力。图一可以看出,行人的意图对于自车的决策规划是具有影响的。

图1

描绘行人在车辆前方横穿道路的示例性道路场景,该车辆可继续直行或右转。场景的图形表示显示在地面上,其中每个代理及其交互表示为节点和边,分别可视化为白色圆圈和黑色虚线。箭头描绘了潜在的未来代理速度,颜色代表不同的高级未来行为模式。

 方法:此篇论文发表之前,大多数预测方法可以分为确定性的回归和概率生成模型。大多数方法是不考虑动力约束,自主车辆的运动规划以及交互等信息。表一展示了区别。

这篇文章主要做三件事:

     (1)考虑代理的动力学;

     (2)产生可能潜在的未来机器热人轨迹为条件的预测,以便规划;

     (3)提供一种通用的、开放的、可扩展的方法,并且可以使用周围环境的异构数据。

        相似的论文是Trajectron,这是一种多智能体行为模型,可以处理随时间变化的智能体数量,解释了人类行为中的多模态(即许多高级未来的潜力),并在其输出中保持可解释性。但它只是考虑了相对简单的车辆模型以及历史数据,不考虑环境信息。

贡献:首先,展示了如何通过编码语义图的镜头有效地合并高维数据。其次,提出了一种将动态约束纳入基于学习的多智能体轨迹预测方法的通用方法。

2.相关工作

方法:

      (1)确定性的回归:早期的方法,将人类建模为受牛顿力学约束的物理对象,将问题转化为求解时间序列回归问题。

             主要的方法有高斯过程回归、逆强化学习,循环神经网络等;

     (2)概率生成模型:将生成一个最好的确定性轨迹转化为生成未来潜在轨迹的分布,这对下游规划决策有很重要的意义。

       主要的方法是使用含有隐变量的深度循环主干结构,比如条件变分自编码器去显式的编码多模态,或者是生成对抗网络隐式的编码多模态。两者都是生成未来的位置分布。

        区别在于基于CAVE的循环模型需要依赖于二元高斯混合模型来输出位置分布,基于GAN的可以直接输出位置分布。

        缺点是这两种输出结构都不能添加完整的动力学约束

       (3)考虑动力学和异构数据

         思想:异构数据是多传感器产生的有效的信息的充分利用,动力学是对实际运动情况的约束

3.问题公式

4.模型

 (1)场景表示

        将场景抽象为一个时空图G=(V,E),节点表示多智能体,边代表他们之间的交互作用。每个多智能体都有各自的语义类别,如果智能体之间存在相互影响,则在两智能体之间建立一条边,是否相影响根据是否小于定义的一个距离来表示,这个距离是编码语义类多智能体的感知范围的距离。

        本文将场景建模为有向图来表示更为通用的场景,这能够同时对具有不同感知范围的代理进行建模。例如在车道上的车的感知范围要比人行道上的行人感知范围更远。

(2)建模智能体的历史信息。

        构建好场景后,模型需要编码一个智能体的当前状态,历史状态和其如何影响其周围其他智能体。对于建模的智能体,将当前和历史状态馈入一个具有32个隐藏层的长短期记忆神经网络中。输入是,代表的是历史和当前的D维状态信息,通常是位置和速度信息,可以很太容易在线估计。

         理想情况下,智能体的模型因该和语义类别相匹配,但在线建模一个车辆的各种参数信息(质心,转向角等)是相当困难的,因此本文是将行人建模为一个单积分器,将轮式车辆建模为一个独轮车,这能够通过简单的参数来考虑非完整的动力约束。虽然动态扩展的独轮车模型是一个重要的代表性示例,但该方法也可以推广到其他动力学模型,只要它的参数可以假设或在线快速估计。

(3)编码智能体的交互

         在图上表示的边,建模分为两步:首先,交互边的信息是从同一语义类的相邻智能体聚合而来的。在这项工作中,按元素求和用作聚合操作。选择以这种方式组合特征,而不是使用连接或平均来处理具有固定架构的可变数量的相邻节点,同时保留计数信息。将这些聚合状态输入到具有8个隐藏层的LSTM中,其权重所在所有相同类型的边的实例中共享,例如所有行人-公共汽车的边共享权重。然后来自链接到建模节点的所有边的类型的编码被聚合以获得一个”影响“表示向量,表示所有相邻节点具有的效果。为此,使用了附加注意模块 [2]。最后,连接节点历史和边缘影响编码以产生单个节点表示向量 ex.

(4)融合异构数据

       对于每一个建模的智能体,trajectron++使用卷积神经网络编码本地地图,匹配智能体航向。这个卷积神经网络有4层,滤波器是5553,步长是2211,之后是具有 32 个隐藏维度的密集层,其输出与节点历史和边缘影响表示向量连接。更一般地,通过将​​其编码为向量并将其添加到表示向量的主干中,可以在该框架中包含更多附加信息(例如,原始激光雷达数据、相机图像、行人骨架或注视方向估计)ex.

(5)编码自车未来运动规划

       trajectron++可以编码自车未来T时间步长的运动规划,使用的是32层的Bi-Lstm。使用双向 LSTM 是因为它在其他序列摘要任务上的强大性能 [5]。然后将最终的隐藏状态连接到表示向量ex的主干中。

(6)显式的考虑多模态

        Trajectron++ 通过利用 CVAE 潜在变量框架 [44] 显式处理多模态,它通过引入离散的分类潜在变量 z ∈ Z 来生成目标 p(y | x) 分布,该变量编码高级潜在行为并允许 p(y | x) 表示为,这里 |Z| = 25 和 ψ, θ 是深度神经网络权重,可参数化它们各自的分布。 z 是离散的也有助于可解释性,因为可以通过采样轨迹来可视化哪些高级行为属于每个 z。

         在训练过程中,使用具有 32 个隐藏维度的双向 LSTM 对节点的真实未来轨迹进行编码,产生

(7)产生动态可行的运动轨迹

         在获得一个隐变量z之后,它和主干表示向量ex被送入解码器中,即一个128维的GRU。每个GRU输出一个关于控制动作(如加速度和转向率)的二元高斯分布,然后将智能体的系统动力学与产生的控制动作 u(t) 集成,以获得位置空间中的轨迹。

        唯一的不确定性来源于模型的输出。对于线性动力学,比如单积分器,系统动力学是线性高斯的,

         在非线性动力学的情况下(例如,单轮车模型,在这项工作中用于对车辆进行建模),仍然可以(近似地)通过对智能体当前状态和控制的动力学进行线性化来使用这种不确定性传播方案。单个积分器和动态扩展的独轮车模型的全均值和协方差方程在附录中。该方法独特地能够通过将智能体的动力学与预测的控制相结合来保证其轨迹样本是动态可行的。

(8)输出设置

1 Most Likely :该模型的确定性和最有可能的单一输出。高级潜在行为模式和输出轨迹是它们各自分布的模式,其中

 

 (9)训练模型

        采用 InfoVAE [52] 目标函数,并对其进行修改以在条件公式中使用离散的潜在状态(因为模型使用 CVAE)。形式上,目标是解决

 是分布 下 x 和 z 之间的互信息,为了计算,我们遵循 [52] 并用近似 ,通过对批次求和 xi 来获得无条件的潜在分布。值得注意的是,Gumbel-Softmax 重新参数化 [24] 不用于通过分类潜在变量 z 进行反向传播,因为它在训练期间没有被采样。相反,等式 (4) 的第一项是直接计算的,因为潜在空间只有 |Z| = 25 个离散元素。更多培训详情可在附录中找到。

 5 实验

(1)数据集:

         行人数据集:ETH ,UCY

         混合数据集:nuScenes

(2)评价指标:

        1.ADE平均位移误差:真值和预测值的平均二范数距离

        2.FDE最终位移误差:在预测步长内,最终位置的真值与预测值的二范数距离

        3.Kernel Density Estimate-based Negative Log Likelihood (KDE NLL)基于核密度估计的负对数似然 (KDE NLL):通过在轨迹样本上拟合核密度估计而创建的分布下地面实况轨迹的平均负对数似然。

         4.Best-of-N (BoN):N 个随机采样轨迹的最小 ADE 和 FDE。我们将我们的方法与一组详尽的最先进的确定性和生成方法进行比较。

(3)评价基准:

        a)确定性方法的评价基准:

        我们的方法与以下确定性基线进行了比较: (1) 线性:一个线性回归器,其参数通过最小化最小二乘误差来估计。 (2) LSTM:只有智能体历史信息的 LSTM 网络。 (3) 社交 LSTM [1]:每个智能体都使用 LSTM 建模,并且附近智能体的隐藏状态在每个时间步使用建议的社交池操作进行池化。 (4) Social Attention [47]:与 [1] 相同,但所有其他智能体的隐藏状态均通过提议的社会注意操作合并。

        b)生成方法的评价基准

        在 ETH 和 UCY 数据集上,我们的方法与以下生成基线进行了比较:(1)S-GAN [13]:每个智能体都使用 LSTM-GAN 建模,这是一个 LSTM 编码器-解码器,其输出是 GAN 的生成器。然后使用鉴别器根据地面真实轨迹评估生成的轨迹。 (2) SoPhie [41]:一个 LSTM-GAN,增加了一个提议的物理和社会注意模块。 (3) MATF [53]:一种利用 CNN 融合代理关系和编码环境信息的 LSTM-GAN 模型。 (4) Trajectron [20]:一种 LSTM-CVAE 编码器-解码器,它被显式地构建以匹配场景的时空结构。它的场景抽象与我们的相似,但使用了无向边。

         在 nuScenes 数据集上,还比较了以下方法:(5)卷积社会池化(CSP)[11]:一种基于 LSTM 的方法,它明确考虑固定数量的运动类别并预测哪一个智能体最有可能选择。(6) CAR-Net [42]:一种基于 LSTM 的方法,它使用视觉注意力对场景上下文进行编码。 (7) SpAGNN [7]:CNN 对原始 LIDAR 和语义地图数据进行编码以产生对象检测,图神经网络 (GNN) 从中产生概率、交互感知轨迹。

(4)评价方法:

        对于 ETH 和 UCY 数据集,使用留一法进行评估,类似于以前的工作 [1,13,20,28,41,53],其中模型在四个数据集上训练并在持有的数据集上进行评估- 第五名。使用 8 个时间步长 (3.2s) 的观察长度和 12 个时间步长 (4.8s) 的预测范围进行评估。对于 nuScenes 数据集,我们分离出 15% 的训练集用于超参数调整并在提供的验证集上进行测试。在下文中,我们报告了 Trajectron++ 在多种配置中的性能。具体来说,Ours 是指仅使用节点和边编码的基础模型,经过训练以预测智能体速度,并通过欧拉积分速度来产生位置;我们的+∫是具有动态集成的基础模型,经过训练以预测控制动作并将智能体的动态与控制动作集成以产生位置;我们的+∫ , M 额外包含了 CNN 的地图编码;并且 Ours+∫ , M, yR 添加了机器人未来编码器。

 5.1 ETH and UCY Datasets

确定性方法的比较:

        首先,作者分解释了数据的来源与可信度分析:

        当与 Social LSTM 进行比较时,报告了 [13] 的表 1 中总结的结果,因为它是同一作者的最新工作;

         Social AttentionFDE/ADE的比率值比其他方法要高,特别的,在Univ 数据集上FDE是3.92,是ADE0.33的12倍,这意味着在11个步长上误差几乎是0,因为没有公开的代码,作者对此表示怀疑。

         与以前的工作进行公平比较,既不使用地图编码,也不使用未来的运动计划编码。模型的编码器中仅使用节点历史和边缘编码器。此外,采用了模型的确定性 ML 输出方案,该方案产生了模型最有可能的单一轨迹。最终的结果在表2中。

生成方法的比较:

         使用 [20,45] 中提出的基于 KDE 的 NLL 度量,该方法保持完整的输出分布并比较不同方法输出下基本事实的对数似然。

        表 3 总结了这些结果,并表明我们的方法明显优于其他方法。这也是动态集成方案带来的性能改进显而易见的地方。它产生了最好的性能,因为模型现在被明确地训练在它试图输出的分布上(损失函数项 pψ (y|x, z) 现在直接在位置上),而基础模型是在速度分布上训练的。

         不幸的是,目前还没有公开发布的 SoPhie [41] 或 MATF [53] 模型,因此无法使用基于 KDE 的 NLL 度量来评估它们。相反,我们使用他们作品中使用的 Best-of-N 度量来评估 Trajectron++。

地图编码:

          为了评估合并异构数据的效果,我们比较了使用和不使用地图编码器的 Trajectron++ 的性能。具体来说,我们比较了来自 ETH - University 场景的完整模型输出的 2000 个轨迹样本中的障碍物违规频率,该模型提供了一个简单的二进制障碍图。总体而言,我们的方法在地图编码的情况下产生碰撞预测的概率为 1.0%,而在没有地图编码的情况下为 4.6%。我们还研究了特别靠近障碍物的行人的减少量(即他们的完整输出中至少有一个违反障碍物的轨迹),附录中显示了一个示例。在这种情况下,我们的方法在地图编码的情况下产生碰撞预测的时间为 4.9%,而在没有地图编码的情况下为 21.5%。

5.2 nuScenes Dataset

        该实验的目的:进一步评估模型使用异构数据并同时对智能体的多个语义类别进行建模的能力,在 nuScenes 数据集 [6] 上对其进行评估。

        实验方法:确定性 ML 输出方案用于公平地与其他单轨迹预测器进行比较。预测行人和汽车的轨迹,这两个语义对象类占数据集中存在的 23 个可能的对象类中的大部分。为了获得预测质量随时间下降的估计,我们计算模型在 t = {1, 2, 3, 4}s 时的 FDE,用于所有具有至少 4s 可用未来数据的跟踪对象。我们还实现了一个恒定速度基线,它只是保持智能体在预测范围内的航向和速度。

         实验细节:由于其他方法使用检测/跟踪模块(而我们的没有),为了建立公平的比较,我们从报告值中减去了其他方法的检测和跟踪误差。动态集成方案和地图编码对车辆产生了显着的改进,因为它们的动态扩展独轮车动力学现在不同于基础模型所做的单个集成器假设。请注意,我们的方法仅被训练来预测未来 3 秒,因此它在 4 秒时的表现也提供了衡量其泛化能力超出其训练配置的能力。其他方法不报告 2s 和 4s 的值。可以看出,Trajectron++ 优于现有方法,而在 3 秒后性能没有急剧下降。表 4 (b) 中报告了我们的方法对行人的性能,其中包含高清地图和动态集成类似地提高了行人数据集的性能。

消融实验

        添加动态积分方案会在所有预测范围内显着降低 NLL 和 FDE。道路边界违规预测的频率也略有增加。这是在位置(而不是速度)空间中训练的结果,这会在相应的预测中产生更多的可变性。此外,包括地图编码可保持预测准确性,同时降低违反边界预测的频率。

       还研究了调节对自我车辆未来运动计划的影响,结果总结在表 5 (b) 中。正如人们所期望的那样,为模型提供自我车辆的未来运动计划可以显着减少错误和道路边界违规。他的用例在整个自动驾驶中很常见,因为自我车辆通过评估运动原语在每个时间步重复生成未来的运动计划。总体而言,动力学集成是主要的性能改进模块。

定性比较:

        图 3 显示了 来自基本模型的轨迹预测,具有动态集成和动态集成 + 地图编码。在其中,可以看到基本模型(在速度空间中预测)低于红色汽车的转弯,预测它最终会遇到迎面而来的车辆。通过整合动力学,该模型可以捕捉智能体动作中的多模态,预测右转和继续直行的可能性。通过添加地图编码,预测不仅更加准确,而且现在几乎所有的概率质量都位于正确的道路一侧。这与没有地图编码的模型版本形成对比,后者预测红色汽车可能会进入迎面而来的交通。

疑问:通过文章中实验数据,计算可以看出使预测精度得到提高的重要原因是基础模型,添加动力学约束后的精度提高其实是不高的,这与论文本身的表述是相悖的,在复现以及其他论文引用时,误差都要比论文本身的数据误差要大。

7 附录

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值