自动驾驶,不说技术,说决策逻辑
提到智能车,大家都不会陌生,智能车是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体,自动驾驶便与之有着异曲同工之妙。自动驾驶的核心技术,有的人认为是感知、有的人认为是决策,有的人认为是非技术的东西,比如能否持续赚到钱、能否做好前瞻性的管理工作等等。本期文
章就知乎上的几位答主的观点,来看自动驾驶技术的核心。
小鹏、特斯拉、蔚来“聪颖“不一
在对Model 3、小鹏P7、蔚来ES6的自动驾驶功能进行测试时,其中一项是对雪糕筒的识别和反馈却截然不同:
小鹏:直接冲过去。
特斯拉:变道躲避。
蔚来:提示驾驶员接管车辆,自动刹车,同时打开双闪。
当时测试的车辆速度是40-50km/h,理论上来说,以三台车当前的硬件能力,不可能识别不到前方桩桶,最终不同的表现其实代表的就是三台车不同的决策逻辑,来听下三台车的内心独白:
小鹏P7:前方有桩桶?这是施工路段呐,理论上这属于驾驶员自己接管的范围,主动介入有可能造成危险,万一出了事责任也很难划分清楚吧?算了,还是维持当前操作!
特斯拉:前方有障碍物?哈哈,大显身手的机会来了!看我的,变道避障!
蔚来:前方有障碍物?可能有危险吧?不行不行,赶紧刹车降速,同步告知驾驶员和周围车辆,小心!有危险啊!
自动驾驶技术的核心还是决策
自动驾驶技术的核心实际上还是决策。过去几年由于视觉感知的不稳定,自动驾驶的发展受到了极大的制约,因此很多人都认为环境感知才是自动驾驶技术的核心。但随着环境感知的硬件越来越好,底层控制系统越来越精准,智能决策的重要性越来越关键。
如果自动驾驶类比人开车,那么感知就类似于人的眼耳,获取汽车周边的环境信息,而手脚则是偏执行层的控制。那么自动驾驶的核心就应该更偏向脑部的功能——决策。
过去往往都在吐槽Mobileye的摄像头或者哪家的雷达不行(眼神不太好),譬如车道线无法准确识别,静止车辆在远距离识别不到,这个目标又丢了,然后再加一堆的逻辑去解决这些参数异常跳动或者目标无法准确识别、丢失等问题。除此之外还需对执行层进行调试,譬如这个EPS死区有点大,这个车辆制动响应不太好(可以理解为手脚不太好使)。但随着供应商以及自研技术的提升,这样的场景越来越少了,无车道线场景也可以给出安全行驶的边界了,大家也有更多的精力去打磨决策相关的内容了,在学会走路的基础之上,研究如何的跑的更快,跑的更优雅了。
决策逻辑评价体系攸关重要
①能不能
比如,想识别所有的障碍物,但是你能枚举出所有的障碍物来测试吗?大千世界,无奇不有,显然是不能枚举完的。所以,那些没测过的障碍物,风险怎么评估呢?你敢在产品放行文件上签字吗?
仿真能大大提高测试的覆盖度,那么仿真和实际的偏差,怎么评估呢?仿真能识别了,实际就能吗?
简单来说就是几个问题,第一,你知道你能识别什么,但是你知道你不能识别什么嘛?第二,如果你知道不能识别,那你能及时报警让驾驶员接管吗?第三,如果没接管,你能及时执行最小风险策略吗?这些需要一套体系来管理和评价。
SOTIF能解决不少问题,但是SOTIF,有几个公司能完全用起来呢。更别说SOTIF解决不了的问题了。
②可不可靠
之前是一些模糊边界的问题。那么对于已经定义清楚的功能,怎么保证可靠性呢?
功能安全里有个安全目标的概念,简单说就是对于影响安全的事件(比如制动失效),有一套体系来保证相关的功能是可靠的。这里就引出了最常用的提高可靠性的方法---冗余。
冗余在传统的车辆上很常见,比如扭矩计算,比如制动执行机构的冗余。但是对于自动驾驶的一些问题,比如基于AI的感知,目前还不好做。
因此,没法直接套用功能安全的体系,来保证已经定义并实施的功能,是‘可靠’的。那怎么办呢?可以结合数据闭环来debug。但有个问题是,数据闭环是滞后的。就算用测试车,测试车的数据在数量和test case的覆盖度是比较局限的。OK,所以还要结合仿真,所以老问题又来了,仿真测试能过,路测就可以吗?偏差怎么评估呢?
这就是一系列如何评价可靠性的问题。不是对自动驾驶悲观,只是觉得要正视问题,避免盲目自信。也许以后有更好的体系来支撑自动驾驶的开发,但是归纳起来一句话---都需要时间。但是不希望有车企用激进的方式,像特斯拉那样用消费者来做测试,加速这个进步。