Page 151 - 《软件学报》2021年第7期
P. 151

朱向雷  等:自动驾驶智能系统测试研究综述                                                           2069


                 要素、动态环境要素、交通参与者要素和气象要素等.其中,测试车辆要素又包含了待测车辆详细的物理信息,
                 例如重量、性能、位置和运动状态等.静态场景要素中包含了障碍物、交通标识和道路等路况信息.由于人工
                 标注真实场景的开销和代价过于庞大,而针对自动驾驶的整车测试往往需要使用相关的研究方法生成能够导
                 致待测自动驾驶系统发生错误的测试场景,于是自动化地生成测试场景成为了该方向相关学者们的研究目标.
                 4.1   研究现状

                    目前,针对整车测试的方法主要分为两种,一种是通过结合真实场景和交通数据来生成仿真场景的测试方
                 法,另一种则是通过构建完备的测试框架,对自动驾驶系统做出评估.基于真实场景的仿真场景衍生能够更加贴
                 合真实世界中的驾驶场景,更加具有真实性,相关学者通过引入在真实世界中采集的地理信息,例如 GPS 等,衍
                 生出更具说服力的测试场景.
                    Zhang 等人  [57] 提出了一种基于图像序列和道路地理信息系统(GIS)数据的交通场景建模方法,并在此基础
                 上,设计了一个交通场景模拟器,利用该模拟器对自动驾驶汽车进行性能测试和自动驾驶任务评估.他们利用车
                 载摄像机从实际交通场景中获取视频序列,然后将其与 GPS 获取的视点位置序列相结合,得到视点图像序列,随
                 后按时间顺序组织视点图像序列.同时,他们还引入道路 GIS 数据,定义交通场景的三维结构.实验过程中,通过
                 避障驾驶及自动驾驶能力等级评定来对生成的场景进行检验.实验结果显示,该方法生成的场景能够有效地评
                 价出待测车的自动驾驶能力.
                    Althoff 等人 [58] 提出了一种自动创建临界场景测试用例的方法,该方法首先通过显式计算自动驾驶车辆的
                 可驾驶面积来量化解决方案空间.通过指定运动规划问题,对包括自动驾驶车辆在内的其他交通参与者的初始
                 状态进行优化,以缩小求解空间,直至得到所需的可驾驶区域大小,实现测试用例所需的临界度.实验过程中,该
                 团队针对一个刻意简单化的场景及两个来自 CommonRoad                 [59] 的不同基准场景,分别使用不同数量的其他交通
                 参与者来进行实验.他们对简单场景中自动驾驶汽车的速度、两个基准场景的速度及交通参与者的初始状态进
                 行了优化,3 种场景中自动驾驶汽车的可驾驶区域均得以相应减小,并获取了具有所需可驾驶区域临界度的情况.
                    Gambi 等人  [60] 认为,真实车祸场景非常适合作为测试场景,但真实碰撞中收集到的数据不足以完全再现场
                 景,因此,他们提出了基于碰撞报告的自动碰撞场景构造器 AC3R 来生成测试用例.该框架依靠自然语言处理
                 (NLP)方法从车祸现场的警察报告中提取有关信息,将文本概念映射到场景细节,创建车祸的抽象表示,生成可
                 在驾驶模拟器中实现车祸动态的代码,并从模拟中导出测试用例.实验过程中,他们检查了自动驾驶汽车在避免
                 碰撞的同时是否达到其最终预期位置,并预测多个驾驶能力指标,以调查 AC3R 成功生成场景模拟的数量及与
                 报告的匹配程度.实验结果表明:AC3R 能够处理过半(62.6%)的数据库样本报告,且多数情况下(78.0%),AC3R 生
                 成的用例的预期损坏报告与碰撞有关的所有虚拟汽车的预期损坏报告相同.
                    Fremont 等人 [61] 提出了一种基于形式化验证的自动驾驶汽车测试方法,能够有效地将形式化模拟测试转变
                 为真实世界中的整车测试.他们首先使用形式化语言来表示测试场景和自动驾驶汽车的安全属性,并使用相关
                 模拟器、验证工具和算法来判断自动驾驶汽车在测试场景中是否会发生错误.最后将生成的虚拟测试场景映射
                 到真实场景中,并使用整车进行测试.Fremont 等人使用 2018 Lincoln MKZ Hybrid 作为测试车辆,选取的场景为
                 自动驾驶汽车转弯经过十字路口,遇到过马路的行人.实验结果表明,62.5%的虚拟致错场景转变的真实场景在
                 测试中发生了错误,93.3%的不发生错误的虚拟场景转变的真实场景在测试中也没有发生错误.
                    与基于场景生成的测试方法不同,基于构建完备的测试框架的测试方法能够对自动驾驶系统做出系统的
                 评估,可以在更高的层级对自动驾驶系统做出综合性判断.
                    Tuncali 等人 [62] 提供了一个测试用例生成与自动伪造方法兼容的测试框架 Sim-ATAV,该框架可用来检查包
                 括机器学习组件的自动驾驶系统闭环特性.他们提出了一种测试方法,称为覆盖数组和需求伪造方法,以自动识
                 别有问题的测试方案.该框架使用 Webots          [63] 进行环境建模,SqueezeDet [64] 作为感知系统,选择一个特定的自动驾
                 驶场景进行测试.实验结果表明,Sim-ATAV 框架可用于提高自动驾驶系统的可靠性.Tuncali 等人在 Sim-ATAV
                 中实现了 3 种测试策略,分别为全局统一随机搜索、覆盖数组和全局统一随机搜索、覆盖数组和模拟退火.由
                 于全局统一随机搜索不能被引导到测试用例的关键区域,Tuncali 等人使用 ACTS                      [65] 工具生成的覆盖数组选取
   146   147   148   149   150   151   152   153   154   155   156