Main 中信出版2020年度好书-人文社科(套装共10册)

中信出版2020年度好书-人文社科(套装共10册)

0 / 0
How much do you like this book?
What’s the quality of the file?
Download the book for quality assessment
What’s the quality of the downloaded files?
Year:
2020
Language:
chinese
ISBN:
B08VRR426F
File:
MOBI , 65.58 MB
Download (mobi, 65.58 MB)

You may be interested in Powered by Rec2Me

 

Most frequently terms

 
0 comments
 

You can write a book review and share your experiences. Other readers will always be interested in your opinion of the books you've read. Whether you've loved the book or not, if you give your honest and detailed thoughts then people will find new books that are right for them.
中信出版2020年度好书-人文社科(套装共10册)



(美)爱德华·阿什福德·李 等 著





中信出版集团





目录


柏拉图与技术呆子:人类与技术的创造性伙伴关系

大脑修复术

动物眼中的人类

狼的智慧:我的25年荒野观狼之旅

燃烧的大洋:1941—1942,从突袭珍珠港到中途岛战役

人类大瘟疫:一个世纪以来的全球性流行病

人类简史:人类的诞生

丝绸之路上的帝国:青铜时代至今的中央欧亚史

西方的困局:欧洲与美国的当下危机

照护:哈佛医师和阿尔茨海默病妻子的十年





目录


推荐序

前言

第一部分 1. 墙上的影子

2. 发明自然法则

3. 事物之模型之模型之模型

4. 硬件快速演化

5. 软件的持久力

6. 进化与革命



第二部分 7. 信息

8. 软件的局限性

9. 共生关系

10. 决定论

11. 概率与可能性

12. 最终的想法



致谢

参考文献





仅以此书献给我的缪斯女神,朗达·赖特,感谢与她多次的晚餐交谈带给我的创作灵感。





推荐序


科学技术是人类文明进步的产物,是人类社会的重要构成,其源自人类的生产创造和社会文化,又对人类社会发展产生持久而深远的影响。自以天文学、物理学为代表的近代科学技术诞生以来,科学技术在近几个世纪里持续加速发展,传统领域不断突破、科技创新方兴未艾,人类社会已经迈入一个科技大繁荣的新时代。放眼国际,科技创新与发展水平现已成为衡量发达国家综合国力与核心竞争力的重要方面,提升科技实力也已成为建设世界强国的核心战略。

以自然科学为核心的科学技术主要聚焦于客观的物理世界,致力于未知客观规律的发现以及新事物的发明与创造,但实际上,其发展水平也与社会人文、科技文化等诸多方面密切相关。在一个特定的历史阶段、一个特定的社会形态中,科技群体开展科学与工程创新的水平本质上会受到群体内所形成的科技价值、模式、文化及生态等因素的影响。对人文与科技、科学与工程、发现与发明、发明与设计、价值与价格、内涵与形式、开放与封闭、人类与技术等这些二元关系的正确认知以及辩证统一会在很大程度上决定科技创新的质量与高度。当然,科技文化与生态的形成和演进是一个较为缓慢的过程,其前提是营造益于激发创新创造的科技哲学与文化氛围,形成聚焦价值引领、激励原始创新的科技文化生态。

富有思想性的优秀科技哲学类著作将有益于引导科技界进行深入思考,有益于从根本上促进科技的创新,而爱德华教授的这本书恰好就是这样的一部上乘之作。在书中,爱德华教授将知识与技术是由独立于人类存在且被人类发现的柏拉图理想所构成的观点与人类创造而不是发现知识与技术的观点对立起来,进而以作为现代科技发展新引擎的数字技术为主要贯穿内容,重点对模型世界与物理世界、科学领域与工程领域的一系列论题进行了深入生动的辨析。爱德华教授强调工程学同样是一门极具创造性和智慧性的学科,二者相辅相成、不可偏废。显然,将科学与工程进行辩证统一、融合发展才能真正推动科技的协同创新与产业繁荣,而自主科技体系的建立也必然需要兼顾这两个方面。爱德华教授强调,模型与范式(即公认的模型或模式)可以激发创造力,技术范式较科学范式的演化更为频繁且通常是变革式的,技术进步的速度取决于人类对新范式的理解和接受程度。显然,这一论断进一步强调了制约工程学与科学演化的根本在于范式及范式的转换,就有如思维对知识、元模型对具体模型的影响。当今以半导体物理学为载体的数字技术飞跃发展,其关键便在于形成了独特且层次分明的范式体系。换言之,要想从根本上推动科技发展,就必须发现、创造和培育优秀的、层次化的范式。

基于对信息及软硬件技术内涵与特点的分析,爱德华教授进一步强调了人类与技术之间的互补与共生关系。他认为,物理世界中存在着不确定性和连续性,而数字技术是离散和不完备的,因此,数字技术真正的力量还是要源于其与人类的伙伴关系,但其发展还存在诸多障碍。关于近年来的人工智能浪潮,爱德华教授认为“智能”与“自主”只是对计算机的拟人化,其本质上有一定的不合理性,且在当前的技术体系下也不够实际。人类与计算机要实现的是共生,而非由计算机复制并替代人类。书中提到的另一个重要主题是专业化,这是科学与工程在演进过程中呈现出的一个共同趋势。但爱德华教授强调,过度的专业化会使人们对越来越细小的事物关注得越来越多,甚至是“对一无所知的事情了如指掌”(书中原文),但这样必然会让人们丢掉大的知识体系与背景,从而形成支离破碎且阻碍科技发展的范式与生态。学科过度细分、技术过度细分、领域过度细分,但凡这些过度的细分都会造成更多难以融合融通的专业“竖井”,其必然会对我们的高质量人才培养、科技创新、产业推进等形成阻碍。因此,如何在专业化发展的过程中推动交叉与融合,实现二者的平衡与优化将会对一个国家或地区的科技发展产生巨大影响,这一点非常值得我们深思。

可以看出,; 爱德华教授对制约科技创新发展的本质问题进行了深刻的哲学思考,本书则是从科技与哲学、文化相融合的角度撰写的一部见解独到、思想深邃又诙谐易读的经典科技哲学著作。通过阅读本书,我相信广大读者一定能够获得丰富的科技哲理启发以及有效的思维认知提升,它必然会对读者日常的教育、科研工作乃至生活都产生潜在而积极的影响。同时,我建议读者对书中给出的观点进行开放式的思考与探讨,这对于拓展读者的专业思维、提升读者的专业素养必将是极为有益的。正如作者所言,物理世界的不确定性和模型的不完备性必然使得人类社会的科技创新永无止境,这也必然为人类的创造力提供无限空间。因此,我们应该以数字技术的发展为借鉴和支撑,通过认知、模型、范式的不断优化和发展来更好地探索物理世界中的未知,并辩证运用人文与科技、科学与工程的互相支撑来更好地开展创新与创造工作。



中国工程院院士

2020.7





前言


主要内容


当我年轻的时候,我的父亲想让我将来成为一名律师,或者获得工商管理学硕士学位并接管家族企业,而工程师是那些正在为他干活的人。最聪明的年轻人,至少是那些美国盎格鲁-撒克逊白人的后裔,读的是法学院、商学院或医学院。和过去相比,现在要考入工程学院的难度很大,在我读大学的时候情况却并非如此。当我主修耶鲁大学的“计算机科学”和“工程与应用科学”双学士学位的时候,父亲对我感到非常失望。继而我去麻省理工学院攻读工程硕士学位,然后成为贝尔试验室的一名工程师,最后又去伯克利大学攻读博士学位,并成为一名大学教授。我的一次次决定让我的父亲愈感失望。这本书也许是我为那些决定进行辩护的最后一次尝试吧。

当我开始写作本书时,我实际上并不清楚我的读者受众都会有谁。但随着本书的完成,我确信本书是以有人文社科底蕴的技术专家或者懂技术的人文主义者为读者对象的。我不确定这样的人能有多少,但我深信肯定会有一些。我希望你就是其中的一员。

本书试图解释为什么创造技术的过程,即我们称为工程的过程,是一个非常有创造性的过程,并希望向读者解释为什么这个学科变得如此火热和有竞争力,以至能够让一些极客从最聪明的年轻人当中脱颖而出。本书将向读者介绍技术文化、技术的力量与局限性以及技术的真正力量等,是如何通过与人类的伙伴关系发挥出来的。我倾向于把这本书视为一种受欢迎的技术哲学读物,但我怀疑它是否会受到读者的欢迎,而且我也不确定我是否具备撰写一部哲学类图书的水平。但是,我唯一可以保证的是,这是一本关于技术和创造技术的工程师的著作。即便如此,本书也无法做到包罗万象,仅限于我最了解的技术部分,特别是数字和信息技术革命。

本书讨论的不是如何以技术为媒介来释放艺术性和创造性。如果读者想要了解这方面的内容,那么我推荐阅读维吉尼亚·赫弗南于2016年出版的《魔法与迷失》(Magic and Loss )一书。赫弗南声称“互联网是现实主义艺术大规模协同工作的产物”,但她所指的主要是互联网的内容。在我的书中,我认为互联网技术本身,以及支撑它的所有数字技术,都是一项大规模协同的创造性工作,即使其并非艺术性工作。

数字技术作为后来出现的一种富有创造力的媒介,有着巨大的潜力,并且远远超过迄今为止其他技术领域所取得的成就。在本书的第一部分,我将详尽地解释为什么这项技术具有如此彻底的变革力和释放性。我研究了工程师是如何创造性地使用模型和抽象来构建人工世界,并给予我们难以置信的能力。例如,将迄今为止人类出版过的所有图书全部装入口袋的能力。

但这并不意味着数字技术就没有它的局限性。为了从正反两方面阐释数字技术的发展,我在本书的第二部分试图反驳一些所谓思想领袖对数字技术和计算的狂热痴迷。在计算机技术巨大潜力的驱动下,这种狂热导致了一些不合理的信念。这些信念甚至断言,物理世界中的一切实际上都是一种计算,其在本质上与现代计算机的运算过程是完全相同的。一切事物,包括诸如人类认知等复杂现象以及诸如星体等我们所不熟悉的事物,都不过是在数字数据上运行的软件。

我认为,支撑这些结论的证据是薄弱的,大自然仅将自身局限于符合当今数字计算概念的过程的可能性相当渺茫。我将证明,这一数字假说并不能得到实证验证,因此也就永远不能被解释为一种科学理论。由于其可能性非常渺茫,证据极弱,而且假设又是不可验证的,所以得出的结论不过是一些无根据的猜想罢了。我在这里的论点可能会给我带来一些麻烦,因为我正逆流而行,与大多数人的观点相左。

的确,我的观点与当前的许多观点都不同,我认为人工智能在计算机上复制人类认知功能的目标是一种误导,其是不大可能获得成功的,并且还在很大程度上低估了计算机科学的潜能。相反,我认为,技术正在与人类共同进化,正在拓展我们的认知和自身能力,所有这些也使得我们能够培育、发展和传播技术。我们已经看到,人类与机器之间存在的互补性正在促进人类与机器共生、共同进化。

然而,本书的大部分内容都与现实情况相吻合,比如,技术的巨大潜力将改善我们的生活,这是人类对技术发展所持有的乐观态度。除了强调技术已对人类生活产生的积极影响,我在本书中要表达的主要观点之一在于,工程学是一门极具创造性和智识性的学科,它同艺术和自然科学一样是有趣和有价值的。在技术不那么成熟的领域中,创造性的贡献更多地体现了创造者的个性、审美和特质。在更为成熟的领域,这些工作可能会变得极为技术化,且令非专业人士觉得有些晦涩难懂。然而,我们必须承认,这种情形在所有学科中都会出现,所以不足为奇。

与科学一样,工程学是建立在被广泛认可的范式之上的,是指导行动的思想框架。工程学与科学相似,用托马斯·库恩(1962)的话来说,工程学的发展也会不时地为范式的转换所打断。然而,与科学不同的是,工程学中范式的转换是频繁的,甚至是变革式的。事实上,我认为,在我们目前的文化中,技术进步的速度主要是受到人类无法理解新范式的制约,而并非技术自身发展的限制。我希望本书能够清楚地阐释其中的原因。

与艺术一样,工程学领域的发展也会受到文化、语言和思想交叉萌发的制约。也和艺术一样,工程学的成功或失败往往决定于无形和不可解释的力量,比如时尚和文化。就这一点而言,工程学的发展几乎和艺术是相同的。仍然像艺术一样,一个新的发现可能会让诸多读者感到惊讶不已。今天用来设计新的手工艺品和系统的创意媒体,尤其是数字媒体,其广泛的用途和丰富的表现力真是令人惊讶。在我看来,数字媒体的多功能性和强大的表现力足以解释为什么该领域对优秀的年轻人具有这么大的吸引力。这种巨大的吸引力甚至超过了高收入就业前景所具有的吸引力。

工程学是一个很宽广的领域,它从供水系统到社交网络软件,包罗万象。任何人,包括我自己在内,对工程学诸多子学科的理解都还是比较肤浅的。因此,本书的观点主要基于我在电子、电气工程和计算机科学方面的有限经验。这些观点适用于数字和信息技术,也可能适用于其他技术,如桥梁以及化工厂等等。尽管如此,根据我的经验,数字技术已经渗透到几乎所有的工程学科中。例如,现代化的工厂大部分是由计算机控制和管理的,从而也就成为信息物理系统(CPS)的实例。本书的第6章对该内容进行了详细的阐述。这类系统无疑受到我在本书中所指出的数字技术的潜力、多变性和局限性的制约。

我首先假定读者是没有任何特定技术背景的。但在本书的某些章节中,我也的确是较为深入地讨论了一些我所关注的技术主题。但是,我向读者保证,每一个这样的讨论都不会过度深入。当然,我也希望我所略掉的这些技术细节不会严重破坏我所要传递的信息。但凡遇到这样的技术主题,请读者保持耐心并坚持下去。请相信,类似这种技术呆子式的头脑风暴会很快过去的。

我的确假设您是一位了解计算机技术的读者。在据理力争之后,我在本书中只保留了12个方程。实际上,要理解这些并非复杂的方程,高中水平的数学和科学知识就足够了,即使不能完全理解,读者也能从中获取应有的信息。我的出版商用这个理由反驳我,说如果这是真的,我就应该将其全部删除。但是我更希望予以保留,我坚信,现在了解计算技术的读者比以前会更多。我已经向出版商保证,算上我的朋友和家人,本书几十册的销量还是可以保证的。

本书书名的灵感来自纳西姆·尼古拉斯·塔勒布精彩的著作《黑天鹅》。塔勒布给书的序言的一个部分取名为“柏拉图与愚人”。塔勒布把“柏拉图主义”形容为“将现实切割为清晰形状的愿望”。塔勒布哀叹随后的专业化发展趋势,并指出这种专业化使我们对那些不寻常的事件视而不见,他将不寻常的事件称为“黑天鹅”。围绕塔勒布的思想,本书的一个主题会阐明技术学科也容易受到过度专业化的影响;每个专业都在不知不觉地采用某些范式,这些范式将这个专业转化为一种缓慢发展的文化,其结果是阻碍了而不是促进了技术的创新。

此外,本书的书名从根本上反对这样的认知,即技术是由独立于人类的柏拉图式的理想构成的,并且技术是由人类发现的。这一观点刚好与认为人类创造而不是发现知识和技术的观念背道而驰。书名中的技术呆子象征着一种主观甚至是奇特的创造性力量,而不是客观真理的一个发现者。

我希望本书可以改变公众对工程学的某些偏见,进而鼓励年轻人更倾向于选择工程学方面的职业,而不只是根据某种工作的前景来进行规划。我确信,工程学从根本上说是一门创造性的学科,而让许多人产生偏见的技术苦差事并不比任何其他创造性学科中的工作更为辛苦和乏味。是的,努力工作是我们必需坚持的职业操守,但是,你在工程学上的努力付出是一定会有回报的,那就是,你可以改变这个世界。





内容概述


有些读者喜欢在读一本书之前去了解书的大致内容。抛开有问题的自指性 [1] ,对于这样的读者,我在这里特地给出了本书的简要概述。但是,坦率地说,我建议读者跳过这部分内容,直接从第1章开始阅读。因为本书所要讲述的内容是无法用几个段落来准确概括的。任何类似的内容摘要都必然会使本书看起来比它实际的内容更为晦涩难懂。然而,对于那些真的需要内容提要的读者而言,以下便是我对本书内容的简要总结。

人们对技术和工程的普遍看法往往是这样的:这是一个缺少激情的领域,它由逻辑和枯燥乏味的事实与真理主导。在第1章,我探讨了技术中的事实和真理的概念,我认为这些事实和真理并不只是被人类发现的,实际上更多是被人类发明或设计出来的。技术不是建立在永恒的柏拉图式的理想之上的,而是建立在更灵活多变且有时更为离奇的构思之上的。真理的概念变得更具主观性;集体的智慧比个人的智慧更加完善;关于事实演变的描述要比事实本身更为有趣;事实和真理可能都是错误的。然而,要想证明一个事实为真,有时可能会花费数十亿美元的巨资。因此,我在这里提出这样的观点:工程学和科学都是建立在事实和真理基础之上的学科,二者相辅相成、相互重叠,且相互利用彼此的方法。在这一章中,我试图理解工程学一直以来被视作科学的“胞妹”的文化现象。

第2章的内容主要是研究发现与发明之间的关系。该章的一个重要主题是,模型是被发明的,而不是被发现的。正是模型的有用性,而不是它们的真实性,赋予了它们价值。请读者注意,模型的有用性并不一定是一种实用的、功用的有用性。一个模型可能仅仅是因为解释或预测了观测结果就成为有用的模型,即使其所观测到的现象并没有实际的应用价值。

当模型与正在被研究的自然系统相符时,该模型对科学家而言就是有用的。而当符合该模型的物理实现总是能被构建时,该模型对工程师而言才是有用的。实际上,这些用途是相互补充的,且常常被组合使用。

本书第2章的内容深受库恩(1962)思想的影响。但是,库恩关注的是科学,而不是工程学。模型的工程应用给模型的构建带来更大的创造性空间,因为这些模型无须与某些已存在的自然系统保持高度一致。但是,另一方面,模型的使用会减缓技术的变革,这是因为模型建立在使我们思想条框化的范式之上,会对我们的思维造成限制。模型也可能变得相当复杂,从而导致更加专业化的发展。当然,模型也会因为不顺畅的跨专业融通而发展缓慢。

在第3章,我深入探讨了模型的工程应用是如何激活创造力的。我会通过说明模型在数字技术发展中所起的作用来进行讨论。在数字技术中,模型被层层叠加起来,每一层的设计都会影响其上、下相邻层的设计。通过这种多重的分层,数字技术已经从广泛的工程化系统中基本上消除了任何有意义的物理约束。每一层模型都与一个已建立的范式相符合,这是一种建模和抽象工程化设计的方法。因此,创新并不会受到技术物理学的制约,而会受到我们的想象力和吸收新范式的能力的影响。

我认为范式在数字技术中起着核心作用,因为如果没有它们,人类就不可能理解我们今天用常规方法所构建的系统的复杂性。但这些范式属于人类构造的范畴,会受到文化和语言的支配。在许多情况下,已经出现的范式会显得有些不同寻常,这是因为它们还呈现了创造者的个性和审美标准。

数字技术的一个显著特点是,这些范式是层叠的。半导体物理学赋予我们制造晶体管的能力,我们可以使用晶体管作为电子控制开关,其只具有两种截然不同的状态:“导通”和“截止”。这使得作为诸多分层中第一层的数字抽象成为可能,最终建立起使我们能够构建数据库、机器学习系统、网络服务器等的编程语言。这些层中的每一层都是通过聚结一组相互竞争的范式形成的。

在第4章,我探讨了构成当今大多数数字技术硬件的层次化范式。我将说明硬件的物理实体并非长久不变,但范式却可以长久存在。这些硬件通常每隔几年就会被丢弃,因为它们已经被严重损耗,或者因为过时而被淘汰了。然而,硬件的设计原理以及它们所有的缺陷和特性仍会持续几十年。





在第5章,我将探讨构成当今大部分信息技术的层次化范式。这些范式界定了我们是如何构造软件的。事实证明,软件比硬件的生命力要持久得多。范式就像人类的文化,变化缓慢,特别是当它与技术的变化速度相比时,就更是如此了。虽然从严格的意义上说,库恩的科学范式是人类构建的结果,但软件的范式会被编码在软件之中。在自我参照的狂欢中,软件会构建自己的“脚手架”。尽管软件是一种短暂的非实体性存在,但是软件的自我支撑使得它的生命力要比硬件更为持久。可以说,软件的寿命甚至可能超过人类的寿命。


第6章探讨了技术革命的结构,并特别聚焦于数字技术。这一章的内容同样深受库恩的影响,但主要是致力于找出技术革命与科学革命的不同之处。我认为,其中一个关键性的不同点就是,相较于科学范式的变化,技术范式的出现和消失的速度要快得多。这可能是因为,技术范式相对而言不受物理世界的限制,而且是深度层叠的。与科学范式一样,新的技术范式并不一定必须取代旧范式。相反,它们可能会覆盖旧的平台,在现有平台的基础上构建出新的平台。能否做到这一点取决于我在前三章中所探讨的模型的传递性。与科学范式不同的是,触发新技术范式的那些危机并非来自一场现象的发现,而是来自日益增长的复杂性和技术驱动的新机遇。

为了不让读者对数字技术的发展过于感到乐观,接下来的几章将会探讨什么是我们不能用数字技术来解决的,至少目前如此。这就需要我先向读者解释一下20世纪出现的三个经典概念:香农的信息理论,丘奇—图灵论题,以及哥德尔关于形式化模型的不完备性。在后面的章节,我将考虑继续探讨决定论的概念,并进一步论述我们如何利用概率的概念来建立非确定性的模型。在探讨该问题的过程中,我需要面对20世纪出现的被称为数字物理学的另一个范式,以及人类认知就是软件的观点。

这一部分内容是从第7章开始的,在本章,我分析了信息的概念——信息是什么,以及如何测量信息。在这一章,我介绍了克劳德·香农的信息测量方法,并指出通常无法用数字化的方式表达他的信息概念。我定义了一个比现在用软件和计算机所能实现的用途更为宽泛的“信息处理机”。

在第8章我会解释软件功能的局限性。。我认为,信息处理函数的数量远远大于可能的计算机程序的数量。在这一章,我介绍了艾伦·图灵的不可判定性研究结果,该结果表明存在一些有用的但当今计算机上的软件所不能实现的信息处理函数。但这并不意味着,一个函数如果不能通过软件实现,它就不能通过其他任何机器来实现。

我希望大家不要被这种热情冲昏头脑,不要对软件已经取得的成就感到惊讶,也不要预言诸如认知和理解等自然现象在软件中是可以实现的。在这里,我不得不面对被一些人称为“数字物理学”的信念,即物理世界在某种程度上就是软件或相当于软件。我认为,作为理解物理世界的一种方式,这种想法不太可能是正确或有用的,至少在更极端的方式下如此,而且我认为这一论题是不可证伪的,因此也就是不科学的。

在第9章中所探讨的内容超越了可数的计算世界。我会阐明,计算机不是通用机器,且它们真正的力量源于它们与人类的伙伴关系。在这一章,我解释了连续统的概念。这个概念超出了软件的范畴且为数字物理学所排斥,但其似乎对物理世界的建模又必不可少。我分析了作为软件世界基础的形式化模型的局限性,同时我认为人类和计算机的共同进化与伙伴关系要比二者之一都更强大。在本章,我还解释了库尔特·哥德尔著名的不完备性定理,其对任何具有自我参照能力的建模形式化方法设定了一些基本的限制。我们应该秉持谦逊的态度,但我们也需要认识到仍有巨大的开发潜力等待我们去发掘。

在第10章,我们讨论了决定论、软件的性质以及许多自然界的数学模型。我认为,确定性是模型的一种属性,而不是物理世界的属性。但它是一种极为宝贵的属性,在历史上为工程学和科学都带来了可观的回报。然而,决定论也有其局限性。由于混沌和复杂性,即便确定性的模型也可能无法被有效地预测。同时,包含离散功能和连续行为的确定性模型家族目前仍不完善。因此,我认为,决定论被瓦解是不可避免的,确定性模型有其明显的局限性。在许多情况下,非确定性模型更为简单,也能够更好地反映出我们所不知道的东西。如果非确定性模型能被明智而审慎地使用,那么它将在工程学中起到至关重要的作用。

在第11章,我最终将面对随机性的含义及其度量,即概率,其量化了非确定性事件的可能性。我认为,从根本上讲,概率是一种关于事物不确定性的模型,而非事物的直接模型。它建模了我们所不了解的东西。在本章,我分析了频率学派和贝叶斯学派存在已久的争论,并会坚定地支持贝叶斯学派。我认为,在使用工程学而不是科学意义上的模型,以及使用贝叶斯意义上的概率做出解释时,随机性所带来的哲学困扰就会骤然消失。在这一章,我还重新考虑了连续统问题,并阐明连续统上的概率模型进一步强化了“数字物理学是极不可能的”这一结论。因此,在接受数字物理学之前,我们必须为其找到无可辩驳的证据。

在最后一章,我通过分析模型在技术中的认知作用,以及模型与它们最终建模的物理系统之间的关系,将所有这一切都联系在一起。我运用了本书前面内容中的论点:至少在数字技术中,模型和物理现实之间存在着许多抽象层,两者之间的联系的确变得非常脆弱。但是,如第5章所述,软件范式所具有的自支撑能力允许这些模型独立存在,允许它们几乎但并非完全独立于物理现实。我认为,这不会导致笛卡儿的身心二元论,但它确实强调了以极大的决心和约束坚持将地图与地域进行区分的必要性。尽管模型存在于物理世界之中,但最好将其视为与物理世界相分离的现实。

最具表现力的建模范式能够自我参照,这使得它们能够不断地构建支撑自身的“脚手架”,但同时必然使得它们是不完备的。从根本上讲,正是这种不完备性激发了创造力,并确保我们能够运用技术完成的事情是无限的。那么到底是什么因素阻碍了我们呢?在本章,我既分析了进步过程中存在的障碍,同时也指出技术应用不当可能给社会带来的威胁。


[1] 自指性(self-referentiality),是20世纪西方文学理论中一个重要的术语,其基本含义是指文学将读者的注意力吸引向其自身的特性。——译者注





第一部分





1.

墙上的影子


在本章,我讨论了“事实”和“真理”的概念,并将阐明:关于事实和真理的集体智慧可能比个体智慧更好;关于事实的叙述可能比事实本身更加有趣;事实和真理可能是被发明甚至是被设计出来的,而不仅仅是被发现的;事实和真理可能是错误的;而且要证明事实的真实性,很可能会花费数十亿美元的巨资。哦,是的,技术呆子被人们严重误解了,科学和工程也被混淆在一起。





1.1 技术呆子


我就是一个典型的技术呆子。《韦氏大词典》中,技术呆子是指:


穿着不时髦、自身没有吸引力或者完全不善于社交的人,特指专心致力知识或学术事业的人,对技术主题、计算机等非常感兴趣的人。




除了我这个技术呆子,还有谁会以词典的释义作为一本书的开场白呢?我不指望像我这样的技术呆子能把一本书写得很好,尤其是对普通的读者而言。实际上,我十分确定,如果让别人来写这本书,一定会比我写的好很多。但是,我找不到其他人来完成这项任务。为了让本书的内容更加丰富,我会不时地引用他人的观点作为补充,当然也包括词典里的释义。

上面的定义大概是一位令人信赖的专家就技术呆子这个主题而给出的。我们衷心期望词典的出版商能够确保这些定义是由真正的专家编写的。然而,我们还不能确定一个关于技术呆子的维基百科页面是不是由专家编写的。因为任何可以上网的用户,不需要专业资格的审查,就都能修改维基百科页面上的内容。尽管如此,“技术呆子”的维基页面在很大程度上与《韦氏大词典》上的定义是一致的,但也提供了更多的信息:


虽然“技术呆子”最初是一个带有刻板印象的贬义词,但与其他贬义词一样,这个词已被一些人重新定义为一个有着自豪感和群体认同感的术语。




现在,我的内心不再纠结了,可以毫不犹豫并自豪地称自己为技术呆子了。下面是关于这个词的来源:


“技术呆子”这个词用来指称一类人,最初出现在苏斯博士的《如果我来经营动物园》(1950)一书中。书里的讲述者杰拉尔德·麦格鲁声称,他要为想象中的动物园搜集“一个圣诞控(Nerkle)、一个呆子,外加一匹泡泡纱(Seersucker)”。(引用《韦氏大词典》和《美国传统词典》。)这个词的俚语意思可以追溯到后一年,也就是1951年,当时《新闻周刊》报道了该词在密歇根州的底特律被广泛地用作“乏味之人”或“与环境格格不入的人”的同义词。……在某种程度上,这个词语带有“书生气”和“社交低能”的意味。




比起词典里的定义,我更喜欢这个描述,因为它关注这个词的生成和演变过程,而不只是简单地介绍它是什么。当我们理解了事实是如何演变为事实的,而不是仅仅接受它们,就好像它们一直就在那里,那么大多数事实都会变得更为有趣。

但是,这篇维基百科的文章是否具有权威性呢?文章指出,美国歌曲恶搞专家艾尔·扬科维奇(绰号“怪人艾尔”)的歌曲《又白又宅》是这样说的:“编辑维基百科是一个刻板的书呆子感兴趣的工作。”因此,我确信这篇文章很可能是由某个书呆子专家撰写的。

词典释义与文化叙述在风格上有很大的区别。词典里的定义通常是给出一个事实或一个真理。《韦氏大词典》将“定义”定义为“对一个词、短语等的意义的解释”。这一释义给“释义”赋予了事实和真理耀眼的光环,却弱化了它们在人类文化中的不稳定性和流动性。

我们中的大多数人对待技术就好像它也是事实和真理的概要。我们会理所当然地认为技术进步是因为人们发现了更多的事实和真理。由于事实和真理的发现属于科学范畴,因此可以理解为科学推动了技术的发展。但是,我不相信维基百科的技术是由于事实和真理的发现才产生的。

维基百科是由吉米·威尔士和拉里·桑格创建的软件系统,第一个版本于2001年上线发布。尽管我并不认识他们,但是,我的成见之一就是,许多软件开发人员都是技术呆子,所以可以合情合理地认为他们也就是这类人。

根据维基百科上的文章,桑格创造了它的名字“维基和百科全书的合成词”。根据“维基”页面上的链接,我们了解到维基是一个“允许通过网络浏览器直接对其内容和结构进行协作修改”的网站。它还让我们了解到,“wiki”是一个夏威夷土语,意思是“快速”,感谢沃德·坎宁安发明了维基这一概念。我希望你能同意我的观点,如果说坎宁安“发现”了维基,这听起来会令人感到奇怪,所以这大概不算是科学的进步吧。但发现与发明以及科学与工程之间的微妙关系并不总是那么清晰可辨。

坎宁安与博·勒夫在2001年合著的著作中对维基的概念做了如下描述:


维基旨在邀请所有用户编辑维基网站的任何页面,或者创建新的页面,仅是使用普通的Web浏览器就能完成,而且不需要任何额外组件。维基促进了不同页面之间有意义的主题关联,其使页面链接的创建非常简单,并会显示目标页面是否存在。维基不是一个为普通访问者精心设计的网站,相反,它试图让访问者参与到不断改变网站布局的创建与协作过程中。(勒夫和坎宁安,2001)




我很喜欢网页浏览器具有“朴素”的风格。当然,我也希望知道还有什么不同的风格。

上面这段描述给了我们这样一种感觉,那就是,类似于维基这样的系统,尤其是维基百科,它既是一种文化产品,也是一种技术产品。和所有的文化产品一样,它并不是在被发明的那一刻突然出现的。事实上,它几乎从来不是被发明的,而且几乎总是充满强烈的文化元素。“不同页面之间有意义的主题关联”实际上已经出现在万维网上了。根据维基百科的文章我们可以知道,万维网是“由英国科学家蒂姆·伯纳斯·李在1989年发明的”。

有趣的是,该文认为蒂姆·伯纳斯·李爵士(他因卓越的工作成就被伊丽莎白二世封为爵士)是一名“科学家”,尽管他的公认贡献并非发现事实和真理的本质,当然也不是关于自然世界——科学的主要焦点。伯纳斯·李在牛津大学获得物理学学士学位,毫无疑问物理学是一门科学学科,所以我认为称他为科学家是有一定道理的。但是,我还没看出他是一位成功的科学家。





也许是我误解了当科学家到底意味着什么。让我们回到值得信赖的、古老的《韦氏大词典》看看它是如何定义科学家的。词典中解释,科学家指的是“受过科学训练的人,其工作涉及科学研究或者解决科学难题”。嗯,这个定义好像不是很有帮助。让我们再来查查“科学”的意思。可以看到,科学是指“关于自然世界的知识或研究,其基础是通过实验和观察所获得的事实”。根据这个定义,如果伯纳斯·李的职业目标是研究自然世界,那么我不得不得出这样的结论:他的职业生涯(还)不是很成功。相比之下,如果他的职业目标是发明和设计从未存在过的人工制品,那么我们可以说他的确取得了惊人的成功,完全配得上爵士这一荣誉。他创造了今天发达国家几乎每个人都在使用的一组机制。他改变了世界。


可以说,伯纳斯·李的贡献更多是在文化方面,而不是在技术领域。网络和维基百科的文化背景可以追溯到更早时期。万尼瓦尔·布什 [1] 在1945年的一篇题为“诚如所思”的文章中写道:


百科全书的一些全新形式将会出现,它们中间会有许多相互关联的痕迹,它们将被存入麦克斯存储器里,并在那里被放大。(布什,1945)




麦克斯存储器是布什假想出的微缩胶片阅读器,其结构类似于超文本,这是伯纳斯·李发明的万维网的主要特征。伯纳斯·李的技术贡献是使布什的梦想成为现实。

那么,为什么伯纳斯·李会被认定是科学家呢?可能是写维基百科这一词条的人想要表达“科学家”是一种有荣誉的身份,而“工程师”不是。在纳西姆·塔勒布精彩的著作《黑天鹅》中,我获得了本书书名的灵感。塔勒布用“柏拉图主义”一词来表示“将现实分割为清晰形状的愿望”(塔勒布,2010)。我把人(包括我自己)归类为“工程师”或“科学家”(甚至是“技术呆子”),就是源于这种柏拉图主义。然而,人是复杂的,很难被准确归类。你可能会感到惊讶,我是一个技术呆子,同时竟然也是一个业余的艺术家(见图1.1)。

塔勒布认为,柏拉图主义,这一对分类的渴望以及对分类学的痴迷,“让我们误以为我们理解的比实际的要多”。


在哲学家柏拉图的思想(和个性)形成之后,我称其为柏拉图主义,它使我们倾向于把地图误认为是地域,并倾向于关注纯粹和明确界定的“形式”,无论是有形物体,如三角形,还是无形的社会观念,如乌托邦(根据某种“有意义”的蓝图建立的社会),甚至是民族。




诸如“科学家”和“工程师”等分类的任意性是柏拉图主义的一个例子。它使我们对世界的理解变得乐观,但也可能产生误导。在本章的其余部分,我将聚焦于区分发现与发明、发明与设计以及科学家与工程师等方面的困难。


图1.1 技术呆子的自画像(2007年)。





1.2 人工的与自然的


赫伯特·西蒙,20世纪最具影响力的思想家,计算机科学的图灵奖和诺贝尔经济学奖得主,在他的《人工科学》一书中对“人工的”现象和“自然的”现象进行了区分。


其观点是,某些现象在非常具体的意义上是“人工的”:它们之所以如此,仅仅是因为一个系统为其所处环境的目标或目的所塑造。(西蒙,1996)




如果一个系统是“被某些目标或目的塑造”的,那么这个系统就是人工的。但是,在这个陈述中,到底是谁塑造了这个被提及的系统呢?西蒙假定塑造者是人类。它也可以是上帝或其他目的论的原因,这样的话,“自然科学”和“人工科学”之间就不会再有任何区别了。人们甚至可以把上帝定义为通过目标或目的塑造我们整个自然世界的人。但是,人工的和自然的之间确实存在差异。按照西蒙的说法,它们之间存在着很大的差异。

西蒙举的人工现象的例子包括政治制度、经济、工程产物和行政组织。“按照目标或目的”对这类系统进行“塑型”就是该类系统的设计过程。


每个人都在设计行动方案,目的是将现有的情况转变为自己喜欢的那样。(西蒙,1996)




工程学,作为一门学科,从本义上讲是关于设计的。正如你现在可能已经意识到的那样,维基百科总是我解决许多研究问题的首选资源,它对工程学的定义是这样的:


工程学是为了发明、创新、设计、建造、维护、研究和改进结构、机器、工具、系统、部件、材料和过程而对数学、实证以及科学、经济、社会和实用知识的运用。(2016年3月1日检索)




然后,它又指出一个显而易见的事实,即“工程学科是极其宽广的”,并给出了该术语的起源:


“工程”一词源于拉丁文“ingenium”,意思是“聪明”;拉丁文“ingeniare”的意思是“发明,设计”。




请注意,这个词并非像许多人可能认为的那样源自“engine”(引擎)一词。相反,“engine”也源自与之相同的拉丁语词根。

维基百科有效地利用了最近取得的工程成就。但是,它是否具有权威性呢?它创造了集体智慧,并压制了专家个体的作用。如果你现在已有一定的年纪,就可能知道一些20世纪的百科全书,例如,《不列颠百科全书》。维基百科是这样描述《不列颠百科全书》的:


该书是由大约100名全职编辑和4 000多名参编者共同编写的,其中包括110名诺贝尔奖获得者和5位美国总统。




《不列颠百科全书》的编纂方式与维基百科的创建方式截然不同。编辑们聘请了顶尖的专家为词条撰稿。其重心在于专家个体,他们可以通过自己的声誉为内容增添权威性。

然而,维基百科的创建方式却并非如此。任何人都可以编辑维基百科的页面。那么,这些页面又如何才能具有权威性呢?从某种程度上讲,维基百科以责任取代了权威。图1.2给出之前引用的维基百科中工程学页面的编辑历史。请读者们注意,该图的底部显示此页面是在2016年2月25日被最新编辑的。

这条编辑的注释是“恢复可能的破坏”。事实上,对不到一分钟之前的这条编辑,有这样的一条评论:“这只是一个谎言。”这条编辑删除了相当多的文本,包括以前对工程学的定义,并将其替换为“这只是一个谎言”(原文如此)。这些编辑工作的全部历史都可以在维基百科网站上被找到。





图1.2 维基百科中工程学页面的编辑历史,2016年3月1日检索。





那么究竟是谁逆转了这种破坏行为呢?这个用户被标识为“ClueBot NG”。单击该名称将会显示出如图1.3所示的页面。原来ClueBot NG是一个“虚拟机器人”,维基百科将其定义为“在互联网上运行自动化任务(脚本)的软件应用程序”。在图1.3所示的页面上,列在第8项的是对“恶意破坏行为检测算法”的描述,这显然是一个软件。该软件将对词条的编辑操作归类为“恶意破坏”或“非恶意破坏”。如果是恶意破坏,它就会逆转编辑。用于进行分类的方法是统计机器学习法,其是当前数据科学热点领域的关键方法。我将在第9章研究这一机制是如何与免疫系统相类似的,以及它为什么会如此重要。我将在第11章解释其背后的原理。


图1.3 最新编辑器的用户页面,如图1.2所示,2016年3月1日检索。




现在,我们有必要停下来思考一下,与20世纪的百科全书相比,这一切究竟有多大的不同。这是值得我们思考的问题。稍后我还会对此发表更多的看法。然而,21世纪的发展趋势之一将是对专家个体、高端权威以及知识分子精英形成压制。在20世纪,“现代物理学的胜利”这样的字眼将在我们的脑海中唤起有关爱因斯坦、玻尔、薛定谔、海森堡和其他几个人的辉煌记忆。当然,还有很多人也在物理学方面做出了贡献,其中许多人也被认为是英雄。不可否认,专家们确实为维基百科的词条做出了贡献,但是他们的文字可能会被任何人改动和编写,其中也有恶意的破坏者。然而,大多数读者很少会去查看是谁编写的这个文本。可以说,作者的权威性似乎变得无关紧要了。词条的文本展现的是集体智慧,而不是个体智慧。

我们现在正面临一个很有趣的难题。集体智慧和个体智慧哪一个更接近真理?这个问题被我们所说的“真理”困扰着。如果说真理可以被创造出来,而不仅仅是被发现,那么这个问题的答案将会不同。





1.3 设计和发现


与西蒙的“人工科学”相比,“自然科学”研究的则是大自然赋予我们的东西。其目标是揭示那些独立于人类而存在的“自然的奥秘”。这些奥秘既不占用时间,也不占用空间;它们不是在被发现的时候产生的,也不是在被发现的地方存在的。

然而,认为这些自然的奥秘无形存在的想法至少可以追溯到柏拉图时代。柏拉图假定了理想的“型相”,并认为客观的和永恒的真理是不可能被完全知晓的。柏拉图认为这些“型相”是唯一的客观真理,而“哲学家”(知识的爱好者)的最终目标就是理解这些型相。这些型相代表了最准确的现实,而且柏拉图把对这些型相的理解称为“善”。

著名的柏拉图《洞穴之喻》(见图1.4)说明,人类对现实的感知总是不完美的。在这个寓言故事中,囚徒们背靠一堵矮墙被锁在一起(图的右下角)。他们的头朝向洞穴的空白墙壁,墙上有火光(上中部)照射所产生的影子(右上)。这些影子是矮墙后面被操纵的木偶和人物在火光下形成的,而洞穴墙壁上的影子构成了囚徒们体验的唯一现实知识。如果一个囚徒被允许回头并可以看到创造光明的火焰,那么他将拒绝接受火焰或木偶投射出影子的现实。如果囚徒进一步被允许离开洞穴,那么他将会被太阳蒙住眼睛,并进一步抗拒外部“理想”世界的现实。假如一个囚徒确实接受了他所接触到的一些真相,并试图将这些真相传达给矮墙后的那些囚徒,那么他们会认为他的想法是荒谬的,并且会拒绝接受。


图1.4 柏拉图的《洞穴之喻》,萨恩列达姆,1604年,大英博物馆。




这则寓言强调了实现善的困难,并解释了为什么那些成功说服他人相信一些新发现的、看似客观事实的人,例如我们这个世界的爱因斯坦和玻尔,最终会被认为是英雄。

西蒙将客观真理与人工现象做了对比。他认为,“如果自然现象在服从自然法则的过程中有一种‘必然性’的意味,那么人工现象在受环境影响的可塑性方面则有一种‘偶然性’的意味”。然而,它们“服从于自然法则”的先决条件是,不论是否可以被认识到,自然法则都是柏拉图式的、无形的存在。

一种截然相反的观点认为,自然法则是人类创造的模型,用来描述物理世界的运作方式。这一观点在过去几十年里得到广泛传播,它或许是从托马斯·库恩于1962年出版的具有开创性和争议性的著作《科学革命的结构》开始的。该书假设科学理论是由“范式”构成的,而范式则是人类思考世界的方式。

在上述两种情况下,称自然规律为“法则”会令人觉得有点儿奇怪。就如同公民必须遵守国家法律一样,大自然也一定要遵循自然法则。那么,当大自然违背自然法则时会发生什么呢?违背了自然法则,大自然也不会受到惩罚!相反,自然法则却变得没有效力了。我们设想一个国家是这样运作的,每当司机超速时,限速就会失效。但是“自然法则”会怎样呢?一个理想的真理怎么会变得无效呢?然而,我们的确已经多次看到自然法则失效的情形了。

牛津大学物理学家戴维·多伊奇是量子计算的先驱,他在2011年出版的《无穷的开始》一书中认为,科学更多是关于“好的解释”的,而并非关于自然法则的。多伊奇将这些解释归因于人类,而不是一些早已存在的、无形的真理:


本质上,发现一种新的解释就是一种创造性活动。(多伊奇,2011:7)




相比之下,“自然法则”的作用更为卑微,它们不过是将过去与未来的联系编纂成文罢了:


任何流传的关于未来和过去的所谓自然法则——无论是对是错——都声称它们彼此“相似”,都符合这一法则。(多伊奇,2011:6)




多伊奇进一步驳斥了经验主义的观点,并认为自然法则和好的解释都并非源于对物理世界的观察:


经验对于科学而言确实是必不可少的,但是,经验所起的作用与经验主义所设想的不同。它不是理论的来源。它的主要用途是在已经被猜想的理论之间做出选择。(多伊奇,2011)





在这里,多伊奇的观点呼应了奥地利籍英国科学哲学家卡尔·波普尔(1902—1994)早期提出的论点。波普尔指出,这些关于自然的猜想和假设来自“创造性直觉”,只有在它们被提出之后才能得到经验的验证(波普尔,1959)。多伊奇认为,物质世界中的大多数现实并不是任何人都能直接观察到的。例如,太阳中的黑洞、夸克和核聚变等现象,包含着人类从未经历过的规模、力和温度。它们就像柏拉图型相那样难以接近,充其量只能像墙上的影子那样被观察到。不可能是对黑洞的观察导致我们提出了有关黑洞的理论,因为我们无法直接真实地观察它们。


柏拉图认识到,型相的理想真理不可能被人类完全了解。因为它们不可能被人类完全了解,所以,我们把对自然的认识看作人类构建的模型或多伊奇所说的解释不就更加实际吗?这会使我们谦逊地承认,即便我们那些最坚定的关于自然的信念也有待改进。请读者不要误解我的意思,我并不是说不存在真理,而是说我们应该对真理永远保持质疑的态度。

这种谦逊是维基百科集体智慧模式内在固有的特质。任何个人,任何权威,无论他声名多么显赫,都不能被认为是“真理”的持有者。知识应该也必须进化。随着知识的进化,“真理”不也在进化吗?当然,现实主义者可能会回答说,进化的是信念,而不是知识。对那个现实主义者来说,一个信念如果不是真实的,它就不应该是(而且从来都不是)知识。

多伊奇指出,对权威的尊重早在启蒙时代就被经验主义取代了。经验主义的思想和理论都是建立在检验和经验的基础上的。但他认为,仅凭经验是不够的,因为物理世界大部分都是在无法支持人类生存的条件下运作的,因此无法被直接体验。


经验主义从来都没有达到把科学从权威中解放出来的目的。它否认了传统权威的合法性,这是有益的。但不幸的是,它又建立了另外两个错误的权威——感官体验和虚拟的“推导”过程,如归纳法等,即人类头脑里的想象被用来从经验中提炼理论。(多伊奇,2011)




多伊奇再次呼应了波普尔的观点,他认为知识不是从经验中获得的,而是从一个基本的创造性的猜想过程中获得的。通常在很久以后,人们往往用一些精心设计的实验来支持猜想(通常是由于不能伪造它们)。这种有目的的实验通常只能观察到间接的副作用。换句话说,知识是被设计出来的。

下一章将重点讨论模型在科学和工程中所起的作用,但就目前而言,设计和发现之间存在着一种紧张关系。有些人工现象不是被刻意设计出来的,而是在人类活动中偶然出现的。例如,经济学领域就充满了对这种涌现现象的研究。这些人工现象的运作规则可以说是被发现的,而不是被设计出来的。虽然有许多其他的人工现象的确是被设计出来的,但它们也会受到自然法则的支配,而自然法则至少在柏拉图式的观点中是必须被发现的。但是,我们对自然法则的认识是不完善的,所以我们必须用数学的方法来构建这些法则的模型。难道这些模型不是被设计出来的吗?

众所周知,艾萨克·牛顿爵士的运动定律现已为大自然所违背,因为它们在相对速度和量子尺度下会失效。这些定律以数学公式的形式出现,例如牛顿第二定律 [2] :

F =ma (4 096)

这一定律表示力等于质量乘以加速度。这看起来很像一种柏拉图式型相的表达,但它是错误的!尽管它是错的,我们还是会毫不犹豫地说牛顿“发现了”它。如果我们说牛顿“发明了”它,那么人们一定会觉得我们很可笑。

对于某些现象,我们会毫不犹豫地使用“发明”这个词来表达发现了它们的意思。以贝尔实验室的约翰·巴丁、沃尔特·布拉顿和威廉·肖克利(见图1.5)发明晶体管为例。 [3] 他们“由于对半导体的研究和对晶体管效应的发现”而获得了1956年的诺贝尔物理学奖。他们用一种由金和锗材料制成的器件演示了晶体管效应,尽管今天晶体管的实现主要是使用掺杂了特定杂质的硅晶体。请注意诺贝尔奖颁奖词中的谨慎措辞,“他们发现了晶体管效应”。诺贝尔奖好像并不是为发明而颁发的,而仅仅是为发现而颁发的。然而,我们大多数人会说晶体管是20世纪50年代在贝尔实验室被发明的。

但事实上,朱利叶斯·利林菲尔德在1925年发明了一种现在被称为场效应晶体管(FET)的晶体管,并在1930年获得了一项美国专利的授权(利林菲尔德,1930)。因此,如果晶体管效应是一种柏拉图式的型相,那么它实际上是由朱利叶斯·利林菲尔德在更早的时候发现的。但专利并不是为发现而颁发的,而是为发明而颁发的。根据美国专利和商标局的规定,人们不能为“自然规律、自然现象和抽象概念申请专利”。当然,专利可能是为自然法则的一种“新用途”而颁发的,因为任何事物都可能受到自然法则的约束,这种新颖的用途就是一项发明,而不是一项发现。

公平地讲,对诺贝尔奖委员会而言,利林菲尔德发明的场效应晶体管实际上与巴丁、布拉顿和肖克利开发的晶体管有着显著差异。


图1.5 约翰·巴丁、沃尔特·布拉顿和威廉·肖克利因发现晶体管效应而获得1956年诺贝尔物理学奖。




贝尔实验室研究的晶体管是一种今天被称为双极型晶体管的晶体管。有趣的是,由于双极型晶体管对能量的要求较高,其现在的应用已经变得非常小众了。而场效应晶体管的使用则更为普遍,并已成为数字技术的主力军。在今天,一部苹果手机里可以有数十亿个场效应晶体管。

发明和发现以这种方式变得混乱的情形并不少见。一种思想的知识历史很少是清晰的,然而,作为一种文化,我们应该坚持挑选出那些把这些思想带到前台的“精英”。 [4]

发现和发明之间的紧张关系由来已久。晶体管效应是一种一直存在并有待被发现的“自然现象”吗?据我所知,还没有人在自然界中发现过由金和锗构成的“三明治”或用作晶体管的掺杂硅。所以晶体管一定不是一种自然现象。但当这些“三明治”被人类制造出来的时候,自然就会接管并调节这些材料中的电子流动,从而实现晶体管效应。因此,晶体管似乎是自然法则的一种新颖应用。

但是,直到晶体管被制造和研究之后,人们对电子在掺杂过的晶体材料中的运动才有了更好的理解。事实上,直到今天,随着更多研究的开展,人们对这一现象的了解还在不断加深。自然法则是指在人类创造发明之前在自然界中没有表现出来的法则,而且是在这样的创造之后才被理解的法则。这是一个柏拉图型相吗?然而,在我看来,声称晶体管效应一直存在,而且是一种永恒的、无形的存在的说法是有问题的。对我来说,这一说法已经超出我对“存在”这个词的理解极限。

这场关于自然法则的争论由来已久。亚里士多德是柏拉图的学生,但是他对柏拉图式的理想型相进行了质疑,并认为知识是建立在对特定事物进行研究的基础之上的,归纳的知识是从这种研究中产生的,而不是以一种无形的型相预先存在的。亚里士多德将对自然界中的现象的研究称为“自然哲学”,也就是我们现在所说的“科学”。亚里士多德的事实世界是可扩展的,它随着人们对自然世界的不断研究而增长。然而,柏拉图的事实世界是固定不变的,所有的事实都以型相的形式存在着,且其中的许多仍然有待被发现。

但是,事实似乎可能会出错。以牛顿第二运动定律为例,尽管它是错误的,但是仍然非常有用。工程师们一直在用它设计汽车、飞机、机器人、桥梁、玩具等等。它为刻画特定事物的运动行为提供了一个很好的模型,只要它们的运动速度没有接近光速,就不需要在亚原子刻度上被检验。但是,牛顿第二运动定律不可能是柏拉图式的型相,因为它已然被自然违背。然而,牛顿第二运动定律可以构成亚里士多德意义上的知识,因为它很好地归纳了宏观对象的行为。





1.4 工程和科学


西蒙认为,设计就是“将现有情况转变为优选情况”。但是我们所说的“优选”情况是什么意思呢?在政治体系中,这可能是非常主观的。在工程系统中,其可能更加客观。一个政治领袖可能更喜欢将所有的移民拒于门外的局面,即使没有客观证据表明这样做会给任何人带来什么好处。相比之下,工程师则常常被要求以客观的标准来实现他们所希望的“优选”情况,例如降低成本或降低能耗等。西蒙所说的“优选情况”是开放性的。但在大众文化中,认为工程师主要是优化现有设计的看法并不少见。下面这个有些幽默的笑话恰好强调了这一点:


问:乐观者、悲观者和工程师之间有什么区别吗?

答:乐观者看到的是一个半满的玻璃杯。悲观者看到的是一个半空的玻璃杯。而工程师看到的则是玻璃杯比实际需要大了一倍。




这个笑话源于我们脑子里对工程师的成见,即工程师喜欢成本更低的那些产品。尽管缺乏任何客观的衡量标准表明工程系统比“现有的情况”要好,但是许多工程系统仍被认为是“优选的”。例如,苹果手机并没有比诺基亚手机更好用,电池续航时间还明显更短,而且价格也不便宜!人们说苹果手机是“优选的”手机,是因为其具有一些非客观的属性。从根本上说,它是对人类的一种创造性贡献,而不是一种优化。然而,它无疑是一件工程制品。

当使用“人工科学”一词来指称创造和研究人工制品的时候,西蒙为“人工”一词的贬义含义感到惋惜,他说:“我们的语言似乎反映了人类对自己产品的极度不信任。”可以说,对自然产物的不信任同样合理,正如下面的这首诗所暗示的那样。但是,作为一位拥有苹果手机的青少年的父亲,我可以证明对人工制品的不信任是真实存在的。不管是否可信,毫无疑问,智能手机是变革性的人工制品。苹果手机(及其后来的竞争对手)以及最近在无线通信和计算机系统方面的其他创新,使得我们能够将几乎所有人类曾经发布的几乎所有信息都装在口袋里。将其称为“变革性的”似乎太过于轻描淡写了。这是工程学——“人工科学”的胜利,而不是自然科学的胜利。然而,我们不得不承认,苹果手机里几乎没有任何新的发明。当苹果手机上市的时候,它的每一项重要功能几乎已经存在于其他产品中了。苹果手机更多是设计的结果,而不是发明或发现。

非自然

斯蒂芬·邓恩

我确信这些年来,自然早就不再喜欢我了,

似乎它无意中听到了我对它的一些沉默而冗长的心声。

我坚信只有人工技艺才能真的丰富造物主最初创造、设计及修正的世界。

如果自然能够开口讲话,它也许会说,

瞧!那娇媚的百合、凄美的沼泽还有神奇的蜘蛛网,

就是这一切构成了世界的本来面目,

这是任何人工技艺都无法比拟的。

自然就是这么周而复始地运行着。

如果自然想要再说些严厉的字眼儿,

它可能会举出人工技艺的种种劣迹,

看看人类制造出的光滑完美的炸弹吧,

还有那些折磨人的酷刑工具。

我们的本性是如此人性,

我们隐藏在伪装和辩护的言辞背后。

我们对自然总是充满溢美之词。

但是,我在慷慨地赞美自然的同时,

也会指出它的冷漠。

看看它的那些暴力行为吧,

冰雹、大雨和狂风

足以顷刻间破坏拖车营地、运动场以及老年人的家园。

我这次真的要面对自然大声说出我的心声,

真心希望自然能够听到我的话语。

我想说,我更喜欢那些人工技艺。

那些通常隐藏着的技巧。

没有它们,人类无法真正地认知自我,

也无法欣赏自然的鬼斧神工。



然而,当今的西方文化中有这样一种司空见惯的现象,大多数人似乎更尊重发明家而不是工程师,更尊重科学家而不是发明家。科林·麦基尔文在《自然》杂志的一篇文章中,将此归因于美国国家工程院前院长威廉·伍尔夫,声明如下:


科学界普遍认为科学优于工程。(麦基尔文,2010)




这种态度从科学界蔓延到一般文化领域。我们常用“火箭科学家”这个词形容非常聪明的人,尽管大多数太空计划的参与者所做的都是工程。麦基尔文继续说:





伍尔夫认为此现象在一定意义上归因于创新的“线性”创新模式。该模式认为,科学发现会导致技术的进步,而技术进步反过来又会推动人类的发展。这种模式在决策者的头脑中根深蒂固,就如同它不被知性地信任一样。正如任何一位工程师都会告诉你的那样,诸如航空和蒸汽机等创新,通常都早于对事物如何运行的科学理解。





很难具体指出是哪一项科学发现最终促成了苹果手机的出现,因为它所依赖的每一项科学发现都已经在其他产品中得到了广泛的应用。然而,我们很容易找到足够的证据,证明流行文化认为这种线性创新模式实际上就是事物的运作方式。例如,About.com是一个由广告资助的网站,其围绕着各种各样的主题收集读者的评论。在其中一项关于“工程师和科学家——区别是什么?”的问卷调查中,一些读者给出如下回答: [5]


科学家是创造理论的人,工程师是将理论运用于实践的人。他们简直是在互相恭维(原文如此)……

科学是许多高层次的理论,而工程则是实现和优化。

工程师处理数学、效率和优化,而科学家处理“什么是可能的”。

工程师受过使用工具的训练,而科学家受过制造工具的训练。

科学家创造理论并努力去验证理论,工程师在这些理论中不断地探索以“优化”现实生活中的事物。

科学家发明法则,而工程师则应用法则。

科学家发明新的理论,工程师将这些理论运用于实际。




上述这些观点显然并不具有权威性,而是在一定程度上反映了大众的普遍看法。请读者对比一下这个网站和维基百科的风格。显然,这个网站是个体智慧(和愚昧)的入口,而维基百科是集体智慧的门户。

库恩是一位备受尊敬的科学史学家和哲学家,他在1962年出版的《科学革命的结构》一书中呼应了伍尔夫关于“科学界的普遍态度”的观点,并指出某些类型的科学测量任务是“降级交给工程师或技术人员去做的苦差”(库恩,1962)。对于库恩来说,工程师显然要低科学家一等。但就像他在同一篇文章中反复提到科学家也是“人”一样,我们姑且原谅他对工程师的这种轻蔑言论,因为在他写作的时候,这种观点在当时的文化中正处于主流地位,并且具有很强的真实性。

库恩在谈及什么是科学的问题时说:“‘科学’一词在很大程度上专门用来指那些以明显的方式取得进展的领域。”但是,他又指出,许多领域的进展都是显而易见的:


我们之所以很难看到科学和技术之间的深刻差异,其中的部分原因一定与这一事实有关:进步是这两个领域都有的一个明显特征。




库恩拒绝接受一种普遍认可的观点——科学的进步正朝着某种柏拉图式的真理发展:


我们可能……必须放弃这样一种观念,无论这种观念是显性的还是隐性的,即范式的变化使科学家和那些向他们学习的人越来越接近真理了。




如果真理不是目标,那么是什么赋予了“进步”的方向性?库恩假设科学也许实际上就没有什么目标。库恩认识到,许多人很难接受这一观察结果。


我们都深深地习惯于把科学看作一项不断向大自然预先设定的目标靠拢的伟大事业。




然后,他进一步把科学的进步和达尔文的进化论做了一个类比:


《物种的起源》不承认任何由上帝或自然设定的目标。




科学缺乏目标可能会令人感到震惊,但对于技术而言,这似乎更容易接受,因为我们很难假设任何终极的、柏拉图式的技术“真理”,也很难假设任何在达成目标时就会结束的领域。一旦人们知道如何来做某些事情,这种知识就不会被遗忘,技术就会进步。

哲学家约翰·塞尔在1984年出版的一本书中支持伍尔夫和库恩关于20世纪科学的观点:


“科学”已经成为一个令人崇敬的术语了,各种不同于物理学和化学的学科都渴望称自己为“科学”。一个很好的经验法则就是,任何自称“科学”的东西都可能不是“科学”——例如,基督教科学、军事科学,甚至是认知科学或社会科学等。(塞尔,1984:11)




斯宾塞·克劳在他1968年出版的《新婆罗门——美国的科学生活》(The New Brahmins: Scientific Life in Americ )一书中写到了“科学家现在所激发的敬畏”:


科学已经成为国教的一种形式,而科学家则是其神父和牧师。(克劳,1968:12)




许多学科试图效仿科学的方法,希望得到类似的回报。提出一个假设并设计实验试图证伪该假设的“科学方法”,这对许多与自然科学几乎没有联系的学科是有用的。但是,在这些非科学的领域中,科学方法的价值往往并不那么大。塞尔在提到社会科学时指出,“自然科学的研究方法在研究人类行为的方面并没有带来类似于物理学和化学那样的回报”(塞尔,1984:71)。

在库恩之前,波普尔强调科学方法的核心是可证伪性。波普尔认为,一个理论或假设只有在可证伪的情况下才是科学的。要证明是可证伪的,至少应存在一种实证性实验的可能性,以证明这一理论或假设是不成立的。例如,“所有天鹅都是白色的”这个假设是无法通过任何观察到的白天鹅的数量来得到支持的。但是,这个假设是可证伪的,因为某些实验可能会发现一只黑天鹅。因此,尽管它是一个错误的理论,却是一个科学的理论。

库恩驳斥了波普尔关于科学理论会被证伪否定的结论,并认为,即使面对反驳这个科学理论的证据,一个理论也不应该被否定,直到一个作为替代的理论被发明出来:


导致科学家做出拒绝一个先前已接受的理论的判断行为,总是建立在将这个理论与现实世界进行比较的基础之上。拒绝接受一种范式的决定总是同时伴随着决定接受另一种范式,而导致这一决定的判断涉及两种范式与自然以及它们彼此的比较。(库恩,1962:77-88)





库恩旨在表明,即便是一个实验似乎证伪了一个假设,科学家也不会立刻抛弃这个假设,除非他们已经拥有一个用于替代的假设。他认为:“如果有任何不相符之处都是否定理论的理由,那么所有的理论都应永远被否定。”


波普尔强调用实验来证伪假设是有益的这一观点。因为精心设计的实验可以揭露占星术、颅相学以及其他许多伪科学。但是,正如库恩所指出的那样,实验证据总是取决于对它们的解释。如果没有与实验证据相一致的新范式,那么实验结果更有可能被视为是错误的,而并非证明为假。

实验在“人工科学”中也起着十分重要的作用。工程师和计算机科学家确实会进行各种各样的实验,但是,他们通常不会着眼于证伪,或者与大自然做比较。简言之,你开展实验的这一事实并不能使你成为一名科学家。

正如之前《韦氏大词典》中的定义所反映的“科学”一词的狭义含义,科学指的是对大自然的研究,而非对人工制品的研究或创造。按照这样的解释,许多自称“科学”的学科,包括计算机科学在内,即使它们进行实验并使用科学方法,也不能称为科学了。

可以肯定,从20世纪90年代的信息技术革命开始,工程学的作用就一直在变。我认为这是因为数字技术和软件在“人工科学”中创造了巨大的可能性。现在,不管一个人在地球的哪个角落,他几乎都能与另一个人进行即时交流,这一点儿都不自然。能够对人体内部进行观察也不是自然界的一件事情。把人类发布过的所有信息都装进你的口袋也并非大自然的事情。这些都是工程而不是科学的结果。更重要的是,它们是创新性的产品,而不是科学发现的必然结果。

尽管如此,科学仍然抓住了我们的想象力,并为人类带来令人震惊的结果。例如,2016年2月11日,有关探测到黑洞碰撞所产生的引力波的消息被大量报道(参见欧弗拜2016年在《纽约时报》发表的文章)。爱因斯坦早在一个多世纪前就预言了引力波的存在,但要探测到它却是异常困难的。该报道所宣布的探测工作是由激光干涉引力波天文台(LIGO)完成的,该项目共耗资约11亿美元。探测到的引力波仅持续了五分之一秒,后续的分析表明其是由10亿光年以外的两个黑洞碰撞产生的。这种风格的科学不太可能产生20世纪初科学所带来的实际成效。它属于“纯科学”,因为它追求知识本身。

不出所料,这一项目投入的高昂成本招致了一些批评之声。2016年,霍根在《科学美国人》杂志的专栏中以如下副标题报道了这一结果:


如果引力波实验仅仅证实了爱因斯坦是正确的,那么它是否值得11亿美元的巨额投入?




在文章中,他引用了化学家阿斯托什·乔加莱卡的一段话,其博客为奇怪的波函数(Curious Wavefunction):


一些消息源已经称这一公认的发现是物理学近几十年来最重要的发现之一。请允许我在这里直言不讳地说:如果情况真是如此,那么物理学的发展可太糟糕了。




霍根继续写道:


在写给我的一封电子邮件中,一位技术史学家更加直言不讳地说:“因此,一个有着100年历史的理论已经在实验中得到证实——这就是巨大的成功。有人认为爱因斯坦错了吗?这并没有产生任何争议,不是吗?有没有人确信地声称时空不是弯曲的,或者黑洞是不存在的?我认为这是一个相当具有实验性的技巧和技术壮举。但是,这并不能让我相信,花费在这件事情上的公共资金并不比将其用在医疗研究,或清洁燃料,或任何能将科学的专业知识应用于正义或减轻人类痛苦的事情上更有价值。”




承认这一实验是“一个相当具有实验性的技巧和技术壮举”是十分有趣的。它引发了一个问题,激光干涉引力波天文台的贡献到底属于科学还是工程?自20世纪70年代以来,科学家已经把激光干涉测量作为测量引力波的一种方法。然而要建立一个具有足够灵敏的系统其实并非易事。

鉴于爱因斯坦的模型在100年前就预言了引力波,科学家似乎对这一预测的正确性没有任何争议,而且测量引力波的激光干涉测量技术早已在几十年前就已为人所知了,这11亿美元的巨额投入似乎并没有带来任何新的科学成果。但是,真正的科学贡献可能并不是证实了引力波的存在,而是证明了一种观测宇宙中我们以前看不到的事件的新模式。具体来说,这个实验第一次给出对两个黑洞碰撞合并的观测结果。这类事件的发生也许并不能令人感到惊讶,但可以肯定的是,我们可以在一种能够观测到此类事件的新型望远镜的首次亮相中发现它的学术价值。

因此,或许我们应该把11亿美元视为对一种新装置工程的投资,它现在可以使一种新的天文观测形式成为可能。因此,可以说,这个装置是工程上的一次巨大胜利。

这里,我来简要解释一下激光干涉引力波天文台工作团队面临的巨大工程挑战。首先,两个探测器相距3 000公里,这样引力波到达两个探测器的时间差就可以指示出波源的方向,由此,两个完全独立的观测就可以相互确证了。建造两个探测器的难度并不会超过建造一个探测器的两倍,所以这并不是最大的挑战。

每个探测器由一个L形的超高真空腔体组成,每一端长4公里(仅此一项就是不容易建造的,如图1.6所示)。它用激光干涉技术测量由引力波通过时引起的时空中极其微小的扭曲。这些扭曲使4公里的真空腔两端之间的距离发生了非常微小的变化,比质子的直径还要小得多!通过测量这个距离的变化,且一旦消除了所有其他可能引起距离变化的因素,人们就可以推断出距离的变化是由一个穿过的引力波扭曲时空所引起的。为了尽量消除可能引起距离变化的干扰因素,每个探测器都必须与诸如地震等振动源以及诸如车辆交通等人类活动完全隔离。因为即便是最轻微的振动也会使这些仪器变得毫无价值。

很难证明引力波望远镜会以任何切实的方式改善(甚至影响)人类的生活状况。尽管如此,该项目实际上可能会对改进工程方法产生实际和具体的影响。这种能够探测如此微小距离变化的能力,肯定在其他地方也能得到应用。


图1.6 激光干涉引力波天文台安装的引力波探测器。地点在路易斯安那州利文斯顿,加州理工学院/麻省理工学院/激光干涉引力波天文台实验室。





美国航空航天局(NASA)的主要任务(我相信)是以科学的名义进行空间探索,并经常以其对技术发展的贡献作为空间探索经费支出的理由。NASA声称对发光二极管(LED)、红外线耳式温度计、假肢、心室辅助装置、飞机防结冰系统、高速公路上的安全凹槽、改进的汽车轮胎、化学探测器、排雷、消防员装备和许多其他技术都做出了贡献(美国航空航天局,2016)。在我看来,这是对技术的重大贡献,而不是对科学的贡献。


假设激光干涉引力波天文台的工作是一个胜利,那么谁才是真正的英雄?2016年2月11日发表在《物理评论快报》上宣布测量引力波的文章共有1 019位作者(阿博特等,2016)。作者列表占了这篇文章16页中的5页的篇幅。人们很难从这份冗长的名单中找出一个“爱因斯坦”。据《波士顿环球报》的报道,现为麻省理工学院名誉教授的雷纳·韦斯被许多科学家认为是该项目的策划者。但是,韦斯本人对此提出了不同意见。他反驳说,许多人都为此做出了巨大的贡献(莫斯科维茨,2016)。假设韦斯是对的,那么激光干涉引力波天文台项目像维基百科中的词条一样,是集体智慧而非个体智慧的一种体现。而且,这些作者中的大多数很可能会自称“科学家”,而非“工程师”。在我看来,这1 019位作者中的绝大多数(如果不是全部的话)既是工程师,也是科学家,因为他们都在挑战柏拉图主义。

像苹果手机这样的人工制品同样是一种集体智慧的体现。我们不可能逐一确定所有为苹果手机贡献了重要技术要素的个体进行逐个确定,但我肯定这些人员的数量一定远远超过1 019这个数字。

在一篇著名的文章中,自由主义者、经济教育基金会(FEE)创始人伦纳德·爱德华·里德(1898 —1983)解释了制造一支普通的木质铅笔所需的技术要素(里德,1958)。文章是从铅笔的视角来写的,文章这样开始:“地球上没有一个人知道我是如何被制作出来的。”然后,作者记录了制作铅笔的整个过程和所需的全部材料:


我的家谱得从一棵树算起,一棵生长在加利福尼亚州北部俄勒冈州的挺拔的雪松。现在仔细想想要砍伐雪松原木并将其运抵铁路线所需的锯子、卡车、绳子和无数的其他工具。再想想整个制造过程中包含的所有人力和无数的技能:矿石的开采、钢铁的炼制以及将它们精加工为锯片、斧子、发动机,还有麻的生长以及如何将麻制成沉重而坚固的绳子……




他接着解释了木材是如何被研磨、烘干和着色的;如何开采石墨,然后又与黏土和磺化油脂混合;如何由蓖麻子和蓖麻油制成油漆;标签是如何用炭黑与树脂混合制成的;金属是如何被开采和提炼的;以及橡皮擦是如何由菜籽油、氯化硫、橡胶、浮石和硫化镉制成的。

可想而知,苹果手机的制造要比铅笔复杂得多。显然,就连史蒂夫·乔布斯也不知道如何制造苹果手机(甚至是铅笔)。在提到经济学家亚当·斯密(1723 —1790)“看不见的手”的说法时,里德这样写道:


还有一件事就更令人称奇了:并没有一个主宰者发号施令,或强制性地指挥我们产生无数的行动。我们一点儿也找寻不到这样一个人物存在的迹象。相反,我们发现,是一只看不见的手在发挥作用。




这样的人工制品甚至需要比维基百科还要极端的集体智慧,因为维基百科至少还保存了个人贡献的记录。

尽管我们无法追踪看不见的手背后的力量,但人们普遍认识到,这些力量中有许多是由人们的技术技能驱动的。培养这样的人才是现代经济的先决条件。今天,决策者和许多公众已经认识到科学、技术、工程和数学(四者的首字母缩略词为STEM)教育的巨大价值。这个术语融合了一组广泛的技术学科。但是,读者也许已经注意到,该缩略词仍然将科学放在第一位,也许更多是为了便于发音以及它相对的优先度吧。的确,利亚娜·海廷在她的博客中写道,STEM最初是SMET,这或许更好地反映了人们理解的优先度,但又不必显得那么高调(海廷,2015)。

提出STEM缩略词的政治动机可能是非常实际的,它更多是关于是否能找到工作,而非知识探索。但是我们可能低估了“人工科学”中内在的知识探索的因素。如果没有激光干涉引力波天文台项目的工程杰作,我们就不会有人类第一台引力望远镜。也许这台望远镜将有助于我们揭示其他的黑洞碰撞,以及其他可能帮助我们更好地理解宇宙起源的现象。因此,有的时候工程确实先于科学,而不是科学先于工程。

一些迹象表明,人们对技术和工程的态度正在发生重大转变。20世纪,人们认为“技术学院”与职业学校没什么区别,并不是智力活动的中心。麻省理工学院和加州理工学院让人们改变了这种观念。我们甚至开始看到许多“技术高职学校”的出现,它们绝不只是进行一些职业培训。

技术和工程显然并非要发现预先无形存在的那些真理,它们是被用来创造从未存在过的事物、过程和想法的。对柏拉图式的善的追求,即那个预先存在的、固定型相的世界,不再是推动人类进步的动力。相反,我们正在创造以前从未存在的、已被或尚未被揭示的知识和事实。

在下一章,我将重点讨论发现和发明的关系。这一章的一个关键主题是理解模型在工程和科学中的作用。我的基本主张是,模型是被发明出来的,而且当这些模型在建模物理现象时,相应的那些物理现象而不是这些模型就会被发现。这些物理现象甚至可能是全新的,就像晶体管一样。


[1] 万尼瓦尔·布什,维基百科的介绍为“工程师、发明家和科学管理者”。布什于1974年去世,是位杰出人物。他是麻省理工学院的教授,麻省理工学院工程学院院长,美国主要国防承包商雷神公司的创始人之一。在第二次世界大战期间,布什协调了数千名科学家,将科学技术应用于战争。他启动了曼哈顿计划,该计划导致了核武器的发展。第二次世界大战结束时,布什敦促政府加大对科学的支持。他的主张促成了美国国家科学基金会(NSF)的成立。该基金会如今是科学和工程研究的主要支持机构之一。



[2] 我的博士论文导师戴夫·梅塞施米特教授曾经告诉我,当你出版一本书的时候,你在书中放入的每一个方程都会让你失去一半的读者。我将这个原则称为“梅塞施米特定律”。尽管戴夫告诉我,他没有发现这条定律。但是,我确实是第一次在他那里听到这个说法的。现在,我将这个告诫有点儿抛至脑后了,我正在引入一个方程。但为了有个原则,我会给每个方程编号,以及估计剩余读者的数量。在这里,我乐观地假设初始读者群有8 192人,因为出现了这个方程,我的读者人数将减少到4 096人。下一个方程对应的数字将为2 048人。这些都是2的乘方,更容易每次都被2整除,并且也强调了我是一个技术呆子。如果我写出方程(1)时,我就可以写任何我想写的内容了,因为我大概没有更多的读者了。顺便提一下,我的博士论文里有几十个方程,所以我一直怀疑戴夫其实根本没读过我的论文。



[3] 1956年,肖克利从新泽西搬到加利福尼亚州的帕洛阿尔托,并在后来被称为硅谷的地方创办了肖克利半导体实验室。1957年,也就是我出生的那年,肖克利的八名员工离开了他的公司,创立了硅谷第一家成功的高科技公司——仙童半导体公司。包括英特尔在内的许多硅谷其他巨头都是由前仙童半导体公司先前的雇员创立的。可以说,搬到帕洛阿尔托的肖克利是硅谷的奠基人。



[4] 当那些科学精英令我们失望的时候,我们会非常尴尬,就如同肖克利后来成为优生学的支持者一样。



[5] http://chemistry.about.com/od/educationemployment/fl/Engineer-vs-Scientist-Whats-theDifference.htm, 2015年6月29日更新,检索于2016年3月1日。





2.

发明自然法则


在本章,我将阐述模型是被发明的,而不是被发现的;工程师和科学家以互补的却又几乎相反的方式使用模型;所有模型都是错的,但有些是有用的;模型的使用可以通过建立未知知识的背景、强制提升专业化程度以及要求人类吸收新的范式,来减缓或促进技术的进步。





2.1 未知的已知


受其颇具煽动性的标题吸引,我最近读了安德烈娅·武尔夫所著的《发明自然》一书(武尔夫,2015)。武尔夫在书中讲述了有关亚历山大·冯·洪堡(1769 —1859)的故事。洪堡是一位杰出的普鲁士人,之前除了听说过用他的名字命名的加利福尼亚州洪堡县和洪堡红杉州立公园以及其他许多地方和东西之外,我对他就知之甚少了。武尔夫大胆地评论说:“洪堡给了我们关于自然本身的概念。”她的评论缓解了我因自己的无知而产生的尴尬,她接着说:“颇具讽刺意味的是,洪堡的观点已经如此不言自明,以至我们基本上已经忘了提出这些观点的这个人。”在一篇题为“为什么洪堡在美国被遗忘?”的文章中,桑德拉·尼科尔斯(2006)的观点进一步消除了我的尴尬,让我再次确信自己其实并不孤单,还有其他人和我的想法一样。尼科尔斯为我们的集体健忘症假定了很多原因。但是,对我来说,最令人感到心酸的是“学术上的转变”,即“对科学的全面观点的研究很快就被搁置一边,转而支持专业化”。在德国,洪堡和他的哥哥威廉肯定没有被遗忘。柏林洪堡大学是以他们两人的名字命名的。他的哥哥威廉被誉为“洪堡式高等教育模式”的创立者,该模式将文理学科中的教学与研究结合起来。这是当今所有顶尖大学的基本原则。

武尔夫声称亚历山大·冯·洪堡“发明了自然”,她向我们表明,科学真理可以存在,然后成为人类精神的一部分。我们如此坚定地接受了这些背景知识,以至我们不再将它们视为科学真理。然而,它们就是科学真理。武尔夫用下面这段话总结了洪堡的成就:


洪堡彻底改变了我们看待自然世界的方式。他认为联系无处不在。没有任何东西是孤立存在的,即使是最小的有机体,也不是孤立的。“在这个巨大的因果链中,”洪堡说,“我们不应孤立地考虑其中的任何一个事实。”




武尔夫称赞说,洪堡是第一位证明人类活动导致气候变化的科学家,他创立了生态学领域,并阐明了“自然”本身的第一个现代概念。这个故事最令人惊讶的地方在于,我从来没有想到,大自然的连通性不再是一个简单的理所当然的真理。现在,人们已经如此广泛地接受了这种观念,以至它与时间和因果关系的概念一道逐渐融入我们直觉的背景中。武尔夫解释了洪堡时代盛行的科学思想:


诸如望远镜和显微镜这样的发明,它们揭示了人类尚不了解的新世界,并且使人类相信自然法则是可以被发现的。




但是,武尔夫指出,这些自然法则一次只能被理解为一种现象,就像支配下落物体的牛顿运动定律一样。连通性成为还原论的牺牲品。

连通性从我们对科学的有意识方法中逐渐消失,进而进入无意识中,成为一个看不见的大背景的一部分,一个未知的已知。2002年,美国国防部长唐纳德·拉姆斯菲尔德在国防部新闻发布会上发表了以下这段被广泛引用的声明:


……如我们所知,存在一些已知的已知,有些事物我们知道我们是知道的;我们也知道存在一些已知的未知,也就是说,我们知道有一些事物我们是不知道的。但也存在一些未知的未知——那些我们不知道我们还不知道的事物。纵观我们国家和其他那些自由国家的历史,我们就会发现后者往往是最难的一类。(拉姆斯菲尔德,2002)




斯洛文尼亚哲学家斯拉沃伊·齐泽克指出,拉姆斯菲尔德没有提到显而易见的第四类知识,即“未知的已知”。它指的是那些我们不知道其实我们已经知道的事物。齐泽克说,“正像弗洛伊德的无意识一样”(齐泽克,2004)。直到我读了武尔夫的书以后,大自然的连通性才成为我的未知的已知之一。我过去不知道我已经知道了。多亏了武尔夫,我现在也意识到我所知道的“真理”并不总是为人所知,她相信正是洪堡使其为人所知的。

我们的未知的已知导致我们的思想产生了许多偏见。托马斯·库恩在他1964年出版的《科学革命的结构》一书中,打破了普遍流行的“积累式发展”(库恩,1962)科学观。库恩认为,一门科学学科是建立在“范式”的基础之上的,而非建立在已经发现的关于世界的事实积累之上。这是一种概念性框架,实践者常常在不知不觉中使用它来解释观察到的现象,并发展各种理论。库恩认为,这些范式使我们对科学的理解必然带有主观性。


观察和经验可以而且一定会大幅限制可接受科学信念的发展范围,否则就不会有科学。但它们无法单独决定这种信念的某一特定主体。一个明显的任意性因素,混合了个人和历史的偶然性 ,常常成为一个特定科学群体在特定时期所崇尚的信念的形成要素。




库恩所说的“任意性因素”往往是以未知的已知这种形式存在的。一种范式被如此广泛地接受,并获得强烈的支持,以至接受它的主体不再能体会到它的存在,这些主体认为范式即真理。正如康德所言,我们在世界上所感知到的秩序是由我们的头脑塑造的,我们的头脑为我们提供了感知世界的歪曲的透镜。我们把秩序强加给自然,而不是反之。

库恩的核心主张认为,科学革命,也就是不时发生的真正重大的科学进步,是通过范式的转换而不是知识的积累实现的。因此,科学真理的概念是主观的,其是由科学界的共识而不是柏拉图式理想的无形真理所定义的。由此,就可以得出一个明显的推论——范式多是被发明的而非被发现的。

库恩的观点备受争议。这与当时流行的科学哲学观点背道而驰,也就是波普尔清楚地表达过的寻求客观真理。1965年,在伦敦召开的一次学术研讨会上,许多最杰出的科学哲学家齐聚一堂并对库恩的观点做出了回应。匈牙利数学和科学哲学家伊姆雷·拉卡托什担任研讨会论文集的共同编辑,他写道,“在库恩看来,科学革命是非理性的,是群氓心理下的肆意行为”(拉卡托什,1970)。他接着又批评了库恩的“范式转换”的概念,并写道:


一种不受也不可能受理性规则支配的神秘转变,完全属于(社会)发现心理学 的范畴。科学变革类似于一种宗教革命。





尽管存在这些异议,但是库恩的支配范式概念对于理解科学思想的演变还是有用的。对于理解工程技术来说,库恩的观点甚至更有价值,因为在工程技术中范式可能会显得更加主观。


在现代科技的世界里,我们的生活被一些范式支配。这些范式更明显是被发明出来的,而不是被发现的。这些范式塑造了我们对世界的理解,成为未知的已知。举个例子,过去我们要听音乐或观看表演,就必须和表演者共处在相同的时空里。而今天,我们可以使用诸如Spotify音乐服务平台和Hulu视频网站等服务平台,它们能够把世界上大部分音乐和剧院里演出的剧目装在我们的口袋里,让我们随时随地都可以欣赏。今天,我们中的大多数人已无须到现场就能听音乐了。这一事实不经意地改变了“音乐”这个词的含义。例如,让我们来想想“我的音乐”这个短语的含义吧。在爱迪生发明留声机之前,这个词对于19世纪的人们意味着什么呢?

有一次,我告诉我的妻子,伯克利大学的一位同事米基·卢斯蒂格正在负责一门课程,教伯克利大学的学生、行政人员和教职人员学习业余无线电知识,并帮助他们准备获得业余无线电台使用资格的考试。

我妻子问我为什么那些人要使用业余无线电台。可是,我从来没有想过这个问题。我想了想,我能想到的最好的答案是:“这样他们就可以和世界上的任何人进行交流了。”她又问我:“他们为什么不直接发电子邮件呢?”我看到不同范式的相互碰撞。当然,这种碰撞没有两个黑洞的碰撞那么严重,但仍值得我们注意。能够与世界各地的任何人进行即时交流已经成为一个不争的事实,是一个未知的已知,是我们理解和支配日常生活的技术范式的一部分。


图2.1斯科特·亚当斯漫画中的呆伯特,一个标志性的书呆子。(呆伯特©1995,斯科特·亚当斯。UNIVERSAL UCLICK授权使用。保留所有权利。)




范式经常会发生改变。库恩的科学范式变化相对较少,但这些变化可能会对科学界造成相当大的破坏。在《科学革命的结构》一书中,库恩引用了马克斯·普朗克的话:


一个新的科学真理并不是通过说服对手并让他们看到真理之光而获得胜利的,而是因为它的对手最终会死去,而熟悉它的新一代人会成长起来。




同样的事情也发生在技术范式上。让我们来看看有多少现代科技让老化的大脑根本无法领悟。我们的孩子当然能够很快接受老年人无法理解的技术真理。事实上,我认为当今技术进步的步伐更多地受到人类无法吸收新范式的限制,而非技术本身存在的任何限制。

库恩对那些曾经持有的范式被后来更好的范式取代的科学家说出了以下的慷慨之词:


……总的来说,那些曾经流行的自然观与今天流行的自然观相比,无论在科学性还是人文性方面都毫不逊色。

……如果这些过时的信念可以被称为神话,那么可以用同样的方法制造神话,并以同样的理由坚持这些神话,而这些理由现在导致了科学知识的产生。




我们应该同样慷慨地对待那些生活在过时的技术范式时代的人,而不应把他们当作卢德派分子或恐龙。我会对我的孩子们说:“别担心,有一天你也会变成恐龙的。”

尽管有相似之处,但是,技术范式与科学范式在许多重要的方面的确存在差异。如今,技术范式要远比科学范式更加多样,这反映了该领域发展的不成熟和快速变化。库恩认为,不同的科学范式之间是不可通约的。一种范式不能以另一种范式的概念体系和术语加以理解或判断。然而,技术范式不存在这种情形,因为技术范式是以互操作的方式进行分层的。我将在第3章进行说明。然而,不可通约的范式确实出现了,因此有必要建立一个元范式,并在该范式中比较不同的技术范式。我将尝试通过建模的概念达成这一目标。

科学、技术和工程都是建立在模型之上的。模型是范式概念框架中的组件。例如,牛顿第二运动定律是物体在受力作用下的运动模型。它的形式是一个方程,具体来说就是方程(4 096)。它在牛顿和莱布尼茨微积分的范式中,在力的概念以及牛顿的时间和空间概念中都有意义。如果你在高中学过物理,那么你可能已经被彻底洗脑了,以至力、时间和空间的概念都成为你未知的已知。但从客观上来说,牛顿并没有对这些概念做出实质性的解释。相反,他建立了一个自我一致和自我参照的模型。如果说他下了什么定义的话,就是其中的每个概念都是以其他概念来定义的。

每个工程设计都类似于一个模型,它可以像一个物理形状的原型那样简单,也可以像一百万行代码那样复杂。每个这样的模型只有在某种建模的范式中才有一个含义,或者说一个语义。建模范式往往是一个未知的已知,从未被清晰地表达或有意识地选择过。现在,我将尝试打破由于没有认识到这些未知的已知而造成的困难局面。





2.2 大自然的模型


韦氏在线词典对“模型”一词至少有14种定义。其中只有少数与模型在科学和工程中的应用有关:


4.通常是某个事物的缩影,也就是要制作的某个事物的模式;

5.模仿或仿制的例子;

……

7.原型;

……

11.一种描述或类比,用来帮助将无法直接观察到的事物(如原子)形象化;

12.一个由假设、数据和推论组成的系统,其被表示为一个实体或事态的数学描述;也是基于这种系统的计算机模拟。




第一个定义是一个具体的模型,是物理世界中的一个物质对象。而最后两个是抽象的模型,就后两者而言,诸如纸上的墨水等任何物质实现都是偶然的。而中间的其他两个则可以是具体的模型,也可以是抽象的模型。抽象模型和具体模型都有助于人类掌握概念。这两种模型都是人类创造的。因此,模型可以作为人类记录和交流概念的一种方式。

对于亚里士多德来说,关于世界的概念来自特定事物的共同属性(见图2.2)。特定的事物可以作为符合这个概念的一系列事物的模型,也可以作为这个概念本身的模型。例如,马的概念是通过观察几匹马得出的一种概括性概念。一个外形为马的塑料雕像,如图2.3所示,就可以作为马的具体模型。请读者注意,模型本身并不需要是一匹真实的马。一个具体的模型是一个能够捕捉被建模事物的某些本质的实际存在。





一个有关具体模型的概念与《韦氏大词典》中的另一个定义联系在一起,即“受雇去展示衣服或其他商品的人”,如图2.4所示海报中的模型。这个模型大概是被用来展示某个品牌的香水的,然而,有趣的是,海报所宣传的商品“古龙水”并没有出现在海报中。相反,这个模型被用来代表一个“魅力男子”的经典形象(当然,我指的是海报上的那个人,而不是镜子中反射出来的那个人 [1] )。该模型(一个人)被用作一个代表魅力男子形象的模型(原型)。这样一个模型的目的是通过唤起某些人“自己喷了古龙水会变得多么有魅力”的遐想,而将古龙水卖给这些人(也许就是镜子里的这个人)。



图2.2 《雅典学院》是拉斐尔在梵蒂冈创作的一幅壁画。亚里士多德站在右边,手心向着地球,表示知识源于对事物的研究。而柏拉图站在左边,手指向天空,表明知识是对存在于一个理想的、无形的且独立于人类世界的型相的发现。




图2.3 一个由3D打印机打印的马的模型。[张奔(Ben Zhang)供图,致谢。]




图2.4 作者梦寐以求的自画像。




柏拉图认为,柏拉图型相作为无形的真理独立于人类而存在。柏拉图式的球体是理想的,但是,我们在物理世界中找不到这种理想的球体。它不是也不可能作为一个物理对象而存在。球体的任何物理形式都将是一些由原子和分子构成的物质组成的。无论它被打磨得多么光滑,球体的表面都不会符合柏拉图式的理想球体概念,任何球体表面都会有波动不平的痕迹,以及由于构成原子的电子的位置或边界所具有的量子力学的不可确定性造成的模糊性。表面到底在哪里?表面是什么?如果没有一个表面,我们就不能谈论表面积的问题,但是一个柏拉图式的球体应该有一个正好等于4πr 2 的表面积,其中r 是球的半径。然而,在原子的尺度上,表面的概念并没有严格的物理学基础。

那么柏拉图式的球体在何种意义上独立于人类而存在呢?结论是它并不存在于物理世界之中。我们可以建立一个球体的数学模型,但是,它仍然是一个人类的构造,而不是无形的真理。例如,我们可以给出一个球体的数学模型。在笛卡儿的坐标系中,以坐标(0,0,0)为圆心、r 为半径的球体是满足如下条件的点(x ,y ,z )的集合。





毫无疑问,这样一个柏拉图式的模型一点儿都不令人着迷。

方程(2 048)的数学模型是人类用代数语言和笛卡儿空间三维模型构造的。它可以被视为物理世界中事物的、类似球体的不理想(即错误)模型。物理世界中的这些东西可以被视为球体的心理概念模型,就像方程一样。但是,没有任何直接证据表明,柏拉图式的理想球体是独立于人类而存在的。数学模型并不是柏拉图型相,充其量不过是柏拉图型相的模型,存在于建模范式(代数和笛卡儿空间)之中。还有许多其他的方式可以用数学方法建模一个球体,正如我将在第9章中讨论的那样,每种方法都有其局限性。所以即使是一个抽象的模型也只是墙上的影子罢了。当然,即使只是墙上的一个影子,它也比任何物理模型更接近一个柏拉图式的球体。它可能是我们所能得到的柏拉图式理想的最佳代表。

图2.3所示的是由3D打印机打印出来的马的具体模型。该打印机以包含马的模型的另一类文件作为输入。具体来说,该文件使用了一种被称为STL的语言(STereoLithography,光固化立体造型术的缩写),其被广泛运用于描述并建立三维形状。STL语言是由总部设在南卡罗来纳州罗克希尔的3D系统公司在1987年创建的,这是一家家生产和销售3D打印机的公司。

用STL语言建立的马的模型是一个抽象模型。它是一个基于共享边的二维面来建模三维形状的范式。图2.5给出了一个非常简单的STL模型的例子。左边的STL文本描述了右上角的金字塔形状。它由四个构成物体外边界的三角形组成。在一个三维笛卡儿坐标系中,给出了这四个三角形的顶点。

要完全理解图中的文本,首先需要明白STL所基于的范式。如果你愿意原谅一场短暂的技术呆子头脑风暴,那就请继续阅读下面这段内容。这个范式就是二维平面的三维镶嵌,以及诸如右手定则之类的规则,右手定则决定了一个面的哪一边位于形状的内部而不是外部。如果你学过计算机图形学的话,上面的内容就很容易理解,否则,就可能有些难度。

打印图2.3所示马的STL文件要比金字塔复杂得多,所以我不打算在这里继续阐述了。它注定是由机器而不是人类来阅读的。马的模型是由图2.5右下角的STL文件来呈现的。如果读者仔细观察的话,就可以看到定义这个形状的二维平面。这种马的模型有时被称为虚拟原型,因为它的用途与物理原型相同,只是它没有物理形式。

模型是以某些物理介质来呈现的。图2.3中马的具体模型是一个三维打印的塑料原型。物理介质是由3D打印机用来打印组装的塑料。同一设计的抽象模型可以是描述其形状的数学公式,如方程(2 048)也可以是图2.5所示的STL文件。这个抽象模型可以被发送到3D打印机生成具体的模型。从某种意义上说,抽象模型也具有物理形式,如方程(2 048)是页面上的墨迹(或屏幕上的像素),而STL文件是排列在磁盘上的磁性铁分子或计算机内存中的电荷。但是,它们的物理形式是偶然性的。当抽象模型从一种物理形式转换为另一种物理形式的时候,例如,当你读取方程(2 048)时,或者当你将STL文件从一台计算机复制到另一台计算机时,我们最终得到的并不是两个模型。


图2.5 用STL制作的3D模型。




这仍然只是一个模型,尽管有两个或更多的物理表示。抽象模型的本体论独立于其物理具象。

具体模型是某个类的一些物理形式范例,而抽象模型是某个类的一些抽象。对于抽象模型来说,其表现媒介的可能性要比具体模型丰富得多,因为它们很少受到物理世界的限制。事实上,STL文件可以建立物理世界中不存在的形状,如一组重叠的平面或不共享边的平面。建模语言是抽象的,而非具体的,它们更容易激发人类的创造力。此外,它们还会带来发明,甚至是范式的转换。设计人员精心选择的建模语言能够优雅地表达设计。





具体模型和抽象模型都可以用于分析。例如,可以使用组件的物理原型来确定它所建模的组件是否适合其外壳。但是,抽象模型为分析提供了更丰富的可能性。如果建模媒介(用于表达模型的语言)具有严格的语义,那么模型可能会进行自动分析。计算机程序可以确定一个组件是否适合其外壳,而无须构建物理原型。


图2.6是用碳化竹灯丝制成的白炽灯泡的原型,它是一个具体的模型。这个原型是在新泽西州门洛帕克的托马斯·爱迪生实验室制作的。根据爱迪生论文计划(2016),爱迪生最初尝试用铂丝制作灯丝,因为这种金属具有很高的熔点。但后来他发现,当在空气中加热这种金属时,它的结构会发生改变,这削弱了灯丝的功能且使其熔点降低。最后,他通过把灯丝装在真空灯泡里解决了这个问题。

爱迪生以一种我们称为原型—测试的发明风格闻名于世。为了找到一种能产生适量的光、有稳定的电压和使用寿命的灯丝材料,爱迪生做了许多尝试。虽然在最初,金属铂在真空状态下也能很好地工作,然而铂是一种昂贵的贵金属,爱迪生制作的铂金灯泡很可能因为太过昂贵而无法在商业上取得成功。以下内容同样来自爱迪生论文计划(2016):


图2.6 托马斯·爱迪生的白炽灯泡和碳化竹灯丝原型。(特伦-爱迪生灯泡公司供图,知识共享署名许可2.0授权。作者对原文进行了删减,原文来自维基共享资源。)



他转向了碳类材料,并尝试使用一些棉线、不同种类的纸和纸板以及各种木材做实验,然后还试过几根长纤维植物材料,最终选定了竹子。后来,他在全球范围内进行了一次大搜索,以确定是否能找到更好的长纤维植物,那时他还没有获得人造纤维的关键专利,而这些人造纤维将被证实是更好的材料。




爱迪生的方法是一种亚里士多德式的问题解决方法:用材料进行实验,并从观察中推断出不同材料的特质。他试图解决的问题是如何用电来产生光。作为这项工程的辅助性工作,他也做了一些科学工作,结果竟然发现了自然界的一种特性。具体来说,他发现自然界中存在的金属铂在空气中被加热时其结构会发生改变。

竹丝灯泡于1882年投入生产,大约6年后被钨丝灯泡取代。这两种类型的灯丝都需要在真空中工作,否则灯丝会燃烧、熔化或迅速降解。爱迪生发现加热的金属在空气中会降解,在真空中则不会,这一科学事实是一项工程发明,并成为开发实用灯泡的核心支撑。

除了物理原型,托马斯·爱迪生还使用了白炽灯泡工作过程中涉及的抽象模型。具体来说,他使用了欧姆定律。该定律由乔治·西蒙·欧姆在1827年首次发表。欧姆定律把通过电阻的电流i 与电阻器两端的电压v 联系起来。

i=v/R (1 024)

其中的比例常数R 为阻值。阻值的单位是欧姆,这样命名是为了纪念乔治·欧姆。阻值是用来制作电阻器的材料及电阻器几何形状的一种性质。灯泡的灯丝是电阻,在爱迪生的时代,灯丝的阻值是靠经验推算出来的。

因为阻值的存在,所以灯丝可以被加热,而正是因为灯丝被加热,它也才会发光。金属铂容易导电,这意味着它的阻值很低。诸如竹纤维等碳基材料则具有高得多的阻值,因此,在固定的电压v 下,流经铂丝的电流要比流经竹丝的电流大得多。因此,金属铂除了成本很高,低阻值也是它的一个缺点。为了应对低电阻产生的高电流,爱迪生将不得不使用更粗的铜线向灯泡供电,从而推高了系统成本。

欧姆定律是一个抽象模型。与图2.6中所示的模型不同,该模型没有任何物理特性。尽管如此,它仍然代表了“事物的本质”。然而,如果我们以一种真正的亚里士多德的方式来解释的话,该定律就很可能是欧姆从观察和测量中得出的,而不是从基本真理中得出的。

欧姆定律可以被视为一条自然法则,在这种情况下,它对任何电路必须都成立。换言之,我们可以把欧姆定律看作“阻值”和“电阻”的定义。根据后一种解释,如果流经它的电流与它两端的电压成正比,那么任何装置都是一个电阻[也就是说,其行为是否符合方程(1 024)给出的模型]。

这两种解释之间的区别十分微妙,但很重要。首先,请注意,在方程(1 024)中有一个隐含的假设,即我们所讨论的是瞬时的电流i 和电压v 。在几乎所有的电路中,电流和电压都是随时间的变化而变化的。对于一个灯泡来说,电流和电压在电灯开关断开时都为零,而当灯泡的开关接通时,电流和电压都不是零,所以很明显,电流和电压的变化都与时间有关。

现在的一个关键性问题是,阻值R 是否也会随着时间的变化而变化。结果表明,铂和竹丝都不满足表示恒定阻值的方程(1 024)。事实上,这些材料的阻值会随着材料温度的变化而变化,其温度又取决于电流。如果灯丝一开始是冷却的,那么当电流流过它的时候,灯丝的材料就会变热,其阻值就会增大。如果灯丝过热,材料就会熔化,阻值就会变得无穷大(没有电流流动)。因此,在某一时刻,电流不仅取决于当前的电压,也取决于电压和电流在前期的状况。灯泡点亮的时间会影响它的温度,从而也会影响电流。

所以,把阻值R 固定为常数是行不通的。我们必须让它随时间的变化而变化。但在此时,我们会遇到一个难题。如果阻值R 是一个根据经验确定的值,那么欧姆定律就变成了一个恒真的命题!也就是说,每个电路都是如此。在任何瞬间,电阻都等于电压除以电流:

R =v/i (512)

这不过是方程(1 024)的另一种形式。通过简单地将方程(512)中的R 作为阻值的定义,每一个非零电压和非零电流的电路就都应满足欧姆定律。这就将t 时刻的阻值定义为使得欧姆定律成立的任何值!当然,乔治·欧姆并没有因为发现了一个恒真命题而获得一个以他的名字命名的基本电子元件。所以,这不可能是正确的解释。





解决这个难题的一个办法在于,将电阻的概念作为一种柏拉图式的理想型相。电阻是一个在任何时候都能满足方程(1 024)和(512)且具有恒定阻值R 的器件。但是在物理世界里没有这样的器件。至少,每一种已知材料的阻值都会受到温度变化的影响。此外,大多数已知的材料都会在电流流过时发热。 [2]


除温度以外的其他物理效应,特别是电感和电容,都会确保物理材料不可能完全以常数R 来遵守欧姆定律。这些效应在系统中带入了记忆和动力学。例如,即使电压降到零,电感也是电流持续流动的趋势。非零电感的材料需要一些时间才能将电流调整到新的电压。在此期间,它不能以同样规定不变的常数R 来满足欧姆定律。实际上,所有材料都带有非零的电感,即使很小。 [3]

事实上,没有任何物理对象是电阻,因为没有任何物理对象可以遵循欧姆定律,那么我们又怎么能把欧姆定律当作一条自然法则呢?在柏拉图的关于洞穴的寓言中,人类的感知局限于现实的影子,但物理对象似乎只是电阻的柏拉图式理想型相的影子。这种柏拉图式的型相是人类无法接触的,也是大自然无法接触的!

因此,欧姆定律要么是微不足道的,要么就是错误的。我不得不得出这样的结论——欧姆定律是一个人类构建的模型,而不是关于自然的基本真理。在乔治·欧姆提出欧姆定律之前,它并不作为一个基本存在,因为世界上没有任何物理对象遵守它。在某种程度上,它之所以能够成为一个真理,是因为我们宣称它是真理。我们将“电阻”定义为一个物理对象,其行为与欧姆定律的方程所建模的行为非常接近,我们将阻值定义为该对象两端的电压与通过该对象的电流的比值。除了在人的头脑中,自然界中并不存在一个理想的电阻。因此,欧姆定律是被发明的,不是被发现的。





2.3 模型是错误的


建模是每一项科学和工程工作的核心。所罗门·沃尔夫·格伦布(1932 —2016)曾撰写过关于在科学和工程中应用模型的一篇精彩文章,他强调理解模型和正在被建模的事物之间的区别特别重要。他有一句名言:“通过在地图上钻孔,你永远不会找到石油。”(格伦布,1971)地图就是模型,而土地是被建模的对象。显而易见,你应该在土地上钻井,而不是在地图上(如图2.7所示)。

对于科学家和工程师来说,“被建模的事物”通常是物理世界中的一个对象、过程或系统。 [4] 让我们把被建模的事物称为模型的目标物。模型的保真度就是它模仿目标物的接近程度。


图2.7 在地图上钻孔。(这张照片由摄影师鲁西·姆切德利什维利提供。)




当目标物是物理对象、过程或系统的时候,模型的保真度永远不会是理想的。博克斯和德雷珀(1987)曾指出:“从本质上讲,所有的模型都是错误的,但有些是有用的。”图2.4中给出的模型并没有什么用(至少对我而言是如此)。相反,欧姆定律却是非常有用的模型。它对某些物理装置进行了建模,如爱迪生的灯丝。虽然所建立的模型还不够理想,但它让爱迪生明白竹丝比金属铂丝更适合用来制作灯泡。

一个有用的模型必须有一个目的,并且模型的保真度应该根据这个目的进行评估。作为灯泡的模型,欧姆定律可以告诉爱迪生会有多少电流流过灯丝,但它不会明确告知爱迪生该模型能够产生多少光。为此,我们还需要另一个不同的模型。

请注意,模型可能在不实际或不产生实际效果的方面是“有用的”。《韦氏大词典》对“有用”的定义是“帮助做某事或达成某事”。“某事”可能指的是进一步的知识探索或纯科学。也就是说,一个模型可能是有用的,因为它解释或预测了一种现象,即使它没有对应于这种现象的实际应用。即使我们对黑洞碰撞没有实际应用,爱因斯坦的引力波模型也很有用,因为它提出了一种观察黑洞碰撞的方法,就像激光干涉引力波天文台所做的那样。

在使用模型时,在其适用的范围内应用它们是非常重要的。所有模型都有其适用范围。欧姆定律本身不适用于已经熔化的电阻。引力波在研究亚原子量子的相互作用时也是无用的。 [5]

模型的保真度越高,它们通常就会越有用。那么,我们如何才能获得良好的保真度呢?我们可以有两种可用的不同机制。我们可以选择(或发明)一个高度符合于目标对象的模型,也可以选择(或发明)一个高度符合于模型的目标对象。前者是科学家工作的本质,后者是工程师工作的本质。两者都要求假设目标对象在模型的某个适用范围内运作。

爱迪生是他那个时代的一名杰出的工程师。在选择灯泡的灯丝(一个目标对象)时,除了耐用性、耐高温性等特性之外,爱迪生还需要一种能由欧姆定律很好地模拟的灯丝。假设爱迪生选择了一种人们熟知的法拉第电磁感应定律所模拟的灯丝,那么这种选择一定会生产出一个非常糟糕的灯泡。请允许我再次进行一场简短的技术呆子风暴,以解释其中的原因。

正如我之前指出的那样,即使电压降为零,电感仍然会维持电流的流动趋势。电感是一种能够抵抗电流变化的装置,而电阻只是一种能够抵抗电流的装置。打个比方,电阻就像一个懒惰的人,而电感就像一个固执的人。要想让一个懒惰的人为你工作并持续工作需要更多的努力,而一个固执的人一旦做了某件事,他就会一直做下去(就像我写这本书一样)。一个人可能既懒惰又固执,就像一个物理装置可能既有电阻又有电感一样。

在法拉第定律的一种较简单的表现形式中,电感的电流i 和电压v 具有如下关系 [6] :





其中,常数L 被称作感应系数(即电感值)。 [7] 这个方程表明,t 时刻的电压v 与电流i 的变化率成正比,其中比例常数为L 。这意味着,如果电流变化很快,电压就会升高;反之,如果电压高,电流就会变化很快。

根据维基百科的解释:


电磁感应是由迈克尔·法拉第在1831年以及约瑟夫·亨利在1832年分别独立发现的。法拉第是第一个公布这个实验结果的人。(2016年3月15日检索)




我们可能会试图把维基百科页面上的“发现”改为“发明”,但这并不完全正确。“发现”一词用于电磁感应是正确的,但不适用于方程(256)。方程(256)是一项发明,就像欧姆定律一样。这个方程也是一个理想化的模型,没有物理对象能够完全遵循它(L 为常数)。因此,作为一个模型而言其是错误的,但又是非常有用的。

库恩(1962)就发现和发明之间的关系阐明了自己的观点,他认为“发现和发明是分不开的,因为解释发现的理论必须出现,才能使这个发现真正出现”。正在流动的电流趋向于保持流动(感应系数),以及某些装置(电感)会呈现这一特性的发现,与方程(256)中所表示的模型不可分割地联系在一起。从某种意义上说,必须理解这一模型的某种形式才能认识这一发现。库恩说,发现和发明之间的这种联系,也使得人们很难准确地确定一个发现是谁在什么时候发现的:


……“氧气是被发现的”这句话极大地误导了我们,因为它认为发现某种东西是一种简单的行为,与我们通常(我对此同样表示质疑)所理解的“看”的概念类似。这就是为什么我们如此轻易地认为,发现,就像看或触摸一样,应该明确地归属于某个人和某个时刻。然而,后一种归因总是不可能的,前一种也经常是不可能的。(库恩,1962:55)




发现从来不会在瞬间发生,也很少能完全归因于某个人。晶体管效应的发现获得了诺贝尔奖,这一发现的混乱情况在晶体管作为一项发明而获得专利的数年后更为显著。

让我来解释一下爱迪生可能是如何使用方程(256)中的电感模型的。假设他选择了如图2.8所示的电感作为灯泡的灯丝。他遇到的第一个问题就是这种灯丝不会产生任何光。但这只是问题的开始。为了简单起见,假设L =1亨利 [8] ,并假设我们现在给灯泡施加1伏特的恒定电压,那么根据方程(256),电流的变化率为:





它的单位是每秒的安培数。这意味着每经过一秒,电流就会增加1安培。如果我们接通灯泡时的最初电流为零,那么10秒之后,电流将变为10安培;1分钟以后,电流将达到60安培;1小时后,电流将达到3 600安培;过不了几天,整栋房子就会被烧毁,房子外面电线杆上的变压器也会爆炸,而电费也将会超过读大学的学费。这样,爱迪生卖给我们的灯泡就不可能超过一个。 [9]

我已经得出结论——欧姆定律和法拉第定律都是错误的,因为没有任何物理对象能够完全遵守这两条定律。但是,真空灯泡中的竹纤维非常接近遵守欧姆定律,而铁芯周围的铜线圈(如图2.8所示)则非常接近遵守法拉第定律。然而,即便是在这两种情况下,模型也是错误的。


图2.8 几个手工制作的电感。[图片由“我”提供,并获得CC BY-SA(署名-非商业性使用-相同方式共享协议文本)3.0.授权。原图片网址https://commons.wikimedia.org/w/index.php?curid=1534586。]




爱迪生是一名工程师,但他对科学也做出了巨大贡献。他和许多科学家一样,非常依赖实验。对于科学家来说,模型的价值在于它的特性与目标物(通常是在自然界中发现的对象)属性的匹配程度。欧姆定律和法拉第定律的价值在于它们描述研究对象属性的准确程度。但是,对于像爱迪生这样的工程师来说,一种对象的价值(如竹纤维)取决于它的属性与模型(这里就是欧姆定律)的匹配程度。爱迪生对电有足够的了解,他知道感应灯丝是没用的。相反,他知道他需要一根以欧姆定律为相符模型的灯丝(并且还能产生光),于是,他开始为这个模型寻找一根灯丝(一个目标物)。

根据波普尔的科学哲学,一个科学模型,或者是一种“理论”,在科学上必须是可证伪的。按照这一原则,欧姆定律和法拉第定律要么是不科学的,要么是错误的。如果定律是恒真命题,那么它们是不可证伪的。如果定律不是恒真命题,那么在现实中就没有任何物理对象会遵守它们,所以它们是错误的。欧姆定律和法拉第定律是有用但不正确的。

为了有别于“人工科学”,在西蒙所说的“自然科学”中,科学家根据定义被赋予了这个目标物,其存在于自然界中。这样的科学家建立模型,帮助人们理解该目标物。相比之下,工程师则构建目标物模拟一个模型的特性。工程师为不存在的事物使用或发明模型,然后尝试构造出高度符合于模型的物理对象(目标物)。对于工程师来说,模型提供了一种设计,而目标物是其实现。任务在于,要找到一个高度符合于该模型的实现。

这两种模型的使用是互补的。工程师和科学家通常会以这两种方式使用模型。爱迪生花费了大量精力来研究各种天然材料的电特性,之后才选定竹纤维。因此,好的工程要以好的科学为基础。至少对于实验科学来说,好的科学研究需要好的工程来配合,正如我们在上一章提到的激光干涉引力波天文台的工作一样。

但是,很遗憾,在这两种情形下模型都会是错的。在工程中,如果我们能够找到一个高度符合于模型的实现,那么该模型就是有用的。在科学中,如果一个模型高度符合于大自然给我们的一个目标物,那么这个模型是有用的。科学家常常会问这样的问题:“我能为这个东西构造一个模型吗?”工程师则会问:“我可以为这个模型做点儿什么吗?”

模型是由人类所构造的,建模的范式也是由人类构造的。因此,二者都受制于人类的创造力。它们都是被发明的,而不是被发现的。因为工程师会为尚不存在的事物构造模型,所以和专注于自然科学的科学家相比,他们的创造力空间更大。原因在于,科学家常常被困于为已经存在的事物构造模型。此外,我认为数字技术已经为一切的可能存在打开了可能性,创造力的空间确实是巨大的。我将在下一章分析数字技术是如何做到这一点的。


[1] 即作者本人。——译者注





[2] 当一些被称为超导体的材料冷却到临界值以下之后,就进入超导状态,此时的电阻则变为零,此时会出现一个例外。但是所需的温度条件必须非常低。1987年,格奥尔格·贝德诺尔茨和卡尔·亚历山大·米勒因发现“高温超导体”而获得了诺贝尔物理学奖。他们的陶瓷化合物在-243.15℃或-405.67℉的“高”温下表现出超导电性。在写作本书时,已经观察到的超导电性的最高温度是-70℃(-94℉),温度仍然非常低,甚至只有在极高的压力下才能达到。在实际生活中,我们不能指望有这样的一个灯泡在这样的温度和压力下工作。




[3] 如果读者没有研究过电学,那么一个不太完美的类比可能会对读者有所帮助。可以将电流想象成沿着倾斜的水闸或通道流动的水流。倾斜的程度类似于电压,水流的速度类似于电流。较小的通道比较大的通道具有更大的阻力(在特定的倾斜度下,较小的通道只能通过较少的水流)。电感类似于流动的水流保持流动的趋势(它有惯性)。如果水沿着倾斜的水闸向下流动,而你突然将水闸拉平,并且去掉倾斜度,此时水并不会立即停止流动。这个类比也许不是特别合适,这是因为:电流没有惯性,或者至少是惯性不太大,电感是通道而不是电流的一种特性。不管怎样,我希望能够提供一个适合的形象的类比,这样就可以帮助读者获得关于电的基本概念。



[4] “被建模的事物”也可以是另一个模型。我稍后会在第3章讨论这个问题。



[5] 彭罗斯(1989)推测,引力波实际上可能与某些亚原子量子力学现象有关。但在撰写本书的时候,这个观点还没有得到实验的确证,也没有得到物理学家的广泛支持。



[6] 当方程使用微积分时,就像这个公式一样,梅塞施米特定律可能会变得过于保守。我怀疑这个方程可能会令我的读者减少一半以上,但我仍会坚持我之前的编号方案。



[7] 感应系数的单位以约瑟夫·亨利的名字命名为“亨利”,习惯上用符号L表示。



[8] 1亨利实际上是一个非常大的电感,但它使数学变得更简单了,而小于100万亨利的一个更合理的选择可能会伤害我的读者。



[9] 在美国,大多数家庭电路都有保险丝,当电流超过15安培或20安培时,它就会中断电流,所以这种情况不会在你家里发生。此外,家庭电路中提供的电压要大得多,在美国的常见峰值可以达到170伏特[请参见李和娜拉耶(2011)第11页的补充报道以了解家庭电力]。因此,在电压为170伏特时,电流将以每秒170安培的速度增加,这意味着它将在11毫秒内达到15安培。此时,保险丝就会熔断,你将身处一片漆黑之中。所以灯泡只能工作11毫秒。





3.

事物之模型之模型之模型


我认为,工程中的模型是深度层叠的,并且每一层的设计都会影响上、下相邻两层的设计;而且模型的工程运用能激活创造性,这是因为模型的分层使设计者能够摆脱现实的物理约束。实际上,特别是数字技术已经在很大程度上消除了一大类工程系统中任何有意义的物理约束。因此,可以说,人类的想象力和吸收新范式的能力是限制创新的因素,而不是技术本身的因素。





3.1 技术的分层


让我们先来看一看工程师给出的一个问题:“我可以为这个模型做点儿什么吗?”假定对于一大类模型来说,该答案是“是的”。例如,今天的技术使我们能够构造电气控制的开关网络。在这个网络中,闭合一个开关会导致另一个开关断开或闭合。半导体芯片就是这样的网络,其中的开关就是晶体管,网络是由连接这些晶体管的线路组成的。制作该类网络的介质是硅金属半导体,它是一种物理介质。

一旦这个问题的答案是“是的,我们可以”,那么开关网络就变成了构造模型的媒介。就如同库恩的科学范式一样,这种媒介也有它自己的范式。正如科学家使用范式来构建事物的模型一样,工程师也使用范式来构建事物的模型。范式提供了理解模型的概念框架。

那么,我们可以建立什么样的开关网络呢?开关网络的范式是颇具表达力的。每个开关只有两种状态——开(导通)和关(截止),它看起来不那么有表达力,但事实证明,我们可以将这些开关连接起来,以执行与自然语言相对应的逻辑功能,例如“与”、“或”和“非”。我们可以将这些逻辑功能互联起来,以比较和操作表示文本的位串,并对二进制表示的数字执行算术运算。事实上,开关网络能够对任何可以表示为0、1序列的信息进行极其丰富的操作。作为二进制开关的晶体管能成为信息技术的关键,这并非偶然。

一旦我们拥有了执行算术运算的能力,我们就有可能开启另一种设计范式——算术表达式。这一范式与开关网络的范式有着明显的不同,但算术表达式范式中的模型与开关网络范式中的模型一样具有可实现性。因此,如果一个工程师有一个由二进制数的算术运算组成的模型,并且再次回到这个问题——“我可以为这个模型做点儿什么吗?”,那么答案依然会是“是的”。然而,要实现“做点儿什么”的愿望,首先需要将算术模型转换为一个开关网络模型,然后将其转换为硅芯片。由此,算术表达式就变成了一种虚拟的媒介,它并非直接就是物理的,但可以通过一个间接层转换到某个物理介质。这是我要解释的第一个传递性模型的例子。

事实证明,我们可以用开关网络做更多的事情。我们可以用它创建存储器,存储二进制模式。例如,256美元的银行余额可以用二进制模式0000000100000000来表示。这种二进制表示法共有16位。我们可以设计一个由96个开关组成的网络,其可以存储银行无限多的数据。如果客户存入账户16美元,该数据可以用二进制模式0000000000010000来表示,随后,开关网络可以将这两个数进行相加,并得到一个二进制数0000000100010000,这个二进制数表示十进制数272。然后,它可以用新的银行余额更新存储器。我们可以看到计算机银行系统是如何从开关网络中慢慢浮现而出的。

但是,把计算机银行系统看作一个开关网络是不现实的想法。首先,它实际所需的开关数量比我前面给出的例子要多得多,同时,所需执行的操作也要复杂得多。银行不会雇用一名工程师来连接实现开关功能的晶体管,以构建一个计算机银行系统。相反,银行会聘请一名工程师编写软件,这些软件将被计算机翻译为二进制模式,从而控制最终由晶体管构成的机器。这位工程师不需要知道如何制造一个晶体管,也不需要知道如何使用开关网络进行二进制运算,更不需要知道如何组织开关网络来制造一块存储器。

事实上,在银行系统的工程师和最终的计算机银行系统之间有许多模型层次。银行的应用,一个由字母、数字和标点符号组成的计算机程序,实际上是另一个模型的模型,另一个模型又是第三个模型的模型,以此类推,直到我们最终向下到达某个事物的模型。每个建模层次都有一个范式,而且每个范式都是由人类发明的。只有最低层的物理实体是大自然给予我们的。

在本章中,我试图阐明为什么分层的范式会如此强大,以及这些层次如何将范式转化为其他工程师可以用来实现其模型的创造性媒介。此时,你可能会带有成见地认为,这些范式层是枯燥的和充满事实的技术,同时也是复杂的和无聊的。然而,事实并非如此。它们是由物理上的可能性塑造的,尤其是有了数字技术之后,事实证明,它们更可能带有缔造者(工程师)的个性和气质的深深印迹。

教育工作者往往不承认技术的个性。他们把技术描述为人们必须掌握的关于世界的柏拉图式的事实。这就是教育家学习它的方式。但是,技术的创造者并不是以这种方式来学习的。他们发明了技术,就像文学和艺术是被发明的一样。他们的发明反映了创造者的个人偏好,以及他们所处的(技术)文化环境。反过来,他们所处的文化环境又为其他人的发明所定义。技术不是一直潜伏在幕后等待被发现的柏拉图式真理的集合,而是由人类发明家创造的丰富的社会学思想的结晶。它是由这些人塑造的,并且是由一群不同的人创造出来的,其中包括很多女性。因此,技术无疑会有所不同。

我将把许多细节推到接下来的两章中进行阐述。在这两章中,我将尝试捕捉在硬件和软件技术中表现出来的范式和文化。而在本章中,我主要是给出一个高层次的观点。





3.2 简化的复杂性


简单系统的工程,如爱迪生的灯泡,可以用一种原型—测试的方法来实现。但随着系统变得越来越复杂,这种方法可能会失效。对于更为复杂的系统,模型的使用变得越发重要。

复杂性是一个很难被界定的概念。粗略地说,当一件事迫使我们绞尽脑汁去思考才能理解时,它就是复杂的。因此,复杂性是一种人工制品或一个概念与观察者之间的关系。

复杂性的一个来源是大量的组件。人类的大脑很难同时记住几个不同的组件。例如,在电话网络发展的早期,贝尔实验室对人类的记忆能力进行了大量研究。研究结果表明,人类在短时间内可以可靠地记住7个数字,但不能再多了。

所以电话号码是由7位数组成的。

计算机没有这样的困难。它们可以很容易同时“记住”数十亿个数字。因此,计算机对我们人类来说既是复杂性的来源(我们无法理解它们在用这些数字做什么),也是帮助我们管理复杂性的一种方法(我们将自己的记忆托付给它们)。





以图2.3中3D打印的马的模型为例,图2.5所示的虚拟模型共有超过23 000个三角形平面。每个平面都由9个数字指定,因此,定义虚拟模型的STL文件中包含了由4 600万比特表示的超过207 000个数字。然而,我的笔记本电脑可以用这些数字生成图中的图形,并在不到1秒钟的时间内完成模拟光线。我还可以在没有明显延迟的情况下交互式旋转该图形,以便计算机重新渲染和重新模拟每个角度的光线。该图像的渲染需要对代表23 000个三角形顶点的数字进行数百万次的算术运算。


使用爱迪生的原型—测试法设计一个复杂的系统比较困难,因为有太多可能的配置可供尝试。尽管如此,针对原型的这些原型—测试方法在今天的工程中仍然扮演着重要的角色。图3.1所示的是崔伊等人(2001)报道的电子元件现代原型。这是一种被称为鳍式场效应管(FinFET)的晶体管,是由杰夫·博科尔、金智杰、胡正明和他们的学生在伯克利大学发明的。图中所示的原型是在2001年制造的,其原理与朱利叶斯·利林菲尔德申请的场效应晶体管专利具有相同的原理(利林菲尔德,1930)。

这种晶体管的创新之处在于其结构,它比以前的集成电路更加立体。它的垂直结构使得更多的晶体管可以被封装到一个硅芯片的特定区域。

我要强调一下图中所示的几个尺寸大小。鳍式场效应晶体管上的“鳍”的宽度是20纳米。我们知道,1米有10亿个纳米,所以这确实是相当小的。


图3.1 一个现代晶体管的原型。(金智杰供图,致谢。)




让我们来思考一下实现如此小的晶体管的意义。一个中等规模的硅芯片的面积约为1平方厘米。想想看,1平方厘米的硅芯片上能有多少个20纳米的小方块呢?我要不要先停下来,等你计算一下呢?

我先暂停一会儿。

好吧,希望你得到的答案和我的一样,那就是2.5×1011 ,也就是2 500亿!下面这个小方块的面积就是1平方厘米:





要把2 500亿个不同的人造对象装进上面的空间,这的确令人难以想象。

在2016年之前,还没有人制造出拥有2 500亿个晶体管的芯片,部分原因是除了晶体管之外,芯片中还包括许多其他的东西,例如连接晶体管的线路。此外,任何两个晶体管之间都需要一定的距离和空间。那么,一个芯片实际上能有多少个晶体管呢?

英特尔公司使用22纳米的鳍式场效应晶体管制造了一系列的微处理器芯片,并将它们命名为Haswell系列芯片。你的电脑里可能就有这样的一块芯片。图3.2给出了包含多个此类芯片的硅芯片的一部分。作为高科技工厂,“晶圆厂”生产这种晶圆,然后将其切割成单个芯片,并将它们安装在计算机中。图中每个芯片的面积是1.77平方厘米,几乎是如上所示正方形的两倍,且具有14亿个晶体管(辛皮,2013)。这远远少于如前所述的2 500亿,但是仍然是一个庞大的数字。 [1]


图3.2 这是一张带有多个英特尔Haswell微处理器芯片的硅片照片。通过上面的别针可以感受其大小。[照片由英特尔免费媒体(雅虎网络相册:Haswell芯片)发布,已获得维基共享资源2.0授权。]




很多关于这类技术的文章,包括我在上面所写的,都对大的数字有着令人窒息的热情,因为它们比我们在日常生活中遇到的任何东西都要大得多。但实际上,我们大多数人很难给这些庞大的数字赋予任何意义。事实上,我想说明的一点是,尽管人类的大脑有大约1 000亿个神经元,且每个神经元的功能都比一个晶体管更复杂,但人类的大脑还是无法理解任何由14亿个功能都可能不同的单个组件构成的设计!

每个晶体管都可以作为一个电子开关。它有一个控制输入,可以使得开关导通或截止。它可以在每秒钟开关数十亿次。数十亿计的晶体管以每秒数十亿次的速度进行开关,其结果就是产生了难以想象的潜在复杂性。

我们如何才能利用这项技术设计任何东西呢?我们可以使用爱迪生的原型—测试实验风格吗?博科尔、金智杰以及胡正明很可能在成功设计鳍式场效应晶体管之前,的确做了一些原型—测试的实验。即便如此,仅仅因为所涉及的尺度,他们的实验也比爱迪生的要困难得多。要雕刻一个20纳米的物理结构是非常困难的,你不能用锤子和凿子来做到这一点。因此,与爱迪生相比,他们不得不更多地使用模型。

但是更重要的是,如果你想设计一个基于硅芯片的系统,你会从晶体管的组装和连接开始吗?

例如,我们来看看我用来编写本书的系统。我使用了一个名为LATEX的软件包,它能够把我输入的文本转换成可电子分发或打印的格式化书籍。假设我想设计这样一个系统,那么,我是否应该从一堆晶体管开始,以各种方式把它们连接起来,再看看它们能做些什么?肯定不会是这样的。

LATEX是一个有趣的软件。它为我(一本书的作者)提供了建模图书的范式。我在文本编辑器中构造了我的书的模型,其中包含诸如用\ footnote {脚注内容}的注释创建一个脚注。然后,我会运行一个LATEX程序,将文本模式的内容转换为一个PDF文件——待打印文件的另一种页面模式。LATEX软件是莱斯利·兰波特20世纪80年代初在斯坦福国际研究院工作时开发的。兰波特是一位多产且有影响力的计算机科学家。他因在分布式软件系统方面的突出贡献获得2013年的图灵奖(有时也被称为诺贝尔计算机科学奖)。LATEX是“Lamport的TEX”的缩写,它以斯坦福大学的另一位图灵奖得主高德纳于20世纪70年代末设计的TEX排版系统为基础。高德纳因他不朽的多卷型巨著《计算机程序设计艺术》而声名显赫。这是一本关于算法和编程原理的百科全书。维克拉姆·钱德拉在他的关于软件美学的著作《极客写作:代码与小说之美》(Geek Sublime )一书中写道:


如果有一个人能流利地说出机器里的方言,那么这个人一定是高德纳——计算机领域的活佛。(钱德拉,2014)




在一篇名为“文学编程”的文章中,高德纳认为,软件是一种文学,在这种文学中,编写的代码不仅可以告诉计算机该做什么,还能用来与他人进行交流:


让我们改变一下我们对构建程序的传统态度:与其设想我们的主要任务是指导计算机去做什么,不如让我们集中精力向人类 解释我们想让计算机做什么。(高德纳,1984)





从20世纪70年代末开始,高德纳花了大约10年创建了TEX排版系统,因为他发现当时的照相排字系统的排版实在太难看了。今天,成千上万人已经为TEX和LATEX软件做出了贡献,主要是通过一个支持各种文档准备需求的软件包系统。它是一个蓬勃发展的开源社区,几乎所有的软件都是免费的。人们阅读并改进其中的代码,这几乎就像是在向高德纳致敬。在我看来,TEX软件生成的字体比我遇到的任何商业文字处理器的都要好。在第5章,我将更多地谈及有关软件的人类表达的内容。



3.3 模型的传递性


一个文字处理系统,就像我在写作本书时使用的一样,运行在图3.2所示的微处理器上,其使用基于图3.1所示原型的晶体管。

在硅物质和文字处理器之间存在着许多建模层次。在物理和维基百科这样的系统之间可以找到更多的层次。就像铅笔一样,没有人知道如何制作这样一个系统。然而,这种系统的存在的确是人类伟大智慧和创造力的直接结果。每个建模层都允许个人对设计做出贡献,而无须了解或关心他们正在使用的建模层是如何产生的,也无须知道他们正在创建的建模层将如何被其他设计人员使用。

图3.3给出了构建一个系统(例如维基百科)所涉及的几个层次。我的朋友兼同事阿尔贝托·圣乔瓦尼—温琴泰利称这些层次为“平台”(圣乔瓦尼—温琴泰利,2007)。这是一个恰当的术语,因为每个平台构成了构造上层模型的基础。上面的一些模型又定义了用于进一步构造的平台。圣乔瓦尼—温琴泰利指出,这些平台给了设计人员“选择的自由”。每个平台下面都存在很多种可能性,这些可能性提供的选择比任何设计人员所能处理的都要多。而在平台之上,可做出的选择很少。例如,与使用逻辑门相比,你可以通过创建一个晶体管网络设计更多的系统(将在第4章中做出解释)。但是,当逻辑门提供了一个合适的平台时,如果你使用逻辑门而不是晶体管网络,设计工作就会变得容易很多。


图3.3 范式的分层。




人们偶尔会在科学中遇到这种抽象分层的使用。但与工程相比,科学中的这种情况还是比较少见的,而且也不会出现那么多的层次。科学家希望构建物理现实的模型,然而,物理现实的模型的模型会仅仅因为其离物理现实更远而变得更加令人怀疑。

18世纪末发展起来的气体定律是模型成功分层的科学的例子。这些定律与气体的压力、温度、体积和质量有关。它们包括玻意耳定律、查理定律、盖—吕萨克定律和阿伏伽德罗定律。这些模型描述了最终由气体中大量分子的运动所导致的现象,但它们并没有从单个分子的角度描述这些现象。例如,玻意耳定律指出,在不变的温度下,气体的压力与它所占的体积成反比。因此,如果你要减小气体的体积(压缩气体),气体的压力就会增加。这些都是非常有用的模型的模型,其中较低层次是随机移动的分子之间的相互碰撞以及与外壳表面碰撞的模型。

可以说,生物学是最复杂的自然科学学科。一些研究人员认为,只有通过这样的分层才能使自然生物系统变得容易理解。例如,费希尔等人在2011年提出了如图3.4所示的层次“以征服生命系统的复杂性”。他们类比计算机硬件系统的分层而明确提出了这些层,甚至相应地命名了其中的一些层,如“生物逻辑门”。然而,图中的问号显示这种方法还不成熟。至少到目前为止,生物学似乎比工程更难利用模型的传递性。

我相信这个限制是非常基础的。科学不能像工程那样从建模范式的分层中获益。原因在于,工程师构建系统来匹配模型,而不是构造模型来匹配系统。我将在后面的章节对此进行更全面的讨论。


图3.4 费希尔等(2011)为合成生物学提出的抽象层次。




即使没有分层,我们物理世界中的许多现象(甚至也许是大多数现象)也不适合于科学建模。例如,约翰·塞尔写了大量关于科学模型无法处理认知和社会现象的文章,尽管这些现象显然属于物理现象。我们回顾一下他的观点,“自然科学的方法在研究人类行为时并没有像在物理学和化学中那样带来回报”(塞尔,1984:71)。据我的理解,他的解释是模型传递性失败的一种形式。作为一个例证,他从较低层次的物理现象来看待我们无法预测战争和革命的现象:


不管是什么样的战争和革命,它们都会涉及大量的分子运动。其结果是,任何有关战争和革命发生的铁律都必须与分子运动的规律完全一致。(塞尔,1984:75)




他指出,我们没有关于战争和革命发生的规律(从物理规律意义上讲)。尽管最终“战争和革命,和其他一切事物一样,都是由分子运动组成的”。

这并不是说更高层次的现象不能用分子运动来解释。有些现象是可以的。塞尔引用了玻意耳定律和查理定律,这两个定律与分子运动的模型是一致的。这种关系相对简单,而且模型具有预测性。但是,战争和革命并非如此。战争和革命距离分子运动是如此遥远,以至没有任何关联是有意义的。

塞尔认为建立这种关联不仅是困难的,也是不可能的。他给出的理由既深刻又发人深省。为了证明他的观点,他让我们思考一下“货币”这个概念。正如他指出的那样,“货币就是人们所使用和认为是货币的东西”(塞尔,1984:78)。这个概念是自我参照的这一事实,是塞尔观点的关键所在。原因在于,“命名现象的概念本身就是这个现象的组成部分”。货币可以有不同的形式,如纸币、金币或(今天)存储在电脑中并以数字形式显示在屏幕上的比特位。塞尔说,试图将货币解释为一种神经生理学现象的尝试为货币的多种形式所羁绊。因为,当我们看到这些不同形式的货币时,视觉皮层上的刺激会完全不同。塞尔提出问题——这些完全不同的刺激是如何对大脑产生同样的影响的:


从货币可以有范围不定的物理形式这一事实来看,它可以对我们的神经系统产生范围不定的刺激作用。但是,由于它可以给我们的视觉系统带来一种范围不定的刺激模式,如果它们都能对我们的大脑产生完全相同的神经生理效应,那么它会……是个奇迹。(塞尔,1984:80)




因此,塞尔认为,货币的概念对我们的大脑不会仅仅是一种神经生理效应。


这种现象的物质和社会或者精神属性之间不可能有任何系统的联系。(塞尔,1984:78)





同样的观点似乎也适用于与货币这一社会学概念截然不同的现象,如人脸识别。例如,我们能够在一张我们出生以前拍摄的黑白照片中认出自己母亲的脸,尽管那时黑白照片上母亲的面容与现在有很大的差异。塞尔似乎必须得出这样的结论——这也不是一种神经生理效应。但是,我怀疑它是。尽管刺激有很大的可变性,但人类大脑已经进化到将视觉刺激归类为不相关联的类别了。


我是工程师,不是哲学家,更不是神经学家。我不能言之凿凿地拒绝或支持塞尔的观点,但坦率地讲,我并不需要它得出本质上相同的结论。我完全愿意接受这一点——没有人会在视觉系统的生理刺激和货币的社会学概念之间建立任何有意义的联系。即使我们能构建出副现象的层次 [2] ,它们之间的关系也会特别复杂,或者会有很多层次,以至从它们的联系中也不会产生任何有意义的东西。较高层次的现象是涌现现象,它们包含了较低层次的现象,但又有其自身的特征和属性。在后面的章节中,我将探讨建模的基本限制。即便货币的概念确实是一种神经生理学效应,这些限制也会使这种联系变得不可能。

这也许是更为有趣的事实,即使我们清楚地知道如何解释产生于物理效应的一些现象,这样做本身也没什么意义。在第5章,我会谈到,尽管软件最终是在硅材料中流动的电子,但是物理效应和软件之间存在着太多的建模层。实际上,这已经使得它们之间的联系变得毫无意义了。

我认为,像维基百科这样的高端技术,与使其运转的半导体物理学中的潜在物理现象几乎没有(而且正在减少)什么有意义的联系。对于数字技术,我们实际上可以将这种关系从维基百科一直追溯到半导体物理学。我将在第4章和第5章中探究这些问题。但在这个过程中,我将向大家展示,较高层次与较低层次的模型之间存在着许多间接层次,以至高层次上发生的事情与低层次上发生的事情几乎没有什么有意义的联系。

在处理模型的分层时,工程师比科学家有优势。自然生物系统以及战争与革命都是我们的世界赋予的,而工程系统不是。就工程系统而言,工程师的目标不是用较低层次的现象解释它们,而是用较低层次的现象设计它们。这个不同的目标使得利用模型的传递性变得更加容易。

以合成生物学为例,它与设计人工生物系统有关。这一领域较少关注解释自然产生的系统,而更侧重于利用自然生物途径来合成新的系统。在合成生物学中,研究人员采用了分层的抽象概念,并获得了很大的成效。例如,恩迪(2005)主张使用预设的功能模块创建生物系统。实际上,像合成生物学这样的工程学科,可以更容易地使用分层抽象,因为模型只需要对正在创建的系统建模。生物工程师选择要建模的系统,而且他们选择系统的部分依据是他们可以建模这些系统。为了提高效率,科学模型就需要对大自然赋予我们的众多系统进行建模。而且,我们不能选择这些系统,它们是大自然赋予我们的。

在接下来的两章中,我将详细介绍图3.3中的这些层,重点在于理解它们是如何产生的,而且我的目的在于说明这些层是人类的创造性工作,而不是上帝给予的事实的集合。但是,我首先还是想先花一点儿时间来思考,对任何给定的任务,如何确定应该关注哪个层。





3.4 还原论


在最低层次上,文字处理器和维基百科都是在硅材料和金属中流动的电子,而构成维基百科的程序是硅材料和金属中流动的电子的模型的模型的模型的模型……人们很容易落入还原论的陷阱,于是认为维基百科“除了”是电子在材料硅中流动外什么都不是,但这会极大地歪曲事实。

对于任何建模层的系统,还原论的观点是用其下面的一层来进行解释的。例如,我们可以解释,维基百科的搜索功能是如何使用编程语言中比较文本的操作符的,这些操作符通过比较机器码中的文本二进制表示来实现,机器码使用了某个指令集体系架构中的一条比较指令,指令集体系架构由带有一个可以执行比较操作的算术逻辑单元(ALU)的微体系结构实现,该逻辑单元由实现比较功能的一组逻辑门构成,这些逻辑门是互连的一组晶体管,而晶体管是三维结构的掺杂硅。显然,这是对维基百科搜索功能的一个糟糕解释。

还原论蕴含的一个含义是,一种副现象对解释它的现象没有任何影响。例如,气体的温度和压力的副现象可以用潜在的分子运动来解释,但是,即便我们不了解温度和压力的概念,分子运动也不会发生改变。然而,对于图3.3所示的这些层来说,这一含义显然是错误的。只有这些层的最低层,即移动电场的电子,是自然界赋予我们的。其他的每一层都是由人类构建的,而且其目的通常是更好地服务于上层。以逻辑门在数字机器设计中的作用来解释逻辑门的操作,以及用数字机器所要执行的软件来解释数字机器的设计,都是非常有效的,因为每一层的设计都要受到其下面以及上面层的影响。

在自然科学中,如果科学家想要使用这样的层,那么声称栈中更高的层影响其中较低的层将是一次信念的目的论飞跃。图3.4中生物门的存在如何影响自然界的信号通路的实现?相比之下,如果认为图3.3的栈中,晶体管是启动维基百科的很好的开关,这样的观点就不会让人觉得牵强了。

事实上,基于物理电子学的设计者一直在努力改进晶体管,使其更像理想的开关。从根本上讲,晶体管并不是开关,而是一个放大器。然而,工程师们对晶体管的设计进行了不断调整,使它们更像开关。例如,当晶体管处于截止状态时,通过它的泄漏电流应该非常小。这样可以减少能耗,这使得将更多的晶体管封装到一个小空间而不产生可能融化硅材料的过多热量成为可能。因此,工程师将会调整物理结构的设计,以减少电流的泄漏。他们这样做是为了让维基百科更好地运行。在这种情况下,有目的论的解释是完全合理的。

因此,图3.3与图3.4所示模型栈的相似之处充其量只是表面的。

我现在要重申一下我在2.3节提出的观点——在科学中,模型的价值取决于它的特性与目标物属性的匹配程度,而在工程中,目标物的价值在于它的属性与模型特性的匹配程度。如果我们的晶体管模型是一个开关,那么最有价值的晶体管会是那些表现得最像理想开关的晶体管。

尽管我们有着坚持实证主义教条的决心,但是我们仍然可以坚持一种还原论的方法。一旦我们得到了物理电子工程师设计的一些晶体管、超大规模集成电路软件设计的一些逻辑门、英特尔设计的微体系结构以及指令集体系架构、甲骨文开发的Java编译器、Eclipse基金会的Java组件库,我们就可以用这些基础来解释维基百科是如何工作的。





但是,这些解释对我来说太过于呆子气了。首先,这些基础并不是静态的,所以我们费力构建的解释只会在瞬间有效。而更重要的是,这种解释大大低估了维基百科存在的真正意义。在抽象的更高层次,出现了一些很难(如果不是不可能的话)用较低层次的抽象来解释的属性。从本质上说,维基百科使技术和文化达成一种伙伴关系。这在很大程度上就是维基百科的价值所在。我承认,当我看到一个写得特别好的维基百科页面时,我确实感到一种真正的审美上的愉悦;而当我看到一个写得很糟糕的页面,或者过于清晰地反映太少人的观点的页面时,我会感到非常沮丧和郁闷。一个写得好的维基百科页面很难用流动的电子来解释。


技术本身并不能创造出像维基百科这样的现象。对该类现象进行任何简化的解释都是幼稚的。在后面的章节中,我将说明,还原论的失败是复杂技术中不可避免的基本问题。

请注意,我们的分层不需要止步于在图3.3所示的顶部层次。

维基百科中的软件是在该图顶部的建模范式中被创建的。但在很大程度上,技术是为了支撑其上的社会学层次才被建模的。我只是个技术呆子,我不了解人,所以我不会试图把我的分析扩展到那些社会学层次。我把这个任务留给社会科学家。

在下一章,我将重点介绍硬件技术。我认为,硬件的生命力并没有该硬件的模型那么持久。尽管没有物质的形式,但是模型和它们所基于的范式比它们所建模的事物具有更持久的生命力。我之所以关注数字技术,是因为当我们从物理层(硅芯片)开始向上时,我们很快就会得到极具表现力的媒介,其可以实现极其复杂的模型。这些媒介的表现力释放了人类的创造力,并促成了像维基百科这样的变革性技术的出现。

在第5章,我将聚焦于软件技术。在这里,我需要指出,软件对构建它的范式进行编码。这种自我支撑能激发真正的创新力,并创造出那些能够对人类文化产生深远影响的真正的创新产品。在后面的章节,我将阐释软件的局限性。进一步创新的大门依然敞开着。


[1] 图3.2所示的芯片是Haswell产品的“四核+ GPU”版本。这意味着每个芯片实际上包含5个计算单元:4个执行程序的“核”和一个管理屏幕上图形及文本渲染的“图形处理单元”。尽管GPU非常专用,但它也是一台计算机。如果你斜着看这个图形,那么你可以看到每个芯片的裸片,即图中连续排放的矩形形状。在每个裸片中,你可以看到4个相同的形状,这是4个核。GPU位于4个核之上。芯片的其余部分可能大部分是存储器。截至撰写本书时(2016年8月),最大的Haswell芯片上有55.6亿个晶体管,它的面积约为6.6平方厘米,包括18个核。



[2] 副现象是一种可以用更基本的现象完全解释的现象。





4.

硬件快速演化


在本章,我会说明硬件也是软的,以及一种比硬件本身生命力更持久的思想的短暂表达。同时,我在本章还追溯了使数十亿晶体管组成数字机器成为可能的分层范式。





4.1 硬和软


史蒂文·康纳是伦敦大学伯克贝克学院现代文学和理论专业的教授,他认为斯坦福大学的法语教授、法国哲学家米歇尔·塞尔创立了一套精妙而漂亮的“硬和软”的理论。据康纳所说,塞尔的论题贯穿于他的多部作品之中,其中许多作品尚未被翻译成英文。康纳评论说,要引用塞尔的原文是有点儿难度的,所以我在这里就引用了康纳的一段文字:


“硬”和“软”的对比指的是自然领域和文化领域的区别,自然领域是我们所说的“硬科学”关注的对象。硬指的是给予的,而不是制造的。它指的是物质上的,而不是概念上的。它指的是硬件而不是软件。它指的是对象而不是想法,是形式而不是信息,是物理世界而不是文字。(康纳,2009)




康纳在塞尔的著作中发现了一系列令人吃惊的硬和软的经典对立情形,包括身体与语言、科学与人文、事物与符号、物理的与概念的、对象与想法、形式与信息、物理与语言、石头与鬼魂、发动机与信息论、手册与数字、声音与意义、桥梁与连字符、能量与信息、肉体与文字、真实与虚拟、力量与代码、立方体与几何学、客观与主观、战争与宗教、一本书与一个故事以及声音与音乐等等。

然而,塞尔并未屈从于柏拉图主义,那需要在硬和软之间有一个清晰的界限。恰恰相反,康纳表示:


塞尔的主要成就是,允许他的读者领悟(硬和软)是可以相互转换的……硬的总是能蒸发成软的,而软的也常常可以钙化为硬的。(康纳,2009年)




塞尔在自己的著作中提道(康纳翻译自法语):


硬的东西常常显示出软的一面;当然,材料本身就像软件一样可以被记忆和编程。硬件(法语matériel)中有软件(法语logiciel)。(塞尔,2003:73)




然后,我们又在硬和软之间发现了更为微妙的对立关系,例如,蜡和蜡、自然和自然、绳子和绳子,或者数学和数学。根据作用和用途的不同,上述例子中的每一方既可以是硬的,也可以是软的。按照塞尔的观点,“硬中有软,软中有硬”。

在塞尔的观点之后,我想简要地概括一下本章的内容——“硬件和硬件”,意思是硬件既是硬的也是软的。我要说的是,对于一个从事数字技术工作的工程师来说,硬件仅仅是一种思想的短暂表达,它的持续时间也许只稍稍长过一个几毫秒内就会从房间里消失的口语表达词语,但在宏大的计划中仍然是短暂的。相比之下,硬件所表达的思想,尽管总是处在不断的变化和演变之中,但确实可以持续很长的时间。这些思想是通过分层的范式来表达的。这些范式以设计者都不知道的方式形成和约束着这些思想。

在本章的其余部分,我将概要阐述专门用于计算机硬件的建模层。感到抱歉的是,我承认本章后续内容会像一场技术呆子的头脑风暴。如果你是个急性子或者对硬件不感兴趣,并且同意我的基本论点,那么请直接跳过这部分内容。

我的基本论点是,现代计算机的硬件过于复杂,根本无法直接进行设计。因此,抽象层是必不可少的,除了最低层的半导体物理层之外,所有其他的层都不是大自然赋予我们的。它们都是人类构建的,是库恩所指意义上构建我们对硬件设计的思路的范式。

此外,我还想表明,尽管这些范式没有物理形式,却比硬件本身的生命力更持久。范式的转换对人类来说是一件十分困难的事情。它们也可能会有很高的代价,因为技术范式的转换可能意味着重大的重组。用以支持设计的软件,例如硬件描述语言及其编译器,可能必须被重新设计并进行重大的范式转换,甚至就连制造工厂也可能不得不进行改变。

尽管如此,范式的分层使得范式的转换比其他情况下的转换要更容易。例如,微处理器的设计在转向一种新的半导体技术时,通常不需要进行改变。本章的重点在于这种范式的分层是如何激发创造力和推动技术进步的。在第6章,我将进一步解释技术进步是如何引发范式转换的。

如果你坚持阅读本章的内容,那么我可以先告诉你我的主要目标是,向那些很少或根本没有接触过电子技术的读者展示诸如维基百科这样的一个应用程序是如何以晶体管为开关实现基本操作的。关于这个过程的解释不可能一下子就给出来,它必须是分层的。否则,人类大脑就要应对过于复杂的事物了。但是,从把单个晶体管抽象为一个开关开始,我们很快就得到了在芯片中实现时需要的成千上万、数百万和数十亿个晶体管的抽象。我的目标是向读者展示这些分层的抽象是如何实现这种扩展的。





4.2 半导体


现代微处理器是由硅晶体和被称为掺杂剂的杂质精心制成的。这些晶体被雕刻成微小的图案和形状,就像图3.1所示的“晶圆厂”中的产品。在晶圆厂,穿着连体防尘服的人们会在无尘室里制造硅晶片,这是因为哪怕是最小的灰尘都会毁掉一个芯片。晶圆厂的产品是图3.2所示的硅晶片,这些硅晶片被切割成单个的裸片,然后裸片被置入一个塑料或陶瓷的封装里,并将金属引脚从封装中引出。

当通过金属引脚向芯片施加电压时,就产生了电流。此时,我们就可以用欧姆定律、法拉第定律以及其他一些模型来理解发生了什么。例如,一个场效应晶体管是使用电场来改变硅片中“沟道”的阻值的。当电阻低时,晶体管就是“导通”的,而当电阻高时,晶体管就会“截止”。因为这种材料可以导电,也可以不导电,所以它既不是绝缘体也不是导电体,故而被称为“半导体”。

最终,电流是电子的运动,电压和电场是由电子聚集或空出一个区域产生的。可以说,微处理器的行为就是电子在硅材料中的流动。

半导体物理学是一门深奥的技术专业,它更多是科学而非工程。在这个专业化世界中,物理世界的事实占主导地位。尽管如此,各种设计模型层出不穷,这使得设计者能够重复使用经验法则来设计有用的电子电路,而无须深入了解这一物理学。这些设计模型构成了一个范式,而这种范式使一个行业的发展能够超越实验室中一次性的科学实验。





从原则上讲,芯片设计人员可以通过详细地说明如何构造一个结构来设计类似于图3.1所示的结构。这种设计采用了一套“掩膜”的形式,在光刻中其被用来“打印”芯片。例如,图4.1给出了某个掩膜设计的一部分。该掩膜说明了硅晶体的哪些区域应掺杂哪些掺杂剂,哪些区域应该覆盖多晶硅,以及哪些区域应该覆盖金属。到了20世纪70年代末,当一个芯片上放置2万个晶体管成为可能时,手工为每个电路设计这样的掩膜就变得非常不切实际了。



图4.1 四晶体管的CMOS与非门掩膜设计及其逻辑符号。




图4.1所示的版图只给出了4个晶体管。图4.2给出了一个裸片,其包含4个类似于图4.1所示的设计实例。

那个芯片上只有16个晶体管。芯片的外围有一组较大的管脚,这使得可以将线路焊接到芯片上,并连接到封装芯片外部的金属引脚上。

20世纪70年代末,加州理工学院的卡弗·米德和当时在施乐帕克研究中心工作的琳·康维 [1] 共同编写了名为《超大规模集成电路导论》 [2] 的教科书,这本书通过引入对可伸缩“设计规则”的使用在该领域掀起了一场革命。他们的方法现在被普遍称为米德—康维方法。

他们提出的设计规则是根据一个称作λ(希腊字母lambda)的变量参数来定义标准版图的模式。该参数是一个版图中特征图层之间的最小距离。例如,用于制造图3.2所示Haswell芯片的22纳米英特尔制程中,λ=22×10-9 米。有了这些设计规则之后,芯片设计者可以反复使用这些版图,即使是芯片的特征尺寸一直在减小。

米德和康维引发了一次范式转换。如同大多数范式转换的情形一样,他们也遇到一些阻力。一些固执的电路设计者坚持认为,他们可以设计出更好的芯片,而不受米德—康维方法的限制。他们拒绝接受这种“选择的自由”。当然,这样的设计师现在几乎已经完全消失了。今天,你也许会在行业的边缘部门发现他们的身影,在设计专门的芯片或者在从事制造技术的研究。


图4.2 NXP 74AHC00的裸片图(左边)和封装后的产品图(右边),该芯片有4个2路输入的CMOS与非门。(裸片图由ZeptoBars的米哈伊尔·斯瓦利切夫斯基提供,由知识共享署名许可3.0未移植版授权。)




设计规则的使用使芯片的设计者和半导体物理学家这两类人得以分离。物理学家可以制定设计规则,软件可以合成一组掩膜。这种职能上的分离也催生了新的商业模式。在这种模式下,芯片由“硅晶圆代工厂”制造,如台湾积体电路制造股份有限公司(台积电)或者格罗方德半导体股份有限公司等。这些公司只需要向它们的客户发布它们的设计规则就可以了。由于米德—康维方法的使用,系统设计公司可以“没有晶圆厂”,也不需要投资数十亿美元开设晶圆厂来生产芯片。相反,它们与硅晶圆代工厂签订合同,让这些工厂制造芯片。





4.3 数字开关


虽然晶体管可以用于其他用途(例如放大信号),但微处理器中的大多数晶体管被用作数字开关。这意味着我们可以通过了解晶体管是“导通”还是“截止”来了解电路的行为。实际上,我们并不需要关心“中间的那些行为”。以下是用于表示图3.1所示场效应晶体管的标准符号:





晶体管有一根控制输入线(称为栅极),用于打开(导通)或关闭(截止)晶体管。每个晶体管还有其他两个端子(称为源极和漏极)。当晶体管“导通”时,我们将其行为建模为一根连接源极和漏极的简单导线。当它“截止”时,我们将其行为建模为断开的两个端子。

栅极上的电压决定了晶体管是导通还是截止的。对于上述晶体管来讲,当栅极电压比源极电压足够高时,晶体管就会导通。否则就是截止的。

我们还可以制造出一个“互补”的晶体管,当栅极电压比源极电压足够低时,晶体管就导通。该类晶体管的栅极处标有一个圆圈:





将这两种晶体管结合在一起的技术被称为CMOS(互补金属氧化物半导体)技术。这个缩略词中的金属氧化物半导体(MOS)部分实际上已经过时了。它起源于最初用来制造这些晶体管的结构,但是这个名称现在仍然存在。CMOS已不再是半导体技术文化中的缩略词了。它只是一个名词,发音为“sea moss”(海藻)。

晶体管的开关模型是一个近似模型,但是特别有用。它是一种数字式抽象,分为截然不同的两种状态——导通和截止。但真正的晶体管并不那么清晰:它是在硅中流动的电子。即使再好的晶体管也无法完全匹配这个数字式的抽象。





4.4 逻辑门


晶体管的数字开关模型提供了一个范式。我们可以用它来构建执行逻辑功能的电路。图4.3给出了反相器的电路图,它将高电压转换为低电压,或者相反。如果高电压表示数字1且低电压表示数字0,那么,反相器就在0和1之间进行转换。这被称为“逻辑门”,因为它实现了一个简单的逻辑操作:否定。


图4.3 一个反相器逻辑门的电路图(左图)。当输入为高电压(3伏特)时,底部的晶体管导通(中间图)。当输入为低电压(0伏特)时,顶部的晶体管导通(右图)。




即使你以前从未研究过电路,也能够很容易理解这个电路。两个阴影框表示两个互补的场效应晶体管。顶部多出一个圆圈的晶体管补充下部的晶体管。在这个电路中,两个晶体管的栅极连接在一起,所以当一个截止时,另一个就是导通的。

由图可知,其底部端子的供电电压为0伏特。当底部的晶体管导通时,输出将连接到0伏特线路上,如中间的图所示,那么输出电压为0伏特。当栅极电压为3伏特时,底部晶体管将导通。所以,如果输入电压(栅极电压)为3伏特,那么输出电压为0伏特。

图中,顶部终端的供电电压为3伏特。当顶部晶体管导通时,这条3伏特的线路会直接连接到输出端,此时,输出端的电压为3伏特,如图中的右图所示。当输入电压为0伏特时,上面的晶体管导通。当输入电压为0伏特时,输出电压为3伏特。因此,这个电路确实实现了一个反相器的作用,这里假设3伏特代表二进制数字1,0伏特代表二进制数字0。

上图中的晶体管符号代表了一些相当复杂的物理对象的简单模型。该电路可以进一步抽象为一个反相器的逻辑符号,如下:





这个符号代表了一个数字式的“逻辑门”,具体来说就是一个反相器。这个抽象表达了一个特别简单的含义——当输入为二进制数1时,输出为二进制数0,反之亦然。

反相器也被称为非门,因为它可以被看作实现了逻辑否定。如果数字1表示“真”,数字0表示“假”,那么非门会将真转换为假,反之亦然。当使用这样的符号时,我们将不再明确地给出供电电压(指连接到顶部和底部端子)。这些都是隐含的。

开关电路和逻辑间的联系显然是由克劳德·香农首先完全建立起来的。香农是一位电气工程师,他将以信息论之父出现在第7章。1938年,22岁的香农是麻省理工学院一名硕士生。他写的一篇硕士论文,很可能是有史以来最有影响力的硕士论文(香农,1938)。在这篇论文中,他给出了电子开关可以通过多种方式的连接来实现任何符号逻辑功能的结论。例如,人们可以用电子开关表示这样的命题,“如果y 为真且z 为假,或者,如果y 为假且z 为真,则x 为真”。香农表明,这种逻辑命题可以用英国数学家乔治·布尔在19世纪创建的逻辑代数来设计、分析和优化。从那时起,这种电路就被称为布尔逻辑电路了。香农在撰写他的硕士论文时,电子开关是用机械继电器或真空管来实现的,晶体管在那时还没有被发现。尽管晶体管20世纪20年代就被发明了(见第1章),但它并没有被人们广泛地认识或使用。

另外,还有一些其他有用的布尔逻辑门。例如,一个与门可能有两个输入和一个输出。与门以如下的这个符号表示:





当两个输入都是1时,输出为1;否则,输出为0。一个与非门相当于一个与门的后面跟着一个“非”门。它的表示符号如下:





图4.4给出了与非门的一个实现。如果你现在已经了解了图4.3中反相器的工作原理,你可能就可以理解与非门是如何工作的了。香农使用机械继电器作为开关设计了类似的门。

如果任何一个输入为1,则或门的输出为1,其不像与门那样是要所有的输入都为1。有两个输入的异或门的输出为1时,如果其中的一个输入为1,那么另一个输入为0。换句话说,异或门可以确定输入是否不同。这里,我就不再额外列举它们的实现及符号了。


图4.4 与非门及其逻辑符号的电路图。当两个输入A和B都为高电压时,输出为低电压,否则输出为高电压。




到目前为止,我们对我们目标的维基百科系统有了三个抽象层次:我们有待构建系统的物理对象,如图3.1中所示的那些晶体管,设计规则使我们不必为每个设备提供详细的几何参数;图4.3所示的电路图,将晶体管抽象成开关;一些逻辑门,与图4.3中右侧的类似,将一个电路抽象为一个逻辑函数。每一层都有自己的范式,有自己的词汇和符号。但是,我们距离建立维基百科系统还有很长的路要走。让我们继续,我保证我们一定会实现这个目标!





4.5 逻辑图


图4.5给出了一个有67个逻辑门的逻辑图(要实现这些逻辑门的功能大约需要400个晶体管)。其中一些逻辑门是图4.3所示的反相器,其余的是代表与、或、与非、或非和异或函数的逻辑门。读者并不需要花时间研究这个图,但是,我们可以利用它来了解维基百科设计中的抽象层次。

该图给定了算术逻辑单元的设计。如我们所知,算术逻辑单元是任何微处理器的重要组成部分。这个算术逻辑单元的输入是4位二进制数。它们进入顶部标记为A 0…A 3和B 0…B 3的输入线。每条输入线携带一个比特。 [3] 底部有一些不同的输出,例如,有一根标记为A=B 的输出线。这条输出线告诉我们这两个输入的4位数是否相等。因此,算术逻辑单元执行的功能之一是比较两个数是否相等。这个算术逻辑单元还有加减两个二进制数以及其他一些功能。在他的硕士论文中,香农展示了一种简单但相似的加法器电路,并指出,这样一个电路的每个输出都可以用布尔的符号逻辑代数来表示。


图4.5四位算术逻辑单元(ALU)的逻辑图。(该图为CC BY-SA 3.0授权图片,由帕奥通过维基共享资源网站发布。图片网址为https://commons.wikimedia.org/w/index.php?curid=168473。)




在维基百科的搜索过程中,我在搜索框中输入的每个字符都用一个数字来表示,通常是8位或16位的数字,而不是4位的,所以我们需要一个更大的算术逻辑单元。但是,更大的算术逻辑单元遵循与这个4位的算术逻辑单元相同的原理,而且它的逻辑图一定会更令人生畏。

要找到一个能满足我搜索要求的页面,维基百科需要比较数字是否相等。搜索机制比只是数字的比较要复杂得多。但是,如果不能比较数字,就不可能进行搜索。因此,尽管这是一个脆弱的连接,但也是我们在硬件和应用程序之间第一次真正的连接。我们还有很长的路要走。

请注意,只有跨越截至目前我们所看到的4个抽象层,我们才能理解为什么计算机世界如此痴迷于二进制数。其实原因很简单,因为晶体管有两种状态,要么导通要么截止。两种状态对应两个数字0和1,对应两个逻辑状态假和真。这是我们所拥有的,所以我们必须用它们去工作,而没有2这样的其他数字。

现在,一个典型的微处理器的算术逻辑单元要比这个结构复杂得多。今天的微处理器的操作系统是32位或64位数,而不是4位数,所以这个电路的规模至少要比上面的电路大16倍,包括大约1 000个逻辑门和6 400个晶体管,而不是67个逻辑门和400个晶体管。通常情况下,它的规模还要更大,并提供更多的功能。很显然,像图4.5那样的模型会变得非常难以处理。你现在也许会十分感激我,因为我没有给你展示我在写本书时所用笔记本电脑上的算术逻辑单元的逻辑图。它看起来可能与之前所给出的逻辑图很相似,但它有更多的逻辑门。





请注意,当工程师首先创建了一个图4.5所示的逻辑图时,尽管它是一个模型,但是它所建模的物理实现并不存在。这强调了第2章提出的观点——该模型与典型的科学模型具有不同的目的。这个模型的价值不可能取决于它与它所建模的物理系统的匹配程度,因为那个物理系统还不存在。然而,这个模型的价值的确取决于我们构建一个行为与模型相匹配的物理系统的能力。事实上,数字技术的神奇之处就在于,我们知道如何构造出与图4.5所示模型几乎完全匹配的电路,并且让它在数年的时间里以每秒10亿次的速度执行指定的操作!



4.6 数字机器


图4.5所示的算术逻辑单元仅是微处理器众多部件中的一个。如果一个32位或64位算术逻辑单元本身太过复杂而无法用逻辑图表示,那么微处理器自然也会特别复杂。那么,工程师又是如何设计一个微处理器的呢?

我们可以将一个算术逻辑单元进一步抽象为如图4.6所示的单个组件。在图的中间靠右有一个形状比较奇怪的框,上面标有“ALU”(或者更准确地说,是标记为“ALU”的框),它代表着图4.5所示的逻辑图的32位或64位版本。类似地,图中的其他方框相应地表示包含了数千甚至数百万个晶体管的复杂逻辑。受过计算机架构艺术培训的人,很容易读懂这张图。这个人可以告诉你每个方框的功能。在这里,我不打算这样做,但我将尝试解释图的总体风格。

图4.6表示的是微处理器的心脏——CPU(中央处理单元)。它从左到右给出了构成计算机程序的指令序列的4个执行阶段。在最左侧,图中的组件从“指令存储器”中取指令(二进制数形式)。其右侧紧邻的译码阶段使用逻辑门来确定如何控制CPU的各个部分,包括算术逻辑单元,以便它执行指令所要求的功能。例如,如果一个指令想要对两个数字进行加法操作,那么译码器将构造控制输入以便执行加法操作。标记为“执行”的第三阶段使用算术逻辑单元来执行程序所要求的功能。第四阶段的标记为“访存”,该阶段将把指令的执行结果存储到存储器中,或者用指令的执行结果作为从存储器中读取数据的地址。


图4.6 简单微处理器主流水线的数字机器模型(继帕特森和亨尼西之后,1996)。




图4.6并非一个逻辑图,里面没有逻辑门。每个方框代表一个用许多逻辑门实现的组件。图里面的“连线”也不是简单的线路。例如,接入算术逻辑单元的两根“连线”代表的并不是一条线路,而是代表了32条或64条线路,这取决于它是32位还是64位的算术逻辑单元。

图4.6所示设计的一个关键思想是,将存储程序的存储器与执行程序的逻辑电路分离开来。早期的计算机可能是通过对逻辑电路的重新布线来编程的,例如,使用带有电缆和插头的接线板。将程序存储器与算术逻辑单元分离的体系结构在今天的计算机中几乎普遍存在,这种结构被称为冯·诺依曼体系结构,以美籍匈牙利数学家和计算机科学家约翰·冯·诺依曼的名字命名。冯·诺依曼在一份题为“离散变量自动电子计算机(EDVAC)报告”(1945年6月30日)的不完整初稿中第一次描述了这种系统结构的风格。冯·诺依曼一直致力于“曼哈顿计划”,并创建了原子弹的数学模型,还与宾夕法尼亚州立大学的一个项目开展合作,设计了一台名为EDVAC的计算机。EDVAC是用真空管制成的,并使用二进制(以2为基数)表示数字,而它的前身电子数字积分计算机(ENIAC)使用十进制(以10为基数)表示。虽然冯·诺依曼是该报告的唯一作者,但似乎很多其他来自宾夕法尼亚州立大学的人员都对这个设计做出了重大贡献。因此,把该体系结构称为冯·诺依曼体系结构可能再次反映了我们对于英雄的需要,而并非它准确地代表了历史。 [4]

今天,数字化的设计师通常使用相当标准化的硬件组件(如算术逻辑单元)来组装这些设计。图4.5所示的算术逻辑单元实际上就是一个被称为74181的标准设计。早在20世纪70年代,诸多的制造商就生产了被称为7400系列的标准组件。图4.5中的4位算术逻辑单元就是该系列中的一员。今天,半导体制造商和计算机辅助设计(CAD)软件提供了标准的元件库,设计师可以直接用它们组装设计。更复杂的元件通常被称为IP核,即知识产权核,常被作为商品出售给设计师,并被用作设计中的组件。

在图4.6中相对较高的灰色框代表锁存器或寄存器。锁存器是一种电路,当其被时钟触发时,就会记录它的输入。然后,它将把输入值保持在输出端,直到时钟的下一个嘀嗒到来。在我用来撰写这本书的计算机中,时钟每秒嘀嗒26亿次。在这样的时钟频率下,算术逻辑单元的输入仅持续1/2.6×109 或大约1/3纳秒。在1/3纳秒的时间里,它的那些逻辑门会决定它的输出值,以便算术逻辑单元的计算结果可以在时钟的下一个嘀嗒被下游的锁存器记录下来。

这种计时式的设计被称为同步数字逻辑。这是同步的,因为从概念上来说,所有锁存器都是同步计时的。同步数字逻辑范式将逻辑门内部和逻辑门之间的传播延迟抽象出来。只要逻辑门的速度足够快,就能在1/3纳秒的时钟周期内正确地执行它们的功能,那么,没必要担心每个逻辑门的确切时间延迟。延迟可以被忽略。逻辑门的范式变得很简单:它们会立即执行它们的逻辑功能。

图4.6显然比图4.5中的逻辑图要更抽象。芯片设计者将这种样式的图称为寄存器传输级(RTL)图。我则简单地称它为数字机器,因为它是一台操作由比特组成的文字的机器。该图描述了微处理器在32位或64位文字和数字上执行操作的层次上的结构。这些文字和数字是在相对复杂的组件之间交换的。实际上,今天的CPU要比图4.6中所示的设计复杂得多。例如,英特尔Haswell系列处理器最多有19个锁存器阶段,而不是图4.6所示的4个阶段。此外,这些CPU与复杂的分层存储系统相结合,之后,它们被组装到包含多个CPU的服务器中。然后,这些服务器被部署到拥有数千个服务器和复杂网络的数据中心。只有这样,我们才能拥有像维基百科那样的复杂系统的硬件。

我们现在有4个抽象层次,但是我们仍然没有文字处理器,更不用说像维基百科那样的系统了。我们有的只是硬件,我们仍然需要弄清楚如何告诉硬件做什么。在这一点上,我们需要从硬件世界过渡到软件世界。在软件方面,还会有更多的抽象层次。我将在下一章讨论这些问题。请大家继续保持耐心,我们就要到达目的地了。

请注意,从本质上说,所有4个抽象层次都以其当前形式存在了几十年。但是,除非在博物馆里,否则读者很难找到几十年前的硬件实物。然而,抽象的生命力比硬件更持久。





这些抽象的分层对技术的进步至关重要。在当金智杰、博科尔和胡正明三位于2001年推出鳍式场效应晶体管,以及这种晶体管在2014年实际投入生产时,对其他层造成的唯一影响只是它们现在有了更多的晶体管可供使用。不需要改变上层的范式,因为一个鳍式场效应晶体管就像以前的晶体管一样也可作为一个相当好的开关,只是体积更小,速度更快,耗电也更少了。这为上面的那些层创造了机会。正如我将在第6章解释的,实际上,这些机会可以引发一场危机,并导致范式的转换。但这种“机会危机”并不要求上面的那些层做出改变,它只是激活了一个而已。



[1] 为了强调范式是由人类发明的,而且有时是由一些有趣的人发明的,我不得不在这里多用些笔墨。在去施乐帕克研究中心工作之前,琳·康维曾经在1968年被IBM公司解雇。原因是她当时宣布打算从一个男性变性为女性。事实上,我甚至无法想象,这在当年需要多大的勇气。此后,她成为变性人权利的积极倡导者。



[2] 超大规模集成电路(VLSI)一词在20世纪70年代开始被使用,当时的芯片已经开始拥有成千上万个晶体管了。这个术语现在仍然被用于具有数十亿晶体管的芯片。



[3] 香农认为“比特”[bit,“二进制数字”(binary digit)的缩略形式]这个词是普林斯顿大学和贝尔实验室的数学家约翰·图基最先发明的(香农,1948)。



[4] 有关冯·诺伊曼在计算方面开创性贡献的精彩阐述,请参阅乔治·戴森在2012年出版的著作《图灵的大教堂》(戴森,2012)。





5.

软件的持久力


在这一章,我会讨论软件的范式层次如此之深,以至物理世界在很大程度上变得无关紧要了;软件反映了其创造者的个性和特质;软件在很大程度上要比硬件耐久,这是因为它编码了自己的分层范式;在服务器群组之梦中连接的机器。





5.1 自我支撑


编写程序的工程师原则上可以在程序存储器中设置单独的比特位,以使硬件能够执行他们的命令。在实践中,这是一件极其乏味的工作。一个典型的程序可能是程序存储器中的1 000万个比特位,那是很多很多的“0”和“1”。没有人能够在不犯很多很多错误的情况下写出这些“0”和“1”。

构成程序的比特模式被称为机器码。它们是供机器读取的,而不是让设计人员来编写的。那么它们又是怎么被编写出来的呢?设计人员是如何构建出一个文字处理器或维基百科这样的系统的?这就是下一组堆叠的抽象要发挥作用的地方了,它们聚焦于软件。

现代计算机程序通常由成百上千或成千上万个“模块”或“包”组成,其中每个“包”有数十或成百上千个“类”,每个“类”又有几十或成百上千个“方法”,而每个“方法”则有数十行或成百上千行代码。代码行是用某种编程语言编写的,并由编译器将其翻译成机器码(首先转换为另一种语言,然后再转换为机器码,这些转换通常是间接的)。设计中的这些层次对于能够从任何层理解程序的行为都是至关重要的。

早在1972年荷兰计算机科学家艾兹格·迪杰斯特拉在荷兰埃因霍芬理工大学任数学教授时,他就把软件描述为“分层系统”,并以下面的类比定义这个系统:


我们通过砖块来了解墙壁,通过晶体来了解砖块,通过分子来了解晶体。(迪杰斯特拉,1972)




然后,他注意到,除非“最大粒度与最小粒度之间的比率”较大,否则这种分层系统中的层数会很少。墙壁中的分子数量巨大,但是迪杰斯特拉只为我们给出了4个分层。

对于程序的结构而言,机器码的一个比特与一个程序之间的比率可能很容易就达到数百万。此外,程序的时间行为也是分层的。单行代码可以在几纳秒内完成执行,而程序的总体功能可能需要几个小时、几天或几个月。迪杰斯特拉对这一比率做了如下评论:


我不知道还有没有其他技术能具有1010 或更大的比率:计算机以其惊人的速度,似乎是第一个为我们提供了一种环境,在这里高度分层的人工制品成为可能的和必要的。(迪杰斯特拉,1972)




为了评估迪杰斯特拉关于软件的“最大和最小粒度之间的比率”,我们需要综合考量三个因素。一个计算机程序可能包括100万行代码,并被翻译成几百万条机器码。机器码是在一个芯片上被执行的,该芯片上有数十亿个晶体管,每个晶体管充当一个开关。这些开关每秒切换数十亿次。如果最小粒度是晶体管的开关切换,最大的是计算机程序,那么它们之间的比率至少是1024 或者下面这个数字:

1 000 000 000 000 000 000 000 000

这个数字对于人类制造的东西而言实在是太大了。因此,当我们开始接触软件的时候,我们实际上已经远离了物理世界。

此时,再把软件视为一种物理现象已经没用了。哈罗德·阿贝尔森和杰伊·萨斯曼在其计算机科学的入门书《计算机程序的构造和解释》中将软件称为“程序认识论”(阿贝尔森和萨斯曼,1996)。软件成为人类施展创造力和技能的一个抽象媒介,它更接近约翰·塞尔的认知现象,而不是作为其起源的物理现象。软件成为人类表达思想的媒介,不仅体现在技术上,还表现在文化、文学和艺术等方面。当然,它最终是通过物理世界的电子流动实现的。在康纳所说的“令人有些震惊的神圣感”中,当谈到软件的软模型和它所运行的硬物质的结合时,米歇尔·塞尔引用了《圣经》中的话:


道成了肉身。(米歇尔·塞尔,2001:78)




由于最大和最小粒度在规模上的巨大差异,分层建模就变得至关重要了。我们致力于工程而不是科学,与塞尔批评的从神经生理学角度解释诸如金钱等先前存在的社会学现象的科学努力不同,我们在这里要关注的是工程而不是科学,我们只需要解释我们所构造的现象,而不是大自然赋予我们的那些现象。作为人类,我们构建软件及其下面的所有层,直到晶体管。用我们构造的一个较低层的现象来解释我们构造的现象要容易得多,特别是因为较低层的现象部分地是为了支持较高层的现象而构造的。

建模的每一层都会受到一个范式的支配。例如,编程语言就是这样一种范式。它塑造了程序员的思维,并为程序认识论提供了框架。编程语言是人类的发明,它通常反映了发明者的创造力和特质。

作为一种范式,编程语言具有一个有趣的特性。具体来说,编程语言可以而且经常被用来编码它自己的范式。例如,程序被编译器翻译成较低级别的语言,例如机器码。假设机器码是定义良好的,编译器就会对编程语言的含义进行编码,从而对其范式进行编码。但是编译器通常可以用它所编译的语言编写!事实上,一种语言能否对自己的编译器进行编码,是一种常见的试金石。根据维基百科,至少以下语言的编译器是用其本身编写的,包括BASIC、ALGOL、C、D、Pascal、PL/I、Factor、Haskell、Modula-2、Oberon、OCaml、Common Lisp、Scheme、Go、Java、Rust、Python、Scala、Nim以及Eiffel。

我相信,这种范式的自我支撑是软件所特有的。这似乎接近塞尔对社会学现象的描述,“命名现象的概念本身就是现象的组成部分”。从最低层到最高层,软件都是如此。在最低层,微处理器包括了一个“引导加载程序”,这是一个很小的内置程序,该程序在微处理器第一次启动时被执行。“引导加载程序”一词指的是自引导(也称自举),在维基百科中有如下说明。


……这个词似乎起源于19世纪初的美国(特别是在“通过拽自己靴子上的鞋带,把自己提起来越过栅栏”这样的句子),指的是一个荒谬的不可能的行为……(2016年4月30日检索)




站在软件的更高层次,我在前面引用了维基百科上的维基百科页面,它本身就是一种自我支撑的形式。在中间层次上,重新启动操作系统,这是我们所有人都做过的事情,也是指自引导。操作系统使用自己的服务启动操作系统本身。





在本章的其余部分,我将解释我们通常在软件技术中使用的建模层。我希望这些解释不会比前一章对硬件建模层的解释更乏味,部分原因是它们更为特殊。我不把这些层描述为关于世界的事实,而是把它们视为人类的发明。这部分也许还会涉及一些技术呆子式的头脑风暴。真是抱歉,为了让读者更好地理解这些内容,我不得不如此。和前一章一样,我将先从较低的层开始解释,逐步到更高的层次。



5.2 指令集体系架构


早在20世纪60年代,在IBM(国际商业机器公司)工作的小弗雷德里克·布鲁克斯就创建了指令集体系架构(ISA)的概念。该架构对计算机硬件的功能进行了抽象。当计算机执行一个程序时,它执行一系列指令。例如,一条指令可能对两个数进行比较,另一条指令则可以根据比较的结果指定下一步要执行的指令。毫无疑问,一台计算机可以执行的一系列指令被称为它的“指令集”。在布鲁克斯之前,每一种不同的计算机模型都有不同的指令集。

在20世纪60年代,IBM开发了一个名为System/360的计算机系列产品。System/360项目的目标之一是生产能够执行相同程序的各种计算机产品线。也就是说,一旦你有一个可以放入指令存储器的比特模式,那么,同样的比特模式在入门级计算机、更高级更昂贵的计算机上都能运行。这意味着多种不同的硬件设计都需要以相同的方式解释存储为比特模式的程序。硬件可能因执行程序的快或慢、提供存储器的多或少而有所不同,但是在硬件的所有实例上,程序的基本功能都应该是相同的。

为了实现这一点,布鲁克斯提出了一个标准化的“体系结构”,它是一种定义了一个固定指令集和编码每条指令的比特模式的规范。之后产生的指令集体系结构被称为IBM System/360 ISA。

值得一提的是,布鲁克斯的计算机世界与我们今天的相比有很大的不同,大家非常有必要知道这一点。作为典型的IBM 360系列计算机,model 25在1968年可以以每月5 330美元的价格被租用,或以25.3万美元的价格被购买(相当于2016年的3.58万美元和170万美元)。model 25的目标客户是“中小型计算机”用户(IBM,1968)。在其最大配置中,主存包含4.8万个字节(每个字节是8比特)。相比之下,我用来撰写这本书的笔记本电脑的主存大约有160亿个字节,这台电脑的售价约为2 000美元。

尽管在成本和规模上存在着巨大的差异,但布鲁克斯有关指令集体系架构的基本思想一直沿用至今。我正在输入当前内容的笔记本电脑使用的指令集体系结构被称为“x86”指令集。它最初是在1978年英特尔的8086型微处理器中被引入的,大约比IBM 360计算机的问世晚了10年。英特尔公司在1981年推出的第一台IBM PC中使用了8086型微处理器的一个变体——英特尔8088(如图5.1所示)。


图5.1 IBM最早的个人电脑,型号5150。(图片由鲁本·德·里克提供,并获得CC BY-SA 3.0授权。图片来自https://commons.wikimedia.org/w/index.php?curid=9561543。)




x86指令集的规模随着时间的推移而不断增长,但它是以“向后兼容”的方式增长的。这意味着英特尔80186、80286、80386、80486和许多其他微处理器都可以执行为8086编写的程序。图3.2所示的Haswell系列处理器也是x86处理器。

x86指令集体系架构惊人的生命力强有力地证明了布鲁克斯的想法的威力。具有讽刺意味的是,硬件的生命力变得短暂,用几年就得更换,而软件却可以持续使用几十年。甚至连“endure”这个词也凸显了讽刺意味,因为这个词源于古法语用法,“dure”的意思是“坚硬”(hard),而要建造一座“耐久的”建筑,就得使用石头等坚硬的材料。然而,在计算机领域,软件要比硬件耐久得多。

下面,我来说明指令集体系架构是如何抽象硬件的。举例来说,假设硬件如图4.6所示的机器的任务之一是比较两个数。如果这两个数相等,那么它应该跳转到程序的另一部分。如果不相等,则应继续执行当前正在执行的指令序列。例如,这可能就是维基百科搜索功能的一部分,或者是搜索文本中出现的一个单词的功能部分。

图5.2给出了x86计算机程序中的一个小片段。在图中,每个框代表一条指令。机器从上到下依次执行这些指令。灰色框表示任意的、未指定的指令。图中给出两个具体指令,其中的第一条是:

cmp eax, ebx

该指令比较两个寄存器“eax”和“ebx”的内容。这两个寄存器中存放了32位数;在执行这条指令之前,程序大概已经加载了这些寄存器,以包含表示我们正在搜索的字符的数字。例如,可以将字符串“Plat”加载到32位寄存器中,假设每个字符都采用8位编码。


图5.2 x86汇编代码的小片段




上面的指令