至此,分子热运动的程序设计完成,请看程序运行的截图:
图13 分子热运动模拟
3 细胞自动机的实验
3.1 一维细胞自动机分类
20世纪 80年代 ,物理学家斯蒂芬.沃夫拉姆对细胞自动机(CA)进行了分类,做了全面研究(1984)。他认为细胞自动机是个真实的复杂系统,有一些系统非常有趣,可以展现出和真实世界类似的现象。从大气现象到生物体甚至是经济系统,莫不如此。因此,有可能利用细胞自动机发现复杂系统的一般规律。更为有意义的是:复杂的系统可以从简单的行为中突现出来。
其次, 他相信,科学正处在一种新型研究方法变革的重大时期。这就是计算机实验。对自然界的一些对象,特别是复杂对象的研究,很难进行直接的实验。比如遥远星系中旋转的巨大的气体云,据说,它们往往在引力的作用下收缩成高密度的集结物,并最终成为恒星的中心团块,其周围绕着它旋转的较小的团块最后变成伴随该恒星的行星系统。这种说法,很显然没有人能用实际的实验来检验一下。又假如有人说通过提高利率,比如说在很短的时间内提升500个基点,以检验关于货币和股票的价格波动的某个新理论。可以肯定,任何一个国家的金融机构都不会同意,因为这种系统对人们的生活太重要了,任何人都不敢贸然作这类实验。但是,利用计算机进行模拟实验,同样也可以得出有意义的结果。而细胞自动机是利用这种新型研究方法进行研究的最好的对象。
沃夫拉姆所研究的细胞自动机是一维的,而康维和冯。诺伊曼的细胞自动机都是二维的,它们是在二维的平面上运行的。沃夫拉姆的一维细胞自动机是在一条直线上运行。每一个细胞只有左右两个邻居。一维细胞自动机的一个优点是:因为每一代细胞的状态都可以表示在一条直线上,因此,我们可以把不同时代的细胞状态从上到下一代代地排列。这样,我们就能轻易地看到它的历史变化情况。还有一个好处就是,规则的设定很简单,这佐证了简单规则能产生复杂现象的理论,同时,也能很轻易的研究不同的规则会产生什么样的结果。
下面介绍沃夫拉姆的一维细胞自动机
每一个细胞只能处在两个状态中的一个,即”生”和”死”。开始一行是随机配置的。我们把它叫做A行,A行的下面一行就是B行,表示下一代的情况。B行的状态由既定的规则根据A行的状态来决定。主要考虑下面的情况:B行的某个细胞的状态依赖于它正上方(A行)的3个细胞的状态。这3个个细胞的状态有8种可能。如果用”0”来表示死亡,用”1”来表示生存,那么,这8种状态就是:111 ,110,101,100,011,010,,001,000,对既定的规则来说,这三个细胞决定了B行这个细胞的状态。B行的每一个细胞的状态都可以用同样的规则来确定。以下C行和D行依此类推…
很明显,我们可以用8个二进制代码对这个八个状态进行编码,每一个编码就是事实上的一条规则,我们可以有2的8次方(256)种规则来约束这个一维细胞自动机。每一条规则我们可以用二进制代码的十进制数码来作为它的代号。下面我们来对这个一维细胞自动机进行详细的研究,请看图14:
图14 一维细胞自动机
这就是一维细胞自动机的模型。这是一个方格的世界,所有的方格都排成一排,每个方格都有黑或白两种颜色,我们用黑色的格表示直线上0状态的方格,用白色的格表示1状态的方格。那么一条断续的横线就是当前所有细胞状态的一种分布。这些方格随着时间变化,就形成了不同的横线。我们把这些随着时间变化的线纵向拼在一起形成了一个网格区域。其中纵轴表示时间的流逝(往下为正),横轴为细胞自动机在对应时刻的状态,就能得到一幅图像。
状态指的是每个细胞的状态(如生和死),半径是指每个细胞邻居的半径,如果是1,就表明有两个邻居,如果是2就表明有四个邻居。编码也就是我们上面说的那个编码。照这样看来,只要我们改变了编码,相当于改变了规则,我们能比较各种简单的规则下,细胞自动机能展现出什么复杂的现象来了。
首先我们输入224号规则,出现了这样的图示 图15:
图15 一维细胞自动机224号规则的图形
刚出现了一些白点,过了几个周期,屏幕就变成了一片黑色。而且再也没有任何黑色的生命体出现了。这说明,细胞全部死光了。重新运行一次后,还是一样的状况,这说明,这中现象不是偶然的,在224号规则的约束下,细胞自动机的细胞在运行了几个周期以后就全部死光了。请注意,224的二进制代码是11100000.
也就是说,这个编码规则下,细胞生存的概率是3/8=0.375 。先不解释这个数值有什么用,下面会用到。我们在来看另外一个编码:254 图16
图16 一维细胞自动机254号规则的图形
经过几个周期以后,屏幕全部是白色的细胞体。这说明细胞进入了另外一个极端的状态上了。254号二进制代码是11111110,也就是细胞死亡的概率是1/8=0.125
同样,我们先记下这个值得。
我们来看看132号规则,截图如下 图17:
图17 一维细胞自动机的132号规则的图形
因为我们的细胞自动机是从下到上,一行行的显示他的状态,所以,出现一条条的竖线说明了它的状态没有任何变化,规则二进制代码是:100000100,细胞生存概率是2/8=0.25.
从以上的分析,我们可以看出来,实际上,这三种状态都是一种类型的,也就是他们都演化到了一个稳定的状态,不再有任何的变化。下面我们再来看看另外一种类型的细胞自动机。输入208规则,得到以下截图 图18:
图18 一维细胞自动机的208号规则的图形
可以看到,CA显示出来的现象是一条条斜线。由于我们的边界是循环的,因此可以预言,经过若干个时间周期的运行以后,细胞自动机又回复到了原来的状态,因而这样的细胞自动机是循环的。两个相同状态之间经历的时间步长为这种细胞自动机的周期。208的二进制代码是11010000,故细胞生存概率是3/8=0.375.
仔细观察这两类的细胞自动机,我们就可以看出,要么它们就重复着相同的类型,要么就周期性的变化着,从某种意义上来说,它们都是处在一定程度上的稳定状态。
来看看150号规则是怎么变化的 图19:
图19 一维细胞自动机的150号规则的图形
可以看到,CA显示出了一个非常混乱的图形,在这个规则的约束下,我们没有办法观察到什么规律性的现象。这种变化特点明显和上面的两种类型不一样。而150的二进制代码是10010110,也就是活细胞的生存概率是4/8=0.5,也许大家注意到了,这个值明显比上面的值要大的多。
观察一下110号规则,它显示了一个更为奇妙的现象 图20:
图20 一维细胞自动机的110号规则的图形
我们看到,它既不等同于完全的随机,又没有固定的循环的迹象。某些局部结构保持了固定不变,但是某些局部结构在屏幕上线性移动。这些结构之间以复杂的方式进行交互。这种复杂结构既没有被吸引到固定的点或周期状态而变得死板,又没有因为随机而过于活跃。它既保证了一定
首页 上一页 2 3 4 5 6 7 8 下一页 尾页 5/8/8
免费基于细胞自动机的生命活力模拟的实现(五)由毕业论文网(www.huoyuandh.com)会员上传。