兴民智通张人杰:重新定义安全,打造极致安全的无人驾驶汽车

  • 车云菌
  • 发表于: 2018/11/19 17:28:00 来源:车云网

一个东西能不能真正的商业化,其实还是取决于它在各个环节是否都能相应的要求。

编者按:11月14-16日,由工业和信息化部、应急管理部、科学技术部、广东省人民政府指导举办的“2018中国安全产业大会”在广东佛山举行。车云主办“安全出行主题论坛暨第二届交通安全产业峰会”,峰会以"安全出行"为主题,"专业论坛+创新展"联动,打通汽车、交通、电子、通信等多个行业,探讨最具前瞻性和可行性的安全出行模式与生态,强势推动跨界融合与协同发展,全面提升大会关注度及影响力。

论坛期间,兴民智通(集团)股份有限公司首席运营官兼智能汽车事业群总经理张人杰发表了以《重新定义安全:打造极致安全的无人驾驶汽车》为主题的演讲,张总主管集团智能网联汽车业务及下属全资、控股、参股公司车联网龙头企业北京九五智驾、武汉英泰斯特、深圳广联赛讯等,深耕功能安全、虚拟化技术及多种实时操作系统架构,他是中国第一个提出一体化汽车智能座舱概念的人。

15433975259285.png


以下是张总的主题演讲原文:

感谢在座的各位朋友!已经到了下午的时间,大家能够坚持在这,说明都是真爱。非常感谢车云给了这么好的交流机会,我想跟大家一起交流关于无人驾驶领域的安全话题。

大家知道,一个东西能不能真正的商业化,其实还是取决于它在各个环节是否都能相应的要求。比如,安全在无人驾驶行业,就是重中之重。

兴民智通一直是做跟车辆安全相关的东西,我们的第一个业务是车轮,大家知道车轮在路上开,轮毂一定要很安全。第二个就是我们的智能网联,我们这几年通过一系列的并购,逐渐形成了完整的智能网联产业链,其中包括北京九五智驾、武汉英泰斯特,深圳广联赛讯等公司。

对无人驾驶来说,面临最严峻的问题就是生命。我们都知道生命不可重来,无人驾驶大家谈了很多,怎么保证它的安全?首先我们来考量一下人类的决策是什么样的过程?人类的决策依赖于感知输入的融合,通过五官、皮肤、器官感受外界各种各样的信号。大家知道,在我们的大脑里头有多少亿个神经元?有超过860亿个神经元。在人类身上还有肠脑,也超过1亿个神经元。如果我们想模拟人类的大脑,模拟人类决策的过程,中间的计算量有多大?复杂度有多高?

首先我们先来模拟感知部分。感知部分大家知道,现在比较流行的技术就是传感器融合,我们可以模拟人类决策各种感知的输入,就相当于我们的五官以及其他的器官,将外界的信号接收传给车的计算控制单元。

我们要考虑一点,怎样保证传感器的安全?你能保证你的摄像头不出问题吗?你能保证你的激光雷达不出问题吗?你能保证你的毫米波雷达、红外等等没有任何故障吗?事实上不可能,我们的手机有时候摄像头都打不开,对于无人驾驶汽车来说,这些东西是我们要考虑的。在极端情况下,如果单个或多个传感器出现问题,我们怎样保证这个系统仍然有正常工作的必要输入?

大家知道有一个概念叫热冗余备份。所谓热冗余备份就是同一类型的传感器,它需要有备份单元。当正在工作的传感器出现问题的时候,我们的系统可以监测并自动切换到备份的传感器。这里头涉及一个非常复杂的技术,就是同步。我们怎么保证工作传感器与备份传感器信息缓存的同步呢?怎样防止信息的丢失呢?大家如果仔细考量我们目前自动驾驶的这些方案,其实你们会发现,大多数厂商都没有考虑,但这些都是实际存在的,并且需要被考虑的问题。

我们来看一下,当前比较常见的自动驾驶平台的构建方式。几乎90%以上的自动驾驶公司,他们会采用类似于像NVIDIA的平台,再配合谷歌的神经网络,在这上面就架构了我们自动驾驶的平台,这是非常典型的一种方式,如果大家创业的话,都可以选择类似的方式。

但我们要考量一下,这样的方式是否足够安全?首先来看,从整个底层的硬件架构一直到上面的应用层,大家逐层分析一下。最底层需要有自动驾驶的硬件平台,刚才我列出来的,比如说像NVIDIA的系统,这就是比较典型的安全自动驾驶的平台。它带异构冗余了吗?其实没有。如果我们在做自动驾驶方案的时候,我们需要做异构冗余。我不知道大家熟不熟悉什么叫异构冗余。其实异构冗余很简单,就是工作系统和备份系统的硬件要不一样,软件也要不一样,即工作系统和备份系统的硬件架构、软件内核及工作机制是不一样的。比如要是在工作单元里用了NVIDIA的系统,那可能在备份单元里,就要用Intel的系统。为什么这么做?这样才能保证极端情况下两套系统同时出现故障的可能性降低。但大家可以去考量一下,大多数自动驾驶的厂商,目前基本没人考虑这块,而这块恰恰是非常重要的点。所以我们必须要考虑硬件的异构冗余。

说完了硬件,还要说软件,我们再继续往上看,包括安全虚拟化、安全实时操作系统,以及适配层和应用层。对于工作的自动驾驶硬件平台和备份的自动驾驶平台来讲,软件架构应该是不一样的,包括虚拟化、操作系统等。为什么要这么做?应为如果软件架构是是一样的,极端情况下同时出现故障的可能性就会大大提高,所以我们一定要用硬件、软件、系统都有异构冗余的自动驾驶平台,才能保证我们整个自动驾驶的计算决策系统平台是相对安全的。

通常我们去搭建这样一套平台的时候,除了硬件平台虚拟化、安全实时操作系统,我们还需要考量适配层和应用层。任何一个环节出问题的话,系统都可能都会出现障碍,导致整个系统无法达到预期的目的,这就是自动驾驶里特别要关注的安全问题。

刚才说了硬件平台这块,需要支持异构的热冗余,不同于冷备份,要强调的是热冗余,即工作系统和备份系统出现故障时,可以平滑切换,中间不会出现不工作的情况。

我们知道无人驾驶汽车,或无人驾驶在特殊场景下的应用,会面临的一个刚性需求就是在任何时候都要保证可用性,那么就意味着你的工作单元向备份单元切换的过程应该是平滑的,是不可感知的。在这个地方面临两个很难的问题。第一,异构平台的失败仲裁。当其中一个平台出现问题的时候,你怎样保证它能够平滑的切换到另一个平台?第二,决策仲裁。就是你怎样判断其中的一个平台是否出现故障?这个相当困难。比如一个平台告诉你前面是一个行人,另一个平台告诉你前面是一条狗,你到底判断它是行人还是狗?仲裁非常难,仲裁决定了接下来的行为,所以我们要解决热冗余最关键的两个点就是失败切换和决策仲裁。

再来看一下怎样隔离安全等级不同的功能单元?比如智能座舱里的中控娱乐信息系统,相对来说安全等级要求比较低,甚至安卓这类应用系统都可能成为主流,而实际汽车是非常复杂的单元,单纯从智能座舱这块,除中控娱乐信息系统外,还有数字仪表、HUD等等。其中数字仪表就要求达到ISO26262 ASIL B的安全等级。而自动驾驶则需要达到ISO26262 ASIL D以上的等级,这些功能安全要求等级不同的单元,怎样保证在同一个系统中正常工作?所以你需要有隔离,这就是虚拟化的作用。虚拟化带来了新的概念,我们称之为软件定义汽车。功能单元由真实的硬件板卡实现转向由软件定义的虚拟机实现。

再提一下操作系统,很多时候我们对操作系统的认知比较模糊,我做操作系统做了20多年,各种操作系统都很了解。对操作系统来讲,实际上绝对不是很多人说的,在Linux上做一个适配层,做简单的应用生态导入或加入类似安卓这类应用系统的虚拟机就变成了操作系统,这理解不准确。操作系统要有自己的内核架构,要有自己的通信方式,要有自己的资源管理框架。比如微内核操作系统的特点就是,大部分进程都是以用户态存在的,相对来说比宏内核的操作系统出现问题的可能性低。

对于一个安全的操作系统来说,至少要达到以下几点。第一,重启速度快。第二,实时响应和低延时。第三,健全的快速恢复机制。第四,进程间隔。第五,系统主要由用户态进程构成,而不是由核心态进程构成,不然当单一模块出现问题时,很容易破坏原有的系统应用,将会出现非常可怕的局面。第六,核心态模块之间的低耦合。不知道大家有没有装过Linux系统?你装Linux应用的时候会发现有一大堆相互耦合的模块被要求装入这个系统,这说明系统内核的耦合度高,模块与模块之间的关联性大。但无人驾驶系统需要这种内核模块之间的耦合性低。

接下来还要考虑自动驾驶计算与决策平台的功能安全,功能安全是最基本的安全等级要求,因为功能安全的要求聚焦在可用性。除了功能安全之外,还有信息安全。我们神经网络的算法其实目前仍是黑盒子,有输入层、输出层,还有Hidden层,你要创建失效模型的构建和分析是非常复杂的,对于这样的模型来讲,几乎无法做功能安全的认证。如果神经网络模型无法认证,怎么能保证计算与决策系统的平台是安全的?所以单纯从这一点就知道,无人驾驶的路其实还很远,正如Waymo的CEO最近也发言,完全意义的无人驾驶离真正的商业化落地还有很多年。

你知道一只猫现在要往左跳还是往右跳吗?其实非常复杂。一些复杂场景,比如在很小的巷子里,有各种行人、各种动物、各种小型非机动车辆,各种物体的移动都是非常难预测的。所以在行业比较领先的一些公司,像Waymo,他们有仿真和结构化测试来模拟各种现实路况。比如Waymo有一个Castle场地,可以把遇到的问题在计算机中模拟,当你的自动驾驶车辆在真实场景中遇到这类问题时,就知道该怎样决策及处理。

说完了这一点,我们还要谈谈怎样防止被攻击。这两年有越来越多的论文聚焦神经网络攻击,比如你可以识别出来这张图是一只猫,但我想办法把图片改变一点,让算法识别错误,无法正确判断。比如,对汽车来讲,可以产生各种信号,让你以为是一个路障,但可能根本不存在。大家想想,如果你在高速路上行驶时忽然出现一个信号提示前方有一个故障要快速刹车的话,会产生多大的危险?可能这样的信号是假的,所以外部欺骗对无人驾驶也会有很大的影响。

我们知道,车里有很多个ECU单元,怎样保证访问的安全性?我们需要通过密钥保证ECU是安全的。在ECU的访问这块,目前很多的操作都是不安全的,我们改怎样改变去加强其安全性?对于网络攻击,我们还需做入侵检测或预防系统。

还有一种方式,可以加强运行文件的安全性,比如我们可以对即将运行的文件,做静态扫描。这种扫描是SAAS的方式,对于待测车辆,只要通过某些端口,连接上去就可以对文件进行扫描,确保文件相对安全。

再谈一下自动驾驶的黑盒子。在测试阶段,我们一般称之为道路试验的数据记录仪,主要做高清视频的数据采集、存储和传输,可以记录信息。未来的车联网也会发生变化,比如T-BOX会包含C-V2X终端功能,即车路协同的终端,包含C-V2X功能的T-BOX会成为自动驾驶的重要辅助元素。

同时,我们的车一定要能通过FOTA不断固件升级来保证系统的实时安全性。

因为时间关系就介绍这么多,总之无人驾驶的安全之路很长,商业化绝非一蹴而就,谢谢!

相关标签:
2018中国安全产业大会
  • 车云星
  • 空间站
  • 福特星球
  • 虫洞

加料 /

人评论 | 人参与 登录
查看更多评论