人类与机器人如何合作,是我们当下乃至未来面临的一个至关重要的问题。
载人、遥控和自主技术共同演化,三者之间的界线逐渐模糊。
“水下机器人先驱ABE去世,享年16岁。”
——《纽约时报》,2010年3月15日
自主型深海潜水器(ABE),是唯一由《纽约时报》为其刊登讣告的水下机器人。它是一台大小与小型汽车相仿的机器人,是为完成深海探测而设计的。
事故发生在智利海岸线以外的深海之中,原因可能是海水的压力作用导致水下机器人ABE的耐压舱发生内爆。1996年,水下机器人ABE首次执行海底测绘任务,至事故发生时,正在执行第222次下潜任务的ABE已经处于“半退休”状态。人们决定用更先进的水下航行器“哨兵”号来取代它。水下机器人ABE的毁灭令当时正在附近一艘海洋调查船上监控它的发明者们心情沉痛,但这次事故本身也证明了ABE的价值,因为没有一个人在这次事故中丧生。
1989年,我在伍兹霍尔海洋研究所工作时,参与的就是水下机器人ABE项目。最初,水下机器人ABE接受的任务是下潜至热液喷口群附近的海底,然后利用某种锁扣装置,长期停留在那里。按照计划,ABE会定期“苏醒”(也许是一个月里每天一次,或者是一年里每月一次),对热液喷口区进行精密勘查,测算数据,拍摄照片,记录异常地质特征与生态系的兴衰过程。在完成了ABE早期的计算机设计工作之后,我转而从事其他项目,ABE项目的主要参与者戴纳·约杰、巴里·瓦尔登和艾尔·布拉德利则留下来,小心地呵护着ABE走过漫长的成熟期。
但是,ABE从未执行过当初设计的任务,而是以前所未有的精度绘制了海底世界的地图。也就是说,它一边沿着笔直的航迹线在宽阔的海底世界来回运动,一边收集海量的地形数据。约杰回忆说:“我们在设计的时候从未想过让ABE沿直线运动,但是我们必须根据具体情况调整我们的计划。”当时,科学家们希望把宝贵的资金用于绘制适合地质勘查的地图,于是ABE团队做出了相应的调整。
ABE并不是载人潜水器“阿尔文”号的替代品,而是与后者一起发生了某些演变。巴里·瓦尔登是ABE团队的三名主要工程师之一,也是伍兹霍尔海洋研究所“阿尔文”号团队的负责人。ABE在执行早期下潜任务时,大多是跟随“阿尔文”号一起出海的。夜间,“阿尔文”号在母船甲板上充电,ABE则离开母船执行下潜任务。有一次,ABE无法返航,“阿尔文”号还参与了救援工作。
在1999年前往东太平洋海隆执行任务的途中,他们驶过复活节岛两天之后,麻烦就接二连三地出现了。约杰本来计划跨越洋中脊测量并集合一批聚磁数据。但是,工程师出身的地质学家比尔·瑞安一再要求约杰不要仅限于局部测量,而是安排ABE完成更多的系统勘查。ABE下潜到2 600米(接近8 500英尺)的深度,在崎岖不平的火山地形上方约20米(65英尺)的水域中前进,同时采集声呐数据和影像资料,并于天亮前返回海面。约杰发现,如果动作快,他还有足够的时间下载数据、绘制地图、完成初次剪辑,并在科研人员于第二天上午乘“阿尔文”号潜入海底之前,将打印好的地图交给他们使用。
由于时间还有剩余,约杰就将8次下潜任务的航迹线集中到一幅地图上,覆盖了1公里×4公里的海域。约杰至今还记得,在他将这幅地图递给冰岛地质学家卡尔·格伦沃尔德的时候,他忐忑不安地问道:“你看这幅地图怎么样?”格伦沃尔德没有吭声。约杰回忆说:“所有的地质学家几乎都这样。如果你递给他们一幅地图,而他在两分钟之内一言不发,就说明你打动他们了。”格伦沃尔德没有吭声,是因为他正在分析地图的一致性、样式和地质特征等细节。然后,他抬起头看着约杰,说道:“我已有的所有冰岛地图都比不上这一幅!”就这样,自主机器人通过向人类科研人员提交数据,证明了自己的价值。
有史以来,第一次科学家们可以拿着一幅真正的地图,乘坐“阿尔文”号下潜到海底深处探测崎岖不平的火山地形。回想过去,人们数百次乘坐“阿尔文”号前往热液喷口区,竟然没有人绘制这些地域的地形图,这确实让人费解!自主机器人提供的量化地质测绘图,为“阿尔文”号的浸入式野外地质勘查做出了贡献。
在取得这次重大突破之后,ABE在随后10多年的时间里又完成了更多的地质测绘工作,在导航精度、数据密度和图像质量等方面不断进步。它的温度与化学传感器甚至能探测到从热液喷口升起的热液柱,因此,2004年,约杰和同事们想出了利用这些数据引导ABE发现新热液喷口的方法。
图6–1 正在热液喷口区上方沿着勘查航迹线进行深海精密测绘数据采集的自主型深海潜水器(ABE)。图中是ABE利用扫描声呐探测热液柱的情形,ABE后方的阴影线表示它测量的温度和化学数据
图片来源:华盛顿大学环境可视化中心。
接替ABE的水下机器人“哨兵”号就是针对这个任务设计的。在2010年“深水地平线”漏油事件发生后,“哨兵”号利用与ABE相类似技术,对马康多深水井喷出的水下油柱进行了测绘。结果显示,大多数的溢出石油并没有被海水冲上岸,而是悬浮在海面下,形成了一片巨大的“云”。
水下机器人ABE的自主性是如何形成的呢?在勘查一些复杂地形时,“杰森”等遥控机器人面临着重重困难,在这种情况下,“阿尔文”号有可能遭遇危险,而ABE不带电缆,操控非常自由,因此可以抵近勘查。ABE身上有大量的巧妙设计,就是为了让它避开所有障碍,安全地完成任务并顺利返航。在遇到麻烦时,它也有办法浮出水面并请求帮助。不过,它的基本航径都非常简单,通常是沿着笔直的航迹线前后运动,以最大可能地覆盖整个区域,确保不留死角。就像我们前面设想的登月机器人“跳跃者”思维实验一样,探索活动实际上仍然是由科研人员完成的。他们通过仔细阅读各类资料,解释测绘数据的含义,来实现远程临场。
而且,随着声学通信技术不断进步,ABE深海探索的自主性实际上正在逐渐减弱。在水下机器人ABE完成的早期下潜活动中,它偶尔会发出声学脉冲信号来表示自己仍然在正常工作,或者海面上的人发出一个声学编码以取消任务,除此之外,就再也没有人力投入了。工程师里奇·卡米利回忆说:“我们还可以查看水面追踪仪。除此之外,我们没有其他办法去了解海面下的情况。”
不过,水中传递数据的能力逐渐得到了发展。老式的电话调制器可以把计算机数据转换成一堆“毕毕剥剥”难听的声音,而水下声学调制解调器则可以类似方式和差不多的速度,在水下将数据包传递至几千米以外的位置。通过这些调制解调器,ABE等自主遥控机器人可以上传文本信息等数据包,报告自身状况、导航信息、下潜深度、电池续航时间,甚至还可以上传传感器探测的科研数据和图像等。与此同时,海面上的科研人员也可以通过向水下机器人发出新指令的方式,调整探测活动的计划安排。
在2009年的一次下潜活动中,ABE的机载主导航陀螺仪发生了故障。为了继续执行这个颇具价值的潜水任务,海面上的工程师通过速度很慢的链路,用“操纵杆”向水下机器人发出一些简单的指令,指挥它每次沿着某个方向前进几米(与20世纪70年代苏联工程师通过操纵杆指挥Lunokhod月球漫游车的方式非常相似)。接下来,科研人员需要考虑的问题不是如何增强系统的自主性,而是如何设计新的显示装置和算法,进行实时数据分析。
与地球到火星的通信一样,水下声学通信也有局限性。比如,水下声学通信的带宽非常有限,只是寻常咖啡店无线保真(Wi–Fi)带宽的零头,通信的时滞要以秒为单位来计算,与从地球发射无线电信号到月球上所需的时间差不多,甚至更长。尽管ABE与“哨兵”号的操作人员希望与水下机器人始终保持联系,但是在长时间的下潜任务中,他们宁愿将母船开走,去完成其他工作。在这种情况下,水下机器人的自主程度就更高了。
即使水下机器人在整个下潜过程中都不与人发生联系,它们依然会定期回到母船上。在水下机器人下潜到海底时,工程师们往往认为这时自主机器人技术就开始发挥作用了。但是,从广义上看,探索系统是由载人机器(船)和无人驾驶机器构成的,后者被前者派出去之后,就进入了自主作业阶段,直到它再次回到前者那里,以交换数据、获取能量和接受指令。就像法航447号航班的搜救工作一样,自主机器人的工作是周期性的,需要人类的定期调整,同时对位置、带宽以及一系列其他因素都有依赖性。这些情况再一次说明,自主机器人技术离不开具体的情境。
詹姆斯·金塞是深潜实验室的一名年轻的工程科学家。刚到实验室工作时,他踌躇满志,希望研发出自主性更高的机器人。他建立了越来越复杂的模型,模拟从热液喷口喷出的热液柱向整个海洋蔓延的情景,并试图指示机器人根据传感器微妙的探测结果下潜到海底,勘查这些热液喷口。不过,随着时间的推移,金塞发现,“为机器人赋予过高自主性的做法可能从一开始就有问题”。海洋探索的特性决定了他们必然会遭遇任务界定模糊、环境复杂多变等问题。事先编好的程序相当于一个个假设,是模拟世界运行规律的模型,但是在现实环境中,这些模型却未必有效。金塞说:“我想,这种做法或许是没有找准自主机器人技术的关注点……我们要求机器人掌握周围环境的大量信息,这个要求可能太高了。”自主机器人技术的抽象概念与实际应用之间的碰撞,曾经令那位火星漫游车工程师莫名惊诧。无独有偶,金塞也有相同的感受。
金塞发现:“让机器人自己做决定会有很多问题,比如,我们无法随时了解它到底在干什么。即使你在监控它,有时候你也会感到莫名其妙: ‘咦,它怎么突然向西南方向游弋了?这是出故障了,还是它做出的一个决定啊?’”深海探索耗资甚巨,即使自主机器人没有载人,也不能轻易放弃它。金塞认为:“人们都关心自己的资产。如果这些资产很昂贵,他们就会更加关心。”
而且,通信技术绝不会止步不前。比如,光通信技术越来越切实可行。光通信的主要手段是LED,通过高速闪烁在水中传输数据。在百米上下的短距离内,它们可以实现与Wi–Fi相媲美的传输速度。拥有这种技术的船只可以悬挂一只光调制解调器,让它像街灯一样悬浮在深海中。接着,自主机器人可以通过光通信迅速上传数据。或者,海面上的人也可以在机器人进入视距范围内的时候对它实施远程控制,在它离开这个范围或者光链路中断时则任它自由行动。在这种情况下,自主程度随着位置和带宽的变化而变化。
总体来说,载人、遥控和自主水下机器人之间的界限正在不断模糊化。目前,工程师正在设想多种机器人协同工作的海洋探索前景。这些机器人有的是载人的,有的是遥控或者自主型的,而且可以随时切换模式。“阿尔文”号在最近一次升级的过程中安装了为自主机器人设计的软件,也许有一天它可以通过光纤电缆同海面上的人取得联系,甚至还可以变成无人水下机器人。
工程师们面临的难题是协调所有机器,让科研人员了解内情,确保机器人的行为体现的是人类的意图。有的机器人拥有光纤电缆等高带宽数据传输渠道,有的机器人的数据传输渠道则受到诸多限制。有的机器人迂回到某个节点附近,快速发送所收集的数据后会再次潜到海洋深处。所有机器人都会根据人类程序员事先编好的程序,或者按指示采取某种行动,或者自行做出某些决定。
在这个新兴世界里,我们可以把自主性看作海洋中的一个形状奇怪的三维云团,有一些机器人正在其中往来穿梭,或进或出。接下来,假设ABE是你的爱车,这团三维“自主性云团”是你居住的社区。在某些位置、某些场合,例如,在公路车道内,或者在一个车队中高速行驶时,你的爱车可以拥有某种程度的自主性。而在其他场合,例如在离信号基站比较远,或者当汽车传感器被冰雪遮盖时,它的自主能力有所减弱,驾驶员需要更多地参与驾驶活动。在驶进、驶出这个云团时,你会根据情况随时打开或关闭自主驾驶模式。
的确,无人驾驶汽车(如果100年前的人没有用“automobile”这个词表示“汽车”,用它来表示无人驾驶汽车倒是非常贴切)的前景引发了无数人对自主性技术的热情和争议。谷歌公司是这个领域最具代表性的参与者,举行过一场组织严密的宣传活动。(谷歌公司的研究大多有专利保护,因此我们在评估它的程序时只能依赖于公开评价。)
几十年以来,汽车制造商一直不停地为自己的产品添加各种自主功能,包括自动变速器、定速巡航、防抱死制动系统等。我家的沃尔沃汽车装有一款软件,只要探测到汽车即将发生碰撞,就会自动紧急制动。(在驾驶这辆车时,我必须充分信任这款软件。)总的说来,汽车制造商会不断采用增量方式,将自动功能作为“安全性”(而不是作为自主性)推销给消费者。梅赛德斯–奔驰汽车公司发布了一款概念车,车的内部被设计成“移动起居空间”。在自主驾驶时,车里的人可以阅读,可以休息。不过,与谷歌无人驾驶汽车不同的是,在梅赛德斯公司的设想中,“乘客在虚拟与现实世界中同汽车建立了相互依存的关系,并且可以方便地相互影响”。谷歌一直宣扬的则是一种完全自主的设想。谷歌的一位工程师在比较谷歌与其他公司在处理方法上的异同点时说:“其他公司制造汽车的理念是帮助驾驶员更好地驾驶,而谷歌的理念是制造驾驶水平优于驾驶员的汽车。”拼车出行领域的巨头——优步公司近期从卡内基–梅隆大学雇用了大量机器人专家,显然是为了提升汽车的自主驾驶水平。
自2009年以来,谷歌就开始在加利福尼亚的公路上测试自主驾驶汽车,并且声称已经完成了数十万千米的无事故公路驾驶。这些自主驾驶汽车的行驶路线是根据谷歌公司有人驾驶勘查车绘制的地图确定的,对于这些汽车来说,这些地图相当于虚拟轨迹(如果没有这些翔实的地图,这些汽车根本无法独自上路)。在进行驾驶测试时,车上坐有人类安全驾驶员和软件专家,可以打开、关闭自主驾驶系统。谷歌工程师纳撒尼尔·费尔菲尔德说:“我们的想法是由人将这辆车开到高速公路上,然后打开这套系统,在旅程的大多数时间里(也是最无聊的时间)让汽车自主驾驶,最后再关闭系统。”
在亲身体验了一次之后,《纽约时报》的约翰·马尔科夫断言:“从总体来看,用计算机系统来取代人类驾驶员是可行的,这有可能大幅度减少人类驾驶员出错的可能性。”对于谷歌希望将美国公路交通事故伤亡人数降低至1/2的目标,马尔科夫可能是持赞同态度的。谷歌公司对这个项目的宣传折射出软件系统中常有的硅谷式乐观主义。该项目的首席工程师、机器人专家塞巴斯蒂安·特伦对未来的自主型系统满心憧憬:“再也没有交通事故,也不会发生交通拥堵。”
一些持批评意见的人指出,谷歌的自主驾驶观点存在局限性。驾驶测试大多是在加利福尼亚北部和西部诸州完成的。在内华达的汽车驾驶测试虽然取得了成功,但在驾驶时谷歌公司设置了严格的条件,要求天气必须晴朗,路线必须简单易行(谷歌还拒绝披露安全驾驶员关闭自主驾驶系统的详细信息)。在通过建筑工地时,算法难以胜任驾驶员的职能,只能由安全驾驶员来驾驶汽车。不久前,科技记者马克·哈里斯说,要想成为一名安全驾驶员,可能需要先接受几个星期的培训,这说明由计算机驾驶转变为人类驾驶的过程非常复杂,而且具有危险性。
汽车商业广告和谷歌驾驶测试的地点都是在广袤的美国西部,而城市驾驶的情况则截然不同,往往是在混乱、复杂和动态的物理与社会景观之中穿行,因此会发生大量的社会交互。谷歌承认城市驾驶的难度是公路驾驶的10~100倍。事实再一次证明,有人环境中的问题难度远远大于抽象环境中的问题。
麻省理工学院的约翰·伦纳德参与过一些无人驾驶汽车的定位和测绘基础算法的研发工作。他指出,无人驾驶功能可以完成的工作量,取决于社会交互。我的一位已经过世的老朋友、机器人专家赛斯·泰勒敏锐地发现,城市驾驶中包含数以百计的“短时人际社会契约”,例如扫视街道、视线接触、让人上车、挥手致谢等。在为物理世界和不同物体分配标签这个方面,计算机的学习速度比较慢。正如“捕食者”无人机飞行员证明的那样,以类似方式理解人类身份和意图的技术仍然比较原始。
伦纳德半开玩笑地说,波士顿可以被看作一个极端的驾车环境。他在仪表盘上放置了一个摄像头,用于收集算法难以处理的驾驶问题,包括在交通高峰期并入一条车流量很大的道路,在灰尘或风雪影响视线的情况下保持在车道内行驶,越过几个车道左转弯等。2015年冬,波士顿遭遇大雪天气。由于道路两边堆积了9英尺(约2.7米)高的积雪,而且交通模式也发生了变化,因此,城市驾驶的三维图像一夜之间就发生了显著变化。
我们在极端环境中取得的经验,对未来可能实现的自主型汽车是否有启示作用呢?在我们研究过的一些环境中使用自主技术时经常会出现一些问题,包括系统故障、用户技术水平参差不齐、注意力管理问题,以及人们过度依赖自动化系统所导致的操作技能下降与自动化偏见增强的问题,而且所有问题都会对无人驾驶汽车产生影响。
无人驾驶汽车需要面对的最大难题是,自主驾驶与人类驾驶模式的转换(我们可以称为“法航447号航班问题”)。在传感器等部件发生故障,或者现实中出现意想不到的情况时,任何关系到生命安全的系统都必须备有相应的处理办法。系统越复杂,发生异常情况的可能性就越大。尽管这些异常情况的发生频率可能非常低,但每天美国人驾车出行的次数超过10亿次,是每天起落航班数的10 000多倍。
谷歌的无人驾驶汽车可能会识别无法处理的情况,并发出警报,让人类驾驶员接管汽车。车上还装有“自主驾驶故障”指示灯(与现在汽车上长期不亮的“发动机故障”指示灯非常相似,尽管它需要的信息远多于后者)。如果在汽车高速行驶时,该指示灯打开,那么我们如何在极短的时间里做出应对呢?如果摆脱了驾驶疲劳的人正在睡觉或者看书,他能不能迅速进入状态,躲开迎面驶来的车辆、路面上的凹坑或者剐蹭事故呢?
在遇到这些难以应对的驾驶问题时,无人驾驶汽车的驾驶员也要面对法航447号航班飞行员曾经面临的挑战。我们在前面讨论过一些身处极端环境的操作人员。与之不同的是,汽车驾驶员接受的相关训练比较少,而且在身体能力、技术水平以及社会经济和教育背景等方面,彼此之间的差别非常大。虽然同样是富有挑战性的环境,但是深海、天空和外太空等极端环境相对来说比较“干净”,而驾驶环境的零乱程度与不确定性都远超前者。
可能是为了回应这些批评意见,谷歌调整了自己的自主驾驶观念,剔除了驾驶员这个惹麻烦的角色。工程师纳撒尼尔·费尔菲尔德说,谷歌发现“人有懒惰的毛病”,而且“他们的态度多变,从有几分道理的怀疑到彻头彻尾的盲目相信,应有尽有”。通过实验,谷歌认为人类驾驶员不值得信任,无法同软件密切合作,因此他们把软件修改为驾驶员零干预模式。据估计,有93%的交通事故是人为过错导致的,因此谷歌工程师提出了“懒惰的驾驶员”这个说法。(不过,人因专家早就认为人类的过错常常是系统设计和工作方法欠佳造成的。)
2014年,谷歌推出了新款无人驾驶汽车。从设计来看,这款车似乎对公众非常友好,而且不会构成任何威胁。为了降低危险性,车速设计得很慢。车上没有安装方向盘和仪表盘,也没有为人类驾驶员提供任何指令输入渠道。用项目主管克里斯·乌尔姆森的话来说,谷歌公司的目标是“制造出可以承担所有驾驶责任的汽车”。这些全自主型汽车将“在无须人类干预的前提下实现安全的自主驾驶”。
这款新车的操作界面只包含点火和熄火这两个按钮和一个路线显示屏。(人们难免会疑惑:驾驶员有什么办法可以让汽车知道目的地呢?)驾驶员变成了乘客,唯一可以做的事情“就是好好放松,享受旅程”。费尔菲尔德说:“这款汽车有备用系统,不需要人类驾驶员的帮助。它有两台转向电动机。要让车停下来,我们有很多办法。”打开YouTube视频网站上的一些视频,在轻松愉快的音乐声中,我们可以看到一些盲人、残障人士和老年人乘坐无人驾驶汽车,沐浴着加州的和煦阳光,在洁净开阔的道路上纵情享受的情景。
方便残障人士和老年人出行自然值得称道,但是谷歌的新方法带给人们的却是一种倒退,是错失良机。具有讽刺意味的是,作为一家高科技公司,谷歌竟然沿用了20世纪的老套辞令,把驾驶员再次假设成为一个被动的观察者,这不能不说是一种倒退。可以看出,20世纪关于机器人与自动化的三个错误观点在他们的“新”方法上都有所体现:(1)汽车技术必然会朝着彻底自主的方向发展(线性发展观);(2)自主驾驶系统将把人类驾驶员从驾驶任务中剔除出去(取代观);(3)自主驾驶汽车可以完全自主地完成驾驶任务(完全自主观)。
人类在极端环境中的冒险活动告诉我们,在恶劣环境威胁人类生命安全的现实条件下,这种乌托邦式自主是靠不住的。的确,与其说谷歌的乌托邦式自主是一种内涵丰富、以人为中心的自动化,还不如说是一种外强中干的解决办法。在自主驾驶汽车里为人类驾驶员留有一席之地的做法,确实会导致模式混乱、注意力不集中和界面不友好等问题,但是这些问题并不难解决,而且极端环境已经给了我们一些应对之策。然而,谷歌工程师却选择了判断力不足的自动化技术,用谷歌研发的软件来处理这些问题。这对工程师来说颇具诱惑力,因为把驾驶单纯地看作一种导航与避免碰撞的任务,可以帮助他们一劳永逸地规避各种难题。
在一些涉及范围不大的本地应用中,这种做法也许是可以接受的(跟机场单轨电车非常相似的冷门应用,例如,在停车场和大学校园里用无人驾驶汽车提供短程运送乘客服务)。但是,作为一种社会活动,驾驶所涉及的内容十分宽泛,在人口构成、经济、文化等方面变化程度非常大。谷歌甚至无法证明它们的编码可以识别这些复杂多变的条件。此外,只要有人坐在车中,就会因为危险性、代理关系和可靠性而引发道德风险,需要想办法解决。谷歌的工程师们一再为自己面对最难的挑战而感到自豪,但是,在考虑这些意义重大、有益于社会的问题时,他们青睐的解决方法却是一些有局限性的算法。
当然,即使在谷歌的自主型汽车之中,依然能看到人的“身影”,只不过人的存在方式在时间和空间上发生了某种变化。具有明显自主性的编码其实是人编写而成的,而且人对这些编码的影响非常深远。我们深入研究一个算法的内部运行机制,以充分了解这个特点。请大家回想一下2007年的美国国防部高级研究计划局(DARPA)大奖赛。在这一年,DARPA赞助的这项赛事第一次记录了发生于自主型汽车之间的碰撞事故,赛事催生的几项技术还成为谷歌汽车的基础性技术。谷歌的克里斯·乌尔姆森是获胜队的首席工程师,谷歌团队的其他几名成员当年也参加了这项比赛。
事故发生时,麻省理工学院的赛车“塔罗斯”正在超越康奈尔大学的赛车“天网”。当时,“天网”的路线规划算法出了问题,正在路边以很慢的速度断断续续地前进。“塔罗斯”上的车载电脑没有把“天网”判定为正在行驶的汽车,而是把它归类为“一堆静止物体”,于是加速从“天网”前面超车。但是,“天网”并不是静止的,而是以“塔罗斯”未识别出的方式慢慢地前进。在“塔罗斯”快速并入“天网”所在车道时,“天网”突然加速,以致与“塔罗斯”撞在一起。结果,这两辆车都没有赢得比赛。
值得赞赏的是,两支队伍进行了会商,并公开了碰撞事故的详细情况。事故原因涉及无数算法和传感器,但关键原因在于麻省理工学院的赛车没能判断出康奈尔大学的赛车是一个正在运动的物体,而且占据了后者的前进路线。令人意想不到的是,麻省理工学院代表队认为详细识别物体(是“车”还是“护栏”)的算法容易导致错误而放弃使用它,并采用了只能将物体区分为运动的物体和静止的物体的算法。但是,在分析汽车传感器探测到的物体时,速度数据中包含随机噪声(所有数据都有这个问题),因此麻省理工学院的自主型系统以每秒3米的速度作为阈值,对数据加以筛选。运动速度快于这个阈值的任何物体都被视为“运动的物体”,反之,则被视为“静止的物体”。
这个阈值是如何设定的呢?它是由一位工程师估算静止与运动物体之间的差值得来的。我问琼恩·豪(该项目的主要参与者之一),在类似系统中,这样的阈值有多少个?他回答说:“有很多。”事实上,麻省理工学院赛车的“配置文件”包含近千行文本,设定了数百个变量,包括传感器的设置和校准,使传感器相互之间密切配合的附加因素,如何处理阳光眩目的问题等。机器学习技术可以减少对这些参数的依赖程度,但仍然需要人类程序员为它们搭建基本结构。豪说,在一般情况下,核心算法对现实世界中不确定因素的准确模型的依赖程度非常大。他认为:“自主技术从本质上看就是不确定世界中的生活起居问题。”
对早期自主型汽车的编码稍加研究,我们不难发现这些“自主型”汽车里富含大量人为的判断,其中有无数微不足道的细节内容(例如,上文讨论的阈值),也有意义深远的深奥内容(例如,不确定因素的模型)。再回想一下,我们最初把自主技术理解成一堆管线,在接收传感器的输入资料之后,将它们转换成目标明确的行为。技术的确非常神奇,但是那些管线和转换过程离不开人的设计。
将这些神奇技术应用到汽车这样的装置上,却有可能给你带来致命危险。
目前,律师和法学学者正在考虑无人驾驶汽车是否涉及法律责任问题。如果你把自主性理解为汽车的自作主张,那么构成责任的意图链就会断裂。如果你的谷歌汽车载着你掉进水沟,谁应当为此负责任呢?仅凭律师起草的合同是解决不了这个问题的,因为它涉及对自主性这个基本概念的理解。如果系统真的是在自主运行,那么出现问题之后,怎么会是制造商的过错呢?(有人认为,传统的产品责任认定方法同样适用于这个情况,即公司必须为它制造的产品负责。)更具有实际意义的问题是,人们如何证明自主型汽车上安装的软件是安全的呢?
在飞机等关乎人的生命安全的计算机系统上验证软件的做法有很强的说服力,但是操作起来有很大的难度,而且成本非常高,因为测试必须缜密精确,每个可能涉及的编码至少测试一次,还需要小心控制各种变化。这些标准同样可以用于验证人为的过程,包括根据严格的要求计划、设计和编写该编码的过程,以及编码发布之后的质量保证与升级管理等过程。但是,这些程序当前的形式并不适用于那些完全自主的系统,因为后者可能采取的行动方案有无数个。而且,与航空上应用的合成视景系统一样,以谷歌汽车为代表的自主型汽车必须依赖于数据高度完整而且频繁升级的数据库。错过一次升级更新,自主驾驶汽车就有可能一头撞到建筑工地或者雪堆之中。
我们如何验证谷歌为不确定因素和危险性建立的模型呢?所有的路径规划算法都会包含这些未知因素。路径规划是通过优化“成本函数”(cost function)来实现的,也就是不断地回答“从这里到那里,怎么走才能把‘成本’(用时间、能源、危险性等变量表示)降至最低?”这个问题。但是,成本函数本身体现的就是人在轻重缓急程度上做出的判断。如果孩子坐在后排座位上,你在驾驶时就有可能趋于保守。此时,成本函数就应该将安全性至于速度之上。如果你是独自一人,又要赶时间,那么你可能会开得更快一点儿,危险性就会增加。如果你觉得汽车最近的油耗比较高,你就会更加关注燃油效率的问题。
我们再做一个思维实验,考虑你的自主型汽车上是否应该配备一个“危险性”手柄。希望早点儿回家?就把危险性手柄向上推一点儿。此时,系统选择的驾车方式就会更冒险,你到家的时间会更早,你的账户也会被自动扣除更多的保险费用。(因为你让其他驾驶员置身危险之中,你对他们有什么补偿呢?你是否应该帮助他们支付部分保险费呢?)孩子坐在汽车后排座位上?那就把危险性手柄向下拉,更严格地遵守交通法规吧。
只要坐到方向盘后面,我们就会有意无意地做出这些决定。而在驾驶谷歌的自主驾驶汽车时,坐在某个小隔间里的工程师会代替我们做出这些决定。如果不希望被软件代劳,我们就需要有一个操作界面。附近区域的地图突出显示危险时,整个地图会变成什么样?那些三维“自主性云团”何时会显示出来呢?
这些思维实验帮助我们找到了谷歌自主驾驶汽车的替代方案:不是剔除驾驶员这个角色,而是重新思考人类的角色定位。激光扫描周围景观形成的图像有一种朦胧感,非常迷人。由于这些图片可以显示自主型汽车的内部模型,从而为一种新的界面、新的驾驶体验奠定了基础。我的同事比尔·米切尔曾经反复强调:“仪表盘作为一个界面,它所连接的应该是城市,而不是汽车的引擎。”
从此以后,我们再也不用想着要保持在自己的车道里开车、控制车速,以及那些令人身心俱疲的反馈回路了。现在,我们的责任是监督,在较高的层次上指挥和控制汽车的行为,但我们也可以亲自掌控方向盘。我们利用大量通过传感器和算法加强的环境模型,驾着车从一个个“自主性云团”和“危险性云团”中驶进驶出,整个系统的自主程度也在不停地发生变化。
这个目标的现实不能一蹴而就,但是,解决这个问题的可能性远大于将希望寄托于乌托邦式的完全自主型汽车。我们应该有能力帮助那些老年人和残障人士,在驾驶的同时完成其他任务(诸如发短信、阅读等),在继续保持人类临场体验的同时,还可以增强安全性。
图6–2 早期无人驾驶汽车的监控显示器屏幕截图。围绕汽车的圆圈表示激光雷达正在扫描道路以及路边树木。随后,算法对这些数据进行筛选、分类,为汽车规划行驶路线。这种图形是否有可能作为操作界面,从而催生出一种新的驾驶方式呢
图片来源:麻省理工学院的爱德华·奥尔森。
谷歌在自主型汽车上的研发目标以及宣传辞令经常发生变化,在快节奏的公共传播环境中有可能会再次发生变化。这有可能说明谷歌工程师团队的成员在愿景展望方面产生了分歧。不过,谷歌在文化上对不同意见进行了约束,从美国国家立法机构到汽车经销商都受到了影响。除此以外,美国国家公路交通安全管理局和美国汽车工程师协会对自主程度的界定都被打上了线性发展观的烙印。它们或者直言不讳,或者含糊其辞,但两者都认为通过一系列的进步,最终必然会实现“完全自主”。两个机构制定的标准都没有明确说明可以采用混合模式,比如,规定某些任务可以实现高度自动化,而其他任务则需要慎重考虑;也没有明确说明可以采用信息丰富的自动化模式,让人也能参与驾驶活动。
对于本来可被视为独立发明的谷歌无人驾驶汽车而言,阻碍它顺利发展的责任、认证和风险问题并不是偶然发生的“社会”问题,而是自主问题的重要组成部分,对未来的机器人以及人类的发展前景都有着重要的约束作用。这不是技术性问题,而是事关谁拥有控制权的问题。不过,谷歌汽车的支持者们没有注意到这个问题,科技界的许多人也对其视而不见。
最后,我列举两个仍处于发展初期的项目作为这个替代方案的具体事例。这两个项目都希望加强用户的作用,帮助用户更好地了解自主技术。从一开始,他们就致力于打造一种人–机合作的团队关系,而不是设计一种无须用户参与任务适应的高度自动化的机器。
一架无人驾驶直升机高速接近着陆地点。在用激光扫描仪(与谷歌汽车顶部的激光扫描仪非常相似)扫描周围的地形之后,该直升机将采集到的数千个测量结果输入计算机,为正在实时构建的一个数字三维地形模型提供所需的数据。接着,模拟程序利用复杂的算法处理这些数据,并按照模型给出的航径模拟接下来的飞行。这些程序可以识别平坦的地形,然后判断空间是否足够大,直升机降落时是否会撞到树木、电线或者其他障碍物。程序还会分析着陆区域是否足够平整,确保直升机在落地时不会翻。
图6–3 自主空中货运通用系统项目(AACUS)中的自主型直升机为投送物资或者执行医疗后送任务,而在山区扫描、选择着陆地点并完成进近的情况。地面上的着陆支持专员通过苹果平板电脑界面和无线电链路同直升机交互并确定着陆地点。
图片来源:极光飞行科学公司。
直升机在接近着陆区域时,树木会阻挡视线。依靠激光扫描仪,计算机发现在稍微偏右的树木之间有一个间隙可以通过,从而在树木中间规划出一条路线并指挥直升机着陆。
以上是某个真实项目的一个演示图例。作为某个政府研究项目的一部分,坐落在美国弗吉尼亚州马纳萨斯的极光飞行科学公司制造了一架全尺寸自主型货运直升机,并于2014年2月完成了一次飞行演示。该政府研究项目的目的是安排无人驾驶直升机前往危险区域完成物资投送以及可能的伤员转移等任务,避免飞行员涉险。我是该项目的成员之一,设计了人与自主程序进行交互的概念结构。我们的理念是把自治系统视为人–机团队的一部分,不仅在设计操作界面时如此,在设计核心算法程序时也秉持着这个理念。
在这次演示之后,《华尔街杂志》报道了这个项目,标题是:“海军给无人机装上了大脑”。似乎在媒体的眼中,完全自主的神话美轮美奂,没有一点儿瑕疵。
那么,人是否参与其中了呢?事实证明,人参与了这次演示的全过程。由于这架直升机是原型机,因此机上还有一位安全飞行员。他双手抱臂坐在那儿,眼睛看着计算机显示屏。不过,他必须随时做好准备,一旦接到通知,就要迅速关闭计算机,接管飞机。等到技术成熟后,就会彻底摒弃安全飞行员这个角色。但是,尽管我们认为安全飞行员是一个多余的角色,实际情况却有可能并非如此,只不过他们需要从事一种全新的工作。
更重要的是,在直升机着陆时,还有人在着陆区等待着直升机的到来。毕竟,如果没有人(甚至是一群人)卸货、打开包装并消耗掉直升机运送来的物资,物资运送又有什么意义呢?站在野地里迎接这架直升机的这些人,必须有极大的勇气,对直升机有充分的信任,因为在一架由软件控制的直升机向你飞来的时候,要保持轻松愉快的心情并不是一件容易的事。我们的团队采访过几十名着陆区引导员,这些为了生计去做有人驾驶直升机降落引导的人大多有在伊拉克和阿富汗工作的经历。其中有几个人回忆说,他们抬头仰望,看见无人驾驶直升机在头顶盘旋时,心里有一种不自在的感觉,因为他们不知道这些飞机归谁所有,也不知道它们在执行什么任务。在战争期间,他们最不希望引导那些“安装有大脑的无人机”着陆,最喜欢的合作对象则是那些老老实实地执行命令的直升机。
也就是说,在着陆区等候的这个人必须有拒绝直升机着陆的权利。因此,我们为他准备了一台苹果平板电脑。经过几分钟的培训,他(她)就可以与直升机进行简短的谈判。这个人会建议一个着陆地点,如果计算机认为这个着陆地点不能满足安全需要就会拒绝接受这个建议,并给出若干个备选地点。这个人要么接受某个备选的着陆地点,要么要求直升机复飞。
事实证明,设计这个谈判(操作界面和软件系统需要在1分钟之内完成谈判,自主技术必须易于被人理解)是整个项目中最富有挑战性的任务。
不过,直升机的成功演示给人类飞行员提出了一个疑问:如果扫描仪和算法真的可以准确选定着陆地点,人类飞行员是否希望在飞机上加装这套系统?随着这个项目不断取得进展,这些自动化功能不仅会被安装到无人驾驶直升机上,还会被安装到有人驾驶直升机上。举个例子,在我们社区里执行医疗运送任务的直升机往往需要在极端困难的条件下降落到充满不确定因素的环境。我们已经开始研究利用这些新式传感器和算法,帮助人类飞行员提高飞行操作的技术水平和安全性。
这些想法有的已经被应用到一种叫作“非强制性无人驾驶飞机”(OPA)的新式飞机上。《航空航天技术周刊》(Aviation Week & Space Technology)是航空航天领域的一家有影响力的杂志。几十年来,该杂志一直在刊登新式飞机的“飞行员报告”。2012年,该杂志刊登的飞行员报告介绍了一架名叫“Centaur”的飞机。在整个试飞过程中,飞行员从头到尾没有触碰过任何控制装置。
在试飞过程中,报告人坐在这架小型双引擎飞机的后排座位上。坐在他前方的安全飞行员心情平静,双手放在大腿上。在他的旁边,也就是通常情况下副飞行员的位置上,是一系列经过精心设计的链路、激励装置和伺服系统。安全飞行员拉动一个控制杆,机械装置就会咬合,并代替飞行员操纵飞机的操纵杆和踏板。如果飞行中出现问题,安全飞行员轻轻拉一下控制杆,就可以松开机械装置。在正常情况下,他不需要触碰任何控制装置。
图6–4 极光飞行科学公司制造的高度改良型双引擎通用航空飞机“Centaur”号非强制性无人驾驶飞机。“Centaur”号无人机可以由坐在前排的飞行员驾驶,也可由在地面上或者坐在后排座位上的人通过相同的电脑界面遥控驾驶
图片来源:极光飞行科学公司。
坐在驾驶舱后排座位上的“操作员”通过笔记本电脑操控飞机,他使用的操作界面与无人驾驶飞机地面控制台的界面完全相同。他可以通过电脑显示屏指挥飞机完成改变飞行高度、朝向航点飞行以及起飞、降落等动作。按下“启动”按钮就可以激活自动起飞程序。电脑先保持制动状态,将油门杆向前推,在检查引擎和仪表之后,松开制动,飞机开始滑行。随着飞机加速、升空、爬高,半自主型飞行就这样开始了。
作为非强制性无人驾驶飞机,“Centaur”号(得名于神话中的人首马身的怪物)可以像刚出厂的新飞机一样通过注册认证,以有人驾驶的方式完成正常的飞行;也可以采用半自动飞行模式,由坐在后排的报告人通过笔记本电脑指挥飞行;还可以采用无人驾驶模式,由地面人员通过无线链路操纵相同的电脑界面指挥飞行。
这架非强制性无人驾驶飞机是极光公司工程师利用市面上商业销售的钻石DA–42飞机改装而成的。工程师们在前座上加装了机械装置和一堆独立的电子元器件,并将飞行手册和应急程序进行了数字化,编入计算机算法。
在美国领空,无人驾驶飞机大多是不合法的,但是“Centaur”号无人机得到了美国联邦航空管理局的许可,在飞机上有安全飞行员的前提下可以采用无人驾驶模式。因此,这架飞机有助于无人驾驶系统所需传感器、算法和程序的研发工作。在有飞行员登机的情况下,该飞机已经获准前往阿拉斯加州,通过无人驾驶操作采集气象研究所需数据。
“Cenaur”号无人机采用的是适合飞行测试和工程研制的过渡技术,相关规章制度和具体技术还在制定当中。不过,这套技术却为新的飞行方式播下了种子,因为即使是在美国的领空,安全飞行员的职责最终也可能变成通过笔记本界面操控无人机飞行。
我们是不是很快就可以看到没有飞行员的客机呢?在可以预见的将来,这个目标可能还无法实现,但是通过“Centaur”号无人机,我们可以了解人类现在已经掌握了哪些相关技术。从技术上看,控制飞机滑行、指挥飞机起飞、按航线飞行和自动着陆的自动化技术都已经得到了验证。无人驾驶飞机的问题似乎已经解决,只不过都是在无人环境下解决的。我们再一次发现,全自主型操作不是大问题。我们可以认为人类现在已经掌握了这方面的技术,但是如何让这个创新发挥社会意义,如何让它为人类福利做出贡献,则是一个尚未解决的问题。要解决这个问题,不仅需要制造出这些机器,还需要社会、政治和经济体系允许这些机器融入人类的生活。
客机必须经过安全认证,以确保它不会从空中坠落。它们不仅需要向乘客提供安全性统计数据,还要提供安全体验;不仅需要应对我们可以想见的所有紧急情况,还需要确保在发生无法预见的紧急情况时不出问题。在涉及责任、危险、可靠性和信任等因素的有人环境下,同无人驾驶汽车一样,无人驾驶飞机所面临的问题同样没有得到解决。只有通过演示、操作和智能工程反复验证这些系统的可靠性,多年之后,人们才会慢慢地信任和接受它们。
我们更有可能看到的变化是机组人员的数量将会减少,而且这个变化肯定为期不远。在长途飞行中,即使在枯燥乏味的途中飞行时,飞行员也需要换班。因此在正常情况下,长途客机需要安排三名以上的飞行员。如果在保证安全性不受影响的前提下,可以减少机组人员的数量,将对航空公司的运营成本产生直接影响。
问题是大型客机不允许单飞行员操作。作为昂贵的资本设备,大型客机仍将以现有的操作形式陪伴我们度过未来几十年的时光。因此,要减少机组人员的数量,我们必须安装一些内设装置。这些装置不仅需要像人一样能与飞机进行交流,还要与飞行员进行有效的沟通。如果用机器取代长途飞行中的副飞行员,这台机器可能只需要监控和防范紧急情况的发生,在出现问题时要临时应对一段时间,以便唤醒正在打盹儿的飞行员,并让他(她)了解飞机当前的状况。当然,这样的机器应该通过“法航447号航班”突发性预警的检验。可是,有时候人类也无法通过类似检验。(最近发生的3·24德国之翼航空公司坠机事件表明,如何防范飞行员自杀毁机的行为是一个极具挑战性的社会问题。)
如何以较低成本在任意飞机上快速添加自动化功能,这是一个比较难的挑战,美国国防部高级研究计划局(也是上文中提到的早期无人驾驶汽车大奖赛的资助机构)已经放弃了这方面的努力。如果有人希望安装这项技术,可能还需要在多个方面对飞行员提供支持,包括执行常规任务、查看程序、访问过往事件数据库、针对飞行操作给出有用的建议等。为了不重蹈覆辙,这项技术不是用来完成副飞行员的工作,而是通过飞行员与助手之间的新式劳动分工,让人与机器充分发挥各自的作用。美国国防部高级研究计划局正在资助一个名叫“机组人员驾驶舱工作自动化系统”(ALIAS)的项目,希望通过该项目认真考虑这个问题并完成样机的制作。如果成功,这个项目不仅有可能以上述方式扮演副飞行员的角色,还有可能将任意一种飞机变成无人驾驶或者遥控驾驶飞机。
ALIAS项目希望在副飞行员的座位上安放某种装置,让它像人一样与驾驶舱进行交互——通过机器视觉阅读仪表盘上的数字,并通过飞行控制装置操控飞机,甚至扳动、掌握整个驾驶舱里的所有开关和操纵杆。
ALIAS项目设立了多个彼此之间有重叠的目标,其中最远大的一个目标可能是通过“微创手术”将任意飞机(包括大型运输机和直升机)变成自主机器人。通过合适的数据链路,安装有ALIAS系统的飞机可以实现远程操控。该项目的一个短期目标是将ALIAS系统用作“飞行员助手”,在工作负荷较高的时段帮助处理常规任务(就像《星球大战》中辅助卢克的小型机器人R2–D2)。这样,人类飞行员就可以坐在前排座位上,通过类似于苹果平板电脑的界面,操控飞机完成整个飞行任务。
“飞行员助手”有助于减少长途飞行中机组人员的数量。ALIAS项目的作用不是取代副飞行员,而是重新思考飞行员与副飞行员之间的关系,也就是重新思考驾驶飞机这个基本任务。在看到完全自动化的客机之前,我们将在很长一段时间里看到依赖于ALIAS项目及类似技术的飞行方式,而且这些飞行方式可能最先应用于货机的长时间水上飞行。
极光飞行科学公司的团队拿下了设计、建造ALIAS项目的合同(我是该团队的一名成员)。ALIAS项目将利用机器学习技术适应新飞机,利用机器视觉读取、理解驾驶舱显示屏的读数,还会利用某些机器人激励装置操控各种控制装置和开关。在适应新飞机时,需要对ALIAS项目进行培训,包括基本飞行操作与程序,“观看”人类飞行员的操作,收集人类飞行员驾驶飞机的相关数据。团队还希望将最优秀飞行员的飞行技术编成计算机编码。
不过,ALIAS项目面临的主要难题并不是算法,而是如何与人类伙伴合作的问题。民用航班的经验告诉我们,所有驾驶舱根本不需要再增加一个界面复杂、内部状态无从了解而且令飞行员迷惑不解的“黑盒子”。因此,这个难题就变成了如何重新思考飞行员的任务,并在不过分增加复杂性的前提下提升他们工作的抽象程度,也就是说,我们需要重新思考飞行员的角色。
飞行员在飞行时,可以今天采用有人驾驶模式,明天采用遥控模式,后天采用自主飞行模式。而且,人类飞行员可以选择让ALIAS操控飞机一个小时,随后以手动方式驾驶飞机。采用ALIAS以及类似系统之后,飞行员甚至可以在长途飞行中睡觉,前提条件是他(她)可以证明系统在发生紧急情况时能应付足够长的时间,使他(她)有时间清醒过来、了解情况并在必要时介入飞行。事实证明,允许飞行员打盹儿可以缓解疲劳,使他在驾驶飞机时有更好的表现,但这要求我们修正对飞行员的认识,不再把飞行员视为在整个飞行过程中一直全神贯注地操控飞机的英雄,而是把他们看作极其能干但是在认知与心理方面存在局限性的人。
同美国国防部高级研究计划局的其他项目一样,ALIAS项目也是一个充满不确定因素的高风险项目,人们并不清楚它最终能否(以及如何)付诸应用。但是,作为一个研究项目和一个高级的思维实验,它为我们指出了几十年以来我们一直在努力学习的一个道理:展现在我们眼前的根本不是由载人飞机演变为遥控飞机,进而演变为自主型飞机的线性发展过程,而是一种趋同现象。载人、遥控和自主技术共同演化,彼此之间的界限逐渐模糊。