4.4 總結 53
5.1.3 C ELLULAR A UTOMATA
細胞自動機(Cellular Automata)最初由數學家 Stanislaw M. Ulam 與 John von Neumann 所提 出(Krawczyk, 2002),在型態表現上,細胞自動機是一個離散型的動力系統(Discrete Dynamical Systems),細胞自動機系統的數學模型中,許多細胞同時動作,以產生複雜的行為模式(Packard &
Wolfram, 1985)。一些特定規則的格子組成的同質陣列(homogenous array),在每個格子上的離散 變量(discrete variable)視為一個細胞(cell),每一個細胞可以具有一些狀態,由細胞所在的變量來 指定,但是在某一時刻只能處一種狀態之中。隨著迭代的過程,格子上的每一個細胞受到相鄰 細胞的影響,依據相同的法則而改變狀態,意即,一個細胞的狀態是由上一個時刻(time step)相 鄰細胞的狀態所決定,在設定好細胞自動機初始狀態之後,細胞便按照同一個規則做演化(Gács, 2001; Griswold 2002; Wolfram, 1983),藉由設定細胞自動機的初始狀態和規則,確立細胞自動機 的生成結構。
圖 62 顯示細胞自動機可以具有多種維度(一維、二維、三維……),最簡單的細胞自動機
類型是初等細胞自動機(elementary cellular automaton),屬於一維的細胞自動機,初等細胞自動 機的細胞單元有兩個可能的狀態:死亡(0)或存活(1),每個細胞單元的規則取決於相鄰左右兩個 單元的值,一個指定的細胞(本體)與相鄰的兩個細胞皆可以被設定可能的二進制(0 或 1)狀 態,依據定義的規則與相鄰的值來確定演化生成的模式,迭代後的本體細胞則為上一代相鄰的 兩個細胞的總和,圖 63 顯示一個 8 位元的初等細胞自動機的生成規則(Wolfram, 1983), 在此圖 中,上面那一行顯示本體細胞與兩個相鄰細胞的狀態,下面那一行是初等細胞自動機的生成規 則,以此規則定義本體細胞在某狀態下,於下一代的狀態為死亡或存活,這樣的初等細胞自動 機會有 28=256 種可能(圖 64)
(a)
(b)
(c)
圖 62 細胞自動機的幾何結構(Griswold, 2002):(a)一維。(b)二維。(c)三維。
圖 63 設置初等細胞自動機的初始規則(Wolfram, 1983)。
圖 64 初等細胞自動機的 256 種可能(http://mathworld.wolfram.com/ElementaryCellularAutomaton.html)。
檢視初等細胞自動機生成的圖形結構,選擇相對應的生成規則(圖 65),可以將其應用於 開口設計中。
圖 65 初等細胞自動機的生成規則與圖形結構(rule 30, 54, 62, 90, 94, 102, 110, 122, 126, 150, 158, 182, 188, 190, 220, 222, 250)(http://mathworld.wolfram.com/ElementaryCellularAutomaton.html)
圖 66 顯示 five-neighbor square 與 nine-neighbor square 的二維細胞自動機的圖形結構,在中 心位址(本體)的細胞,其演化後的值為所有相鄰細胞值的總和(Packard & Wolfram, 1985),細 胞可能具有兩種狀態,存活(Survival)或死亡(Death),即 1(true)或 0(false),而影響這些細胞生死 的規則可分為兩種,誕生規則(Born rule)與存活規則(Survive rule),以 nine-neighbor square 為例,
誕生規則適用於死細胞,其設定為,當本體細胞為死細胞,而相鄰的八個細胞有 N 個存活時,則本 體細胞經運算後於下一代時誕生,存活規則只適用於活細胞,其設定為,當本體細胞為活細胞,
其相鄰的八個細胞有 N 個為活時,則本體在運算後於下一代時維持活狀態,將此規則應用於不 同的網格結構中,會產生多種可能(圖 67)。
(a) (b)
圖 66 (a)five-neighbor square(b)nine-neighbor square(Packard & Wolfram, 1985)
圖 67 二維細胞自動機在不同的網格結構中,經過演化過程,可能產生多種結果。