行为预测是指根据过去物体的运动轨迹,预测物体将来一小段时间内的运动轨迹。主要包括行人轨迹预测和车辆轨迹预测。
行为预测是指根据过去物体的运动轨迹,预测物体将来一小段时间内的运动轨迹。主要包括行人轨迹预测和车辆轨迹预测。
这里主要是对2014年的一篇综述论文《a survey on motion prediction and risk assessment for intelligent vehicles》进行分析。
因为预测可以提高规划控制的稳定度和舒适度。以图1为例,假设我们发现前面有一辆车要左转,如果我们不预测前面车辆的意图,我们当前有3种选择,第一种直行,第二种右转,第三种左转。可以看到左转是最差的选择,直行其次,最好的选择是右转,可以避免紧急停车或者交通事故,而且可以提前规划出一条比较舒适的轨迹,对自动驾驶汽车来说,可以规划出一条容易控制的轨迹。
图1 汽车行为预测示意图
知道了为什么需要行为预测,那么预测有哪些特点呢?
Tracking是预测的基础 - 前面我们介绍了大量轨迹追踪的工作,进行轨迹追踪的目的就是为了轨迹预测。就好像预测股票走势,需要通过股票的历史轨迹来预测将来的轨迹,如果只是根据当前的点位来进行预测,极有可能会偏差很大。所以如果我们提前把物体的运动轨迹保存起来,然后进行分析预测,这样就能够大大提高预测的准确性,所以说Tracking是预测的基础。
预测只能预测一小段时间内会出现的情况 - 由于预测都是基于概率和经验的假设,而且车和车之间,车和环境之间都会相互影响,因此只要一个变量改变,那么其它的变量可能会跟着改变,因此无法预测未来很长一段时间的情况。
接下来我们对预测进行问题进行定义,把预测抽象为一个数学问题,那么什么是预测呢?
我们可以把预测的轨迹抽象为一个个点(xt, yt),一直从t时刻到t+m时刻,其中有N个车,因此就有N条轨迹。下式就代表预测N个车辆从t时刻到t+m时刻的轨迹集合。
那么预测问题,就可以抽象为预测这个轨迹集合的概率分布。
根据问题的定义,我们可以对自动驾驶轨迹预测的方法分为3类。
我们先通过一张图来了解这3种方法的区别。
图2 3种预测模型的区别
可以看到物理模型只是通过车辆的运动模型来进行预测,没有考虑到交通规则和其它车的交互,因此当经过路口的时候和行驶的车辆发生了碰撞。意图模型理解了交通规则,在路口时停车了,并且经过路口的时候也会对车辆进行避让,但是由于没有和其它车的交互,因此可能会出现碰撞,也可能导致汽车规划出一条很急的轨迹。最后交互模型考虑了交通规则,并且知道有车辆靠近,因此会等待直行的车辆经过之后再左转。
下图是三种模型的对比,输入的参数,挑战和用到的方法。
下面我们逐个说明这3种模型。
根据汽车模型的划分,可以分为
因为动力学模型非常复杂,比较常用的是汽车运动学模型,把汽车当做一个刚体,根据刚体运动预测汽车的轨迹,有3种方法。
Gaussian noise simulation 车辆的不确定性描述为高斯模型,通过卡尔曼滤波和贝叶斯网络对车的状态进行预测。
Monte Carlo simulation 蒙特卡洛模型,根据速度、加速度对可能的区域进行采样,生成预测路径。可以看到相对高斯模型,蒙特卡洛模型更加考虑到了汽车的运动学规律,在沿着汽车当前行驶方向的概率高,偏离轨迹的概率要低。
物理模型的缺点主要是缺乏对交通规则的理解,没有和其它车辆的交互,当其它车辆减速、转弯的时候无法很好的预测。
Prototype trajectories 原型轨迹,车的轨迹可以分为一系列的簇,每一簇对应一个典型的运动模式。
基于意图的模型主要是分为2部分,一是对意图进行评估,然后再执行。
缺点是对时间的定性约束,车辆非常多的情况,不能应用到其它拓扑结构的道路。
主要的方法分为2类。
比物理模型预测的时间更久,比基于意图的预测更加稳定,计算多个汽车之间的关系计算量比较大。
最后还提供了一些风险评估的方法。
论文中提出了3种对车辆进行轨迹预测的方法,并且对比了3种方法的优缺点,这篇论文写的比较早2014年,目前state-of-art的方法是基于RNN的深度学习方法,当然通过这篇论文我们可以了解自动驾驶轨迹预测的经典方法,并且学习对车辆进行风险评估。
本文来源:分子运动
本文仅作学术分享,著作权归作者所有,如有侵权,请联系后台作删文处理。