Put the power of thought into the gears
如果不是在密碼學(xué)里鼻吮,講到破解維吉尼亞加密法的話,可能你永遠(yuǎn)都不會(huì)聽說這個(gè)人。
其實(shí)歷史上有很多能力和智力都奇高無比埃叭,又極為努力的人,但一生中并沒有留下什么偉大的成就砸逊。究其原因璧南,更多是因?yàn)樗麄兩诹恕板e(cuò)的年代”。比如巴貝奇就是這樣师逸。
他如果早出生100年司倚,也許會(huì)成為一門學(xué)科的開創(chuàng)者,會(huì)經(jīng)常和牛頓被人一起提起篓像;他如果晚出生100年动知,也許會(huì)成為像馮·諾依曼、香農(nóng)那樣的計(jì)算機(jī)領(lǐng)域的英雄员辩。而他盒粮,卻生在了中間的年代。
他的思想超越了同時(shí)代人100年屈暗,但那個(gè)年代的電磁學(xué)還沒先進(jìn)到讓計(jì)算機(jī)出現(xiàn)拆讯,所以巴貝奇是唯一一個(gè)用蒸汽、齒輪养叛、曲軸种呐、彈簧制造通用計(jì)算機(jī)的人。
牛津大學(xué)出版社曾經(jīng)在1885年出版過《國家人物傳記大辭典》弃甥,那里面就收錄了巴貝奇爽室,但條目讀起來讓人有點(diǎn)摸不著頭腦。介紹是這樣說的:
他是數(shù)學(xué)家淆攻、哲學(xué)家阔墩、發(fā)明家、科學(xué)機(jī)械師瓶珊,曾獲劍橋大學(xué)盧卡斯數(shù)學(xué)教習(xí)啸箫,但未曾講過課。曾獲政府資助建造一部用于計(jì)算的機(jī)器伞芹,但因與工程師意見不合忘苛,建造工作半途而廢;后又向政府提交過一份改進(jìn)設(shè)計(jì)唱较,終因經(jīng)費(fèi)問題未獲批準(zhǔn)扎唾。
這個(gè)看上去像一個(gè)失敗者的介紹,后來也演變成后人介紹巴貝奇的模板——不論是在百科上還是傳記里南缓,這個(gè)人好像大都是東一榔頭西一棒子的胸遇。
其實(shí)他一輩子真正鉆研的主題,是關(guān)于信息的編碼汉形、處理和傳輸纸镊。由這個(gè)念頭倍阐,生出了他一生各種零零碎碎的成就。
巴貝奇是英國人薄腻,出生在1791年收捣,去世在1871年。
他出生的年份正好是英國處于數(shù)學(xué)發(fā)展的低谷庵楷,因?yàn)樵谒錾?00年是牛頓的輝煌時(shí)代罢艾,但正因?yàn)榕nD太輝煌了,他和萊布尼茨關(guān)于到底是誰發(fā)明了微積分引發(fā)的民族情緒的對(duì)抗尽纽,導(dǎo)致了不列顛群島和歐洲大陸的數(shù)學(xué)家分崩離析咐蚯,此后交流就不多了。
可牛頓并不是神弄贿,微積分思想的原創(chuàng)性固然偉大春锋,但相比萊布尼茨的微積分思想,牛頓的還是稍遜一籌差凹。這至少體現(xiàn)在符號(hào)體系的不規(guī)范上期奔,它會(huì)導(dǎo)致定義的含混不清。
而歐洲大陸法國危尿、德國呐萌、丹麥等數(shù)學(xué)強(qiáng)國,在本來就稍有優(yōu)勢(shì)的萊布尼茨體系上繼續(xù)修補(bǔ)谊娇、改進(jìn)定義肺孤,所以在微積分誕生130多年后,英國在數(shù)學(xué)上其實(shí)已經(jīng)遠(yuǎn)遠(yuǎn)落后歐洲大陸了济欢。
這種落后的趨勢(shì)其實(shí)一直延續(xù)到一戰(zhàn)前赠堵,也就是說直到巴貝奇去世,英國的數(shù)學(xué)還一直沒追上呢法褥。
而在巴貝奇晚年的時(shí)候茫叭,電磁學(xué)才開始突飛猛進(jìn),那時(shí)候的巴貝奇已經(jīng)沒有精力體力參與其中了半等。
也正好是在巴貝奇生活的80年中揍愁,科學(xué)處于搜尋和積淀,等待下一次爆發(fā)的過程中酱鸭。
其實(shí)巴貝奇也多少能察覺自己所處的時(shí)代,比如在他還是大學(xué)生的時(shí)候就立志要復(fù)興大英帝國的數(shù)學(xué)輝煌垛吗。
他的數(shù)學(xué)水平確實(shí)不低凹髓,當(dāng)年就讀的也正是牛頓從前生活工作過的劍橋大學(xué)三一學(xué)院,他看的書大都是法國數(shù)學(xué)家的怯屉,比如拉格朗日的《解析函數(shù)論》蔚舀。
當(dāng)時(shí)他和另外兩個(gè)同學(xué)成立了“解析社”饵沧,此社的口號(hào)是要“為d搖旗吶喊,反對(duì)點(diǎn)的異端”赌躺。這里說的d狼牺,其實(shí)就是萊布尼茨微積分符號(hào)體系里代表微分的那個(gè)d,而點(diǎn)指的就是牛頓微積分符號(hào)體系里同樣代表微分的符號(hào)礼患。
牛頓簡(jiǎn)單的把它寫成了一個(gè)字母上的點(diǎn)是钥,這就導(dǎo)致之后沒法區(qū)分全微分和偏微分。所以在巴貝奇那個(gè)年代缅叠,想要學(xué)數(shù)學(xué)悄泥,必須得讀法國人的著作。
巴貝奇在關(guān)注萊布尼茨的微積分內(nèi)容時(shí)肤粱,也對(duì)萊布尼茨的一些發(fā)明產(chǎn)生了興趣弹囚,比如由齒輪組成的計(jì)算器。
萊布尼茨還希望發(fā)明一種體系內(nèi)部沒有悖論的語言领曼,來研究當(dāng)前世界上現(xiàn)存的語言鸥鹉。他的這種念頭,就相當(dāng)于發(fā)明出一個(gè)符號(hào)系統(tǒng)來表達(dá)邏輯關(guān)系庶骄。巴貝奇很看好這種思路毁渗,他覺得符號(hào)經(jīng)過精心挑選,可以做到通用瓢姻、易懂祝蝠。這種語言應(yīng)該也是可以用機(jī)械齒輪表達(dá)的。
在這種念頭下幻碱,他對(duì)英語進(jìn)行過全面分析绎狭,然后寫了一本特別的詞典,這個(gè)詞典并不是按字母順序排列的褥傍,而是按單詞使用了多少個(gè)字母的順序排列的儡嘶。比如2個(gè)字母的單詞都有什么,這個(gè)寫在前面恍风;3個(gè)字母的單詞都有什么蹦狂,這個(gè)往后排……
這種詞典,對(duì)他統(tǒng)計(jì)字母出現(xiàn)的頻率和解填詞游戲非常有用朋贬。也就是在這個(gè)階段凯楔,他順手破解了維吉尼亞加密法。
但因?yàn)楫?dāng)時(shí)英國和俄國正在打克里米亞戰(zhàn)爭(zhēng)锦募,巴貝奇被告知先不要公布自己的結(jié)果摆屯,所以200年來,人們一直認(rèn)為破解維吉尼亞加密法的人是卡西斯基糠亩。
雖然這也算是因?yàn)楸C芏铔]了一位破解者的榮耀虐骑,但巴貝奇的榮耀可遠(yuǎn)不止這個(gè)准验。
他最為人所知的就是,做出了一臺(tái)極為昂貴而且?guī)缀鯖]法正常工作的機(jī)械計(jì)算器廷没。
他那個(gè)年代糊饱,測(cè)繪機(jī)構(gòu)對(duì)數(shù)學(xué)精度的要求已經(jīng)很高了。比如說颠黎,1824年愛爾蘭的地形測(cè)量局另锋,準(zhǔn)備對(duì)國內(nèi)大小礦藏和國土邊界做詳細(xì)的測(cè)繪,用到的對(duì)數(shù)表要求精確到小數(shù)點(diǎn)后7位盏缤。
測(cè)量局找出了當(dāng)時(shí)可以搞到的過去100多年內(nèi)出版過的所有對(duì)數(shù)表砰蠢,一共找出了250多個(gè)不同的版本,除了法國唉铜、德國台舱、荷蘭、意大利的潭流,甚至連中國的都有竞惋,仔細(xì)對(duì)比后就發(fā)現(xiàn)錯(cuò)誤百出。
有些是進(jìn)位時(shí)出的錯(cuò)灰嫉,有些是數(shù)字前后寫反了拆宛,還有排版出錯(cuò)的,甚至還有6個(gè)錯(cuò)誤是極為普遍的讼撒,這6個(gè)錯(cuò)誤在幾十個(gè)版本中都出現(xiàn)在同樣的位置浑厚,所以看來當(dāng)初編制對(duì)數(shù)表的時(shí)候肯定有互相抄襲而不是自己算的情況。錯(cuò)誤比例雖然不高根盒,但一旦應(yīng)用在航海上就足以造成失事钳幅。
巴貝奇認(rèn)為這些錯(cuò)誤產(chǎn)生的根源,是人的參與炎滞。如果對(duì)數(shù)表是機(jī)械完成的敢艰,表格就不會(huì)有這么多錯(cuò)了。
之后他花了大約20年的時(shí)間做可以計(jì)算的機(jī)器册赛,要解決自動(dòng)計(jì)算的問題钠导。做出的第一臺(tái)機(jī)器,就被起名為“差分機(jī)”森瘪。
它可以做哪種計(jì)算呢牡属?比如說,如果用3個(gè)小球排列成三角形的樣子扼睬,要怎么排呢逮栅?最簡(jiǎn)單的就是頂上一個(gè),下面兩個(gè)。如果排成一個(gè)邊長(zhǎng)更大的三角形证芭,要怎么做呢?可以排三排担映,第一排1個(gè)废士,第二排2個(gè),第三排3個(gè)蝇完。照這個(gè)規(guī)律官硝,就可以排更大一些的三角形。
現(xiàn)在的問題是:
假如想排一個(gè)邊長(zhǎng)是10個(gè)小球直徑的三角形的話短蜕,一共需要多少個(gè)小球呢氢架?差分機(jī)就是解決類似這樣的問題的。
這個(gè)問題還可以更復(fù)雜一些朋魔,比如剛剛只是排成一個(gè)二維的三角形岖研,如果換成排成一個(gè)立體的正四面體,隨著正四面體邊長(zhǎng)的逐漸增加警检,一共需要多少個(gè)小球構(gòu)成呢孙援?這個(gè)也是巴貝奇希望用差分機(jī)算出來的。
巴貝奇做差分機(jī)思考的不同點(diǎn)在于扇雕,他在動(dòng)手前就開始評(píng)估由機(jī)械部件完成計(jì)算動(dòng)作所需的時(shí)間拓售。這種思考,今天學(xué)過《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)》的同學(xué)應(yīng)該很熟悉镶奉,但在1820年實(shí)屬獨(dú)一份础淤。
巴貝奇之所以這樣想,也是有一個(gè)很扎實(shí)的理由哨苛。因?yàn)樗M@東西做出來以后能大賣特賣鸽凶,如果計(jì)算速度還不如找?guī)讉€(gè)人手工算,那肯定是要賠本的移国。
最終估算的結(jié)果是:兩個(gè)長(zhǎng)度是50位的數(shù)字相加吱瘩,需要用時(shí)59秒。
這個(gè)時(shí)間確實(shí)不短迹缀,但還有很大的優(yōu)化空間使碾。因?yàn)檫@59秒要分成兩部分,一部分是處理進(jìn)位操作對(duì)應(yīng)的機(jī)械動(dòng)作祝懂,這部分竟然需要用掉50秒的時(shí)間票摇,剩下的所有操作只需要9秒時(shí)間。所以如何優(yōu)化進(jìn)位上的處理砚蓬,就是任務(wù)的關(guān)鍵了矢门。
優(yōu)化了無數(shù)張圖紙后,在1820年他開始動(dòng)手了。最初版本的機(jī)器祟剔,只用了6根輪軸隔躲、幾十個(gè)齒輪、幾十個(gè)彈簧物延。
他拿著這套樣機(jī)到處做演示宣旱,說服了英國財(cái)政大臣。從1823年開始叛薯,財(cái)政部開始每年批一千多英鎊的經(jīng)費(fèi)浑吟,供他研制。前后一共用了20年耗溜,最后這套機(jī)器已經(jīng)變成一個(gè)15噸重组力、25000個(gè)零件的大機(jī)器,以至于他為了向財(cái)政部解釋工作原理抖拴,都需要另外發(fā)明一套符號(hào)語言來說明機(jī)器的研制進(jìn)展燎字。
在這20年間,他也成了英國上流社會(huì)的著名人物阿宅,也贏得了劍橋大學(xué)盧卡斯數(shù)學(xué)教席的職位轩触,達(dá)爾文、法拉第家夺、狄更斯都是家里的惩阎客。
這套設(shè)備也確實(shí)極為精致拉馋,也考慮到今后的量產(chǎn)了榨为,所以部件盡量規(guī)格統(tǒng)一。但實(shí)現(xiàn)穩(wěn)定運(yùn)行的成本實(shí)在太高了煌茴,財(cái)政部在10年間一共支付了17000英鎊的費(fèi)用随闺。可即便這樣蔓腐,機(jī)器離正常高負(fù)荷運(yùn)轉(zhuǎn)還差很多矩乐。
最后,財(cái)政部停止了資助。
巴貝奇的差分機(jī)最終只停留在原型機(jī)階段,不過這么多年持續(xù)研究差分機(jī)也讓他有了很多新思路侥猬。不甘心認(rèn)輸?shù)陌拓惼妫痔岢隽艘鲆慌_(tái)功能更加通用的“分析機(jī)”欧漱。
這個(gè)機(jī)器理論上可以進(jìn)行多種復(fù)雜的計(jì)算,比如像1/(e^x-1)這樣的數(shù)值都可以葬燎。他希望這臺(tái)機(jī)器的輸入是一些打了孔的紙卡片误甚,稱作變量卡缚甩;在機(jī)器中間,加入另外一些打了孔了卡片窑邦,來規(guī)定機(jī)器傳遞變量卡的規(guī)則擅威;最后輸出卡片上打的孔,就是另外一番景象了冈钦。而這所謂的另外一番景象裕寨,就是分析機(jī)的計(jì)算結(jié)果。
整套思路涉及到運(yùn)算派继、中間結(jié)果的存儲(chǔ)、中間結(jié)果的再提取捻艳,涉及到條件語言驾窟、循環(huán)指令等細(xì)節(jié),簡(jiǎn)直和現(xiàn)代計(jì)算機(jī)思想極為接近认轨。
但可惜绅络,這次沒有哪個(gè)人、哪個(gè)機(jī)構(gòu)肯再資助他做分析機(jī)了嘁字。
其實(shí)就算有人資助恩急,就算這次資助金額是上次的十倍百倍,他的想法也注定實(shí)現(xiàn)不了纪蜒。因?yàn)榘拓惼嬲姿季S超前了那個(gè)時(shí)代100年衷恭,讓蒸汽動(dòng)力驅(qū)動(dòng)齒輪和軸完成這些操作是不可能的。
這些功能纯续,起碼要等電路或電子管誕生后才能實(shí)施随珠。而這些電子元器件,是在巴貝奇去世后30年才出現(xiàn)的猬错。
雖然他一輩子也不缺錢窗看,爸爸在去世的時(shí)候留給了他合今天1000多萬美元的資產(chǎn),他隨便給某個(gè)公司設(shè)計(jì)一些設(shè)備就能賺上一大筆錢倦炒;
雖然他也不缺名望显沈,既是盧卡斯教席,又是皇家天文學(xué)會(huì)的會(huì)員逢唤;
雖然他也是兒孫滿堂拉讯;
但1871年他離世的時(shí)候,還是懷著怨恨和失望的——
他一直糾結(jié)于沒能實(shí)現(xiàn)用機(jī)械編碼信息鳖藕、處理信息遂唧。
巴貝奇超越同時(shí)代人最大的地方,就是他察覺到信息的處理是可以不由人干預(yù)的吊奢「桥恚可是當(dāng)年只有蒸汽提供動(dòng)力纹烹,蒸汽驅(qū)動(dòng)的東西實(shí)在太粗糙了,而巴貝奇的遺憾也只能由后人來補(bǔ)上了召边,他們就是后來的圖靈铺呵、香農(nóng)和馮·諾依曼。
下節(jié)隧熙,專門講講圖靈片挂。