雷锋网·新智驾按:如果没有福特10亿美元的大手笔投资,刚刚创办1年的Argo.AI可能不会在这么短时间内被行业熟知,并与Waymo、Uber、Cruise等公司并排出现在公众视野里。不止如此,在将10亿美元的投资陆续打入Argo.AI户头的同时,福特更将其近百位工程师团队全部投向了Argo。面对摩拳擦掌的竞争对手们,某种程度上,可以说,福特要在年落地自动驾驶打车服务,宝基本都押在了这个来人的团队上。
Argo.AI正在研发的是L4的自动驾驶技术,和硅谷许多自动驾驶明星公司一样,Argo的团队阵容非常强大,CEOBryanSalesky最早曾任职于卡耐基梅隆机器人研究所下属的国家机器人工程中心,之后又在谷歌担任自动驾驶团队的硬件研发主管,联合创始人PeterRander则出自Uber高级技术中心,主导开发了Uber第一代自动驾驶原型车。
近日,BryanSalesky亲自撰文,回忆了从DARPA城市挑战赛至今的自动驾驶10年历程,详细介绍了自动驾驶行业以及包括Argo.AI在内的自动驾驶公司们面临的繁重工作,以及身处的困境。虽然已经公布了年落地自动驾驶汽车的时间表,但Salesky对于自动驾驶全面推广开来的时间预期却相当保守,因为在他看来,实现自动驾驶远比多数人想象得要复杂得多,困难得多。
本文由雷锋网·新智驾编译自Argo.AI官方博客。
10年前的加州沙漠里,11个进入决赛的车队在史无前例的60英里比赛中竞争。不足6小时里,在不时有人类驾驶汽车干扰的情况下,机器人汽车必须安全快速地完成无人干预的驾驶任务。
这是7年的DARPA城市挑战赛,这场无人驾驶比赛无意中拉开了无人驾驶发展的序幕。在当时,无人驾驶仍被认为是天方夜谭,而现在回头看,这场比赛正预示着一场漫长旅程的开始。
通过小心管控范围,DARPA保证了某种程度的成功:参赛者同意了一系列严苛的交通规则,DARPA则限制了行人和骑行车辆,为参赛团队减轻了一些负担。不过,虽然做了这些简化,团队要完成的任务依然相当艰巨——在18个月里,他们基本是从头开始,开发出了自己的自动驾驶系统。
DARPA挑战赛显出了自动驾驶对先进的计算能力和算法的强烈需求。当时,我们大部分都依赖于基于特定规则的编程技术,这意味着,10年前的机器人系统更倾向于在限定场景里操作,在特定的道路环境里,操作者一般不会偏离既定规则太多。
Argo的很多人都在机器人和自动驾驶领域从业超过10年,我们利用自己深厚的专业知识把这项技术呈现给大众,其中也包括在DARPA城市挑战赛中的所学。就在几个月前Argo.AI的一周年纪念日上,我们已经成为一个拥有名成员的经验充足的团队,并已经在匹兹堡和密歇根州东南部进行了自动驾驶汽车测试。
我们面对的第一个挑战是自动化智能系统的软硬件商业化。在外部环境中,车辆、行人混杂,自动驾驶没有与其共同遵守的一整套规则,要执行起来非常困难。在夜晚和白天的真实场景里,恶劣天气,不同的路形路况,都可能让情况变得更糟。机器人系统开发者需要先有一系列简化的基本设想,而环境的动态性为其带来了更多矛盾和变量。
过去几年里,部分由于计算能力的增强,这场游戏发生了很大变化,但也出现了一些复杂的新问题,我们目前仍然没有找到解决办法。计算机处理能力、存储能力和人工智能都进步了很多,不需要设置演示,计算机就可以推理出许多问题。我们可以进行海量的数据学习,以非常高的准确率识别图像,过滤传感器中的异常数据,找到最重要的核心因素。当我们拥抱这些变化时,我们也非常清楚,没有一个单个的工具、技术、算法能够解决自动驾驶的所有问题。下面就是我们对于自动驾驶汽车的一些思考。
感知世界
传感器还有很长的路要走。我们用了激光雷达,它在光照条件差时也可以较好地工作,理解车辆周围的三维世界,但不能识别颜色和质地,所以我们又使用了摄像头。摄像头在光线微弱的情况下功能非常受限,同时也很难在各种需要的操作范围内都达到足够的聚焦与分辨率。相对而言,雷达虽然分辨率较低,但是可以长距离识别行人速度。
这就是为什么我们在车上装了这么多传感器,他们可以实现优劣势互补。单个传感器不能完全复制他们捕捉到的东西,计算机必须综合多个传感器的数据,过滤出错误的和不一致的。将所有这些整合进一个综合强大的外部世界图像里,再进行计算处理,远比想象中困难。
开发一个性价比高、可维护的硬件系统挑战更大。我们尽量以最小的代价在传感器软硬件方面进行了创新,减少传感器计算,提高识别范围和分辨率。但如何达成这些互相冲突的目标,让技术更可靠地提升,仍然是非常重要的工作。
理解世界
一旦自动驾驶汽车有了“看见”周围世界的眼睛,下一步就取决于车辆自己了——识别物体类型,前方究竟是行人、骑行者、车辆,或只是一个废弃物,以及物体是以什么样的速度在移动。之后,车辆还必须判断物体下一步可能的动作。
人工智能、机器学习、计算能力、云存储等各个方面的提升,更新了很多旧的算法,也催生了新的算法。这些新工具在开发新算法方面起了很大作用,它可以筛选出传感器每秒上传的数百万像素的信息,判断物体位置、尺寸与相对速度。
我们工作的一部分就是开发算法,通过传感器收集数百万英里的真实场景数据,再利用这些数据教算法探测道路上的其它物体,虽然嘈杂和错误的传感器数据也带来了很多困难。工具链和运营团队进行了数据流和开发过程的管理。
我们早期取得的一些成果非常厉害,我们也非常清楚,最棘手的永远是细节。
车辆预测
我们开车时,会下意识地预测接下来几秒内道路上其它行人、车辆的反应,预想行人或许会乱穿马路,车辆会突然加塞。细心的驾驶员都非常善于处理这类情况,控制速度,为道路上的异常突发事件提前做出规划。驾驶员所拥有的这种在拥挤城市道路上快速应变的能力,自动驾驶汽车同样应该具备。
我们必须开发一种算法,使自动驾驶汽车更深入理解道路参与者可能出现的行为。我们需要向技术灌输这种“体贴”意识,保证汽车安全、可靠、有预见性地行驶。
例如,车辆需要知道什么时候为大卡车挪出位置,进入另一个司机的盲区时应该调整速度。同时,我们还必须开发出一种算法,让车辆知道哪些时候它过于保守了,哪些时候需要在繁忙的交通中“推一下”,或者保持一种状态,让其它行人车辆先做出正确反应。计算机提取了所有信息,对它来说,不被扰乱学习错误模型非常重要,因为如果预估了一个错误行为,它本身的表现也会出现异常。
这是我们在建造预测模型时,必须实现的平衡。这种平衡也只能来自真实场景的驾驶案例。在这些案例中,我们可以学习预测微型演习,后者被证明是衡量道路其它车辆、行人或物体可能出现的反应的最主要指标。
系统集成和测试
驱动自动驾驶汽车的软件一般被称为随机系统,这意味着其结果取决于用于传感器随机输入的一系列探测图案和模型,而不是连续的一系列输入又输出的数学等式。
从同一条路上开车经过,你不太可能两次都准确地按一个速度行驶。自动驾驶汽车也是一样,虽然一般而言,它们的一贯性会比人类驾驶员好一些。
测试随机系统需要大量真实场景的数据,这意味着我们必须收集数百万英里的道路经验,才能教软件自信地驾驶。(想象一下一个人要驾驶数百万英里才能拿到驾照。)但不是所有里程都是在同等情况下建立的,因此“累积里程数”并不是一个具备足够表现力的追踪进程的衡量标准。再想一下,你在一个僻静的小镇学习的驾驶技能,不可能转化成在曼哈顿中心地带的驾驶技能。
我们的算法通过复杂的数学与逻辑运算,将每秒数百万的像素转化成自动驾驶汽车所在的世界状况。考虑到这些高维度输入,我们就不能用单个可能的输入组合进行测试,因为这样的话,需要测试的组合数以万亿计,会非常难办,所以在使用测试汽车的驾驶里程时,我们需要找到更聪明的方式。我们创造了可以抓取正确里程的工具,这些里程充分覆盖了车辆可能看到的现实场景,之后我们再用这些测试车辆的正确反应。要达到这种平衡需要在目标部署区域里收集非常大量的驾驶经验和数据,而这个目标部署区域又必须尽可能覆盖各种复杂场景。我们也必须充分考虑各个场景里可能降低传感器输出的环境变量,例如天气和光照情况。
我们成立了专门的物流和测试团队,可以进行安全的自动驾驶汽车测试,另外我们还有一个专业分析和软件工程师团队,正在开发数据流管理工具,这些让我们在情景覆盖方面有了更多信心。
要开发出一辆自动驾驶汽车,我们今天仍然处于非常早期的阶段。那些认为自动驾驶汽车在几年或几个月内就可以满大街跑的人,要么是对眼下的科技发展水平没有充分的认识,要么在技术的安全运用上没有周全的考虑。对于我们这些在自动驾驶技术方面已经投入很长时间的人来说,我们想要告诉你的是,这件事情非常困难,整个系统也非常非常复杂。
大家都知道,努力、创新、专注的团队可以解决很多难以想象的棘手问题。在Argo,我们看到了这样一件激励人心的事所带来的挑战,也正是这些挑战驱动着我们利用前面10年的积累,迈向一个自动驾驶的全新时代。
我们正在采取一些较为实际的方法,在承认没有“银色子弹”的同时,充分结合目前科技的发展水平。身处这样一场漫长的游戏中,我们尽量避免大肆宣传,而是希望以一种赢得全世界数百万人信赖的伟大产品的形式,将这项重要技术带向成熟。
雷锋网推荐阅读:
《创立3个月就从福特手中拿到10亿美元,ArgoAI到底是何方神圣?》