仿真技术在自动驾驶时代下的使命
以下文章来源于车路慢慢 ,作者李慢慢
于传统仿真领域工作七八年,又自研自动驾驶仿真甚久,一些体悟,写在对仿真技术的美好祝愿中,并期待新时代下的仿真技术,能给予技术员更多尊重。
正文共: 3955字 5图
预计阅读时间: 10分钟
田锋副总在《苦旅寻真》一书中对中国传统行业仿真技术现状的这一句批判,在我看来,放到自动驾驶仿真上,同样适用,甚至更为贴切。
对于传统仿真,比如笔者目前从事的汽车碰撞仿真来说,它的主要作用,在于在汽车实车还未开发出来时,就能依靠仿真大致知道其在各种碰撞类型下的“车损人伤”,进而提前采取措施,减少“车损人伤”,保证实车生产出来后,就能一次性直接通过国家相关机构的审核,产品上市。所以,仿真的优势很明显,那就是省了大量做开发及试验的费用和时间,使得仿真在产品开发中举足轻重。而对于自动驾驶仿真呢?仿真似乎不仅是“举足轻重”,而是“充分必要”了,真的是自动驾驶技术真正成熟起来的充分必要条件。在传统的碰撞试验中,要评价乘客、驾驶员、和行人的安全性,采用了特殊型号的“假人”来代替真人,在“假人”上安装了一系列的传感器来测量各种“损伤值”。
自动驾驶汽车的安全,又怎么来测试呢?首先要知道,在测试汽车自动驾驶功能安全的时候,车上是必须有“安全员”的,在出现汽车无法自行处理的复杂情况时需要紧急介入,保证道路安全。可万一“安全员” 也来不及接手呢?放置假人?安排后车上“安全员”来远程控制?好像似乎大概还是不能解决问题。再说,“安全员”需要在紧急情况下介入,“紧急情况”如何定义?过度依赖“安全员”,又怎么能测出车辆的危机处理潜力?剩下的似乎唯有仿真了,只有在虚拟的世界中,才敢“肆无忌惮”地测试各种极端场景。所以仿真技术对自动驾驶技术的成熟来说,笔者更乐意这么来评定:在《自动驾驶测试场景技术发展与应用》一书中,对自动驾驶仿真的重要性也有这样的描述:
“自动驾驶仿真测试是一种安全、高效的测试方法,在自动驾驶汽车的测试中发生了非常重要的作用。在进行封闭场地测试和公共道路测试之前,可以进行大量的虚拟仿真测试,以节约时间和人力成本,加速自动驾驶技术的迭代与验证。仿真测试除了可以帮助企业提高研发效率,节约研发成本外,更重要的还在于它可以满足巨量的、可重复的、极限工况的场景测试需求。”
传统的仿真是在真实试验做了N多年以后才发展出相应的力学计算方法然后模拟试验的;而自动驾驶的仿真,似乎在自动驾驶这个功能诞生之日起,就要求有仿真来做虚拟测试了。仿真技术作为自动驾驶技术的“伴生兽”,终于从幕后辅助(传统仿真又被称为”计算机辅助工程“),走向台前,与自动驾驶“荣辱与共”了。
这么一分析,仿真技术对于自动驾驶的重要性跃然纸上。而近来自动驾驶领域的仿真软件的“百家争鸣”也确实说明了这一点。CarSim、PreScan、CarMaker、VTD、51-Sim-One、Vissim、Pro-SiVIC、AirSim 、PanoSim、百度Appolo仿真平台、Matlab自动驾驶工具箱、SUMO、rFpro、Cognata、Pilot-D GaiA、Unity自动驾驶仿真定制平台、Metamoto、腾讯TAD-Sim仿真平台、NVIDIA Drive Constellation、Waymo Carcraft,不一而足。自2017年自动驾驶热潮进入公众视野以来,相关的软件领域竟也是珠峰四起。看到这里,我似乎又看到了传统仿真行业从20世纪60年代起步发展至今的浓缩版,我甚至可以预见到不久后即将出现的并购热潮,20年前传统仿真业100多家软件企业的疯狂并购,腥风血雨犹在眼前。所悲的是,传统仿真业中国产自主仿真软件相继落败,行至今日,偌大的工业中国之中,却鲜有中国自主研发仿真软件的身影。ANSYS、MSC、达索、Altair、西门子等国外仿真软件巨头一骑绝尘。国产软件为何失败?技术底蕴不足、国家投资力度太小、研发起始年份太晚、国外软件打压太狠?改革开放以来,中国以市场换技术,在笔者看来,在仿真领域是没“换到”有竞争力的技术的。
所幸的是,在自动驾驶领域,自主软件似乎没有了当年的那些劣势,技术的积累有之、政策的支持有之、产业的热潮有之、多方的投资亦有之,等等,似乎都在告诉我们,中国正处于一个发展仿真技术的绝佳时机,可为何市面上能见到的商用仿真软件还是几乎国外?实在是费解。当然目前也仅仅是起始阶段,一切尚未可知。
笔者有幸参与了2021年4月9日在上海安亭举办的《汽车自动驾驶仿真技术应用及其研讨会》,会上,同济大学的朱西产教授在解析自动驾驶的应用与发展时,也对中国的自主仿真平台给予了厚望。
图:同济大学的朱西产教授在会上演讲
3、自动驾驶仿真的面临的挑战
自动驾驶仿真一是拿什么软件来做,二是用软件来做什么。
我们一方面期待着自主软件能够乘上东风“弯道超车”,但无论怎么讲,抛开本质谈软件总是有些“避重就轻”了,仿真软件说到底也只是个工具,所谓磨刀不误砍柴工,怎么造工具固然重要,使用工具用来做什么才是其本质。所以另一方面,我们更得来看看,仿真工具的用途,以及使用中即将面对的挑战。
正如此前所说,自动驾驶产业尚不成熟,一切还是起始阶段,所以留给自动驾驶仿真的课题也有很多。先简单解释下什么是自动驾驶的“场景”。依然引用《自动驾驶测试场景技术发展与应用》书中的定义:“一定时间和空间范围内行使环境与汽车驾驶行为的综合反映;其描述了外部道路、气象、和交通参与物以及车辆自身的驾驶任务和状态等信息。”简单点来理解,场景就是汽车在行驶中可能遇到的一切路况。为了能够在仿真中测试所有的“场景”,那么就必须有涵盖这一切“路况”的场景库,而真实世界的场景无穷无尽,需要通过一定的手段对其进行提炼和抽象。那么问题来了,对真实世界无穷无尽的“场景”如何划分、生成、管理?对每个场景的提炼和抽象的度又如何把握?各大车企与各国测试机构都在研究各自的场景库,海量的数据采集与管理必然带来巨额的成本,如何有效共享数据,实现各个平台之间的互融共通?统一的标准之下,大家才能有默契地有统一的目标。但标准的制定并不容易,势必需要国家机构出面采纳众家之长,制定“国家标准”。目前这个领域相关的机构也有之,如德国的PEGASUS,ISO34501/34502/34503,ASAM的OpenX等,都在积极开展相关标准的研制。只有在有相关标准的制约下,自动驾驶场景才能更全面而不冗余地覆盖所有交通要素,才能为仿真系统提供足够的输入来”训练“算法,才能让自动驾驶系统更安全。仿真平台是仿真软件、通信环境、与被测对象的集合。具体来讲,仿真平台能利用仿真软件播放场景动画,测试研究对象,通过数据接口接入特定控制算法并输出被测对象的运行表现数据,进而可以让开发工程师们根据运行数据来评价仿真结果。
鉴于不同的仿真软件有不同的优势,加上被测对象从模型在环(MIL)、到软件在环(SIL)、硬件在环(HIL)、最后到车辆在环(VIL)也平台多变,再就是通信环境要同时搞定各个软件、各个被测对象、各个算法之间的信息传递,使得整个仿真平台异常复杂,不稳定、不规范。所以,一个能考虑全面的仿真软件,能够让整个仿真工作变得简单很多,这也是开发一个完善的仿真系统的必要性所在。而这样一个完善的仿真系统,可能来源于目前现有的软件之间并购,也可能来自于独立开发。所以,现有的仿真平台其实相当于是个“东拼西凑”的临时解决方案,而一个完善的仿真平台才是仿真技术的终级目标。
可不要说,钱花了老多,磕磕碰碰终于搭建起来的仿真平台,只是为了做几个炫酷的动画效果出来忽悠人!
传统仿真中,为了能准确仿真,需要做N多次真实试验,来调整仿真模型的众多参数,得到一个能准确预测结果的参数组,再基于此参数组去预测新的试验结果,这个来来回回的过程被称为“参数标定”。在自动驾驶仿真中,是很难有“参数标定”这个过程的,因为“真实试验”因为对安全员有高危性而很难执行,因此也就很难调整仿真的参数,没有标定好的参数,又很难预测真实结果,就像个死循环。试验-仿真-试验的回路难通,仅靠经验式的仿真,结果如何让人信服?仿真,仿真,仿的是试验的真。所以,仿真和试验之间的对标,是绕不过去的坎。两者之间到底有多大差距,进而仿真的结果要加上多少“安全系数”才能相信?仿真系统的参数要经过多少轮标定才具有参考价值?仿真的结果到底要关注哪些指标?系统本身的扰动有多大影响?局部软件的更新或者场景的更新是否会影响结果的稳定性?面对大量的场景及研究对象的仿真结果,如何让评价实现自动化?评价的制定,一方面取决于相关法律法规的要求,一方面也取决于仿真平台自身的精度,让仿真真正的能驱动研发,就必须精心设计评价体系。
仿真三要素,各自有各自的挑战所在。鉴于目前仿真体系依然不成熟,挑战也大概率会长久存在。
区别于传统仿真,自动驾驶的仿真带着使命降生,机会与挑战同在,在政策、法规、保险、伦理等体系的逐渐成熟下,势必将迎来无人驾驶技术的普及,仿真作为该技术的不二功臣,也将在这个过程中立下汗马功劳。我们期待着国产自主软件在该领域获得足够的发展而掌握核心竞争力,也期待仿真平台足够成熟能主导自动驾驶技术的开发。
1、《苦旅寻真-求索中国仿真解困之道》-田锋-机械工业出版社2、《自动驾驶测试场景技术发展与应用》-冯屹-机械工业出版社3、《汽车自动驾驶仿真技术应用及其研讨会》-上海安亭-2021.04.09