生命游戏是最着名的二维元胞自动机,由John H. Conway发明,并于1970年10月开始在Martin Gardner的“ 科学美国人”专栏中推广 。生命游戏最初是由生产的游戏(即连续世代产生)手持计数器,但在计算机上实现大大增加了探索模式的难易程度。
生命元胞自动机通过在二维网格上放置多个填充单元来运行。然后,每一代都根据周围细胞的状态打开或关闭细胞。规则定义如下。检查当前周围的所有八个单元以查看它们是否打开。计数所有打开的单元格,然后使用此计数来确定当前单元格将发生什么。
1.死亡:如果计数小于2或大于3,则关闭当前单元格。
2.生存:如果(a)计数正好为2,或者(b)计数正好为3且当前单元格打开,则当前单元格保持不变。
3.出生:如果当前单元关闭且计数正好为3,则打开当前单元。
生活的游戏是一个极权元胞自动机,并且可以使用内置的命令如下来实现CellularAutomaton,其中所述初始条件被指定为一个二进制矩阵和后代的结果
通过
被返回。(这里,
对应于初始模式。)
生活[m_List?MatrixQ,{g1_Integer?nonNegative,
g2_Integer?NonNegative}]:=
CellularAutomaton [
{
224,
{2,{{2,2,2},{2,1,2},{2,2,2}}},
{1,1}
},
{m,0},
G2,
{
{g1,g2},
自动
}] /; G2> = G1
Weisstein对生命形式和术语进行了广泛的字母表制表。
从一代到下一代没有变化的图案被称为静物,并且据说具有周期1.以上示出了几种静物。细胞的静止数量为
2,3或......,分别为0,0,0,2,1,5,4,9,10,25,46,121,240,619,1353 ...... (OEIS A019473)。
循环通过一组配置的模式称为振荡器。
康威最初认为,没有任何模式可以产生无限数量的细胞,并且向任何能够在1970年底之前找到反例的人提供50美元的奖金(Gardner 1983,p.216)。随后发现了许多反例,包括枪支和河豚列车(如上图所示)。
没有父亲模式的生活模式被称为伊甸园(出于明显的圣经原因)。第一个这样的模式直到1971年才被发现,至少有三个现在已知。然而,不知道是否存在具有父模式但没有祖父模式的模式(Gardner 1983,第249页)。
令人惊讶的是,生命是一种通用的元胞自动机,从某种意义上讲它可以有效地模拟任何细胞自动机,图灵机或任何其他可以转化为已知通用系统的系统。Berlekamp 等人给出了生命普遍性证明的概要。(1982)和Gosper独立(Gardner 1983,pp.250-253)。大约2000年,图灵机 可以扩展到通用图灵机P. Rendell在生活中明确地实施了这一点(Rendell,Adamatzky,2001)。虽然Rendell的机器可以简单地通过使他的磁带无限制成一个“真正的”通用计算机,但他既没有注意到这一事实,也没有提供通用图灵机的实际结构。随后,在2002年11月11日,P。Chapman基于D. Hickerson的“滑块存储器”方法构建了一种生命模式,该方法实现了通用 寄存器机器的动作。与Rendell 图灵机的有限磁带不同,查普曼机器寄存器中的值是无界的,使其成为生命游戏中通用计算的真正模型。查普曼的建筑在一个地区使用活细胞
,并且可以在400 MHz计算机上计算大约每秒20代。
更令人惊讶的是,正如Wolfram(2002)所示,甚至一维细胞自动机(特别是规则110)也可以是通用的。
已经构建了类似于生命但具有不同规则 的二维元胞自动机游戏并且给出了名称HexLife和HighLife。HashLife是一种生命算法,通过将子模式存储在哈希表中并使用它们向前跳过(有时一次数千代)来实现显着的速度。