分析机风云:超前时代五十载,是非曲直苦难辩

题图 | irshadgu

81d9235f6cc84be5fd32707f12f02f05.png

导读

1946年10月,计算机先驱莱斯利·约翰·科姆里在科学新闻期刊《自然》上撰文提醒英国读者,英国政府在一个世纪前并不支持巴贝奇制造计算工具:

100多年前,当时的英国政府不相信查尔斯·巴贝奇的差分机项目能获得成功,这一污点至今仍未抹去。毫不夸张地说,英国由此丧失了在机械计算领域的领先地位。

科姆里之所以如此评论,是因为第一台全自动计算机在美国哈佛大学制造完成,科姆里将其誉为“巴贝奇梦想成真”。和过去一个世纪的许多人一样,这位1916年毕业于奥克兰大学的新西兰天文学家对巴贝奇将项目失败归咎于英国政府深以为然。然而,故事的背后是非曲直要复杂得多。

作者:[英]马丁·坎贝尔-凯利  [美]威廉·阿斯普雷 

           [美]内森·恩斯门格       [美]杰弗里·约斯特

译者:蒋楠

作坊和仓库

巴贝奇发明了差分机与分析机两种计算工具。尽管差分机是最接近实际完成的机器,但就历史意义和技术水平而言,它算不上特别出色。巴贝奇对差分机的研究始于19世纪20年代初,他在这个项目上投入了大约10年时间。差分机样机于1833年面世,缓慢的进展总算结出硕果。这台样机陈列在巴贝奇伦敦家中的会客室,成为他在社交聚会中的谈资。大部分到访者并不理解差分机的用途,只有诗人拜伦的女儿埃达例外。这位18岁的年轻女士对数学很感兴趣,这在女性中颇为少见。埃达设法吸引到巴贝奇、奥古斯塔斯·德摩根等杰出的英国数学家指导她的学业。作为对巴贝奇的回报,她后来撰写了19世纪最出色的分析机专著。

b627981b3a53c441cc4299d05ad5b3ad.png

伦敦科学博物馆展示的分析机 | 图源:Wikipedia

巴贝奇的全尺寸差分机最终未能面世,他在1833年放弃差分机项目,转而开始研制分析机,这是巴贝奇得以在计算机史上留名的主要作品。那时的巴贝奇正处于个人声誉的顶峰,他不仅担任英国剑桥大学卢卡斯数学教授,也是英国皇家学会会士;作为伦敦科学界的领军人物之一,巴贝奇还撰写了19世纪30年代最有影响力的经济学著作《论机械和制造业的经济》。

尽管差分机的重要性毋庸置疑,但其作用基本仅限于编制数学用表。相比之下,分析机可以胜任所有数学计算。在考虑如何利用反馈计算结果来消除差分机中的人为干预(巴贝奇称之为差分机“吃掉自己的尾巴”)时,他萌生了分析机的想法。巴贝奇对差分机进行了简单改进,由此衍生出分析机的设计,分析机体现了现代数字计算机几乎所有重要功能。

分析机最重要的概念在于算术运算与数字存储的分离。而在最初的差分机中,这两种功能紧密相连:数字实际上存储在加法机构中,与普通的计算工具并无二致。巴贝奇起初担心加法机构的速度较慢,他为此发明了“先行载运器”以提高速度——这种快速加法机制相当于现代电子计算机采用的先行进位加法器。但新机构极其复杂,导致大量制造加法器的成本过高,巴贝奇于是决定将算术运算与数字存储两种功能分开。他将分析机的两个功能模块分别称为作坊仓库,这两个术语借用了纺织业的概念:纱线从仓库运往磨坊,在那里织成布料后再运回仓库。对分析机而言,“仓库”中的数字进入算术“磨坊”等待处理,得到计算结果后再放回“仓库”。可以看到,即便在绞尽脑汁思考复杂的分析机设计时,巴贝奇也没有忘记从经济学的角度考虑问题。

巴贝奇花了大约两年时间努力解决组织计算的问题——我们今天将这一过程称为“程序设计”,但当时并没有合适的术语来描述它。在尝试了包括手摇风琴在内的各种机械装置后,巴贝奇偶然发现了雅卡尔织布机。这种织布机诞生于1804年,19世纪20年代开始在英国的纺织与缎带制造业投入使用。雅卡尔织布机是一种通用设备,如果采用特殊的打孔卡进行控制,就能织出任意种类的图案。巴贝奇设想将类似的设计用于分析机。

f192b3185b437e845262a23e4a4d65ea.png

雅卡尔织布机上使用的打孔卡 | 图源:Wikipedia

资金难题

与此同时,差分机项目遇到的资金难题仍未得到解决,时任英国首相的威灵顿公爵要求巴贝奇准备一份书面陈述。正是在这份发表于1834年12月23日的陈述中,巴贝奇首次提及分析机,“一种功能更为多样化的全新机器”。巴贝奇或许已经意识到,提出分析机的设想会对差分机项目产生不利的影响;但他在陈述中声称,提及分析机只是出于体面,以便“您能完全了解项目的来龙去脉”。然而,这份陈述向英国政府传递出两条明确的信息:首先,政府应该放弃差分机项目以及已经为此投入的17470英镑,转而支持巴贝奇的新设想;其次,巴贝奇对制造分析机更感兴趣,而不是编制与政府主要利益息息相关的数学用表。英国政府对差分机项目的信心因此遭受致命打击,之后几年再未资助巴贝奇的任何项目。

从1834年到1846年,巴贝奇在没有任何外部资助的情况下精心完善分析机的设计。毫无疑问,在缺乏政府资助的情况下制造分析机,很大程度上属于纸上谈兵——巴贝奇最终留下的设计手稿达数千页之多。在这段充满创造力的时期,巴贝奇基本将计算工具本应实现的目标抛在了脑后,陷入“为制造而制造”的境地。因此,尽管差分机在编制用表方面尚能与航海表背后的经济需求相契合,分析机却完全没有考虑这些问题。分析机可以解决的问题,差分机同样可以解决;但差分机本身是否比18世纪90年代德普罗尼使用的普通计算员团队更有效,仍然有待商榷。实际上,除了巴贝奇自己,几乎无人对分析机抱有兴趣。

到1840年,在英国政府那里遭受的冷遇令巴贝奇情绪低落。因此,当他受邀前往意大利都灵大学参加有关分析机的研讨会时,巴贝奇欣喜异常。他认为自己在英国是一位不受尊重的预言家,都灵大学的邀请强化了这种错觉。都灵之旅成为巴贝奇人生的巅峰,期间最辉煌的时刻是觐见对科学问题表现出浓厚兴趣的维克托·伊曼纽尔国王。这与巴贝奇在英国所受的冷遇形成了鲜明对比。在都灵期间,巴贝奇鼓励年轻的意大利数学家路易吉·梅纳布雷亚中尉撰写介绍分析机的论文,这篇以法语写就的论文随后于1842年发表。(巴贝奇的眼光很准:梅纳布雷亚后来升任意大利首相。)返回英国后,巴贝奇鼓励年近三十并已嫁与洛夫莱斯伯爵的埃达将梅纳布雷亚的论文译成英文。然而,埃达·洛夫莱斯并非只是简单地翻译,她还添加了长度几乎四倍于原文的注记。事实上,在20世纪80年代之前,洛夫莱斯的《分析机概论》一直是巴贝奇一生中唯一详细论述分析机的作品。洛夫莱斯用诗意的措辞(这正是巴贝奇所欠缺的)唤起分析机的神秘感,这对维多利亚时代的人们来说想必是非常了不起的:

分析机的独特之处在于,将雅卡尔织布机为调节锦缎织造中最复杂的图案而设计的原理以打孔卡的形式引入其中,分析机可以藉此计算抽象代数……这样形容或许最贴切:分析机“编织”代数模式,如同雅卡尔织布机编织花朵和树叶。

在20世纪四五十年代的第一批计算机程序员看来,这种“编织数学”的形象是个颇具吸引力的比喻。

6ba182626f380f3f119faabb2a5b7cf5.png

埃达·洛夫莱斯 | 图:Henry Phillips

但应该注意到,洛夫莱斯对《分析机概论》所做的学术贡献被过分夸大。人们称她为世界上第一位程序员,甚至以她的名字命名了一门编程语言——Ada语言。后来的学术研究表明,《分析机概论》中的大部分技术性内容以及所有程序均是巴贝奇的成果。然而,即便《分析机概论》几乎完全出自巴贝奇的想法,埃达·洛夫莱斯无疑令这部专著增色不少。她承担了分析机的主要解释工作,深为巴贝奇所倚重。这位计算机先驱毫不吝惜对洛夫莱斯的赞誉,将她称作自己“亲爱的、备受推崇的译员”。

从意大利回国后不久,巴贝奇再次开始与英国政府洽谈资助分析机项目。当时,英国政府已经改组,新任首相罗伯特·皮尔广泛征询了各方面的意见,包括宣称巴贝奇的机器“毫无价值可言”的皇家天文学家。巴贝奇并不知晓这种直言不讳的评价,但他从政府那里得到的答复毫无转圜余地:由于巴贝奇未能兑现早先的承诺,政府不打算继续投入以徒增损失。今天的人们完全能理解英国政府当时的立场,但我们不应轻率地以20世纪的标准来评判巴贝奇。如今,研究人员期望在寻求进一步资助前展示出一定程度的成功与成就;巴贝奇则认为,在萌生分析机的想法后,仅仅为了展示具体成果而继续推进略逊一筹的差分机项目,于他而言是毫无意义的分心。

到1846年,巴贝奇已经为分析机的研制竭尽所能。接下来的两年中,他将注意力再次转向原先的差分机项目。25年来积累的工程实践改进以及为分析机研制的众多简化设计,现在都能派上用场。巴贝奇为这个他称为“差分机二号”的项目制定了完整的计划。

但英国政府对这些计划毫无兴趣,巴贝奇最终认识到,所有可能的资助都已化为泡影。自己珍视的项目胎死腹中令巴贝奇痛苦不堪,但强烈的英式矜持使他并未直接表达失望的情绪,而是对英国人敌视创新的态度冷嘲热讽:

无论向英国人提出多么精妙的原则或工具,你会发现他们的全部努力都是为了找出其中的困难、缺陷或不可能。当向英国人描述一种可以削土豆皮的机器时,他们会说这不可能实现;即便在他们眼前使用这种机器削土豆,他们也会宣称它用处不大,因为这种机器不能切菠萝。

或许没有其他表述比这段话更能表达巴贝奇对官僚思维的藐视。

巴贝奇已年过五旬,智力水平再也无法和20年前相比,他在科学界的地位越来越低。巴贝奇曾出版过一本奇怪的小册子,以半消遣的方式探索密码学与各种发明,其中一些发明近乎古怪。例如,他曾考虑制造一台井字棋游戏机,希望藉此为制造分析机筹措资金。

最后的慰藉

在生命的最后20年里,朔伊茨差分机的成功开发是少数令巴贝奇感到欣慰的亮点之一。1834年,知名科学讲师和科普作家狄奥尼修斯·拉德纳在《爱丁堡评论》上撰文介绍了巴贝奇的差分机。在读过这篇文章后,瑞典印刷商耶奥里·朔伊茨与其子爱德华开始制造差分机。经过近20年堪与巴贝奇相比的不懈努力,朔伊茨父子制造出一台全尺寸差分机,巴贝奇于1852年获知此事。这台差分机在1855年巴黎世界博览会上展出并荣获金质奖章,参观博览会的巴贝奇对此感到由衷高兴。第二年,美国纽约州奥尔巴尼的达德利天文台以5000美元的价格买下朔伊茨差分机;英国政府出资1200英镑进行复制,用于计算一套新的人寿保险表。

595f6ffac4ffce188246f8cda3e3b00b.png

后人制造的差分机二号 | 图:Geni

朔伊茨差分机最重要的一点或许在于其成本只有1200英镑,远低于巴贝奇对差分机项目的投入。但低成本的代价是机械水平存在瑕疵:朔伊茨差分机并非特别可靠,必须经常调整。此后的半个世纪中,人们还制造出其他差分机,但这些独一无二的机器既没有给发明者带来利润,也未能成为行业的开创者。因此,差分机基本被束之高阁,数学用表的编制者又开始使用计算员以及传统的台式计算器。

然而,查尔斯·巴贝奇从未完全放弃他的计算工具之梦。大约10年后,巴贝奇于1856年再次开始研究分析机。时年65岁的巴贝奇意识到,这台机器或许永远无法面世。直至生命最后一刻,巴贝奇仍在几乎与世隔绝的情况下继续分析机的研究,用令人费解的涂鸦填满了一个又一个笔记本。巴贝奇于1871年10月18日去世,享年80岁,没有完成任何作品。

巴贝奇之所以未能制造出任何计算工具,无疑是因为其粗暴的性格,他也没有领悟“至善者,善之敌”这句话的含义。巴贝奇不明白,英国政府关心的只是削减制表成本而非他的计算工具;制表工作由机器完成还是由计算员完成,对政府而言无关紧要。但巴贝奇失败的主要原因在于,他在19世纪二三十年代开创了数字化计算方法的先河,而大约50年后,机械技术的发展才使计算变得相对简单。如果巴贝奇的工作能延至19世纪90年代进行,结果或许会完全不同。事实上,巴贝奇的失败恰恰证明,他处于莱斯利·约翰·科姆里所谓的数字计算的“蒙昧时代”。为避免重蹈巴贝奇的覆辙,科学家与工程师倾向于在另一条非数字化的道路上进行探索,这条涉及模型构建的道路就是如今所称的模拟计算。

本文摘自:《计算机简史》(第三版)

ef3ac1bea1cf98645b2f4eba8e517575.png

简介:这是一部计算机史的权威之作,追溯了计算机的史前史、发明、软硬件的创新、应用领域的扩展以及个人计算机和因特网的兴起。《计算机简史 第三版》增加了对软件和因特网的最新分析,涉及编程、社交网络、移动终端等诸多新话题。本书还探讨了谷歌、Facebook等行业巨擘的崛起与发展,讨论了强大的应用程序如何改变了人们的工作、消费、学习和社交方式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值