基于仿真的工具链用于识别和验证自动驾驶汽车的关键场景

电子说

1.3w人已加入

描述

关键场景(Critical Scenario)识别对自动驾驶测试具有重大意义。过往的关键场景识别主要是考虑安全因素。而本文则综合考虑了安全影响和交通质量影响。除了安全指标,定义了四个覆盖宏观与微观的交通质量指标,并对这些指标进行了归一化和权重分配,在此基础上应用仿真工具链进行分析。

自动驾驶汽车面临的主要挑战之一是测试和验证。一方面,需要新的测试方法以改进传统路测方法,解决传统测试中需要大量行驶里程所带来的一些问题。另一方面,由于发展初期有限的市场渗透率,测试验证过程还需考虑混合交通环境下其他人类交通参与者的驾驶行为对自动驾驶汽车功能产生的重大影响。基于仿真的自动驾驶汽车通用工具链,用于关键场景(Critical Scenario)的模型在环识别,结合汽车动力学仿真、交通仿真和车辆协同仿真进行场景识别,并考虑了其他交通参与者的行为。最后通过安全指标和交通质量指标评估并筛选得到关键场景。

1.引言

由于初期市场渗透率较小,自动驾驶汽车的发展受到阻碍。在不考虑其他交通参与者驾驶行为的情况下引入这类汽车相对简单,但是其在包括人类驾驶员的混合交通环境下完成行驶任务将面临巨大挑战。即使自动化功能正常工作且驾驶行为符合规范,其他交通参与者也可能导致自动驾驶汽车面临关键场景。图 1 显示与人类驾驶员的复杂交互所引起的关键场景的示例,顶部为初始状态,底部为最终状态。其中汽车 1 是自动驾驶汽车,汽车 2、3 由人类控制。汽车 2 的驾驶员驾驶行为较为激进,而汽车 3 的驾驶员驾驶行为相对保守。首先,汽车 1 自动检测到可以执行变道行为的理想情况。当其进行变道时,汽车 2 忽视安全间隙而紧跟汽车 1,同时汽车 3 驾驶非常谨慎,便可能导致图 1 所示关键场景。本文后续介绍基于该具体场景展开。

自动驾驶

图1 自动驾驶汽车V1关键场景

2.基于仿真的通用工具链

识别关键场景是验证自动驾驶汽车的关键环节,本文中,关键场景被定义为需要进行测试的场景。

本文使用基于仿真的通用工具链(图 2)解决识别关键场景的问题。该工具链由逻辑场景(Logical scenarios)开始,逻辑场景是基于参数空间的场景描述,通过确定参数空间中各参数的取值范围,来限制可能的测试场景。

自动驾驶

图2 基于仿真工具链的自动驾驶汽车关键场景验证与识别

逻辑场景参数空间中选择特定参数便构成了具体场景(Concrete scenarios)。参数选择的方式如工具链左侧所示(图 2),通过使用专家意见、数据记录、场景目录等确定关键场景的方式的主要缺点是容易遗漏一些关键场景。本文选择工具链右侧方式,即使用参数变化模块,该模块通过自动更改逻辑场景的参数来创建具体场景,这是在整个参数范围内识别关键场景的一种简单方法。使用该方式的主要挑战是,在应用工具链之前,关键场景及其特性是未知的,因此很难确定哪些参数组合被选取后需要更仔细和全面的去测试。

为了解决这一问题,将上述方法生成的具体场景用于仿真环境的输入,该仿真包括耦合交通仿真、汽车动力学仿真和车辆协同仿真三部分:

交通仿真为汽车提供周围交通环境

汽车动力学仿真为汽车提供详细动力学模型以及需要测试的自动驾驶功能

汽车协同仿真包括信息交互模型

然后,将定制的评价指标应用于仿真结果,根据仿真结果是否满足评价指标标准,将具体场景自动分类为关键或非关键场景。根据感兴趣的领域不同,工具链可以使用不同类型的评价指标。在本文中,将使用安全和交通质量作为评价指标。

识别出的关键的具体场景可以被应用于 V 型开发模型的各个阶段,包括模型在环(MiL)、软件在环(SiL)、硬件在环(HiL)、汽车在环(ViL)等,并记录数据。工具链的最后是对测试结果的分析,从而对功能开发进行反馈。 

本文中使用高速公路自动驾驶的例子来演示工具链的应用过程,该工具链也可以扩展到其他功能和领域,例如乡村道路以及城市区域。

3.仿真环境

使用耦合仿真要求虚拟环境具有可比性。不同虚拟环境不一定需要完全相同,但基本几何信息必须足够相似,以使动态耦合在这些环境中都适用。静态耦合是基于 OpenDrive 格式提供的实测数据集,地图数据转换方案如图 3 所示。

自动驾驶

图3 仿真环境的静态耦合和映射数据转换

地图数据通过所选道路的高精度测量来获取。本文选择了位于法兰克福(德国)附近的欧宝试验场。图 3 所示的地图数据转换器是一种数据转换工具,可将 OpenDrive 格式的数据解析为特定仿真环境中所需的特定格式。

动态耦合主要集中在交通仿真和汽车动力学仿真上。本文作者研究的可变区域如图 4 所示。

自动驾驶

图4 可变区域的动态耦合

交通仿真提供交通参与者行为,汽车动力学仿真提供自动驾驶汽车行为,包括驾驶功能和传感器设置等。协同仿真在本文中将不做讨论。动态耦合确保了自动驾驶汽车能够在周围的交通环境中行驶,从而提供能够响应汽车驾驶功能的驾驶行为的动态交通环境。

4.安全指标和交通质量指标

本文基于传统安全指标和交通质量指标来识别关键场景。对于安全指标,选定了碰撞时间TTC、制动时间TTB、期望减速度为临界指标。对于交通质量指标,按关注的空间域(DOI)大小以及不同的交通表征,定义了宏观指标、微观指标、纳米指标、个体指标四个子指标。

4.1 传统安全指标

为了使用基于仿真的工具链识别关键场景,需要指定与危险程度相关的术语。很明显,对临界性的理解会随着具体要求改变而有显著的不同。工具链的通用设计允许使用不同的临界项,最著名的临界性指标为「碰撞时间」。

自动驾驶

其中 Δp 是汽车位置的偏差,V_ego 是自车速度,V_obj 是对象速度,V_rel 是两车之间的相对速度。另一个标准度量称为「制动时间」,可定义为:

自动驾驶

其中 a_ego_max 表示自车能够执行的最大减速度。这个指标与自车的最大减速能力有关。最后一个指标称为「期望减速度」,如下式

自动驾驶

4.2 交通质量指标

为了研究自动驾驶汽车及其对交通质量的影响,本文提出了四种交通质量指标和一种组合各指标的方法。该方法旨在为场景的临界性评估收集更多信息。其优点是增加了结果的稳健性和有效性。指标的一般要求可以表述如下:

应识别每个关键情景

假阳性率(FPR,False positive rate)应该很低

评估应采用分级制度

应该有一个阈值,允许对组合的指标进行二进制分类

4.2.1 DOI界定和各指标选取

不同的交通指标关注的空间域不同。如图 5 所示,本文有三个空间域。第一个是固定空间域(DOI),按照高速公路容量手册的建议,它的尺度选择为 450m。第二个移动 DOI(始终)跟随着自车并直接关注周围的环境,引入它是为了获得关于汽车周围影响的附加指示。第三个移动 DOI 只考虑自车。

自动驾驶

图5 不同评价指标的DOI

第一个子指标是宏观指标。该概念关注固定的 DOI。

自动驾驶

第二个子指标是微观指标。它考虑固定 DOI 中的速度偏差和平均速度,把速度偏差除以自车的速度平均值的值作为微观交通质量的表征。当关注总体交通质量时,需要在指定的 DOI 中考虑每辆车,在这里车的标号用索引j表示,并且可以表示为:

自动驾驶

σ_vj 为标准速度偏差,v_j 是每辆车的平均速度。得到的平均变异系数 CV 由公式 5 的平均值计算。第一个移动的 DOI 是围绕自车的圆圈,其允许考察近距离的交互。

第三个子指标是纳米指标。它的计算是基于速度偏差*** 的平均值。

自动驾驶

其中 σ_vCircle_j 是速度标准偏差和 v_Circle_j 是相对于 DOI 的平均速度。

第四个子指标是个体指标。这个指标仅考虑自车的数量。DOI 仅围绕自车,单独考虑汽车的行为以收集有关评估过程的更多信息。

4.2.2 各指标等级归一化

场景是否关键以及是否应进一步研究的决定是二元的,因此最好有一个特定的阈值区分关键和非关键场景。为了实现全面整体的评分系统,每个指标将被归一化,「0」被定义为最佳等级,「1」被定义为最差等级。标准化评分系统可以表述如下,其中 G_mac 是宏观指标的等级、G_mic 是微观指标的等级、G_nan 是纳米指标的等级、G_ind 是个体指标的等级。

自动驾驶

宏观等级代表两个时间间隔之间交通密度的变化。当自车引起的交通密度减小时,相关场景会被分类到关键场景中。

微观等级考虑变异系数和平均速度之间的折衷。大的速度波动和低的平均速度会使场景被分类为关键场景,而小的波动和高的平均速度可以被归类为理想的交通状况。

纳米等级使用平均速度作为附加指标,纳米等级下的的变化系数和平均速度仅针对移动圆内的汽车计算,以考虑具有近距离交互作用的交通参与者。

个体等级也使用平均速度作为附加指标,它是通过加速度的标准偏差和自车本身的平均速度来计算的。大的加速度变化和低的平均速度会使场景被分类为关键场景。

4.2.3 总体指标计算

进行总体分级的最简单方法是对指标求平均值,如公式 8 所示。

自动驾驶

但这些指标的权重明显不同。因此,作者利用由专家进行评价和分级的训练数据,基于最小二乘法对加权系数进行了优化。目的是提高基于训练数据的整体评价的稳健性。最终等级将以参数形式表示。

自动驾驶

其中 x_1...x_4 是每个指标的各个等级,β_1...β_4 是相应的加权因子。图 9 显示了优化方案。

自动驾驶

图9 加权因子优化和指标绩效评估

相关的误差矩阵如图 10 所示。

自动驾驶

图10 用于关键场景二进制分类的混淆矩阵

理想的状况是,「真阳性率」(TPR,True positive rate)达到 100%,同时保持低的假阳性率。图 11 显示了 ROC-Graph 中的优化结果。  

自动驾驶

图11 指标表现结果

可以看出,组合优化后的指标(图 11,黑色实线)效果最好。FPR 约为 10%,且满足 100% TPR 的要求。

5.关键场景识别方法应用

本示例将 L3 高速公路执行标准驾驶任务作为用例,评估过程通过前文提出的安全和交通质量指标来完成,其中临界分类的相应阈值为 G_final = 0.279,TTC = 3.9 s,TTB = 3.8 s,a_req = - 2 m/s^2 。本文一共选择四个不同的进入高速公路场景进行实验。

场景一为无任何干扰,自车以规范行为进入高速公路的场景。此场景是为了说明指标确实将最佳行为归类为不关键场景。结果如表 1 所示。评价结果表明指标不会偏离(由空集 Φ 表示),场景未被识别为关键场景。

表1 具体场景:自车无干扰进入高速公路

自动驾驶

场景二为进入受干扰而导致传感器误差的高速公路场景。该场景会导致自车的路径跟踪控制器产生波动。使用相同指定属性来选择相同的逻辑场景。仿真结果如表 2 所示。结果表明交通质量指标及安全相关指标都对自车控制器产生的波动作出了响应,因此该场景被归类为关键场景。

表2 具体场景:自车带有传感器错误信息进入高速公路

自动驾驶

场景三考虑了高精度地图信息错误的情况。自动驾驶汽车使用高精度地图来增加预见性和制定驾驶策略,特别是在高速公路入口处,高精度地图可以提供如到车道末端距离和允许进入高速公里的虚线起点位置等信息,地图可能出现信息错误而不允许自车直接进入高速公路。仿真结果如表 3 所示。

表3 具体场景:自车带有地图错误信息进入高速公路

自动驾驶

由于地图信息错误,自车不能进入高速公路而在入口匝道上停车。L3 级功能要求驾驶员在堵塞入口匝道时接管汽车。基于交通质量指标,此场景被正确地归类为关键场景。由于自车没有引起相关安全问题,因此安全指标没有偏离。

场景四突出了其他交通参与者的行为及其对自动驾驶功能的影响。前文所述的其他交通参与者在仿真中的激进驾驶行为可以将自车逼到关键场景中。仿真结果见表4。

表4 具体场景:激进交通参与者进入高速公路

自动驾驶

结果表明激进的驾驶行为会极大地影响与安全相关的指标。每个单一指标值在某一时间会下降到临界阈值以下,因此这些场景是危险的,必须进一步测试。在本次仿真中,交通质量没有显著降低使得仅基于交通质量指标评价的场景被识别为不关键。

6.结论

本文介绍基于仿真的工具链,用于识别和验证自动驾驶汽车的关键场景,并在包含传感器错误、地图错误和其他交通参与者激进驾驶行为的不同场景中应用了该方法。

将标准的安全指标和本文新提出的评估交通质量的指标对交通场景进行分类,得到关键场景和相应数据,作为测试结果帮助开发人员改进相应的自动驾驶功能。评估交通质量的不同指标的组合能够对具体场景的关键性进行二元分类,这种分类侧重于找到考虑整体识别过程的最终等级的临界阈值,而不是分开使用每一个子指标。通过计算最终等级并将该值与使用训练数据的优化方案确定的阈值进行比较,以确定具体场景是否关键。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分