“以前觉得自动驾驶既神秘又‘高大上’,这次终于能亲身体验一下了!”望着徐徐驶来的百度自动驾驶出租车Apollo,在北京工作的程序员小王很兴奋。
日前,百度自动驾驶体验服务在北京亦庄、海淀免费开放,吸引了大批市民和媒体关注。单个站点单日最高服务量超过600单,一度出现“一车难求”的场面。近年来,中国自动驾驶行业捷报频传,多家企业已在国内外多个城市开展路测运营。此次百度率先向公众开放路测,也让普通人能够跟自动驾驶这个前沿事物来一次“亲密接触”。
那么,自动驾驶出租车如何行驶?面对中国实际的复杂路况,技术人员是如何把无人车训练成“老司机”的?本报记者对此进行了实地体验和采访。
体验:全程平稳无接管
10月27日上午,记者来到北京亦庄,选择限定运营区域内距离最长的两个站点,坐着百度自动驾驶出租车跑了一个来回。
先说智能性。这10公里的路程并不算长,却已包含了我们日常开车绝大部分会遇到的基本场景:起步、加速、转弯、变道超车、减速让行、过红绿灯路口、靠边停车等等。在近20分钟的试乘时间里,安全员全程无接管,所有决策、操作都由自动驾驶系统完成。可以说,这是一次纯粹的自动驾驶。
再说舒适性。百度自动驾驶出租车的速度基本稳定在每小时40公里左右,这让它整体“开”得非常平稳。Apollo的加减速也很流畅,遇到前方红灯或是预测到有车要并线,Apollo会提前减速,从而避免急刹车。遇到四下无车的情况,Apollo也会果断匀加速,不“磨叽”。在绝大多数情况下,如果你闭上眼睛,基本分不出开车的是人还是机器。
正是因为Apollo的“超稳定发挥”,反而让试乘者们特别期待能遇到一次“意外”情况。赶巧的是,记者就遇到了一次自动驾驶系统做出的急刹车动作:
当时,一辆外卖摩托车突然从路旁冲出来,即将以高速掠过Apollo斜前方。就在记者用余光瞥见这辆摩托车时,Apollo来了一脚势大力沉的急刹车。紧接着,车内响起了AI小度的道歉声:“刹猛了,求原谅!谨慎才能保证你的安全呀。”
记者当即向车内安全员反复确认,在这脚刹车过程中,安全员完全没有介入,是自动驾驶系统预判到摩托车的行驶轨迹,采取了紧急制动措施。记者事后想,如果是自己在当时的场景中,可能会减速,但不会急刹。因为摩托车在道路博弈中,大概率不会主动选择与汽车进行碰撞,这或许是人类和机器在预判上的区别,不过也正如小度所说,“谨慎”是为了安全,在自动驾驶刚起步的时候,还是谨慎为妙。
除了AI自动紧急刹车,有没有安全员必须要接管车辆的时候呢?一位安全员提到一个令人印象深刻的场景:工人打开路面井盖,下井检修,但并未按要求在井口摆设安全锥桶。下井工人的头发与黑色的井口背景融为一体,试验车辆未能分辨,没有做出减速动作,安全员紧急接管。“不过这都是很早期的状况,现在接管的次数少多了。”
急刹车与井盖的故事提醒我们,比起相对容易处理的正常场景来说,那些发生概率较低、但“一失万无”的极端场景——业内称为“边角案例”(CornerCase)或“长尾场景”——才是对自动驾驶真正的考验。这些场景不按常理出牌,样式繁多,处理难度大,却是无人驾驶在中国落地的关键之一。
训练:长尾场景是关键
路测过程中遇到的问题怎么解决?
“对自动驾驶系统来说,每一个长尾场景都是非常宝贵的学习机会,每解决一个问题,Apollo的大脑就会变得更‘聪明’一些。”百度自动驾驶测试工程师李肆给记者举了一个三角事故牌的例子:
“在一次测试中,Apollo遇到一个三角事故牌和临时停车,识别成了静止障碍物和静止车辆。它选择先停车观察,然后再缓慢起步绕行。当系统记录这一次缓行后,通过数据挖掘和Learning训练模型,Apollo理解了这是交通事故场景典型特征。在之后的驾驶策略上,再遇到三角牌,它会提前主动借道通行,像老司机一样自然绕行。”
所以,不仅仅是安全员发生接管的场景,包括系统主动发现的漏洞或是影响用户体验的问题,都会被系统实时捕捉,并自动上传云端。所有问题的数据,在后台都会被自动化分析和归类标注。
“对于比较简单的问题,系统可以自己形成训练数据,直接对算法模型进行自我更新,增强驾驶能力。而对于一些新问题和重点问题,则会被系统识别出来,流转给技术人员作深入分析和优化。”李肆说,当技术人员对一类典型场景完成算法优化后,会在仿真平台针对问题场景进行验证。“从遇到一个长尾场景,到数据驱动模型迭代、仿真回归验证、新版本上线解决,优化周期大约在几周或几个月,要视问题的困难程度而定。”
除了让Apollo把自己遇到的难题“巩固复习”好,百度的技术人员还给Apollo主动加练,从现实和虚拟两个维度打造起Apollo的“练功房”。
现实中的“练功房”位于国家智能网联汽车(长沙)测试区东片区,这是百度联合长沙湘江智能打造的国内首个自动驾驶7×24小时全无人值守封闭测试场,目前已投入日常测试使用。可以实现测试全程无人化,支持7×24小时不间断可靠性测试,大幅节省测试人力成本。同时也保障了场景构建的高度还原和一致性,对交互博弈场景构建的优势尤其突出。
除了真实的道路数据之外,百度的自动驾驶学习也依托仿真模拟器。百度自动驾驶事业部总经理陶吉告诉记者:“我们拥有一个‘无限里程虚拟世界’,我们在这里面放很多行人和车辆的障碍物,他们按照一定的规则去跑,Apollo也放一辆进去。当跑到足够多里程的时候,会发生很多意想不到的情况。如果发现Apollo应对不了的情况,这个案例我们会特别拿出来分析,作为训练课程来增强自动驾驶系统的能力。”
据陶吉介绍,在仿真云环境下,Apollo已累计运行了数亿公里的测试里程,每日运行超过数百万公里,保证了Apollo自动驾驶对路上多样化场景的适应性,让百度自动驾驶车辆在上路前,已经完成了对于路上可能会发生的所有场景的充分验证。
“今天我们敢在北京开放,也是代表一种技术自信。”陶吉说,“对于一项新技术,只有面向用户、面向市场才有最佳的改进目标,当然我们还有各种不足,也希望能够通过开放试乘来收集用户的反馈,不断打磨提升自己,带给大家更好的出行服务产品。”