← 数字生命:从第一性原理出发

04:现在有两个了

存续不是繁殖。在一个规则被找到时并未明确搜寻自我复制的二值元胞自动机里,表观拷贝通过了一项因果检验——在精心设定的论断边界之内。

上一章里,一种组织在参与它的几乎一切被替换后仍然存续。更替窗口结束时,最初的 20,000 个智能体只剩 7 个,而更广的有组织网络仍然存续。

那确立的是存续(persistence)。确立的不是繁殖(reproduction)。

存续问的是一种组织是否延续。繁殖问的是它是否产生另一个具有因果血统关系的组织。黏菌(Physarum)实验没有检验第二个能力。

滑翔机让这个区分更锋利。每四代它的构型在对角线方向一个细胞之外重现,所用活跃细胞的坐标已经不同。它看起来非常像繁殖。

但在 Hintze 与 Bohm 所用的因果判据下,自我复制者必须产生至少两个自身拷贝,每个都可因果追溯到原体,且彼此之间没有因果关系。[6]滑翔机失败,因为它的历史是一条单链:每次出现都从紧邻的前一次出现继承而来。没有任何分叉。滑翔机枪的失败方式不同:它产生滑翔机,而不是产生滑翔机枪。

判据因此是:

一个早先组织必须产生至少两个同类的后来组织,每个都因果依赖于原体,且彼此不互相依赖。

链条不够。历史必须分叉。

现在看这个。

The published Outlier cellular automaton evolving from its tiny seed


被搜寻的是规则,不是复制者

人工生命已有会繁殖、会演化、守恒物质、生成无人明确设计的系统。Evoloops、Flow-Lenia、Genelife,以及更新的计算生命实验,各自覆盖了这片疆域的不同部分,也有工作更系统地综述了它。[1–4]

为我们的目的,一个系统格外有用:Outlier。

机制只需一段,因为上一章已经完成了教学。

每个细胞是0或1。每个细胞读取自己的3 × 3摩尔邻域(含自身),共 512 种局域构型,规则为每一种指定一个输出。这就是这个宇宙的全部定律:512 个输出比特。发表的规则旋转对称但不镜像对称。512 个条目中有 220 个使中心细胞激活,康威生命游戏是 140 个。[5]

注意缺席的东西。系统里还没有任何东西对应有机体,甚至个体。二值状态、邻域、转移规则、时间,仅此而已。基因组、能量预算、繁殖、适应度、种群,全是以后若相关才可能涌现的概念。

Outlier 如何被找到很重要,因为它很容易被夸大。

搜寻是人设计的。人选了元胞自动机基底、可能的规则空间,以及筛选规则的判据。所以 Outlier 不是数字生命独立于人类设计出现的证据。

但搜寻也没有指定一个会复制的有机体。它搜寻的是被认为对开放式演化有前景的规则系统动力学。[5]自我复制本身不是明确目标,尽管这样的搜寻当然可能偏爱出现存续或增殖结构的规则。

搜寻最终返回的是一条局域转移规则。后来在该规则内发现的特定复制组织,并没有被明确表示在规则里。

这正是 Outlier 在这里重要的原因。被选中的是规则;在规则创造的世界里被发现的是复制者。

    flowchart LR
    subgraph Designed
        A1["Programmer writes reproduction"] --> A2["Structure reproduces"]
        A2 --> A3["Emergence of reproduction remains untested"]
    end

    subgraph Outlier
        B1["Search finds local physics"] --> B2["Physics runs"]
        B2 --> B3["Structures appear"]
        B3 --> B4["Some of them replicate"]
    end
  

第一条路线里,观察到繁殖只说明有人把它实现了。第二条路线里没有可指认的繁殖算子。如果这里的结构繁殖,机制必须经由展开的动力学实现,因为它没有别处可住。

这没有确立生命。它确立的是在生命问题值得问之前我们需要的东西:

这个行为不是执行我们事先命名的操作。


它看起来像繁殖,这正是问题所在

从稀疏随机条件或微小种子运行发表的规则,世界充满活动。[5]

小而不断变形的团簇出现。有的产生更多团簇。有的周期性加倍。更小的结构组装成更大的编队,那些编队也加倍。它们汇集起来,最终形成一个更大的扩张复合体的边界。

Outlier at successive generations from the same initial seed

于是同时存在多个层次的组织:

细胞
  ↓
团簇
  ↓
会复制的编队
  ↓
更大的扩张复合体

Yang 在该工作中所用的操作判据下,把不止一个尺度上的结构归类为自我复制。[5]多重尺度上真的出现了类加倍的复现,这本身就比上一章任何东西都奇怪。滑翔机给我们的是一个随时间存续的局域组织。这里有的是由组织构成的组织,在不止一个层级上表观加倍。

诚实面对它对观看者的作用是值得的。

滑翔机容易保持距离。Outlier 不容易。结构出现、碰撞、留下碎屑、产生更多结构,世界的一些区域获得可辨认的历史。我们花两章克制的词汇几秒钟就回来了——亲代、子代、种群、谱系、有机体。

但这些词偷运了不同的论断。亲代、子代、谱系断言因果血统。有机体断言边界和个体。种群预设我们已经知道该把哪些东西数在一起。

动画一个都没有确立。

想想观察的全部证据内容:

时刻 t

    A

时刻 t + 500

    A     A

显而易见的结论是A 繁殖了。

但仅凭这幅图无法知道。两个结构可能独立产生。第二个即使第一个从未存在也可能出现。也可能是我们的检测器把一个更大的过程切成了两个表观对象。

几何区分不了这些可能。

相似
≠
血统

后面的一切都取决于这个区分。它是*数字生命意味着什么?*那章里"表象不是机制"规则的锋利形式。繁殖无法从终局画面确立,因为繁殖是关于因果的论断,而画面里没有因果,只有结局。


确定性给了我们什么

Outlier 在这里给了我们一个不寻常的优势:它的动力学完全确定。

对t+1的每个细胞,我们知道t时刻产生它的邻域,并能精确算出若邻域不同会发生什么。

这不让因果自动成立。我们仍需要一条规则来判定哪些早先细胞真正要紧,并把细胞水平的依赖变成大结构之间的血统。

但它让问题可检验。

于是那个通常无法回答的问题变成机械的:

产生这个活细胞的前一邻域里,哪些活细胞实际是必需的?

Hintze 与 Bohm 的回答是找出产生后来活细胞所需的最早活细胞最小集合。[6]碰巧在附近的细胞被排除在因果追踪之外。

那些细胞水平的依赖再被聚合成大团簇之间的链接。

结果是一张因果血统图:早先结构只在测得的依赖相连时才连向后来结构。[6]

问题于是变了。

不是:

后来结构像不像早先结构?

而是:

早先结构是否因果地参与产生了后来结构?

一个限制值得带上。Yang 的结构分析允许旋转变体,而 Hintze 与 Bohm 的因果分析把复制论断限制在精确拷贝。[5][6]因果分析找到的任何东西,都不是靠放宽"什么算同一种结构"找到的。

因果没有消解同一性问题。判据仍然要求同类的后来组织,所以什么算同类必须在搜寻前固定,而不是事后挑选。


三个复制者,三种命运

一旦因果血统可测,看似相似的结构原来有迥异的历史。

结果 发生了什么 它告诉我们什么
c0 433 个拷贝,但没有第二代 制造拷贝不等于延续谱系
c1 1,677 个拷贝,但第二代很弱 更多拷贝仍不保证血统延续
c2 2,439 个拷贝和 15 代 这是存续的谱系,不只是重复拷贝
快慢 c2 分支 675-tick 分支产生 96 次复制事件;778-tick 分支产生 125 次 更快的复制没有产生更大的谱系产出
分布式复制 复制可经过空间分离的组分 繁殖过程不必对应一个连通身体

这些是发表的因果分析中对我们要紧的主要结果。本节余下部分逐一展开。

底层的血统图极大:31,959,320 个团簇实例,由 65,552,995 条有向因果边相连。[6]

但它最重要的教训简单得多。

复制不是一桩功绩。

发表的分析用这些计数描述三段繁殖史;这里要紧的比较不是总数,而是谱系后来怎样。

c0是最清楚的例子。

它产生了433 个因果验证的拷贝。

其中没有一个产生过另一个c0。

于是c0繁殖了数百次,却没有建立存续的谱系。

c1多走了一点:1,677 个拷贝,之后只有很弱的第二代。

c2不同。它的后代继续繁殖了15 代。[6]

三个表观复制者产生了三种迥异的历史。

于是我们曾当作一回事的词原来是三个:

复现
≠
复制
≠
存续的谱系

c0有启发性,因为 433 是个听起来壮观的数字,却连在一条哪里也没去的谱系上。产生拷贝和建立王朝是不同的功绩,前者很容易被报道得强烈暗示后者。生物学会迟早教我们这个区分。在 512 比特里撞见它令人吃惊。


快的反而更差

c2有了存续谱系,一个显而易见的问题出现:

复制更快的分支表现更好吗?

没有。

c2 分支 复制时间 实际复制事件
较快 675 ticks 96
较慢 778 ticks 125

较慢分支产生了更多复制事件。[6]

更快的复制没有产生更大的谱系产出。

作者提出几何作为解释:较快分支向造成更多空间干扰的方向扩张,较慢分支保留了更多继续的余地。[6]

那个解释没有被实验分离出来,所以我们保留更窄的结果。

还有另一条线索,表明这里的复制是一个过程而非简单拷贝。

三条发育路径起点不同,却在产生子代前的最后 143 ticks 收敛到同一状态序列。[6]

最终拷贝因此是一个发育过程的终点,不是一步复制出的身体。


复制者可能不是身体

最奇怪的结果也是最容易陈述的结果之一:

繁殖过程并不总是形成一个连通体。

某些情形下,复制经由几个空间分离的组分展开。它们在过程的一部分时间里保持分离,随后在复制继续时合并或分叉。[6]

发表的论文用分布式多组分自我来描述。我们在这里不需要那个更强的论断。

我们不需要那个更强的名词。发表的因果分析确立的东西更窄,也足够强:

在发表的 Outlier 分析中,因果自我复制可以涉及多个空间分离的组分。

重要结果更窄:

因果繁殖过程不必对应一个连通身体。

只搜寻紧凑连通对象的检测器会错过它。

上一章从另一个方向撞见了同一问题。

在那里,存续无法干净地定位到智能体或场中的任何一方。

在这里,血统可以被精确追踪——而繁殖过程仍然拒绝坍缩成一个显而易见的对象。

如果繁殖可以因果为真,而繁殖单元不是整齐的连通体,那么繁殖的东西究竟是什么?

这没有证明分离组分构成一个个体。

个体性需要自己的判据,而我们还没有。

于是问题保持开放:

繁殖的东西究竟是什么?


144 个拷贝证明不了什么

发表的证据告诉我们 Outlier 被证明做到了什么。我们还想要一个自己掌控的标本。

于是我们重建规则,先验证再提问:全部 512 个转移情形解码,恰好 220 个激活输出,发表的旋转对称确认。细节属于实验记录。原则属于这里。

解释世界里发生的任何事之前,先验证世界。

解码器错了仍能产生壮观的动画。它不能产生关于 Outlier 的证据。

我们的实验比发表的小得多:

我们的运行:      512 × 512,1600 代
发表的运行:      1024 × 1024,20000 ticks

这很要紧,因为 Outlier 的行为随尺度变化,发表的系统在约 tick 10,000 之后进入不同机制。[5][6]

我们的运行到不了那个机制。

后面的一切只适用于我们实际做过的较小实验。

我们没有在运行里搜寻碰巧复现得最壮观的形状。

那几乎注定有结果。

而是先运行搜寻之前选定目标:已知的c2种子,一个装进3 × 3方框的六细胞结构。

然后才寻找后来出现的同一结构。

我们的检测器把c2的平移和四分之一转旋转版本视为等价,因为 Outlier 规则本身旋转对称。

镜像不等价,因为规则不镜像对称。

这比只计精确拷贝的 Hintze 与 Bohm 因果分析稍宽。[6]

搜寻找到144 个c2等价出现。

听起来很壮观。

它几乎什么都证明不了。

原则上 144 个可能全都从周围动力学独立产生。复现告诉我们结构反复出现。它不告诉我们一次出现产生了另一次。

那需要血统。

令人鼓舞的是,这个讲究不是我们发明的。因果研究的作者对自己的结果提出了完全相同的可能:c2模式可能只是经常出现,血统只是动力学的伴随而非原因。[6]他们的答案是因果追踪。

我们的因果检验比发表的简单。

Hintze 与 Bohm 搜寻前任细胞的最小充分集。[6]我们逐个移除活的前任细胞,移除后后来细胞不再存活就记一次依赖。

两种方法不等价。特别地,我们的检验会漏掉涉及细胞冗余组合的依赖。

所以我们的结果必须陈述在我们的因果判据之下,而不是他们的。

加上这个限制,我们构建了因果图:

138,891 个团簇
196,466 条因果边

动画看起来像几个对象在移动。

它之下的机制是近二十万条测得依赖的网络。

接着我们合并两种测量。

我们问:

后来的c2出现时,能否经由因果图从早先的c2到达它?

对每次出现,我们沿因果后代追踪,直到c2再次出现。得到的第一返回图包含 144 次检测出现之间的 547 条因果返回边。

其中:

  • [N] 产生两个或更多不同的因果第一返回。
  • [M] 没有因果路径回到早先c2。

第一个数度量分叉。

第二个告诉我们多少复现仍与独立形成相容。

在这个检测器下,结果因此是分叉的因果复现,而不只是复现。

在宣称发表的自我复制判据之前还剩一个条件。

两个子代必须依赖亲代而不互相依赖。

我们当前的第一返回分析没有明确检验那个条件。

A readable subset of the Outlier c2 causal family tree

图是有意剪枝过的家系,因为完整图作为插图无法阅读。分析用的是全部。


这一次,因果论断存活下来

本书里第一次发生了以前没发生的事。

我们从一个独立于结果设定的判据出发,它已经淘汰了我们手里最有说服力的对象。我们事先固定目标结构,而不是看清哪种形状复现后再挑选。然后问自己的重建能确立判据的多少。

它确立的不止相似:

我们自己的实验现在给了我们三样东西:

结构复现
+
因果血统
+
分叉的因果返回

目标结构事先选定。后来的出现再经由测得的因果图追踪。

于是我们确立的不止相似。

限定在实际实验内:

在我们 512 × 512、1600 代的运行里,后来的c2结构经由分叉的因果血统图连向早先的c2结构。

这强于单纯复现。

它还不是发表的自我复制完整结果,因为我们的因果检验不同于 Hintze 与 Bohm,且没有明确检验子代独立性。

所以我们的结果在这里:

复现
↓
分叉的因果复现   ← 我们的实验
↓
确证的自我复制

我们的结果是预先指定结构的分叉因果复现。

早先的c2组织可测地参与产生后来的c2组织,得到的因果历史分叉。

证据支持时,阳性结果是可能的。


我们没挣得的东西

趁结果新鲜、最诱人时讲纪律。

我们有两个不同的结果,应保持分离。

证据 它确立什么
发表的 Outlier 分析 发表的较严判据下的因果自我复制,包括涉及空间分离组分的复制。[5][6]
我们的重建 我们的较简因果检验下,预先指定的c2结构的分叉因果复现

两个结果都不确立自我维持、适应、能动、记忆、自主、个体性、开放式演化或生命。

而发表的多组分结果还留给我们一个问题:繁殖可以因果清楚,而繁殖单元不是显而易见的身体。

两个结果都强。

它们不是同一个结果,谁也不必被拔高。


两件仪器,各缺一块

在 Outlier 里发现惊人的东西,不让 Outlier 成为蓝图。

Outlier 是证据,不是规格书

它的价值在于演示计算基底在无人明确指定结果组织时能支撑什么。抄下它的规则再装上记忆、能量或目标,只会用更好的证据重建货物崇拜。

还有另一个问题。

两个系统给了我们几乎相反的长处。

系统 它给我们什么 它缺什么
Physarum 干净的高层干预 可操作的谱系
Outlier 可重建的因果谱系 干净的高层干预对照

在 Physarum 里我们可以移除场、替换人口、开关更替。

在 Outlier 里可以追踪血统,但对繁殖、耦合、记忆、相互作用程没有独立旋钮。

每个系统都给了对方所缺的东西。

我们最终需要的是四者兼备的系统:

已知规则
+
可控干预
+
一次只变一个机制
+
可追踪的因果历史

那不是数字生命的定义。

它是研究它所需的实验室规格书。


参考文献

[1] Sayama, H. & Nehaniv, C. L. Self-Reproduction and Evolution in Cellular Automata: 25 Years After Evoloops. Artificial Life 31(1), 81–95 (2025).

[2] Plantec, E., Hamon, G., Etcheverry, M., Chan, B. W-C., Oudeyer, P-Y. & Moulin-Frier, C. Flow-Lenia: Emergent Evolutionary Dynamics in Mass Conservative Continuous Cellular Automata. Artificial Life 31(2), 228–250 (2025). doi:10.1162/artl_a_00471

[3] Packard, N. H. & McCaskill, J. S. Open-Endedness in Genelife. Artificial Life 30(3), 356–389 (2024). doi:10.1162/artl_a_00426

[4] Agüera y Arcas, B. et al. Computational Life: How Well-formed, Self-replicating Programs Emerge from Simple Interaction. arXiv:2406.19108 (2024).

[5] Yang, B. Emergence of Self-Replicating Hierarchical Structures in a Binary Cellular Automaton. Artificial Life 31(1), 96–105 (2025). doi:10.1162/artl_a_00449

[6] Hintze, A. & Bohm, C. Rethinking self-replication: detecting distributed selfhood in the Outlier cellular automaton. npj Complexity 3, 11 (2026). doi:10.1038/s44260-026-00074-2