在线时间 0 小时 最后登录 2009-10-10 注册时间 2009-7-18 听众数 9 收听数 0 能力 0 分 体力 104 点 威望 11 点 阅读权限 30 积分 271 相册 0 日志 0 记录 0 帖子 234 主题 19 精华 1 分享 0 好友 0
升级 85.5%
该用户从未签到
用以抛砖引玉,希望大虾指点,恳请介绍点资料!!谢谢!!
元胞自动机 (cellular automata ,简称 ca ,也有人译为细胞自动机、点格自动机、分子自动机或单元自动机 ) 。是一时间和空间都离散的动力系统。散布在规则格网 (lattice grid) 中的每一元胞 (cell) 取有限的离散状态,遵循同样的作用规则,依据确定的局部规则作同步更新。大量元胞通过简单的相互作用而构成动态系统的演化。不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是用一系列模型构造的规则构成。凡是满足这些规则的模型都可以算作是元胞自动机模型。因此,元胞自动机是一类模型的总称,或者说是一个方法框架。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。
元胞自动机的构建没有固定的数学公式,构成方式繁杂,变种很多,行为复杂。故其分类难度也较大,自元胞自动机产生以来,对于元胞自动机分类的研究就是元胞自动机的一个重要的研究课题和核心理论,在基于不同的出发点,元胞自动机可有多种分类,其中,最具影响力的当属 s. wolfram 在 80 年代初做的基于动力学行为的元胞自动机分类,而基于维数的元胞自动机分类也是最简单和最常用的划分。除此之外,在 1990 年, howard a.gutowitz 提出了基于元胞自动机行为的马尔科夫概率量测的层次化、参量化的分类体系 (gutowitz, h. a. ,1990) 。下面就上述的前两种分类作进一步的介绍。同时就几种特殊类型的元胞自动机进行介绍和探讨 s. wolfrarm 在详细分忻研究了一维元胞自动机的演化行为,并在大量的计算机实验的基础上,将所有元胞自动机的动力学行为归纳为四大类 (wolfram. s. , 1986):
(1) 平稳型 : 自任何初始状态开始 , 经过一定时间运行后,元胞空间趋于一个空间平稳的构形,这里空间平稳即指每一个元胞处于固定状态。不随时间变化而变化。
(2) 周期型 : 经过一定时间运行后,元胞空间趋于一系列简单的固定结构 (stable paterns) 或周期结构 (perlodical patterns) 。由于这些结构可看作是一种滤波器 (filter) ,故可应用到图像处理的研究中。
(3) 混沌型 : 自任何初始状态开始,经过一定时间运行后,元胞自动机表现出混沌的非周期行为,所生成的结构的统汁特征不再变止,通常表现为分形分维特征。
(4) 复杂型 : 出现复杂的局部结构,或者说是局部的混沌,其中有些会不断地传播。从另一角度,元胞自动机可视为动力系统,因而可将初试点、轨道、不动点、周期轨和终极轨等一系列概念用到元胞自动机的研究中,上述分类,又可以分别描述为 ( 谭跃进, 1996 ;谢惠民, 1994 ;李才伟、 1997) ;
(2) 简单的周期结构,即周期性吸引子,或称周期轨 ;
(4) 这第四类行为可以与生命系统等复杂系统中的自组织现象相比拟,但在连续系统中没有相对应的模式。但从研究元胞自动机的角度讲,最具研究价值的具有第四类行为的元胞自动机,因为这类元胞自动机被认为具有 " 突现计算 "(emergent computation) 功能,研究表明,可以用作广义计算机 (universal computer) 以仿真任意复杂的计算过程。另外,此类元胞自动机在发展过程中还表现出很强的不可逆 (lrreversibility) 特征,而且,这种元胞自动机在若干有限循环后,有可能会 " 死 " 掉,即所有元胞的状态变为零。
元胞自动机的构建没有固定的数学公式,构成方式繁杂,变种很多,行为复杂。故其分类难度也较大,自元胞自动机产生以来,对于元胞自动机分类的研究就是元胞自动机的一个重要的研究课题和核心理论,在基于不同的出发点,元胞自动机可有多种分类,其中,最具影响力的当属S. Wolfram在80年代初做的基于动力学行为的元胞自动机分类,而基于维数的元胞自动机分类也是最简单和最常用的划分。除此之外,在1990年,Howard A.Gutowitz提出了基于元胞自动机行为的马尔科夫概率量测的层次化、参量化的分类体系(Gutowitz, H. A. ,1990)。下面就上述的前两种分类作进一步的介绍。同时就几种特殊类型的元胞自动机进行介绍和探讨S. Wolfrarm在详细分忻研究了一维元胞自动机的演化行为,并在大量的计算机实验的基础上,将所有元胞自动机的动力学行为归纳为四大类(Wolfram. S.,1986):, C) M* g3 ]" O0 I% \
(1)平稳型:自任何初始状态开始,经过一定时间运行后,元胞空间趋于一个空间平稳的构形,这里空间平稳即指每一个元胞处于固定状态。不随时间变化而变化。
+ U# V7 G, ^2 L2 g# e6 ^7 N (2)周期型:经过一定时间运行后,元胞空间趋于一系列简单的固定结构(Stable Paterns)或周期结构(Perlodical Patterns)。由于这些结构可看作是一种滤波器(Filter),故可应用到图像处理的研究中。) T/ o8 z% }1 ~9 c6 o9 ~
(3)混沌型:自任何初始状态开始,经过一定时间运行后,元胞自动机表现出混沌的非周期行为,所生成的结构的统汁特征不再变止,通常表现为分形分维特征。
: s0 B5 i) A4 }5 S$ k (4)复杂型:出现复杂的局部结构,或者说是局部的混沌,其中有些会不断地传播。从另一角度,元胞自动机可视为动力系统,因而可将初试点、轨道、不动点、周期轨和终极轨等一系列概念用到元胞自动机的研究中,上述分类,又可以分别描述为(谭跃进,1996;谢惠民,1994;李才伟、1997);
$ }) k7 |/ ~2 Z7 f/ y (1)均匀状态,即点态吸引子,或称不动点;: J% N0 |7 k/ r7 `! F
(2)简单的周期结构,即周期性吸引子,或称周期轨;
3 p" X1 _+ B7 H) h1 d& a/ o (3)混沌的非周期性模式,即混沌吸引子;
: h1 x% ]6 g" g (4)这第四类行为可以与生命系统等复杂系统中的自组织现象相比拟,但在连续系统中没有相对应的模式。但从研究元胞自动机的角度讲,最具研究价值的具有第四类行为的元胞自动机,因为这类元胞自动机被认为具有"突现计算"(Emergent Computation)功能,研究表明,可以用作广义计算机(Universal Computer)以仿真任意复杂的计算过程。另外,此类元胞自动机在发展过程中还表现出很强的不可逆(lrreversibility)特征,而且,这种元胞自动机在若干有限循环后,有可能会 "死"掉,即所有元胞的状态变为零。 8 U& F+ v" V4 f0 H
S·Wolfram还近似地给出了上述四种一维元胞自动机中各类吸引子或模式所占地比见 (表1-1),可以看出,具有一定局部结构的复杂模式出现的概率相对要小一些。而第三种混沌型则出现的概率最大,并且,其概率随着k和r的增大而呈现增大的趋势。
; Y4 a" u/ S& R* F7 j
这种分类不是严格的数学分类,但S·Wolfram将众多(也许所有)的元胞自动机的动力学行为归纳为数量如此之少的四类,是非常有意义的发现,对于元胞自动机的研究具有很大的指导意义。它反映出这种分类方法可能具有某种普适性,很可能有许多物理系统或生命系统可以按这样的分类方法来研究,尽管在细节上可以不同,但每一类中的行为在定性上是相同的 (谢惠民,1994)。0 h5 g5 \! |+ o2 R$ ~% |% ?
理论上,元胞自动机可以是任意维数的。那么,按元胞空间的维数分类,元胞自动机; l% Q2 J- A2 }3 f# H
通常可以分为: " ]; c Q; C5 A/ h' S
(l)一维元胞自动机:元胞按等间隔方式分布在一条向两侧无限延伸的直线上,每个元胞 (Cell)具有有限个状态s,s∈S={s1,s2,...,sk},定义邻居半径r,元胞的左右两侧共有2r个元胞作为其邻居集合N,定义在离散时间维上的转换函数f:S2r+1→S可以记为:
7 m8 A) S$ V! d ,Sit为第i个元胞在t时刻的状态。* L9 e$ ]' [2 x/ R# V! H9 e
称上述A={S,N,f}三元组(维数d≡1)为一维元胞自动机 (Amoroso,S,1972;李才伟,l997)。% q- |1 J( `: [( K* H2 z
对一维元胞自动机的系统研究最早,相对来讲,其状态、规则等较为简单,往往其所有可能的规则可以一一列出,易于处理,研究也最为深入。目前,对于元胞自动机的理论研究多集中在一维元胞自动机上。S,Wolfram对元胞自动机的动力学分类也是基于对一维初等元胞自动机 (Elementary Cellular Automata)的分析研究得出的。它的最大的一个特征在于容易实现元胞自动机动态演化的可视化:二维显示中,一维显示其空间构形,空间维;另外一维显示其发展演化过程,时间维。
3 x3 M+ l, f' x5 w- Z8 B (2)二维元胞自动机:元胞分布在二维欧几里德平面上规则划分的网格点上,通常为方格划分。以J. H. Conway的"生命游戏"为代表,应用最为广泛。由于,世界上很多现象是二维分布的,还有一些现象可以通过抽象或映射等方法,转换到二维空间上,所以,二维元胞自动机的应用最为广泛,多数应用模型都是二维元胞自动机模型。
(3) 三维元胞自动机:目前,Bays(Bays,C,1988)等人在这方面做了若干试验性工作,包括在三维空间上实现了生命游戏,延续和扩展了一维和二维元胞自动机的理论。 O) {" V( l+ p8 w: I6 a
(4)高维元胞自动机:只是在理论上进行少量的探讨,实际的系统模型较少。Lee Meeker在他的硕士论文中,进行了对四维元胞自动机的探索。
在元胞自动机是由空间上各项同性的一系列元胞所组成,是在有限元胞自动机基础上发展起来的,用于模拟和分析几何空间内的各种现象。
4 d( B4 x* h& `1 ]: j 典型的元胞自动机
) f* X1 j* S1 L: b; N0 t 在元胞自动机的发展过程中,科学家们构造了各种各样的元胞自动机模型。其中,以下几个典型模型对元胞自动机的理论方法的研究起到了极大的推动作用,因此,它们又被认为是元胞自动机发展历程中的几个里程碑。
9 ^- |+ h2 t9 ^7 i l. S. Wolfram 和初等元胞自动机
4 c9 V1 l& _4 a9 ^( z$ P5 q" ] 初等元胞自动机(Elementary Cellular Automata,简称ECA)是状态集S只有两个元素{s1,s2},即状态个数k=2,邻居半径r=l的一维元胞自动机(谢惠民,1994、李才伟,1997、Wolfram,S,1986)。它几乎是最简单的元胞自动机模型。由于在S中具体采用什么符号并不重要,它可取 {0,1},{-l,1},{静止,运动},{黑,白},{生,死}等等,这里重要的是S所含的符号个数,通常我们将其记为 {0,1}。此时,邻居集N的个数2r=2,局部映射f:S3→S可记为: F# R% n8 P9 M' }
% k5 v) [' B7 @" n" j 其中变量有三个,每个变量取两个状态值,那么就有2×2×2=8种组合,只要给出在这八个自变量组合上的值,f就完全确定了。例如以下映射便是其中的一个规则: Y) M, B& A$ K! `" O h
通常这种规则也可表示为以下图形方式 (黑色方块代表l,白色方块代表0):
2 l8 [" h2 s( S! G; e$ P! y- N8 ?, ]" \ : `% M5 o: D, l3 o4 D
这样,对于任何一个一维的0,1序列,应用以上规则,可以产生下一时刻的相应的序列。以下序列就是应用以上规则产生的: ' D; l* I+ p1 j8 p; O
t: 0101111101010111000101 X' P9 I, t2 _5 Z; x& y3 p
t+1:1010001010101010001
0 R$ N% M% ~/ d( x H
以上八种组合分别对应0或1,因而这样的组合共有28=256种,即初等元胞自动机只可能有256种不同规则。S. Wolfram定义由上述八种构形产生的八个结果组成一个二进制(注意高低位顺序),如上可得01001100,然后计算它的十进制值R:
0 N. V9 D, V" `4 v; b! F; r R 在[0,255]内,S. Wolfram定义R为初等元胞自动机的标号,则上面的元胞自动机模型就是76号初等元胞自动机 (谢惠民,1994;李才伟,1997)。 % F. u( R, H6 n- H. y% c
S. Wolfram对这256种模型一一进行了详细而深入的研究。研究表明,尽管初等元胞自动机是如此简单,但它们表现出各种各样的高度复杂的空间形态。经过一定时间,有些元胞自动机生成一种稳定状态,或静止,或产生周期性结构,那么,有些产生自组织、自相似的分形结构。S. Wolham(1983) 借用分形理论计算了它们的维数约为1.59或1.69(Wolfram,S.,1983)。但256种元胞自动机中没有一种属于S. Wolfram元胞自动机动力学分类得第四种,所谓复杂型。
4 x" B/ v. ]) U! B- t+ G S. Wolfram 对一维元胞自动机,尤其是初等元胞自动机的深入研究奠定了元胞自动机理论的基石。对元胞自动机的理论研究,以及后来的人工生命研究和近来兴起的复杂性科学 (Science of Complexity)研究作出了卓越的贡献。 " ~ F$ U! [; ^( e; U1 K
2. J. Conway 和 "生命游戏" , d4 C0 g. Q8 ^8 f0 ?9 U3 ?
生命游戏 (Came of Life)是J. H. Conway在20世纪60年代末设计的一种单人玩的计算机游戏(Garclner,M.,1970、1971)。他与现代的围棋游戏在某些特征上略有相似:围棋中有黑白两种棋子。生命游戏中的元胞有{"生","死"}两个状态 {0,1};围棋的棋盘是规则划分的网格,黑白两子在空间的分布决定双方的死活,而生命游戏也是规则划分的网格(元胞似国际象棋分布在网格内。而不象围棋的棋子分布在格网交叉点上)。根据元胞的局部空间构形来决定生死。只不过规则更为简单。下面介绍生命游戏的构成及规则 :
3 i% g! i$ K" _% r8 {4 X (1)元胞分布在规则划分的网格上;
/ u" \# B6 e [! B+ [5 _- Y- u2 g3 G8 N( E (2) 元胞具有0,1两种状态,0代表"死",l代表"生";
; K% a t$ K- o$ j& A (3) 元胞以相邻的8个元胞为邻居。即Moore邻居形式; # Y* r e: y4 l, @, e
(4) 一个元胞的生死由其在该时刻本身的生死状态和周围八个邻居的状态 (确切讲是状态的和)决定 :
, Z! a5 u8 E. E# h ·在当前时刻,如果一个元胞状态为"生",且八个相邻元胞中有两个或三个的状态为"生",则在下--时刻该元胞继续保持为"生",否则"死"去; * |. k5 O0 p6 b1 g
· 在当前时刻。如果一个元胞状态为"死"。且八个相邻元胞中正好有三个为"生"。则该元胞在下一时刻 "复活"。否则保持为"死"。
8 ]7 W8 D( m4 j' X 尽管它的规则看上去很简单。但生命游戏是具有产生动态图案和动态结构能力的元胞自动机模型。它能产生丰富的、有趣的图案。生命游戏的优化与初始元胞状态值的分布有关,给定任意的初始状态分布。经过若干步的运算,有的图案会很快消失。而有的图案则固定不动,有的周而复始重复两个或几个图案,有的婉蜒而行。有的则保持图案定向移动,形似阅兵阵……,其中最为著名的是"滑翔机 (叫Glider)"的图案。 2 _0 y/ m; ?2 m5 W8 w* E
生命游戏模型已在多方面得到应用。他的演化规则近似地描述了生物群体的生存繁殖规律:在生命密度过小(相邻元胞数之2)时,由于孤单、缺乏配种繁殖机会、缺乏互助也会出现生命危机,元胞状态值由1变为0;在生命密度过大 (相邻元胞数>3)时,由于环境恶化、资源短缺以及相互竞争而出现生存危机,元胞状态值由1变为0;只有处于个体适中(相邻元胞数为2或3)位置的生物才能生存(保持元胞的状态值为1)和繁衍后代(元胞状态值由0变为1)。正由于它能够模拟生命活动中的生存、灭绝、竞争等等复杂现象,因而得名"生命游戏"。J·H·Conway还证明,这个元胞自动机具有通用图灵机的计算能力(谢惠民,1994;李才伟,1997),与图灵机等价,也就是说给定适当的初始条件,生命游戏模型能够模拟任何一种计算机。
. x. y0 w' H4 q. c 从数学模型的角度看,该模型将平面划分成方格棋盘,每个方格代表一个元胞。 ' k( H+ p' @5 z1 m4 I( z
元胞状态:0 死亡,1- 活着
2 z* g6 |$ a9 n& w. J5 u( ] 领域半径 :1+ @7 a" p# h+ H! R7 b) P
领域类型:Moore型 0 M6 d9 s9 C! K/ _ j
其中St表示t时刻元胞的状态,S为8个相邻元胞中活着的元胞数。 0 K1 u% @9 H3 m" r9 ~! `7 j
另外,需要指出的是,目前随着人们对 "生命游戏"研究的深入,产生了许多变种和扩展。在80年代末,A·K·Dewdney (Dewdney,A·K,1987)和C·Bays (Bays,C,1987)Dewdney,A·K·,1990)将Conway的生命游戏扩展到了三维空间上,构建了三维生命游戏,并对其规则作了具有普遍性的扩展(图2-3)。C·Bays的学生Lee Meeker在此基础上进一步构建了四维的生命游戏。另外,Gardner (Gardner,M·,1970、1971、1983)等人也曾在这方面作了很多迸一步的研究工作。 + @7 b' x0 S$ A5 m* ` _' W( O
& s: `" R0 n1 Y# h8 Q# a7 `# e- Q 对游戏规则的扩展主要是引入了4个参数EbEkFbFk,Eb表示对于一个"活"元胞,在下一个时刻,继续保持其状态所需要的最少的"活"邻居的数目,而Fb则表示对于一个 "死"元胞,在下一时刻,"复活"所需要的最小的"活"邻居的数目,Ek和Fk则分别表示上述情况的上限值。演化规则修改为 , A* p' a$ i: C2 }; e1 [1 P& l
: k$ q/ i# M9 j8 M
3. 格子气自动机
. I+ c4 \7 l& n 格子气自动机 (Lattice一GasAutomata,LGA又称格气机),是元胞自动机在流体力学与统计物理中的具体化,也是元胞自动机在科学研究领域成功应用的范例 (李才伟,1997)。相对于"生命游戏"来说,格子气自动机是个更注重于模型的实用性。它利用元胞自动机的动态特征,来模拟流体粒子的运动。 0 u/ \) r6 Y, d
第一个时空、速度等变量完全离散的格子气自动机是1973年由法国的J·Hardy、Y·Pomeau和O·Pazzis提出的HPP模型,它的模拟结果已经很接近流体力学中描述流体运动的Navier-Strokes方程。但模型中的流体粒子的运动只允许有四个方向,造成应力张量各向异性的致命弱点,尚不能充分反映流体的特征,因此在较长时间内没有受到足够的重视。直到20世纪80年代,S·Wolfram等人的研究工作使得元胞自动机理论产生了质的飞跃,同时也带动了格子气自动机的进一步发展。1986年,法国的U·Frish、Y·Pomeau和美国的B·HassIacher在HPP模型的基础上提出了一个有实用价值的、基于六角形网络的格子气自动机模型,得名为FHP(Fritsch-Has,lacher-Pomeau)模型,并证明该模型的宏观行为符合标准的Navier-Stokes方程(李才伟,1997)。FHP模型是第一个成功的格子气模型,并激发了研究格子气模型研究的热潮,人们在几年内发表了数百篇论文,其中包括Gerhart(l995),Lim(1988),Xiao-Guang Wu(1994),李元香(1991)等人的进一步工作。在90年代中后期,一种被称为格点波尔兹曼方程 (Lattice Bolzmann)的改进模型逐步取代了原有的格气模型。 # u$ i, } U3 U+ F# [( V# r$ F8 i
应当说,格子气自动机是一种特殊的元胞自动机模型,或者说是一个扩展的元胞自动机模型 (Extended Cellular Automata)。以早期的格子气模型为例,描述其特征如下 :
9 `6 M" ?8 T( |* ^- ` (1)由于流体粒子不会轻易从模型空间中消失,这个特征需要格子气自动机是一个可逆元胞自动机模型。 P+ K5 U G2 G: f0 T# C) K
(2) 格子气自动机的邻居模型通常采用Margulos类型,即它的规则是基于一个2X2的网格空间的。它的规则形似如下: 7 K3 K- ~( f- ?3 H
这里黑色球代表流体粒子,白色球代表空的元胞。可以看出,格子气自动机不同于其它的元胞自动机模型,以一个元胞(常被称为中心元胞,为研究对象,考虑其状态的转换,而是考虑包含四个元胞的一个四方块。
. m. u) ^% q, ?; y) Q9 f% @ (3) 依照上述规则和邻居模型在计算完一次后,需要将这个2X2的模板沿对角方向滑动,再计算一次。那么,一个流体粒子的运动需要两步t-t+l-t+2才能完成。 $ ` N8 U0 V, ~: a
从时间和空间的角度看,格子气自动机相对其他的元胞自动机模型具有较为独特的特征。格气自动机作为一种特殊类型的元胞自动机已成为流体动力学中的一个重要领域,几乎独立于元胞自动机研究之外了。
6 L) D6 g/ g+ n 4. Langton 和“能自我复制的元胞自动机”
/ T4 ]1 a3 c. F- e6 d8 e( Y! q' n 元胞自动机是一种离散的动态模型,由于它可以模拟自组织、自繁殖、信息储存和传递等现象,因而,被广泛地应用于生命现象的研究中。目前兴起的人工生命的研究就是来源于元胞自动机的深入研究,其主要论点是认为"自我复制"乃生命的核心特征。聚集在美国新墨西哥州的圣塔费研究所(Santa Fe Institute)的科学家们在这方面作了很多深入的工作,最著名的成果之一就是Christopher Langton在二维元胞自动机中发现的一个能自我复制的"圈"或称"能自我复制的元胞自动机"(谭跃进等,1996; Longton,C·G·,1987)。当然,他的研究是基于先前一系列研究的基础上的 :. L, t' B" m: m/ q
Langton在von Neumann和Codd工作的基础上,设计了一个能自我复制的"圈"。元胞状态在 (0,1,2,3,4,5,6,7)中取值,其中,0,1,2,3构成元胞自动机的基本结构,04,05,06,07代表信号。l代表"核"元胞;2代表"壳"元胞,是边界;2包围的部分构成信息通道或称数据路径。邻居模型采用Von Neumann的4邻居模型。 7 ~' z, t0 v6 h: F) W! M
元胞自动机通过信号元胞替代相邻的元胞,如状态为1的元胞,而完成信号传递。信号传播的过程可以通过下面的例子说明:
/ z5 l/ f2 X- _1 @! _9 M; Q( B- C
& x$ w3 Q O1 V# @& C. h) i 数据路径可以分支,在分支的节点处,信号在各个分支中复制本身,产生多个复制品。
- D3 B" Y! t' }9 R- X% f# M 下图中,07信号在T形的交叉点处,复制自身:
: W$ v6 X$ o5 J2 _
9 o% i# c! i' I7 u1 Q 这个元胞自动机模型的另外一个重要特征就是路径扩张。即一定的信号可以产生数据路径的延伸,如下图所示:
: g& Q- B* Q5 L: l* k " ?# ^; l' G" P5 T6 c/ e5 l2 w
有了上面的论述,下面的具有路径扩张的、能自我复制的"圈"的工作机理应当容易理解了。
1 ~: B: R+ v9 Z# k; C# G 元胞自动机 (Cellular Automata ,简称 CA ,也有人译为细胞自动机、点格自动机、分子自动机或单元自动机 ) 。是一时间和空间都离散的动力系统。散布在规则格网 (Lattice Grid) 中的每一元胞 (Cell) 取有限的离散状态,遵循同样的作用规则,依据确定的局部规则作同步更新。大量元胞通过简单的相互作用而构成动态系统的演化。不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是用一系列模型构造的规则构成。凡是满足这些规则的模型都可以算作是元胞自动机模型。因此,元胞自动机是一类模型的总称,或者说是一个方法框架。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。 ; s" p: h- ~5 c
1. 自动机
: T' g2 e6 r( R5 v 自动机(Automaton)通常指不需要人们逐步进行操作指导的设备(夏培肃,1984)。例如,全自动洗衣机可按照预先安排好的操作步骤作自动地运行;现代计算机能自动地响应人工编制的各种编码指令。完成各种复杂的分析与计算;机器人则将自动控制系统和人工智能结合,实现类人的一系列活动。另一方面,自动机也可被看作为一种离散数字动态系统的数学模型。例如,英国数学家A.M.Turing于1936年提出的图灵机就是一个描述计算过程的数学模型(TuringA M.,1936)。它是由一个有限控制器、一条无限长存储带和一个读写头构成的抽象的机器,并可执行如下操作 : }, k I1 B6 \; Q* b! }6 G
·读写头在存储带上向左移动一格 ;4 y m; W: X. R, P# @# \
·读写头在存储带上向右移动一格 ;- k. D" I! @! t6 S1 u
·在存储的某一格内写下或清除一符号 ;% Q0 D. e$ \5 V; D+ w
·条件转移。 ( y' o1 f4 y J" g( [9 L. F
图灵机在理论上能模拟现代数字计算机的一切运算,可视为现代数字计算机的数学模型。实际上,一切"可计算"函数都等价于图灵机可计算函数,而图灵机可计算函数类又等价于一般递归函数类。 4 ?$ {4 |3 f% T8 _2 }& J1 P6 P
根据存储带是否有限,可将自动机划分为有限带自动机(Finite Automaton)和无限带自动机(Infinite Automaton)。由于图灵机有无限长的存储带,所以为一种无限带自动机。有限带自动机常用作数字电路的数学模型,也用来描述神经系统和算法;而无限带自动机主要用来描述算法,也用来描述繁殖过程 (如细胞型自动机和网络型自动机)。 / x1 Y# k) d; B) `. e" o. \9 m6 z5 J
有限自动机是一种控制状态有限、符号集有限的自动机,是一种离散输入输出系统的数学模型。可将有限自动机设想成由一条划分为许多方格的输入带和一个控制器组成的机器:在输入带的每一个小格中可以容纳一个符号,这些符号取自一个有限符号集S-控制器具有有限个可能状态(构成集合Q)。并在每一时刻仅处于其中的一个状态q;控制器有一个读入头,可以从输入带中读入符号;时间是离散的,初始时控制器处在状态;控制器的功能是根据其当前状态g和读入头从输入带上得到的符号a,来确定控制器的下一时刻的状态实现从状态q到状态q',实现从状态q到状态铲q'的转移,并将读入头右移一格。控制器另一功能是识别终止状态(它们构成Q的一个子集F),也可将该识别功能视为有限自动机的输出。+ L/ D6 X0 F; m
从数学上来定义,有限自动机是一个五元组: 8 L0 P. v" b+ D1 L
FA=(Q ,S,δ,q0,F)
% q( m6 S" Q* l, z0 n, V, N 其中, Q 是控制器的有限状态集、 S 是输入符号约有限集、 δ 是控制状态转移规律的 Q×S 到 Q 的映射 ( 可用状态转移图或状态转移表表示 ) , q0 是初始状态、 F 是终止状态集。若 δ 是单值映射,则称 M 为确定性有限自动机 ; 若 δ 是多值映射,则称 M 为非确定性 有限自动机。
) f$ r) W- W) j/ b8 d 尽管元胞自动机有着较为宽松,甚至近乎模糊的构成条件。但作为一个数理模型,元胞自动机有着严格的科学定义。同时,元胞自动机是一个地地道道的"混血儿"。是物理学家、数学家,计算机科学家和生物学家共同工作的结晶。因此。对元胞自动机的含义也存在不同的解释,物理学家将其视为离散的、无穷维的动力学系统;数学家将其视为描述连续现象的偏微分方程的对立体,是一个时空离散的数学模型;计算机科学家将其视为新兴的人工智能、人工生命的分支;而生物学家则将其视为生命现象的一种抽象。下面给出几种常见的定义:
) O" I# ~! r/ l$ [ 1. 元胞自动机的物理学定义 ) v6 Q" K) j3 r& \
元胞自动机是定义在一个由具有离散、有限状态的元胞组成的元胞空间上,并按照一定局部规则,在离散的时间维上演化的动力学系统。 $ K( @* t$ |# M! g2 S
具体讲,构成元胞自动机的部件被称为"元胞",每个元胞具有一个状态。这个状态只琵取某个有限状态集中的一个,例如或"生"或"死",或者是256中颜色中的一种,等等;这些元胞规则地排列在被你为"元胞空间"的空间格网上;它们各自的状态随着时间变化。而根据一个局部规则来进行更新,也就是说,一个元胞在某时刻的状态取决于、而且仅仅家决于上一时刻该元胞的状态以及该元胞的所有邻居元胞的状态;元胞空间内的元胞依照这样的局部规则进行同步的状态更新,整个元胞空间则表现为在离散的时间维上的变化。 . c# |/ j- l0 ~
2. 元胞自动机的数学定义 6 k/ w. e2 ]- j
B) {8 d7 Z' A$ a, S+ @ 美国数学家L.P.Hurd和K·Culik等人在90年代初,对元胞自动机分别从集合论和拓扑学等角度进行了严格地描述和定义 (谢惠民,1994; Culik,II K,1990;李才伟,1997)
$ y, z/ |) t$ H# n; l- g7 B% T4 c 1) 基于集合论的定义 . @; l* f* m' o7 e4 G# e
设d代表空间维数,k代表元胞的状态,并在一个有限集合S中取值,r表元胞的邻居半径。Z是整数集,表示一维空间,t代表时间。 / P' W7 ]% G; b T& t6 w; C
为叙述和理解上简单起见,在一维空间上考虑元胞自动机,即假定d=1。那么整个元胞空间就是在一维空间,将整数集Z上的状态集S的分布,记为SZ。元胞自动机的动态演化就是在时间上状态组合的变化,可以记为 :6 N1 R4 J1 N. N" A& q( b
* E" ]4 _* H1 l5 C& k8 w 这个动态演化又由各个元胞的局部演化规则f所决定的。这个局部函数f通常又常常被称为局部规则。对于一维空间,元胞及其邻居可以记为S2r+1,局部函数则可以记为 :3 k% B9 ?* @3 @: p# g
+ R9 ?0 K$ C# b/ I
对于局部规则f来讲,函数的输入、输出集均为有限集合,实际上。它是一个有限的参照表。例如,r=1,f的形式则形似如下:[0,0,0]->O; [0,0,1]->0; [0,1,0]->1; [1,0,0]->0; [0,1,1]->1; [1,0,1]->0; [1,1,0]->0; [1,1,1]->0对元胞空间内的元胞,独立施加上述局部函数,则可得到全局的演化 :
: E: i1 E. Y, }3 R4 s
9 q$ Z! w$ S; K5 P$ n cit 表示在位置i处的元胞,至此,我们就得到了一个元胞自动机模型。 + p; `; }) {) E5 j+ J
2) 元胞自动机的拓扑学定义 $ U! l. i2 J4 e6 J
为描述和理解方便。同样假定维数d为1。设S为k个符号约有限集。Z为整数全体的集台,称Z到S的映射的全体SZ为构形空间。显然SZ就是用S中的符号组成的双侧无限的符号序列的全体,即一维元胞自动机的所有构形的集合。称a=(…a-1a0a1,...)为构形空间中的点。
* B7 m- F3 m: O( ]/ n 在SZ中引进任意两点x和y之间的距离 " J+ ~* G; h, _2 N0 ]' t) \
$ y, i- @) G, f" U3 m9 |% w
其中当xi=yi时δ(xi,yi)=0,当xi≠yi时δ(xi,yi)=1。然后。在SZ中可以建立起开、闭、紧等拓扑概念。
# ^& f6 b( n' E/ @. ? 在SZ中定义移位算子δ为δ(xi)=xi-1,i∈Z。若连续映射F:SZ->SZ产与δ可交换,即Fδ=δF。或对任意的x∈SZ有F((δ(x))=δ(F(x)),则称F为元胞自动机 (谢惠民,1994)。
: x) S0 ]! W! F4 W) r# @: _ 对于以上定义,我们很容易将它扩展到一个任意维空间,所要做的工作只是将SZ记为SZ^d,S2r+1记为S(2r+1)^d等,同时对一些描述作相应改变即可。 2 M1 D2 l0 m% g$ C; _6 Z& A& L4 ?# M
元胞自动机的构成 5 q& |1 E8 k P8 q
元胞自动机最基本的组成元胞、元胞空间、邻居及规则四部分。简单讲,元胞自动机可以视为由一个元胞空间和定义于该空间的变换函数所组成。 : m8 | l; w$ Y* I8 i; o$ g, Z& x
0 T9 [9 |6 K2 G5 P3 J9 a6 B0 ? 1. 元胞 " h/ l* ~' L# Y7 d( W
元胞又可称为单元。或基元,是元胞自动机的最基本的组成部分。元胞分布在离散的一维、二维或多维欧几里德空间的晶格点上。 ! J! ~5 T8 S: U3 G' y$ I# O
2. 状态 * J( o! j/ y/ `( r5 N# p
状态可以是{0,1}的二进制形式。或是{s0,s2,……si……sk}整数形式的离散集,严格意义上。元胞自动机的元胞只能有一个犬态变量。但在实际应用中,往往将其进行了扩展。例如每个元胞可以拥有多个状态变量。李才伟(1997)在其博士论文工作中,就设计实现了这样一种称之为"多元随机元胞自动机"模型。并且定义了元胞空间的邻居(Neighbor)关系。由于邻居关系,每个元胞有有限个元胞作为它的邻居 ;
+ p! p- _" u# V( L* o 3.元胞空间 (Lattice)2 M/ g2 L' O# P% C( N
元胞所分布在的空间网点集合就是这里的元胞空间。 7 ~/ e/ d# w" z- r- z) s2 ^' m, \
(l) 元胞空间的几何划分:理论上,它可以是任意维数的欧几里德空间规则划分。目前研究多集中在一维和二维元胞自动机上。对于一维元抱自动机。元胞空间的划分只有一种。而高维的元胞自动机。元胞空间的划分则可能有多种形式。对于最为常见的二维元胞自动机。二维元胞空间通常可按三角、四万或六边形三种网格排列 (图2-5)。 ' ]. {( S) c8 e
4 y: Q7 w% \: a: ?. G! s4 L 这三种规则的元胞空间划分在构模时各有优缺点 :
- O, H5 T+ h6 x. \4 ]5 o& Y 三角网格的优点是拥有相对较少的邻居数目,这在某些时候很有用;其缺点是在计算机的表达与显示不方便,需要转换为四方网格。
: D' z, w8 o& F 四方网格的优点是直观而简单,而且特别适合于在现有计算机环境下进行表达显示;其缺点是不能较好地模拟各向同性的现象,例如后面提到的格子气模型中的HPP模型。 0 ~7 F+ d0 p v7 u
六边形网格的优点是能较好地模拟各向同性的现象,因此,模型能更加自然而真实,如格气模型中的FHP模型;其缺点同三角网格一样,在表达显示上较为困难、复杂。
( a' g, Y; X- a3 ]9 k (2) 边界条件:在理论上,元胞空间通常是在各维向上是无限延展的,这有利于在理论上的推理和研究。但是在实际应用过程中,我们无法在计算机上实现这一理想条件,因此,我们需要定义不同的边界条件。归纳起来,边界条件主要有三种类型:周期型、反射型和定值型。有时,在应用中,为更加客观、自然地模拟实际现象,还有可能采用随机型,即在边界实时产生随机值。
: j- e3 i- u& E# m4 ] 周期型(Pehodic Boundary)是指相对边界连接起来的元胞空间。对于一维空间,元胞空间表现为一个首尾相接的"圈"。对于二维空间,上下相接,左右相接。而形成一个拓扑圆环面 (Torus),形似车胎或甜点圈。周期型空间与无限空间最为接近,因而在理论探讨时,常以此类空间型作为试验。 ! u$ ?9 K9 Y9 D* t
反射型(Reflective Boundary)指在边界外邻居的元胞状态是以边界为轴的镜面反射。例如在一维空间中,当r=1时的边界情形 :
9 w; @! u) }. q( d! l3 P, E
9 ~( C0 `* v# V6 ] 定值型 (Constant Boundary)指所有边界外元胞均取某一固定常量,如0,1等。 & L6 M3 x* t5 P1 C" r" Z
需要指出的是,这三种边界类型在实际应用中,尤其是二维或更高维数的构模时,可以相互结合。如在二维空间中,上下边界采用反射型,左右边界可采用周期型 (相对边界中。不能一方单方面采用周期型)。
7 ~* T" E& a6 x' } (3) 构形:在这个元胞、状态、元胞空间的概念基础上,我们引入另外一个非常重要的概念,构形(Configuration)。构形是在某个时刻,在元胞空间上所有元胞状态的空间分布组合。通常。在数学上,它可以表示为一个多维的整数矩阵。 * ]' c4 l! ~4 Y( k
4. 邻居 (Neighbor)
* q D3 T8 p: |6 C# l5 K) [3 [ 以上的元胞及元胞空间只表示了系统的静态成分,为将"动态"引入系统,必须加入演化规则。在元胞自动机中,这些规则是定义在空间局部范围内的,即一个元胞下一时刻的状态决定于本身状态和它的邻居元胞的状态。因而,在指定规则之前,必须定义一定的邻居规则,明确哪些元胞属于该元胞的邻居。在一维元胞自动机中,通常以半径,来确定邻居,距离一个元胞,内的所有元胞均被认为是该元胞的邻居。二维元胞自动机的邻居定义较为复杂,但通常有以下几种形式(我们以最常用的规则四方网格划分为例)。见图2-6,黑色
. T, e) v: Q* B* F0 t/ \, Z 元胞为中心元胞,灰色元胞为其邻居,它们的状态一起来计算中心元胞在下一时刻的状态。
+ ~/ S" P, c5 O ) r- i# M1 U$ v( {: g/ i
l) 冯-诺依曼(Von. Neumann)型 1 _; U. q3 `( ^! S7 l
一个元胞的上、下、左、有相邻四个元胞为该元胞的邻居。这里,邻居半径r为1,相当于图像处理中的四邻域、四方向。其邻居定义如下 :
f& D3 b0 c( t1 T# ]
& N, S) @# `+ U' [0 X vixviy 表示邻居元胞的行列坐标值,vox表示中心元胞的行列坐标值。此时,对于四方网格,在维数为d时,一个元胞的邻居个数为2d。 3 B( H' M* E+ H9 Y+ U: D) f
3 Q- Q* s4 M# a) f* e3 G
2) 摩尔(Moore)型
/ J& w+ `' X, p$ v, C 一个元胞的上、下、左、右、左上、右上、右下、左下相邻八个元胞为该元胞的邻居。邻居半径r同样为1,相当于图像处理中的八邻域、八方向。其邻居定义如下 :. U. U4 _5 |. d! ]0 @. S
9 f9 `8 ^+ }3 ~- Q
vixviyvox 意义同前。此时,对于四方网格,在维数为d时。一个元胞的邻居个数为 (3d-1)。 1 e) D0 `3 X [/ t5 g1 b% G
3) 扩展的摩尔(Moore)型 ! G6 H2 h. w. S- ^$ D+ |7 e% @, E" |) }
将以上的邻居半径r扩展为2或者更大,即得到所谓扩展的摩尔型邻居。其数学定义可以表示为 :
2 |* K/ c" a* E% B5 B7 o * D4 t; o! m* z T8 v& R5 Y7 F
此时,对于四方网格,在维数为d时,一个元胞的邻居个数为 ((2r十1)d-1)。 $ |1 I4 F% R* a c
4) 马哥勒斯 (Margolus)型
7 T- ^, X% E7 w3 R3 B0 L+ l 这是一种同以上邻居模型迥然不同的邻居类型,它是每次将一个2x2的元胞块做统一处理,而上述前三种邻居模型中,每个元胞是分别处理的。这种元胞自动机邻居是由于格子气的成功应用而受到人们关注的,关于这种邻居模型的详细介绍,请参照本文对格子气动机的介绍。 ( u2 O, U9 h2 @" K, t
5. 规则 (Rule)
4 U- N! o+ w; V4 ^9 S' @ 根据元胞当前状态及其邻居状况确定下一时刻该元胞状态的动力学函数,简单讲,就是一个状态转移函数。我们将一个元胞的所有可能状态连同负责该元胞的状态变换的规则一起称为一个变换函数 (史忠植,1998)。这个函数构造了一种简单的、离散的空间/时间的局部物理成分。要修改的范围里采用这个局部物理成分对其结构的"元胞"重复修改。这样,尽管物理结构的本身每次都不发展。但是状态在变化(史忠植,1998)。它可以记为f: sit+1=f(sit,sNt),sNt为t时刻的邻居状态组合,我们称f为元胞自动机的局部映 ( K* s2 P4 V: m% j( o0 f8 Z
射或局部规则 (谢惠民,1994)。
2 |# o @( c3 @1 D3 M# a 6. 时间 (Time)
, g3 Q1 _) }8 x! J* I 元胞自动机是一个动态系统,它在时间维上的变化是离散的,即时间f是一个整数值,而且连续等间距。假设时间间距dt=1,若t=O为初始时刻。那么。t=1为其下一时刻。在上述转换函数中,一个元胞在t十1的时刻只(直接)决定于t时刻的该元胞及其邻居元胞的状态,虽然,在t-1时刻的元胞及其邻居元胞的状态间接(时间上的滞后)影响了元胞在t+1的时刻的状态。
+ @9 X. D* |3 b6 _ 由以上对元胞自动机的组成分析,我们可以更加深入地理解元胞自动机的概念。用数学符号来表示,标准的元胞自动机是一个四元组 (Amoroso,S., 1972):. C$ n2 d- @8 F2 K2 c
A=(Ld,S,N,f), x9 N$ D1 T- U7 g, X
这里A代表一个元胞自动机系统;L表示元胞空间,d是一正整数,表示元胞自动机内元胞空间的维数;S是元胞的有限的、离散的状态集合;N表示一个所有邻域内元胞的组合(包括中心元胞),即包含n个不同元胞状态的一个空间矢量,记为 :& s9 M- \5 g# I2 S& U
N=(s1,s2,...,sn)
& `: U) F7 w- Z! _ n是元胞的邻居个数。si∈Z(整数集合),i∈{1,...,n};f表示将Sn映射到S上的一个局部转换函数。所有的元胞位于d维空间上,其位置可用一个d元的整数矩阵Zd来确定。
- w; |8 O, u& X. ~ 元胞自动机的一般特征
* Q- [( Q( Q m6 o' h+ q 从元胞自动机的构成及其规则上分析,标准的元胞自动机应具有以下几个特征(谢惠民,1994;李才伟,1997): $ f' u9 Q. F& Z# n) O
(1) 同质性、齐性,同质性反映在元胞空间内的每个元胞的变化都服从相同的规律,即元胞自动机的规则,或称为转换函数;而齐性指的是元胞的分布方式相同,大小、形状相同,空间分布规则整齐 ;6 u4 H# H2 ]5 f) E, I0 c* R
(2)空间离散:元胞分布在按照一定规则划分的离散的元胞空间上 ;
4 ^( ?( k( C( i( {& ~ (3)时间离散:系统的演化是按照等间隔时间分步进行的,时间变量t只能取等步长的时刻点,形似整数形式的t0,t十l,t十2…,而且,t时刻的状态构形只对其下一时刻,即t+1时刻的状态构形产生影响,而t+2时刻的状态构形完全决定于t+1的状态构形及定义在上面的砖换函数。元胞自动机的时间变量区别于微分方程中的时间变量t,那里t通常是个连续值变量;
9 x. g* e$ G& o$ M$ {3 a: g (4) 状态离散有限:元胞自动器的状态只能取有限(k)个离散值(s1,s2,...,sk)。相对于连续状态的动力系统,它不需要经过粗粒化处理就能转化为符号序列。而在实际应用中,往往需要将有些连续变量进行离散化,如分类,分级,以便于建立元胞自动机模型 ;
4 j0 `, R: c7 _# e, V (5)同步计算(并行性):各个元胞的在时刻ti+1的状态变化是独立的行为,相互没有任何影响。若将元胞自动机的构形变化看成是对数据或信息的计算或处理,则元胞自动机的处理是同步进行的,特别适合于并行计算 ;- D! x( `# f7 M9 y
(6)时空局部性:每一个元胞的下一时刻ti+1的状态,取决于其周围半径为r的邻域(或者其它形式邻居规则定义下的邻域)中的元胞的当前时刻ti的状态,即所谓时间、空间的局部性。从信息传输的角度来看,元胞自动机中信息的传递速度是有限的 ;1 p+ v# M+ ]. a* d+ P
(7)维数高:在动力系统中一般将变量的个数成为维数。例如,将区间映射生成的动力系统称为一维动力系统;将平面映射生成的动力系统称为二维动力系统;对于偏微分方程描述的动力系统则称为无穷维动力系统。从这个角度来看,由于任何完备元胞自动机的元胞空间是定义在一维、二维或多维空间上的无限集,每个元胞的状态便是这个动力学系统的变量。因此,元胞自动机是一类无穷维动力系统。在具体应用中或计算机模拟时当然不可能处理无限个变量,但一股也总是处理数量很大的元胞组成的系统。因此可以说维数高
% j$ A( U8 K" G- R4 i/ o 是元胞自动机研究中的一个特点。
( R2 j" @( r9 j' d8 ~1 r1 S9 j 在实际应用过程中,许多元胞自动机模型已经对其中的某些特征进行了扩展,例如圣托斯兰州立大学 (San Tose State University) 研究的所谓连续型的元胞自动机,其状态就是连续的。但正如我们在元胞自动机的概念分析中指出的,在上述恃征中,同质性、并行性、局部性是元胞自动机的核心恃证,任何对元胞自动机的扩展应当尽量保持这些核心特征,尤其是局部性特征。 8 [; w, O% w, C2 D
! o' A7 V1 q' V3 |
元胞自动机与相关理论和方法的发展有着千丝万缕的联系,一方面,元胞自动机的发展得益于相关理论的研究,如逻辑数学、离散数学、计算机中的自动机理论,图灵机思想;另一方面,元胞自动机的发展也促进了一些相关学科和理论(如人工智能、非线性科学、复杂性科学)的发展,甚至还直接导致了人工生命科学的产生。另外,在表现上,元胞自动机模型还与一些理论方法存在着较大的相似性,或者相对性。下面,我们对元胞自动机的一些相关理论方法,以及它们与元胞自动机模型的关系进行简要讨论。
6 \* }$ F/ X0 \/ @ 1. 元胞自动机与人工生命研究 2 Q: k+ z8 e+ k6 C) R
人工生命是90年代才刚刚诞生的新生科学,是复杂性科学研究的支柱学科之一。人工生命是研究能够展示自然界生命系统行为特征的人工系统的一间科学,它试图在计算机、机器人等人工媒体上仿真、合成和生物有机体相关联的一些基本现象,如自我复制、寄生、竞争、进化、协作等,并研究和观察"可能的生命现象"(Life-as-it-could-be),从而使人们能够加深理解"已知的生命现象"(Life-as-we-know-it)(Longton,C·G·,1987;吴建兵,1998)。 ( R0 x0 s$ r3 ]7 k
元胞自动机是人工生命的重要研究工具和理论方法分支,兰顿(Christopher Langton)等人正是基于对元胞自动机的深入研究提出和发展了人工生命。同时,人工生命的发展又为元胞自动机赋予了新的涵义,元胞自动机模型得到科学家们的重新认识和认可,并在90年代又一次成为科学研究的前沿课题,其理论和方法得到进一步的提高。另外,元胞自动机与其他的人工生命研究方法有着很大的相似性。元胞自动机模型与神经网络、遗传算法等其他人工生命方法一样,都是基于局部的相互作用,来研究系统的整体行为。另外,元胞自动机、神经网络、L—系统都可以归为非线性动力学中的网络动力学模型,它们相互联系,关系密切。目前,一种被称为元胞神经网络(Cellular Neural Network,简称CNN)的模型就是元胞自动机与神经网络结合的产物。- O/ T( `4 Y# i- F0 q
2. 元胞自动机与"混沌的边缘" / d, |, Z- N! _+ u' U9 B6 Y+ B. L
" 混沌的边缘 (On the Edge of Chaos)(Langton C. G.,1992;M. Waldrop,1997)"是当前复杂性科学研究的一个重要成果和标志性口号,为圣塔菲(Santa Fee)学派的旗帜。所谓的"混沌"并非科学意义上的"混沌",而是Chaos本身的原有涵义,即与有序相对的"混乱"、"无序"的概念。因此,"混沌的边缘"应当被理解为"混乱的边缘"。或"无序的边缘",而与混沌动力学的"混沌"没有直接联系。其实,"混沌的边缘"完整的含义是指:生命等复杂现象和复杂系统存在和产生于"混沌的边缘"。有序不是复杂,无序同样也不是复杂,复杂存在于无序的边缘。 - e% X3 p3 S+ D6 r S
" 混沌的边缘"这个概念是Norman Packard和Chhstopher Langton在对元胞自动机深入研究的基础上提出的,在此我们予以简要介绍。 4 E0 Q/ \! i& z, S5 e% n" E$ [
Langton 在对S. Wolfram动力学行为分类的分析和研究基础上,提出"混沌的边缘"这个响亮的名词,认为元胞自动机,尤其是第四类元胞自动机是最具创造性动态系统--复杂状态,它恰恰界于秩序和混沌之间,在大多数的非线性系统中,往往存在一个相应于从系统由秩序到混沌变化的转换参数。例如,我们日常生活中的水龙头的滴水现象,随着水流速度的变化而呈现不同的稳定的一点周期、两点或多点周期乃至混沌、极度紊乱的复杂动态行为,显然,这里的水流速度。或者说水压就是这个非线性系统的状态参数。Langton则相应地定义了一个关于转换函数的参数,从而将元胞自动机的函数空间参数比。该参数变化时,元胞自动机可展现不同的动态行为,得到与连续动力学系统中相图相类似的参数空间,Langton的方法加下 (谭跃进, 1996):1 _8 p% M O! V
首先定义元胞的静态(Quiescent State)。元胞的静态具有这样的特征,如果元胞所有领域都处于静态。则该元胞在下一时刻将仍处于这种静态(类似于映射中的不动点)。现考虑一元胞自动机,每个元胞具有k种状态(状态集为Σ),每个元胞与n个相邻元胞相连。则共存在kn种邻域状态。选择k种状态中任意一种s∈Σ并称之为静态sq。假设对转换函数而言,共有nq种变换将邻域映射为该静态,剩下的kn-nq种状态被随机地、均匀地映射为Σ-{sq} 中的每一个状态。则可定义 :' j5 D- S6 l- C0 ?3 v2 K, T
" |$ C% q$ E& x7 n! i 这样,对任意一个转换函数。定义了一个对应的参数值λ。随着参数λ由0到1地变化,元胞自动机的行为可从点状态吸引子变化到周期吸引子,并通过第四类复杂模式达到混沌吸引子因此,第四类具有局部结构的复杂模式处于。秩序"与"混沌"之间,被称之为"混沌的边缘",在上述的参数空间中。元胞自动机的动态行为(定性1具有点吸引于十周期吸引子->"复杂模式"->混沌吸引子这样的演化模式。同时,它又给元胞自动机的动力学行为的分类赋予了新的意义:即λ低于一定值(这里约为0.6),那么系统将过于简单。换句话说,太多的有序而使得系统缺乏创造性;另外一个极端情况,λ接近1时。系统变的过于紊乱,无法找出结构特征;那么,λ只有在某个值附近,所谓"混沌的边缘",系统使得极为复杂。也只有在此时,"生命现象"才可能存在。在这个基础上,兰顿提出和发展了人工生命科学。在现代系统科学中。耗散结构学指出"生命"以负墒为生,而Langton则创造性的提出生命存在于"混沌的边缘"。从另外一个角度对生命的复杂现象进行了更深层次 0 f2 E: N/ F% F [- S/ _. Z
探讨的。
+ i# i- e L: L& a8 E' b 3. 元胞自动机与微分方程 ; R! F3 z/ s; A3 @4 m
微分方程有着三百多年的发展历史。一批伟大的科学家,如Euler、Caus。Langrange、Laplace、Poisson都作出了卓越的贡献。而且,后来发展的偏微分万程对量子力学等现代物理学的产生相发展有着重要的意义,一大批的物理规律就是利用偏微分方程来惟理和表达的,如麦克斯维方程等。恩格斯还指出“自然界的统一性,显示在关于各种现象领域的微分方程的 '惊人类似'之中"。总之,微分方程是现代科学的语言,也是科学研究中最为重要的研究工具之一。
) f' `- v. C# g9 w- ? 微分方程的主要特点是时间、空间均连续(如果方程中有空间因子的话),这是建立在时空连续的哲学认识基础上的。而元胞自动机则是完全的空间离散、时间离散,在这个意义上,微分方程和元胞自动机一对相对的计算方法 (Toffoli.T.,1987)。
' p: ?( i+ Y9 T 在人工计算的情况下。由符号组成的(偏)微分方程可以灵活地进行约简等符号运算,而得到精确的定量解。这是其优势。但在现代计算机日益发展,已成为我们科学研究的重要工具时,微分方程却遇到了一个尴尬的问题。即计算机是建立在离散的基础上的,微分方程在计算时不得不对自身进行时空离散化,建立差分方程等;或者展开成幂系列方程,截取部分展开式;或者采用某种转换用离散结构来表示连续变量。这个改造过程不仅是繁杂的,甚至是不可能解决的,但最重要的是在这个过程中,微分方程也失去了它的自身最重
% f9 D- d& t9 Q: { 要的特性----精确性、连续性。
' L; s) T" s+ J! g, k7 D 而对于元胞自动机来讲,脱离计算机环境来进行运算几乎是不可能的,但是借助计算机进行计算,则非常自然而合理,甚至它还是下一代并行计算机的原型。因此,在现代计算机的计算环境下,以元胞自动机为代表的离散计算方式在求解方面,尤其是动态系统模拟方面有着更大的优势。元胞自动机虽然在理论上具备计算的完备性,但满足特定目的构模尚无完备的理论支持,其构造往往是一个直觉过程。用元胞自动机得到一个定量的结果非常困难,即便是可能的话,元胞自动机也将陷入一个尴尬,元胞自动机的状态、规则等
- O4 G( t6 J$ K6 c6 P 构成必然会复杂化,从而不可避免地失去其简单、生动的特性。 3 B+ F9 j3 m# M
然而,证如物理学家玻尔所说,"相对的并不一定是矛盾的,有可能是相互补充和相互完善的"。二者互有优缺点,相互补充,都有其存在的理由。但在现代计算机环境下,对于元胞自动机这一类相对来讲还处于幼年阶段的离散计算方式,需要予以更多的关注和支持。在地理学中,Lowry、Wilson、张新生(张新生,1997)等人的空间动力学模型都是基于微分方程的模型,由于这些模型大多是复杂的非线性微分方程,无法求得其解析解,需要按Euler方法或Runge-Kutta方法对微分方程进行一步或多步差分,完成相应的计算机模型或在GIS支持下的空间分析模型。对于这些模型,我们都可以构建相应的元胞自动机模型。
6 x8 \ M, g b3 ~3 Q 4. 元胞自动机与分形分维
: L+ n% w8 g9 z: y: y+ Q' S4 |+ O C 元胞自动机与分形分维理论有着密切的联系。元胞自动机的自复制、混沌等特征,往往导致元胞自动机模型在空间构形上表现出自相似的分形特征,即元胞自动机的模拟结果通常可以用分形理论来进行定量的描述。同时,在分形分维的经典范例中,有些模型本身就是,或者很接近元胞自动机模型,例如下面我们提到的凝聚扩散模型,因此,某些元胞自动机模型本身就是分形动力学模型。但是,究其本质,元胞自动机与分形理论有着巨大的差别。 - _$ s- R3 |! q& |
元胞自动机重在对想象机理的模拟与分析;分形分维重在对现象的表现形式的表达研究。元胞自动机建模时,从现象的规律入手,构建具有特定涵义的元胞自动机模型;而分形分维多是从物理或数学规律、规则构建模型,而后应用于某种特定复杂现象,其应用方式多为描述现象的自相似性和分形分维特征。然而,这些分数维究竟能够给我们提供多少更有价值的信息?分形理论的进一步应用问题尚末得到解决 (仪垂祥,1995)。
5 b! O9 S; o# r- ?; L p6 ]9 v 此外,两者都强调一个从局部到整体的过程,但在这个过程的实质上,二者却存在巨大的差异。分形论的精髓是自相似性。这种自相似性不局限于几何形态而具有更广泛更深刻的含义;它是局部 (部分)与整体在形态、功能、信息和结构特性等方面而具有统计意义上的相似性。因此,分形理论提供给我们分析问题的方法论就是从局部结构推断整体特征(陈述彭,1998)。相反,元胞自动机的精华在于局部的简单结构在一定的局部规则作用下,所产生的整体上的"突现"性复杂行为;即系统 (整体)在宏观层次上,其部分或部分的加和所不具有的性质(谭跃进等,1996)。因此,分形理论强调局部与整体的相似性和相关性,但元胞自动机重在表现"突现"特征,即局部行为结构与整体行为的不确定性、非线性关系。 W, ]* n a1 o
5. 元胞自动机与马尔科夫(链)过程
1 ]4 P0 L, G. n8 j4 M 马尔科夫过程(MarKov Process)是一个典型的随机过程。设X(t)是一随机过程,当过程在时刻t0所处的状态为已知时,时刻t(t>t0)所处的状态与过程在t0时刻之前的状态无关,这个特性成为无后效性。无后效的随机过程称为马尔科夫过程。马尔科夫过程中的时同和状态既可以是连续的,又可以是离散的。我们称时间离散、状态离散的马尔科夫过程为马尔科夫链。马尔科夫链中,各个时刻的状态的转变由一个状态转移的概率矩阵控制。
; w4 \4 C# H. x0 y' g1 y! e 马尔科夫链与元胞自动机都是时间离散、状态离散的动力学模型,二者在概念上有一定的相通性。尤其是对于随机型的元胞自动机来讲,每个元胞的行为可以视为一个不仅时间上无后效,而且在空间上无外效的马尔科夫链。
1 w1 S, Y& w1 K. R1 r: a$ K& s5 M7 q 但是,即使是随机型的元胞自动机也与马尔科夫链存在相当大的差别。首先,马尔科夫链没有空间概念,只有一个状态变量;而元胞自动机的状态量则是与空间位置概念紧密相关的;其次,马尔科夫链中的状态转移概率往往是预先设定好的,而随机型元胞自动机中的元胞状态转移概率则是由当前元胞的邻居构型所决定的。
* l' G/ J, U' N/ A 6. 元胞自动机、随机行走模型和凝聚扩散模型 2 [7 M! `& x0 v$ A
随机行走模型(Random Walk Model)模拟的是统计数学中提供"最可能状态"常用的数学模型。它的基本思想为:给定空间中的一个粒子:它在空间中的移动矢量 (包括方向和距离)是由跃迁概率的随机量所控制,由此可以模拟诸如自然界中的分子布朗运动、电子在金属中的随机运动等复杂过程。其理论研究主要集中在对单个粒子的运动规律的研究。但是,随机行走模型中粒子可以是很多个,但是它们遵循的规则都是一个统一的随机规程,而且它们之间的运动是相互独立的,互不影响。如果考虑它们之间的相互作用,就可能构
( z% j8 ^( g4 q% R5 B4 O( H 造出其他基于随机行走的模型,例如凝聚扩散模型。
+ [; w' n* Y$ @9 J# N' } 凝聚扩散(Diffusion-Limited Aggregation)模型,简称DLA,可以看作是一个多粒子的随机行走模型,而且它的计算空间也往往是一个离散的格网。它是由A·Written和Sander于1981年首先提出的。其基本思想如下:给定初始点作为凝聚点,以它作为圆心做一个大圆,在圆周上的一个随机点释放一个粒子,为简单起见,它的运动通常规定为一个随机行走过程,直到它运动至与已有的凝聚点相邻,改变它的状态为凝聚点,不再运动;再随机释放一个粒子;直至凝聚。重复上述过程,就可以得到一个凝聚点的连通集,形似冬日里玻璃上的冰花。凝聚扩散模型还可以有不同的形式,如释放点可以在一个四边形中的顶部,从而在下面省长出形似荆棘的灌丛。而1984年,R·F·Voss提出的多粒子凝聚扩散(Multi-Particle Diffusion Aggregation)模型是对凝聚扩散模型的改进和发展。其基本思想是:在给定的离散空间中,依照一定的密度随机散布自由粒子,在中心设置一个凝聚点作为种子点,也可以随机布设若干个凝聚点作为种子,然后各自由粒子随机行走,一旦与凝聚点相邻,则变为新的凝聚点,直至所有的自由粒子"凝聚"。
2 t) {1 i$ \* L( U! B
8 F: i) a: \2 r4 i, { 元胞自动机、随机行走模型、凝聚扩散模型都是典型的分形图形的生成方法,在很多情况下,它们都可以生成相似的复杂图案。但它们之间仍存在着一定的差别。 8 e0 u) _0 s* P. t
随机行走模型与元胞自动自动机的差别在于以下几个方面:第一、随机行走模型通常只是考虑单个粒子的运动,而元胞自动机模型中则通常存在众多的元胞;第二、即使模型中,存在多个粒子,随机行走模型通常并不考虑粒子间的相互作用,粒子的运动是相互独立的;第三、随机行走中的粒子是运动的概念,而元胞自动机的元胞通常是一个状态变化的过程;第四、随机行走中的粒子的运动空间可以是离散的,也可以是连续的,但在元胞自动机中,元胞都分布在离散的空间网格上。 ; y! X5 o1 v3 `* m7 n0 D- G
凝聚扩散模型。尤其是多粒子凝聚扩散模型与元胞自动机则非常相似:时间空间离散;模型中存在粒子的相互作用,且这种作用具有局部特征,即自由粒子在有凝聚点为邻居时,状态转变为凝聚点。特殊的是这种转变只是一个单向的转变,凝聚扩散模型在最终达到一种定态吸引子;粒子的运动遵循相通的规律,可以进行同步计算。因此。在广义上,凝聚扩散模型可以归为元胞自动机的一个特例。但是,它们之间仍存在以下几个不同点:一、元胞自动机模型面向的是整个网格空间,而凝聚扩散模型面向的是特定粒子的运动;二、元胞自动机的元胞通常只有状态的改变,其空间位置是固定的,而凝聚扩散模型中的粒子不仅有状态的变化,更是一个运动的粒子。三、凝聚扩散中,多个粒子通常可以同时占据一个格网空间点,而元胞自动机模型中,每个格网点只能有一个元胞。因此,在某种意义上讲,凝聚扩散模型与下面提到的多主体模型更相似,可以看作是粒子间不存在目的性、竞争、协作等智能特征的"无头脑"的主体模型。
' ?7 y) G4 P' g9 ?$ I 7. 元胞自动机与多主体系统
! ~5 O5 I0 O2 z% i: ^ 多主体系统(Multi-Agent System,简称MAS)是分布式人工智能的热点课题 (史忠植.1998),主要研究为了共同的、或各自的不同目标,自主的智能主体之间智能行为的协作、竞争等相互作用。基于主体的模型(Agent Based Model,简记为ABM),简称主体模型,又称基于实体的模型(Entity Based Model,简记为EBM),或基于个体的模型(lndividual Based Model,简记为IBM),是多主体系统的一个子集,其主要特征是每个主体代表了现实世界中一个智能性、自治的实体或个体,如人群中的个人,生态系统中的植物个体、动物个体,交通流中的汽车,计算网络中的计算机,经济系统中的经营者等。而在多主体系
. w. N, w7 d, l 统中,组成系统的个体可以是任何系统部件,如组成专家系统的是一条条意见。
; U: w/ q* ^! x' R
+ j5 a6 o, U' [$ M! L4 @* S+ _6 u 一些基于主体的模型中的主体是具有空间概念的,交通流中的汽车,生态系统中的动植物个体等;但有些并不具有空间概念,如计算网络中的计算机。对于那些有空间概念的主体,其空间表示即可以是连续的,如一组实数坐标对;也可以是离散的,即格网空间中的行列值。而元胞自动机与这种具有离散空间概念的主体模型非常相近,二者均研究在离散空间上个体间的相互作用而形成整体上的复杂行为。但仍然存在很大的区别 ; \2 S; ~& }0 K# d8 F) n$ X
(l)主体模型中的主体可能是可以移动的,如动物个体;但也有可能是不可以移动的;而元胞自动机模型中的元胞个体通常是不可以移动的,元胞自动机在整体上的运动是通过元胞个体的状态变化来实现的。
$ T& p$ J3 ]' h* A (2) 在基于格网空间的主体模型中,格网只是作为主体的空间定位,多个主体可以占据一个格网点;而在元胞自动机模型中,每个格网点只能拥有一个特定状态的元胞。 1 Z) @0 S7 U1 |7 t
(3) 在本质上讲,可以说,主体模型是面向(通常是稀疏,分布在网格空间上的个体的,而元胞自动机则是面向整个网格空间的。在模型运行时,主体模型将只考虑个体的行为,而元胞自动机将考虑整个元胞空间上的每个格网 (元胞)的状态。
& K- `; f/ ^0 M7 M: H& l 8. 元胞自动机与系统动态学模型
+ R8 e; d; T' N" V1 Q7 `% @' R | 系统动力学 (SystemDynamics,简称SD)是一间分析研究反馈系统的学科,也是一门认识系统问题和解决系统问题交叉的综合性学科。它最初由美国麻省理工学院的Jay W·Forrestr教授于1956年开发提出,其特点是引入了系统分析的概念,强调信息反馈控制,是系统论、信息论、控制论和决策论的综合产物,非常适于研究复杂系统的结构、功能与动态行为之间的关系。通过分析系统结构,选取适当因素,建立它们之间的反馈关系,并在此基础上建立一系列微分方程,构建系统动态学方程,进一步考察系统在不同参数和不同
8 M7 u; o6 u d8 z& F 策略因素输入时的系统动态变化行为和趋势,为决策者提供决策支持。由于它能够对实际系统进行动态仿真,因而系统动力学模型可作为实际系统,特别是社会、经济、生态复杂大系统的"实验室"(Forrester。J·W·,1969;裴相斌,1999;李一智等,1987)。
- r$ o& P# G0 Q 系统动态学模型在地球科学研究中具有比较广泛的实用性。因为它着眼于系统的整体最佳目标,不是单纯追求个别子系统的最佳目标,有助于实现人口、资源、环境与社会、经济各子系统之间的协调,采用无量纲的综合研究。同时,该模型仍采用的一阶微分方程组,带有延迟函数和表函数,又能引入投入一产出反馈回路的概念,能比较直观、形象地处理某些比较复杂的非线性问题 (陈述彭,1991)。但是,系统动态学也有"先天不足",而限制了它在地球科学中的应用。
8 O- i, b" L, ] N7 Y7 t* D: R (1) 首先,SD对系统的描述带有主观性。建模者对系统结构的认识,主要包括因素的选取及其相关关系的描述,就直接反映在模型中。而复杂系统的不确定性、非线性等复杂性特征决定了它的系统结构具有混沌性,不同人对它的描述可能有很大的差别,因而,系统动态学在地学建模中,难免会受到个人主观性的干扰,而影响模型的模拟结果。 & x# |0 ]) G/ U
(2) 其次,SD缺乏全面的协调指标体系。复杂系统中有许多因素是定性的,需要一个量化的过程。那么,多个相关因子的分类、分级定量标准就需要从系统的高度进行协调,这往往是系统动态学模型的一个难题。 / J! m5 C4 n% ?" s' m1 c
(3) 最后,缺乏空间因素的处理功能,难以刻画空间系统中各要素在空间上的相互作用和相互反馈关系(张新生,1997;裴相斌,1999)。这对其应用于空间复杂系统研究是个致命的限制。 4 I& B- x% f+ \: w
系统动态学模型与元胞自动机都是采用 "自下而上"的研究思路,利用系统要素间的反馈等相互作用,来模拟和预测系统的整体的动态行为,它们都是研究复杂系统动态变化约有力工具。但是,二者又有所不同:首先,在模型机制上,CA模型基于系统要素间的空间相互作用,而SD则更多的考虑要素间指标属性的关联关系;其次,在模型表现形式上,CA是时间、空间、状态全离散的,转换规则也往往表现为参照表形式,而SD则表现为系列的微分方程组,时间、属性及要素间反馈关系的表达都是连续性质的i第三,在结果表
c5 ]6 t% Z C0 m5 s0 |, v0 [ 现上,CA模型表现为系统空间结构的时空动态演化,而SD模型的结果是系统某个社会经济指标的动态变化;最后,在应用上,CA模型多用于复杂系统的时空演化模拟,而SD模型缺乏空间概念,更适于社会经济系统的模拟预测。 * v6 m( g# u0 y! T) F+ ~1 _: M0 @
元胞自动机可用来研究很多一般现象。其中包括通信、信息传递 (Communicahon) 、计算 (Compulation) 、构造 (ConsTruction) 、生长 (Growth) 、复制 (Reproductionj 、竞争 (Competition) 与进化 (Evolutio , ]) 等 (Smith A.,1969 errier , J.Y.,1996) 。同时。它为动力学系统理论中有关秩序 (Ordering) 、紊动 (Turbulence) 、混沌 (Chaos) 、非对称 (Symmetry-Breaking) 、分形 (Fractality) 等系统整体行为与复杂现象的研究提供了一个有效的模型工具 (Vichhac 。 G , 1984; Bennett , C,1985) 。 ) J) L2 c+ J# z* M7 o/ `7 w
元胞自动机自产生以来,被广泛地应用到社会、经济、军事和科学研究的各个领域。应用领域涉及社会学、生物学、生态学、信息科学、计算机科学、数学、物理学、化学、地理、歹境、军事学等。 5 j( N: p" R; j1 A3 b K
在社会学中,元胞自动机用于研究经济危机的形成与爆发过程、个人行为的社会性,流行现象,如服装流行色的形成等。在生物学中,元胞自动机的设计思想本身就来源于生物学自繁殖的思想,因而它在生物学上的应用更为自然而广泛。例如元胞自动机朋于肿瘤细胞的增长机理和过程模拟、人类大脑的机理探索 (Victor.Jonathan.D. , 1990) 、爱滋病病毒 HIV 的感染过程 (Sieburg , H.B.. 1990) 、自组织、自繁殖等生命现象的研究以及最新流行的克隆 (Clone) 技术的研究等 (ErmentroutG 。 B 。, 1993) 。 ) @1 ^) }+ [3 D( q+ _# @3 G5 U9 m
在生态学中。元胞自动机用于兔子 - 草,鲨鱼 - 小鱼等生态动态变化过程的模拟,展示出令人满意的动态效果 ; 元胞自动机还成功地应用于蚂蚁、大雁、鱼类洄游等动物的群体行为的模拟 ; 另外,基于元胞自动机模型的生物群落的扩散模拟也是当前的一个应用热点。在信息学中。元胞自动机冉于研究信息的保存、传递、扩散的过程。另外。 Deutsch(1972) 、 Sternberg(1980) 和 Rosenfeld(1979) 等人还将二维元胞自动机应用到图像处理和模式识别中 (WoIfram.S. , 1983) 。
; d6 N* z, y# _4 O( Q. t0 i2 } 在计算机科学中。元胞自动机可以被看作是并行计算机而用于并行计算的研究 (Wolfram.S.1983) 。另外。元胞自动机还应用于计算机图形学的研究中。 % G) \$ F+ ?' Z9 x& k: Z
在数学中,元胞自动机可用来研究数论和并行计算。例如 Fischer(1965) 设计的素数过滤器 (Prime Number Sieves)(Wolfram,S.1983) 。
5 l' \ _, i5 O' a4 m3 ^7 s @7 H 在物理学中。除了格子气元胞自动机在流体力学上的成功应用。元胞自动机还应用于磁场、电场等场的模拟,以及热扩散、热传导和机械波的模拟。另外。元胞自动机还用来模拟雪花等枝晶的形成。
" z' [ @+ C% L3 @. b, @1 d 在化学中,元胞自动机可用来通过模拟原子、分子等各种微观粒子在化学反应中的相互作用,而研究化学反应的过程。例如李才伟 (1997) 应用元胞自动机模型成功模拟了由耗散结构创始人 I·Prgogine 所领导的 Brussel 学派提出的自催化模型 ---Brusselator 模型,又称为三分子模型。 Y·BarYam 等人利用元胞自动机模型构造了高分子的聚合过程模拟模型,在环境科学上,有人应用元胞自动机来模拟海上石油泄露后的油污扩散、工厂周围废水、废气的扩散等过程的模拟。 " W! S8 {0 Q; N. w
在军事科学中,元胞自动机模型可用来进行战场的军事作战模拟 " 提供对战争过程的 aq 理解(谭跃进等, 1996) 。 . B& ]$ s( x9 \. E% r. g3 |9 A, s
元胞自动机作为一种动态模型,更多的是作为一种通用性建模的方法,其应用几乎涉及社会和自然科学的各个领域。
* K" f0 i, {# G- R# Z S8 ?$ M 元胞自动机 (Cellular Automata ,简称 CA) 是一种时空离散的局部动力学模型,是复杂系统研究的一个典型方法,特别适合用于空间复杂系统的时空动态模拟研究。不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是用一系列模型构造的规则构成。凡是满足这些规则的模型都可以算作是元胞自动机模型。因此,元胞自动机是一类模型的总称,或者说是一个方法框架。在这一模型中,散布在规则格网 (Lattice Grid) 中的每一元胞 (Cell) 取有限的离散状态,遵循同样的作用规则,依据确定的局部规则作同步更新。大量元胞通过简单的相互作用而构成动态系统的演化。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。
9 N- ~, N$ c7 @0 d
上世纪 50 年代,冯·诺伊曼提出了元胞自动机的概念。从此,由元胞自动机来构造具有生命特征的机器成为科学界的一个新的方向,而对元胞自动机理论本身的研究开始逐步展开。 从不同领域的视角来看,元胞自动机有着不同的定义。
从物理学视角来看:元胞自动机是定义在一个由具有离散、有限状态的元胞组成的元胞空间上,并按照一定局部规则,在离散的时间维上进行演化的动力学系统。 2 w7 Q) m# `, }, f* M- ^
3 Q) i0 l' y' w9 i3 p! {3 D. D
& v# p- z: u3 M3 `0 o 从生物学视角来看:以生物学或者人工生命的角度来看,元胞自动机可以视为一个让许多单细胞生物生活的世界,在我们设定好这个世界的初始状态和进化规则之后,这些单细胞生物便依据规则在离散的时间步上进行演化。
从数学视角来看:标准的元胞自动机是一个四元组 : A=(L, S, N, f) ,这里 A 代表一个元胞自动机系统; L 表示元胞空间, d 是一正整数,表示元胞空间的维数; S 是元胞的有限的、离散的状态集合; N 表示一个邻域内所有元胞的组合,即包含 n 个不同元胞状态的一个空间矢量,记为 :N=(s1,s2,...,sn) ,其中 si ∈ S , i ∈ {1 , ...,n} ; f 表示将 S 映射到 S 上的一个局部转换函数。所有的元胞位于 d 维空间上,其位置可用一个 d 元的整数矩阵 Z 来确定。 7 \8 T+ Z5 N8 _4 {8 K5 m3 V
从计算视角来看:显然,元胞自动机每一个元胞的状态变化都是一种计算。我们可以把每一个元胞都看作一台计算机,这样元胞自动机就是一种计算模型。元胞自动机每个元胞的变化是同步进行的,也就是对信息的处理是同步进行的,特别适合于并行计算。元胞自动机可能是下一代并行计算机的雏形。 6 g$ ?0 j7 w9 c2 t
从动力学视角来看:元胞自动机可以视为离散动力系统中的一种自动器网络模型。离散动态系统中自动器网络模型的基本结构可用图论中的图来表示,它由若干结点及连接这些结点的边而构成,但在自动器组成的复杂网络模型中,我们还可引入不同层次的动力学,即每个结点表示一个子系统,它们有各自的动态行为,结点之间的连接强度也可能发生变化,由此反映元素间作用关系的变化。每个结点(或元素)都可以看作是一个自动器,这些连接起来的自动器组成了自动器网络。若干自动器( automation )叫作自动机( automata )。 如果一个自动器网络具有规则的晶格结构,每个元素是完全一样的有限自动器(相同的局部连接即输入集和输出函数相同),且元素间的联接强度为常数,这样的自动器网络称为“元胞自动机”。 若自动器网络的元素是一布尔自动器(状态为 0 和 1 )且状态函数为布尔开关函数,元素间联接强度不变,则我们得到“布尔网络”。 当元素间联接强度可随时间变化时,网络的行为就变得更复杂,这将是“神经网络”要讨论的问题。复杂系统理论中研究的这些自动器网络模型的共同特点在于: 涉及的元素数量较大;元素间局部联接;系统总体体现了鲜明的涌现性。
1 、同质性:在元胞空间内的每个元胞的变化都服从相同的规律,所有元胞均受同样的规则所支配。
2 、齐性:元胞的分布方式相同,大小、形状相同,地位平等,空间分布规则整齐。 ' h$ W. n6 @/ d- b+ a
空间离散 : 元胞分布在按照一定规则划分的离散的元胞空间上。
3 、时间离散 : 系统的演化是按照等间隔时间分步进行的,时间变量 t 只能取等步长的时刻点。 ( S4 m( C& T! g6 B* w
4 、状态离散且有限:元胞自动器的状态只能取有限个离散值,在实际应用中,往往需要将有些连续变量进行离散化,如分类、分级,以便于建立元胞自动机模型。 ' a C# Q4 p! [1 ^6 o0 b" d$ N; |: s
5 、并行性:各个元胞的在每个时刻的状态变化是独立的行为,相互没有任何影响。
# O: j' ]$ X. {: h( U
6 、时空局部性 : 每一个元胞的下一时刻的状态,取决于其邻域中所有元胞的状态,而不是全体元胞。从信息传输的角度来看,元胞自动机中信息的传递速度是有限的。
3 V w3 G( K3 X" {9 t* p
7 、维数高 : 在动力系统中一般将变量的个数成为维数。例如,将区间映射生成的动力系统称为一维动力系统;将平面映射生成的动力系统称为二维动力系统;对于偏微分方程描述的动力系统则称为无穷维动力系统。从这个角度来看,由于任何完备元胞自动机的元胞空间是定义在一维、二维或多维空间上的无限集,每个元胞的状态便是这个动力学系统的变量。因此,元胞自动机是一类无穷维动力系统。在具体应用中或计算机模拟时当然不可能处理无限个变量,但一般也总是处理数量很大的元胞组成的系统。因此可以说维数高是元胞自动机研究中的一个特点。
! R: V% U( {3 K H, k
在上述特征中,同质性、并行性、局部性是元胞自动机的核心特征,任何对元胞自动机的扩展应当尽量保持这些核心特征,尤其是局部性特征。
zan