|
在上個單元,我們初步瞭解了一維細胞自動機的規則表示法,在這個單元,我們要進一步討論 Nb=5 與 Nb=7 的規則類型 ,不過我們已經無法只用八組規則來描述它們了。
當 Nb=5 時,我們考慮的是:細胞只有兩個狀態,而且影響細胞下一次疊代的因素有左邊兩個鄰居、 自己與右邊兩個鄰居, 總共有五個 。在這裡舉一個例子
Bermuda Triangle Rule,其鄰居們的狀態如何決定(中央)細胞下一代的狀態,係表列如下:
| Bermuda Triangle Rule |
| Nb=5,States=2,RuleBinary=00111000111001000100000100111101
or RuleHex=BC82271C |
| 規則編號 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
| 疊代前的細胞狀態 |
00000 |
00001 |
00010 |
00011 |
00100 |
00101 |
00110 |
00111 |
| 疊代後的細胞狀態 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
| 規則編號 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
| 疊代前的細胞狀態 |
01000 |
01001 |
01010 |
01011 |
01100 |
01101 |
01110 |
01111 |
| 疊代後的細胞狀態 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
| 規則編號 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
| 疊代前的細胞狀態 |
10000 |
10001 |
10010 |
10011 |
10100 |
10101 |
10110 |
10111 |
| 疊代後的細胞狀態 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
| 規則編號 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
| 疊代前的細胞狀態 |
11000 |
11001 |
11010 |
11011 |
11100 |
11101 |
11110 |
11111 |
| 疊代後的細胞狀態 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
Bermuda Triangle Rule 雖然以百慕達三角洲為名, 但是所疊代出來的圖形類似於立體的金字塔,你會發現金字塔各面有不一樣的陰影效果,如下面的
Java Applet 所顯示的,你可以「同時」看見 300 次疊代的過程。但是,這個圖形通常會以一個或幾個(反相)滑翔機的斜對移動來作結局,我們可以說這個規則疊代到最後,圖形不會趨向於混沌的狀況。
從上面的列表可以得知,當 Nb=5 且 States=2 時,規則數目=32=2x2x2x2x2=25。也就是說如果用
RuleBinary 來表示規則的話,將會有一長串的數字, 所以 Wolfram 才會建議使用十六進位法的「Hex Wolfram's Code」,這樣便可以把那一長串數字縮減到只剩下四分之一,但是當
Nb=7 的時候 ,將會有 128=27 組規則數目, 即使用 RuleHex 來表示也需要 32 個數字。這些排列組合的數量都太龐大了,
我們無法一一列表舉例 。而 Nb=5 且 States=2 的條件,有多少個規則種類呢? 總共有 232=4,294,967,296
種,掐指算一算有千萬種以上的規則變化,更不用說是 Nb=7 的條件 ,總共有 2128=4,294,967,2964
種規則變化。 如果細胞的可能狀態不只是兩個,那麼光是 Nb=5 的狀況就已經討論不完了。
介紹了「典型」的一維細胞自動機的規則,在下個單元裡,筆者將介紹另一套規則定義,這套規則定義你會感到比較熟悉,因為它的表達法很接近生命遊戲的一般規則。
|