免费基于细胞自动机的生命活力模拟的实现(一)(2)

时间:2017-08-13 我要投稿
onstant Boundary)指所有边界外细胞均取某一固定常量,如0、1等。
 有时,在应用中,为更加客观、自然地模拟实际现象,还有可能采用随机型边界(Random Boundary),即在边界实时产生随机值。
 需要指出的是,这几种边界类型在实际应用中,尤其是二维或更高维数的建模时,可以相互结合。如在二维空间中,上下边界采用反射型,左右边界可采用周期型。
 (3)构型(Configuration)
 在这个细胞、状态、细胞空间的概念基础上,我们引入另外一个非常重要的概念“构型”。构型是指在某个时刻,在细胞空间上所有细胞状态的空间分布组合。通常,在数学上,它可以表示为一个多维的整数矩阵。构型也被称为全局状态(global state)。
 4.邻居
 以上的细胞及细胞空间只表示了系统的静态成分,为将动态引入系统,必须加入演化规则。在细胞自动机中,这些规则是定义在空间局部范围内的,即一个细胞下一时刻的状态决定于本身状态和它的邻居细胞的状态。因而,在指定规则之前,必须明确哪些细胞是该细胞的邻居。
 在一维细胞自动机中,通常以半径来确定邻居,与一个细胞相距在一个半径的距离之内的所有细胞均被认为是该细胞的邻居。
 二维细胞自动机的邻居定义通常有以下几种形式,我们以最常用的规则四方网格划分为例。见下图,黑色细胞为中心细胞,灰色细胞为其邻居,它们的状态一起来计算中心细胞在下一时刻的状态。
 
 图2 细胞自动机的邻居模型
 (1)冯·诺依曼型
 一个细胞的上、下、左、右相邻四个细胞为该细胞的邻居。这里,邻居半径r为1。
 (2)摩尔型
 一个细胞的上、下、左、右、左上、右上、右下、左下相邻八个细胞为该细胞的邻居。
 (3)扩展的摩尔型
 将以上的邻居半径r扩展为2或者更大,即得到所谓扩展的摩尔型邻居。
 (4)马哥勒斯型
 这是一种同以上邻居类型迥然不同的形式,它是每次将一个2x2的细胞块做统一处理,而上述前三种邻居模型中,每个细胞是分别处理的。这种邻居类型因为格子气自动机而得到关注。
 有了邻居的定义,我们可以得到引入邻域的概念。邻域就是一个细胞及其所有邻居的集合。
 有必要说明的是,邻居并不一定要去“最邻近”的,但是这些“最邻近”的邻居较为符合现实,而且已经足可以代表了所有的细胞自动机。
 5.规则
 根据细胞当前状态及其邻居状况确定下一时刻该细胞状态的动力学函数就是规则。
 这里我们遇到一个典型的组合爆炸问题。假设细胞自动机中每个细胞存在种状态,其邻域拥有的细胞个数是n,那么邻域存在种状态。细胞的规则,或称细胞自动机的转换函数,要将种状态映射为种状态的一种,则共有k种转换函数存在[5]。
 非常重要的一点就是,沃夫拉姆(Wolfram)证明了,总和规则描述的细胞自动机可以展现所有细胞自动机可能表现的动态行为。
 6.时间
 细胞自动机是一个动态系统,它在时间维上的变化是离散的,即时间t是一个整数值,而且连续等间距。假设时间间距dt=1,若t=i为某一时刻,那么,t=i+1为其下一时刻。
 1.3 细胞自动机的特征
 细胞自动机内所有的细胞都受相同规则的约束。它们大小相等、形状相同,地位平等,按一定的规则分布在离散的细胞空间上。系统的演化是按照等间隔时间分步进行的,时间变量t只能取等步长的时刻点。同时,由每个细胞演化到下一代都只受邻近的细胞影响,具有空间局部性。除此之外,细胞自动机还有如下重要特征:
 随机性和确定性
 确定性和随机性是客观事物的两个方面。科学家们早就发现,确定性和不确定性之间并没有不可逾越的鸿沟,二者是辨证统一的关系。细胞自动机的行为提供了一个绝好的佐证。
 我们观察大自然的时候,觉得有很多随机现象,这些现象我们认为都是不可预测的。但这并不等于这些现象没有内在的确定性规则约束。比如,著名的“蝴蝶效应” 。据说,在北京的一只蝴蝶扇了一下翅膀,有可能引起太平洋的一次龙卷风。就是说,初始状态轻微的,不明显变化能引起整个系统翻天覆地的改变。这些不明显的变化经过系统的演变时被无限放大了。正如我前面所分析的,如果一维细胞自动机的细胞个数只有5的话,那么不管什么规则,最多演化2的5次方也就是32次以后,它必然呈现出重复的现象来。由于现实世界是个近乎无限的离散动力系统,这使得宏观现象看起来非常的随机化。所以,计算主义认为,它仅仅只有几条简单的规则约束着,这是可确定的一部分。
 过程与状态
 在近代科学中,早已破除了那种以状态为主看待事物的思维方法,而逐步树立了以过程为视角的思维方法。这种视角认为,我们应该首先考虑系统的演化行为,而不是此时的状态。在许多情况下,终极状态是什么并不知道,甚至是否存在这样的终极状态也并不是明确的。哲学家黑格尔曾说过,了解一门科学的历史,也就了解了这门科学本身。朗顿也曾经说过这样一句话:“你应该观察系统是如何运作的,而不是观察它是由什么组成的”。
 同样的道理,在对细胞自动机进行分析的时候,必须看它的动态过程。单单看一过静态的状态是没有任何意义的。
 集中控制与自组织
 就像自然界是大量的原子和分子组成并在某种规则约束之下运动一样。研究单个原子的运动很难得出有意义的结论。但是,在大量的原子和分子在相互作用之后,复杂的现象就会突现出来。这说明,大自然没有“中央电脑”的控制。集中控制并不是操纵系统实现某一目的的唯一手段。
 简单与复杂
 细胞自动机让我们很惊讶的发现,一些简单的东西却可以产生如此复杂的现象。细胞状态是如此简单,规则是如此简单,然而它竟然可以“模拟整个宇宙”,从生物进化,到股市涨落,到雪花形成,到铁钉生锈,等等一切。这更加深了我们“表面上看起来复杂的事物其本质可能很简单”这一信念,从而激发我们为从复杂性中发现简单性而锲而不舍。
 连续与离散
 微分方程有着三百多年的发展历史,它已经成为现代科学的语言,也是科学研究中最为重要的研究工具之一,一大批重要的科学规律就是利用微分方程来推理和表达的。
 微分方程的主要特点是时间、空间均连续(如果方程中有空间因子的话),这是建立在时空连续的哲学认识基础上的。而细胞自动机则是完全的空间离散、时间离散,在这个意义上,微分方程和细胞自动机一对相对的计算方法。
 在人工计算的情况下,由符号组成的(偏)微分方程可以灵活地进行约简等符号运算,而得到精确的定量解,这是其优势。但在现代计算机日益发展,已成为我们科学研究的重要工具时,微分方程却遇到了一个尴尬的问题,即计算机是建立在离散的基础上的,微分方程在计算时不得不对自身进行时空离散化,建立差分方程等;或者展开成幂系列方程,截取部分展开式;或者采用某种转换用离散结构来表示连续变量。这个改造过程不仅是
免费基于细胞自动机的生命活力模拟的实现(一)(2)相关推荐
最新推荐
热门推荐