生命游戏模拟器

生命游戏(Game of Life),或者叫它的全称John Conway's Game of Life。是英国数学家约翰·康威在1970年代所发明的一种元胞自动机。
所谓元胞自动机其实是一种离散的状态机,即无数个独立的格子,每个格子处于某种状态,然后所有格子按照预先设定好的规律进行状态演化。格子们可以是任意维度、任意形状、按任意规律排布的。
而生命游戏就是最简单的元胞自动机之一——在二维平面上的方格子(细胞),每个细胞有两种状态:死或活,而下一回合的状态完全受它周围8个细胞的状态而定。按照以下三条规则进行演化:
1. 活细胞周围的细胞数如果小于2个或多于3个则会死亡;(离群或过度竞争导致死亡)
2. 活细胞周围如果有2或3个细胞可以继续存活;(正常生存)
3. 死细胞(空格)周围如果恰好有3个细胞则会诞生新的活细胞。(繁殖)
这三条规则简称B3/S23。如果调整规则对应的细胞数量,还能衍生出其他类型的自动机。

以上是对生命游戏这个概念的解释,而我2013年时为它编写了一个js版的模拟器,作为个人项目练习之用。具体解释和功能介绍详见知乎专栏:个人项目开发示例:生命游戏

这里只是为了放个地址方便访问。

点击打开模拟器

19+

2 comments

  1. 5772156 says:

    生命游戏模拟有个特别好用的软件叫golly。
    前一阵子有个大新闻有人发现了一个走日字方向的飞船,而且达到了可能的最高速度。叫sir robin。感觉非常厉害。

    0
    • 苏莉安 says:

      搜到了,是今年上半年的吧,第一个knight类型的单体飞船,放到我的模拟器里试了试,跑得真快

      0

发表评论

电子邮件地址不会被公开。 必填项已用*标注