另類科學的核心技術是細胞自動機。php
烏爾姆(Stanislaw M. Ulam)和馮·諾伊曼(John von Neumann)爲了研究機器人自我複製的可能性,在上個世紀50年代提出一種叫作細胞自動機(Cellular Automaton)的離散型動力系統(Discrete Dynamical Systems)。細胞自動機是研究複雜系統行爲的理論框架之一,也是人工智能在這個領域的雛形之一。數組
在一個平面上(這裏以平面爲例,但不限於二維平面)縱橫相交的多條直線構成了許多網格,每個網格被看做一個細胞。這些細胞能夠具備一些特徵狀態,譬如被染成不一樣顏色。在每一個特定的時刻每一個細胞只能處於一種特徵狀態。隨着計算機迭代計算過程的進行,全體細胞各自根據周圍細胞的狀態,按照相同的規則同時自動改變它自己的狀態,這就構成了一臺細胞自動機。框架
決定一臺細胞自動機的先決條件有四個:一、決定細胞活動的空間維度,譬如一維的、二維的或三維的,等等;二、定義細胞可能具備的狀態;三、定義細胞改變狀態的規則;四、設定細胞自動機中各細胞的初始狀態。ide
1982年Wolfram發表了第一篇關於細胞自動機的學術論文,由此開始了對細胞自動機的研究。Wolfram着重研究空間維度爲二維的細胞自動機。細胞可能具備的狀態只有兩種,用顏色表示成黑色或白色。全體細胞中的每個只根據上一迭代過程當中與該細胞緊相鄰的三個細胞的狀態來決定本身下一步的狀態,全部細胞在根據上一步結果肯定本身在這一步中將有的狀態後,全體細胞同時改變本身的狀態到新狀態。其結果和細胞自動機的初始條件頗有關係。被這樣設定的細胞自動機叫作一維細胞自動機。學習
科學的道路來不得半點虛僞和驕傲。這沒錯。可是,若是你的切入點選對了,也許你在一條新的路上能夠成爲先行者,而並不必定要先把本身的知識的背囊裝的滿滿的以後纔去開始攀登科學高峯的步伐。Wolfram就是一個好例子。雖然他確是很聰明,但按照他如今發表的成果看來,他15歲就能發表論文,不徹底由於他那時候有多麼淵博的學問,更有多是由於他選了一個很好的切入點。ui
下面爲你設計實現了一臺最簡單的細胞自動機,請你親手來作一下。這是學習的最好方式,同時也能夠體驗到,有時候進入研究最前沿也不是那麼遙不可及的事情。我這裏說的是「進入」。跨出這一步後,到你作出成果來,就會有無數的書本等着你去翻開,有無數的實驗等着你去完成,有一段很長的距離要走。可是你已經入門了。你享受門外漢不可能體驗的樂趣,你在科學的某一條小路上攀登着並沿途拿本身的幼稚和汗水去交換路邊的小石、頭頂的野花。不知不覺間,你就登上了一座小山包,背上的揹包已經有點重了。俯視走過的路,自豪與快樂溢於心間。而前面總有更美的景色在召喚你前行……編碼
下面的例子不須要使用計算機,咱們用手畫圖來完成這個簡單的細胞自動機。請你親手來畫一下:人工智能
想象有一根無限長的線,線上佈滿能夠變色的點,每一個點的顏色或黑或白。初始條件能夠簡單設爲除一個黑點外其他的點全白,或者設爲黑白相間。咱們按照黑、白相間的簡單起始規則,畫出下圖中的‘起始圖’部分。spa
起始 ○ ● ○ ● ○ ● ○ ● ○ ● 設計
而後對全部的點施行應用某種規則,好比最近鄰規則:對線上任意一點,若是在該點最右側及最左側的點均爲黑色,而該點自己爲白色,則把該點變成黑點。不然該點就保留或改變成白點。
按照上述規定反覆迭代,就獲得了下面的迭代圖的全體。
咱們從‘起始圖’開始來推導出‘第一步迭代圖’,請拿一張紙一支筆本身動手畫一畫:‘起始圖’中的第一個點是白點,按照迭代規定,這個點在‘第一步迭代圖’中保留原來的白色;‘起始圖’中的第二個點是黑點,根據規定它將在‘第一步迭代圖’中改變成白色;‘起始圖’中的第三個點的最右側及最左側的點均爲黑色,而該點自己爲白色,故把該點變成黑點畫在‘第一步迭代圖’中……,依此把‘起始圖’中全部的點檢查一遍,並記住全部點在‘第一步迭代圖’中的新顏色,而後就按照獲得的全體點的結果,畫出‘第一步迭代圖’。
起始 ○ ● ○ ● ○ ● ○ ● ○ ●
第一步迭代 ○ ○ ● ○ ● ○ ● ○ ● ○
如今針對‘第一步迭代圖’,按照一樣的方法畫出‘第二步迭代圖’,‘第三步迭代圖’,……,等等,以下圖所示:
起始 ○ ● ○ ● ○ ● ○ ● ○ ●
第一步迭代 ○ ○ ● ○ ● ○ ● ○ ● ○
第二步迭代 ○ ○ ○ ● ○ ● ○ ● ○ ●
第三步迭代 ○ ○ ○ ○ ● ○ ● ○ ● ○
由圖中能夠看到,每迭代一次,白點就向右側移動一位。這樣就獲得了一個點的動態移動的模式。
怎麼樣?簡單吧?你剛剛作了一臺細胞自動機哪!
請你在這裏暫停閱讀並想想在計算機上實現這個簡單的一維細胞自動機的情景。能替它找到一些相關的應用嗎?
我找了幾個以下:
若是在計算機上實現上述的簡單一維細胞自動機,並在一根直線上畫出每次的迭代過程,就能夠看到一個白點向右側運動的動態過程。若是把直線畫成螺旋狀,這個點就會沿螺旋運動。若是畫成環狀,點就沿着環跑個不停。
若是隻把圖中改變顏色的點畫出來,而且把點畫成宇宙飛船的形狀而不是圓點的形狀,直線畫成某種空間軌跡。那麼在程序運行時,就獲得了一艘宇宙飛船沿軌跡飛行的動態畫面。若是畫兩艘敵對的宇宙飛船並設計它們的相撞的軌跡,就能夠獲得一個簡單的星球大戰的遊戲。
怎麼樣?挺好玩的吧?您再想點別的花樣?
下面是一個從《另類科學》中取來的、更具體的、也更復雜一點的例子。若是您有耐心又有興趣的話,經過它能夠更深刻了解Wolfram的工做的基本原理。若是沒有興趣,就跳過去不讀它便可。做者的饒舌是本身興之所至的塗鴉,讀者大可沒必要跟着給弄得暈頭轉向。固然若是個人做品有這麼大的魔力讓你跟着個人思想轉悠,我會頗有成就感的。謝謝了。
考慮並排的三個格子,它們分別被賦予黑白兩種狀態。考慮各類可能的排列方式,咱們不可貴到共有8種組合狀態。這8種組合狀態的每一種都各自決定下一個細胞是黑色或白色,這樣算下來的排列總共有256種可能性。所以在Wolfram考慮的細胞自動機種類中,細胞改變狀態的規則有256種。Wolfram把這256種規則一一編號。譬以下面的圖就表明110號規則:
圖9-4 Wolfram的細胞自動機110號規則
用文字來敘述就是:當某細胞的上一行相鄰三個細胞爲全黑、全白或者左側一個細胞爲黑時,該細胞爲白色,不然爲黑色。設定一個簡單的細胞初始狀態,譬如在第一行只有一個黑色細胞,根據規則110,細胞自動機就能夠自動把其他的細胞變成黑色或保留白色。下圖就是根據規則110運行了前20步的狀況,在這裏彷佛看不出什麼有趣的東西。但運行到幾百步後,就出現了一些有趣的特徵,一些結構開始既不是週期性地也不是徹底隨機地出如今畫面上。下圖是按規則110運行到700步的狀況。
圖9-5 110號規則運行了前20步的狀況 圖9-6 110號規則運行了前700步的狀況
從上面的兩個例子中咱們能夠看到,在這樣的模式中,確實沒有用到經典的數學公式。
Wolfram用相似的方法,獲得了除量子力學外經典物理學中的全部公式。
也就是說,不用數學公式也能夠藉助計算機來描述天然界。不用數學公式也能夠藉助計算機來研究宇宙。
1984年Wolfram把256種規則分紅了四類:第一類只生成簡單重複的圖案,好比全黑、全白、或黑白相間如國際象棋棋盤等等;第二類規則產生一些自類似的分形圖案,造成穩定的嵌套結構;第三類規則產生的圖案具備明顯的隨機性;第四類規則產生複雜的圖案,但不簡單重複。
這些圖案既不是規則的也不是徹底隨機的。它們呈現出某種有序性,但卻不能被預言。
Wolfram關注較多的是第四類規則。第110號規則及30號規則是第四類規則中的精粹。經過它們能夠從簡單的初始條件產生出複雜的圖形。這是Wolfram對細胞自動機理論所作出的巨大貢獻。
Wolfram所用的軟件計算自己並不複雜,複雜的是怎樣處理輸出結果。有了適當的軟件後,就能夠開展對細胞自動機的研究。
Cited from:http://blog.china.com.cn/home.php?mod=space&uid=1235952&do=blog&id=232854
Note:cellular automaton 經過對問題進行編碼使其更加直觀,能夠表示傳統方法難以表達的特徵。 好比展現同源 nucleotide sequence 之間的差異,能夠將一維的序列轉化爲二維的數組,而後將數組以圖像的形式反映出來,因而將序列的特徵反映到二維圖像上,能夠用直觀的方式發現其特徵。