元胞自动机简介

元胞自动机简介
元胞自动机简介

元胞自动机基础

元胞自动机(cellular automaton, CA)是最近一个比较热门的研究课题,其是物理、数学、计算机和生物等学科的交叉产物。在计算机领域中,CA在人工智能、计算复杂性分析以及加密等多个领域中有着较大的用途。特别是在大约十年前,密码学家H. Gutowitz根据CA的基本原理,提出了分块加密算法CA-1.1,使得CA在密码学中真正的迈出了第一步,也使得越来越多的密码学家开始了对CA的研究。最近,我也开始对这个方面产生了浓厚的兴趣,并开始了一些学习,就先来简单的说说什么是CA吧!

简单的说,元胞自动机是一个空间、时间和状态上都离散的动态系统。构成CA的基本单位成为元胞(cellular),规则的分布在元胞空间(spatial lattice)的格点上,且各自的状态随着时间按照一定的局部规则变化。也就是说,元胞的状态只能从一个有限的状态集中取值,每个时刻元胞的状态仅与其自身和邻居在上一时刻的状态有关,并且,所有的元胞在每个时刻均是同时更新的。

以上即是对CA的一个定性的描述,下面给出一个基于集合论的定量描述(L. Hurd等):

设d为CA空间的维数,k代表元胞的状态,集合S表示CA的整体状态,r表示元胞的邻居半径。为了简单起见,我们在d=1,即一维空间上对CA进行讨论。CA的动态性可以由一个全局函数F: St→St+1决定,并且,每个元胞的状态可以由一个局部函数f:kt→kt+1决定。

由于多维空间的CA具有很强的复杂性,故目前对CA的研究主要集中在一维和二维空间。就一维空间而言,CA的结构显然只有可能是线性结构。在二维空间,CA的结构可能有三角、四边或多边等构成方式。显然,结构上的差异会对其在计算机表示及其他部分特性上带来一定的差异。而CA 的邻居结构也通常包括Von. Neumann、Moore、扩展Moore和Margolus等多种形态,不同的邻居结构带来的特性和复杂度也不尽相同。

通过分析CA的构成及其基本规则,不难得出标准CA的一些特征:

1、同质性:CA内的每个元胞的变化都服从相同规则,且分布方式是相同的。

2、离散性:CA在空间、时间、状态上都是离散分布的,并且其状态分布是有限的。

3、并行性:CA每个元胞的更新都是同步进行的。

再来看看基于一维CA加密的一个简单讨论。分析CA的基本机理,不难得出,基于一维CA的加密是一个典型分块密码。不妨假设该一维CA的空间长度为N,则每轮更新均可得到一组长度为N 的子密钥,用于对明文“分块”进行加密。如果更新算法设置得当,每次生成的子密钥序列可以做到是尽可能随机的,从而保障了加密的强度。

目前,已经有了一些基于一维CA的加密算法的实现,最前沿的研究是基于二维CA的。

元胞自动机理论基础

元胞自动机(Cellular Automata,简称CA,也有人译为细胞自动机、点格自动机、分子自动机或单元自动机)。是一时间和空间都离散的动力系统。散布在规则格网(Lattice Grid)中的每一元胞(Cell)

取有限的离散状态,遵循同样的作用规则,依据确定的局部规则作同步更新。大量元胞通过简单的相互作用而构成动态系统的演化。不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是用一系列模型构造的规则构成。凡是满足这些规则的模型都可以算作是元胞自动机模型。因此,元胞自动机是一类模型的总称,或者说是一个方法框架。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。

1. 自动机

自动机(Automaton)通常指不需要人们逐步进行操作指导的设备(夏培肃,1984)。例如,全自动洗衣机可按照预先安排好的操作步骤作自动地运行;现代计算机能自动地响应人工编制的各种编码指令。完成各种复杂的分析与计算;机器人则将自动控制系统和人工智能结合,实现类人的一系列活动。另一方面,自动机也可被看作为一种离散数字动态系统的数学模型。例如,英国数学家A.M.Turing 于1936年提出的图灵机就是一个描述计算过程的数学模型(TuringA M.,1936)。它是由一个有限控制器、一条无限长存储带和一个读写头构成的抽象的机器,并可执行如下操作:

·读写头在存储带上向左移动一格;

·读写头在存储带上向右移动一格;

·在存储的某一格内写下或清除一符号;

·条件转移。

图灵机在理论上能模拟现代数字计算机的一切运算,可视为现代数字计算机的数学模型。实际上,一切"可计算"函数都等价于图灵机可计算函数,而图灵机可计算函数类又等价于一般递归函数类。

根据存储带是否有限,可将自动机划分为有限带自动机(Finite Automaton)和无限带自动机(Infinite Automaton)。由于图灵机有无限长的存储带,所以为一种无限带自动机。有限带自动机常用作数字电路的数学模型,也用来描述神经系统和算法;而无限带自动机主要用来描述算法,也用来描述繁殖过程(如细胞型自动机和网络型自动机)。

有限自动机是一种控制状态有限、符号集有限的自动机,是一种离散输入输出系统的数学模型。可

将有限自动机设想成由一条划分为许多方格的输入带和一个控制器组成的机器:在输入带的每一个小格中可以容纳一个符号,这些符号取自一个有限符号集S-控制器具有有限个可能状态(构成集合Q)。并在每一时刻仅处于其中的一个状态q;控制器有一个读入头,可以从输入带中读入符号;时间是离散的,初始时控制器处在状态;控制器的功能是根据其当前状态g和读入头从输入带上得到的符号a,来确定控制器的下一时刻的状态实现从状态q到状态q',实现从状态q到状态铲q'的转移,并将读入头右移一格。控制器另一功能是识别终止状态(它们构成Q的一个子集F),也可将该识别功能视为有限自动机的输出。

从数学上来定义,有限自动机是一个五元组:

FA=(Q,S,δ,q0,F)

其中,Q是控制器的有限状态集、S是输入符号约有限集、δ是控制状态转移规律的Q×S到Q的映射(可用状态转移图或状态转移表表示),q0是初始状态、F是终止状态集。若δ是单值映射,则称M为确定性有限自动机;若δ是多值映射,则称M为非确定性有限自动机。

元胞自动机是由空间上各项同性的一系列元胞所组成,是在有限元胞自动机基础上发展起来的,用于模拟和分析几何空间内的各种现象。

2.2.1 典型的元胞自动机

在元胞自动机的发展过程中,科学家们构造了各种各样的元胞自动机模型。其中,以下几个典型模

型对元胞自动机的理论方法的研究起到了极大的推动作用,因此,它们又被认为是元胞自动机发展历程中的几个里程碑。

l. S. Wolfram和初等元胞自动机

初等元胞自动机(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可记为:

其中变量有三个,每个变量取两个状态值,那么就有2×2×2=8种组合,只要给出在这八个自变量组合上的值,f就完全确定了。例如以下映射便是其中的一个规则:

通常这种规则也可表示为以下图形方式(黑色方块代表l,白色方块代表0):

这样,对于任何一个一维的0,1序列,应用以上规则,可以产生下一时刻的相应的序列。以下序列就是应用以上规则产生的:

t: 010111110101011100010

t+1:1010001010101010001

以上八种组合分别对应0或1,因而这样的组合共有28=256种,即初等元胞自动机只可能有256种不同规则。S. Wolfram定义由上述八种构形产生的八个结果组成一个二进制(注意高低位顺序),如上可得01001100,然后计算它的十进制值R:

R在[0,255]内,S. Wolfram定义R为初等元胞自动机的标号,则上面的元胞自动机模型就是76号初等元胞自动机(谢惠民,1994;李才伟,1997)。

S. Wolfram对这256种模型一一进行了详细而深入的研究。研究表明,尽管初等元胞自动机是如此简单,但它们表现出各种各样的高度复杂的空间形态。经过一定时间,有些元胞自动机生成一种

稳定状态,或静止,或产生周期性结构,那么,有些产生自组织、自相似的分形结构。S. Wolham(1983)借用分形理论计算了它们的维数约为1.59或1.69(Wolfram,S.,1983)。但256种元胞自动机中没有一种属于S. Wolfram元胞自动机动力学分类得第四种,所谓复杂型。

S. Wolfram对一维元胞自动机,尤其是初等元胞自动机的深入研究奠定了元胞自动机理论的基石。对元胞自动机的理论研究,以及后来的人工生命研究和近来兴起的复杂性科学(Science of Complexity)研究作出了卓越的贡献。

2. J. Conway和"生命游戏"

生命游戏(Came of Life)是J. H. Conway在20世纪60年代末设计的一种单人玩的计算机游戏(Garclner,M.,1970、1971)。他与现代的围棋游戏在某些特征上略有相似:围棋中有黑白两种棋子。生命游戏中的元胞有{"生","死"}两个状态{0,1};围棋的棋盘是规则划分的网格,黑白两子在空间的分布决定双方的死活,而生命游戏也是规则划分的网格(元胞似国际象棋分布在网格内。而不象围棋的棋子分布在格网交叉点上)。根据元胞的局部空间构形来决定生死。只不过规则更为简单。下面介绍生命游戏的构成及规则:

(1)元胞分布在规则划分的网格上;

(2)元胞具有0,1两种状态,0代表"死",l代表"生";

(3)元胞以相邻的8个元胞为邻居。即Moore邻居形式;

(4)一个元胞的生死由其在该时刻本身的生死状态和周围八个邻居的状态(确切讲是状态的和)决定: ·在当前时刻,如果一个元胞状态为"生",且八个相邻元胞中有两个或三个的状态为"生",则在下--时刻该元胞继续保持为"生",否则"死"去;

·在当前时刻。如果一个元胞状态为"死"。且八个相邻元胞中正好有三个为"生"。则该元胞在下一时刻"复活"。否则保持为"死"。

尽管它的规则看上去很简单。但生命游戏是具有产生动态图案和动态结构能力的元胞自动机模型。它能产生丰富的、有趣的图案。生命游戏的优化与初始元胞状态值的分布有关,给定任意的初始状态分布。经过若干步的运算,有的图案会很快消失。而有的图案则固定不动,有的周而复始重复两

个或几个图案,有的婉蜒而行。有的则保持图案定向移动,形似阅兵阵……,其中最为著名的是"滑翔机(叫Glider)"的图案。

生命游戏模型已在多方面得到应用。他的演化规则近似地描述了生物群体的生存繁殖规律:在生命密度过小(相邻元胞数之2)时,由于孤单、缺乏配种繁殖机会、缺乏互助也会出现生命危机,元胞状态值由1变为0;在生命密度过大(相邻元胞数>3)时,由于环境恶化、资源短缺以及相互竞争而出现生存危机,元胞状态值由1变为0;只有处于个体适中(相邻元胞数为2或3)位置的生物才能生存(保

持元胞的状态值为1)和繁衍后代(元胞状态值由0变为1)。正由于它能够模拟生命活动中的生存、灭绝、竞争等等复杂现象,因而得名"生命游戏"。J·H·Conway还证明,这个元胞自动机具有通用图灵机的计算能力(谢惠民,1994;李才伟,1997),与图灵机等价,也就是说给定适当的初始条件,生命游戏模型能够模拟任何一种计算机。

从数学模型的角度看,该模型将平面划分成方格棋盘,每个方格代表一个元胞。

元胞状态:0 死亡,1- 活着

领域半径:1

领域类型:Moore型

其中S t表示t时刻元胞的状态,S为8个相邻元胞中活着的元胞数。

另外,需要指出的是,目前随着人们对"生命游戏"研究的深入,产生了许多变种和扩展。在80

年代末,A·K·De wdney (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)等人也曾在这方面作了很多迸一步的研究工作。

对游戏规则的扩展主要是引入了4个参数E b E k F b F k,E b表示对于一个"活"元胞,在下一个时刻,继续保持其状态所需要的最少的"活"邻居的数目,而F b则表示对于一个"死"元胞,在下一时刻,"复活"所需要的最小的"活"邻居的数目,E k和F k则分别表示上述情况的上限值。演化规则修改为

3.格子气自动机

格子气自动机(Lattice一GasAutomata,LGA又称格气机),是元胞自动机在流体力学与统计物理中的具体化,也是元胞自动机在科学研究领域成功应用的范例(李才伟,1997)。相对于"生命游戏"

来说,格子气自动机是个更注重于模型的实用性。它利用元胞自动机的动态特征,来模拟流体粒子的运动。

第一个时空、速度等变量完全离散的格子气自动机是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)的改进模型逐步取代了原有的格气模型。应当说,格子气自动机是一种特殊的元胞自动机模型,或者说是一个扩展的元胞自动机模型

(Extended Cellular Automata)。以早期的格子气模型为例,描述其特征如下:

(1)由于流体粒子不会轻易从模型空间中消失,这个特征需要格子气自动机是一个可逆元胞自动机模型。

(2)格子气自动机的邻居模型通常采用Margulos类型,即它的规则是基于一个2X2的网格空间的。

它的规则形似如下:

这里黑色球代表流体粒子,白色球代表空的元胞。可以看出,格子气自动机不同于其它的元胞自

动机模型,以一个元胞(常被称为中心元胞,为研究对象,考虑其状态的转换,而是考虑包含四个元胞的一个四方块。

(3)依照上述规则和邻居模型在计算完一次后,需要将这个2X2的模板沿对角方向滑动,再计算一次。那么,一个流体粒子的运动需要两步t-t+l-t+2才能完成。

从时间和空间的角度看,格子气自动机相对其他的元胞自动机模型具有较为独特的特征。格气自动机作为一种特殊类型的元胞自动机已成为流体动力学中的一个重要领域,几乎独立于元胞自动机

研究之外了。

4. Langton和“能自我复制的元胞自动机”

元胞自动机是一种离散的动态模型,由于它可以模拟自组织、自繁殖、信息储存和传递等现象,因而,被广泛地应用于生命现象的研究中。目前兴起的人工生命的研究就是来源于元胞自动机的深

入研究,其主要论点是认为"自我复制"乃生命的核心特征。聚集在美国新墨西哥州的圣塔费研究所(Santa Fe Institute)的科学家们在这方面作了很多深入的工作,最著名的成果之一就是Christopher Langton在二维元胞自动机中发现的一个能自我复制的"圈"或称"能自我复制的元胞自动机"(谭跃进等,1996; Longton,C·G·,1987)。当然,他的研究是基于先前一系列研究的基础上的:

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邻居模型。

元胞自动机通过信号元胞替代相邻的元胞,如状态为1的元胞,而完成信号传递。信号传播的过

程可以通过下面的例子说明:

数据路径可以分支,在分支的节点处,信号在各个分支中复制本身,产生多个复制品。

下图中,07信号在T形的交叉点处,复制自身:

这个元胞自动机模型的另外一个重要特征就是路径扩张。即一定的信号可以产生数据路径的延伸,如下图所示:

有了上面的论述,下面的具有路径扩张的、能自我复制的"圈"的工作机理应当容易理解了。

尽管元胞自动机有着较为宽松,甚至近乎模糊的构成条件。但作为一个数理模型,元胞自动机有着严格的科学定义。同时,元胞自动机是一个地地道道的"混血儿"。是物理学家、数学家,计算机科学家和生物学家共同工作的结晶。因此。对元胞自动机的含义也存在不同的解释,物理学家将其视为离散的、无穷维的动力学系统;数学家将其视为描述连续现象的偏微分方程的对立体,是一个时空离散的数学模型;计算机科学家将其视为新兴的人工智能、人工生命的分支;而生物学家则将其视为生命现象的一种抽象。下面给出几种常见的定义:

1.元胞自动机的物理学定义

元胞自动机是定义在一个由具有离散、有限状态的元胞组成的元胞空间上,并按照一定局部规则,在离散的时间维上演化的动力学系统。

具体讲,构成元胞自动机的部件被称为"元胞",每个元胞具有一个状态。这个状态只琵取某个有限状态集中的一个,例如或"生"或"死",或者是256中颜色中的一种,等等;这些元胞规则地排列在被你为"元胞空间"的空间格网上;它们各自的状态随着时间变化。而根据一个局部规则来进行更新,也就是说,一个元胞在某时刻的状态取决于、而且仅仅家决于上一时刻该元胞的状态以及该元胞的所有邻居元胞的状态;元胞空间内的元胞依照这样的局部规则进行同步的状态更新,整个元胞空间则表现为在离散的时间维上的变化。

2.元胞自动机的数学定义

美国数学家L.P.Hurd 和K·Culik 等人在90年代初,对元胞自动机分别从集合论和拓扑学等角度进行了严格地描述和定义 (谢惠民,1994; Culik,II K ,1990;李才伟,1997)

1)基于集合论的定义

设d 代表空间维数,k 代表元胞的状态,并在一个有限集合S 中取值,r 表元胞的邻居半径。Z 是整数集,表示一维空间,t 代表时间。

为叙述和理解上简单起见,在一维空间上考虑元胞自动机,即假定d=1。那么整个元胞空间就是在一维空间,将整数集Z 上的状态集S 的分布,记为S Z 。元胞自动机的动态演化就是在时间上状态组合的变化,可以记为:

这个动态演化又由各个元胞的局部演化规则f 所决定的。这个局部函数f 通常又常常被称为局

部规则。对于一维空间,元胞及其邻居可以记为S 2r+1,局部函数则可以记为:

对于局部规则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对元胞空间内的元胞,独立施加上述局部函数,则可得到全局的演化:

c i

t 表示在位置i 处的元胞,至此,我们就得到了一个元胞自动机模型。

2)元胞自动机的拓扑学定义

为描述和理解方便。同样假定维数d 为1。设S 为k 个符号约有限集。Z 为整数全体的集台,称Z 到S 的映射的全体S Z 为构形空间。显然S Z 就是用S 中的符号组成的双侧无限的符号序列的全体,即一维元胞自动机的所有构形的集合。称a=(…a -1a 0a 1,...)为构形空间中的点。

在S Z 中引进任意两点x 和y 之间的距离

其中当x i =y i 时δ(x i ,y i )=0,当x i ≠y i 时δ(x i ,y i )=1。然后。在S Z 中可以建立起开、闭、紧等拓

扑概念。

在S Z 中定义移位算子δ为δ(x i )=x i-1,i∈Z。若连续映射F:S Z ->S Z 产与δ可交换,即F δ=δF 。或对任意的x∈S Z 有F((δ(x))=δ(F(x)),则称F 为元胞自动机 (谢惠民,1994)。

对于以上定义,我们很容易将它扩展到一个任意维空间,所要做的工作只是将S Z 记为S Z^d ,S 2r+1记为S (2r+1)^d 等,同时对一些描述作相应改变即可。

元胞自动机的构成

元胞自动机最基本的组成元胞、元胞空间、邻居及规则四部分。简单讲,元胞自动机可以视为由一个元胞空间和定义于该空间的变换函数所组成。

1.元胞

元胞又可称为单元。或基元,是元胞自动机的最基本的组成部分。元胞分布在离散的一维、二维或多维欧几里德空间的晶格点上。

2.状态

状态可以是{0,1}的二进制形式。或是{s

0,s

2

,……s

i

……s

k

}整数形式的离散集,严格意义上。元

胞自动机的元胞只能有一个犬态变量。但在实际应用中,往往将其进行了扩展。例如每个元胞可以拥有多个状态变量。李才伟(1997)在其博士论文工作中,就设计实现了这样一种称之为"多元随机元胞自动机"模型。并且定义了元胞空间的邻居(Neighbor)关系。由于邻居关系,每个元胞有有限个元胞作为它的邻居;

3.元胞空间(Lattice)

元胞所分布在的空间网点集合就是这里的元胞空间。

(l)元胞空间的几何划分:理论上,它可以是任意维数的欧几里德空间规则划分。目前研究多集中在一维和二维元胞自动机上。对于一维元抱自动机。元胞空间的划分只有一种。而高维的元胞自动机。元胞空间的划分则可能有多种形式。对于最为常见的二维元胞自动机。二维元胞空间通常可按三角、四万或六边形三种网格排列 (图2-5)。

这三种规则的元胞空间划分在构模时各有优缺点:

三角网格的优点是拥有相对较少的邻居数目,这在某些时候很有用;其缺点是在计算机的表达与显示不方便,需要转换为四方网格。

四方网格的优点是直观而简单,而且特别适合于在现有计算机环境下进行表达显示;其缺点是不能较好地模拟各向同性的现象,例如后面提到的格子气模型中的HPP模型。

六边形网格的优点是能较好地模拟各向同性的现象,因此,模型能更加自然而真实,如格气模型中的FHP模型;其缺点同三角网格一样,在表达显示上较为困难、复杂。

(2)边界条件:在理论上,元胞空间通常是在各维向上是无限延展的,这有利于在理论上的推理和研究。但是在实际应用过程中,我们无法在计算机上实现这一理想条件,因此,我们需要定义不同的边界条件。归纳起来,边界条件主要有三种类型:周期型、反射型和定值型。有时,在应用中,为更加客观、自然地模拟实际现象,还有可能采用随机型,即在边界实时产生随机值。

周期型(Pehodic Boundary)是指相对边界连接起来的元胞空间。对于一维空间,元胞空间表现为一个首尾相接的"圈"。对于二维空间,上下相接,左右相接。而形成一个拓扑圆环面 (Torus),形似车胎或甜点圈。周期型空间与无限空间最为接近,因而在理论探讨时,常以此类空间型作为试验。

反射型(Reflective Boundary)指在边界外邻居的元胞状态是以边界为轴的镜面反射。例如在一

维空间中,当r=1时的边界情形:

定值型 (Constant Boundary)指所有边界外元胞均取某一固定常量,如0,1等。

需要指出的是,这三种边界类型在实际应用中,尤其是二维或更高维数的构模时,可以相互结合。如在二维空间中,上下边界采用反射型,左右边界可采用周期型 (相对边界中。不能一方单方面采用周期型)。

(3)构形:在这个元胞、状态、元胞空间的概念基础上,我们引入另外一个非常重要的概念,构形(Configuration)。构形是在某个时刻,在元胞空间上所有元胞状态的空间分布组合。通常。在数学上,它可以表示为一个多维的整数矩阵。

4.邻居 (Neighbor)

以上的元胞及元胞空间只表示了系统的静态成分,为将"动态"引入系统,必须加入演化规则。在元胞自动机中,这些规则是定义在空间局部范围内的,即一个元胞下一时刻的状态决定于本身状态和它的邻居元胞的状态。因而,在指定规则之前,必须定义一定的邻居规则,明确哪些元胞属于该元胞的邻居。在一维元胞自动机中,通常以半径,来确定邻居,距离一个元胞,内的所有元胞均被认为是该元胞的邻居。二维元胞自动机的邻居定义较为复杂,但通常有以下几种形式(我们以最常用的规则四方网格划分为例)。见图2-6,黑色

元胞为中心元胞,灰色元胞为其邻居,它们的状态一起来计算中心元胞在下一时刻的状态。

l)冯-诺依曼(Von. Neumann)型

一个元胞的上、下、左、有相邻四个元胞为该元胞的邻居。这里,邻居半径r为1,相当于图像处理中的四邻域、四方向。其邻居定义如下:

v ix v

iy

表示邻居元胞的行列坐标值,v

ox

表示中心元胞的行列坐标值。此时,对于四方网格,在维数为

d时,一个元胞的邻居个数为2

d

2)摩尔(Moore)型

一个元胞的上、下、左、右、左上、右上、右下、左下相邻八个元胞为该元胞的邻居。邻居半径r 同样为1,相当于图像处理中的八邻域、八方向。其邻居定义如下:

v ix v

iy

v

ox

意义同前。此时,对于四方网格,在维数为d时。一个元胞的邻居个数为 (3d-1)。

3)扩展的摩尔(Moore)型

将以上的邻居半径r扩展为2或者更大,即得到所谓扩展的摩尔型邻居。其数学定义可以表示为:

此时,对于四方网格,在维数为d时,一个元胞的邻居个数为 ((2r十1)d-1)。

4)马哥勒斯 (Margolus)型

这是一种同以上邻居模型迥然不同的邻居类型,它是每次将一个2x2的元胞块做统一处理,而上述前三种邻居模型中,每个元胞是分别处理的。这种元胞自动机邻居是由于格子气的成功应用而受到人们关注的,关于这种邻居模型的详细介绍,请参照本文对格子气动机的介绍。

5.规则(Rule)

根据元胞当前状态及其邻居状况确定下一时刻该元胞状态的动力学函数,简单讲,就是一个状态转移函数。我们将一个元胞的所有可能状态连同负责该元胞的状态变换的规则一起称为一个变换函数 (史忠植,1998)。这个函数构造了一种简单的、离散的空间/时间的局部物理成分。要修改的范围里采用这个局部物理成分对其结构的"元胞"重复修改。这样,尽管物理结构的本身每次都不发展。但是状态在变化(史忠植,1998)。它可以记为f: s i t+1=f(s i t ,s N t ),s N t 为t 时刻的邻居状态组合,

我们称f 为元胞自动机的局部映

射或局部规则 (谢惠民,1994)。

6.时间 (Time)

元胞自动机是一个动态系统,它在时间维上的变化是离散的,即时间f 是一个整数值,而且连续等间距。假设时间间距dt=1,若t=O 为初始时刻。那么。t=1为其下一时刻。在上述转换函数中,一个元胞在t 十1的时刻只(直接)决定于t 时刻的该元胞及其邻居元胞的状态,虽然,在t-1时刻的元胞及其邻居元胞的状态间接(时间上的滞后)影响了元胞在t+1的时刻的状态。

由以上对元胞自动机的组成分析,我们可以更加深入地理解元胞自动机的概念。用数学符号来表示,标准的元胞自动机是一个四元组 (Amoroso ,S.,1972):

A=(L d ,S,N,f)

这里A 代表一个元胞自动机系统;L 表示元胞空间,d 是一正整数,表示元胞自动机内元胞空间的维数;S 是元胞的有限的、离散的状态集合;N 表示一个所有邻域内元胞的组合(包括中心元胞),即包含n 个不同元胞状态的一个空间矢量,记为:

N=(s 1,s 2,...,s n )

n 是元胞的邻居个数。s i ∈Z(整数集合),i∈{1,...,n};f 表示将S n 映射到S 上的一个局部转换函

数。所有的元胞位于d 维空间上,其位置可用一个d 元的整数矩阵Z d 来确定。

元胞自动机的一般特征

从元胞自动机的构成及其规则上分析,标准的元胞自动机应具有以下几个特征(谢惠民,1994;李才伟,1997):

(1)同质性、齐性,同质性反映在元胞空间内的每个元胞的变化都服从相同的规律,即元胞自动机的规则,或称为转换函数;而齐性指的是元胞的分布方式相同,大小、形状相同,空间分布规则整齐;

(2)空间离散:元胞分布在按照一定规则划分的离散的元胞空间上;

(3)时间离散:系统的演化是按照等间隔时间分步进行的,时间变量t 只能取等步长的时刻点,形似整数形式的t0,t 十l,t 十2…,而且,t 时刻的状态构形只对其下一时刻,即t+1时刻的状态构形产生影响,而t+2时刻的状态构形完全决定于t+1的状态构形及定义在上面的砖换函数。元胞自动机的时间变量区别于微分方程中的时间变量t,那里t 通常是个连续值变量;

(4)状态离散有限:元胞自动器的状态只能取有限(k)个离散值(s 1,s 2,...,s k )。相对于连续状态的动力

系统,它不需要经过粗粒化处理就能转化为符号序列。而在实际应用中,往往需要将有些连续变量进行离散化,如分类,分级,以便于建立元胞自动机模型;

(5)同步计算(并行性):各个元胞的在时刻t i +1的状态变化是独立的行为,相互没有任何影响。若将

元胞自动机的构形变化看成是对数据或信息的计算或处理,则元胞自动机的处理是同步进行的,特别适合于并行计算;

(6)时空局部性:每一个元胞的下一时刻t i+1的状态,取决于其周围半径为r 的邻域(或者其它形式邻

居规则定义下的邻域)中的元胞的当前时刻t i 的状态,即所谓时间、空间的局部性。从信息传输的角

度来看,元胞自动机中信息的传递速度是有限的;

(7)维数高:在动力系统中一般将变量的个数成为维数。例如,将区间映射生成的动力系统称为一维动力系统;将平面映射生成的动力系统称为二维动力系统;对于偏微分方程描述的动力系统则称为无穷维动力系统。从这个角度来看,由于任何完备元胞自动机的元胞空间是定义在一维、二维或多维空间上的无限集,每个元胞的状态便是这个动力学系统的变量。因此,元胞自动机是一类无穷维动力系统。在具体应用中或计算机模拟时当然不可能处理无限个变量,但一股也总是处理数量很大的元胞组成的系统。因此可以说维数高

是元胞自动机研究中的一个特点。

在实际应用过程中,许多元胞自动机模型已经对其中的某些特征进行了扩展,例如圣托斯兰州立大学(San Tose State University)研究的所谓连续型的元胞自动机,其状态就是连续的。但正如我们在元胞自动机的概念分析中指出的,在上述恃征中,同质性、并行性、局部性是元胞自动机的核心恃证,任何对元胞自动机的扩展应当尽量保持这些核心特征,尤其是局部性特征。

元胞自动机的构建没有固定的数学公式,构成方式繁杂,变种很多,行为复杂。故其分类难度也较大,自元胞自动机产生以来,对于元胞自动机分类的研究就是元胞自动机的一个重要的研究课题和核心理论,在基于不同的出发点,元胞自动机可有多种分类,其中,最具影响力的当属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);

(1)均匀状态,即点态吸引子,或称不动点;

(2)简单的周期结构,即周期性吸引子,或称周期轨;

(3)混沌的非周期性模式,即混沌吸引子;

(4)这第四类行为可以与生命系统等复杂系统中的自组织现象相比拟,但在连续系统中没有相对应的模式。但从研究元胞自动机的角度讲,最具研究价值的具有第四类行为的元胞自动机,因为这类元胞自动机被认为具有"突现计算"(Emergent Computation)功能,研究表明,可以用作广义计算机(Universal Computer)以仿真任意复杂的计算过程。另外,此类元胞自动机在发展过程中还表现出很强的不可逆(lrreversibility)特征,而且,这种元胞自动机在若干有限循环后,有可能会 "死"掉,即所有元胞的状态变为零。

S·Wolfram还近似地给出了上述四种一维元胞自动机中各类吸引子或模式所占地比见 (表

1-1),可以看出,具有一定局部结构的复杂模式出现的概率相对要小一些。而第三种混沌型则出现的概率最大,并且,其概率随着k和r的增大而呈现增大的趋势。

这种分类不是严格的数学分类,但S·Wolfram将众多(也许所有)的元胞自动机的动力学行为归纳为数量如此之少的四类,是非常有意义的发现,对于元胞自动机的研究具有很大的指导意义。它反映出这种分类方法可能具有某种普适性,很可能有许多物理系统或生命系统可以按这样的分类方法来研究,尽管在细节上可以不同,但每一类中的行为在定性上是相同的 (谢惠民,1994)。

理论上,元胞自动机可以是任意维数的。那么,按元胞空间的维数分类,元胞自动机

通常可以分为:

(l)一维元胞自动机:元胞按等间隔方式分布在一条向两侧无限延伸的直线上,每个元胞 (Cell)具有

有限个状态s,s∈S={s

1,s

2

,...,s

k

},定义邻居半径r,元胞的左右两侧共有2r个元胞作为其邻居集

合N,定义在离散时间维上的转换函数f:S2r+1→S可以记为:

,S

i

t为第i个元胞在t时刻的状态。

称上述A={S,N,f}三元组(维数d≡1)为一维元胞自动机 (Amoroso,S,1972;李才伟,l997)。

对一维元胞自动机的系统研究最早,相对来讲,其状态、规则等较为简单,往往其所有可能的规则可以一一列出,易于处理,研究也最为深入。目前,对于元胞自动机的理论研究多集中在一维元胞自动机上。S,Wolfram对元胞自动机的动力学分类也是基于对一维初等元胞自动机 (Elementary Cellular Automata)的分析研究得出的。它的最大的一个特征在于容易实现元胞自动机动态演化的可视化:二维显示中,一维显示其空间构形,空间维;另外一维显示其发展演化过程,时间维。

(2)二维元胞自动机:元胞分布在二维欧几里德平面上规则划分的网格点上,通常为方格划分。以J. H. Conway的"生命游戏"为代表,应用最为广泛。由于,世界上很多现象是二维分布的,还有一些现象可以通过抽象或映射等方法,转换到二维空间上,所以,二维元胞自动机的应用最为广泛,多数应用模型都是二维元胞自动机模型。

(3)三维元胞自动机:目前,Bays(Bays,C,1988)等人在这方面做了若干试验性工作,包括在三维空间上实现了生命游戏,延续和扩展了一维和二维元胞自动机的理论。

(4)高维元胞自动机:只是在理论上进行少量的探讨,实际的系统模型较少。Lee Meeker在他的硕士论文中,进行了对四维元胞自动机的探索。

元胞自动机与相关理论和方法的发展有着千丝万缕的联系,一方面,元胞自动机的发展得益于相关理论的研究,如逻辑数学、离散数学、计算机中的自动机理论,图灵机思想;另一方面,元胞自动机的发展也促进了一些相关学科和理论(如人工智能、非线性科学、复杂性科学)的发展,甚至还直接导致了人工生命科学的产生。另外,在表现上,元胞自动机模型还与一些理论方法存在着较大的相似性,或者相对性。下面,我们对元胞自动机的一些相关理论方法,以及它们与元胞自动机模型的关系进行简要讨论。

1.元胞自动机与人工生命研究

人工生命是90年代才刚刚诞生的新生科学,是复杂性科学研究的支柱学科之一。人工生命是研究能够展示自然界生命系统行为特征的人工系统的一间科学,它试图在计算机、机器人等人工媒体上仿真、合成和生物有机体相关联的一些基本现象,如自我复制、寄生、竞争、进化、协作等,并研究和观察"可能的生命现象"(Life-as-it-could-be),从而使人们能够加深理解"已知的生命现象

"(Life-as-we-know-it)(Longton,C·G·,1987;吴建兵,1998)。

元胞自动机是人工生命的重要研究工具和理论方法分支,兰顿(Christopher Langton)等人正是基于对元胞自动机的深入研究提出和发展了人工生命。同时,人工生命的发展又为元胞自动机赋予了新的涵义,元胞自动机模型得到科学家们的重新认识和认可,并在90年代又一次成为科学研究的前沿课题,其理论和方法得到进一步的提高。另外,元胞自动机与其他的人工生命研究方法有着很大的相似性。元胞自动机模型与神经网络、遗传算法等其他人工生命方法一样,都是基于局部的相互作用,来研究系统的整体行为。另外,元胞自动机、神经网络、L—系统都可以归为非线性动力学中的网络动力学模型,它们相互联系,关系密切。目前,一种被称为元胞神经网络(Cellular Neural Network,简称CNN)的模型就是元胞自动机与神经网络结合的产物。

2.元胞自动机与"混沌的边缘"

"混沌的边缘 (On the Edge of Chaos)(Langton C. G.,1992;M. Waldrop,1997)"是当前复杂性科学研究的一个重要成果和标志性口号,为圣塔菲(Santa Fee)学派的旗帜。所谓的"混沌"并非科学意义上的"混沌",而是Chaos本身的原有涵义,即与有序相对的"混乱"、"无序"的概念。因此,"混沌的边缘"应当被理解为"混乱的边缘"。或"无序的边缘",而与混沌动力学的"混沌"没有直接联系。其实,"混沌的边缘"完整的含义是指:生命等复杂现象和复杂系统存在和产生于"混沌的边缘"。有序不是复杂,无序同样也不是复杂,复杂存在于无序的边缘。

"混沌的边缘"这个概念是Norman Packard和Chhstopher Langton在对元胞自动机深入研究的基础上提出的,在此我们予以简要介绍。

Langton在对S. Wolfram动力学行为分类的分析和研究基础上,提出"混沌的边缘"这个响亮的名词,认为元胞自动机,尤其是第四类元胞自动机是最具创造性动态系统--复杂状态,它恰恰界于秩序和混沌之间,在大多数的非线性系统中,往往存在一个相应于从系统由秩序到混沌变化的转换参数。例如,我们日常生活中的水龙头的滴水现象,随着水流速度的变化而呈现不同的稳定的一点周期、两点或多点周期乃至混沌、极度紊乱的复杂动态行为,显然,这里的水流速度。或者说水压就是这个非线性系统的状态参数。Langton则相应地定义了一个关于转换函数的参数,从而将元胞自动机的函数空间参数比。该参数变化时,元胞自动机可展现不同的动态行为,得到与连续动力学系统中相图相类似的参数空间,Langton的方法加下 (谭跃进,1996):

首先定义元胞的静态(Quiescent State)。元胞的静态具有这样的特征,如果元胞所有领域都处于静态。则该元胞在下一时刻将仍处于这种静态(类似于映射中的不动点)。现考虑一元胞自动机,每个元胞具有k种状态(状态集为Σ),每个元胞与n个相邻元胞相连。则共存在kn种邻域状态。选

择k种状态中任意一种s∈Σ并称之为静态s

q 。假设对转换函数而言,共有n

q

种变换将邻域映射为

该静态,剩下的kn-n

q 种状态被随机地、均匀地映射为Σ-{s

q

} 中的每一个状态。则可定义:

这样,对任意一个转换函数。定义了一个对应的参数值λ。随着参数λ由0到1地变化,元胞自动机的行为可从点状态吸引子变化到周期吸引子,并通过第四类复杂模式达到混沌吸引子因此,第四类具有局部结构的复杂模式处于。秩序"与"混沌"之间,被称之为"混沌的边缘",在上述的参数空间中。元胞自动机的动态行为(定性1具有点吸引于十周期吸引子->"复杂模式"->混沌吸引子这样的演化模式。同时,它又给元胞自动机的动力学行为的分类赋予了新的意义:即λ低于一定值(这里约为0.6),那么系统将过于简单。换句话说,太多的有序而使得系统缺乏创造性;另外一个极端情况,λ接近1时。系统变的过于紊乱,无法找出结构特征;那么,λ只有在某个值附近,所谓"混沌的边缘",系统使得极为复杂。也只有在此时,"生命现象"才可能存在。在这个基础上,兰顿提出和发展了人工生命科学。在现代系统科学中。耗散结构学指出"生命"以负墒为生,而Langton则创造性的提出生命存在于"混沌的边缘"。从另外一个角度对生命的复杂现象进行了更深层次

探讨的。

3.元胞自动机与微分方程

微分方程有着三百多年的发展历史。一批伟大的科学家,如Euler、Caus。Langrange、Laplace、Poisson都作出了卓越的贡献。而且,后来发展的偏微分万程对量子力学等现代物理学的产生相发展有着重要的意义,一大批的物理规律就是利用偏微分方程来惟理和表达的,如麦克斯维方程等。恩格斯还指出“自然界的统一性,显示在关于各种现象领域的微分方程的 '惊人类似'之中"。总之,微分方程是现代科学的语言,也是科学研究中最为重要的研究工具之一。

微分方程的主要特点是时间、空间均连续(如果方程中有空间因子的话),这是建立在时空连续的哲学认识基础上的。而元胞自动机则是完全的空间离散、时间离散,在这个意义上,微分方程和元胞自动机一对相对的计算方法 (Toffoli.T.,1987)。

在人工计算的情况下。由符号组成的(偏)微分方程可以灵活地进行约简等符号运算,而得到精确的定量解。这是其优势。但在现代计算机日益发展,已成为我们科学研究的重要工具时,微分方程却遇到了一个尴尬的问题。即计算机是建立在离散的基础上的,微分方程在计算时不得不对自身进行时空离散化,建立差分方程等;或者展开成幂系列方程,截取部分展开式;或者采用某种转换用

离散结构来表示连续变量。这个改造过程不仅是繁杂的,甚至是不可能解决的,但最重要的是在这个过程中,微分方程也失去了它的自身最重

要的特性----精确性、连续性。

而对于元胞自动机来讲,脱离计算机环境来进行运算几乎是不可能的,但是借助计算机进行计算,则非常自然而合理,甚至它还是下一代并行计算机的原型。因此,在现代计算机的计算环境下,以元胞自动机为代表的离散计算方式在求解方面,尤其是动态系统模拟方面有着更大的优势。元胞自动机虽然在理论上具备计算的完备性,但满足特定目的构模尚无完备的理论支持,其构造往往是一个直觉过程。用元胞自动机得到一个定量的结果非常困难,即便是可能的话,元胞自动机也将陷入一个尴尬,元胞自动机的状态、规则等

构成必然会复杂化,从而不可避免地失去其简单、生动的特性。

然而,证如物理学家玻尔所说,"相对的并不一定是矛盾的,有可能是相互补充和相互完善的"。二者互有优缺点,相互补充,都有其存在的理由。但在现代计算机环境下,对于元胞自动机这一类相对来讲还处于幼年阶段的离散计算方式,需要予以更多的关注和支持。在地理学中,Lowry、Wilson、张新生(张新生,1997)等人的空间动力学模型都是基于微分方程的模型,由于这些模型大多是复杂的非线性微分方程,无法求得其解析解,需要按Euler方法或Runge-Kutta方法对微分方程进行一步或多步差分,完成相应的计算机模型或在GIS支持下的空间分析模型。对于这些模型,我们都可以构建相应的元胞自动机模型。

4.元胞自动机与分形分维

元胞自动机与分形分维理论有着密切的联系。元胞自动机的自复制、混沌等特征,往往导致元胞自动机模型在空间构形上表现出自相似的分形特征,即元胞自动机的模拟结果通常可以用分形理论来进行定量的描述。同时,在分形分维的经典范例中,有些模型本身就是,或者很接近元胞自动机模型,例如下面我们提到的凝聚扩散模型,因此,某些元胞自动机模型本身就是分形动力学模型。但是,究其本质,元胞自动机与分形理论有着巨大的差别。

元胞自动机重在对想象机理的模拟与分析;分形分维重在对现象的表现形式的表达研究。元胞自动机建模时,从现象的规律入手,构建具有特定涵义的元胞自动机模型;而分形分维多是从物理或数学规律、规则构建模型,而后应用于某种特定复杂现象,其应用方式多为描述现象的自相似性和分形分维特征。然而,这些分数维究竟能够给我们提供多少更有价值的信息?分形理论的进一步应用问题尚末得到解决 (仪垂祥,1995)。

此外,两者都强调一个从局部到整体的过程,但在这个过程的实质上,二者却存在巨大的差异。分形论的精髓是自相似性。这种自相似性不局限于几何形态而具有更广泛更深刻的含义;它是局部(部分)与整体在形态、功能、信息和结构特性等方面而具有统计意义上的相似性。因此,分形理论提供给我们分析问题的方法论就是从局部结构推断整体特征(陈述彭,1998)。相反,元胞自动机的精华在于局部的简单结构在一定的局部规则作用下,所产生的整体上的"突现"性复杂行为;即系统(整体)在宏观层次上,其部分或部分的加和所不具有的性质(谭跃进等,1996)。因此,分形理论强调局部与整体的相似性和相关性,但元胞自动机重在表现"突现"特征,即局部行为结构与整体行为的不确定性、非线性关系。

5.元胞自动机与马尔科夫(链)过程

马尔科夫过程(MarKov Process)是一个典型的随机过程。设X(t)是一随机过程,当过程在时刻t0所处的状态为已知时,时刻t(t>t0)所处的状态与过程在t0时刻之前的状态无关,这个特性成为无后效性。无后效的随机过程称为马尔科夫过程。马尔科夫过程中的时同和状态既可以是连续的,又可以是离散的。我们称时间离散、状态离散的马尔科夫过程为马尔科夫链。马尔科夫链中,各个时刻的状态的转变由一个状态转移的概率矩阵控制。

马尔科夫链与元胞自动机都是时间离散、状态离散的动力学模型,二者在概念上有一定的相通性。尤其是对于随机型的元胞自动机来讲,每个元胞的行为可以视为一个不仅时间上无后效,而且在空间上无外效的马尔科夫链。

但是,即使是随机型的元胞自动机也与马尔科夫链存在相当大的差别。首先,马尔科夫链没有空间概念,只有一个状态变量;而元胞自动机的状态量则是与空间位置概念紧密相关的;其次,马尔科夫链中的状态转移概率往往是预先设定好的,而随机型元胞自动机中的元胞状态转移概率则是由当前元胞的邻居构型所决定的。

6.元胞自动机、随机行走模型和凝聚扩散模型

随机行走模型(Random Walk Model)模拟的是统计数学中提供"最可能状态"常用的数学模型。它的基本思想为:给定空间中的一个粒子:它在空间中的移动矢量 (包括方向和距离)是由跃迁概率的

随机量所控制,由此可以模拟诸如自然界中的分子布朗运动、电子在金属中的随机运动等复杂过程。其理论研究主要集中在对单个粒子的运动规律的研究。但是,随机行走模型中粒子可以是很多个,但是它们遵循的规则都是一个统一的随机规程,而且它们之间的运动是相互独立的,互不影响。如

果考虑它们之间的相互作用,就可能构

造出其他基于随机行走的模型,例如凝聚扩散模型。

凝聚扩散(Diffusion-Limited Aggregation)模型,简称DLA,可以看作是一个多粒子的随机行走模型,而且它的计算空间也往往是一个离散的格网。它是由A·Written和Sander于1981年首先提出的。其基本思想如下:给定初始点作为凝聚点,以它作为圆心做一个大圆,在圆周上的一个随机点释放一个粒子,为简单起见,它的运动通常规定为一个随机行走过程,直到它运动至与已有的凝聚点相邻,改变它的状态为凝聚点,不再运动;再随机释放一个粒子;直至凝聚。重复上述过程,就可以得到一个凝聚点的连通集,形似冬日里玻璃上的冰花。凝聚扩散模型还可以有不同的形式,如释放点可以在一个四边形中的顶部,从而在下面省长出形似荆棘的灌丛。而1984年,R·F·Voss提出的多粒子凝聚扩散(Multi-Particle Diffusion Aggregation)模型是对凝聚扩散模型的改进和发展。其基本思想是:在给定的离散空间中,依照一定的密度随机散布自由粒子,在中心设置一个凝聚点作为种子点,也可以随机布设若干个凝聚点作为种子,然后各自由粒子随机行走,一旦与凝聚点相邻,则变为新的凝聚点,直至所有的自由粒子"凝聚"。

元胞自动机、随机行走模型、凝聚扩散模型都是典型的分形图形的生成方法,在很多情况下,它们都可以生成相似的复杂图案。但它们之间仍存在着一定的差别。

随机行走模型与元胞自动自动机的差别在于以下几个方面:第一、随机行走模型通常只是考虑单个粒子的运动,而元胞自动机模型中则通常存在众多的元胞;第二、即使模型中,存在多个粒子,随机行走模型通常并不考虑粒子间的相互作用,粒子的运动是相互独立的;第三、随机行走中的粒子是运动的概念,而元胞自动机的元胞通常是一个状态变化的过程;第四、随机行走中的粒子的运动空间可以是离散的,也可以是连续的,但在元胞自动机中,元胞都分布在离散的空间网格上。

凝聚扩散模型。尤其是多粒子凝聚扩散模型与元胞自动机则非常相似:时间空间离散;模型中存在粒子的相互作用,且这种作用具有局部特征,即自由粒子在有凝聚点为邻居时,状态转变为凝聚点。特殊的是这种转变只是一个单向的转变,凝聚扩散模型在最终达到一种定态吸引子;粒子的运动遵循相通的规律,可以进行同步计算。因此。在广义上,凝聚扩散模型可以归为元胞自动机的一个特例。但是,它们之间仍存在以下几个不同点:一、元胞自动机模型面向的是整个网格空间,而凝聚扩散模型面向的是特定粒子的运动;二、元胞自动机的元胞通常只有状态的改变,其空间位置是固定

的,而凝聚扩散模型中的粒子不仅有状态的变化,更是一个运动的粒子。三、凝聚扩散中,多个粒子通常可以同时占据一个格网空间点,而元胞自动机模型中,每个格网点只能有一个元胞。因此,在某种意义上讲,凝聚扩散模型与下面提到的多主体模型更相似,可以看作是粒子间不存在目的性、竞争、协作等智能特征的"无头脑"的主体模型。

7.元胞自动机与多主体系统

多主体系统(Multi-Agent System,简称MAS)是分布式人工智能的热点课题 (史忠植.1998),主要研究为了共同的、或各自的不同目标,自主的智能主体之间智能行为的协作、竞争等相互作用。基于主体的模型(Agent Based Model,简记为ABM),简称主体模型,又称基于实体的模型(Entity Based Model,简记为EBM),或基于个体的模型(lndividual Based Model,简记为IBM),是多主体系统的一个子集,其主要特征是每个主体代表了现实世界中一个智能性、自治的实体或个体,如人群中的个人,生态系统中的植物个体、动物个体,交通流中的汽车,计算网络中的计算机,经济系统中的经营者等。而在多主体系

统中,组成系统的个体可以是任何系统部件,如组成专家系统的是一条条意见。

一些基于主体的模型中的主体是具有空间概念的,交通流中的汽车,生态系统中的动植物个体等;但有些并不具有空间概念,如计算网络中的计算机。对于那些有空间概念的主体,其空间表示即可以是连续的,如一组实数坐标对;也可以是离散的,即格网空间中的行列值。而元胞自动机与这种具有离散空间概念的主体模型非常相近,二者均研究在离散空间上个体间的相互作用而形成整体上的复杂行为。但仍然存在很大的区别;

(l)主体模型中的主体可能是可以移动的,如动物个体;但也有可能是不可以移动的;而元胞自动机模型中的元胞个体通常是不可以移动的,元胞自动机在整体上的运动是通过元胞个体的状态变化来实现的。

(2)在基于格网空间的主体模型中,格网只是作为主体的空间定位,多个主体可以占据一个格网点;而在元胞自动机模型中,每个格网点只能拥有一个特定状态的元胞。

(3)在本质上讲,可以说,主体模型是面向(通常是稀疏,分布在网格空间上的个体的,而元胞自动机则是面向整个网格空间的。在模型运行时,主体模型将只考虑个体的行为,而元胞自动机将考虑整个元胞空间上的每个格网 (元胞)的状态。

8.元胞自动机与系统动态学模型

系统动力学 (SystemDynamics,简称SD)是一间分析研究反馈系统的学科,也是一门认识系统问题和解决系统问题交叉的综合性学科。它最初由美国麻省理工学院的Jay W·Forrestr教授于1956年开发提出,其特点是引入了系统分析的概念,强调信息反馈控制,是系统论、信息论、控制论和决策论的综合产物,非常适于研究复杂系统的结构、功能与动态行为之间的关系。通过分析系统结构,选取适当因素,建立它们之间的反馈关系,并在此基础上建立一系列微分方程,构建系统动态学方程,进一步考察系统在不同参数和不同

策略因素输入时的系统动态变化行为和趋势,为决策者提供决策支持。由于它能够对实际系统进行动态仿真,因而系统动力学模型可作为实际系统,特别是社会、经济、生态复杂大系统的"实验室"(Forrester。J·W·,1969;裴相斌,1999;李一智等,1987)。

系统动态学模型在地球科学研究中具有比较广泛的实用性。因为它着眼于系统的整体最佳目标,不是单纯追求个别子系统的最佳目标,有助于实现人口、资源、环境与社会、经济各子系统之间的协调,采用无量纲的综合研究。同时,该模型仍采用的一阶微分方程组,带有延迟函数和表函数,又能引入投入一产出反馈回路的概念,能比较直观、形象地处理某些比较复杂的非线性问题 (陈述彭,1991)。但是,系统动态学也有"先天不足",而限制了它在地球科学中的应用。

(1)首先,SD对系统的描述带有主观性。建模者对系统结构的认识,主要包括因素的选取及其相关关系的描述,就直接反映在模型中。而复杂系统的不确定性、非线性等复杂性特征决定了它的系统结构具有混沌性,不同人对它的描述可能有很大的差别,因而,系统动态学在地学建模中,难免会受到个人主观性的干扰,而影响模型的模拟结果。

(2)其次,SD缺乏全面的协调指标体系。复杂系统中有许多因素是定性的,需要一个量化的过程。那么,多个相关因子的分类、分级定量标准就需要从系统的高度进行协调,这往往是系统动态学模

型的一个难题。

(3)最后,缺乏空间因素的处理功能,难以刻画空间系统中各要素在空间上的相互作用和相互反馈关系(张新生,1997;裴相斌,1999)。这对其应用于空间复杂系统研究是个致命的限制。

系统动态学模型与元胞自动机都是采用 "自下而上"的研究思路,利用系统要素间的反馈等相互作用,来模拟和预测系统的整体的动态行为,它们都是研究复杂系统动态变化约有力工具。但是,二者又有所不同:首先,在模型机制上,CA模型基于系统要素间的空间相互作用,而SD则更多的考虑要素间指标属性的关联关系;其次,在模型表现形式上,CA是时间、空间、状态全离散的,转换规则也往往表现为参照表形式,而SD则表现为系列的微分方程组,时间、属性及要素间反馈关系的表达都是连续性质的i第三,在结果表

现上,CA模型表现为系统空间结构的时空动态演化,而SD模型的结果是系统某个社会经济指标的动态变化;最后,在应用上,CA模型多用于复杂系统的时空演化模拟,而SD模型缺乏空间概念,更适于社会经济系统的模拟预测。

元胞自动机可用来研究很多一般现象。其中包括通信、信息传递(Communicahon)、计算(Compulation)、构造(ConsTruction)、生长(Growth)、复制(Reproductionj、竞争(Competition)与进化(Evolutio,])等(Smith A.,1969;Perrier,J.Y.,1996)。同时。它为动力学系统理论中有关秩序(Ordering)、紊动(Turbulence)、混沌(Chaos)、非对称(Symmetry-Breaking)、分形(Fractality)等系统整体行为与复杂现象的研究提供了一个有效的模型工具(V ichhac。G,1984; Bennett,C,1985)。

元胞自动机自产生以来,被广泛地应用到社会、经济、军事和科学研究的各个领域。应用领域涉及社会学、生物学、生态学、信息科学、计算机科学、数学、物理学、化学、地理、歹境、军事学等。

在社会学中,元胞自动机用于研究经济危机的形成与爆发过程、个人行为的社会性,流行现象,如服装流行色的形成等。在生物学中,元胞自动机的设计思想本身就来源于生物学自繁殖的思想,因而它在生物学上的应用更为自然而广泛。例如元胞自动机朋于肿瘤细胞的增长机理和过程模拟、人类大脑的机理探索(V ictor.Jonathan.D.,1990)、爱滋病病毒HIV的感染过程(Sieburg,H.B.. 1990)、自组织、自繁殖等生命现象的研究以及最新流行的克隆(Clone)技术的研究等(ErmentroutG。B。,1993)。

在生态学中。元胞自动机用于兔子-草,鲨鱼-小鱼等生态动态变化过程的模拟,展示出令人满意的动态效果;元胞自动机还成功地应用于蚂蚁、大雁、鱼类洄游等动物的群体行为的模拟;另外,基于元胞自动机模型的生物群落的扩散模拟也是当前的一个应用热点。在信息学中。元胞自动机冉于研究信息的保存、传递、扩散的过程。另外。Deutsch(1972)、Sternberg(1980)和Rosenfeld(1979)等人还将二维元胞自动机应用到图像处理和模式识别中(WoIfram.S.,1983)。

在计算机科学中。元胞自动机可以被看作是并行计算机而用于并行计算的研究(Wolfram.S.1983)。另外。元胞自动机还应用于计算机图形学的研究中。

在数学中,元胞自动机可用来研究数论和并行计算。例如Fischer(1965)设计的素数过滤器(Prime Number Sieves)(Wolfram,S.1983)。

在物理学中。除了格子气元胞自动机在流体力学上的成功应用。元胞自动机还应用于磁场、电场等场的模拟,以及热扩散、热传导和机械波的模拟。另外。元胞自动机还用来模拟雪花等枝晶的形成。

在化学中,元胞自动机可用来通过模拟原子、分子等各种微观粒子在化学反应中的相互作用,而研究化学反应的过程。例如李才伟(1997)应用元胞自动机模型成功模拟了由耗散结构创始人I·Prgogine所领导的Brussel学派提出的自催化模型---Brusselator模型,又称为三分子模型。Y·BarYam 等人利用元胞自动机模型构造了高分子的聚合过程模拟模型,在环境科学上,有人应用元胞自动机来模拟海上石油泄露后的油污扩散、工厂周围废水、废气的扩散等过程的模拟。

在军事科学中,元胞自动机模型可用来进行战场的军事作战模拟"提供对战争过程的aq理解(谭跃进等,1996)。

元胞自动机作为一种动态模型,更多的是作为一种通用性建模的方法,其应用几乎涉及社会和自然科学的各个领域,在此我们不在一一介绍。

元胞自动机(CA)代码及应用

元胞自动机(CA)代码及应用 引言 元胞自动机(CA)是一种用来仿真局部规则和局部联系的方法。典型的元胞自动机是定义在网格上的,每一个点上的网格代表一个元胞与一种有限的状态。变化规则适用于每一个元胞并且同时进行。典型的变化规则,决定于元胞的状态,以及其(4或8 )邻居的状态。元胞自动机已被应用于物理模拟,生物模拟等领域。本文就一些有趣的规则,考虑如何编写有效的MATLAB的程序来实现这些元胞自动机。 MATLAB的编程考虑 元胞自动机需要考虑到下列因素,下面分别说明如何用MATLAB实现这些部分。并以Conway的生命游戏机的程序为例,说明怎样实现一个元胞自动机。 ●矩阵和图像可以相互转化,所以矩阵的显示是可以真接实现的。如果矩阵 cells的所有元素只包含两种状态且矩阵Z含有零,那么用image函数来显示cat命令建的RGB图像,并且能够返回句柄。 imh = image(cat(3,cells,z,z)); set(imh, 'erasemode', 'none') axis equal axis tight ●矩阵和图像可以相互转化,所以初始条件可以是矩阵,也可以是图形。以下 代码生成一个零矩阵,初始化元胞状态为零,然后使得中心十字形的元胞状态= 1。 z = zeros(n,n); cells = z; cells(n/2,.25*n:.75*n) = 1; cells(.25*n:.75*n,n/2) = 1; ●Matlab的代码应尽量简洁以减小运算量。以下程序计算了最近邻居总和,并 按照CA规则进行了计算。本段Matlab代码非常灵活的表示了相邻邻居。 x = 2:n-1; y = 2:n-1; sum(x,y) = cells(x,y-1) + cells(x,y+1) + ... cells(x-1, y) + cells(x+1,y) + ... cells(x-1,y-1) + cells(x-1,y+1) + ... cells(x+1,y-1) + cells(x+1,y+1); cells = (sum==3) | (sum==2 & cells); ●加入一个简单的图形用户界面是很容易的。在下面这个例子中,应用了三个 按钮和一个文本框。三个按钮,作用分别是运行,停止,程序退出按钮。文框是用来显示的仿真运算的次数。 %build the GUI %define the plot button plotbutton=uicontrol('style','pushbutton',...

扩散过程的元胞自动机模拟

第23卷第1期2011年3月河南工程学院学报(自然科学版)J OURNA L O F HENAN I N ST ITUTE OF ENG I N EER I NG V o l 23,N o 1M ar .2011 扩散过程的元胞自动机模拟 李延升1,2,侯珂珂1,张保林2 (1.许昌学院化学化工学院,河南许昌461000; 2.郑州大学化工与能源学院,河南郑州450007)摘 要:以元胞自动机为研究方法,通过编写M atlab 程序,以演化示意图的形式,模拟了圆域内的扩散过程,给出了 累积演化率曲线.同时,用微积分的方法,解析了该扩散过程,并结合实例与元胞自动机方法对比.研究证 明,元胞自动机可以生动形象地模拟扩散过程,且与微积分得到的结论一致. 关键词:扩散;元胞自动机;扩散方程;模拟 中图分类号:TQ019 文献标识码:A 文章编号:1674-330X (2011)01-0001-04 收稿日期:2011-02-11 作者简介:李延升(1971-),男,山东章丘人,讲师,博士,主要从事化工传递过程与精细化工的教学研究工作.通讯作者:张保林(1947-),男,河南西平人,教授,博士生导师,主要从事化工传递过程与精细化工的教学研究工作. 扩散过程是重要的质量传递方式之一,元胞自动机则是近年来新兴的仿真模拟方法.但是,将两者结合,即用元胞自动机研究扩散过程的文献却相对较少.有关此类的报道,多是和反应过程相关联且研究的侧重点放在后者[1],很少见到用元胞自动机专门研究扩散过程的报道.另外,在有关的报道中,元胞自动机模型的参数往往过多且相互之间的关系复杂,分析时需要综合多门学科的理论,这限制了它的实际应用.作为一种新兴的研究手段,元胞自动机的意图是以极其简单的规则解释或模拟复杂的现象,而有关的报道多数违背了这一意图,无法体现元胞自动机的优越性.本文即从此方面入手,将元胞自动机方法与数学分析方法相对比,给出了生动形象的扩散过程动态画面,为进一步的研究奠定了基础. 1 元胞自动机简介 元胞自动机有时也被称为细胞自动机、点格自动机、分子自动机或单元自动机,它是现代计算机之父N eum ann 及其追随者提出的想法.20世纪末21世纪初,Stephen 将这种带有强烈的纯游戏色彩的原始想法从学术上加以分类整理,最终使之上升到了科学方法论[2]. 元胞自动机是一时间和空间都离散的动力系统,散布在规则格网(Lattice Grid)中的每一元胞(Ce ll)取有限的离散状态,遵循同样的演化规则,依据确定的局部规则同步更新,大量元胞通过简单的相互作用而构成动态系统的演化.不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是由一系列模型构造的规则构成,凡是满足这些规则的模型都可以算作元胞自动机模型.因此,元胞自动机是一类模型的总称,或者说是一个方法框架[1-2].元胞自动机最基本的组成为元胞、元胞空间、邻居及规则这4部 分.简单来讲,元胞自动机可以视为由一个元胞空间和定义于该空间的变换函数所组成[1-3]. 2 扩散过程元胞自动机模型的提出 同普通的元胞自动机一样,本文的元胞自动机也是采用等间隔的点作为元胞.不失一般性,以二维的圆形区域为离散域,以处于中心的某个元胞为圆心,取适当长度的半径,在圆域内的元胞即为该元胞自动机的元胞,正好在圆上的交叉点也看作圆域内的元胞,见图1.以纵横方向上均匀分布的点为元胞,圆域内外的元胞区分非常明确.为了让画面清晰,该图的元胞较少,在实际应用时,元胞数量要比该图多得多.

元胞自动机简史

元胞自动机简史 元胞自动机的诞生是人类探索人的认识本质的结果,也是计算技术巨大进步推动的结果。自古以来,人类认识一般问题的根本方法就是,建模和计算(推演)。模型是人类智力能理解自然世界的唯一方式。而元胞自动机正是一种可以用来建模也非常容易进行计算的理论框架和模型工具。最早从计算的视角审视问题的是关心人的认识本质的哲学家。笛卡尔认为, 人的理解就是形成和操作恰当的表述方式。洛克认为, 我们对世界的认识都要经过观念这个中介, 思维事实上不过是人类大脑对这些观念进行组合或分解的过程。霍布斯更是明确提出, 推理的本质就是计算。莱布尼兹也认为, 一切思维都可以看作是符号的形式操作的过程。进入20 世纪, 弗雷格, 怀特海、罗素等人通过数理逻辑把人类的思维进一步形式化, 形成了所谓的命题逻辑及一阶和高阶逻辑。在他们看来, 逻辑和数学, 都是根据特定的纯句法规则运作的。在这里, 所有的意义都被清除出去而不予考虑。在弗雷格和罗素的基础上, 维特根斯坦在他的早期哲学中把哲学史上自笛卡尔以来的原子论的理性主义传统发展到了一个新的高度。在维特根斯坦看来, 世界是逻辑上独立的原子事实的总和, 而不是事物的总和; 原子事实是一些客体的结合, 这些事实和它们的逻辑关系都在心灵中得到表达: 我们在心灵中为自己建造了事实的形象。人工智能事实上就是试图在机器中实现这种理性主义理想的一门学科。 在计算理论发展过程中, 阿兰·图灵(A. Turing) 的思想可以说是最关键的。在1936 年发表的论文中, 图灵提出了著名的图灵机概念。图灵机的核心部分有三: 一条带子、一个读写头、一个控制装置。带子分成许多小格, 每小格存一位数; 读写头受制于控制装置, 以一小格为移动量相对于带子左右移动, 或读小格内的数, 或写符号于其上。可以把程序和数据都以数码的形式存储在带子上。这就是“通用图灵机”原理。图灵在不考虑硬件的前提下, 严格描述了计算机的逻辑构造。这个理论不仅解决了纯数学基础理论问题, 而且从理论上证明了研制通用数字计算机的可行性。 图灵认为, 人的大脑应当被看作是一台离散态机器。尽管大脑的物质组成与计算机的物质组成完全不同, 但它们的本质则是相同。。离散态机器的行为原则上能够被写在一张行为表上, 因此与思想有关的大脑的每个特征也可以被写在一张行为表上, 从而能被一台计算机所仿效。1950 年, 图灵发表了《计算机器和智能》的论文, 对智能问题从行为主义的角度给出了定义, 设计出著名的“图灵测验,论证了心灵的计算本质, 并反驳了反对机器能够思维的9 种可能的意见。 与图灵提出人的大脑是一台离散态的计算机的思想几乎同一时期, 计算机科学的另一个 开创者冯·诺伊曼(J . von Neumann) 则开始从计算的视角思考生命的本质问题。一个人工的机器能够繁殖它自己吗? 当年笛卡尔在声称动物是机器的时候, 就曾被这个问题所难住。但冯·诺伊曼要回答这个问题, 他要找到自动机产生后代的条件, 他要证明机器可以繁殖! 为此, 冯·诺伊曼作了一个思想实验。他想象一台机器漂浮在一个池塘的上面, 这个池塘里有许多机器的零部件。这台机器是一台通用的建造器: 只要给出任何一台机器的描述,这台机器就会在池塘中寻找合适的部件, 然后再制造出这台机器。如果能够给出它自身的描述, 它就可以创造出它本身。不过, 这还不是完全的自我繁殖, 因为后代机器还没有对自身的描述, 它们因此不能复制自己。所以, 冯·诺伊曼继续假定最初的机器还必须包含一个描述复制器, 一旦后代机器产生出来, 它也从亲代那里复制一份关于自身的描述, 这样, 后代机器就可以无穷无尽地繁殖下去。 冯·诺伊曼的试验揭示了一个深刻的问题:任何自我繁殖的系统的基因材料, 无论是自然的还是人工的, 都必须具有两个不同的基本功能: 一方面它必须起到计算机程序的作用, 是一种在繁殖下一代时能够运行的算法, 另一方面它必须起到被动数据的作用, 是一个能够复制和传给下一代的描述。1953 年沃森和克里克揭示的DNA 结构和自我复制的机理。DNA 的特性正好具备冯·诺伊曼所指出的两个要求。 然而, 冯·诺伊曼对他自己的动力学模型并不十分满意。他不能充分地获得最小的逻辑前提, 因为该模型仍然以具体的原材料的吸收为前提。冯·诺伊曼感到, 该模型没有很好地把过程的

元胞自动机方法及其在材料介观模拟中的应用

https://www.360docs.net/doc/005843195.html, 1 元胞自动机方法及其在材料介观模拟中的应用 何燕,张立文,牛静 大连理工大学材料系(116023)  E-mail : commat @https://www.360docs.net/doc/005843195.html,   摘 要:元胞自动机(CA)是复杂体系的一种理想化模型,适合于处理难以用数学公式定量描 述的复杂动态物理体系问题,如材料的组织演变等。本文概述了元胞自动机方法的基本思想 及原理,介绍了CA的基本组成及特征,综述了CA方法在材料介观模拟研究中的应用。研究表 明CA法在对金属凝固结晶、再结晶、及相变现象等材料介观尺度的组织模拟中表现出特有的 优越性。  关键词:元胞自动机,组织演变,介观模拟,动态再结晶 1. 引 言  自20世纪计算机问世以来,用计算机建立模型来模拟材料行为的方法在材料设计中的 应用越来越广泛,此方法既可节省大量的人力物力和实验资金,又能为实验提供巨大的灵活 性和方便性,因而已经引起了各界科学家的高度重视和极大兴趣。计算机对材料行为的模拟 主要有三个方面:材料微观行为、介观行为和宏观行为的模拟。材料的微观行为是指在电子、原子尺度上的材料行为,如模拟离子实(原子)体系行为,在这方面主要应用分子动力学、分子力学等理论方法;材料的介观行为是指材料显微组织结构的转变,包括金属凝固结晶、再结晶及相变过程,在这方面的模拟主要应用Monte Carlo(MC)方法和Cellular Automata(CA)方法;材料的宏观行为主要指材料加工方面,如材料加工中的塑性变形,应力 应变场及温度场的变化等,在这方面的模拟工作主要应用大型有限元软件Marc, Ansys等。大量实验研究表明,材料的微观组织结构决定了其宏观行为及特征。因此,对材料介观行为 的模拟显得尤为重要。传统的数学建模方法是建立描述体系行为的偏微分方程,它依赖于对 体系的成熟定量理论,而对大多数体系来说这种理论是缺乏的;从微观入手的Monte Carlo 方法主要依赖于体系内部自由能的计算,由于其运算量大,需要大量的数据,运算速度慢,为模拟工作带来了诸多不便;而CA方法则另辟蹊径,通过直接考察体系的局部相互作用, 再借助计算机模拟这种作用导致的总体行为,从而得到其组态变化,并体现出宏观上的金属 性能。由于CA的结构简单,便于计算,允许考虑数量极大的元胞,并且在空间和时间的尺 度上都不受限制,出于以上特点,元胞自动机方法已经受到越来越多研究工作者的青睐。本 文概述了元胞自动机方法的基本思想及原理,介绍了CA的基本组成及特征,对CA法在模拟 介观组织行为方面的应用进行了综述。

元胞自动机的定义与构成及其特征

元胞自动机的定义与构成及其特征 https://www.360docs.net/doc/005843195.html, 2005-4-17 15:05:00 来源:生命经纬 尽管元胞自动机有着较为宽松,甚至近乎模糊的构成条件。但作为一个数理模型,元胞自动机有着严格的科学定义。同时,元胞自动机是一个地地道道的"混血儿"。是物理学家、数学家,计算机科学家和生物学家共同工作的结晶。因此。对元胞自动机的含义也存在不同的解释,物理学家将其视为离散的、无穷维的动力学系统;数学家将其视为描述连续现象的偏微分方程的对立体,是一个时空离散的数学模型;计算机科学家将其视为新兴的人工智能、人工生命的分支;而生物学家则将其视为生命现象的一种抽象。下面给出几种常见的定义: 1.元胞自动机的物理学定义 元胞自动机是定义在一个由具有离散、有限状态的元胞组成的元胞空间上,并按照一定局部规则,在离散的时间维上演化的动力学系统。 具体讲,构成元胞自动机的部件被称为"元胞",每个元胞具有一个状态。这个状态只琵取某个有限状态集中的一个,例如或"生"或"死",或者是256中颜色中的一种,等等;这些元胞规则地排列在被你为"元胞空间"的空间格网上;它们各自的状态随着时间变化。而根据一个局部规则来进行更新,也就是说,一个元胞在某时刻的状态取决于、而且仅仅家决于上一时刻该元胞的状态以及该元胞的所有邻居元胞的状态;元胞空间内的元胞依照这样的局部规则进行同步的状态更新,整个元胞空间则表现为在离散的时间维上的变化。 2.元胞自动机的数学定义 美国数学家L.P.Hurd和K·Culik等人在90年代初,对元胞自动机分别从集合论和拓扑学等角度进行了严格地描述和定义 (谢惠民,1994; Culik,II K,1990;李才伟,1997) 1)基于集合论的定义 设d代表空间维数,k代表元胞的状态,并在一个有限集合S中取值,r表元胞的邻居半径。Z是整数集,表示一维空间,t代表时间。 为叙述和理解上简单起见,在一维空间上考虑元胞自动机,即假定d=1。那么整个元胞空间就是在一维空间,将整数集Z上的状态集S的分布,记为S Z。元胞自动机的动

元胞自动机参考文献

[1] Zhou W H, Lee J, Li G L, et al. Embedding Game of Life into a Simple Asynchronous Cellular Automaton[C]. Computing and Networking (CANDAR), 2014 Second International Symposium on IEEE, 2014: 503-506. [2]Tian J, Treiber M, Zhu C, et al. Cellular Automaton Model with Non-hypothetical Congested Steady State Reproducing the Three-Phase Traffic Flow Theory[M]. Cellular Automata. Springer International Publishing, 2014: 610-619. [3]Delivorias S, Hatzikirou H, Penaloza R, et al. Detecting Emergent Phenomena in Cellular Automata Using Temporal Description Logics[M]. Cellular Automata. Springer International Publishing, 2014: 357-366. [4] D'Ariano G M, Mosco N, Perinotti P, et al. Path-integral solution of the one-dimensional Dirac quantum cellular automaton[J]. Physics Letters A, 2014, 378(43): 3165-3168. [5] Bisio A, D’Ariano G M, Tosini A. Quantum field as a quantum cellular automaton: The Dirac free evolution in one dimension[J]. Annals of Physics, 2015, 354: 244-264. [6] Masuda T, Nishinari K, Schadschneider A. Cellular Automaton Approach to Arching in Two-Dimensional Granular Media[M]. Cellular Automata. Springer International Publishing, 2014: 310-319. [7] Takada K, Namiki T. on Limit Set of Two-Dimensional Two-State Linear Cellular Automaton Rules[C]. Computing and Networking (CANDAR), 2014 Second International Symposium on. IEEE, 2014: 470-475. [8] Al-Mamun M A, Srisukkham W, Fall C, et al. A cellular automaton model for hypoxia effects on tumour growth dynamics[C].Software, Knowledge, Information Management and Applications (SKIMA), 2014 8th International Conference on. IEEE, 2014: 1-8. [9] Hu M L, Sun J. Sudden change of geometric quantum discord in finite temperature reservoirs[J]. Annals of Physics, 2015, 354: 265-273. [10] Bure? M, Siegl P. Hydrogen atom in space with a compactified extra dimension and potential defined by Gauss’ law [J]. Annals of Physics, 2015, 354: 316-327. [11] Terrier V. Recognition of linear-slender context-free languages by real time one-way cellular automata[C]. AUTOMATA 2015. 2015, 9099: 251-262. [12] Fuentes M L, Klimchuk J A. Two-dimensional cellular automaton model for the evolution of active region coronal plasmas[J]. The Astrophysical Journal, 2015, 799(2): 128. [13] Tucker G E, Hobley D E J, Hutton E, et al. CellLab-CTS 2015: a Python library for continuous-time stochastic cellular automaton modeling using Landlab[J]. Geoscientific Model Development Discussions, 2015, 8: 9507-9552.

元胞自动机与Matlab

元胞自动机与MATLAB 引言 元胞自动机(CA)是一种用来仿真局部规则和局部联系的方法。典型的元胞自动机是定义在网格上的,每一个点上的网格代表一个元胞与一种有限的状态。变化规则适用于每一个元胞并且同时进行。典型的变化规则,决定于元胞的状态,以及其(4或8 )邻居的状态。元胞自动机已被应用于物理模拟,生物模拟等领域。本文就一些有趣的规则,考虑如何编写有效的MATLAB的程序来实现这些元胞自动机。 MATLAB的编程考虑 元胞自动机需要考虑到下列因素,下面分别说明如何用MATLAB实现这些部分。并以Conway的生命游戏机的程序为例,说明怎样实现一个元胞自动机。 ●矩阵和图像可以相互转化,所以矩阵的显示是可以真接实现的。如果矩阵 cells的所有元素只包含两种状态且矩阵Z含有零,那么用image函数来显示cat命令建的RGB图像,并且能够返回句柄。 imh = image(cat(3,cells,z,z)); set(imh, 'erasemode', 'none') axis equal axis tight ●矩阵和图像可以相互转化,所以初始条件可以是矩阵,也可以是图形。以下 代码生成一个零矩阵,初始化元胞状态为零,然后使得中心十字形的元胞状态= 1。 z = zeros(n,n); cells = z; cells(n/2,.25*n:.75*n) = 1; cells(.25*n:.75*n,n/2) = 1; ●Matlab的代码应尽量简洁以减小运算量。以下程序计算了最近邻居总和,并 按照CA规则进行了计算。本段Matlab代码非常灵活的表示了相邻邻居。 x = 2:n-1; y = 2:n-1; sum(x,y) = cells(x,y-1) + cells(x,y+1) + ... cells(x-1, y) + cells(x+1,y) + ... cells(x-1,y-1) + cells(x-1,y+1) + ... cells(x+1,y-1) + cells(x+1,y+1); cells = (sum==3) | (sum==2 & cells); ●加入一个简单的图形用户界面是很容易的。在下面这个例子中,应用了三个 按钮和一个文本框。三个按钮,作用分别是运行,停止,程序退出按钮。文框是用来显示的仿真运算的次数。

冯诺依曼元胞自动机

冯诺依曼元胞自动机(John V on Neumann’s Cellular Automaton) 冯诺依曼元胞自动机是由计算机科学家约翰冯诺依曼发明的一种图灵完备的元胞自动机。目前它还有三种不同的规则,分别名叫:JvN29,Nobili32,Hutton32.可以模拟许多“机器”,比如自我复制机(Replicator)就是其中最重要的一种。 目前几乎没有介绍冯诺依曼元胞自动机的中文网站,所以我在此给大家比较详细地介绍一下它。 一、JvN29 这是由John Von Neumann在1940年发明的自动机。由于其上的活细胞共有29种状态,故名JvN29,29种状态分别为: 前8种和后3种是激发态(不稳定),不用记。 其中4个蓝箭头和4个红箭头相当于“导线”,4个绿箭头和4个紫箭头分别是两种电线中的“电流”。 紫箭头可以eat(即将其变为死细胞,下同)蓝箭头,绿箭头可以eat 红箭头。不过紫箭头权限更高,它还可以eat掉4种菱形。 当一串绿箭头或紫箭头到达“导线”最前端时,前端前的死细胞就会根据绿箭头或紫箭头的不同序列而变成不同的稳定活细胞,这个过程叫做翻译,需要用到前8种激发态作为桥梁。8种激发态间有一个转化关系,如图: 我们一般采用所谓“密码子”的箭头序列。在JvN29中,每种稳定细胞都对应一个密码子,即一个可以产生此种细胞的箭头序列。从上图可以总结出JvN29的密码子如下:

这个表同样适用于红箭头和紫箭头。 菱形是种重要的状态,根据“导线”的不同接法它可以发挥不同的作用。 1)当接为一入多出时,菱形充当信号分路器: 当单独信号输入时: 当两个信号输入时: 可见,在分路时信号会延迟,菱形的三种激发态充当了桥梁的作用, 2)接入为三入一出或二入二出时,菱形充当“与门”,当且仅当发输入端全都有信号来时,菱形才进入激发态 3)特殊地,若接入一入一出,就构成信号延迟器:

数学建模常用算法模型

按模型的数学方法分: 几何模型、图论模型、微分方程模型、概率模型、最优控制模型、规划论模型、马氏链模型等 按模型的特征分: 静态模型和动态模型,确定性模型和随机模型,离散模型和连续性模型,线性模型和非线性模型等 按模型的应用领域分: 人口模型、交通模型、经济模型、生态模型、资源模型、环境模型等。 按建模的目的分: 预测模型、优化模型、决策模型、控制模型等 一般研究数学建模论文的时候,是按照建模的目的去分类的,并且是算法往往也和建模的目的对应 按对模型结构的了解程度分: 有白箱模型、灰箱模型、黑箱模型等 比赛尽量避免使用,黑箱模型、灰箱模型,以及一些主观性模型。 按比赛命题方向分: 国赛一般是离散模型和连续模型各一个,2016美赛六个题目(离散、连续、运筹学/复杂网络、大数据、环境科学、政策) 数学建模十大算法 1、蒙特卡罗算法 (该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,比较好用的算法) 2、数据拟合、参数估计、插值等数据处理算法 (比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具)

3、线性规划、整数规划、多元规划、二次规划等规划类问题 (建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo软件实现) 4、图论算法 (这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备) 5、动态规划、回溯搜索、分治算法、分支定界等计算机算法 (这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中) 6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法 (这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用) 7、网格算法和穷举法 (当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具) 8、一些连续离散化方法 (很多问题都是从实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的) 9、数值分析算法 (如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用)10、图象处理算法 (赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的这些图形如何展示,以及如何处理就是需要解决的问题,通常使用Matlab进行处理) 算法简介 1、灰色预测模型(必掌握)

基于元胞自动机原理的微观交通仿真模型

2005年5月重庆大学学报(自然科学版)May2005第28卷第5期Journal of Chongqing University(Natural Science Editi on)Vol.28 No.5 文章编号:1000-582X(2005)05-0086-04 基于元胞自动机原理的微观交通仿真模型3 孙 跃,余 嘉,胡友强,莫智锋 (重庆大学自动化学院,重庆 400030) 摘 要:描述了一种对高速路上的交通流仿真和预测的模型。该模型应用了元胞自动机原理对复杂的交通行为进行建模。这种基于元胞自动机的方法是将模拟的道路量离散为均匀的格子,时间也采用离散量,并采用有限的数字集。同时,在每个时间步长,每个格子通过车辆跟新算法来变换状态,车辆根据自定义的规则确定移动格子的数量。该方法使得在计算机上进行仿真运算更为可行。同时建立了跟车模型、车道变换的超车模型,并根据流程对新建的VP算法绘出时空图。提出了一个设想:将具备自学习的神经网络和仿真系统相结合,再根据安装在高速路上的传感器所获得的统计数据,系统能对几分钟以后的交通状态进行预测。 关键词:元胞自动机;交通仿真;数学模型 中图分类号:TP15;TP391.9文献标识码:A 1 元胞自动机 生物体的发育过程本质上是单细胞的自我复制过程,50年代初,计算机创始人著名数学家冯?诺依曼(Von Neu mann)曾希望通过特定的程序在计算机上实现类似于生物体发育中细胞的自我复制[1],为了避免当时电子管计算机技术的限制,提出了一个简单的模式。把一个长方形平面分成若干个网格,每一个格点表示一个细胞或系统的基元,它们的状态赋值为0或1,在网格中用空格或实格表示,在事先设定的规则下,细胞或基元的演化就用网格中的空格与实格的变动来描述。这样的模型就是元胞自动机(cellular aut omata)。 80年代,元胞自动机以其简单的模型方便地复制出复杂的现象或动态演化过程中的吸引子、自组织和混沌现象而引起了物理学家、计算机科学家对元胞自动机模型的极大兴趣[1]。一般来说,复杂系统由许多基本单元组成,当这些子系统或基元相互作用时,主要是邻近基元之间的相互作用,一个基元的状态演化受周围少数几个基元状态的影响。在相应的空间尺度上,基元间的相互作用往往是比较简单的确定性过程。用元胞自动机来模拟一个复杂系统时,时间被分成一系列离散的瞬间,空间被分成一种规则的格子,每个格子在简单情况下可取0或1状态,复杂一些的情况可以取多值。在每一个时间间隔,网格中的格点按照一定的规则同步地更新它的状态,这个规则由所模拟的实际系统的真实物理机制来确定。格点状态的更新由其自身和四周邻近格点在前一时刻的状态共同决定。不同的格子形状、不同的状态集和不同的操作规则将构成不同的元胞自动机。由于格子之间在空间关系不同,元胞自动机模型分为一维、二维、多维模型。在一维模型中,是把直线分成相等的许多等分,分别代表元胞或基元;二维模型是把平面分成许多正方形或六边形网格;三维是把空间划分出许多立体网格。一维模型是最简单的,也是最适合描述交通流在公路上的状态。 2 基于元胞自动机的交通仿真模型的优点目前,交通模型主要分为3类: 1)流体模型(Hydr odyna m ic Model),在宏观上,以流体的方式来描述交通状态; 2)跟车模型(Car-f oll owing Model),在微观上,描述单一车辆运动行为而建立的运动模型; 3)元胞自动机模型(Cellular Aut omat on),在微观 3收稿日期:2005-01-04 基金项目:重庆市自然科学基金项目(6972) 作者简介:孙跃(1960-),浙江温州人,重庆大学教授,博士,研究方向:微观交通仿真、电力电子技术、运动控制技术及系统。

元胞自动机理论基础

元胞自动机理论基础 Chapter1 元胞自动机(Cellular Automata,简称CA,也有人译为细胞自动机、点格自动机、分子自动机或单元自动机)。是一时间和空间都离散的动力系统。散布在规则格网 (Lattice Grid)中的每一元胞(Cell)取有限的离散状态,遵循同样的作用规则,依据确定的局部规则作同步更新。大量元胞通过简单的相互作用而构成动态系统的演化。不同于一般的动力学模型,元胞自动机不是由严格定义的物理方程或函数确定,而是用一系列模型构造的规则构成。凡是满足这些规则的模型都可以算作是元胞自动机模型。因此,元胞自动机是一类模型的总称,或者说是一个方法框架。其特点是时间、空间、状态都离散,每个变量只取有限多个状态,且其状态改变的规则在时间和空间上都是局部的。 1. 自动机 自动机(Automaton)通常指不需要人们逐步进行操作指导的设备(夏培肃,1984)。例如,全自动洗衣机可按照预先安排好的操作步骤作自动地运行;现代计算机能自动地响应人工编制的各种编码指令。完成各种复杂的分析与计算;机器人则将自动控制系统和人工智能结合,实现类人的一系列活动。另一方面,自动机也可被看作为一种离散数字动态系统的数学模型。例如,英国数学家A.M.Turing于1936年提出的图灵机就是一个描述计算过程的数学模型(TuringA M.,1936)。它是由一个有限控制器、一条无限长存储带和一个读写头构成的抽象的机器,并可执行如下操作: ·读写头在存储带上向左移动一格; ·读写头在存储带上向右移动一格; ·在存储的某一格内写下或清除一符号; ·条件转移。 图灵机在理论上能模拟现代数字计算机的一切运算,可视为现代数字计算机的数学模型。实际上,一切"可计算"函数都等价于图灵机可计算函数,而图灵机可计算函数类又等价于一般递归函数类。 根据存储带是否有限,可将自动机划分为有限带自动机(Finite Automaton)和无限带自动机(Infinite Automaton)。由于图灵机有无限长的存储带,所以为一种无限带自动机。有限带自动机常用作数字电路的数学模型,也用来描述神经系统和算法;而无限带自动机主要用来描述算法,也用来描述繁殖过程 (如细胞型自动机和网络型自动机)。 有限自动机是一种控制状态有限、符号集有限的自动机,是一种离散输入输出系统的数学模型。可将有限自动机设想成由一条划分为许多方格的输入带和一个控制器组成的机器:在输入带的每一个小格中可以容 纳一个符号,这些符号取自一个有限符号集S-控制器具有有限个可能状态(构成集合Q)。并在每一时刻仅处于其中的一个状态q;控制器有一个读入头,可以从输入带中读入符号;时间是离散的,初始时控制器处在状态;控制器的功能是根据其当前状态g和读入头从输入带上得到的符号a,来确定控制器的下一时刻的状态实现从状态q到状态q',实现从状态q到状态铲q'的转移,并将读入头右移一格。控制器另一功能是识别终止状态(它们构成Q的一个子集F),也可将该识别功能视为有限自动机的输出。 从数学上来定义,有限自动机是一个五元组: FA=(Q,S,δ,q0,F) 其中,Q是控制器的有限状态集、S是输入符号约有限集、δ是控制状态转移规律的Q×S到Q的映射(可用状态转移图或状态转移表表示),q0是初始状态、F是终止状态集。若δ是单值映射,则称M为确定性有限自动机;若δ是多值映射,则称M为非确定性有限自动机。

基于元胞自动机的土地资源节约利用模拟

第24卷 第5期 自 然 资 源 学 报V ol 24N o 5 2009年5月J OURNAL OF NATURAL RESOURCES M ay ,2009 收稿日期:2008-08-22;修订日期:2008-12-02。 基金项目:国家自然科学基金重点资助项目(40830532);国家自然科学基金资助项目(40801236);国家杰出青年基金资助项目(40525002);国家高技术研究发展计划资助项目(2006AA12Z206)。 作者简介:杨青生(1974-),男,青海乐都人,讲师,博士,主要研究遥感与地理信息模型及应用。E m ai :l qs y ang2002@https://www.360docs.net/doc/005843195.html, 基于元胞自动机的土地资源节约利用模拟 杨青生1,2 (1 广东商学院资源环境学院,广州510230;2 中山大学地理科学与规划学院,广州510275) 摘要:为模拟节约土地资源的城市可持续发展形态,以珠江三角洲城市快速发展的东莞市为 例,运用元胞自动机(C A )、地理信息系统(G IS)和遥感(RS)从历史数据中建立城市空间扩展的 C A,将土地资源节约利用程度与城市用地空间聚集程度相结合,在评价城市用地空间聚集程度 的基础上,通过不断增加离市中心距离权重和离公路距离权重,调整CA 的参数,模拟节约土地 资源,城市用地在空间上紧凑布局的城市形态,并以调整参数的模型(离市中心距离权重为 -0 006,离公路权重为-0 024)模拟结果为基础,分析了实现城市用地空间上紧凑发展,土地 资源节约利用的政策:到2010年,东莞市离市中心27k m 范围内的适宜地区可规定为鼓励城市 发展区,27~34k m 范围内的适宜地区可规定为限制性城市发展区,其它地区为非城市发展区。 关 键 词:土地资源;节约利用;紧凑;元胞自动机 中图分类号:F301 24;P208 文献标识码:A 文章编号:1000-3037(2009)05-0753-10 1 引言 元胞自动机(C ellular Auto m ata ,简称CA )具有强大的空间运算能力,可以有效地模拟复杂的动态系统。近年来,CA 已被越来越多地运用在城市模拟中,取得了许多有意义的研究成果[1~3]。CA 可以模拟虚拟城市,验证城市发展的相关理论,也可以模拟真实城市的发展, 如W u 等模拟了广州市的城市扩展 [4];黎夏和叶嘉安模拟了东莞市的城市扩张[5]。同时,用CA 可以模拟未来的城市规划景观,如黎夏等模拟了珠江三角洲地区城市不同发展条件下的规划景观[6,7]。这些研究表明,C A 能模拟出与实际城市非常接近的特征,可以由此预测未来城市的发展及土地利用变化,为城市和土地利用规划提供决策依据。 CA 的特点是通过一些简单的局部转换规则,模拟出全局的、复杂的空间模式。为了模拟城市,除了运用CA 的局部转换规则外,还要在转换规则中引入影响城市扩展的区域变量和全局变量。转换规则中的这些变量对应着很多参数,这些参数值反映了不同变量对模型的 贡献 程度。研究表明,这些参数值对模拟的结果影响很大。目前,C A 主要通过多准则判断(MCE ) [8]、层次分析法(AH P)[9]和主成分分析[10]、自适应模型[11]、人工神经网络模型 [5]、决策树[12]等方法确定模型的参数值。笔者也采用粗集[13]、支持向量机[14]、贝叶斯分类[15]、空间动态转换规则[16]等方法研究了非线性、动态转换规则模拟城市发展。目前,采用CA 模拟虚拟城市系统和真实城市系统已经非常成熟,模型的精度也越来越高,而模拟可

元胞自动机NaSch模型及其MATLAB代码

元胞自动机N a S c h模型 及其M A T L A B代码 This manuscript was revised by the office on December 22, 2012

元胞自动机N a S c h模型及其M A T L A B代码 作业要求 根据前面的介绍,对NaSch模型编程并进行数值模拟: 模型参数取值:Lroad=1000,p=0.3,Vmax=5。 边界条件:周期性边界。 数据统计:扔掉前50000个时间步,对后50000个时间步进行统计,需给出的结果。 基本图(流量-密度关系):需整个密度范围内的。 时空图(横坐标为空间,纵坐标为时间,密度和文献中时空图保持一致,画500个时间步即可)。 指出NaSch模型的创新之处,找出NaSch模型的不足,并给出自己的改进思路。 流量计算方法: 密度=车辆数/路长; 流量flux=density×V_ave。 在道路的某处设置虚拟探测计算统计时间T内通过的车辆数N; 流量flux=N/T。 在计算过程中可都使用无量纲的变量。 1、NaSch模型的介绍 作为对184号规则的推广,Nagel和Schreckberg在1992年提出了一个模拟车辆交通的元胞自动机模型,即NaSch模型(也有人称它为NaSch模型)。 时间、空间和车辆速度都被整数离散化。道路被划分为等距离的离散的格子,即元胞。 每个元胞或者是空的,或者被一辆车所占据。 车辆的速度可以在(0~Vmax)之间取值。 2、NaSch模型运行规则 在时刻t到时刻t+1的过程中按照下面的规则进行更新: (1)加速:vnmin(vn1,vmax) 规则(1)反映了司机倾向于以尽可能大的速度行驶的特点。 (2)减速:vnmin(vn,dn) 规则(2)确保车辆不会与前车发生碰撞。 (3)随机慢化:以随机概率p进行慢化,令:vnmin(vn-1,0) 规则(3)引入随机慢化来体现驾驶员的行为差异,这样既可以反映随机加速行为,又可以反映减速过程中的过度反应行为。这一规则也是堵塞自发产生的至关重要因素。 (4)位置更新:vnxnvn,车辆按照更新后的速度向前运动。其中vn,xn分别表示第n辆车位置和速度;l(l≥1)为车辆长度; p表示随机慢化概率;dnxn1xn1表示n车和前车n+1之间空的元胞数; vmax为最大速度。 3、NaSch模型实例

最新中山大学GIS考研部分总结

元胞自动机Cellular Automate CA具有强大的空间运算能力,常用于自组织系统演变过程。它是时间空间状态都离散,空间相互作用和时间因果关系都为局部的网格动力学模型,具有模拟复杂系统演化过程的能力。自下而上的研究思路,充分体现了复杂系统局部的个体行为产生全局有秩序模式的理念。 地理现象属于典型的动态复杂系统,具有开放性、动态性、自组织性、非平衡性等耗散结构特征。CA可以模拟复杂城市系统的某些特征,但是单个的CA很难准确模拟复杂城市系统的所有特征,可以将复杂城市系统进行分解,用不同的CA模拟城市系统的不同特征。 GIS能够很好的解决部分空间相关问题以及静态问题但对复杂的时空动态变化地理现象难以实现,空间建模方面具有一定的局限性。 动态系统的建模: 计算领域的动态影响,大量的迭代运算,确定与空间位置相关的具有指示性的因素,多层叠加要素信息的提取,通达性的动态变化,迭代过程中空间变量的更新,动态变化过程的可视化,模型的校正 CA增强GIS空间动态建模的功能,可谓GIS空间分析的引擎。GIS在空间分析和空间决策方面有很好的应用,但在动态空间建模和操作方面有较大的局限性。CA强大的时间建模能力能够丰富GIS现有的时空分析功能。模拟各种现象随时空变化的动态性。 多智能体系统成为一种进行复杂系统分析与模拟的思想方法和工具,单个AGEnt具备一定的功能,但对现实中复杂的大规模的问题,单个Agent无法描述和解决,多个智能体之间具有互动性交互性反应性自主性特点,相互协作达到共同的整体目标。定义为有多个可以相互交互的Agent 计算单元所组成的系统。 地理空间系统是一个典型的复杂系统,动态发展是基于微观空间个体相互作用的结果。多智能体系统思想的核心就是微观个体的相互作用能够产生宏观全局的格局。当把多智能体系统引进地理模拟时,多智能体就带有空间属性和空间位置,其空间位置往往是变化的,与传统的多智能体有明显的不同。 CA侧重的是自然环境要素,无法考虑复杂的空间决策行为及人文因素,CA与多智能体系统结合起来,将社会经济及行为等属性赋给多智能体,使模型可以反映影响土地利用格局演变的人文因素。 GIS空间分析一般方法 空间查询和检索,空间量算。空间插值,叠置分析,缓冲区分析 CA基本特征 元胞分布在按照一定规则划分的离散的元胞空间上 系统的演化按照等间隔时间分步进行,时间变量取等步长的时刻点 每个元胞都有明确的状态,并且元胞的状态只能取有限个离散值 元胞下一刻演化的状态值是由确定的转换规则所决定 每个元胞的转换规则只由局部邻域内的元胞状态所决定 优点: 在CA中,物理和计算过程直接的联系是非常清晰 CA能用比数学方程更为简单的局部规则产生更为复杂的结果 能用计算机对其进行建模,而无精度损失 能模拟任何可能的自然系统行为 CA不能在约简 GIS提供了丰富的空间信息和强有力的空间数据处理平台,满足在空间格局方面分析的需要,但是时空动态发展过程比最终形成的空间格局更为重要。GIS与时空动态模型的耦合将会极大的增强现有GIS分析复杂自然现象的能力。GIS能解决时空动态模型海量数据的获取储存

相关文档
最新文档