2010/06/12

計算與人

(JK 注:十一月的作文。內容寫得很密,應該是不想手寫太多字的關係。(作文是要手寫的。)最後一段論證略嫌粗糙,看看就好。要做實質的批判真的很難哪。)

翻開計算機概論課本,作者首先會向你敘述計算機器發展的歷史,其中一定會詳加描述二戰後電腦如爆炸般的發展。幾十年來,電腦的運算速度和儲存容量以指數速率成長,同時體積和成本以指數速率降低,迅速滲透到人們生活的各個層面。稱電腦為史上最成功的發明,相信並不為過。

人類發明的工具可視為身體功能的延伸或補強,而電腦如其中文譯名所暗示,是人類心智投映於外在世界的產物。笛卡爾的哲學主張身心二分而且強調後者,若他生於現代,在各項工具當中他想必要賦予電腦某種特殊地位。工業革命以機械取代部份人力,但精巧複雜的操作仍只有人能夠勝任。直到高速又輕便的電腦發明,人類才得以將這些精密操作所需的心智活動交由工具執行。我們終於將自己最獨特的行為 ── 思考 ── 也化為工具,雖然目前只實現了一小部份。

現代電腦最重要的設計原則是打造一部可運行任意程式的通用機器。描述算則的程式由抽象符號構成,硬體的角色只是程式在現實世界的載具。程式員將人類面對問題時運用的邏輯推理過程鉅細靡遺地編寫為抽象符號,電腦依其設計機械地詮釋這些符號,從而重現編寫於程式中的邏輯。換句話說,程式是人類思考活動中可清晰描述部份的模型,代替程式員接收資料、加以計算再適當回應。

然而程式本身也是一種資料,因此程式不僅能藉由機器詮釋而表現計算功能,也可以是分析研究或程式處理的對象。「程式處理程式」在理論和應用上都是重要想法,特別是從「程式處理自己」這個令人困惑的概念可導出相當深刻的結果,例如不可能寫出程式正確判斷任意程式的執行會不會終止。之所以有這樣的特性,是因為程式不僅可視為一連串的靜態符號,也可詮釋為執行時的動態行為。當我們說「程式處理自己」,其實是指「運行中的程式」處理「描述該程式的符號」。位於「符號層」的程式經機器詮釋躍升至「執行層」,再反過來處理「符號層」的自己。同樣的雙層架構也發生在我們研究程式的時候:程式反映我們的邏輯思考,因此當我們思考程式的性質,我們也正透過前述的雙層架構省視我們自己!這使計算學的研究有了特殊意義 ── 了解計算很可能讓我們更了解自己。

另一條人類企圖了解自我所闢的途徑是認知神經科學。雙層架構也在這裡出現:神經科學家認為意識由大腦產生,希望藉著了解腦的構造而解開意識之謎。一般對計算學與神經科學的比較倒不是從「了解自我」或「雙層架構」這類共通點出發,而是比較大腦和電腦的構造,但這樣的比較其實不太有意義。腦神經元之間的連接不時發生重整,不像電腦內部電路固定不變,神經元之間的複雜溝通機制也遠非電腦硬體與軟體工程目前遵循的模組化原則所能解釋,有些人因此認為大腦的運算能力比電腦強得多。然而如先前所述,電腦的計算內容全由程式提供,比較正確(但仍相當粗糙)的看法是視大腦為專門執行特定程式的特製硬體,因此比較神經科學和計算學時,該把大腦功能放在程式的層級上,而非類比於單純詮釋程式的電腦硬體。現在我們無論對大腦或程式都了解甚少,或許要等到這兩個學門更加成熟,才能對彼此有實質的幫助。

神經科學和計算學倒有個決定性的差異:前者的研究對象是自然世界的物件,因此方法是自然科學的觀察歸納假說實驗;後者的研究對象則是數學物件,因此方法是數學的演繹證明。數學家一開始面對數學物件的做法也是觀察歸納得到假說,但最後的證明階段會使得假說被確切證實或否決,相較之下實驗就沒有這麼強的證成力。雖說數學理論也會經歷一次次的精鍊,但那是確定知識的逐漸累積,不像自然科學的信念永遠能夠加以質疑乃至推翻,發展上穩定許多。神經科學家或許會質疑:人的邏輯發源自大腦活動,而且人性顯然不限於邏輯,因此可預見認知神經科學對於了解人性的貢獻會比計算學更大。但計算學家會反駁:神經科學若想建構其理論,那理論必將奠基於邏輯,因此理路上對邏輯的直接了解先於對大腦的研究。換個角度看,計算學以純粹邏輯研究邏輯的直接表述型式,而神經科學不僅必須仰賴較不穩定的歸納法,還得處理從基礎物理化學到神經傳導機制再到腦區的個別性質與合作效果最後才到邏輯思考如何突現的問題,前者至少在表面上簡捷許多。計算學於是提供一條獨特進路,讓人類以數學方法探討自我的性質。在電腦應用蓬勃發展的現況下,這條進路獲得較少關注,但可預期的是這個學門有潛力為最深刻的一個哲學問題「我是誰」提供一個可能的答案。

--
此文的上一篇是笛卡爾,所以承接那篇的觀點,把邏輯視為人最重要的 defining property。

Labels: ,

Anonymous 白夜6/13/2010 6:39 am 說:

這篇文章可以借我轉到我的板上嗎?

 
Blogger Josh Ko6/14/2010 3:02 am 說:

Sure!

 

<< 回到主頁