生命游戏2:扩展生命游戏

本文将继续介绍生命规则和其他元胞自动机

1、其他元胞自动机和规则字符串

其他元胞自动机(Other cellular automatons,简称OCA)一般有一个规则字符串(Rulestring),比如一维元胞自动机规则54的规则字符串是w54,生命规则的规则字符串是B3/S23(格式:死细胞的摩尔领域周围有三个细胞就出生(B3),活细胞的摩尔领域周围没有二或三个细胞就死亡(S23))也可以用摩尔领域的Hensel符号(比如B2i3/S23,B35y/S23)。

2、生命规则(续上篇)

1、火花

在一定代数之后死亡的模式都叫做火花(spark),模拟生物的灭绝。

火花有很多种,比如香蕉火花(banana spark)、obo!火花(obo!spark,以rle代码命名,你可以叫他双点火花)、难以死亡(die hard,因其寿命(它是个Methuselah(暂无译名)很长而命名)。

2、混乱

混乱指在很长时间才会稳定(术语,指全部变成静物、振荡器和宇宙飞船)的模式,很多Methuselah都属于这个类。

3、polyominoes(暂无译名)

ployominoes指一定数量细胞正交连接起来的岛屿,通常缩写为ominoes。

1、haplominoes

只有一个haplomino,也被称为点或单体

2、多米诺骨牌(试译名,原文Dominoes)

也是有一个多米诺骨牌,,它本身也会在一代人后死亡。一些物体,如​​​​​​​重量级宇宙飞船(heavyweight spaceship,缩写为HWSS)和十五项全能(Pentadecathlon),会产生多米诺骨牌火花。

3、Triominoes(下面直接用链接,因为太多了)

正好有两种不同的Triominoes。该术语在生命游戏中很少使用,因为不会灭绝的两个对象只是闪光灯即将变成块(也可称为预块)。

4、Tetrominoes

有五种不同的Tetrominoes。第一个是,第二个是T-tetromino,其余三个迅速进化成蜂箱。第四只通常被称为尾巴,通常附着在小型静物上。

5、Pentominoes

有12种不同的pentominoJohn Conway根据它们的形状松散地分配给了O到Z范围内的所有字母,它们都按顺序显示如下。与三聚氨基酸和四聚氨基不同,已被证明没有一个五聚氨基酸可以作为感应线圈

字母O

P

Q

字母R

S

字母T

U

v

W

X

Y

Z

  • O-pentomino是红绿灯前身。它最常见的祖父母是3o$3o$bo$2bo$2bo!
  • P-pentomino或crotchet在第4死亡。
  • Q-pentomino是交通灯的前身。
  • R-pentomino是一种常见的Methuselah,也是迄今为止最著名的pentomino。
  • S-pentomino在第5代死亡。
  • T-pentomino是T-tetromino的共同母体
  • U-pentomino或短桌在第4代死亡。
  • V-pentomino在第3代演变成面包。
  • W-pentomino是一个普通的面包祖父母,V-pentomino的子女。
  • X-pentomino是红绿灯的前身。
  • Y-pentomino在第3代死亡,沿途产生obo!火花
  • Z-pentomino在第3代死亡。

6、Hexominoes

有35种不同的己氨基,其中大多数行为无趣。最有趣和最知名的例子是世纪六线火花楼梯hexomino桌子、蟾蜍和Z-hexomino

  • 第一个hexomino是六火花线,在第12代死亡。
  • 第二种hexomino在第40代稳定为两个闪烁器。[注1][3]
  • 第3个hexomino在第4代演变成一个
  • 第4个hexomino在第9代演变成交通灯
  • 第5个hexomino在第4代死亡。
  • 第6个hexomino在第4代演变成一个块。
  • 7th hexomino是这艘舟(小船)祖父母
  • 第8个hexomino在第4代演变成一个块。
  • 第9个hexomino是桌子,在3代中成为六火花线,因此在第15代中死亡。
  • 第10个hexomino是Z-hexomino,在第45代死亡。
  • 第11个hexomino死于第5代。
  • 第12个hexomino在第7代通过P-pentomino死亡。
  • 第13个hexomino收敛到与pi-heptomino相同的进化序列,并在176代稳定下来,留下6个街区、5个闪光灯和两个池塘
  • 第14个hexomino在第5代通过P-pentomino死亡。
  • 第15个hexomino在第3代演变成一个块。
  • 第16艘hexomino是航空母舰的母舰。
  • 第17个hexomino死于第5代。
  • 18th hexomino是楼梯hexomino的父母。
  • 第19个hexomino汇聚到与阶梯hexomino相同的进化序列。
  • 第20个hexamino也收敛到与阶梯hexamino相同的进化序列。
  • 21st hexomino是2期振荡器蟾蜍。
  • 第22个hexomino在第4代进化成一艘船。
  • 第23位hexomino在第6代去世。
  • 24th hexomino是本世纪,在103代稳定下来,留下了3个街区和一个闪烁器。
  • 第25个hexomino是鬼魂Herschel,死于第6代。
  • 26th hexomino是R-pentomino的第1代,稳定在1102代,留下了8个街区、4个闪光灯、4个蜂箱、两艘船、一艘船和一只面包,并创造了6架逃跑的滑翔机。
  • 27th hexomino是面包的父母。
  • 28th hexomino死于第4代。
  • 29th hexomino是蜂箱的父母
  • 第30位hexomino死于第4代。
  • 31st hexomino是池塘的曾祖父母。
  • 第32个hexomino在第3代死亡。
  • 第33个hexomino在第9代死亡。
  • 34th hexomino是pi-heptomino的母体。
  • 第35个hexomino是楼梯hexomino,持续63代,留下了封锁

7、heptomiose

有108种不同的七氨基

108个七氨基中:

由于是常见的methuselah序列,其余7个都有自己的名字:B、C、E、F、H和I七一类和赫歇尔。

所有108个七氨基要么在1970年进行了分析,要么在生命线第1卷中被归类为“迄今为止未知”。

8、Octominoes

有369种不同的octomino。尽管有大量的八重骨,但还是双滑翔机octomino(两代后演变成不同的八重骨)更常见,386代后稳定为两个红绿灯和四个蜂箱,通常简称为Octomino:

octomino及其两代继任者。

这在21世纪留下了一只蟾蜍,但在153世纪之后就无法生存。(上文翻译有误,勿喷)

  • 17
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
生命游戏(Game of Life)是一种细胞自动机,是由英国数学家约翰·康威在 1970 年发明的。它通过简单的规则模拟生命的演化过程,被认为是一种复杂系统。在游戏中,每个细胞只有两种状态:存活或死亡。通过规则来判断每个细胞在下一轮中的状态,从而模拟生命的繁衍和死亡。 在 Python 中,我们可以用 NumPy 来创建一个二维数组来表示细胞的状态,然后通过循环遍历每个细胞,根据其周围细胞的状态来判断其下一轮的状态。具体实现方式可以参考以下示例代码: ```python import numpy as np def generate_board(size): board = np.zeros((size, size), dtype=int) # 在这里可以初始化细胞的初始状态 return board def get_neighbours(board, x, y): neighbours = [] for i in range(x-1, x+2): for j in range(y-1, y+2): if i >= 0 and j >= 0 and i < len(board) and j < len(board) and (i, j) != (x, y): neighbours.append((i, j)) return neighbours def get_next_state(board, x, y): state = board[x][y] neighbours = get_neighbours(board, x, y) live_neighbours = sum([board[i][j] for i, j in neighbours]) if state == 1: if live_neighbours < 2 or live_neighbours > 3: return 0 else: return 1 else: if live_neighbours == 3: return 1 else: return 0 def update_board(board): new_board = np.zeros((len(board), len(board)), dtype=int) for i in range(len(board)): for j in range(len(board)): new_board[i][j] = get_next_state(board, i, j) return new_board ``` 以上代码实现了一个基本的生命游戏,并可以自定义初始状态。你可以根据自己的需要对代码进行修改和扩展

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值