華文網

系統科學丨John Holland:複雜自我調整系統研究

《系統科學進展》作為《系統科學叢書》的首部著作,收集了包括錢學森、關肇直、周光召、John Holland等著名科學家的重要文獻。

今天為大家選取的是John Holland的文章:複雜自我調整系統研究,內容有刪節。本文(英文)發表於Journal of Systems Science and Complexity2006年第 19卷第 1期。譯者是中國科學院數學與系統科學研究院的韓靖副研究員。

John Holland(1929.2.2—2015.8.9),生前為密西根大學的心理學系教授、電機工程和電腦科學系教授。

他一生從事適應性研究,早年提出了著名的遺傳演算法,被譽為“遺傳演算法之父”,後來提出“複雜自我調整系統”理論,產生廣泛影響。他是美國聖菲研究所的創始人之一, 複雜性科學領域的先驅者和傑出代表人物之一。曾獲得美國“麥克亞瑟天才獎”、IEEE Nerual Network Society頒發的先鋒獎、進化程式學會頒發的終身成就獎、電腦科學世界大會頒發的終身成就獎等。
他出版了六本專著,其中三本《自然與人工系統的適應性》《隱次序》和《湧現》已經翻譯成中文版出版。生前曾不下七次訪問中國。

當代很多困難問題的核心就是複雜自我調整系統(CAS)問題。CAS指包含大量被稱為自主體 (agent)的組成單元所構成的系統,它們之間相互作用、適應和學習。下面的一些問題展示了CAS的普遍程度:

動態演化經濟系統內的創新激勵;

對人類可持續發展的支持;

預測全球貿易中的變化;

對市場的深入理解;

為生態系統提供保護;

控制互聯網(例如控制病毒和垃圾郵件);

增強免疫系統。

儘管在細節上有本質不同,各種 CAS都具有如下四大共同特徵:

(1)並行性。 CAS包含大量的通過發送和接收信號相互作用的自主體。進一步,自主體同時互動,產生了大量的併發信號。

例如生物細胞使用蛋白質作為信號。這些蛋白質操控反射級聯和回路,為其它級聯和回路提供正回饋和負反饋。

這些蛋白質的相互作用必須緊密協調以使得細胞能持續正常工作。

(2)基於條件的行動。CAS中自主體的行動通常取決於它們收到的信號。這就是說,自主體有一個 IF/THEN結構: IF [信號向量 x出現] THEN [執行行動y]。這個行動本身可能是一個有可能導致形成非常複雜回饋的信號,或者是自主體在環境中的一個行動。

這個信號—處理規則組成的連鎖序列成為可以並行運行的程式,

具有靈活性和廣度。

(3)模組性。在一個自主體中,一組規則通常組合在一起行動形成“副程式”。例如,自主體通過執行一系列的規則能夠對目前的情形作出反應。這些“副程式”形成了積木模組,它們組合起來能夠應對新情況,而不是分別用不同的規則來應對所有不同的情況。因為潛在有用的積木會經常被測試,所以對更大範圍的情形,他們的有效性是會被快速證實或者排除的。

例如在生物細胞內,三羧酸(Krebs)迴圈是由 8個相互作用的蛋白質形成的一個反應環。這個三羧酸迴圈是所有氧生物體(從細胞到大象)的一個基本組成部分。

(4)適應和演化。CAS裡的自主體會隨著時間而改變。這個改變通常就是適應,從而改進性能,而不是隨機的變化。適應性要求解決兩個問題:信用分配和規則發現。

信用分配問題的產生是由於有關性能的公開信息(報酬,回報等類似概念)通常是非常規的和局部的。這就是說,一個自主體的性能是時空上錯綜交雜的相互作用的結果。能因資訊可以明確地指出哪個“狀態配置”能取得最終的性能改善的情況是少見的。

策略類博弈,例如圍棋或者象棋,提供了一個有用的隱喻。在一長串列動後,博弈者會獲知自己是“贏"還是“輸",或者是輸贏的大小。但是他在整個博弈行動序列中很難得知哪個“狀態配置"的行動是對結局至關重要的。那麼,問題來了:如何判斷哪些狀態走步會對將來的博弈有借鑒作用呢?類似的,對於一個生物細胞來說,繁衍作為一種“回報",是通過成百上千的蛋白質日日夜夜信號傳遞相互作用的結果。

規則發現這個問題產生於一些自主體的規則是明顯無效或有害的情況下。此時用隨機生成的新規則來代替這些無效的規則是行不通的,這類似於在電腦程式中隨機插入的一些程式語句。而我們的目的是產生基於自主體經驗的合理的新規則。

在解決規則發現這個問題中,還有一個有助於降低問題難度的特性。儘管 CAS具有永恆的新奇性,它也有類似於棋類遊戲中的那些不斷重複的子模式。在國際象棋中,這些子模式有“擊雙"、“牽制”、“開局”等。在 CAS中這些子模式構成積木可以被重複搭建利用。換句話說,產生合理規則的關鍵是在已經成功使用的好規則中發現積木模組。這是一個重要的問題,將在文章後面部分討論。

1

什麼是研究CAS的技術

研究 CAS的第一步,是挖掘幾個相關的常用研究方法的共性:

第一行是系統狀態的形式化刻畫,第二行是系統中每種行動的代價費用,第三行是對預先設定的目標給出數值,而最後一行是引導系統達到目標的技術手段。

這些相似性立刻展示了運用學科交叉的方法來研究 CAS的價值。每個形式化系統概念都是多年深入研究的結果,並且各項都具備長處和短處。比較這些不同形式系統的相關部分,我們可以找到與 CAS研究相關的部分,從而能從對系統的研究歷史中獲得經驗,避免重蹈覆轍。

所有這些形式化刻畫的共同特點是對微分方程的依賴,特別是偏微分方程。然而,偏微分方程對於 CAS的研究具有局限性。自主體的條件性( IF/THEN)行為意味著一個自主體的行為並不能用偏微分方程的簡單線性近似來刻畫 ,而這種線性化近似是偏微分方程的強有力方法。用偏微分方程去刻畫 IF/THEN行為就像是試圖用偏微分方程來刻畫電腦程式。

因為自主體的規則是不斷變化的,這就導致了研究困難的加劇。自主體很少達到均衡態,因為基於條件的規則組合、常規創新和永恆的新奇性會破壞吸引子的形成。最優的和穩定的狀態最多是在一個特定情景下短暫存在。另外,自主體能像天氣預報中的常規更新那樣持續地修改和更新它們的資訊,因此混沌效應只會偶爾影響系統。

簡單地說,偏微分方程這個最強大的理論工具只和 CAS的一小部分內容相關。類似的,標準的統計分析例如回歸和貝葉斯網路也是這個情況。傳統的還原論方法 (研究每部分,然後把每部分的行為加起來還原整個系統的行為)並不能有效地解決問題。我們必須要研究每部分之間的相互作用。

基於這種考慮,我們轉而應用其它的技術來為 CAS建模:探索性的電腦模型。探索性的電腦模型和傳統的物理思想實驗有很多共性,其中之一是它們都要選擇一些有趣的機制,仔細配置運行條件,然後探索由這些機制相互作用所產生的結果。這些配置通常不能在實驗室實現,只能在頭腦中實現。

可程式設計電腦極大地提高了這些思想實驗的實現可能性。使用一台電腦,這些探索模型就可以被嚴格描述,並可以不受思考偏見影響而運行。值得指出的是,在過去,可執行電腦模型的定義和執行甚至比數學證明更嚴格。在數學證明中,我們用約定的簡化運算式和快捷方式,從而不需要把每步推理都寫出來。否則的話,即使是最簡單的證明都會變得無法忍受的長。然而,電腦程式中的每一步必須被明確地指定,否則程式不能如願運行。當然,可執行電腦模型通常會定義一些特殊的情形,這樣它可以在數學證明和實驗室實驗中走中間路線。

作為思想實驗,探索性的電腦可執行模型定義了可能性,而不是現實。它們説明我們建立對這些定義在程式中的機制及其相互作用的直覺。這是研究 CAS的至關重要的一點,因為基於條件的相互作用是 CAS中非常重要的部分。即使簡單的機制和簡單的相互作用也會產生複雜行為。讓我們再次考慮國際象棋和圍棋:遊戲規則定義了對應的機制,即使規則的數量少於一打(12個),也能產生一個具有永恆新奇性的系統。儘管已經探索了幾百年了,我們仍然在這些博弈遊戲中不斷地發現新模式和策略。對一個 CAS來說,定義一個自主體行為的規則與博弈中的規則無異。

2

自主體定義

為了形式化地研究 CAS,我們必須提供一個精確定義自主體及其相互作用的方式。在這個模型中,每個自主體有一組條件性( IF/THEN)的信號——傳輸規則。其中的 IF部分是定義規則中尋求的某種信號,如果這些信號出現了, THEN部分定義的信號就被傳輸出去。

更具體一點, IF部分由一組條件組成,每個條件是定義了一類信號。如果條件中任何一個被定義的信號出現,這個條件就被滿足。如果一個規則中的所有的條件都被滿足,那麼這個規則就被滿足。因為有可能很多規則被同時滿足,所以它們必須競爭以使得自己的 THEN部分定義的信號能被發送出去。更進一步,不只一個規則會贏得這個競賽,所以有多個規則會同時發送信號。系統內部具有衝突的規則並不是一種危害,因為額外的被激發的規則只是簡單地發送額外的信號。這個“並行性 "是一個重要的特性:一個自主體能通過一組規則的組合來構建自己的行動,而不是對每一個情形都要一個單獨特定的規則來指定行動。這種信號傳輸系統的形式化描述被稱為分類器系統(classier system,簡稱 cfs)。

發出去的信號被存儲在一個信號清單裡。形式上,這個信號清單是自主體的內部狀態。一個自主體的行為策略完全由它的規則集決定,它在任意時刻的行動由它的信號清單裡的信號決定。一個信號儲存在信號清單中的時間是一個時間步。想要這個信號保持在信號清單裡,必須由勝出的分類器不斷地發送這個信號。也就是說,系統要像電視機圖像一樣,需要在每個時間步不斷地刷新信號。

雖然在信號清單內的大部分信號是在內部產生的,但是仍有一些信號是通過自主體的感知器從環境中採集而來的。有些信號清單中的信號會激發效應器產生行動。因此,自主體內部的策略系統和自主體與外界自主體的交互,都是通過信號這個仲介。一個特殊的基於分類器系統的自主體,有五個主要要素:

(1)一個關於分類器的列表。

這個列表會隨著自主體對環境的適應而通過不同的途徑進行更新。

(2)一個關於信號的清單。

這個清單在每個時間步都會根據競賽中勝出的分類器輸出而進行更新。

(3)一組感知器。

感知器把從環境收集到的資訊編碼成信號。

(4)一組效用器。

效用器有使用條件,像分類器一樣,當信號滿足條件才會被激發。當它的行動被激發,自主體就會行動從而改變環境。

(5)一組倉庫。

倉庫定義了自主體的“需求"(相當於食物、居所等等)。當某些效用器在合適環境中被激發而行動,會滿足和填充某些倉庫。在一些典型的模型中,倉庫的庫存會以恒定速率被消耗。當一個倉庫接近空,一個“低庫存信號"就會持續出現在信號清單上。自主體填充倉庫的效率可以看作性能的衡量指標。由此定義了一個隱式的適應性。

3

分類器的形式描述

一個基於電腦模型的分類器系統需要合適的語言來描述分類器。為了論述簡單起見,儘管分類器系統有很多不同的版本,但我會使用一個特別簡單的版本。在這個版本裡,所有的信號都是長度為 k的字串,每個位置上包含一個字元,字元從{1,0}中取值。例如,如果 k=5,一個可能的信號會是 11010。所有可能的信號組成的集合表示為 A={1,0}k。類似地,所有可能的條件組成的集合 C={1,0,#}k,它是字元集{1,0,#}上所有長度為 k的字串。一個分類器規則的條件部分有一個條件,即 c∈C,或者兩個條件,即 c∈C和 c'∈ C。分類器的 Then部分是一個信號 a∈A。一個規則可以寫成 c/a(一個條件的規則)或者 c, c'/a(兩個條件的規則)。我會著重論述兩個條件的規則。

[討論帶有多個條件並且長度可變的信號不難,但是會使我們的論述複雜化。有意思的是,我們這裡討論的受限系統仍然是具有計算完備性的。]

如果下列條件成立,則條件 c∈C被信號 m∈M滿足:

(1)在 c的每個具有 1的位置,信號 m在該位置也是 1;

(2)在 c的每個具有 0的位置,信號 m在該位置也是 0;

(3)在 c中具有 #的位置,對信號 m該位置上的字元沒有要求(這就是說,這個對應 #字元的位置具體是任意字元都是“無所謂"的)。

例如,當 k=5,信號 10011滿足條件 1####和 10#11,但是它不滿足條件 0####或者 10111。

3.1 規則強度(信用分配)

每個分類器規則都有一個強度值來表示這個規則過去在整個分類器系統(CFS)中的貢獻大小。

分類器中的強度值更新有兩種途徑。當一個效用器被激發執行從而填充倉庫的需求時,發送信號激發這個效用器的分類器的強度值都會增加。所有強度值的改變都是通過在整個分類器系統——這個被認為是某種意義上的市場裡競爭的結果。每個分類器被看作是這個市場裡的一個仲介(經紀人)。在任意給定的時間,一個分類器的“供給者"是那些發送滿足這個分類器條件的信號的其它分類器。當一個分類器贏得競爭時,它就是那些發送滿足它條件的信號的分類器的“消費者"。

更細一步,一個分類器碰到滿足自己條件的資訊時,它會根據自己的強度來競價,把自己的強度當作手裡的現金。最高的投標者會贏得這個競賽,並必須以標價“付費"給它的供給者。接著,這些贏家可以根據自己的分類器把輸出信號放在信號清單上。為了讓自己的強度增加,它必須找到買家以高價購買它輸出的信號,從而獲得更大的回報來填補之前的支付。總的來說,這些規則必須“賺錢"。這個過程被稱為“傳遞水桶演算法 "。這個演算法的巨大優勢是,這些規則不用回溯 ,因為這些交易都是局部的。

3.2 規則發現

在這些模型裡,規則被當作自主體對環境的初步假設,包括在環境中對其它自主體的假設。作為一個假設,一個規則會被後續事件的結局而逐步肯定,或者被逐步否定。這就是說,被確定的規則會更有能力和其它規則競爭,而被否定的規則會逐步被減弱。

規則發現的目標是產生新的假設(規則)去替換那些被否定的規則。這些新規則必須是基於前面經驗的合理假設。在這一過程中,用隨機的方式去產生新規則是瘋狂的、難以置信的做法。它的成功率和在電腦程式中插入隨機新指令的做法差不多。

一個產生貌似合理的新規則的直接方法是使用遺傳演算法。遺傳演算法把強度大的規則當作父母,通過交叉產生後代。這些後代規則組合了父母輩的優點,就像人工培育優良馬種和優良玉米品種那樣。

3.3 總結

這個分類器系統的基本運行週期如下:

(1)所有從環境發出的信號經過自主體的感知器進入並被加入到該自主體的信號清單;

(2)所有的規則會檢查資訊清單上的所有信號,看看哪個規則能夠被滿足;

(3)資訊清單中的所有信號都被刪除;

(4)條件被滿足的規則根據自己的強度競價,參與競爭 ,勝出的規則發送(THEN部分定義的)資訊到資訊清單上 ;

(5)用傳遞水桶演算法來調整勝出規則的強度 ;

(6)使用遺傳演算法來生成新規則替換強度弱的規則 ;

(7)更新環境,包括被信號激發的效用器對環境產生的影響變化。

(8)回到步驟 (1)。

模組化(即一組子規則)可以通過標籤來實現。標籤是信號中的一部分,一組相關規則的滿足條件中都有相同的標籤。當一組擁有公共標籤的規則協同工作時就會產生模組性效果。從這個角度來說,標籤就像網際網路上的資訊標頭(header)。因為規則會被遺傳演算法改造,標籤使得模組能在系統演化適應過程中出現。這就是說,會生成一些具有格式 IF(帶有合適標籤的信號出現) THEN(發送具有那個標籤的資訊)的規則。在生物回路裡,標籤就像主題(motif),用來標記和調整各個模組。通過增加或者減少一個模組裡的分類器規則的條件字串裡的 #符號來提高或者降低啟動這個模組的條件的精確度。

這類基於規則和信號處理的系統已經在不同的背景中得到檢驗。

4

挑 戰

看起來儘管我們沒有“複雜性"、“湧現”等概念的精確定義,但仍然可以快速推動複雜系統的研究。這就像雖然沒有“生命",“物種”和很多生物學關鍵概念的精確定義,生物科學卻能迅猛地發展。然而,正如生物學那樣,我們確實需要嚴格的模型讓我們可以探索 CAS的獨特性質。

下面列出的一些特性提供了理解和控制 CAS的新機遇:

(1)所有被仔細研究過的 CAS都展現出杠杆點——在這個點上的一個簡單干預就會引起系統持續的、直接的效果。例如疫苗引起免疫系統持續的、按照我們預期的改變,加入一些摻雜物就可以導致高溫超導特性的出現。目前沒有理論能告訴我們 CAS的杠杆點在哪裡以及怎麼去尋找這些點。

(2)所有的 CAS都有帶著相關信號的邊界層級組織,且邊界裡包含邊界。沒有邊界就沒有個體的歷史,沒有個體的歷史,就不能根據適應性來選擇。因此,達爾文的自然選擇是基於邊界的產生及其發展的。但是,目前沒有理論告訴我們什麼機制足以使得一個初始同質的系統產生邊界。

(3)所有的 CAS看起來都具有開放式 (open-ended)演化的風格,即初始很簡單的系統 ,其相互作用和信號傳輸的多樣性會在演化中不斷增加。雖然現在已經有了遺傳演算法和其它人工演化技術,但是目前還沒有任何電腦模型能夠展現開放式演化。

還有一些合理的假設是根據下面的觀察而來的:

(1)由回饋、資源回收和邊界導致的資源局部集中,提供了形成新自主體的機會。

(2)自主體形成的過程導致了共同演化和自主體多樣性的增加,在這個過程中,大量資源會逐步被自主體佔據。

(3)在一些“靜止"的條件下,會出現自主體的分化增多的現象。

這些無處不在的性質和假設,給我們提供了一些探索性的電腦模型:

(1)種子機器:構建一個能夠仿照從簡單單細胞發育到形成多細胞器官的模型。這類模型可能是馮..諾依曼劃時代的自繁衍模型的一個自然拓展。

(2)演化的相互作用網路:構造一個從一組基於標記(活性位元點)的基本反應式開始的人工化學系統。目的是觀察帶有標記的邊界和與這些邊界相互作用的帶有標記的信號所組成的網路逐步形成的過程。這類模型如果成功便能提供更好的途徑來刻畫具有回饋、共同演化和可塑表現型的生態網路。

(3)語言獲得和演化模型:構造情景化的自主體模型,自主體在環境中的生存有賴於其與其它自主體的相互作用。目的是觀察從前語言 (pre-linguistic)認知能力湧現出結構化的、基於語法的語言的條件(如果這個條件存在的話)。

最後,在一個元層次觀察 CAS創新的不斷產生(例如演化的生態系統)會告訴我們應該怎樣改變我們通常構思研究的方式:

(1)勇於冒險。在經費資助的研究中允許高的失敗率。因為未來成功及其副產品的指數增長,從“全壘打 "得到的回報會大大地超過之前因為失敗所遭受的損失。

(2)多樣性和並行性。探索一個問題的時候同時從不同的路徑出發。

(3)信譽分配。對階段性工作設定回報機制。在科學研究或者做生意中,最困難的行動是開始階段的、有時候代價很高的、但是最終被證明是個好決策的行動。例如在國際象棋中,通常早期犧牲一個棋子能造出後面的一步好棋。對這個問題的研究實物期權理論比標準的決策理論更好。

長期來說,我們能期待什麼結果呢?

(1)針對組織機構的“飛行模擬器 "。飛行模擬器是由專家測試的,而不是程式師。這類模型通過提供類似電視遊戲的介面,使得飛行專家可以像操控真實飛機那樣操控這個模型。專家驗證這個模型,給程式設計者提出改進意見。

(2)能夠發現 CAS杠杆點的相關理論。這樣的理論應該可以導致各方面的重大改進,包括從藥物設計到關懷幫助窮人等問題。

(3)能賦予探索性研究“底線 "價值的新的評價方法。這裡的關鍵是改變那些在徵稅和淨收益估算中使用的“標準 "核算方法。目前唯一的考慮未來效益的重要核算技術就是備抵折舊。對 CAS的更清晰的認識使得我們能把這類備抵折舊方法用於貼現可以探索性研究的評價中。

CAS的研究是困難的,同時又激動人心。困難越大,將來的回報很可能也越大。

下期文章預告

許國志:諸侯分治,統一江山

本文摘編自郭雷主編,張紀峰、楊曉光副主編《系統科學進展》。

系統科學進展

郭雷 主編 張紀峰 楊曉光 副主編

北京:科學出版社,2017.04

ISBN 978-7-03-051914-6

長按二維碼購買本書

《系統科學進展》是在中國科學院系統科學研究所每年舉辦的一系列系統科學學術講座基礎上遴選的精品報告擴充而成的系列叢書。作為這套叢書的首部著作,《系統科學進展》收集了包括錢學森、關肇直、周光召、John Holland 等著名科學家的重要文獻。閱讀《系統科學進展》,有助於讀者學習系統科學的源頭思想,理解系統科學的核心內涵,把握系統科學的發展方向,提升系統思維素養。這是一本值得收藏的系統科學經典之作。

對本書有任何建議或投稿,歡迎和責編交流:

王麗平 郵箱:13161285177@163.com

一起閱讀科學!

專業品質 學術價值

原創好讀 科學品味

例如在生物細胞內,三羧酸(Krebs)迴圈是由 8個相互作用的蛋白質形成的一個反應環。這個三羧酸迴圈是所有氧生物體(從細胞到大象)的一個基本組成部分。

(4)適應和演化。CAS裡的自主體會隨著時間而改變。這個改變通常就是適應,從而改進性能,而不是隨機的變化。適應性要求解決兩個問題:信用分配和規則發現。

信用分配問題的產生是由於有關性能的公開信息(報酬,回報等類似概念)通常是非常規的和局部的。這就是說,一個自主體的性能是時空上錯綜交雜的相互作用的結果。能因資訊可以明確地指出哪個“狀態配置”能取得最終的性能改善的情況是少見的。

策略類博弈,例如圍棋或者象棋,提供了一個有用的隱喻。在一長串列動後,博弈者會獲知自己是“贏"還是“輸",或者是輸贏的大小。但是他在整個博弈行動序列中很難得知哪個“狀態配置"的行動是對結局至關重要的。那麼,問題來了:如何判斷哪些狀態走步會對將來的博弈有借鑒作用呢?類似的,對於一個生物細胞來說,繁衍作為一種“回報",是通過成百上千的蛋白質日日夜夜信號傳遞相互作用的結果。

規則發現這個問題產生於一些自主體的規則是明顯無效或有害的情況下。此時用隨機生成的新規則來代替這些無效的規則是行不通的,這類似於在電腦程式中隨機插入的一些程式語句。而我們的目的是產生基於自主體經驗的合理的新規則。

在解決規則發現這個問題中,還有一個有助於降低問題難度的特性。儘管 CAS具有永恆的新奇性,它也有類似於棋類遊戲中的那些不斷重複的子模式。在國際象棋中,這些子模式有“擊雙"、“牽制”、“開局”等。在 CAS中這些子模式構成積木可以被重複搭建利用。換句話說,產生合理規則的關鍵是在已經成功使用的好規則中發現積木模組。這是一個重要的問題,將在文章後面部分討論。

1

什麼是研究CAS的技術

研究 CAS的第一步,是挖掘幾個相關的常用研究方法的共性:

第一行是系統狀態的形式化刻畫,第二行是系統中每種行動的代價費用,第三行是對預先設定的目標給出數值,而最後一行是引導系統達到目標的技術手段。

這些相似性立刻展示了運用學科交叉的方法來研究 CAS的價值。每個形式化系統概念都是多年深入研究的結果,並且各項都具備長處和短處。比較這些不同形式系統的相關部分,我們可以找到與 CAS研究相關的部分,從而能從對系統的研究歷史中獲得經驗,避免重蹈覆轍。

所有這些形式化刻畫的共同特點是對微分方程的依賴,特別是偏微分方程。然而,偏微分方程對於 CAS的研究具有局限性。自主體的條件性( IF/THEN)行為意味著一個自主體的行為並不能用偏微分方程的簡單線性近似來刻畫 ,而這種線性化近似是偏微分方程的強有力方法。用偏微分方程去刻畫 IF/THEN行為就像是試圖用偏微分方程來刻畫電腦程式。

因為自主體的規則是不斷變化的,這就導致了研究困難的加劇。自主體很少達到均衡態,因為基於條件的規則組合、常規創新和永恆的新奇性會破壞吸引子的形成。最優的和穩定的狀態最多是在一個特定情景下短暫存在。另外,自主體能像天氣預報中的常規更新那樣持續地修改和更新它們的資訊,因此混沌效應只會偶爾影響系統。

簡單地說,偏微分方程這個最強大的理論工具只和 CAS的一小部分內容相關。類似的,標準的統計分析例如回歸和貝葉斯網路也是這個情況。傳統的還原論方法 (研究每部分,然後把每部分的行為加起來還原整個系統的行為)並不能有效地解決問題。我們必須要研究每部分之間的相互作用。

基於這種考慮,我們轉而應用其它的技術來為 CAS建模:探索性的電腦模型。探索性的電腦模型和傳統的物理思想實驗有很多共性,其中之一是它們都要選擇一些有趣的機制,仔細配置運行條件,然後探索由這些機制相互作用所產生的結果。這些配置通常不能在實驗室實現,只能在頭腦中實現。

可程式設計電腦極大地提高了這些思想實驗的實現可能性。使用一台電腦,這些探索模型就可以被嚴格描述,並可以不受思考偏見影響而運行。值得指出的是,在過去,可執行電腦模型的定義和執行甚至比數學證明更嚴格。在數學證明中,我們用約定的簡化運算式和快捷方式,從而不需要把每步推理都寫出來。否則的話,即使是最簡單的證明都會變得無法忍受的長。然而,電腦程式中的每一步必須被明確地指定,否則程式不能如願運行。當然,可執行電腦模型通常會定義一些特殊的情形,這樣它可以在數學證明和實驗室實驗中走中間路線。

作為思想實驗,探索性的電腦可執行模型定義了可能性,而不是現實。它們説明我們建立對這些定義在程式中的機制及其相互作用的直覺。這是研究 CAS的至關重要的一點,因為基於條件的相互作用是 CAS中非常重要的部分。即使簡單的機制和簡單的相互作用也會產生複雜行為。讓我們再次考慮國際象棋和圍棋:遊戲規則定義了對應的機制,即使規則的數量少於一打(12個),也能產生一個具有永恆新奇性的系統。儘管已經探索了幾百年了,我們仍然在這些博弈遊戲中不斷地發現新模式和策略。對一個 CAS來說,定義一個自主體行為的規則與博弈中的規則無異。

2

自主體定義

為了形式化地研究 CAS,我們必須提供一個精確定義自主體及其相互作用的方式。在這個模型中,每個自主體有一組條件性( IF/THEN)的信號——傳輸規則。其中的 IF部分是定義規則中尋求的某種信號,如果這些信號出現了, THEN部分定義的信號就被傳輸出去。

更具體一點, IF部分由一組條件組成,每個條件是定義了一類信號。如果條件中任何一個被定義的信號出現,這個條件就被滿足。如果一個規則中的所有的條件都被滿足,那麼這個規則就被滿足。因為有可能很多規則被同時滿足,所以它們必須競爭以使得自己的 THEN部分定義的信號能被發送出去。更進一步,不只一個規則會贏得這個競賽,所以有多個規則會同時發送信號。系統內部具有衝突的規則並不是一種危害,因為額外的被激發的規則只是簡單地發送額外的信號。這個“並行性 "是一個重要的特性:一個自主體能通過一組規則的組合來構建自己的行動,而不是對每一個情形都要一個單獨特定的規則來指定行動。這種信號傳輸系統的形式化描述被稱為分類器系統(classier system,簡稱 cfs)。

發出去的信號被存儲在一個信號清單裡。形式上,這個信號清單是自主體的內部狀態。一個自主體的行為策略完全由它的規則集決定,它在任意時刻的行動由它的信號清單裡的信號決定。一個信號儲存在信號清單中的時間是一個時間步。想要這個信號保持在信號清單裡,必須由勝出的分類器不斷地發送這個信號。也就是說,系統要像電視機圖像一樣,需要在每個時間步不斷地刷新信號。

雖然在信號清單內的大部分信號是在內部產生的,但是仍有一些信號是通過自主體的感知器從環境中採集而來的。有些信號清單中的信號會激發效應器產生行動。因此,自主體內部的策略系統和自主體與外界自主體的交互,都是通過信號這個仲介。一個特殊的基於分類器系統的自主體,有五個主要要素:

(1)一個關於分類器的列表。

這個列表會隨著自主體對環境的適應而通過不同的途徑進行更新。

(2)一個關於信號的清單。

這個清單在每個時間步都會根據競賽中勝出的分類器輸出而進行更新。

(3)一組感知器。

感知器把從環境收集到的資訊編碼成信號。

(4)一組效用器。

效用器有使用條件,像分類器一樣,當信號滿足條件才會被激發。當它的行動被激發,自主體就會行動從而改變環境。

(5)一組倉庫。

倉庫定義了自主體的“需求"(相當於食物、居所等等)。當某些效用器在合適環境中被激發而行動,會滿足和填充某些倉庫。在一些典型的模型中,倉庫的庫存會以恒定速率被消耗。當一個倉庫接近空,一個“低庫存信號"就會持續出現在信號清單上。自主體填充倉庫的效率可以看作性能的衡量指標。由此定義了一個隱式的適應性。

3

分類器的形式描述

一個基於電腦模型的分類器系統需要合適的語言來描述分類器。為了論述簡單起見,儘管分類器系統有很多不同的版本,但我會使用一個特別簡單的版本。在這個版本裡,所有的信號都是長度為 k的字串,每個位置上包含一個字元,字元從{1,0}中取值。例如,如果 k=5,一個可能的信號會是 11010。所有可能的信號組成的集合表示為 A={1,0}k。類似地,所有可能的條件組成的集合 C={1,0,#}k,它是字元集{1,0,#}上所有長度為 k的字串。一個分類器規則的條件部分有一個條件,即 c∈C,或者兩個條件,即 c∈C和 c'∈ C。分類器的 Then部分是一個信號 a∈A。一個規則可以寫成 c/a(一個條件的規則)或者 c, c'/a(兩個條件的規則)。我會著重論述兩個條件的規則。

[討論帶有多個條件並且長度可變的信號不難,但是會使我們的論述複雜化。有意思的是,我們這裡討論的受限系統仍然是具有計算完備性的。]

如果下列條件成立,則條件 c∈C被信號 m∈M滿足:

(1)在 c的每個具有 1的位置,信號 m在該位置也是 1;

(2)在 c的每個具有 0的位置,信號 m在該位置也是 0;

(3)在 c中具有 #的位置,對信號 m該位置上的字元沒有要求(這就是說,這個對應 #字元的位置具體是任意字元都是“無所謂"的)。

例如,當 k=5,信號 10011滿足條件 1####和 10#11,但是它不滿足條件 0####或者 10111。

3.1 規則強度(信用分配)

每個分類器規則都有一個強度值來表示這個規則過去在整個分類器系統(CFS)中的貢獻大小。

分類器中的強度值更新有兩種途徑。當一個效用器被激發執行從而填充倉庫的需求時,發送信號激發這個效用器的分類器的強度值都會增加。所有強度值的改變都是通過在整個分類器系統——這個被認為是某種意義上的市場裡競爭的結果。每個分類器被看作是這個市場裡的一個仲介(經紀人)。在任意給定的時間,一個分類器的“供給者"是那些發送滿足這個分類器條件的信號的其它分類器。當一個分類器贏得競爭時,它就是那些發送滿足它條件的信號的分類器的“消費者"。

更細一步,一個分類器碰到滿足自己條件的資訊時,它會根據自己的強度來競價,把自己的強度當作手裡的現金。最高的投標者會贏得這個競賽,並必須以標價“付費"給它的供給者。接著,這些贏家可以根據自己的分類器把輸出信號放在信號清單上。為了讓自己的強度增加,它必須找到買家以高價購買它輸出的信號,從而獲得更大的回報來填補之前的支付。總的來說,這些規則必須“賺錢"。這個過程被稱為“傳遞水桶演算法 "。這個演算法的巨大優勢是,這些規則不用回溯 ,因為這些交易都是局部的。

3.2 規則發現

在這些模型裡,規則被當作自主體對環境的初步假設,包括在環境中對其它自主體的假設。作為一個假設,一個規則會被後續事件的結局而逐步肯定,或者被逐步否定。這就是說,被確定的規則會更有能力和其它規則競爭,而被否定的規則會逐步被減弱。

規則發現的目標是產生新的假設(規則)去替換那些被否定的規則。這些新規則必須是基於前面經驗的合理假設。在這一過程中,用隨機的方式去產生新規則是瘋狂的、難以置信的做法。它的成功率和在電腦程式中插入隨機新指令的做法差不多。

一個產生貌似合理的新規則的直接方法是使用遺傳演算法。遺傳演算法把強度大的規則當作父母,通過交叉產生後代。這些後代規則組合了父母輩的優點,就像人工培育優良馬種和優良玉米品種那樣。

3.3 總結

這個分類器系統的基本運行週期如下:

(1)所有從環境發出的信號經過自主體的感知器進入並被加入到該自主體的信號清單;

(2)所有的規則會檢查資訊清單上的所有信號,看看哪個規則能夠被滿足;

(3)資訊清單中的所有信號都被刪除;

(4)條件被滿足的規則根據自己的強度競價,參與競爭 ,勝出的規則發送(THEN部分定義的)資訊到資訊清單上 ;

(5)用傳遞水桶演算法來調整勝出規則的強度 ;

(6)使用遺傳演算法來生成新規則替換強度弱的規則 ;

(7)更新環境,包括被信號激發的效用器對環境產生的影響變化。

(8)回到步驟 (1)。

模組化(即一組子規則)可以通過標籤來實現。標籤是信號中的一部分,一組相關規則的滿足條件中都有相同的標籤。當一組擁有公共標籤的規則協同工作時就會產生模組性效果。從這個角度來說,標籤就像網際網路上的資訊標頭(header)。因為規則會被遺傳演算法改造,標籤使得模組能在系統演化適應過程中出現。這就是說,會生成一些具有格式 IF(帶有合適標籤的信號出現) THEN(發送具有那個標籤的資訊)的規則。在生物回路裡,標籤就像主題(motif),用來標記和調整各個模組。通過增加或者減少一個模組裡的分類器規則的條件字串裡的 #符號來提高或者降低啟動這個模組的條件的精確度。

這類基於規則和信號處理的系統已經在不同的背景中得到檢驗。

4

挑 戰

看起來儘管我們沒有“複雜性"、“湧現”等概念的精確定義,但仍然可以快速推動複雜系統的研究。這就像雖然沒有“生命",“物種”和很多生物學關鍵概念的精確定義,生物科學卻能迅猛地發展。然而,正如生物學那樣,我們確實需要嚴格的模型讓我們可以探索 CAS的獨特性質。

下面列出的一些特性提供了理解和控制 CAS的新機遇:

(1)所有被仔細研究過的 CAS都展現出杠杆點——在這個點上的一個簡單干預就會引起系統持續的、直接的效果。例如疫苗引起免疫系統持續的、按照我們預期的改變,加入一些摻雜物就可以導致高溫超導特性的出現。目前沒有理論能告訴我們 CAS的杠杆點在哪裡以及怎麼去尋找這些點。

(2)所有的 CAS都有帶著相關信號的邊界層級組織,且邊界裡包含邊界。沒有邊界就沒有個體的歷史,沒有個體的歷史,就不能根據適應性來選擇。因此,達爾文的自然選擇是基於邊界的產生及其發展的。但是,目前沒有理論告訴我們什麼機制足以使得一個初始同質的系統產生邊界。

(3)所有的 CAS看起來都具有開放式 (open-ended)演化的風格,即初始很簡單的系統 ,其相互作用和信號傳輸的多樣性會在演化中不斷增加。雖然現在已經有了遺傳演算法和其它人工演化技術,但是目前還沒有任何電腦模型能夠展現開放式演化。

還有一些合理的假設是根據下面的觀察而來的:

(1)由回饋、資源回收和邊界導致的資源局部集中,提供了形成新自主體的機會。

(2)自主體形成的過程導致了共同演化和自主體多樣性的增加,在這個過程中,大量資源會逐步被自主體佔據。

(3)在一些“靜止"的條件下,會出現自主體的分化增多的現象。

這些無處不在的性質和假設,給我們提供了一些探索性的電腦模型:

(1)種子機器:構建一個能夠仿照從簡單單細胞發育到形成多細胞器官的模型。這類模型可能是馮..諾依曼劃時代的自繁衍模型的一個自然拓展。

(2)演化的相互作用網路:構造一個從一組基於標記(活性位元點)的基本反應式開始的人工化學系統。目的是觀察帶有標記的邊界和與這些邊界相互作用的帶有標記的信號所組成的網路逐步形成的過程。這類模型如果成功便能提供更好的途徑來刻畫具有回饋、共同演化和可塑表現型的生態網路。

(3)語言獲得和演化模型:構造情景化的自主體模型,自主體在環境中的生存有賴於其與其它自主體的相互作用。目的是觀察從前語言 (pre-linguistic)認知能力湧現出結構化的、基於語法的語言的條件(如果這個條件存在的話)。

最後,在一個元層次觀察 CAS創新的不斷產生(例如演化的生態系統)會告訴我們應該怎樣改變我們通常構思研究的方式:

(1)勇於冒險。在經費資助的研究中允許高的失敗率。因為未來成功及其副產品的指數增長,從“全壘打 "得到的回報會大大地超過之前因為失敗所遭受的損失。

(2)多樣性和並行性。探索一個問題的時候同時從不同的路徑出發。

(3)信譽分配。對階段性工作設定回報機制。在科學研究或者做生意中,最困難的行動是開始階段的、有時候代價很高的、但是最終被證明是個好決策的行動。例如在國際象棋中,通常早期犧牲一個棋子能造出後面的一步好棋。對這個問題的研究實物期權理論比標準的決策理論更好。

長期來說,我們能期待什麼結果呢?

(1)針對組織機構的“飛行模擬器 "。飛行模擬器是由專家測試的,而不是程式師。這類模型通過提供類似電視遊戲的介面,使得飛行專家可以像操控真實飛機那樣操控這個模型。專家驗證這個模型,給程式設計者提出改進意見。

(2)能夠發現 CAS杠杆點的相關理論。這樣的理論應該可以導致各方面的重大改進,包括從藥物設計到關懷幫助窮人等問題。

(3)能賦予探索性研究“底線 "價值的新的評價方法。這裡的關鍵是改變那些在徵稅和淨收益估算中使用的“標準 "核算方法。目前唯一的考慮未來效益的重要核算技術就是備抵折舊。對 CAS的更清晰的認識使得我們能把這類備抵折舊方法用於貼現可以探索性研究的評價中。

CAS的研究是困難的,同時又激動人心。困難越大,將來的回報很可能也越大。

下期文章預告

許國志:諸侯分治,統一江山

本文摘編自郭雷主編,張紀峰、楊曉光副主編《系統科學進展》。

系統科學進展

郭雷 主編 張紀峰 楊曉光 副主編

北京:科學出版社,2017.04

ISBN 978-7-03-051914-6

長按二維碼購買本書

《系統科學進展》是在中國科學院系統科學研究所每年舉辦的一系列系統科學學術講座基礎上遴選的精品報告擴充而成的系列叢書。作為這套叢書的首部著作,《系統科學進展》收集了包括錢學森、關肇直、周光召、John Holland 等著名科學家的重要文獻。閱讀《系統科學進展》,有助於讀者學習系統科學的源頭思想,理解系統科學的核心內涵,把握系統科學的發展方向,提升系統思維素養。這是一本值得收藏的系統科學經典之作。

對本書有任何建議或投稿,歡迎和責編交流:

王麗平 郵箱:13161285177@163.com

一起閱讀科學!

專業品質 學術價值

原創好讀 科學品味