表面上看 初级细胞自动机十分简单 每个细胞单元非黑即白 每个单元只与左右两个单元相关 所有这些都是确定的 而它的规则一共只有八个值,也就是中央细胞变化的八种情形 但让细胞自动机如此有趣和令人惊讶的是 这个简单的系统能够生出难以想象的复杂度 比如说 如果我们把这个网格扩大到两百个 然后从随机的初始状态开始 依照同样的规则一直迭代下去 结果会是这样的 在最上面我们可以看到网格的初始状态是没有规律的 然后时间从上往下一直增加 这里单个的网格都太小 你很难看清它的状态 你能看到的是总体上黑白的变化 表现在更大的尺度上 你会发现演化结果并不是杂乱无章的 我们得到了一些结构化的表现特征 似乎有一些规律在其中 但是很难描述 而对于这个例子 这就是“复杂性”的定义 以后我们会看到 由上述规则定义的细胞自动机 实际上是一共256个初级细胞自动机中最复杂的一个 它具有很特别的性质 斯蒂芬·沃尔夫勒姆是一名英国数学家、物理学家 他对细胞自动机 特别是初级细胞自动机有深入的研究 他在这个领域有很多著述 他的新书《一种新科学》有1200页厚 讨论了从细胞自动机这样的极简单却表现出复杂行为的系统出发 重新思考科学本身的问题 从现在起的两个小节中我们会讨论沃尔夫勒姆 关于初级细胞自动机的分类的研究 就如之前所说 要定义一个初级细胞自动机(ECA) 我们必须列出所有相邻单元的可能排列 并在箭头右边给出中央单元下一步的变化情况 每个单元只有黑白两种状态 所以对应的右边的变化结果有两种可能性 每个排列的变化都是黑白两种可能 所以总的可能性就是2 x 2 x 2 ......= 2的8次方 = 256 也就是说可以有256种不同规则的ECA 这个数目并不是很多 而沃尔夫勒姆详细研究了每种ECA的演化行为 为了对这256种ECA进行全面研究 他为每种ECA设置了独特的数字编码 这个编码被称为“沃尔夫勒姆编码” 其原理如下 假设我们要对现在这个规则编码 那么首先对于每个变换结果 如果是白则对应0, 黑为1 这样我们得到一个0和1 的数列 把它横放(最上变为最右) 把得到的二进制数列转换为十进制 转换方法是:最右的数字对应第0位,倒数第二个对应第1位,倒数第三个是第2位…… 每个数字乘以2的n次方,其中n是其对应位数,再将结果相加 总之 我们做的只是普通的进制转换而已 最后得到的总和是110。所以这个规则就叫做“110号规则” 再来看下一个例子 这是一套新的规则 这是变化结果对应的数列 把它横放得到11000001 再转换为十进制 最左的1在第7位上所以是 1 x 2^7=128 再加上第六位 1 x 2^6=64 第五四三二位的数都是0 最后加上1 x 2^0 =1 我们得到总和为128 + 64 + 1 = 193 所以这个规则就是“193号规则” 好了接下来我们来做一个”沃尔夫勒姆数“的小测试