生命游戏-JAVA语言代码-细胞自动机-毕业论文

发布时间 : 星期一 文章生命游戏-JAVA语言代码-细胞自动机-毕业论文更新完毕开始阅读

3.8 关键参数设置 ..................................................................................................................... 11 3.9 预测结果及理论分析 ......................................................................................................... 12 3.10 运行结果及结论分析 ....................................................................................................... 13 3.11 本文尚未完成部分 ........................................................................................................... 17

致 谢 ..................................................................................................................................... 19 参考文献 ................................................................................................................................ 20

浙江理工大学本科毕业设计(论文)

第一章 绪论

1.1引言

系统是由相互关联,相互制约,相互作用的部分所组成的具有某种功能的有机整体。按照系统的复杂程度,系统可分为简单系统和复杂系统。我们平常大多研究的都是简单系统,因为简单系统一般可以被数学模型套用,从而进行研究,而复杂系统都难以用数学模型所表示。复杂系统是由具有许多不同状态的大量基本单元在非线性作用下形成的有机整体,其最大的特点是“复杂性”。复杂系统涵盖极广,几乎无处不在,如:生物系统、交通系统、经济系统、环境系统、生态系统、工程系统、社会系统和复杂工业生产系统等等。

目前对于简单系统已有相应的研究方法,而且理论上也有了很大的进展。但由于复杂系统是涉及多个学科的一门崭新的科学,在20 世纪从未对其复杂性进行过系统深入的研究。研究复杂性的科学方法到底是什么,目前仍处于探索和研究之中。所以,复杂性科学将是21世纪的科学,是一门具有重大理论及实际意义并亟待开展研究的崭新科学。

至今,研究复杂系统常用的方法有试验数学方法、重正比群方法、散射反演方法、役使原理及细胞自动机方法。而细胞自动机方法是唯一一种根据复杂系统特点而设计出来的可在计算机上模拟的特殊方法。细胞自动机空间是离散的、时间是离散的、系统状态也是离散的,可以说细胞自动机是一种布尔化的离散的动力学系统。目前,细胞自动机已在复杂系统的研究中得到广泛应用,已成为以离散行为特点描述复杂系统行为的一种具有广阔发展前景的方法[1]。

生命游戏是J.H.Conway 在20 世纪60 年代末设计的一种计算机游戏,是一个典型的细胞自动机模型,其演化规律近似地描述了生物群体的生存繁殖规律,吸引了大量学者进行研究。如A.C. de la Torre[4]等研究了在周期型边界条件下,置入不同初始密度的活细胞时的演化规律;吴迪等从生命游戏的基本单元的演化着手,研究其复杂性[2]。

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

1

生命游戏的计算机模拟以及参数对运行结果的分析

0;只有处于个体适中(相邻细胞数为2或3)位置的生物才能生存(保持细胞的状态为1)和繁衍后代(细胞状态值由0变为1)。正由于它能够模拟生命活动中的生存、灭绝、竞争等等复杂现象,因为得名“生命游戏”。J.H.Conway还证明,这个细胞自动机具有通用图灵机的计算能力,与图灵机等价,也就是说给定适当的初始条件,生命游戏模型能够模拟任何一种计算机。

1.2生命游戏

1.2.1什么是生命游戏

生命游戏其实是一个零玩家游戏。它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。实际中,你可以设定周围活细胞的数目怎样时才适宜该细胞的生存。如果这个数目设定过高,世界中的大部分细胞会因为找不到太多的活的邻居而死去,直到整个世界都没有生命;如果这个数目设定过低,世界中又会被生命充满而没有什么变化。实际中,这个数目一般选取2或者3;这样整个生命世界才不至于太过荒凉或拥挤,而是一种动态的平衡。这样的话,游戏的规则就是:当一个方格周围有2或3个活细胞时,方格中的活细胞在下一个时刻继续存活;即使这个时刻方格中没有活细胞,在下一个时刻也会“诞生”活细胞。在这个游戏中,还可以设定一些更加复杂的规则,例如当前方格的状况不仅由父一代决定,而且还考虑祖父一代的情况。你还可以作为这个世界的上帝,随意设定某个方格细胞的死活,以观察对世界的影响。生命游戏就是典型的二维细胞自动机。

1.2.2生命游戏、细胞自动机的研究意义

细胞自动机不仅可以在形式上作为并行计算机的理论模型来研究,而且还可以作为语言(被机器接受的输入字的集合)识别器。一个语言被某种识别器所识别是指:识别器不仅接受该语言中的字,而且拒绝不属于该语言中的字。在维数高于1时,语言识别有时被看作模式识别。对于迭合自动机,如果每一时间步只输入一个字母,当字全部输完之后,如果输入输出细胞进入一个特别设计的接受状态,就认为它接受了这个字。语言的所有的字都被接受时就称为迭合自动机语言。类似地,棋盘格自动机和一维细胞自动机也可以用作语言接受器。

用细胞自动机的并行计算方式可实现一些并行计算机和识别器的设计。细胞自动

2

联系合同范文客服:xxxxx#qq.com(#替换为@)