“新冠”疫情来势汹汹,席卷全球。美国 16 个州已颁布居家隔离令,接近一半的人口被“封印”在家,物流配送压力倍增。无接触、感染风险低的无人车配送成为疫情期间的理想选择。硅谷一家基于大规模智能仿真系统的新兴无人驾驶技术公司——轻舟智航(QCraft)正在使其成为可能。
加州时间 3 月 16 日“居家隔离” 令生效前夜,硅谷科技社区 Robin.ly 和 AI 人才公司 TalentSeer 的创始人、BoomingStar Ventures 管理合伙人 Alex Ren, 就作为独立见证人,乘坐轻舟智航公司的无人车,完成了一次 drive through 购买汉堡的独特体验。
图片来源:轻舟智航 QCraft
“硅谷”封城前夜无人车试乘体验
当晚上 7 点,Alex 从轻舟智航硅谷分公司门口上车,乘坐其无人车来到一个商业区周边的麦当劳餐厅,在汽车穿梭窗口(Drive-through)完成精确停车点餐、支付和取餐过程,随后穿过遭遇抢购的大型超市和停车场等复杂道路,顺利回到公司,全程约 15 分钟。下图展示了本次体验路线。
图片来源:轻舟智航 QCraft
Drive-through 是美国很常见的一种点餐方式,是典型的城市复杂交通环境之一,从技术上角度来看,也很有挑战性。
首先,其车道比单车道更窄,对定位和控制的要求都比较高,如果横向定位和控制不精确,就会轧到路沿或蹭到建筑物,如果纵向不准,就会对不准点餐窗口。
其次,在出口处便是停车场,是非结构化道路,要应对人车混杂的情况,还要通过无保护右转进入道路主路。
最后,更有挑战性的是这里是正常营业的地方,不像开放道路般可以重复进行路测,轻舟智航通过大量的仿真测试,做到了第一次上路就非常安全可靠。
轻舟智航:轻、快、高效的无人驾驶路径
本次试乘的无人车来自成立于硅谷的前沿无人驾驶公司轻舟智航。公司成立之初,就立志打造一个轻、快、高效的团队,以一条独特崭新的路径实现无人驾驶,这也是公司名称的由来——两岸猿声啼不住,轻舟已过万重山。
轻舟智航基于大规模智能仿真系统和可自主学习运动规划框架,专注于为合作伙伴提供可量产的无人驾驶解决方案,全方位覆盖从低速到高速、从物流到出行、从商用车到乘用车等多个应用场景。其核心团队成员来自 Waymo、特斯拉、Uber、福特、英伟达等世界顶级公司,实现了无人驾驶关键技术模块的全栈覆盖。
图片来源:轻舟智航 QCraft
北京时间 3 月 21 日,在轻舟智航举办的线上分享会上,其联合创始人、CEO 于骞和联合创始人汪堃首次公开分享了其基于大规模智能仿真系统及可自主学习决策规划框架的技术路径,并介绍了大规模智能仿真系统的具体应用。
以下为分享实录:
加州自动驾驶接管报告的解读
今年 2 月,加州车管局(DMV)公布了 2019 年加州自动驾驶接管报告,引起了众多讨论,其中接管里程数(MPI)这个指标更是引起了比较大的争议。在我看来,不同公司的接管标准是不一样的,将不同公司间的接管率相比较是没有意义的。打个比方,如果某家公司路测的道路足够简单,例如没有其他车辆、没有十字路口、也没有行人,那这家公司的接管率就可以做到足够低。
但是,如果把同家公司的接管率在时间维度上进行横向比较就比较有意思了。以总里程数和里程覆盖的多样性都比较受业内认可的 Waymo 为例,当比较 Waymo 在 2018 年和 2019 年的接管类型时,可以发现很有意思的一点:感知所占的比例明显变多了,从 25%升到了 47%。这是不是意味着 Waymo 的感知能力下降了呢?并不是。从绝对 MPI 来看,Waymo 无论在感知还是运动规划上都有了进步。从整体比例的变化可以看到,感知占的比例上升,更多是由于规划决策造成接管所占比例下降的缘故。这也意味着 Waymo 在规划决策方面有了很大的技术进步,这是非常了不起的,也是和其大规模的仿真测试应用离不开的。
大家知道,感知是一个比较确定性的问题,如何测试和评价是非常明确的,整体的方法论也是比较清楚的。所以业内开始把注意力集中在规划决策技术上,把规划决策视为目前最具挑战性的问题。
规划决策的挑战性可以从两点来看:第一,不确定性难以衡量。现有判断规划决策做得好坏的指标是舒适度和安全性,但这两项指标都是比较偏主观的。一方面,不同人开车有不同的行为喜好,有人激进一些,有人保守一些,舒适程度本身是很主观的一个判断;另一方面,在安全性上,简单的安全性指标是不碰撞,但即使是不碰撞,要是你的车总是离旁边车就差 1 厘米,你也会觉得不安全。
第二,从方法论的角度来说,行业里占主流位置的规划决策方法论,整体上看与 20 年前相比并没有大的突破。模仿学习或强化学习的方法,在大规模实际应用时也仍然存在众多问题。因此,相比感知,规划控制的提高更困难。
图片来源:轻舟智航 QCraft
自动驾驶的技术演进
自动驾驶技术最早是从地图和定位开始做起的,简单理解就是先要知道自己在哪里;在做好地图和定位之后,业内开始专注于感知技术,高线数的激光雷达对感知的早期发展有重要推动作用;在 2012 年学习爆发了之后,业内开始把深度学习应用在感知上,感知技术有了快速的、长足的进步。
图片来源:轻舟智航 QCraft
当该检测和识别的物体都检测出来了,业内又发现规划决策一点都不简单,甚至更困难。这时,仿真技术出现了,其出现很大程度上是为了帮助规划决策进行更好的测试——毕竟不能每修改一次算法就部署到车上进行测试。随着仿真技术的采用,行业又进入一个快速的发展轨道,从 2016 年至今,Waymo 的实际路测里程超过 1000 万英里,比绕地球赤道 400 圈还多,这还只是 2018 年的数据。
这一条技术演进路径,既是我在自动驾驶领域 10 多年经验的一个总结,是不同时间点自动驾驶技术所专注的不同核心,也是近几年来许多创业公司从无到有的技术构建过程——先做好建图和定位,再做好感知,最后再开始做规划决策和仿真。
但对于轻舟智航而言,我们从一开始便把仿真测试平台作为关键核心能力,与其他模块一同建设起来,使开发达到了十分高效的状态。
如何解决自动驾驶长尾效应
除了规划决策方面的挑战,还要提到自动驾驶行业的长尾效应。
从事自动驾驶的技术人员肯定深有体会,技术上已经解决了 90%的问题,但剩下的 10%却可能要花费同样多甚至更多的精力,这 10%包括很多边界化难题,经常被称为 Corner Case。
图片来源:轻舟智航 QCraft
上图便是一个典型的边界化难题(Corner case),在你遇上野鸭子之前,你甚至不知道会有野鸭子的问题,所以边界化难题(Corner case)是需要去发现,并且解决的。
那么边界化难题怎样去发现并解决呢?
除了收集大量的数据,更重要的是建立自动化生产的工厂,将源源不断收集来的有效数据,通过自动化的工具,加工成可用的模型。以更快的速度、更高效的方式应对边界化难题(Corner case)。
图片来源:轻舟智航 QCraft
以上面野鸭子的场景为例,如果需要专门针对这些场景去开发特殊的模型,那会有无穷无尽的场景需要处理。但借助自动化的办法,只要数据标注好了,下次系统更新时便可以更好处理这种情况,省下大量工程师的时间。
以感知举例是比较容易理解的,但其实规划技术也一样。要想让车做出准确的规划,最原始的方法是工程师写规则——大量的工程师写出大量的规则,但这种方式维护性很差还不能满足需求;再进一步便是设计奖励函数——设计奖励函数比写规则要简单的多;再往后则是利用数据自动学习奖励函数。这个过程便是往自动化方向发展的过程。
轻舟智航所追求的,是建立自动化规模生产的工厂,相比原本的“造梯子”,我们更希望“造火箭”。为此,就要建立大量的工具链以及仿真测试环境。
自动驾驶测试不可或缺
在系统开发和测试中,有一个 10x 定律,指的是在概念、设计、开发、测试、发布的整个过程中,Bug 每晚一个阶段发现,解决成本就要更高一个数量级。这个 10x 定律在自动驾驶领域体现尤为明显,问题越晚暴露越难以解决。如果到发布后问题才暴露,那可能就是威胁到生命的灾难。
从这也可以看到仿真测试的重要性,除了应用在规划决策,仿真测试也能支撑无人驾驶技术的所有关键模块的快速迭代。可类比一个现代化工厂的生产过程,在产品发布前的每一个环节,都需要有充分的测试。从地图到定位,从感知到预测,再到最终的规划决策,我们并非全部开发完再测试整体模块,而是从一开始就同步进行。
目前行业里,都认识到了测试的重要性,都理解自动驾驶的核心竞争力不是某一两个单点算法,而是如何构建一个高效的数据工厂,高效快速地完成测试。
轻舟智航的测试工具是为了帮助工程师高效地开发,快速复现车辆上的问题,并提前暴露可能的潜在问题,同时也是提供一个评估系统,评价一个版本和另外一个版本比是变好了还是变坏了,而非做成给人看的好看的图像或好看的点云。
我们的测试系统可做到和车载系统的高度一致,在路上出现的问题,回来就能在仿真里复现,并进行修复。保证再次上路时不出现同样问题。我们产生的场景库也与现实环境高度一致,因为本来就是从现实中学习来的。做不到上述这些能力,仿真测试就只是一个摆设。有了这些能力,就能把开发效率快速提高。
图片来源:轻舟智航 QCraft
技术路径的创新
无人驾驶领域的两个重要议题,一个是技术路径,一个是商业应用。
无人驾驶是一个很独特的领域,不是没有需求,而是有大量的需求。不论是增加安全性,还是降低人力成本,或者是提供城市交通效率,都是无人驾驶领域的强需求,但目前技术还存在各类问题,这也正是轻舟智航的机会。
在技术路径方面,轻舟智航重视自动化和测试。有效数据、大规模智能仿真系统以及可自主学习决策规划框架是推动轻舟智航技术不断向前转动的齿轮,也是我们独特的技术路径。在过去一年的起步阶段,轻舟智航不希望“只见树木不见森林”——通过见招拆招的方式进入到某个具体的小应用场景,变成一家靠堆人来解决问题、无法规模化的工程公司,而是专注于修炼内功,在做到主线够深入、横向可扩展之后,再以轻、快的方式实现真正的无人驾驶。
在商业应用方面,我们的思路是:与其什么都做,不如聚焦擅长的领域,与合作伙伴共同努力,将无人驾驶带入现实。这样的一套齿轮,要想转动起来,也离不开外部的行业环境。在我看来,无人驾驶行业正处于一个大发展阶段。一方面,是技术的新高度,另一方面,是政策的强支撑。技术的新高度指的是传感器和计算单元正在高速迭代,技术人才正在升级和增加等。政策的强支撑则包括近期“新基建”里对自动驾驶的重视、5G 等配套技术的发展、配套法律法规的完善等。可以说,这是一个最好的时间,也是为什么轻舟智航会选择在这个时间出现。
我们专注于适应城市复杂交通环境的 L4 级别自动驾驶技术,致力于打造“老司机”,希望为合作伙伴提供全方位、可量产的无人驾驶解决方案。我们有轻、快、高效的全栈式明星团队,有支持快速拓展的技术路径,最后也将达到全方位、多场景的高效落地。
图片来源:轻舟智航 QCraft
独特的仿真系统
市面上有许多仿真软件,最流行的是基于游戏引擎开发的仿真软件。这种仿真软件从界面的角度来说是比较好看的,像一个模拟城市,场景很真实。
图片来源:轻舟智航 QCraft
与这种主流的仿真软件不同,轻舟智航的仿真软件界面是很简单的,抛弃了复杂的渲染工作,仅保留了感知结果,包括 3D Box 和雷达点的叠加。我们为什么不利用游戏引擎,造一个好看的模拟城市呢?
我们总结了基于游戏引擎开发的仿真系统的三大特点:
第一,在使用游戏引擎的情况下,其本身的图像渲染工作对感知的提升是很有限的,因为其中的渲染效果和真实物体是有一定差别的。
第二,在自动驾驶领域,这种 Re-build 软件(基于第三方软件开发)是缺乏测试确定性的。仿真软件在自动驾驶领域的重要应用,就是复现某一次的路测效果。但由于这种第三方软件的开发与自动驾驶软件的开发是相互独立的,很难保证其中各个模块的确定性,导致整个仿真软件存在不确定性,最终影响可用性。
第三,基于游戏引擎开发的仿真器会消耗大量额外计算资源做图像渲染,不利于大规模应用,这也影响到本身的实用性。
基于以上考虑,才有了轻舟智航独特的仿真系统。
仿真能为自动驾驶带来什么?
仿真对自动驾驶的重要性不言而喻,它具有几个优势:
一、低成本
仿真的路测成本大约是实际路测成本的 1%,甚至更少。在进行实际路测时,需要有硬件成本、传感器成本、司机成本以及系统工程师的成本,而且一天只能有效测试 8 到 10 个小时。而利用仿真路测,在要求不高时,只需要一台电脑和 GPU,便能连续 24 小时进行测试。
二、灵活性
在实际路测中,遇到极端情况是很小概率的事件,而且不安全。而在仿真系统里,工程师可以通过手工编辑或自动生成来测试众多极端情况,保证在实际路测前有充分的验证。
三、可扩展性
仿真的扩展性比实际道路测试的扩展性大,仿真路测里程大概 1000 倍于实际路测里程。仿真系统所需要的硬件成本是很低的,而车队的硬件成本、人员成本以及运营成本是非常高的,随着云服务的发展,仿真的可扩展性将远大于车队的可扩展性。
四、可衡量性
在开发自动驾驶软件时,每一天都存在大量代码的更改以及算法的迭代,那如何知道这个月的软件和上个月的软件哪个表现更优?这种比较是难以通过实际路测进行的,因为在车辆有限的情况下,测试的场景以及里程数都有限,很难得到一个可靠的统计结果。但借助仿真,工程师能在大量场景库里并行地进行测试,在很短时间内便能对软件版本进行评估。未来,在评估软件是否达到量产水平时,仿真也是主要的测试评价技术。
图片来源:轻舟智航 QCraft
仿真系统架构以及仿真评估器分类
轻舟智航仿真系统的系统架构可以分为 5 层:最底层的是轻舟智航自研的 Car OS,借助底层的通讯系统来保证模块之间的高效通讯;Car OS 与仿真器是高度整合的系统,核心仿真器及评估器,是基于底层的 Car OS 接口开发的,能保证仿真系统的确定性;再往上一层是仿真周边工具链和基础架构,可保证整个数据闭环的有效性,将全部数据高效利用起来;第四层是大规模场景库构建;最顶层则是分布式系统仿真平台,支持快速、大规模的仿真应用,在短时间内得出正确评估。
图片来源:轻舟智航 QCraft
轻舟智航的仿真评估器也可以分为 5 类:第一类是安全性评估器(Safety Evaluator),包含是否碰撞、是否压到路边、是否撞到行人等评估;第二类是真值评估器(Ground Truth Evaluator),可通过人工标注或自动标注的方式对仿真结果进行检测对比,及时反馈给工程师;第三类是法规评估(Law Evaluator),指的是根据交通规则进行评估,例如是否闯红灯、是否逆行等;第四类是舒适度评估(Comfort Evaluator),指是否有急刹等带来不舒适感的等行为;第五类是状况评估(Stats Evaluator),相对比较底层一些,指根据模块生成的中间结果,进行纵向比较得到评估的结果。
真正能用起来的仿真
以上视频是我们在麦当劳进行仿真测试的一个例子,从下方的真实影像中,可看到前方是没有车辆的。但借助仿真,我们在场景中产生了两辆绿色的虚拟车辆,测试车辆能否对虚拟车辆进行准确的避让。同样,也产生了黄色框的行人来进行测试。视频中的白色边框则是当时的实际行驶轨迹。由于麦当劳这种场景是不允许多次实际测试的,这个视频只是众多例子中的一个,我们实际上生成了非常多个这种类似的场景,在仿真测试中评估器,都得到不错的结果后,才让车辆到实际场景中测试。
此外,以上视频也展示了仿真场景库的自动生成的相关工作。视频中红色和绿色的两个点,分别代表两辆车的运动轨迹,这些轨迹的生成和变化,是在真实的交通数据集上,利用深度学习的方法进行训练,再使用训练好的深度神经网络 (生成模型) 合成大规模的互动车辆的轨迹。
大家可以看到互动车辆的运动轨迹在不断变化,这个变化是由于我们借助生成模型在互动车辆的运动行为空间进行随机抽样而产生的。该生成模型支持在不同地图上合成不同的场景库,具有真实有效,多样丰富,以及规模扩展等诸多特性。视频中的两个点或者两辆车,是具有交互性的,它们之间可以进行正确的互动,这种互动行为不是人工手动创制,而是从真实车与车之间的互动数据中通过深度学习的方法学习而来的。
总结而言,我们认为仿真是达到规模化无人驾驶技术的唯一路径。首先,借助仿真及相关工具链,能形成高效的数据测试闭环,支持算法的测试和高效迭代,取代堆人或堆车的方式;其次,只有经过大规模智能仿真验证过的软件,才能够保证安全性和可用性。以一个比喻作为结尾,如果无人驾驶是个赛跑,那么仿真便是助推器,助推完全无人驾驶的实现。
本文转载自 Robinly 公众号。
原文链接:https://mp.weixin.qq.com/s/CWdDEwg3LohTyG7y7Mm7Qw
评论