計算機是技術嗎?
如果說計算機和由計算機組成的網絡是這個時代的標志,肯定沒人持有異議,除非他不屬于這個時代。然而,在擺弄計算機的蕓蕓眾生中,對計算機有真正了解的又有多少呢?我相信,絕大多數(shù)人都把計算機當作一種技術,可恰恰相反,計算機的本質不是技術,而是概念。造成這種現(xiàn)象的原因有很多,其中很重要的一個就是計算機類書
籍的出版。
兩種超越
近年來,計算機類圖書的出版在國內也算是風頭占盡、風光無限。硬件操作和軟件使用之類的圖書鋪天蓋地、層出不窮,其銷量在當前的圖書市場上也是最為喜人的,這充分反映了大眾對計算機這個學科和產業(yè)的認同與迷戀;同時,這同樣也充分反映了國內出版業(yè)的低水平。面對整個計算機學科,整個國家的出版業(yè)都只是沉湎于操作和使用知識的傳播上,而不思量如何引領讀者理解計算機的真正精髓,悲莫大焉!
正如劉華杰和孔昭君在“計算機文化譯叢”總序中所說的,計算機早已滲透到國民經濟和社會生活的各行各業(yè),對于計算機的理解無疑要超出技術層面,而要達到文化層面。目前,國內屬于計算機文化范疇的圖書除了河北大學出版社出版的“計算機文化譯叢”外,還有中國人民大學出版社出版的“網絡文化叢書”以及中國水利水電出版社出版的“萬水計算機文化叢書”,但影響非常有限,這方面的工作做得還遠遠不夠。
對計算機的理解要超出技術層面,這話說得非常好。但這種“超出”應該是兩方面的。一方面是如上面所說的計算機或網絡文化叢書那樣,從技術層面轉向文化層面,可以稱之為“外超”;另一方面則是“內超”,即對計算機本身的理解也必須超越技術層面,而達到其本質:概念。被稱為“天才小子”的丹尼爾·希利斯的新作《通靈芯片——計算機運作的簡單原理》堪稱后一種超越的典范之作。
計算機的本質:概念
大多數(shù)計算機書籍講的不是計算機的操作,便是計算機的制造技術。希利斯在《通靈芯片》一書中要闡述的則是概念,因為概念才是計算機的根本。計算機是迄今為止最為復雜的人造物,但他認為,從本質上說,它又非常簡單。計算機依賴的是概念,對技術的依賴沒有我們想象的那么大,原理是計算機能夠計算的真諦。當今的計算機應
用電子技術,主要由晶體管和導線組成,但根據(jù)同樣的原理,亦可采用閥門和水管,或棍桿和繩子來實現(xiàn)。希利斯就曾成功地干過類似的事情。他回憶到:“在加爾各答我讀了喬治·布爾的那本書,不久還真用燈泡和開關造了個玩井字游戲的機器。這是我對計算機的初次嘗試。”有趣的是,作為他的朋友和老師的克勞德·香農也曾用燈泡和
開關造過一個玩井字游戲的機器。因此,計算機的本質凌駕于技術之上。
不僅計算機的制造凌駕于技術之上,計算機所處理的也不是技術,而是概念。計算機的真正威力在于它不僅能處理概念的表示形式,而且能處理概念本身,能察知各種理念之間的關系。“更深的藍”戰(zhàn)勝卡斯帕羅夫時所走出的那一步就是一個超乎邏輯的走法,這讓當時在場的人士驚訝不已。因此,計算機執(zhí)行的不只是冷冰冰的邏輯,它是一種具有想象力的機器。計算機時代是個“玩”概念的時代,追本朔源,原來計算機本身“玩”的就是概念。
三大原則
計算機看似復雜,實則簡單。要把握計算機的本質,只需抓住計算機設計的三個基本原則:功能抽象原則、通用計算機原則和與第一個原則相對立的模擬生物進化原則。
功能抽象原則奠定了現(xiàn)有計算機的結構:分層體系。“計算機結構是應用這一原則的范例——有許多層次,一再重復。”計算機之所以容易理解,是因為當你關注分層體系中某一層發(fā)生的情況時,無需考慮較低層次的細節(jié)。正是功能抽象原則使概念獨立于技術。
計算機的結構是一個經典的功能抽象分層體系,而計算理論的核心則是通用計算機。這個概念是計算機科學的先驅、英國數(shù)學家阿蘭·圖靈于1937年提出的。現(xiàn)在人們習慣將“通用機”稱為圖靈機,即一個有限狀態(tài)機加上一條無限長的帶子。有限狀態(tài)機也是極為簡單的,如汽車上的里程表就是一個有限狀態(tài)機。
可別小看了這個簡單的圖靈機,因為任何物理裝置可以進行的計算,只要有足夠的時間和存儲空間,都可由圖靈機來完成。這意味著,模擬人腦的功能是可能的。
然而,一個嚴格依賴分層體系的系統(tǒng)容易發(fā)生災難性故障。
一方面,單獨一個低層部件的故障可能波及整個系統(tǒng),產生災難性的結果,盡管可以采用冗余法來避免,但冗余技術只能避免事先估計到的故障。隨著系統(tǒng)越來越復雜,要做到這一點非常困難。另一方面,功能正常的各部件在相互作用過程中,也會產生意料不到的行為。幾年前,美國東部有幾條長途電話線路,就曾因為運行于不同轉接站上同一軟件的兩個版本之間存在未曾料及的交互作用,而使系統(tǒng)癱瘓,致使線路停止呼叫達數(shù)小時之久。
上述問題就其本身而論,并非機器或軟件本身固有的弱點,而是工程設計方法所帶來的。但是,人腦遠比計算機復雜,為何人腦卻可以容忍糟糕的概念、錯誤的信息,甚至部分功能的缺失,而不會引起整個系統(tǒng)的癱瘓呢?這為計算機的設計指出了另一條途經,即在計算機上模擬生物進化的過程。
模擬進化方法的關鍵是把分層體系設計的復雜度重負轉移到計算機的組合能力上。模擬進化的過程包括創(chuàng)造物種的進化過程和創(chuàng)造個體的成長過程,這兩個過程相互作用、相互促進。進化過程善于創(chuàng)造新奇的結構,但拙于調整已有的缺憾;成長過程恰相反,在自適應過程中不斷彌補不完善進化結構中的缺陷。根據(jù)鮑德溫效應,將這兩個
過程結合起來,進化的速度將加快。因此,思維機器的前景是令人樂觀的。
可以說,正是這三個原則,而不是技術,伴隨著計算機科學的整個歷史,制約了也決定著計算機的未來發(fā)展。理解了這三個基本原則,也就從根本上把握了計算機。
新的入門書
如果你是一個計算機愛好者而沒有聽說過丹尼爾·希利斯的大名,那真是一大遺憾。希利斯受大腦固有的并行計算能力的啟發(fā),永遠地改變了計算機技術,他建造的連接機CM5最多包括16000個處理器;9歲時,他用一個單放機和兩張磁盤做出了他的第一臺“計算機”;1983年,在人工智能的先驅之一馬文·明斯基的建議和鼓勵下,27歲
的希利斯建立了思維機器公司,第二年,著名的物理學家、諾貝爾物理獎獲得者理查德·費曼也加入了該公司。希利斯還打破了被業(yè)界看作顛簸不破的安達爾定律;現(xiàn)在他又有了一個奇怪的想法,要建造一個巨大無比的鐘,朗瑙之鐘,有金字塔那么大。這個鐘1年才走一下,100年才敲一下,過1000年鐘里的布谷鳥才會出來。
希利斯回顧自己的成長歷程,深為自己讀到的第一本關于計算機的書是一本經典之作而慶幸。那本經典之作指的是19世紀的邏輯學家喬治·布爾的《思維法則研究》一書。
20世紀60年代,希利斯家住加爾各答。“我在印度時周圍什么技術也沒有。甚至用英語寫的技術書都很難得到。英國領事館有一個圖書館,圖書館里有一本喬治·布爾的書叫《思維法則研究》,書中他提出了我們現(xiàn)在所說的布爾代數(shù)。我喜歡這本書的書名。這本書對我來說太高深了,但我記得從中學到了與或非等概念。”這樣,希利斯第一次熟悉了數(shù)字計算機的基本理論。該書激起了希利斯的想象:真有思維法則?希利斯從中發(fā)現(xiàn)了簡單邏輯運算的驚人力量和普遍意義。
《思維法則研究》一書讓希利斯從接觸計算機的第一天開始,就緊緊抓住了計算機科學的核心,他日后所取得的巨大成就與此有極大關系。然而我們的大多數(shù)讀者讀到的第一本書、甚至是讀到的所有關于計算機的書,都是關于計算機硬件和軟件操作的書,因而只能在計算機科學的外圍打轉,而沒有深入領會到計算機科學的根本。這或許
是我們有計算機天才,卻產生不了計算機科學大師的原因之一。
曾受益于喬治·布爾的希利斯,秉承著前輩的精神,也為當今的讀者們奉獻了一本更為絕妙的計算機科學的入門書——《通靈芯片》。如今的讀者有福了,因為讀者可以免去讀《思維法則研究》一書的艱辛晦澀,盡情享受《通靈芯片》一書的簡潔明了、通俗易懂,而又不以失去知識上的深度和廣度為代價。該書意在使讀者融會貫通:從簡單的物理過程一直深入到自組織系統(tǒng)的學習和適應功能。
寫出這樣的一本書,并非易事。如希利斯在“致謝”中所說的,要在一本短篇論著中,對計算機的概念作追本朔源的綜述,表面看來似乎是件簡單不過的事情。但很快就發(fā)現(xiàn),面對這么大的一個題目,寫一本短篇著作,遠比一本長篇巨著困難。寫好這樣的一本書,對計算機科學非得有深刻的理解與把握不可。《通靈芯片》一書可謂是神
來之筆,可喜的是,該書的翻譯也很到位。