基于 Pegasus 场景分层体系,提出了一种关于场景复杂度的量化方法,以此来评定场景数据的质量。该方法确定了每层要素的决定因素,根据决定因素确定每层要素的复杂度,通过求出各层要素复杂度之和,得到场景数据的总复杂度。此外,为了防止“过复杂”现象,提出了“母子库”法和“系统场景概率”法,将场景要素的复杂度乘以该要素的出现概率,得到修正后的复杂度。研究结果显示,通过该方法可以构建合理可用的场景库。
自动驾驶汽车因安全问题导致危害的主要原因包括两方面:(1)由于电子电器故障或软件系统 失效而导致的危害。对于该原因,ISO 提出了 ISO26262《道路车辆—功能安全标准》,而国内提出了对应的 GB/T 34590《道路车辆—功能安全标 准》。(2)由于系统性能不足或合理预见的人为误用而导致的危害。对于该原因,ISO 提出了 ISO/ PAS 21448 Safety of the Intended Functionality,简称 SOTIF 标准 。
SOTIF 标准中,将自动驾驶汽车行驶时面临的场景分为 4 类:已知安全场景、已知不安全场景、 未知安全场景以及未知不安全场景,如图1 所示。对于已知安全场景和未知安全场景,在 SOTIF 标准中并未给予关注。对于已知危险场景,SOTIF 标 准提出了一套方法论。其目的是提高自动驾驶汽车 相关系统的性能或缩小相关系统的运行区域范围, 并基于相关场景库进行测试与验证,即将已知危险 场景转化为已知安全场景。
而对于未知危险场景, 则可以基于场景库进行大量的试验,以此发现和探 测出相关系统存在的安全隐患场景,即将未知危 险场景转化成已知危险场景。最后,基于上述方法 论,将已知危险场景转化为已知安全场景。总之, SOTIF 标准的目标是尽可能地扩大自动驾驶汽车相 关系统在运行时所面临的已知安全和未知安全场景 的范围,从而尽可能地缩小已知危险和未知危险场 景的范围,如图 2 所示。要实现上述目标,其中一 个关键因素是构建高质量的预期功能安全场景库。
目前,许多企业和组织都构建了自己的预期功能安全场景库。例如:Kitti场景库、NuScenes[6] 场景库、Lyft 自动驾驶汽车场景库等。大多数企业和组织在场景库的构建过程中重点关注场景库数据的收集, 而对收集到的场景数据质量却缺乏合理的量化指标。
这无疑带来了两个问题:
(1)场景库中可能包含着大量重复且低质量的场景数据,导致基于场景库的试验时间过长,甚至无法发现自动驾驶汽车的性能缺陷,降低了试验结果可信度。
(2)不同场景库之间无法进行优劣性比较,导致自动驾驶汽车场景 库试验无法选择最优的场景库数据。因此,采用一 种科学合理的场景库质量量化方法是十分必要的。场景数据越复杂,对相关系统的挑战越大,探测出相关系统性能缺陷的可能性就越大。因此,可以认为场景数据的复杂度是影响场景库质量的关 键因素之一。
本文提出了一种量化场景数据复杂度 的方法。该方法是基于德国Pegasus 项目的场景分层体系,对场景中的要素进行分类统计,以计算场景 数据中要素的复杂度,并以此评估场景数据的质量。
Pegasus项目 由德国汽车行业相关企业和研究机构共同发起,以制定与自动驾驶汽车相关的 一系列测试标准为目的。该项目提出了一种场景分 层体系,即在场景中根据场景要素的不同将其分为6层场景,见表 1。
场景数据如图3所示。基于 Pegasus 场景分层体系,可以将场景数据进行分层,见表2。
Pegasus 场景分层体系将场景要素进行分层。本文进一步对每一层要素进行分析,量化每层要素复杂度。
道路层的复杂度主要由车道线的可视性决定, 见表 3。对于清晰的车道线,其复杂度规定为1;被遮挡或磨损的车道线,会影响车道线的识别,其 复杂度为2;路面积水、覆冰覆盖车道线,不但影 响车道线识别,还会造成行车困难,其复杂度为3;不规则的车道线可能会引起车道线误识别,导致车 辆行驶方向错误,其复杂度为4;无车道线场景可 能影响车辆行驶方向,其复杂度为5。
交通设施层的复杂度主要由交通设施的可视性决定,见表4。无交通设施的场景,其复杂度为1;交通设施清晰的场景,其复杂度为2;交通设施距 离过远导致无法清晰识别的场景,其复杂度为3;交通设施反光、脏污等导致难以识别的场景,其复杂度为4;交通设施不规则,可能引起错误识别, 导致车辆闯红灯等危险行为,其复杂度为5。
临时交通事件层的复杂度主要由其事件的偶然 性和可预见性决定,见表 5。无临时交通事件,其复杂度为1;交通管制等有专人维护现场的临时交 通事件,其复杂度为2;道路施工等有警告指示牌 的临时交通事件,其复杂度为3;交通事故等对行 车有较大影响的临时交通事件,其复杂度为4;落石、掉落的车轮等偶发性很强且难以预见的临时交通事件,其复杂度为 5。
交通参与者层的复杂度由参与者的常见性和合规性决定,见表6。无交通参与者,其复杂度为1;只包含车辆的场景,其复杂度为2;包含行人、自 行车等常见参与者且位于法规规定位置(如人行道、自行车道等),其复杂度为3;包含行人、自行车 等常见参与者且不位于法规规定位置(行人横穿马 路、自行车行驶在机动车道上等),其复杂度为4;不常见的交通参与者(如拖着大象的货车、骑着马 的行人等),其复杂度为5。
环境条件层的复杂度主要由可见度决定,见表7。晴天高可见度,其复杂度为1;雨天、傍晚中可见 度,其复杂度为2;夜晚有环境灯光,其复杂度为 3;夜晚无环境灯光,可见度较低,其复杂度为4;浓 雾天可见度极低,其复杂度为5。
信息层的复杂度主要由是否有交通信息决定, 见表 8。有高精度地图或 V2X 提供交通信息,则复 杂度为 1;无高精度地图或 V2X 提供交通信息,则 复杂度为 2。
通过上述分层方式以及每层的复杂度量化方式,可以计算出单个场景数据的复杂度,即每层复 杂度之和。例如:图3场景数据,其复杂度为18(每 层复杂度见表9)
对于整个场景库而言,将每个场景数据的复杂 度相加再除以场景库中场景数据总数,得到整个场 景库的复杂度。根据场景库复杂度可对比不同场景 库的质量。
值得注意的是,由于篇幅限制,上述每层复杂 度表中并没有列举和覆盖所有要素。对于没有列举 或覆盖的要素,应根据所在层复杂度的决定因素来 确定其复杂度。例如:环境条件层复杂度的决定因 素是可见度,那么对于没有列举出的浓度较低的雾 天,其可见度与夜晚有环境灯光的可见度相当,因 此其复杂度为3。
在采用上述复杂度量化方法构建场景库时,容易出现“过复杂”现象,即为了追求场景库复杂度, 场景库只收集高复杂度的场景,致使场景库复杂度 虽然很高却都是出现概率很低的场景,最终导致不能发现系统的性能缺陷。为了避免“过复杂”现象, 本文提出“母子库”和“系统场景概率”两个概念。
在实际场景库收集过程中,采取随机地点、 随机时间段、随机气候等的随机收集方式收集到 的数据构成“母库”。然后,针对相关系统的特 性与运行域,从“母库”中提取出“子库”。例如:对于只适用于高速公路的自动驾驶系统,从“母 库”中提取高速公路的场景数据,并形成“子库”。例如:针对特定城市开发的自动驾驶系统,从“母 库”中提取出该城市的场景数据,形成针对该系 统的“子库”。
值得注意的是:理论上,既可以先构建“母库”, 再提取“子库”,也可以先构建“子库”,再汇集成“母 库”。但本文建议采用“先母后子”的方法。因为“母 库”的构建是随机的,所以从“母库”中提取的“子库” 也具有随机的属性。如果先构建“子库”,又因为“子库”是针对特定系统的,那么在构建过程中难以做 到完全随机。
对于从“母库”中提取出的“子库”,进一步 分析其场景中每层要素在系统运行过程中出现的概 率,即系统场景概率。例如:对于只适应于高速公 路的自动驾驶系统,交通参与者层中出现只包含车 辆的概率(复杂度 2)是远高于出现行人、自行车 的概率(复杂度 3)。因此,在评估该层要素的复 杂度时,还需要将复杂度乘以一个概率系数,得出 该层最终的复杂度。其公式为:
式中:C 为该场景数据的最终复杂度;为第层 场景要素的复杂度;为第层场景要素在相关系 统运行时出现的概率系数。
通过“母子库”和“系统场景概率”可以避免“过 复杂”现象。主要原因有:(1)在构建“母库”时, 采用了随机地点、随机时间段、随机气候等的随机 收集方式,降低了“母库”收集过程中的人为因素。(2)针对特定系统,从“母库”中提取相关“子库”, 间接避免了“子库”中的人为因素。(3)根据该系 统运行时场景出现概率及其复杂度,计算出最终场 景复杂度。将复杂度与概率这个客观因素结合,避 免了人为因素的影响。例如:对于高复杂度、低概 率的场景要素或对于低复杂度、高概率的场景要素, 其最终场景复杂度的值可能较低。
针对不同系统,其概率系数是不一样的。例如:仅限于高速公路使用的系统,交通参与者层中出现 只包含车辆的概率系数大于出现行人、自行车的概 率系数;对于可以用于城市交通场景的系统,交通参与者层中出现行人、自行车的概率系数大于只包 含车辆的概率系数。此外,对于相同系统,处在无 人驾驶发展进程的不同阶段,其概率系数也可能是 不相同的。例如:现阶段,信息层中有高精度地图 或 V2X 的系统,其概率系数低于没有高精度地图或 V2X 的系统的概率系数。而在无人驾驶发展进程后 期,有高精度地图或 V2X 的系统,其概率系数可能 高于没有高精度地图或 V2X 的系统的概率系数。
因此,针对不同系统,需要从其运行范围、地点、 时间、目标市场以及整体市场水平等多方面进行考 量,以此来确定其不同场景要素的概率系数。
为了满足 ISO/PAS 21448 的要求,需要构建预期功能安全场景库。而场景库的构建质量缺乏相应 的量化指标,本文基于 Pegasus 场景分层体系,量化每层要素的复杂度,以此评定场景库的质量。同时,为了避免“过复杂度”现象,提出了“母子库” 和“系统场景概率”两个概念,阐述了如何构建“母 子库”以及如何计算“系统场景概率”,并以此提出了最终复杂度的计算方法。本文中提到的量化方法以及防止“过复杂度”方法对预期功能安全场景库的建立和推进起到指示作用。
以上是预期功能安全场景库复杂度量化方法研究的详细内容。更多信息请关注PHP中文网其他相关文章!