天天看點

《複雜》讀書筆記(part5)--複雜性度量

學習筆記

學習書目:《複雜》- 梅拉妮·米歇爾

複雜性度量

在讨論如何度量複雜性之前,我們先思考一下複雜科學是如何産生的呢?

答案是複雜性科學不止一個,而是有好幾個,每個對複雜性的定義都不一樣。其中一些定義很正式,一 些則不那麼正式。如果想要有統一的複雜性科學,就得弄清楚這些正式或非正式概念之間的關聯。要對過于複雜的複雜性概念進行盡可能地提煉,但是這項工作目前還遠未結束。

隻要了解一點科學史就能明白,核心概念缺乏公認的定義是很普遍的。

科學的進步往往就是通過為尚未完全了解的現象發明新術語實作的:随着科學逐漸成熟,現象逐漸被了解,這些術語也逐漸被提煉清晰。

也許将來我們也會将複雜性分解成幾個基本方面,并最終将這幾個方面結合起來,形成對複雜現象的全面了解。

實體學家勞埃德提出了度量一個事物或過程的複雜性的三個次元:

描述它有多困難?

産生它有多困難?

其組織程度如何?

用大小度量複雜性

複雜性的一個簡單度量就是大小。根據這個度量,如果比較堿基對數量,人類比酵母複雜250倍,如果比較基因數量,人類則隻比酵母複雜4倍。不過單細胞變形蟲的堿基對是人類的225倍,拟南芥的基因與人類的大緻一樣多。 人類顯然要比變形蟲或芥菜複雜鴨,這就表明用基因組的規模來度量複雜性并不合适。

用熵度量複雜性

我們知道,香農熵為資訊源相對于資訊接收者的平均資訊量或驚奇度。

舉個例子:假設消息由符号A、C、G和T組成。如果序列高度有序,很容易描述,例如“A A A A A A A……A”, 則熵為零。完全随機的序列則有最大可能熵。

這麼聽起來好像有點問題耶!

我們可以随機排列A、C、G和T來人工構造一個基因組,這個随機的基因組幾乎不可能有用,卻會被認為比人類基因組更複雜。很顯然,正是因為基因組不是随機的,而是不斷進化進而讓基因更有利于我們的生存。

簡單的香農熵不足以抓住我們對複雜性的直覺認識。

用算法資訊量度量複雜性

人們提出了許多改進方法來用熵度量複雜性。其中最著名的方法法由柯爾莫哥洛夫、查汀、和索羅蒙洛夫分别獨立提出,他們将事物的複雜性定義為能夠産生對事物完整描述的最短計算機程式的長度。這被稱為事物的算法資訊量。

例如,考慮一個很短的(人工模拟的)DNA序列(注意!這個例子我們後面會經常用到):

A C A C A C A C A C A C A C A C A C A C(序列1)

一個很短的計算機程式,​

​列印AC10次​

​,就能輸出這個序列。是以這個序列的算法複雜度很低。

下面是我用僞随機數發生器生成的一個序列:

A T C T G T C A A G A C G G A A C A T(序列2)

如果我的随機數發生器沒有問題,這個序列就不會有可識别的特征,是以程式要長一些,比如 ​

​列印字元串A T C T G T C A A A A C G G A A C A T​

​。顯然序列1可以壓縮,而序列2則不能,因而包含更多算法資訊量。

與熵類似,随機對象的算法資訊量也會比我們直覺上認為複雜的事物的資訊量更大。(這句話有點拗口,請仔細研讀)

實體學家蓋爾曼提出了一種稱為有效複雜性的相關度量,更符合我們對複雜性的直覺認識。

蓋爾曼認為任何事物都是規則性和随機性的組合。例如,序列1就有非常簡單的規則性:重複的AC模式。序列2則沒有規則性,因為它是随機産生的。

有效複雜性定義為包含在描述中的資訊量或規則集合的算法資訊量,兩者等價。

序列1具有規則性,即AC不斷重複。描述這個規則性所需的資訊量就是它的算法資訊量:程式​

​列印AC數次​

​的長度.是以,事物的結構可預測性越大,有效複雜性就越低。

序列2處于另一個極端,因為是随機的,是以沒有規則性。雖然序列本身的算法資訊量是最大的,然而序列規則性的算法資訊量(其有效複雜性)卻為零。

有效複雜性度量方法就如我們希望的那樣,最有序和最随機的事物有效複雜性很低。

那麼現在,有一個問題。我們該如何給出這些規則?如果不同觀察者對于系統的規則不能達成一緻又辦?

對于一個事物的各種不同規則集,我們可以利用奧卡姆剃刀來決定哪個規則集是最好的。最好的規則集是能描述事物的最小規則集,同時還能将事物的随機成分最小化。

用邏輯深度度量複雜性

為了更加接近我們對複雜性的直覺,數學家班尼特在20世紀80年代初提出了邏輯深度的概念。一個事物的邏輯深度是對構造這個事物的困難程度的度量。

用班尼特的話來說:有邏輯深度的事物 ……從根本上必須是長時間計算或漫長動力過程的産物,否則就不可能産生。

或像勞埃德所說的那樣:用最合理的方法生成某個事物時需要處理的資訊量, 等同于這個事物的複雜性,這是一個很吸引人的想法。

用熱力學深度度量複雜性

勞埃德和裴傑斯提出了一種新的複雜性度量 ,即熱力學深度。

熱力學深度首先是确定産生出這個事物最科學合理的确定事件序列, 然後測量實體構造過程所需的熱力源和資訊源的總量。

同邏輯深度一樣,熱力學深度也隻是在理論上有意義,要真的用來度量複雜性也存在一些問題。

統計複雜性

實體學家克魯奇菲爾德和卡爾·楊定義了一個稱為統計複雜性的量,度量用來預測系統将來的統計行為所需的系統過去行為的最小資訊量

例如,序列1的資訊源模型可以很簡單:重​

​複AC​

​, 是以其統計複雜性很低。

然而,與熵或算法資訊量不同,對于産生序列2的資訊源也可以有很簡單的模型:​

​随機選擇A、C、G或T​

​,這是因為統計複雜性模型允許包含随機選擇。

是以,與有效複雜性一樣,對于高度有序和随機的系統,統計複雜性的值都很低,介于兩者之間的系統 則具有高複雜性.

用層次性度量複雜性

1962年,西蒙發表了一篇著名的文章《複雜性的結構》,文中西蒙提出一個系統的複雜性可以用層次度來刻畫:複雜系統由子系統組成,子系統下面又有子系統,不斷往下。

西蒙認為,複雜系統最重要的共性就是層次性和不可分解性。西蒙列舉了一系列層次結構的複雜系統。例如,身體由器官組成,器官又是由細胞組成,細胞中又含有細胞子系統。

不可分解性指的是,在層次性複雜系統中,子系統内部的緊密互相作用比子系統之間要多得多。例如, 細胞内部的新陳代謝網絡就比細胞之間的作用要複雜得多。

總結

繼續閱讀