本文将分享来自UC Berkeley的工作:基于动态关系推理的多智能体轨迹预测问题

公众号:将门创投(thejiangmen)作者:加州大学伯克利分校在读博士生 李家琛 卡内基梅隆大学在读硕士生 杨帆

多智能体交互系统在生活中随处可见,从纯物理学系统到复杂的社交网络都可以被囊括其中。在许多应用领域,对环境情况的有效理解以及对交互中个体行为与轨迹的准确预测起着至关重要的作用。

本文提出了一种通用的用于多智能体轨迹预测的算法,可以显式地对个体间的动态交互关系进行有效地识别并基于此进行多模态的长期预测。研究人员用多个不同领域的数据集对模型进行了测试,并在与目前最先进的算法的比较中取得了最优的效果。

论文链接:https://arxiv.org/abs/2003.13924

项目链接: https://jiachenli94.github.io/publications/Evolvegraph/

轨迹预测最新论文,代码及数据集集锦:

https://github.com/jiachenli94/Awesome-Interaction-aware-Trajectory-Prediction

一、背景与挑战

复杂的多智能体交互系统在我们的生活中是十分常见的,例如多粒子交互的物理系统,日常交通中车辆与行人,球场上处于合作或对抗关系中的球员等。在这些场景中,对于其中每个个体未来轨迹的准确预测经常起着至关重要的作用。

这类系统的特点之一是每个个体之间会存在多种多样的关系,并且这些关系也会随着时间不断地演变。另外,每个个体的未来运动轨迹很可能存在着多模态的特点——即不同种类的未来运动轨迹,例如一辆车在交叉路口可能直行也可能转弯。忽略关系推理的传统轨迹预测方法难以在如此复杂系统之上取得很好的效果。

针对此问题,Thomas Kipf等人在《Neural relational inference for interacting systems》一文中提出了一种基于图神经网络的模型对关系进行推断(以下简称NRI模型),并基于这种推断进行对未来轨迹的预测。但他们的算法难以应对不断演变的关系,尤其是关系突然改变的情况,同时也无法处理智能体行为存在多模态的情况,然而上述两点在诸如自动驾驶等问题中十分关键。

我们提出了一种名为EvolveGraph动态演化关系图的算法,能够有效地捕捉和预测多个智能体之间关系的变化,并且根据此关系预测未来的运动轨迹,同时能有效体现物体轨迹的多模态特点。我们在物理系统、自动驾驶场景、篮球运动员及行人数据集上验证了我们的算法,并且取得了比现有的最先进的算法更好的效果。

二、EvolveGraph算法框架

我们采用图结构表示多智能体系统,构建了全连接观测图 (observation graph) 并使用图中的节点和边的属性 (node/edge attribute) 来表征观测到的信息。基于观测图,我们在隐空间 (latent space) 中学习关系图 (interaction graph) 来表征针对每对智能体之间关系的推断。

算法主要分为三部分,静态关系推断(static interaction graph encoding),动态关系演变(interaction graph evolution)以及基于推断关系的轨迹预测 (decoding),如Figure 1所示。

Figure1. EvolveGraph概要模型图

1. 静态关系推断

观测图包含对应每个智能体的节点和一个环境节点,每个节点之间全连接表示他们之间可能存在关系。

算法第一步需要提取每个节点在观测图中的特征,每个节点可以根据自己的历史轨迹和环境信息获得自身属性 (self-attribute),同时可以根据所有相邻节点的信息获得出其社会属性(social-attribute)。两相结合可以用于更新自我节点的属性。

上述过程可以循环多次以提取更深层次信息,在实际操作中,一次该操作即可将全连接图的信息传递到任意一个节点,完成一次完整的特征提取。基于一对节点的属性可以更新二者之间边的属性,基于边的属性可以进行两节点之间关系的推断。

将该边的属性送入softmax函数,即可得到该两节点之间关系类别的概率分布,即该关系属于L种可能的关系类别中每一种的概率。整个关系推断的过程,既可以基于已知的历史轨迹,也可以基于模型输出的最新预测结果,用于做进一步的长期轨迹预测。

2. 动态关系演变

EvolveGraph采用循环神经网络GRU对关系图的演变进行建模。将不同时间步的静态关系推断得到的结果依次输入GRU网络中,使之能够根据过去关系的历史以及对当前最新关系的推断,获得未来关系可能的发展情况,为后续基于关系推理的轨迹预测奠定基础。

3. 基于动态关系的预测

针对每一种可能存在的关系类型,模型之中均有一种与之对应的全连接网络用于获取在这种关系下两节点之间的相互影响,其输入是两节点的属性。

针对某个特定节点,首先计算所有关系图中相邻节点的产生的影响,然后将其相加并与自己本身的信息一起送入循环神经网络,即可预测该个体未来的轨迹。

对未来轨迹的预测是基于高斯混合模型的多模态分布,用于表征未来可能发生的多种模态下的运动轨迹。

4. 动态关系图与多模态的联系

不同模态下的运动常常伴随着不同的关系。例如,汽车直接通过十字路口可能是因为其他车辆在避让它,而汽车停在十字路口前等待可能是因为需要避让其他车辆,不同的交互关系会导致不同的结果,进而影响汽车的运动轨迹。

因此,一方面动态图的引入为对更复杂多样的模态的建模提供了帮助;另一方面,多模态算法的引入也使得动态图在训练过程中避免或缓解多种可能性坍缩成一个平均结果的情况,并且能够更大程度地获得具有多样性的预测结果。

三、实验结果

我们在多个数据集上验证了EvolveGraph算法并取得了与现有方法相比更好的预测效果。数据集涉及的应用领域覆盖了动态物理系统,车辆行人以及篮球运动员等。下面主要介绍在动态物理系统和车辆行人领域的部分结果,以预测误差和可视化的方式呈现,更多有趣的结果和细节详见论文。

1. 动态物理系统

我们设计了一个由三个粒子构成的动态系统,初始时所有粒子均处于x轴上方并且被一个刚性星型杆连接,系统整体具有随机初始速度和初始角速度,当某个粒子的轨迹穿越x轴时,刚性杆立刻消失,所有粒子开始以当前的速度进行匀速直线运动,在Table 1中用“Change”表示。

我们期望EvolveGraph模型可以从只包含轨迹观测的训练集中学到粒子间关系变化的规律,并且可以进行准确的长时间预测。为了增强完整性,我们也在粒子关系不变的系统上进行了实验,即刚性杆始终存在的情况,在Table 1中用“No change”表示。

我们在Table 1中展示了对粒子关系的识别准确率。我们先采用有监督学习 (supervised learning) 的方法训练,因其效果最好将其当作“Gold Standard”。然而在实际问题中是获取不到真实的交互关系 (ground truth) 的,所以有监督学习的方法并不适用。除此之外,跟其他baseline方法相比,EvolveGraph可以达到最高的准确率。

我们在Figure 2中展示了隐空间关系图演变过程以及粒子的运动轨迹。在上方的heatmap中,颜色越深表示粒子间有边相连的概率越大,从某一时刻起刚性杆(边)消失,真实的变化时间用白色字体标出。

从结果可以看出EvolveGraph可以及时准确地预测粒子关系的变化。从下方的粒子轨迹图中可以看出,EvolveGraph预测的轨迹与真实轨迹非常相似,一定程度上也体现出动态关系推理的重要性。

Figure 3展示了粒子轨迹预测的误差比较,可以看出随着预测时间的增长,EvolveGraph (dynamic) 的优势越来越明显。

Figure 2. 隐空间关系图演变过程及粒子运动轨迹
Figure 3. 粒子轨迹预测的误差比较

2. 车辆与行人

我们也在交通场景的数据集上进行了实验,并与最先进的模型如STGAT (ICCV 2019),Social-STGCNN (CVPR 2020), Trajectron++ (ECCV 2020) 等进行了比较,如Table 2所示。

结果显示EvolveGraph可以达到最小的预测误差,在长期预测 (4s) 中的提升更为显著。Figure 4展示了两个典型的测试场景,从预测的轨迹分布图中可以看出,真实轨迹均位于预测分布中概率最高的区域,并且预测分布具有多模态的特点。

例如,在 (b-1) 中,位于下方的车既有可能继续保持在转盘道内行驶,也有可能驶离转盘道,我们的模型可以同时预测出两种不同的可能,生成具有多模态的轨迹分布。

Figure 4. 车辆及行人轨迹图

四、总结与展望

本文主要关注的是基于动态关系推理的多智能体轨迹预测问题,文中提出的算法框架具有一定的普适性,可以扩展应用到多个不同领域。目前文中提到的系统均为个体数量相对较少的系统,但该算法也具备扩展到大规模交互系统的潜力,如复杂物理系统仿真,大规模交通路网等,这也得益于图神经网络的发展与应用。

//

作者介绍:

李家琛,加州大学伯克利分校 (UC Berkeley) 五年级博士生,导师为Prof. Masayoshi Tomizuka。他的研究方向包括机器学习,图神经网络,计算机视觉等方法,以及它们在自动驾驶,多智能体关系推理,行为预测和决策规划等问题中的应用。本文的工作是在Honda Research Institute的实习期间完成的。

更多信息请访问个人主页:https://jiachenli94.github.io/

杨帆,卡内基梅隆大学 (Carnegie Mellon University) 机器人研究所一年级硕士生,清华大学本科2020年毕业,2019年曾在UC Berkeley交换。他的研究方向包括机器人抓取,强化学习,策略迁移,鲁棒控制等。

更多信息请访问个人主页:https://sites.google.com/view/fanyang98/home-page

-The End-

@将门创投· 让创新获得认可

如果喜欢,别忘了赞同、关注、分享三连哦!笔芯❤

iview tooltip自动消失_实现自动驾驶,为什么要对汽车、行人的轨迹进行预测?它与物体检测、追踪和路径规划间的关系是什么?...相关推荐

  1. Andorid AlertDialog 点击后自动消失_为何孙悟空成佛后,金箍儿就会自动消失?金箍儿究竟代表什么...

    题:孙悟空在成佛后,变化有多大?你看唐僧怎么说? 文/姜子说书 <西游记>故事里,唐僧是个志诚君子,铁打的心肠朝佛去,并不是什么酒色凡夫,所以,他才能经得起西天路上无数女妖精的诱惑. 然而 ...

  2. iview tooltip自动消失_惠州广日自动人行道价格大概多少

    惠州广日自动人行道价格大概多少果使用无机房电梯因为不必单独设置电梯的主机房可以有效降低建筑物的高度.不方便设置电梯机房的地方如宾馆.酒店附属楼房.裙楼等.无机房的主机放置方式现今流行两种:一种为主机置 ...

  3. Andorid AlertDialog 点击后自动消失_不看后悔!2011年别克更换完变速箱电脑后,要如何做设定匹配...

    点击上方"蓝字",发现更多精彩.案例背景 一辆2011年的别克GL8波箱电脑损坏,更换全新电脑板后,并成功执行了编程配置功能,但依旧不能正常挂挡,无法启动车辆,,读取到故障码&qu ...

  4. dseo13b打开自动消失_抖音怎么自动生成字幕?动态字幕有哪几种?

    点击蓝字关注,回复2 添加助教领取抖音资料大礼包 这是小星学长的第 96期分享 作者 l 小星学长 来源 l 星域赋能站(ID:gh_5663b69c0daa) 现在使用玩抖音短视频的新人是越来越多了 ...

  5. dseo13b打开自动消失_刚安装的WIN764位系统

    首先要注意的是顺序,应该先装模拟狗,再装EDIUS软件! 重点其实就是模拟狗的安装过程,所以为了省一点事,可以尽量下载EDIUS6.02集成安装盘,要用到的工具都是很齐全的:或尽量去找那个在64位wi ...

  6. word 流水号 自动增加_以自动组卷软件为例浅谈Python自动化办公

    Python作为一种学习门槛低.简洁并且编码效率高的热门编程语言,在很多行业都有广泛的应用.在自动化办公领域,掌握一点Python知识就能够把或复杂或繁琐的工作交由计算机自动处理,堪称解放劳动力的利器 ...

  7. win7如何设置通电自动开机_电脑自动开机,教您怎么设置电脑自动开机

    上班族每天上班打开电脑的时间都差不多在那个时间,都开电脑太麻烦,困则思变,可以设定电脑自动开机.这样一来,在还没来上班前电脑就已经开机,等来上班后即可直接运行电脑,不用再开机,下面,小编就来跟大家讲解 ...

  8. mysql数据自动备份_每天自动备份MySQL数据库的shell脚本

    经常备份数据库是一个好习惯,虽然数据库损坏或数据丢失的概率很低,但一旦发生这种事情,后悔是没用的.一般网站或应用的后台都有备份数据库的功能按钮,但需要去手工执行.我们需要一种安全的,每天自动备份的方法 ...

  9. 笔记本电脑频繁自动重启_笔记本电脑自动重启是什么原因

    使用电脑很长一段时间就会出现各种各样的问题,但不管出了什么问题,只要电脑能打开有一种方法可以解决的问题,但有时电脑会莫名其妙的重启,电脑爱好者我们有点不知所措.尤其是办公室人员做了很长时间的工作,想要 ...

最新文章

  1. Consultanting Service
  2. Oracle:管理 date类型 interval 动态变化的分区:查询、删除
  3. fft ocean注解
  4. 西门子触摸屏脚本程序_通过驿唐PLC501远程下载Smart Line触摸屏
  5. POJ2482-Stars in Your Window【线段树,扫描线,离散化】
  6. java console输出_将java console的输出写入文件
  7. Android Device Monitor 的 File Explorer 打开一片空白,不显示文件
  8. 中国首家干线物流联合创新中心成立,实施自动驾驶数据共享是否可行?...
  9. 国际知名品牌广告语欣赏(英汉)
  10. Android图片轮播控件 如果对你有帮助请star哦!
  11. (JS)统计重复个数
  12. RESTful API设计简介
  13. “给阿姨倒杯卡布奇诺”广发卡分期积分带你免费畅饮星巴克!
  14. 4天快速落地团队内部的UI组件库
  15. 2016 年度开源中国新增开源软件排行榜 TOP 100
  16. 通过Fiddler进行抓包并分析
  17. php实训日记200字,做实验日记200字
  18. 电脑水冷风扇转速太高怎么调?
  19. 2021.12.10 vue 路由 (13)
  20. 「镁客早报」SpaceX猎鹰或将携带3.6万蠕虫登陆空间站;苹果分析师透露AirPoda半年内迎来升级...

热门文章

  1. C++ 进阶——object slicing 与虚函数与dynamic_cast
  2. MathType 的使用
  3. java list api_Java核心API -- 6(Collection集合List、Set、ArrayList、HashSet)
  4. 自学python编程免费教程-Python十分钟入门 自学python基础教程送你参考
  5. python语言的主网址-Python简介
  6. 学python能赚钱吗-在校大学生用python当爬虫一个月能赚3000吗?
  7. 如何系统的自学python-作为小白,如何系统的自学PythonWeb开发?
  8. 自学python能学成吗-Python能自学成功吗?
  9. python编程-Python 编程速成(推荐)
  10. android从本地服务器新浪云,GitHub - SinaCloudStorage/SinaStorage-SDK-Android: Android SDK For 新浪云存储...