第 147 期·中文精读

德米特里·多尔戈夫:Waymo 与自动驾驶汽车的未来

Dmitri Dolgov: Waymo and the Future of Self-Driving Cars

Waymo 技术负责人讲自动驾驶的工程难点、安全验证与落地路径,以及无人车上路的未来图景。

官方音频00:00 / --:--
中文精读由 AI 基于原始访谈改写,非官方翻译,可能存在偏差或错误;表述以原音频与官方文稿为准。说明

2020 年 10 月 8 日,凤凰城东谷地区,任何一个人下载一个 App,点一下,一辆车停在门口,坐进去,驾驶座上没有人,方向盘自己转动,刹车油门自己踩,把你送到目的地。没有内测名额,没有邀请制,任何人付钱就能坐。服务覆盖的地理范围比旧金山市区还大。

从一间会议室里的十几个人,到街上跑着没人开的收费出租车,中间是十一年。

德米特里·多尔戈夫(Dmitri Dolgov)在这十一年里的每一天都在场。2009 年 Google 自动驾驶项目启动时他在,2016 年项目独立成 Waymo 时他在,现在他是这家公司的 CTO。在这次访谈里,他把自己从苏联小城写游戏的小孩,到斯坦福 DARPA 车队里负责一段规划代码的博士后,再到今天掌管全球唯一大规模商业无人驾驶车队的完整路径,讲了一遍。

路径里有几个节点值得单独拎出来看。

一个想做交通警察的孩子,父母都是物理学教授

问起童年梦想,多尔戈夫没有编一个关于机器人和宇宙奥秘的故事。他说的是实话:四五岁的时候,他想当交通管制警察。

在八十年代的苏联,马路上站着警察,手里拿着黑白条纹的指挥棒,一整天都在路口指挥车流。不知道为什么,我对这个流程有种奇怪的痴迷。(德米特里·多尔戈夫)

他父母都是物理学教授,对这个志向略感忧虑。这个细节放到今天看有点荒诞:一个痴迷于用小棍子让车流按规则走的孩子,最后做的正是让一整个城市的车流在没有任何人挥棍子的情况下按规则走。他自己也承认,大概就是内心深处对那根指挥棒的迷恋,把他带到了这个行业。

第一台家用电脑是八十年代末的 IBM AT,正面有个 Turbo 按钮,按下去机器「变快」。刚拿到机器那几个月他和所有孩子一样打游戏,很快打腻了,开始琢磨怎么让这台机器干别的事,就这么进了编程的门。

几年后他用 Pascal 写了个带图形界面的游戏,分辨率大概 320 乘 200。一家日本游戏公司出价几百美元要买,在一个俄罗斯小孩眼里这不算小钱。他没卖。

我现在回头看,这不是我人生中财务上最精明的一个决定。当时的想法是把游戏挂到网上做免费软件,让成千上万人玩,每人给我捐几块钱,算下来肯定划算。(德米特里·多尔戈夫)

一个十几岁的孩子已经在设计商业模式了,可惜算错了。

后来他读的大学是莫斯科物理技术学院(MIPT,俄语缩写 Физтех)。这个选择有明确来由:他父母都毕业于此,他从小听着关于这个地方的故事长大。为了上这所学校,他从美国高中毕业之后专门搬回了俄罗斯。

我大学同学听到这个决定之后的反应,基本就是看一个疯子。可能比「看疯子」还要再强一点。(德米特里·多尔戈夫)

六年,物理和数学的本科加硕士。他给出的描述是「在数学和物理基础上相当硬核」。这个学校在苏联和俄罗斯的科技体系里是什么位置,值得单独说一句:它把一批人送进了理论物理、航天、密码学的核心圈层,那套训练方式不只是在筛智商,也是在筛一个人能不能在长期高压下保持思考。

DARPA 城市挑战赛:他把车写成了绕圈狂

从 MIPT 毕业之后,多尔戈夫去密歇根读研,然后到斯坦福做博士后。真正让他第一次动手碰机器人的,是自动驾驶车。

2006 年他加入了斯坦福的 DARPA 城市挑战赛(DARPA Urban Challenge)车队,负责运动规划。这项比赛在自动驾驶的历史上地位特殊:它之前的两届「大挑战」(Grand Challenge)比的是在沙漠里跑完全程,第三届把场地换成了一个模拟城市。

DARPA 征用了一座废弃的空军基地,在里面造了一座小假城。参赛车辆全部无人驾驶,同时在一个场地里跑,还混着专业司机开的人

还混着专业司机开的人驾车。每辆车开局拿到一张粗糙的地图和一个任务序列:去这里,再去那里,再去那里。车必须自己在共享环境里和其他自动驾驶车、和人类司机互动。

多尔戈夫负责的那块是停车场里的自由空间运动规划。比赛规则是这样的:DARPA 给你一个定义停车场边界的大多边形,再给你一个目标点(X、Y 和朝向),你在完全不知道场内有什么障碍的情况下,从入口开到车位,停进去,再开出来。全程实时感知和推理。

他对这段经历最鲜活的记忆落在比赛之前,第一次把自己写的代码放到车上跑的那个晚上。

那是在斯坦福校园的一个停车场,凌晨三点,我们用锥桶摆了一条小赛道。代码编译、上车、跑起来,它真的做出了一些相当合理的行为。当然 bug 一大堆,各种问题,但那件事真的很魔幻。我回去之后整晚睡不着,脑子里一直在转。从那天起我就一直做这件事,做了十几年。(德米特里·多尔戈夫)

比赛当天则是另一种体验。所有车排在起点,驾驶座全空,DARPA 一辆一辆放它们出去执行任务。每辆车装了不同的警笛,各有各的「性格」。

车开出去你就看不见了。偶尔它跑得离观众区近一点,你能听见自己那辆车的声音,好像在正常往前走,这时候你会有点希望。然后它又开远了,太久听不到,你就开始焦虑。有点像送孩子去上大学。(德米特里·多尔戈夫)

结果斯坦福拿了第二,CMU 第一。

多尔戈夫在节目里主动认领了一个 bug,这个 bug 后来在圈内有了名字,叫「胜利圈」(victory lap)。赛道上有个大椭圆形,很多任务的路径点都设在椭圆附近,别的车经过时打一下卡就出去了,斯坦福的车打完卡会绕着椭圆再跑一整圈,然后才继续。

问题出在我们的系统在到达上一个路径点之前,不会开始推理下一个路径点、规划去那里的路线。等它打完卡,已经来不及做变道了,所以每次都要多跑一圈。这就是斯坦福的胜利圈。(德米特里·多尔戈夫)

这个 bug 累积下来耗掉了不少时间。关于第二名到底是他的实现问题,还是 CMU 在停车场里没按规则倒车出库、直接开了出去,他和 CMU 的人至今还有争论。他讲这段的时候顺便开了个玩笑,说 CMU 是「一所小学校,只是在机器人领域碰巧有点成就,很多人去那儿主要是看风景」。

2009 年:十几个人的两个疯狂目标

DARPA 的城市挑战赛直接催生了后面的事。拉里·佩奇和谢尔盖·布林看了比赛,相信了这项技术,Google 自动驾驶车项目在 2009 年成立。最初只有十来个人。

多尔戈夫说,当时团队对这个问题空间的理解还很初级,所以第一个目标定得很清楚:先搞清楚自己面对的是什么。为此他们给自己设了两个里程碑。

  • 在自动驾驶模式下累计行驶 10 万英里。这在当时比任何人做过的都高出几个数量级。
  • 跑完 10 条路线,每条 100 英里,每条都从起点到终点全程零人工接管。

那 10 条路线是刻意挑出来「加辣」的:一条跑遍湾区所有高速和所有大桥;一条绕太浩湖走山路;有的穿过帕洛阿尔托市中心和旧金山的密集城区。上车,按下按钮进入自动驾驶,然后一百英里不许碰。

这件事花了不到两年,大概十六七个月。

那大概是我职业生涯里最快乐的一段时间。目标就是学习和做原型,还没到做产品的阶段。你 24 小时连轴转,到处拼凑东西,而且你根本不知道这有多难,这就是关键。(德米特里·多尔戈夫)

这里有一个容易被忽略的时间差。用 2009 年的技术,十几个人,十六个月,就做到了 10 条难路线零接管。而从这一步走到顾客真的花钱坐、驾驶座真的没人,又花了十年。多尔戈夫自己点破了这个差别:做一次,和把它工程化成一个你能评估、能度量、能自信地大规模发布的产品,是两件完全不同的事。

他还给了个爬山的比喻。

有点像爬山,你看到前面那个山头,以为那就是顶了,爬上去才发现那只是旅程的开始。(德米特里·多尔戈夫)

2013 年的那次转向,放弃 L3

完成那两个里程碑之后,项目做了一个关键决定:从「研究」转向「做产品」。

但最初的方向没有一步到位。2010 年到 2013 年这几年,团队做的其实是高速公路场景,用今天的话说,接近 L3 级别的驾驶辅助。到 2013 年前后,他们对这个领域的理解足够深了,对想做的产品也想得更清楚了,于是转向了另一条路:造一个真正的驾驶员,把它放进完全无人的车里。

我们意识到,做驾驶辅助系统和做完全无人的车,是根本不同的两件事。我们选了后者,从那以后一直走这条路。(德米特里·多尔戈夫)

这个判断在 2020 年回头看,是整个行业最重要的一次路线选择。驾驶辅助的核心指标是「人机共驾时的接管体验」,完全无人的核心指标是「系统自己能处理多少长尾」。两者的技术栈、评估体系、组织形态会长成完全不同的样子,中途切换的成本极高。

转向之后是一串节点。

2015 年,世界上第一次真正意义上的公开道路全无人驾驶。用的是他们自研的车型,外形圆圆胖胖像棉花糖,内部代号 Firefly。乘客叫史蒂夫·曼恩(Steve Mahan),是项目的老朋友,恰好是盲人。车没有方向盘,没有踏板,没有前导车,没有后车,没有警车护送,路线固定但环境不受控。在奥斯汀跑了几次。

2016 年底到 2017 年初,Waymo 成立,作为 Alphabet 旗下的独立公司。理由是相信这项技术的商业前景,需要一个独立实体去规模化地做产品。

2017 年 10 月,开始常规化的公开道路无人驾驶运营。第一天就跑了一百英里。多尔戈夫强调,这个里程碑真正的分量落在「常规化」三个字上,一天一百英里只是它顺带产生的副产品。那天有一部分里程是驾驶座完全空着的,只是他们不想当天就上 YouTube 和 Twitter,所以很多趟车里还是坐了人。

2018 年,在凤凰城推出公开商业服务 Waymo One。2019 年,开始向早期用户提供真正的「仅乘客」无人驾驶行程。2020 年,完成第一轮外部融资,32 亿美元;同时第五代硬件开始上车,落在捷豹 I-Pace 上。10 月 8 日,把这个模式对公众开放。

规模化的三条轴,和凤凰城的意义

凤凰城是样机,终点在更远的地方。多尔戈夫把规模化拆成三条轴来讲。

第一条轴是核心技术,硬件加软件。 第四代硬件已经足够支撑凤凰城的全无人运营,白天黑夜、各种速度、各种天气。但第五代是为大规模量产设计的:能力上有质的提升,架构更简洁,冗余更可靠,可制造性按大规模生产来设计,单位经济性算得过来。

第二条轴是评估与部署。 怎么度量系统,怎么建立发布流程,怎么让新版本的驾驶员能带着信心定期推给整个车队,怎么把仿真、评估、数据科学、验证这一整套做扎实,让工程师不用为每次发版付出巨大代价,能把精力放在改进系统本身。

第三条轴是产品、商业和运营。 凤凰城之所以被刻意选为第一个完整部署区,就是为了把这个问题拆开、逐条去做复杂度消解和风险剥离,然后逼着自己把所有硬课都上一遍:技术上的、评估上的、运营一个服务上的、经营一个生意上的。

用户反馈里那些「不该出现的问题」最能说明第三条轴的难度。有人去超市采购,要往车里塞二十袋东西;有人骑车到某地,把自行车拆了放进车里;有人被放在了一个坐标上最近、但实际上隔着整个停车场和一排仙人掌的上车点,在 110 华氏度的高温里绕了一大圈才走到。

朴素的启发式会以很糟糕的方式失效。而且你很快会发现,可预测性和可理解性对用户体验的重要性,远远超过「最优」。(德米特里·多尔戈夫)

坐标算得更准并不解决这个问题。真正的解法是把地图做得更细,理解步行路径,理解一个大型商场里哪个出口通向哪条街;同时接受一个反直觉的结论:一个不那么优、但每次都一样、用户能预期的方案,比一个偶尔更优但行为飘忽的方案要好得多。

他们还把车「在想什么」直接显示给乘客。车来接你的路上,快到停止牌了,App 会显示它停在停止牌前;停在红灯前,App 会显示它在等红灯。技术上是小事,体验上这一步把一台黑箱机器变成了一个你能读懂的行为主体。

第五代硬件:29 个摄像头、5 个激光雷达、6 个毫米波雷达

具体规格多尔戈夫给得比较大方。第五代平台上:29 个摄像头,5 个激光雷达,6 个毫米波雷达,加一台「相当壮实」的车载计算机,实时处理所有数据、做感知、做复杂推理、做决策。

激光雷达几乎全部自研,其中一些底层技术是 Waymo 独有的。毫米波雷达和摄像头是自研加供应链合作的混合模式。计算机的细节他以知识产权为由没有展开,只确认了几个特性:冗余、通用处理的强算力、以及跑 ML 模型推理的算力。

关于成本,他的反驳很直接:雷达在大规模量产之前也很贵,技术上有了突破、开始大规模制造之后就便宜了。激光雷达走的是同一条曲线。第五代相比上一代在底层技术上做了不连续的跃迁,成本是上一代的零头,也是目前市场上现货产品的零头,而且这个改善还会继续。

埃隆·马斯克说过激光雷达是「拐杖」。多尔戈夫没有正面交锋,他换了个角度:

摄像头是被动的,激光雷达和毫米波雷达是主动的,用的波长也不同,它们在物理层面上差异很大,正好互补,合起来能造出更安全、能力更强的系统。所以我更想问的是,当这些传感模态明明能让系统更强更安全的时候,你为什么要让自己残废。(德米特里·多尔戈夫)

他也承认,做驾驶辅助和做完全无人的车,设计取舍本来就不一样,一个产品的合理选择未必是另一个产品的合理选择。这句话留了余地,立场却很清楚。

至于「激光雷达难看」这个说法,他的回应是「美在观者眼中」,然后主持人开始吐槽保时捷 911 像婴儿车,两个人在这件事上没达成任何共识。

机器学习能吃掉驾驶的多少

这是整场访谈里技术密度最高的一段。

多尔戈夫先把两件事拆开:传感模态的选择,和 ML 在软件栈里的角色,是两个独立的问题。激光雷达、毫米波雷达、摄像头,上面跑的全是机器学习。自研的激光雷达和雷达不只输出物体的点估计,它们给出的是原始的物理观测,连同丰富的辅助信息,一起喂进大模型,做检测、分类、状态估计。

过去十年这个领域的一个明显趋势是融合的时机越来越早:早年是每个模态各自做逐帧检测,再在一个工程化的接口上做弱融合;现在更多是联合融合、联合训练,让信号在不同阶段之间前后传播。

他并不认为「端到端」要一路走到底。

最纯粹的那种解释,一个模型从原始传感器数据直接输出转向力矩和油门刹车,那太过头了,我不认为那是对的路径。(德米特里·多尔戈夫)

他给出的理由是模块化和可分解性的价值。系统要能被理解、被评估、被验证,就不能把所有东西塞进一个黑箱。但同时也不能把接口设计得太窄太脆,否则会牺牲解的通用性,也会挡住梯度信号的前后传播,让整个系统没法联合优化。这个平衡点是设计上的核心难题。

他举了红绿灯的例子,这个例子把「该用 ML 的地方」和「不该用 ML 的地方」划得很清楚。

检测红绿灯的状态,是计算机视觉的看家本领,喂原始数据、上大模型,这是 ML 该干的。但「红灯意味着停车」这个语义,不需要用一个模型去推断,它是一个语义极其清晰的工程信号,应该作为约束或者代价函数直接注入系统。

真正难的是另一半:别人理论上该停,不代表他会停。判断对面那辆车会不会闯红灯,靠的是对物体行为、行人、骑行者、整个场景配置的细微线索的捕捉,这里又回到了重度 ML 的领域。

然后是一条关于精度与召回的曲线,这条曲线能解释这家公司很多技术选择。

你有一条精度和召回的曲线,很容易在曲线上滑动,选一个更保守或者更激进的操作点,调调误报和漏报的比例。但调参只是在同一条曲线上挪位置,激进不好,保守也不好。真正的能力提升是把整条曲线往上推,然后你就站在一个完全不同的取舍平面上。(德米特里·多尔戈夫)

他还提到一个有意思的跨领域连接:语言模型里的 transformer、GPT-3 那一类突破,正在被用到行为预测和决策规划上。理由是驾驶轨迹和语言在结构上高度相似:都是序列,都有很强的局部性(相邻的词、相邻的时刻强相关),但也都有超出局部范围的全局上下文(整句话的意思、整个场景的态势)。这个类比属于建模思路,没有停在修辞层面。

一个骑自行车的人摔进了车道

关于行人安全,他讲了一个凤凰城的真实案例。

一条限速 45 英里每小时的多车道道路,车在右侧车道,人行道上有个女人骑着自行车。车靠近的时候,她绊了一下,摔倒,直接倒向车道。

那次车上坐着测试司机,他们反应完全正确,猛打方向加上大力刹车,把车停住了。后来我们用仿真回放了这个场景,看系统会怎么做,结果它做了一模一样的事。(德米特里·多尔戈夫)

这个案例的技术含量在于它同时压测了整条栈:状态估计和跟踪要在人和车分离、两个物体朝相反方向飞出去、外观持续变化的几百毫秒里保持准确;感知要在极短时间内识别出「人在摔倒」这个非标准姿态;规划要在毫秒级做出转向加刹车的复合动作,而且要顾及旁边的车流。

他还提到一个容易被忽略的硬件优势:在漆黑的居民区小路上转弯,车灯照不到的那片空间里可能跑出一个孩子。激光雷达在完全黑暗中的表现和白天一样好。有些情况下,系统比车里受过训练的操作员更早发现目标。

关于那个经典的「电车难题」,他的回答没什么犹豫:

那个问题本身是个深刻的哲学问题,因为人类自己也答不上来,这正是它的意义所在。但就系统怎么建而言,它不是你会遇到的东西。而且很多时候,你本来就不该让自己进入那个局面。造一个足够好的、防御性驾驶的司机,你会提前在环境里看到足够的线索,从而不把自己放到那个位置上。(德米特里·多尔戈夫)

他还补了一句更锋利的:人类在这种场景下往往因为多花了几毫秒去处理而僵住,最后做出所有可能结果里最差的那个。

卡车:换的是场景,不换的是难题

Waymo 有两条产品线。Waymo One 运人,Waymo Via 运货。卡车业务从 2017 年开始做。

多尔戈夫认为两个域共享的东西比差异多得多:感知、语义理解、预测、决策、规划、评估、仿真、ML 基础设施,这些真正难的问题全部通用。不同的是数据和具体场景。硬件上,卡车两侧各装一个主激光雷达来消除盲区,I-Pace 上是顶上装一个,但传感器本身基本一样,多年来自研激光雷达和雷达的投入可以直接迁移。高速场景下探测距离变得更重要,底层能力还是那套。

他顺带把「车在路上跑」拆成三种形态:运人、运货、空车。第三种在商业上没什么吸引力,但从系统角度看,空车和载人车的驾驶策略一阶近似上没有区别。理由很简单:开得平顺不只为了车里的人和货,也为了让车外的其他人能自然地、可预测地把你当成环境的一部分。真正的差别是二阶的,比如路径规划和车队层面的调度优化。

不做远程操控,但人在环里

很多人以为无人车背后有个远程司机在开。多尔戈夫明确否认:Waymo 不做远程操控(teleoperation)。

人在系统里扮演两个角色。第一个是乘客侧的客服:第一次坐全无人车的人满脑子问号,车里有屏幕和语音引导,还有一个按钮,按下去能连到真人,聊整个过程。第二个是车队协助,他自己把它类比成「交通管制」:所有跟安全、跟延迟相关的决策,全部由车上的系统独立完成,不依赖连接。但在极端异常场景下,比如一个非常棘手的车祸现场,如果当时有网络,车可以向人类助理请求确认,让对方提供一些上下文信息。

这两件事的分界线画得很清楚:能连就连,连不上也必须能安全运行。这也是为什么他强调每辆车本身必须是一个完整的、独立的、有能力的驾驶员,车与车之间的信息共享是加成,做不成前提。

至于车队之间的实时通信,现在的用法是把一辆车遇到的异常立刻上传、广播给整个车队,比如事故、新的施工区。他把地图理解成「分布在整个车队上的先验知识,并且实时更新」。密度上来之后可以做的事更多,比如交换各自的规划意图来影响彼此的行为,或者共享高度动态的观测。底线不变:车必须能独立活下来。

关于「驾驶要不要凶一点」

访谈里有一段讨论挺有意思。主持人问,人类司机开车时常常会「稍微试探一下规则」,比如在停止牌前滚动通过,或者在路口抢一个时机,这种带一点攻击性的驾驶其实是在向周围宣示存在感,让别人尊重你的位置,从而更顺畅地穿过路口。无人车如果太守规矩,会不会显得太「软」?

多尔戈夫的回答把「攻击性」和「效率」拆开了:

你当然可以滚过停止牌,可以做疯狂的变道,但这么做通常并不能让你更快到达目的地,通常也不是最安全、最可预测、最舒服的做法。真正的专业司机是另一种样子:他们守规则,动作非常平滑,同时又非常高效,而且很果断。对车里的人舒服,对车外共享环境的人可预测。我们要造的就是这种司机。(德米特里·多尔戈夫)

他打了个体育的比方:任何运动里真正的高手,动作都是省掉的,没有多余的手忙脚乱,平滑、精确,然后拿到最好的结果。所谓「攻击性」,在他看来更像是多余的装饰,驾驶这项技艺并不需要它。

主持人自己也承认,他以前编过自动驾驶的程序,写出来的东西要么过于激进,要么别扭地过分谨慎,而坐在 Waymo 车里那次体验是「果断而高效」,没有那种「快点走啊」的焦躁感。他说这可能是俄罗斯人的思维定式在作祟:总觉得在生活里不打破规则就到不了任何地方,但在开车这件事上,也许真有一种不必如此的活法。

他读的三本书

第一本是《大师与玛格丽特》,布尔加科夫。

这是我个人最喜欢的书之一。你可以一辈子反复读,而且非常容易进入。小时候读,情节有趣,魔鬼造访苏联;在不同的人生阶段重读,你会为完全不同的理由喜欢它,并且不断发现更深的东西。(德米特里·多尔戈夫)

他说这本书对他的影响主要落在文化和风格上:它让你思考,同时又带着一种非常荒诞、古怪、黑暗的幽默感,比其他很多书都更抓住了俄罗斯人的精神内核。他只读过俄文版,自己也不确定它能不能翻译得动,一部分是语言,一部分是几百年的文化差异。

第二本是斯特鲁加茨基兄弟的科幻。他的评价是:地位和阿西莫夫、布拉德伯里在一个层级,对他成长的影响更大。他列了一串书名:《路边野餐》《上帝难为》《蚁巢里的甲虫》《周一从星期六开始》。

那不只是科幻,里面还有非常有意思的人际和社会问题,而且有些语言就是纯粹地好笑。(德米特里·多尔戈夫)

《周一从星期六开始》讲的是一个研究所,做的事却是魔法,跟严肃科研有很深的平行关系;《上帝难为》讲的是一个更高文明的社会被注入一个原始世界,人在里面怎么操作,伦理问题非常深。他说小时候某个生日收到一整套,占满房间一整排书架,假期里父母没法把他从房间里拖出来,他从头读到尾。唯一没读懂的是《山丘上的蜗牛》,试了几次还是没懂,其他全部读得很享受。

第三本,奥威尔的《1984》。他说这本既是「影响过我的」,也是「人们应该读的」。

你会读完,把书放下,然后盯着空气发一会儿呆。里面有人们不该忽视的教训。现在这个世界上发生的事,让我忍不住会想到奥威尔描述的那些平行之处。(德米特里·多尔戈夫)

他提到「双重思想」这个概念:一边忽略逻辑,一边在脑子里同时持有完全矛盾的观点而不觉得难受,无条件地忠于路线。然后他把话题拉到 2020 年。一个乐观主义者在这一年里最心疼的领悟,是社会本身很脆弱。那是人类搞出来的一个很特别的小实验,它并不牢不可破,需要人们小心去维护。

我觉得它不是一把火烧掉的那种方式,很多时候它更像是温水慢煮。这才是危险的地方。(德米特里·多尔戈夫)

主持人接了一句「爱和机器人」,说相信爱会在某种程度上成为解法。两个人在这件事上达成了某种默契。

生命的意义,和一个阿西莫夫的短篇

被问到「生命的意义是什么」,多尔戈夫先想到的是阿西莫夫的《最后的问题》。

那篇短篇的情节是:人类造出一台超级计算机,等它足够强大,人们问它一个问题,宇宙的熵怎么才能减少。计算机回答:目前信息不足,无法给出有意义的答案。几千年过去,同样的问题反复被问,计算机越来越强,回答始终一样。几百万年、几十亿年过去,它吸收了全部人类和宇宙的全部知识,成为宇宙中唯一的实体。等到它终于有能力回答那个问题时,热寂已经发生,没有人还在听。它唯一能做的回答方式是演示:重新点燃一次大爆炸,把时钟重置。

然后他给了自己的版本。

我不敢代表全人类谈生命的意义,那太自以为是了。对我个人来说,它是会变的。你刚来到这个世界上,驱动你的全是新的体验:新的气味、新的声音、新的情绪。然后你开始有意识地学习,理解的快乐和发现的快乐开始驱动你。学够了之后,你想把一些东西给回去,影响力和贡献成了新的动力来源。再往后,如果你有了孩子,那会直接翻掉你脑子里的某些开关,你会重新排序什么重要、什么不重要。我有三个孩子。(德米特里·多尔戈夫)

他希望这些东西是累加的,不要互相替换或者彼此消减。他不希望自己停下体验新事物,也不希望自己停下玩。

一个造无人车的人,用一篇关于热寂和重置宇宙的短篇来回答生命的意义。这个组合本身就挺说明问题:他习惯的思考尺度非常大。

十一年里真正重要的那几个岔路口

把时间线摊开看,决定性的东西很少落在某一次技术突破上,更多落在团队每个路口选的那条路。

2009 年选的是「先搞清楚问题有多大」,没有去追一个能拿出去演示的东西。那两个里程碑(10 万英里累计、10 条百英里零接管)设计得极其狠,狠到用当时的技术也只花了十六个月。也正因为只花了十六个月,他们才真正看见后面还有多远。

2013 年选的是「造一个完整驾驶员配完全无人的车」,放弃了当时看起来更近的高速公路驾驶辅助。这条路走得更慢,走成的却是一家能收费运营、驾驶座真的空着的公司。

2017 年选的是「开始常规化无人运营」,没有再多测几年等一个完美的时机。第一天一百英里,真正的分量落在「常规化」三个字上。

然后是凤凰城。它被刻意选成第一个完整部署区,那里并不好做,但它足够大、足够真实,逼着团队把评估、部署、运营、商业这几条线一次性全走一遍。走到今天,它的作用是把凤凰城变成一个可以被复制的模板,一个专供参观的样板间很难承担这个任务。

多尔戈夫在访谈里反复回到同一条精度与召回的曲线。调参数、选操作点、在保守和激进之间挪位置,这些动作都只在同一条曲线上滑动。真正的能力提升,是整条曲线抬起来,然后你站在一个完全不同的平面上做取舍。

把这句话从技术挪到公司上看,会得到一样的结论。这个行业里绝大多数争论发生在同一条曲线上:要不要激光雷达、要不要高精地图、要不要端到端、要不要做 L3。Waymo 的回答始终是:这些是可以讨论的取舍,决定性的那个问题不在它们中间。决定性的问题是你有没有能力让整条曲线上去。

如果要给读到这里的人留下点什么

这场访谈的信息量很大,落到可以带走的东西上,其实有几条很具体。

  • 判断一个技术团队是不是真的在进步,看它有没有在「抬曲线」,还是只在「挪操作点」。挪操作点很舒服,可以立刻讲出一个好看的故事,但它不产生能力。
  • 遇到一个反直觉的工程结论(比如「不那么优但可预测的方案更好」),先别急着反驳,去看它在谁的约束下成立。可预测性之所以重要,是因为用户需要在脑子里建模你的行为。
  • 设计系统时,主动区分哪些东西该交给学习,哪些东西该写死。红绿灯检测交给模型,「红灯要停」作为语义约束注入。模糊的地方交给学习,明确的地方交给工程,这条分界线越早画清楚,后面越省事。
  • 任何一个环节,都问一遍「如果连不上网,它还能自己安全运行吗」。能不能依赖外部,和该不该依赖外部,是两个问题。前者决定架构上限,后者决定风险边界。
  • 评估一个自动化系统,重点不在它能做到什么,而在它做不到的时候你怎么知道。仿真、回放、长尾采样、假设推演,这些不产生演示效果的工作,才是决定你能不能规模化的地方。
  • 如果要做一件长期的事,先给自己设一个足够狠、又足够短的早期里程碑。它的用处在于让你尽快看清后面还有多远,证明自己能成倒在其次。
  • 读一点结构上跟你工作相似、但领域完全无关的东西。他是从语言模型的序列结构里找到驾驶轨迹的建模思路的。跨领域的类比,往往比本领域的论文更能打开局面。
  • 最后一条,来自那个想做交通警察的孩子:真正让你走到今天的,常常是童年某个看似毫无意义的迷恋。它未必通往你当初以为的地方,它会一直给你一种别人没有的注意力的方向。

2020 年 10 月 8 日之后,凤凰城东谷的街上,一辆没有人的车在跑。它守规则,动作平滑,遇到人行道上摔倒的骑车人会同时打方向和踩刹车,停在停止牌前的时候会在你的手机上告诉你「我在等停止牌」。

它背后是十一年,是一堆在凌晨三点被锥桶绊住的 bug,是一个把规则背得太认真、每圈都多绕一次的胜利圈,是一群在岔路口每次都选了更难那条路的人。

而这件事的意义,可能真的要放到几十年后回头看才能称量清楚。一个 AI 系统在毫秒之间做出转向和刹车的决定,从而救下一个人的命,这件事在 2020 年已经发生过,只是没有成为新闻。

本集资源与出处