从无人车的角度观察物体状态——Apollo预测路径揭秘

上节课我们已经知道了如何使用传感器来感知世界,接下来的问题是该如何预测物体移动状态。在本节课中,我们将学习 Apollo 如何根据其他移动物体的状态以及无人车的位置去预测这些移动物体的路径。

预测非常重要。假如你在一个自由空间驾驶汽车时,发现自己不停与周围车辆发生碰撞,这可能是因为你妨碍了其他车辆的行驶路线。因此预测未来周围环境情况非常重要。

预测简介

无人车在行驶时会穿梭在许多物体间,其中许多物体本身就是一直在移动的,比如像其他汽车、自行车还有行人。无人车需要预测这些物体行为,才能确保无人车做出最佳决策。

一个物体的行为可以通过生成一条路径来预测。下图中这辆车向右转,并且开始在匝道前减速,这就是我们为这辆汽车预测的一条路径。

在车辆行驶的大环境中,我们会为路上所有其他物体做出类似的预测,这些预测结果在一段时间内共同形成了预测路径。在每个时间段内,我们会为每辆汽车重新计算并预测他们新生成的路径,这些预测路径为无人车在规划阶段做出决策提供了必要信息。

预测路径有实时性准确性的要求:

实时性是指我们想要的算法延迟越短越好。如果一辆车的速度是60千米/小时,那么它每0.25秒就会行驶5米,所以我们需要确保在行驶之前无人车前方5米没有任何障碍物,并且可以安全地通行。

下一个目标就是准确性。如果预测结果显示相邻多车道的汽车想并入我方车道,那我们需要做的事情就是减速。而另一种情况是,如果预测相邻多车道的汽车会保持在自己的车道上行驶,那我们需要做出的预测应尽可能保持准确,这样才能帮助无人车做出更好的决策。

预测模块也应该能够学习新的行为。当路上车流量很大时,路况变得很复杂,此时想开发出每种场景下的静态模型是几乎不可能完成的任务。这也是为什么当遇到这样的问题时,我们需要预测模块能够学习新的行为。用这种方式,我们可以使用多源数据进行训练,这可以使算法随着时间的推移而提升预测能力。

常见的预测方式

现在我们将要学习的是Apollo 平台对于预测的架构。基于模型的预测数据驱动预测是两种基本的预测类型。

为了在特定的环境(例如高速公路等)中更容易地进行预测,我们可以利用这个几乎无限大的轨迹来限制预测问题。这样就能方便汽车将它在任何时间点保留下来的不连续的车道信息储存下来,所以我们将简化预测,使其易于控制。而且预测也将成为决策的核心,因为你只要知道该期待什么,就会做出更好的决策。

基于模型的预测

假设无人车来到了一个 T 型路口,并且看到一辆车从左面行驶而来,此时我们还不清楚这辆车是要右转还是直行。

用基于模型的方法,我们可以为此场景构建两个候选的预测模型:一个模型描述了该车进行右转弯,用绿色轨迹表示;另一个模型描述了该车继续前行,用蓝色轨道表示。此刻,我们认为任意一种模式发生的概率都是相同的,所以我们有两个候选模型,每个模型都有自己的轨迹。

两个候选预测模型

我们将继续观察移动车的运动,看它与哪一条轨迹更加匹配:如果看到车辆开始向左改变车道,我们会更加确信车辆最终会直行,另一方面,如果看到车在右转弯车道保持前行,我们会更加倾向于预测该车辆右转。这就是基于模型预测方法的工作原理。

数据驱动预测

数据驱动预测使用机器学习算法,通过观察结果来训练模型。一旦机器学习模型训练好,我们就可以在现实世界中利用此模型去做出预测。

Apollo 平台对于预测的架构

数据驱动方法的优点是:训练数据越多,模型效果越好。

基于模型方法的优点是:直观,结合了我们现有的物理知识以及交通法则还有人类行为多方面知识。

你认为以上哪种预测方式比较好呢?

Apollo 基于车道的预测

Apollo 提供了一种叫基于车道序列的方法,为了建立车道序列,需要先将道路分成多个部分,每一部分都覆盖了一个易于描述车辆运动的区域。

比如,上图是一个部分区域的十字路口。为了预测,我们更关心车辆如何在这些区域内转换,而不是在某个区域内的具体行为。我们可以将车辆的行为划分为一组有限的模式组合,并将这些模式组合描述为车道序列。

例如,直行汽车的运动可以描述为车道序列是0-1-3-7。

车道序列:0-1-3-7

障碍物状态

为了预测物体的运动,我们也需要知道物体的状态。作为一名人类驾驶员,我们在行驶时需要通过观察一个物体的朝向、位置、速度和加速度来预测该物体将会做什么。

从人类角度观察物体的朝向、位置、速度和加速度

这同样是一辆无人驾驶汽车如何观察物体的状态。除了位置、速度、朝向和加速度之外,无人车还需要考虑车道段内物体的位置。例如,预测模块会考虑从物体到车道线段边界的纵向和横向距离。

从无人车角度观察物体的朝向、位置、速度和加速度

预测模块还包含之前时间间隔的状态信息,以便做出更准确的预测。

本节课开启了无人驾驶技术课程中预测模块的新篇章,我们初步了解和学习了究竟什么才是预测,以及有哪些不同种类的预测方式。欢迎大家在下方留言区讨论你对于无人车“预测”的看法!

下节课我们将继续学习预测模块中有关预测目标车道等知识。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181220B13H5I00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券