1.预测
预测模块具有实时性、准确性、自主学习的特点。有两种基本的预测框架,一种是基于模型的,一种是数据驱动的。
基于模型的预测基于规则与概率,通过穷尽当前状况的可能发生的合理的结果,并通过预测对象下一步的行动来增强某一结果可能发生的概率。
数据驱动的预测基于行为与数据,一般来说,数据越多,预测模型效果越好。
车道序列框架
apollo使用车道序列框架,为道路上的物体生成轨迹。为了生成车道序列框架,我们将道路分为多个部分,每一部分将覆盖一个易于描述车辆运动的区域。为了预测,我们更关心车辆如何在这些区域内转换,而不是在某个区域内的具体行为,我们可以将车辆的行为划分为一组有限的模式组合,并将这些模式组合描述为车道序列。
如图所示,蓝色汽车在十字路口将有两个显而易见的选择:一是右转,其车道序列为0-4-5;二是直行,其车道序列为0-1-3-7.
使用车道序列进行分析,可以将预测问题简化为选择问题。接下来便是通过计算每个车道序列的概率进行选择。
此时我们需要模型,将车辆状态和车道段作为输入,模型输出选择每个车道序列的概率。
apollo使用RNN(循环神经网络)建立上述模型来预测车辆的目标车道。基础的神经网络只在层与层之间建立了权连接,RNN最大的不同之处就是在层之间的神经元之间也建立的权连接,以实现“记忆功能”。
预测的最后一步是轨迹生成,我们注意车辆在两点的位置和方位,表示运动模型的初始状态和最终状态,我们可以使用这两个条件与车辆物理来拟合一个多项式模型进行预测。
2.规划
在规划中,我们通过结合高精度地图,定位和预测来构建车辆轨迹。规划第一步为路线导航,侧重于如何从地图上的A前往B,在进行路线规划时,将地图数据作为输入,并输出可行驶路线。在构建