随着人工智能技术的深入发展,自动驾驶已经成为人工智能技术的典型应用,近十年得到了长足的发展,作为一类非确定性系统,自动驾驶车辆的质量和安全性得到越来越多的关注.对自动驾驶系统,特别是自动驾驶智能系统(如感知模块,决策模块,综合功能及整车)的测试技术得到了业界和学界的深入研究.本文调研了56篇相关领域的学术论文,分别就感知模块、决策模块、综合功能模块及整车系统的测试技术、用例生成方法和测试覆盖度量等维度对目前已有的研究成果进行了梳理,并描述了自动驾驶智能系统测试中的数据集及工具集.最后,对自动驾驶智能系统测试的未来工作进行了展望,为该领域的研究人员提供参考.
http://www.jos.org.cn/jos/ch/reader/view_abstract.aspx?file_no=6266&flag=1
在过去的几十年中,随着计算机和通信技术的高速发展,交通系统正逐步引入智能要素,自动驾驶技术应 运而生.由于造成交通事故最主要的原因之一是人为因素,引入自动驾驶技术能够大大降低交通事故发生的 概率.近十年来,随着感知组件和智能算法的快速发展,全球有多家企业和研究机构正积极开发自动驾驶技 术.国际自动化工程师学会/美国汽车工程师学会(SAE)于 2014 年提出了自动驾驶五级分级方案,该方案成为 了当前被普遍接受的标准.自动驾驶分级方案从 L0 递增到 L5(L0 为传统驾驶,不算在五级分级方案中)分别 代表了自动驾驶汽车的智能程度由浅至深.L1 级别为辅助驾驶,在特定的条件下自动驾驶汽车具有一个或多 个自动控制功能,但不能脱离驾驶员的控制.具有 L1 级别的自动驾驶车辆往往包含高级驾驶辅助系统 (ADAS),并且目前高级驾驶辅助功能已经逐渐成为中高端车型的标准配置.尽管目前已有越来越多的机构在 为 L5 级别自动驾驶功能提供解决方案,但目前的技术尚难以满足 L5 级别自动驾驶即完全自动驾驶的需求. 自动驾驶系统的架构一般由三个部分组成:感知模块,决策模块以及控制模块.感知模块负责自动驾驶汽车周 围环境认知,往往由摄像头和雷达等组件组成.决策模块需要根据感知模块感知到的信息,根据一定的算法得 出自动驾驶汽车下一步行为并传递给控制模块.控制模块负责将决策指令传递给汽车硬件,例如方向盘,油门 等,完成对自动驾驶车辆的控制.
然而,与任何依赖软件算法的系统一样,自动驾驶系统容易在一些特殊的场景下做出错误的判断并导致 事故的发生,同时也容易受到恶意攻击进而导致系统失效.如由 Uber 生产的自动驾驶汽车在 2018 年发生了 事故,导致了一名行人死亡.因此,自动驾驶车辆需要经过严格且全面的验证才能保证车辆的安全使用.目前 已有多个工作研究自动驾驶系统的测试和验证技术.众所周知,直接采用真实车辆进行检测的成本是非常昂 贵的,因此自动驾驶车辆在进行真车测试之前往往会在虚拟环境中进行测试.通过在仿真软件中提供与真实 驾驶场景相似的仿真场景,来测试自动驾驶算法的健壮性及正确性.根据测试对象的受控程度,虚拟测试又分 为 软 件 在 环 (Software-in-the-Loop, SiL) 、 硬 件 在 环 (Hardware-in-the-Loop, HiL) 、 模 型 在 环 (Model-in-the-Loop,MiL)和车辆在环(Vehicle-in-the-Loop, ViL).由于自动驾驶测试场景的多样性和真实驾驶 事故中场景的突发性,如何生成有效测试用例以及如何评价测试场景有效性成为了目前广泛研究的课 题.Koopman 等人[1]总结了自动驾驶的测试和验证的挑战.其认为自动驾驶的测试与验证面临着以下五个挑 战领域:驾驶员非在环、复杂需求、不确定性算法、归纳学习算法和故障操作系统.
目前 Li 等人,Kang 等人和 Garcia 等人针对自动驾驶系统的测试进行了总结.Li 等人[2]总结并讨论了人工智能和人工智能测试之间的关系,并将自动驾驶作为具体案例讨论了人工智能在其中的测试挑战,包括测试 任务的定义、测试框架及其形式化定义以及并行测试.Garcia 等人[3]分析了 Baidu Apollo 和 Autoware 两个开 源项目的 16851 次提交中的 499 个与自动驾驶相关的错误,并将这些错误进行了分类,从中总结出了 13 种导 致错误的根本原因、20 种错误症状和 18 种自动驾驶组件.Kang 等人[4]整理了 37 个开源或者半开源的自动 驾驶数据集和 22 个虚拟仿真环境.整理出的数据集全部来自真实采集的数据,且至少包含来自摄像头,激光 雷达或毫米波雷达采集的数据.与上述针对自动驾驶系统测试的总结性论文不同,本文充分调研了近年来与 自动驾驶测试相关的论文,整理了针对自动驾驶系统与智能相关的模块的测试,总结了相关测试的测试用例 生成方法以及覆盖度量指标,并对自动驾驶测试的未来发展做出了展望.本文也是针对自动驾驶智能系统测 试的首篇综述,为该领域的相关研究团队提供参考.
如前文所述,自动驾驶系统往往由感知模块、决策模块以及控制模块组成.其中控制模块往往与智能无 关,因此本文只针对感知模块和决策模块的测试技术进行了总结.目前的研究中部分是单独针对感知模块进 行测试,部分针对决策模块进行测试,也有许多研究针对整车进行测试.与此同时,一些高级功能模块同时包 含了感知模块和决策模块甚至控制模块的相关组件,例如高级辅助驾驶系统(ADAS),有许多学者致力于针对 这样的功能模块进行测试.因此本文针对自动驾驶智能系统测试的总结框架如图 1 所示.
为完成本文的研究问题,我们首先使用“Autonomous Vehicle Testing”, “Automative Systems Testing”, “Self-driving Testing”, “Automated Vehicle Testing”等关键词在国内外知名的学术搜索引擎(例如 CNKI、必应 学术、谷歌学术、DBLP 等)上进行搜索,并筛选出与本综述相关的文章.随后,通过检索筛选出来的文章的参 考文献和相关作者的发表论文列表,进一步补充相关文献.最终,我们确定了与本文相关的论文 56 篇,其中 19 篇发表在 CCF-B 类及以上或 SCI-2 区及以上,9 篇论文托管在 arxiv 上,其余论文多发表在 IEEE 等知名学术 机构下,论文大多发表在 2016 年及以后,其中发表在 2019 年及以后的文章有 20 篇,占全部文章 35.7%.论文在 各个章节的分布参见图 2.具体的年份分布参见图 3.
本文余下部分的结构如下:第一节介绍了针对自动驾驶系统中感知模块测试的相关研究,第二节描述了 针对自动驾驶系统中决策模块测试的相关研究,第三节总结了针对自动驾驶系统中综合功能模块的测试,第 四节梳理了针对自动驾驶整车的测试,第五节整理了当前研究中用到的数据集和模拟器.最后,对自动驾驶智 能系统测试的未来工作进行了总结和展望.
专知便捷查看
便捷下载,请关注专知公众号(点击上方蓝色专知关注)
后台回复“自动驾驶测试” 可以获取《自动驾驶智能系统测试研究综述》专知下载链接索引