一杯咖啡的「表觀複雜性」

文 / 一流人      2017-11-17
一杯咖啡的「表觀複雜性」


就我們的調查研究,我們對一杯咖啡所謂的「表觀複雜性」(apparent complexity)特別感興趣。這與電腦科學家所稱的位元串之「演算複雜性」(algorithmic complexity)或「柯爾莫哥洛夫複雜性」(Kolmogorov complexity)相關(任何圖像都能以位元串來呈現,好比資料檔就是)。這個想法是選用某種能輸出這種位元串(好比01001011011101)的電腦語言。位元串的演算複雜性,其實就是運算時輸出該位元串的最短程式之長度。簡單模式具有低複雜度,完全隨機的位元串則有高複雜度—輸出那些位元串的唯一做法,就是直接寫進一個「列印」述句,並把該位元串完整地複製在裡面。

就我們的目的(對奶精與咖啡混合圖像的特性描述),隨機噪音可以算是「單純的」,而非複雜的。所以,依循波茲曼處理熵的做法,我們以粗粒化作用來定義「表觀複雜性」。我們不觀測模擬中所有個別粒子的位置,而是檢視小範圍空間裡的粒子平均數。於是表觀複雜度就是奶精和咖啡之粗粒化分布的演算複雜度。這是將我們「某圖像看來有多複雜」的直覺概念化的好做法。高表觀複雜性就相當於包含許多有趣結構的粗粒化(模糊的)圖像。

不幸的是,一個圖像的表觀複雜度沒辦法直接計算得知。不過有種極好的近似做法:把圖像塞進檔案壓縮演算法即可。每個人的電腦都有能執行這功能的程式,所以我們可以開跑了。

模擬開始時,表觀複雜度很低;完整描述只是「奶精位於頂部,咖啡在底部」。到最後,表觀複雜度又變得很低:我們只需說明,每處定點都有等量的奶精和咖啡。而混合作用進行的期間,就是事情變得有趣的時候。我們發現,複雜度不見得會發展出來—至於會不會,取決於奶精和咖啡如何交互作用。

大體說來,若奶精和咖啡分子只與鄰近其他分子交互作用,你就不會看到複雜性的大幅發展。所有事情只會平滑地調合在一起,而不會形成條條卷鬚的尖突圖案。

若我們引進長程作用—類似攪拌咖啡的湯匙—這時事情就變得有趣了。奶精和咖啡的分界面會呈現碎形模樣,但不是完全混雜在一起。這樣形成的圖像具有高度表觀複雜性;為了準確描述,你必須具體說明奶精/咖啡分界面的繁複外形,這就會需要較大量的資訊。

「碎形」和「複雜」的關係,不只是就裝飾上而言。碎形是不論就任何倍率看來,基本上都完全相同的幾何圖案。就奶精和咖啡而言,我們見到分子組態中出現大致呈碎形的圖案,到最後才終於消失至均衡態勢。這是複雜性的一個標誌特徵:當我們仔細端詳系統,而且一次就把全貌看透,這時就會持續發生有趣的事,而且當中只具有少數會移動的部件。

對於物理學和生物學來說,複雜性往往會以層級式的風格出現:細小片段凝聚成較大單元,接著各單元又凝結成更大單元,以此類推。較小單元保持它們的完整性,同時又共同在整體裡面交互作用。於是從簡單的基礎規則出發,便突現建構出能顯現出複雜整體行為的種種網絡。咖啡杯自動機系統太過簡單,沒辦法忠實模塑出這種歷程,不過碎形造型外觀卻提醒我們,複雜性可以既確鑿又自然。

繼續推展下去,表觀複雜性就會消失。所有奶精和咖啡都會完全混合在一起。只要我們等待夠久,所有隔離系統都會達成平衡,到時就完全不會發生有趣的事了。

(圖說:奶精和咖啡混合在一起的簡單電腦模擬。組態開始時很簡單,隨後複雜度漸增:接著進一步演化,並再次變得簡單,這時黑白完全混合。)

本文節錄自:《詩性的宇宙》一書,蕭恩‧卡羅爾(Sean Carroll)著,蔡承志譯,八旗文化出版。

關鍵字: 科技閱讀

延伸閱讀

專欄介紹
一流人
一流人

悅‧讀小編,介紹新書書摘。

專欄介紹
一流人
悅‧讀小編,介紹新書書摘。


您也可能喜歡這些文章
您也可能喜歡這些文章
置頂