自动驾驶的测试要求非常复杂非常严苛,总体而言,道路实测成本昂贵且耗日长久,虚拟测试是必由之路,但是其虚拟环境以及测试结果的有效性还有待论证和改进。目前,Google 无人驾驶汽车选择的便是虚拟测试为主(几十亿英里),道路测试为辅(300万英里)的策略。自动驾驶的道路测试,远远比飞机的测试复杂,这样的测试,是绝大多数自动驾驶公司无法完成的。
背景说明
若想获取本文的英文原版,可关注本号,在本微信公号下回复「TU」,后台会自动回复英文版的下载链接。
2017年5月23日,德国达姆施塔特工业大学(Technische Universität Darmstadt)教授 Hermann Winner 博士来到同济大学汽车学院交流访问,并做了题为《(How) Can We Validate the Safety of Automated Driving ?》的学术报告。笔者根据当时的记录,结合自动驾驶汽车方面的知识,整理成文。
1. 评价汽车行车安全性的参考指标
Safety References
A. 评价指标
必须以当下有人驾驶汽车的行车安全性为参考基准,来衡量自动驾驶水平的提升(注:即SAE Level 级别的提升)对汽车主动安全性能的改善程度;
至少有两类指向明确的评价指标必须列入考察:
-造成驾驶员受伤或车辆损坏的事故的发生频率;
-造成驾驶员死亡的事故的发生频率;
但是,若以人类驾驶员行车安全数据作为参考基准,要证明自动驾驶汽车的主动安全性能超越有人驾驶,其所需完成的测试里程数已经远远超出了真实世界中一辆汽车在其使用年限内所能行驶的距离(约为500-600万公里)。
例如,下表列出的是2014年德国的交通事故发生频率数据:
表1 2014年德国的交通事故数据
B. 疑问:
现在市场上的交通工具(包括飞机)并不需要如此长距离的测试里程,为什么自动驾驶汽车必须要做到呢?
上述两者之间的本质区别在哪里?
2. 传统汽车与自动驾驶汽车之间的区别
Difference between Conventional and Automated Vehicles
图2 自动驾驶汽车的通用系统各功能架构
目前,在汽车性能的试验科目中,并不包含图2中的黄颜色区域,而该部分恰恰属于自动驾驶汽车所要提供的功能架构。
3. 有关驾驶任务及人在对其进行处理时所表现出的汽车安全性的先验知识
Knowledge of Driving Task and Respective Safety
目前尚缺乏人类驾驶员避免交通事故能力的严格数据:
非标准场景(包括自因的和外因的)的出现频率及其类型;
人类驾驶员在非标准场景下的表现;
暗物质问题(Dark Matter Problem):
图3 自动驾驶汽车测试验证过程中的暗物质问题
我们只知道标准场景以及被报道过的事故场景(即有记录的事故),如图3中黄色区域所示;
对于从不会出现事故的操作到事故发生的转变概率及其频率,以及临界场景的类型,我们目前几乎一无所知,如图2中黄色边界线所示;
就降低事故发生频率而言,仅避免由人类驾驶员造成的事故不一定就够了,因为自动驾驶会引发新型的交通事故,如图2中红色区域所示;
4. 漏掉的知识
Missing Knowledge
为了预测自动驾驶汽车的安全性,我们需要:
获取足够数量的有效的临界场景(包括原有的和新的)及其特性;
获取刻画自动驾驶系统以安全的操作方式应对临界场景的能力的有效模型;
所有数字必需与相关的基准驾驶风险值作比较。
5. 第一个结论
First Conclusion
明显的在驾驶安全性上的改进:
自动驾驶的功能设计通过减少已知临界场景的发生频率而有希望实现更高的安全性;
但我们不知道:
自动驾驶在剩余的临界场景中避免事故的能力;
由自动驾驶行为自身所导致的新型临界场景的发生频率以及自动驾驶系统以安全的方式控制它们的能力。
对自动驾驶安全性能的验证必须覆盖上述两种情况,并且必须提前获取所有必要知识。
6. 成功验证的前提条件
Prerequisites for Successful Validations
我们必须了解以下信息:
具有代表性的属于最坏情况的测试案例;
确认是否是临界场景的衡量标准;
周围环境对感知的影响;
驾驶行为如何经测试后可被判为是鲁棒性高的以及安全的;
MiL(Model in the Loop)、SiL(Software in the Loop)、HiL(Hardware in the Loop)、ViL(Vehicle in the Loop)的仿真模型是否有效以及如何验证;
为了让政府批准自动驾驶汽车,上述仿真必须具有多大程度上的代表性。
7. 我们该怎么开始?
How Should We Begin?
潜在的实现路径
两条通用的演化路径:
逐步提高自动驾驶级别(即L1→L2→L3→L4→L5);
通过逐步积累案例,直接研发最高级别的自动驾驶(即L0→L4+);
具体策略:
慢慢增加公共交通中所用车辆的自动驾驶水平;
设计制造新型无人驾驶系统(如修建相应的基础设施);
在选定的公共交通网络上,让自动驾驶汽车与传统汽车一起行驶,并定期增加网络的覆盖范围(即通过限定工作场景从而能使L4的技术达到L5的效果);
8. 验证测试的虚拟化
Virtualization of Tests for Validation
图4 将虚拟测试与道路测试结合的方法
(其中,“虚拟”指计算机仿真环境;“人工”指模拟真实场景的人造的测试环境,如美国密歇根州的Mcity;“真实”指真实道路上的测试环境)
高效测试工具的启用
虚拟测试有可能加快模型验证的进程,但模型必然会对真实情况进行简化→如何验证模型(的有效性)?
存在不同的、可供使用的将虚拟测试和真实道路测试结合的方法,如图3所示;
SiL、HiL/ViL中的传感器仿真是必须的。
9. 虚拟验证
Virtual Validation
主要原理
通过并行计算(ViL, HiL, SiL),可以完成相当于行车几十亿公里的测试里程(10^9 km= 20*10^6 小时=2280年)
对仿真模型有效性的验证:
通过元件测试系统(component testing system)来验证元件模型(如传感器);
测试仪器记录下环境条件;
由转鼓试验台、振动试验台等验证汽车动力学;
通过排列或随机的方式(如蒙特卡洛方法)创造测试场景;
建模中的大挑战:
对其它交通参与者行为模型的验证(注:即涉及到司机与司机之间的博弈);
有效的环境模型与传感器模型(注:例如,试验条件如何量化?此外,出厂时的标定参数对不同的环境条件和传感器老化程度可能并不适用)
由于情境组合的多样性而引起的问题:
许多场景和情况的叠加;
一系列不同的道路交通参与者(注:如行人、骑自行车的人,骑电动车的人等);
不同的环境条件(注:例如,雨、雾、光线、非结构化路面等非友好环境)
如果将所有影响参数的进行排列组合,其计算量将超出任何计算机集群的计算能力:
如果通过对发生的虚拟事故进行计数来评估仿真中的安全性,则需要所有变量的全部组合;
如何才能实现可行的虚拟批准(feasible virtual approval)?
10. 通过最坏情况测试来获得批准
Approval by Worst Case Testing
系统化地减少测试案例
仅识别出临界场景:
假设:如果所有临界场景都可以得到有效处理,则每一个图2中所示的临界场景以内的情况也可以被妥善处理;
需要一个有效地刻画危急程度(criticality)的衡量标准。
即使只是检查危急程度较高的临界场景,必须测试大量的各种各样的此类临界场景(例如各种天气条件、光线条件的组合)
降低测试场景案例以及虚拟化的挑战
现实世界>相关世界>人造/虚拟测试>真实驾驶
图5 降低测试场景案例以及虚拟化的挑战
11. 减少测试用例的分解法
Decomposition Approach for Test Case Reduction
将场景分解成几个层级:
将与各层级相关的测试(包括实验和仿真)进行聚类;
通过以下途径,分解法可减少测试工作量:
模块化测试,并且在功能模块(functional modules)不变的情况下不需再重新测试;
减少同一层内的冗余测试;
前提条件:
各分解层都有自己的衡量测试是通过还是失败的标准。
12. 虚拟批准
Virtual Approval
但是,我们如何确信测试案例集(在数量上)是足够的呢?
检查重建事故(reconstructed accidents)的所有场景是否都是测试集的一部分,能提供的帮助有限,因为自动驾驶汽车的行为必须有意与有人驾驶汽车的有所不同;
没有人知道当面对自动驾驶时,人的行为会如何改变!(注:即人-车博弈问题,其他司机面对自动驾驶汽车时的反应,会和面对人类司机有所不同,从而使之前测试所获得的参数变得没有意义!)
关于虚拟批准的结论(Conclusion on Virtual Approval)
仿真将是批准过程中非常重要的一部分,但在刚开始时,它不会有助于解决建模与测试用例缺乏有效性这一问题,从而形成审批时的陷阱;
由于方法论和经济成本方面的原因,虚拟批准应该是未来待实现的目标;
因此,其它测试方法必须提高模型的有效性和测试门类。
13. 道路测试的新角色
The New Role of Driving Tests
以验证模型有效性为目的的道路测试:
将仿真中的行为与真实测试中的行为作比较(注:道路实测是为了验证模型输出的控制信号的准确性!);
验证仿真中环境的代表性以及其他司机面对自动驾驶汽车时的行为反应模式。
以完善测试门类为目的道路测试
测试用例重要性的场景统计(注:确定哪些才是重要的测试项目)
使测试用例门类完备(注:尽量实现大数据的完备性!)
14. 现场数据评估
Field Data Assessment
知识如何从驾驶经验中汲取?(注:信息→知识)
1) 记录数据,并在实验室中标记出行驶过程中驾驶员评估危险出现并做出反应的时间切片;
2) 将所有相关情况实时传输到实验室,并通过自动数据分析进行标注和评估;
3) 现场操作中自动化水平的虚拟评估(Virtual Assessment of Automation in Field Operation,VAAFO),触发并提取数据集车载记录,并可实时传输:
所有方法都可以与真实自动化或仿真自动化一起使用;
VAAFO适合应用在编队测试的车辆中,以评估潜在的升级功能(注:将不同车辆收集的数据整合起来,有利于对车队进行OTA升级)。
15. VAAFO: 现场操作中自动化水平的虚拟评估
Virtual Assessment of Automation in Field Operation
结合两种方法的优点(SiL和现场测试)(注:仿真与实测并重,法规各自的优势)
基于现实的测试用例生成(注:以真实数据为基础,建立仿真环境);
测试工具使测试能以比真实驾驶更低的风险进行(注:仿真过程中就算出事也无妨)
概念的局限性
虚拟世界的有效性:
基于对现实世界的测量来对虚拟世界的初始化(例如每隔0.5秒);
虚拟世界较短的仿真时间(例如2s)
所需进行的测试距离并没有减少:
在开发的早期适用;
在车辆编队中实施工具→现场观察(此时应关注对数据的保护)
概念的优点
使用该工具,例如10,000辆车,平均里程每年14000公里,相当于在真实世界累积了1.4亿公里测试里程(注:即在测试里程的积累方面,虚拟测试的优势是道路实测所远远无法比拟的!);
此概念可以应用于不同的开发和演进阶段
从道路测试,
到软件更新(注:通过OTA进行软件升级)
安装有传感器和计算处理能力的高速公路司机(Autobahn Chauffeur)能够记录在城市或乡村道路上驾驶的数据(注:装备传感器与超级计算机的商用车,能够在高速公路上行驶的时候,记录下沿途所见的一切,这些数据可在以后进行分析)
16. 结论:三步走,验证自动驾驶的安全性
通过在封闭测试区内测试和在风险有限且有人类驾驶员检测的环境中测试的方法来收集数据;
为虚拟测试开发仿真方法并验证其有效性;
通过以虚拟测试为主,并以实际行驶数据进行递归验证的方法来对自动驾驶的安全性进行检定。
作者:厚势评论员以梦为马
转载请注明来自厚势和厚势公号:iHoushi
文章精选
企业家
智能驾驶
新能源汽车
项目和评论
厚
势
汽
车
为您对接资本和产业
新能源汽车 自动驾驶 车联网
联系邮箱
bp@ihoushi.com
点击阅读原文,查看[可与硅谷并驾齐驱:10家最强的以色列自动驾驶初创公司]