一场自动驾驶悲剧反映出日益凸显的技术危机,堆积如山的代码创造了「一个无人完全理解的宇宙」,我们可能会把它们称为「弗兰肯算法(frankenalgos)」,而理解并应对它们,基本上需要一门新的科学。
2018 年 3 月 28 日,是让人们揪心的一天。
那天晚上,在亚利桑那州坦佩市,一轮新月升到一条四车道的上空,昏暗的路面并未因此而多几分光亮。
这时,一辆经过特别改造的 Uber Volvo XC90 正在检测道路前方的某个物体。
作为现代淘金热的赶潮儿,这辆 SUV 已经在完全无人驾驶模式下行驶了 19 分钟,期间并未得到后座安全员的任何指导。
它配备了一组雷达和激光雷达传感器,通过算法来计算周围物障的距离。
此时,主车速度稳定在 43 英里/小时,经机载算法判断,如果前方物体保持不动,那么主车距离它有 6 秒之遥。
不过,路面上的物体很少会静止不动。因此,通过检索可识别的机械 & 生物实体库,算法会从中爬取出更多数据,以此来推断该物体的可能行为。
起初,该计算机一无所获;
几秒钟后,它发现自己刚才是在处理另一辆车,并期盼着那辆车能够开走,这样,就可以不对其采取其它特别行动。
直到最后一秒,它才得到了一个清晰的身份识别——
一个骑自行车的女人,车把上混乱地挂着购物袋。她想当然地以为,这辆沃尔沃会像任何普通汽车那样绕开她行驶。
由于受到不得擅自采取回避行为的限制,计算机突然把控制权交还给了它的人类主人,但是,主人并没有注意。
49 岁的伊莱恩·赫兹伯格(Elaine Herzberg)被撞死了。
这个事件引起了一些科技界成员的反思,给他们提出了 2 个令人不快的问题:算法的悲剧不可避免吗?我们将(应该)准备如何应对这种事件?
「在某些方面,我们失去了主体性。当程序进入代码,代码进入算法,然后算法开始创建新算法,一切离人类主体越来越远。
软件被释放到一个没有人能完全理解的代码世界。」
Ellen Ullman 说。自 20 世纪 70 年代以来,她 一直是位杰出的专业程序员,也是少数几个能够对编码过程进行深刻描述的人之一。
当算法开始创建新算法时,一切离人类主体越来越远,Ellen Ullman 说。
她对软件世界了如指掌。
「人们说,『那么,Facebook 的运作方式呢?——他们创建并使用算法,而且他们可以改变算法。』
但事实并不是这样。他们先设定算法,然后算法会进行自主学习、变化和运行。
Facebook 会定期干预算法的运作,但并不会真的对其进行控制。
而对于一些特定程序,算法不是单独运行,还需要各类库、深度操作系统等……。」
算法是什么?
事实上,自从互联网——尤其是搜索引擎——在上世纪 90 年代中期兴起以来,算法的使用已经发生了变化。
从根本上说,算法是一件小而简单的事情:一条用来自动处理数据的规则。
如果发生了 a,那么执行 b;否则执行 c。这是经典计算的「if/then/else」逻辑。
如果一个用户声称是自己已年满 18 周岁,就允许他进入网站;否则就输出「对不起,年满 18 岁才可进入」。
就其核心而言,计算机程序就是很多很多的这类算法。一份数据处理说明书。
从微观上看,没有比这更简单的事了。如果计算机表现出了任何魔力,不是因为它聪明,而是因为快。
最近几年,「算法」一词被赋予了一个愈加可怕且模棱两可的含义,它可以指:
(1)任何大型、复杂的决策软件系统;
(2)能够根据给定的一组标准(或「规则」),来获取一系列数据输入并快速对其进行评估的任何方法。
这彻底改变了医学、科学、交通、通信等领域,使得多年来占据主流的计算机乌托邦观念更加深入人心。算法使我们的生活在各个层面上都变得更好了。
直到 2016 年,我们才开始对这种新的算法现实进行更加细致入微的考量。
我们倾向于用近乎圣经般的术语来讨论算法,视算法为拥有自己生命的独立实体,之所以如此,是因为我们被鼓励以这种方式去思考问题。
举个例子。
Facebook 和 Google 这样的公司已经出售并保护了自己的算法,这是建立在承认算法之客观性的基础上的,这种客观性要求算法能够利用数学式的客观且不带模糊情绪,对一组条件进行衡量。
这种算法决策能够扩展到几乎所有需要决策的事务中,比如贷款/保释/福利/大学名额/工作面试等,也就不足为奇了。
现在,我们不会再对这类算法卖点逆来顺受了。
曾经的数学神童凯茜·奥尼尔(Cathy O'Neil)——已经离开华尔街去教书,她管理着一个关于数学基础教育的博客 mathbabe——在她 2016 年出版的《数学杀伤武器》(Weapons of Math Destruction)一书中,毫无疑问地证明了,算法远远不会消除人类偏见,相反,它将放大并巩固这些偏见。
毕竟,软件是由一些非常富裕的白人和亚洲人写的。而这不可避免地会反映出他们的意识形态。
偏见充满恶意但无意制造伤害,但我们无法轻易地像要求人类那样去要求一个算法监管者去解释它的决定。
奥尼尔呼吁对任何直接影响公众的系统进行「算法审计」,这是一个明智的想法。如此一来,技术产业定会极力反对,因为他们就是卖软件的;产品透明度是他们最后才会交出来的东西。
曾经是数学神童的凯西·奥尼尔(Cathy O'Neil)已经证明,算法可以放大人类偏见。
好消息是,这场战斗正在进行中;坏消息是,与接下来发生的事情相比,它已经显得陈旧起来。
大家都在关注人工智能的远景和威胁,以至于几乎没有人注意到:我们正进入算法革命的一个新阶段,这个阶段可能同样令人担忧和迷惑。但是,几乎没有人问这个问题。
奥尼尔等人提醒,算法不透明但可预测:它们会按照自己事先被设计好的程序来执行。原则上,一个熟练的程序员可以检查并挑战这些算法的编码基础。
或许可以说,这种算法很「愚蠢」,它们只能根据人类所定义的参数进行工作。工作结果的质量取决于编程者的思路和技巧。而另一种极端情况,是由类人的通用人工智能(artificial general intelligence,AGI)来接管所有工作,这个梦想距离现在还很遥远。一个真正的智能机器将能够基于其直觉,诸如我们人类的直觉(一般被认为是广泛积累起来的经验和知识)那样,来质疑它自己的计算质量。
Google 的 DeepMind 一开始只是为了在街机游戏中尽可能得高分,便写了一段程序指令,却最终创建出一个大师水准的玩家,它是值得受到称赞的。这种技术被称为「强化学习」,它之所以有效,是因为计算机可以快速地玩数百万个游戏,以便了解哪些步骤组合可以产生更多分数。
有些人称这种能力为「窄人工智能(或弱人工智能,artificial narrow intelligence,ANI)」,但这里对「智能」一词的运用就如同 Facebook 对「朋友」这个词的使用一样,意在传达出一种比实际情况更安全、更通达的含义。
为什么这样说呢?
因为机器没有上下文背景来判断自己所做的事情,并且不能做任何其他的事情。关键的是,它也不能把知识从一个游戏转移到另一个游戏(所谓的「转移学习(transfer learning)」),这使得它的通用智能比不上一个小孩,甚至敌不过一只乌贼。
在某些专业任务上,计算机已经远远优于我们了,但距离全面性赶超,可能还很遥远。人类可能不是最好的,但是我们在很多事情上是第二好的。
但,问题就在这里。
离开「愚蠢」的固定算法后,在前往真正的人工智能的途中,人类走进了途中的一家客栈。
客栈问题层出不穷,但我们毫无头绪,也几乎没有展开讨论,更不用说在目标、道德、安全和最佳实践方面达成一致了。
尽管我们周围的算法还不够智能,也就是说,它们还不能独立地说出「那个计算/行动过程看起来不对:我会再做一次」,但是,它们正开始从其周围的环境中进行学习了。
而一旦算法在学习,我们就不能再知道任何有关其规则和参数的信息了。在这一点上,我们无法确定它将如何与其它算法、物理世界或我们人类进行交互。
「愚蠢」的固定算法——复杂、不透明并且习惯于实时监控——在原则上是可预测、可审问的,而这些会学习的算法则不然。在环境中学了一段时间后,我们不再能知道它们是什么了:它们有可能变得不稳定。
我们可能会称它们为「弗兰肯算法(FrangealGOS)」——尽管玛丽·雪莱做不到这一点。(译注:玛丽·雪莱,科幻小说之母,英国著名小说家、英国著名浪漫主义诗人珀西·比希·雪莱的继室,著有《弗兰肯斯坦——现代普罗米修斯的故事》。)
冲突的代码
算法开始从它们的环境中进行学习。
这些算法本身并不是新的。
我第一次遇到它们是在大约 5 年前,当时我在为《卫报》撰写一篇关于股票市场高频交易(HFT)的文章。
我发现它们非同寻常:一个人类打造的数字生态系统,价值数十亿美元的数据中心遍布成堆黑匣子,它们就像忍者一样潜伏在那里——这就是股票市场现在的样子。
那儿一度有一个实物交易平台,所有人的行动都会被转移到一个中央服务器,在这个服务器中,笨拙的草食性算法会被输入给灵活的肉食性算法,通过弯曲市场状况,来诱使他们以低卖高买。
人类 HFT 交易者(尽管已不再有人类热衷于此)称这些庞大而缓慢的参与者为「鲸」,它们大多属于互惠养老基金——即属于大众。
对于大多数 HFT 商店来说,鲸鱼现在已经成为了主要的利润来源。
本质上,这些算法试图打败彼此;它们以光速进行无形的战斗,每秒对同一订单进行 10000 次下单和取消操作,或是疯狂涌入系统,致使市场震动,而所有这些都超出了人类的监督或控制能力。
显而易见,这种局面是不稳定的。
2010 年曾发生过一次「闪电崩盘(flash crash)」,在此期间,市场经历了 5 分钟的创伤性自由降落,然后又经历了 5 分钟的重新调整——原因不明
我去芝加哥看望了一个叫 Eric Hunsader 的人,他有着出色的编程技巧,能够比监管机构看到更详细的市场数据。
他向我展示,截至 2014 年,每周都会发生「小型闪电崩溃」。
他甚至也不能确切说明其中的原因,但是,他和他的工作人员已经开始对出现的一些算法(algos)命名,就像麦田怪圈猎人给英国夏日田野中发现的怪圈进行命名那样,比如「野生动物」、「祖马」、「咔嗒」或「破坏者」。
Neil Johnson 是乔治华盛顿大学一位专攻复杂性的物理学家,他做了一项关于股票市场波动性的研究。
「这很迷人,」他告诉我。「我的意思是,多年来,有关计算机系统生态学方面的讨论一直比较含糊,比如使用蠕虫病毒这个词等等。」
但这里有一个可供研究的真正的工作系统。更大的问题是,我们不知道它是如何工作的,或者它会引发什么事情。
而我们的态度似乎是「心不在焉」。
值得注意的是,Johnson 关于这个问题的论文发表在《自然》杂志上,认为股票市场「从一个混合型人机阶段,突然而全面地转向了一个新型全机阶段,后一阶段的特点是频繁的黑天鹅事件与超快的持续时间」。
根据科学历史学家 George Dyson 说法,由于一些 HFT 公司允许算法进行学习,情况变得复杂了:
「就是花点儿钱,让黑匣子多做些尝试,如果有效,就加强这些规则。我们知道它已经完成了。然后你实际上有了一些无人知晓的规则:算法创建出了自己的规则——你让它们以自然进化有机体的方式进行了进化。」
非金融行业观察家开始设想一场灾难性的全球「飞溅式崩盘(splash crash)」,而市场增长最快的领域将成为(并且仍然是)从波动中获利的工具。
Robert Harris 在他 2011 年的小说《恐惧指数(The Fear Index)》中,设想了通用人工智能的出现——奇点——正是诞生自这种数字化沼泽。
令我惊讶的是,受访科学家们没有一个会断然排除这种可能性。
如果不是因为一个简单事实,所有这些都会被斥之为深奥的金融知识。
人们通常认为,技术首先被色情行业采用,然后才开始大众化。但在 21 世纪,色情就是金融,所以,当我似乎看到了类似 HFT 的算法在别处引发问题的迹象时,我又打电话给 Neil Johnson。
「你说得对,」他告诉我:一种新的算法正在走向世界,它具有「重写自己代码的能力」,这时它就变成了类似于一种「遗传算法」。
他认为,自己在 Facebook 中发现了它们存在的证据(他补充道:「我的账户被攻击了 4 次)。
如果是这样的话,算法就是在那里肆虐,并正在适应那个环境,就像股票市场所发生的那样。
「毕竟,Facebook 就是一个巨大的算法,」Johnson 说到。
物理学家 Neil Johnson 说,Facebook 就是一个巨大的算法。
「我认为这正是 Facebook 所面临的问题。
他们可以使用简单的算法在他人的照片动态中找到我的脸,从我的个人资料中获取数据,并将我们链接在一起。
这是一个非常简单的具体算法。但问题是,有数十亿种这样的算法在协同工作,它们在宏观层面上会带来什么影响?你不能以微观规则来预测人口水平上的算法习得行为。
所以,Facebook 会声称他们知道在微层面上到底发生着什么,他们可能是对的。但是人口水平上的变化呢?这就是问题所在。」
为了强调这一点,Johnson 和来自迈阿密大学与圣母大学的一组同事发表了一篇论文,题为《公共信息中极端子群的出现和未来 绑定算法中的可能增强(Emergence of Extreme Subpopulations from Common Information and Likely Enhancement from Future Bonding Algorithms)》,旨在从数学上证明,试图通过社交媒体来连接人,不可避免地会使整个社会极化。
他认为,Facebook 和其它网站应该像气候科学家模拟气候变化或天气模式那样,模拟其算法的效果。
奥尼尔说,她有意将这种自适应式算法从《数学杀伤性武器》的名单中排除了。在没有明确内容的复杂算法环境中,将责任分配给特定的代码段变得极其困难。
也就是说,它们更容易被忽视或者打发掉,因为很难识别它们产生的确切影响,她解释道,如果想见证真实案例,我会考虑亚马逊上的闪电崩盘会是什么样子。
「我也一直在寻找这些(自适应性)算法,」她说,「我一直在想:『哦,大数据还没有到那里。』」
但是,最近一位亚马逊书商的朋友告诉我,对于像他这样的人来说,那里的定价情况已经变得十分疯狂。
每隔一段时间,你就会看到有人在推特上写道『嘿,在亚马逊上花 40000 美元买条奢侈的纱线。』
每当我听到这样的话,我就想:「啊!那一定和闪电崩盘差不多!」
亚马逊上有很异常事件发生的证据,有来自困惑卖家的线索,也有来自 2016 年后至少一篇的学术论文,这些论文声称:
「一些例子已经出现,竞争中的算法定价软件正以意想不到的方式相互作用,进而产生无法预测的定价,有些情况下,被故意设计去实施固定价格。」
问题同样在于,如何在一个混沌的算法环境中(简单的因果关系要么不适用,要么根本无法追踪)分配责任。
与金融业的情况一样,推诿(deniability)被引入了系统之中。
现实生活中的危险
如果事关人身安全,那就真是兹事体大了。
前不久,一名司机驾驶着丰田凯美瑞轿车,车子突然毫无征兆地开始疯狂加速,最终驶离道路,司机当场身亡。
事后,美国宇航局的专家花了 6 个月的时间检查了数百万行的操作系统中的代码,然而并没有发现所谓的程序问题。汽车制造商也坚决否认汽车会自己突然加速。
直到后来两位嵌入式软件专家花了 20 个月的时间深入分析了这些代码,才证明了家属所说的情况是真实的:
他们找出了一大堆所谓的「面条代码」(冗长、控制结构复杂混乱、难以理解的代码),这些代码充满互相矛盾、杂糅在一起的算法,进而产生异常、不可预测的输出。
目前正在测试的自动驾驶汽车包含 1 亿行代码,没人能够预测在现实世界中的道路上可能出现的所有情况,所以,算法必须不断学习并持续更新。
在这样一个动态变化的代码环境中,如何避免冲突,尤其是当算法必须保护自己免受黑客攻击时?
20 年前,George Dyson 在他的经典著作《Darwin Among the Machines》中预见了我们今天发生的这一切。
他告诉我们,问题在于,我们正在构建的系统超出了我们的智力所能控制的范围。
我们相信,如果一个系统是具备确定性的(根据固定的规则行事,这是算法的定义之一),那么,他就是可预测的,而可预测的算法也是可控的。
然而,这两种假设都不成立。
「它(算法)正在以自己的方式,一点点地工作着。」他写道。
「20 年前,我痴迷于多细胞生物和多细胞数字化有机组织,如今,他们已经占据了世界的每个角落。运行着代码片段的 iPhone 就像一个多细胞生物,就像生物学中看到的那样。」
「这是一种被称为阿什比定律的古老法则。一个控制系统需要和被它控制的系统一样复杂。
我们正全力朝着这个目标努力着。建造自动驾驶汽车时,软件必须对所有需要控制的事物完整建模型,但是,我们无法理解大多数模型中的定义代码。
因为,我们能理解的模型通常都是这样的类型:因为忘记把消防车纳入模型,所以才会撞向消防车。」
我们能否乘坐自动驾驶汽车畅游在城市街道上?对此,Dyson 提出了疑问。与此同时,新南威尔士大学的人工智能教授 Toby Walsh(此人在 13 岁编写了他的第一个程序,十八九岁时运营了一个原型的计算机公司)从技术层面上解释了为什么这会是一个问题。
「没有人知道如何写一段代码来识别停车标志。
我们花了好几年的时间试图利用人工智能技术做到这一点,但是失败了!我们的愚蠢导致这项工作没什么进展,人类也还没聪明到能学会如何解决这个问题。
编写程序时,你不得不学习将问题分解成足够简单的部分,每个部分都能对应上一条计算机指令(针对机器的指令)。但诸如识别停车标志或者翻译一个英文句子这样复杂的问题,我们却不知道怎么如法炮制,这超出了我们的能力范围。
我们只知道如何编写一个更加通用的算法,样本足够多的话,系统就能学会如何解决这个问题。」
因此,目前的研究重点放在机器学习上。
现在我们知道,Herzberg 的死是因为算法在试图对其进行正确的分类时,犹豫不决。
这是因为糟糕的编程、算法训练不够?还是因为我们拒绝承认技术的局限性?真正的问题是,我们可能永远不知道其中的原因。
「我们最终将完全放弃自己动手编写算法,因为这些机器能够做得比我们做得好很多。
从这个意义上说,软件工程可能是一个濒临淘汰的职业。它将会被机器接管,机器将会比我们做得更好。」Walsh 继续说道。
Walsh 认为,社会大众学习编程知识是很重要的,而不是无足轻重。越疏远,它就会看起来更像魔法。
针对前文给出「算法」定义,他也认为这种定义不完整:
「我想指出,现在的算法指的是所有大型、复杂的决策软件系统及其嵌入的环境,这使得它们更加不可预测。」
这的确是个令人不寒而栗的想法。
他认为,伦理道德将会成为科技领域新的前沿热点,他预测这是「一个哲学的黄金时代」,普渡大学网络安全专家 Eugene Spafford 也对此表示认同。
「在需要做出选择的地方,就会产生道德问题。我们往往会想要有一个可以问责的机构,但对于一个算法来说,这是非常困难的。
到目前为止,人们对于这类系统的批评之一就是:不可能回过头来分析做出某些决策的原因,因为系统内部做出的选择实在是太多了,以至于做出责任分析并非人力所及。」
也有人持不同看法。一旦一个程序出错了,我们可以对相关的所有程序进行重写或更新,这样问题就不会再次发生。人类容易重蹈覆辙,但智能机器不会。
虽然从长远来看,自动化机器应该更加安全,由于现有的侵权法规定侵权行为必须出于故意或过失,因此,这种法律要件理论需要加以反思了。
一条狗不会因为咬了你而要负法律责任,但是如果这条狗的行为被认为是可以预见的,那么,它的主人就需要负责。
在一个算法的环境中,许多意想不到的结果,是人类不可预见的,这种特性可能会导致一种无赖式的做法,故意混淆概念会变得更容易,也会为某些人带来好处。
比如目前,一些制药公司一直在从这种复杂性中受益,但后果也会更严重,并且更加难以逆转。
Uber 致命车祸调查
军事风险
不过,在未来,影响最严重的领域可能并非商业、社交媒体、金融和交通。如果军方不再像过去一样推动创新,它将是最受影响的技术采用者。
因此,自动武器正在变成一场算法军备竞赛,这也就不足为奇了。
目前,朝鲜和韩国之间的非军事区由一名机器人枪手执勤。尽管其制造商三星否认它有自动化行动的能力,但外界普遍不相信这一说法。
俄罗斯、中国和美国都声称他们正处于研发协同化、武器化无人机群的不同阶段,而美国还计划让导弹在战场上空盘旋数日进行观察,然后选定攻击目标。
一群谷歌的雇员为此辞职,另有数以千计的人质疑这家科技巨头向五角大楼的 Maven 计划「算法战争」项目提供机器学习算法。
谷歌的管理层最终对此作出回应,同意不续签 Maven 计划的合同,并公布了使用其算法的道德准则。
谷歌的员工因公司向五角大楼的「算法战争」计划提供机器学习软件而愤然辞职。
和其他的科技公司一样,谷歌也声称其 Maven 软件符合道德准则:
它可以帮助人们更有效地选择目标,从而挽救生命。
但问题是,技术管理人员如何能够假定自己知道他们的算法将会做什么,在实际情况中,被指导去做什么——特别是考虑到,各方都会开发出相应的算法对抗系统,以迷惑敌方武器。
和股市的情况一样,不可预测性很可能被视为一种优势而非障碍,因为,武器会因此变得更有可能抵抗企图破坏它们的企图。
如此以来,我们实际上正在冒险彻底改造我们的机器,用意大利面条式的(复杂而难以理解的)代码包装本来寻常之物。
英国 Lancaster 大学的 Lucy Suchman 与人合写了一封致谷歌的公开信,要求他们反思将工作与军事相联系的狂热做法。
她说,科技公司的动机很容易被理解:军事合同总是伴随着觉得利益。而对五角大楼来说,
「他们被数据淹没了,因为有新的方法来收集和存储数据,但他们无法处理这些数据。所以这些数据基本上是无用的,除非有奇迹发生。
我认为,它们寻求与大数据公司的合作是一个很神奇的想法:这些公司有很神奇的技术,可以让这些数据有意义。」
Suchman 还提供了一些统计数据,让人对 Maven 计划不寒而栗。
2003 年到 2013 年间在巴基斯坦进行的无人机袭击中,只有不到 2% 的被害人被确认为对美国构成明显威胁的「高价值」目标。
20% 的被射杀的人被认为是非战斗人员,而 75% 的人的身份未知。
即使只有这些数字的二分之一、三分之一、四分之一,任何理性的人都会停止这样的行为。
「我们现在使用的识别技术是很粗糙的,而 Maven 计划想要做的是实现这种技术的自动化。从这一点上说,它变得更加不负责任,更容易受到质疑。这是个很糟糕的主意」。
Suchman 的同事 Lilly Irani 在加州大学圣地亚哥分校工作,她提醒我们,信息在一个算法系统中以光速传播,没有人对其进行监管。她以此暗示,技术上的讨论常常被用作烟幕弹,以逃避责任。
「当我们谈论算法的应用时,有时是在讨论官僚系统。
算法设计人员和政策专家所做的选择被视为客观,在过去,必须有人为这些选择负责。而科技公司说,它们只是通过 Maven 计划来提高准确率,比如,更多真正的威胁分子得到击毙。
也就是说,从政治角度出发,假设那些站在他们世界的对立面的人更因该被杀死,而美国军队则会定义什么样的人有嫌疑,不容许有任何争议。
所以,他们是打着科技问题的旗号解决一些政治问题。选择算法来自动化某些决策过程,也是出于政治考虑。」
现代战争的法律公约,尽管可能不完善,但它假设作出决定的人要承担责任。至少,算法战争正在以一种我们可能要后悔的方式,搅浑了现代战争的这潭水。
寻找解决之道
对于本文描述的大多数问题来说,已经存在解决方案,或者,我们可以试着找到一种解决方案,但前提是:大型科技公司将社会的良性发展,作为公司底线。
长期来看,更为严重的问题是,越来越多的人推测当前的编程方法不再能实现某种目的,鉴于人类日益依赖的算法系统的规模、复杂性和相互依赖性。
联邦航空管理局的解决方案是:详细记录和评估所有项目的内容以及后续更新,以便事先很好地理解算法交互,但这不可能大规模展开。
航空航天工业的部分单位采用了一种相对较新的基于模型的编程方法,在这种方法中,机器完成了大部分的编码工作,并且能够在运行时进行测试。
然而,基于模型的编程可能并不是万能钥匙。
它不仅让人们远离了这一编程过程,而且物理学家 Johnson 为美国国防部所做的一项研究发现:即使在使用这种技术构建的大型复杂系统中,「也无法从代码本身推导出系统可能做出的极端行为。」
人们投入了大量精力寻找追踪不符合预期的算法的行为,从而确定导致这种情况发生的具体代码的位置。没有人知道是否会找到一种(或多种)解决方案,但在那些具有攻击性的算法被设计得互相冲突或/和互相适应的情况下,确实还没有一种办法行得通。
等待研究人员给出一个关于热议的算法纠纷问题的技术答案时,我们可以采取一些预防措施。英国定量分析专家、对股市高频交易发出严正批评的 Paul Wilmott 讽刺地说,「学学射击、做果酱或者编织」。
更实际的做法是,软件安全专家 Spafford 建议,无论能否识别特定的异常代码或证明与之相关的疏忽,都要让科技公司为其产品的行为负责。
「基本上,我们需要一种新的科学形态。」Neil Johnson 说。
仅仅在几年前,当 Johnson 和我最后一次讨论这个话题时,我的问题还只是小众关注的问题,仅仅限于少数对股市进行细节研究的人。
「现在,这种情况甚至影响了选举。我的意思是,这到底是怎么了。
我认为,深层次的科学问题是,软件工程师接受的训练是编写程序,优化工作。这很有道理,因为你经常会优化诸如分布在一个平面上的权重、最节能的速度这样的问题。
一般来说,在可预期的情况下,优化工作是有意义的。但是,在一些特殊的情况下,它也会失去意义,我们需要考虑:
『一旦着个算法开始与其他人进行交互,可能发生的最糟糕的事情是什么?』问题是,我们甚至没有一个词语能够描述它,更不用说研究它的学科了。」
他停顿了片刻,试图思考这个问题
「所谓优化,要么最大化对象,要么就是最小化,在计算机科学中,都是一个意思。因此,优化的反义词是什么?比如,最小优化案例中,如何识别、测量它?
我们需要提出的问题,『在我认为自己正在优化的系统中,最极端的行为可能是什么?』」。
他再次陷入了沉默,最终发出了略带惊讶的声音。
「基本上,需要一种新的科学。」他说。