自动驾驶系统的纠结:在虚警和漏警之间不断徘徊
据国外媒体报道,最新发布的Uber自动驾驶车祸初步报告表明,虽然工程师力求自动驾驶汽车系统能够不犯错误,但事实上自动驾驶系统是在虚警和漏警两种状态下不断权衡。
无论是医疗测试系统,安检设备或者能够让自动驾驶汽车感知和评估周围环境的软件,任何检测系统在开发时都极力避免假阴或假阳的问题。但是规避这种问题的困难在于,越是远离一方,就越接近另一方。
今年3月份Uber旗下自动驾驶汽车发生了致命车祸,该事件的新细节不仅凸显了这个问题的难度,还表明了它的核心地位。
根据美国国家运输安全委员会上周发布的初步报告,Uber汽车上的自动驾驶系统在发生车祸前6秒钟就发现了涉事行人伊莱恩·赫茨伯格(Elaine Herzberg)。自动驾驶系统最初将其识别为一个未知对象,然后是一辆车,最后是一辆自行车。(她正在推着一辆自行车横穿马路。)大约在车祸发生前一秒,系统确定需要猛踩刹车。但是Uber的自动驾驶系统并没有也不会执行这个决定, NTSB在报告中解释道。Uber的工程师之所以阻止汽车自动急刹是“为了减少车辆在行驶过程中不稳定的可能性”。(而公司依靠安全员来避免碰撞,这是另外一个问题。)
Uber的工程师之所以决定不让汽车自动刹车,因为他们担心系统会对那些不重要或根本不存在的事情反应过度。换句话说,他们非常担心误报。
众所周知,自动驾驶汽车传感器会将蒸汽,汽车尾气或纸板碎片曲解为类似于混凝土之类的障碍物。它们也会把一个站在人行道上的人误认为准备跳到马路中央的人。错误的判断不仅会让汽车频频急刹,也会让乘客感到不安。
自动驾驶巴士公司May Mobility创始人埃德·奥尔森(Ed Olson)表示:“误报是非常危险的。一辆突然刹车的汽车很可能会失控。”
但是开发人员若刻意避免误报,无意中也会让开发的软件过滤掉很多重要的数据。特斯拉的辅助驾驶系统Autopilot就是如此,其能够让特斯拉电动汽车保持在车道上行驶并自动远离其他车辆。为了避免车载雷达传感器每次发现公路标志或废弃轮毂盖时就会采取制动措施(误报),Autopilot系统会自动过滤掉任何不动的物体。这就是为什么辅助驾驶系统看不到停止的消防车。在过去几个月中,特斯拉电动汽车在Autopilot系统下行驶时先后两次高速撞上停在路边的车辆。这恰恰是自动驾驶汽车系统的假阴性问题。
正确或错误
在忽略无关紧要的事物和抓住关键点之间取得平衡,就能够认识到如何调整自动驾驶软件算法的“旋钮”。你可以调整系统如何对检测到的内容进行分类和作出响应,并根据所收集的数据进行重新测试。
像任何工程问题一样,这是两者相权取其轻的问题。 “你不得不做出妥协,”奥尔森说。对于许多自动驾驶汽车的开发者来说,答案是让汽车更加谨慎一些。相比于16岁孩子获得的赛车礼物,坐在卡迪拉克豪华轿车上的老年人要更多。
但一辆过于谨慎的汽车也会让人感到沮丧。他们可能想要加速,在乘坐过程中会感觉不耐烦。此外,自动驾驶汽车过于谨慎也极不方便且代价高昂:其很可能会一旦有发生碰撞的微弱可能性就去猛踩刹车,反而会导致更多追尾。
每当开发人员摆弄这些旋钮时,他们都必须重新测试系统,以确保自己对结果感到满意。 “这是你在每个开发周期中都想看到的东西,”Edge Case Research的联合创始人兼首席执行官迈克尔·瓦格纳(Michael Wagner)说,该公司帮助机器人公司开发更强大的软件,这非常耗时。
所以,如果你在前行和踩下刹车之间不断徘徊,并想知道你的自动驾驶汽车到底在干什么时,需要清楚它自己也处于两种情况的中间状态。