更改

添加5,901字节 、 2015年12月12日 (六) 00:45
无编辑摘要
第3,339行: 第3,339行:  
<gallery>
 
<gallery>
 
File:屏幕快照 2015-12-11 23.37.37.png|
 
File:屏幕快照 2015-12-11 23.37.37.png|
 +
</gallery>
 +
这个
 +
规则
 +
集也可以用下面的一组
 +
数
 +
字表示为:
 +
<gallery>
 +
File:屏幕快照 2015-12-12 00.36.36.png|每一组规则集也可以表示成类似于上面的图和表,例如下面的另外一组规则
 +
File:屏幕快照 2015-12-12 00.36.43.png|
 +
</gallery>
 +
为了
 +
分
 +
辨最
 +
简单的
 +
细胞
 +
自动机,
 +
我们需要给每个
 +
细胞
 +
自动机起一个
 +
名
 +
字,
 +
这个
 +
名
 +
字可以
 +
都用
 +
数
 +
字
 +
进
 +
行表示,
 +
这就是
 +
“方格宇宙”
 +
的编
 +
码
 +
。我
 +
们
 +
知道
 +
,
 +
在一类
 +
最
 +
简
 +
细胞
 +
自动机中,
 +
它
 +
们的
 +
所
 +
有
 +
情况
 +
都
 +
相
 +
同,
 +
而
 +
仅
 +
有
 +
规则
 +
集不同,
 +
所
 +
以我们只要
 +
根据规则
 +
集
 +
找
 +
出编
 +
码
 +
的方案就
 +
相
 +
当
 +
于
 +
给
 +
细胞
 +
自动机
 +
找
 +
到了方案了。
 +
同样的
 +
道
 +
理
 +
,在
 +
确
 +
定了
 +
状态数
 +
、
 +
邻
 +
居
 +
半径
 +
、
 +
维
 +
数
 +
的
 +
细胞
 +
自动机中,
 +
指定了
 +
规则
 +
集的编
 +
号
 +
就
 +
相
 +
当
 +
于
 +
找
 +
到了这个自动机。
 +
因
 +
此
 +
,在
 +
后
 +
面我们可以
 +
通
 +
过编
 +
号
 +
来
 +
识
 +
别
 +
自动机。
 +
而这编
 +
号
 +
的方
 +
案有
 +
两
 +
种,
 +
一种编出来的
 +
码
 +
比
 +
较
 +
长
 +
,
 +
但
 +
是
 +
能
 +
给
 +
所
 +
有的自动机
 +
命名
 +
,
 +
一种比
 +
较
 +
简
 +
捷但
 +
不
 +
能
 +
给
 +
所
 +
有的自动机
 +
命名
 +
。
 +
下面我会
 +
说
 +
自动机
 +
24
 +
号
 +
,
 +
或者
 +
56
 +
号
 +
,你
 +
要
 +
清楚
 +
这
 +
仅仅
 +
是它们的
 +
名
 +
字,
 +
而
 +
这
 +
两
 +
个
 +
细胞
 +
自动机的
 +
规则
 +
不一样。
 +
一
 +
般
 +
在没有
 +
特殊
 +
说
 +
明
 +
情况
 +
下都是用
 +
长
 +
编
 +
码
 +
。
 +
这些都是
 +
细节
 +
问题,
 +
但
 +
在
 +
此说
 +
明有
 +
助
 +
于
 +
我们
 +
后
 +
面的
 +
讨
 +
论
 +
。下
 +
一
 +
部分
 +
要
 +
讨
 +
论
 +
如
 +
何
 +
给
 +
细胞
 +
自动机编
 +
码
 +
,
 +
属
 +
于
 +
技
 +
术
 +
性
 +
的问题,不
 +
感
 +
兴趣
 +
的
 +
读
 +
者完全
 +
可以
 +
跳
 +
到4
 +
。
 +
=== “方格宇宙”的编码 ===
 +
显
 +
然,
 +
对于
 +
最
 +
简单的一类
 +
细胞
 +
自动机,
 +
任
 +
何
 +
一组
 +
规则
 +
的
 +
输入
 +
都是上表
 +
所
 +
列的
 +
8
 +
种
 +
情况
 +
,
 +
而不同的
 +
仅仅
 +
是
 +
输
 +
出
 +
部分
 +
。
 +
我们把第一个
 +
规则
 +
集的
 +
输
 +
出
 +
部分
 +
写
 +
成:
 +
00
 +
1
 +
1
 +
01
 +
01
 +
,第
 +
二
 +
组
 +
规则
 +
集
 +
的
 +
输
 +
出
 +
部分
 +
写
 +
成:
 +
0
 +
111
 +
0
 +
1
 +
1
 +
0
 +
,
 +
显
 +
然这
 +
两
 +
个
 +
输
 +
出不同,
 +
但
 +
它们都是一个
 +
长度
 +
为
 +
8
 +
的二
 +
进
 +
制字
 +
符
 +
串
 +
。
 +
我们可以断
 +
言
 +
任
 +
何
 +
一个
 +
长度
 +
为
 +
8
 +
的二
 +
进
 +
制
 +
串
 +
都应该
 +
对
 +
应一组
 +
规则
 +
。
 +
反过来
 +
讲
 +
,
 +
所
 +
有可
 +
能
 +
的
 +
规则
 +
集都
 +
能
 +
写
 +
为
 +
长度
 +
为
 +
8
 +
的二
 +
进
 +
制
 +
串
 +
,这一
 +
共
 +
有
 +
2
 +
8
 +
=256
 +
种可
 +
能
 +
,也就是
 +
说规则
 +
集一
 +
共仅
 +
有
 +
25
 +
6
 +
个。
 +
我们
 +
知道
 +
,
 +
任
 +
意一个二
 +
进
 +
制
 +
串
 +
都
 +
对
 +
应一个十
 +
进
 +
制的
 +
数
 +
字,比如
 +
0
 +
0
 +
1
 +
1
 +
01
 +
01
 +
对
 +
应的
 +
十
 +
进
 +
制
 +
数
 +
是
 +
53
 +
。
 +
所
 +
以,
 +
采
 +
用这种用
 +
10
 +
进
 +
制
 +
数
 +
字编
 +
码
 +
的二
 +
进
 +
制
 +
串
 +
方法,
 +
我们就把
 +
规则
 +
集
 +
进
 +
行
 +
编
 +
码
 +
。
 +
这种编
 +
码
 +
的方法很有
 +
效
 +
,因
 +
为
 +
任
 +
何
 +
细胞
 +
自动机的
 +
规则
 +
都
 +
逃
 +
不出这
 +
套
 +
编
 +
码
 +
方案,
 +
但
 +
是下
 +
面我们
 +
将
 +
看到这种方法有些麻烦,
 +
所
 +
以我们还
 +
常常使
 +
用
 +
另外
 +
一
 +
套
 +
编
 +
码
 +
的方法。
 +
如果
 +
细胞
 +
自动机的
 +
邻
 +
居
 +
半径
 +
不是
 +
1
 +
,
 +
那么上
 +
述
 +
编
 +
码
 +
方案的
 +
长度
 +
将
 +
会
 +
急剧增加
 +
。
 +
例
 +
如一个
 +
邻
 +
居
 +
半径
 +
为
 +
2
 +
的
 +
细胞
 +
自动
 +
机的
 +
所
 +
有可
 +
能
 +
输入
 +
就是
 +
2
 +
5
 +
=32
 +
种,
 +
因
 +
而
 +
根据
 +
上面的
 +
原理
 +
,
 +
我们的编
 +
码
 +
也需要
 +
32
 +
位长
 +
,这
 +
显
 +
然不实
 +
际
 +
了,
 +
因
 +
此
 +
我们应该
 +
能
 +
简
 +
化
 +
该编
 +
码
 +
方案。
 +
考虑
 +
这样的
 +
规则
 +
集,
 +
其中每一
 +
条规则
 +
的
 +
输入
 +
都
 +
仅仅
 +
考虑邻
 +
居
 +
区域
 +
的
 +
状态数值
 +
之和。
 +
比如在
 +
最
 +
简
 +
细胞
 +
自动机中,
 +
某
 +
细胞
 +
的
 +
邻
 +
居
 +
区域
 +
的三个
 +
细胞
 +
状态
 +
是
 +
01
 +
1
 +
,
 +
则
 +
0+
 +
1+
 +
1=2
 +
,这样
 +
输入
 +
就是
 +
2
 +
。如
 +
果是
 +
01
 +
0
 +
呢,
 +
那
 +
么
 +
0+
 +
1+0
 +
=
 +
1
 +
,该
 +
输入
 +
就是
 +
1
 +
。这
 +
样
 +
所
 +
有的
 +
输入
 +
可
 +
能
 +
仅仅
 +
有
 +
4
 +
个
 +
包括
 +
0,
 +
1,2
 +
,
 +
3
 +
。
 +
我们把
 +
所
 +
有的
 +
输
 +
入
 +
列出,
 +
按照
 +
类似上面的方法就给每个
 +
输入
 +
指定
 +
输
 +
出的
 +
状态
 +
就得到了该编
 +
码
 +
。
 +
比如一
 +
条规则
 +
的
 +
输入输
 +
出
 +
对
 +
应如下:
 +
<gallery>
 +
File:屏幕快照 2015-12-12 00.39.50.png|标题1
 +
File:屏幕快照 2015-12-12 00.41.00.png|标题2
 +
</gallery>
 +
把
 +
1001
 +
也就
 +
是
 +
9
 +
作
 +
为该
 +
细胞
 +
自动集的编
 +
码
 +
。当
 +
邻
 +
居
 +
半径增
 +
大到
 +
2
 +
的时候,
 +
所
 +
有可
 +
能
 +
的
 +
输入
 +
是
 +
5
 +
个,
 +
所
 +
以编
 +
码
 +
长度
 +
是
 +
5
 +
,
 +
显
 +
然比
 +
刚才
 +
简
 +
化
 +
多了。因而这种编
 +
码
 +
方案为
 +
短
 +
编
 +
码
 +
方案。
 +
=== “方格宇宙”的动态行为 ===
 +
对于
 +
一
 +
维
 +
的
 +
情况
 +
,我们
 +
假
 +
设
 +
所
 +
有的方格都
 +
分
 +
布
 +
在一
 +
条
 +
直线
 +
上,并且
 +
直线
 +
的
 +
长度
 +
为
 +
30
 +
0
 +
,
 +
也就是
 +
说
 +
有
 +
30
 +
0
 +
个方格在
 +
这
 +
条
 +
直线
 +
上。
 +
我们用黑色的格表示
 +
直线
 +
上
 +
1
 +
状态
 +
的方格,
 +
用
 +
白
 +
色的
 +
格表示
 +
0
 +
状态
 +
的方格。
 +
那么一
 +
条
 +
断
 +
续
 +
的
 +
横线
 +
就是当
 +
前
 +
所
 +
有
 +
细胞
 +
状态
 +
的一种
 +
分
 +
布
 +
。
 +
这些方格
 +
随
 +
着时间变
 +
化
 +
,就
 +
形
 +
成了不同的
 +
横线
 +
。
 +
我们把这些
 +
随
 +
着时间变
 +
化
 +
的
 +
线纵向拼
 +
在一起
 +
形
 +
成了一个
 +
网
 +
格
 +
区域
 +
。其
 +
中
 +
纵轴
 +
表示时间的
 +
流逝
 +
(
 +
往
 +
下为正)
 +
,
 +
横轴
 +
为
 +
“方格宇宙”
 +
在
 +
对
 +
应时刻的
 +
状态
 +
,
 +
就
 +
能
 +
得到一
 +
幅
 +
图像:
 +
<gallery>
 +
File:屏幕快照 2015-12-12 00.42.44.png|
 +
</gallery>
 +
这个方格的每一行都是
 +
某
 +
一个时刻
 +
细胞
 +
自动机的
 +
状态
 +
。因
 +
而
 +
从
 +
上到下
 +
数
 +
第
 +
1
 +
、
 +
2
 +
、
 +
3
 +
、
 +
4
 +
、
 +
5
 +
、
 +
6
 +
行可以
 +
分别
 +
表示第
 +
1
 +
、
 +
2
 +
、
 +
3
 +
、
 +
4
 +
、
 +
5
 +
、
 +
6
 +
秒的
 +
细胞
 +
自动机
 +
状态
 +
。因
 +
此
 +
这里的一个
 +
平
 +
面的图
 +
案就是
 +
细胞
 +
自动机在时间上的
 +
发展
 +
动
 +
态
 +
。
 +
下面我们用
 +
程序
 +
one
 +
dim
 +
e
 +
nsio
 +
n
 +
探索
 +
一些
 +
最
 +
简单的一
 +
维细胞
 +
自动机的动
 +
态
 +
图案
 +
(
 +
注
 +
意这里
 +
的
 +
细胞
 +
自动机都
 +
采
 +
用
 +
左右
 +
相
 +
邻
 +
的
 +
周期型
 +
边
 +
界
 +
处理
 +
)
 +
。在
 +
状态数
 +
为
 +
2
 +
,
 +
邻
 +
居
 +
半径
 +
1
 +
的
 +
最
 +
简
 +
情况
 +
下
 +
分别
 +
挑选
 +
几种
 +
典型
 +
的动
 +
态情况
 +
示
 +
于
 +
下图(下方的
 +
数
 +
字是
 +
细胞
 +
自动机的编
 +
码
 +
)
 +
:
 +
<gallery>
 +
File:屏幕快照 2015-12-12 00.42.38.png|
 
</gallery>
 
</gallery>