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

06:它看起来像群集

附近的 Outlier 结构相干地运动。一个壮观的血统效应通过了多重对照,又在距离、时间和局域密度终于被公平比较时坍塌。

上一章结尾是一个警告:一个故意简单的蜂群可以看起来有组织、相干运动、维持测得的机制,却不给我们任何准备称作数字生命的东西。

然后我们回到 Outlier,几乎立刻看到结构一起运动——不只是随扩张前锋向外,而是在共享近期因果历史的结构之间,看似有更强的协同。生物学名词立刻到来:群集(flocking)。

这一次我们知道画面多危险。

但 Outlier 给了我们调查而非置之不理的理由。发表的工作已在此自动机里确立因果自我复制,[1][2]我们较小的重建也在所声明判据下恢复了分叉的因果复现。我们已有因果图,所以运动和血统可以分别测量。

于是我们问:

共享近期因果历史的结构是否也表现出更强的动力学相干?

我们把印象变成测量。

相干是真的。

我们对它的第一个解释不是。


观察

我们一开始问的不是 Outlier 是否满足蜂群生物学或活性物质物理的每条群集形式定义。我们问的更窄:

附近的存续结构是否朝异常相似的方向运动?

要回答,先把可见运动变成数据。用因果图追踪随时间看似延续的团簇。每个被跟踪的结构给出一个位置、一个行进方向、一个时间和一个因果身份。

全程得到:

13635 条运动轨迹
633808 个运动观测

轨迹至少持续八代。

这里的速度不是 Outlier 里的变量,而是我们从被跟踪结构随时间的位移量出的东西。

比较两个结构的方向,把速度向量归一化再取点积:

$$ A_{ij} = \frac{v_i}{|v_i|} \cdot \frac{v_j}{|v_j|} $$
结果很简单:
+1    同向
 0    方向无一致
-1    反向

我们比较同时刻、空间相近的结构,用空间索引而非每个结构与所有其他结构比较。这部分是性能决定,部分是更好的实验:宇宙两端的结构对局域集体运动什么都说明不了。

一个区分贯穿全章。短程方向对齐是测量。群集是解释。问题是后者有没有被前者许可。


第一个结果

短程结果很强。观测到的方向对齐约0.74,尺度从-1到+1。速度打乱的对照低得多。

附近的存续结构表现出远强于打乱速度对照的方向对齐。

附近的存续结构表现出远强于打乱速度对照的方向对齐。

所以视觉印象不是想象。这次运行里附近的被跟踪结构确实相干运动。这是观察。解释仍开放。


不只是扩张

Outlier 在扩张,这立刻给出一个显而易见的替代解释。坐在同一扩张前锋上的结构可能只因被一起向外携带而速度相似。两片随同一圆形波漂移的碎屑可以运动高度对齐而不曾相互作用。

若这解释了结果,我们的0.74无非是对 Outlier 在长大这件事的繁复测量。于是我们减去每个结构运动中直接背离扩张中心的径向分量,只用剩余部分再测对齐。若全局扩张单独解释相干,效应就该坍塌。它没有。

原始短程对齐        0.7373
去径向后对齐        0.7427
打乱残差对照        0.1933

从0.7373到0.7427的微小变化在此不解释。重要结果是移除全局径向场没有移除短程相干。而打乱残差对照仍低得多,所以减法本身没有凭空制造顺从的向量。

减去全局径向扩张场后,短程运动相干仍然存在。

减去全局径向扩张场后,短程运动相干仍然存在。

一个简单解释失败了:

仅凭全局径向扩张解释不了观测到的相干。

这让现象更有意思。仍没让它成为群集。我们需要解释附近结构为何一起运动。Outlier 已给出诱饵蜂群没有的一种可能。血统。


也许是血统

现在有两个了留给我们一个不舒服的发表结果:Outlier 的因果自我复制可以涉及空间分离的组分。这没有确立那些组分构成一个自然个体——当时我们对此谨慎,现在依然谨慎。但它让一个更窄的想法可检验:

共享近期因果历史的结构是否也运动得更相干?

若是,运动可能反映某种延续的因果组织,而不只是局域几何——且无需从生物学进口社会机制。

为检验它,我们给每个团簇指派其最近的可辨认c2祖先。c2团簇开启新家系;否则标签经因果图传播。

覆盖极高。138,891个团簇中138,132个被指派近期c2祖先。633,808个运动观测中633,696个带家系标签。

这次单种子实验里几乎每个被跟踪的运动结构都能关联到近期 c2 因果祖先。

这次单种子实验里几乎每个被跟踪的运动结构都能关联到近期 c2 因果祖先。

这给了运动结构异常完整的血统标签。它本身什么都没解释。有用的标签不是解释。于是我们比较运动。


一个非常激动人心的结果

我们的第一次血统比较看起来壮观。减去局域背景流之后:

同一近期 c2 家系        0.828
不同近期 c2 家系       -0.349

同家系结构似乎强对齐。不同家系结构似乎强反向对齐。一度看起来因果家系像不同的动力学单元在行动。但负数好得过头。我们的假设预测亲属之间对齐更强,没预测无关家系该主动反向运动。那就是线索。我们的实验错了。


我们的对照错了

为测量相对局域环境的运动,我们估计每个结构周围的背景流。评判对象A时,把A自家家系成员排除在背景估计之外。这听起来合理:亲属不应定义彼此被检验的背景。

但考虑一个不同家系对。设A属家系 α,B属家系 β。B不在A家系里,所以B计入A的背景。A也计入B的背景。

最简情形:

$$ r_A \approx v_A-v_B $$
而:
$$ r_B \approx v_B-v_A $$
于是:
$$ r_B \approx -r_A $$
```mermaid flowchart TD A["Object A velocity"] --> B["Background estimate for A uses B velocity"] B --> C["Residual A ≈ vA - vB"] D["Object B velocity"] --> E["Background estimate for B uses A velocity"] E --> F["Residual B ≈ vB - vA"] C --> G["Residuals artificially anti-correlated"] F --> G ```

我们把反相关建进了估计器。-0.349不是不同因果家系互相对抗的证据,部分是我们的算术的性质。测量用被检验的对制造了评判同一对的背景。对照本身成了混杂因素(confound)。这值得记住。对照不是实验正确的外部担保。对照是实验机器的一部分,也会错。


效应在修复后存活

看清问题后修复很直接。检验来自家系 α 和 β 的一对时,估计局域背景排除两个家系。被检验对的任一成员都不能再帮对方制造残差。

病态负结果消失。可惜血统效应没有。修正分析给出:

同一近期 c2 祖先       0.746
很近 c2 血统           0.101
近 c2 血统             0.032
远 c2 血统             0.135
很远 c2 血统           0.081

第一类指两两共享同一最近可辨认c2祖先。其余是按因果图距离分组的不同家系对。所以不同家系不是因果无关,而是按此程序不共享同一最近可辨认c2祖先。

距离匹配前,共享同一近期 c2 祖先的结构运动相干远高于谱系关系更远者。这个表观效应在后文公平比较中没有存活。

距离匹配前,共享同一近期 c2 祖先的结构运动相干远高于谱系关系更远者。这个表观效应在后文公平比较中没有存活。

估计器 bug 真实存在,修复去掉了人工反向对齐。但主要反差仍大得惊人。最近的不同家系类约0.101,同家系对0.746——表观差距:在上界为1.0的尺度上0.645。到此血统解释已经通过:

打乱运动对照
径向扩张减法
发现的估计器 bug
修正的估计器

它看起来越来越可信。然后我们查了距离。


四个半细胞问题

共享同一近期c2祖先的结构,平均相距约:

4.5 个细胞

其他因果组的结构一般相距数十细胞。

这改变一切。同家系对多是近期后代,近期后代还没多少时间走散。于是家系成员身份与距离纠缠:

同家系
    ↓
通常靠得更近

靠得更近
    ↓
通常更相干

于是:

同家系
    ↓
看起来更相干

即使血统本身毫无贡献。

我们早知道相干在短程最强,那是本章第一个结果。所以壮观的血统效应可能只是在重新发现早就知道的事:近的东西比远的东西动得更像。

0.645反差没有伪造。同家系对在原始比较里确实更相干。问题是我们想赋予它的解释:

因为它们有亲缘

测量真实。因果解释没被识别。拿不同与不同比能得到差异;它不告诉你是哪个差异负责。

检验血统必须拿同类与同类比。


拿同类与同类比

于是重建比较。对每个同家系对,在相似的下列条件下比较不同家系对:

时间
距离
局域密度

排除被检验对的背景流修正保持不变。现在血统可不同,而那三个测得差异大致固定。匹配让比较对那些测得变量公平;它消不掉局域环境里一切未测差异。

精确分箱匹配机器属于实验注记和附录。科学问题更简单:

在相似时间、相似距离、相似局域环境下,同c2家系成员是否比不同家系成员运动得更相干?

一个方法论点属于这里。运行被保存为可查询的实验标本,发现混杂后无需重跑整个世界,可以对同一证据问更好的问题。这让纠正便宜到真正发生。

第一个匹配结果取数据里出现的全距离范围,是:

同家系          0.1515
不同家系        0.1588
差异           -0.0073

血统优势没了。按时间、距离、局域密度匹配后,同家系对不再有多余的正相干。点估计略负。这本该是终点。它不是。匹配只能在实际存在可比观测的地方回答问题,而我们还没查哪里是真的。


哪里实际可比

匹配变不出对照。若同家系对主导某段距离、不同家系对主导另一段,比较只在两组实际共存处有意义。共存之外没有可恢复的反事实,一个看起来全局的数回答的问题可能比格式暗示的窄得多。

这在这里要紧,因为同家系对集中在最短距离——恰恰是不同家系对照稀疏处。

于是直接测量重叠。全对数据集包含:

2617077 条可用对记录

考察距离分箱:

0–4
4–8
8–12
12–16
16–24
24–32
32–48
48–64
64–96

声明简单的支撑规则:

距离分箱必须含至少 100 条同家系、100 条不同家系原始对记录。

满足该条件的最大连续区域是:

[4, 64) 细胞
同家系与不同家系距离分布。阴影区标记 4 至 64 细胞的主要共同支撑区间。

同家系与不同家系距离分布。阴影区标记 4 至 64 细胞的主要共同支撑区间。

在该距离范围内,匹配附加条件:只有两组实际都有代表的时间 × 距离 × 密度层才贡献。

重要边界在短端。0–4细胞机制在主要支撑区之外,匹配分析无法告诉我们血统在那里做什么。

这双向切割。我们不能宣称 0–4 细胞有血统效应,也不能宣称排除。

正确状态是:

未决(UNRESOLVED)

UNRESOLVED不是NO的难堪版本,而是实验不含回答问题所需的比较。

那个边界是结果的一部分。


在可比区域内

上面的分析用了数据里出现的全距离。这次限于有支撑的范围,单独报告。

4–64细胞内,原始数据仍偏向血统解释:

同家系均值           0.1732
不同家系均值         0.1166
原始差异            +0.0566

所以仅去掉无支撑的最短距离机制并没有让关联消失。关键一步是匹配可比观测。按时间、距离、局域密度匹配后:

匹配后同家系均值          +0.150823
匹配后不同家系均值        +0.157890
对加权匹配效应            -0.007067

分析用了:

每组 64948 对匹配对
659 个匹配层

原始正差异+0.0566匹配后变成-0.0071。

匹配比较内,同家系与不同家系运动相干基本不可区分。

匹配比较内,同家系与不同家系运动相干基本不可区分。

第二种汇总给每个匹配层等权,而不让大层贡献更多。那个估计是:-0.026463。对659个层水平效应做 bootstrap 得:

95% 层 bootstrap 区间

[-0.066450, +0.012172]

不确定性计算在层水平,而非把数百万对记录当独立观测。

重要科学结果不依赖显著性阈值。在可比区域内,一旦匹配时间、距离、局域密度,大的正血统关联消失。

按尺度看,bootstrap 区间上端正值+0.0122,只是早先表观0.645反差的约1.9%。这不是"匹配恰好去掉了 98.1%“的形式论断:早先反差与最终匹配估计量不完全相同。直接可比的结果更简单:

在有支撑的 4–64 细胞区域内,原始同家系优势+0.0566在按时间、距离、局域密度匹配后变成-0.0071。

每组 100 条记录的支撑阈值是我们的选择,所以变动它。阈值调低,支撑区变宽,匹配效应仍为负;阈值调高,区域与效应不变。数字见实验注记。

坍塌不是某个顺手阈值的脆弱后果。大血统关联相干效应没通过公平比较。


仍答不了的

0–4细胞机制仍然不同。

共享近期c2祖先的结构集中在极短程。若血统特有效应存在任何地方,这里是显而易见的寻找处,也恰恰是对照不足处。

同家系对
在那里常见

不同家系对照
太稀疏
做不了同样比较

我们不能说血统在 0–4 细胞没有额外效应,也不能说有。把缺乏可比变成否定证据,与本章一直在纠正的是同一类错误,只是方向相反。

正确状态是:

未决

UNRESOLVED不是NO的难堪版本,而是实验不含回答问题所需的比较。

那个边界是结果的一部分。


那它是群集吗?

按这个证据不是。但只说不就丢掉了大半所学。结果是分层的:

问题 结果
短程方向相干 测得——约 0.74
仅凭全局径向扩张解释 否
大的家系关联相干效应 公平匹配下坍塌
4–64 细胞额外家系关联相干 匹配比较不支持
0–4 细胞血统效应 未决
生物学式群集 未确立

错误不是看到相干运动。那是真的。

错误是把一个观测沿着越来越强的解释链往上推:

相干运动
→ 血统依赖的相干
→ 协同的因果家系
→ 群

那些不是同一个论断。分析结束时,看似一体的三样东西可分:

运动相干
≠
血统依赖的相干
≠
群集

现象没有死

这是最重要的部分。

短程运动相干是这次运行的测得特征。

估计保持:

原始对齐                 0.7373
去径向后对齐             0.7427
打乱残差对照             0.1933

血统分析没有去掉这些观测。坍塌的是我们对它们的解释。

而记住 Outlier 基底里有什么,存活的现象仍然惊人:二值细胞、局域邻域、一条确定更新规则。没有速度变量,没有转向力,没有对齐规则,没有群集控制器。规则的 512 比特里没提方向、跟随邻居、任何集体行为。

结构却出现了,短程运动强相干,效应在去掉最明显的全局解释后仍然存在。有边界的结果因此是:

在这次运行里,检测到的存续结构表现出强短程方向对齐,仅凭全局径向扩张解释不了该对齐。

这值得留下。

还有另一种没检验的可能。也许相干不属于独立对象,而属于一片传播的空间过程,我们检测的结构恰好在其中运动。另一个实验可以检验——比如问相关是否随距离出现系统滞后。

我们这里没跑那个实验。所以那种可能仍然:

开放


没变的东西

这些都不撤回现在有两个了的因果结果。144 个检测到的c2出现、因果图、分叉返回结构原样不动。我们那里的论断还是原来的——所声明因果判据下的分叉因果复现——发表的更强自我复制结果仍是发表的结果。

失败的是后来一次拔高尝试:

共享因果血统
→ 协同的集体单元

血统还在。协同论断不在。

在有支撑的比较区域内,按时间、距离、局域密度匹配后,近期家系成员身份没有提供可检测的额外正相干。这比"血统与运动不可能有任何关系"要窄。接近本身可能在连接共同历史与共享动力学的通路上,而本实验不是为分离每条通路设计的。

个体性问题因此依然困难。连通几何本已不够。本章再加一条警告:

连通几何
不够

仅凭因果血统
也不够

若因果亲属在对照后仍保留独特运动,那会加强"因果家系是有意义的动力学单元"的论证。那个证据没存活。


先造好比较

本章每次大修正都在解释或分析里找到问题,而没有去掉底层的现象。回头看每个混杂都显而易见,事前没有一个显而易见。

重要的数不是0.645,而是终于拿同类与同类比之后发生的事。

我们丢了群集解释,留下了运动相干现象。

Outlier 的丰富既是它作为实验仪器的长处,也是局限。几何、血统、距离、扩张、局域环境一起涌现。同家系多意味着近,近多意味着相干,一切都在扩张。本章每个对照都试图在世界把变量一起产生之后再拆开——即使仔细匹配也答不了最短程的血统问题,因为必要的比较组根本不存在。

上一章指了另一条路:

在世界运行之前就把比较造进实验。

造一个机制可变、其余固定的世界。同一系统去掉一个组分可重跑。*历史在这里要紧吗?*用构造两个历史回答,而不是在已纠缠的世界里搜寻碰巧在正确处不同的例子。

那不是 Outlier。这不是对 Outlier 的批评,而是给不同工作的不同仪器。

下一个世界从几乎一无所有开始。不是:

修复
记忆
繁殖
个体性
集体运动

而是简单到若其中任何一个出现,我们能问它由什么产生。

Outlier 让我们看到惊人的因果组织可以在无人明确编写组织本身时出现。本章看到丰富的另一面。几何、血统、运动、扩张、环境一起涌现时,发现现象比识别原因容易。

于是回到更简单的系统,一次只改一件事。下一个实验从一块晶体开始。


实验注记

本章全部测量来自早先因果分析用的同一512 × 512、1600 代 Outlier 运行。

跟踪

运动分析得到:

13635 条至少持续八代的轨迹
633808 个运动观测

速度操作性地定义为跟踪位移随时间的位移,而非自动机里的变量。对用空间索引限于附近距离构造,而非穷举全两两比较。

家系指派

每个团簇被指派最近的可辨认c2祖先。

138,891个团簇中:

138132 已指派
10 歧义
749 未指派

633,808个运动观测中633,696个带家系标签。

早先用一个早期c2的四个后代定义家系,不同家系比较太少,最终分析未用。

径向对照

全局扩张对照从每个速度减去沿背离扩张中心径向的分量:

$$ r_i = \frac{x_i-c}{|x_i-c|} $$
报告值是:
原始短程对齐        0.7373
去径向后对齐        0.7427
打乱残差对照        0.1933

去径向后的微小上升不解释。

排除对的背景流

最初局域背景估计器只排除焦点对象自家家系。对不同家系对,被检验的每个成员都计入对方的背景估计,制造人工反相关。修正估计器把被检验两家系都排除在两边局域背景估计之外。

修正前:

同一近期 c2 家系          0.828
不同近期 c2 家系         -0.349

修正后谱系类是:

同一近期 c2 祖先         0.746
很近 c2 血统             0.101
近 c2 血统               0.032
远 c2 血统               0.135
很远 c2 血统             0.081

精确谱系分箱定义见配套实验记录。

匹配

完整运动分析包含:

2617077 条可用对记录

最终比较在下列之内匹配同家系与不同家系观测:

模拟时间分箱
空间距离分箱
局域密度分箱

局域密度用现有对构造管线以 32 细胞邻域测量。匹配时排除对的背景流修正保持启用。匹配只在同时含同家系与不同家系观测的层内进行,每层从两组等数抽取。

匹配均衡它拿到的测得变量,不去掉未测的局域环境差异,也不声称去掉。

报告了两次匹配分析。第一次用数据里出现的全距离,给出0.1515对0.1588,差异-0.0073。第二次限于下面的共同支撑区,是本章结论所依据的分析。

共同支撑

原始支撑在距离分箱上评估:

0–4
4–8
8–12
12–16
16–24
24–32
32–48
48–64
64–96

主要操作规则要求每距离分箱至少:

100 条同家系记录
100 条不同家系记录

满足该判据的最大连续区域是:

[4, 64) 细胞

0–4细胞区因此未决。在有支撑的距离区内,匹配附加要求每个时间 × 距离 × 密度层含两组观测。

最终匹配估计

4–64细胞内原始描述比较是:

同家系均值          0.1732
不同家系均值        0.1166
原始差异           +0.0566

匹配后:

匹配后同家系均值          +0.150823
匹配后不同家系均值        +0.157890
对加权效应               -0.007067

用了:

每组 64948 对匹配对
659 个匹配层

每匹配层等权给出:

等层效应               -0.026463

对 659 个层水平效应做 bootstrap 得:

95% 区间
[-0.066450, +0.012172]

bootstrap 以匹配层而非单个对记录为重采样单元。

支撑阈值敏感性

共同支撑阈值也变动过。

最小分箱计数50时,支撑距离范围扩到4–96细胞,对加权匹配效应是:

-0.0058

阈值取:

100
250
500

支撑区保持4–64细胞,相应对加权匹配效应保持约:

-0.0071

结论因此不依赖每组 100 个观测的主要阈值。各阈值的等层估计与 bootstrap 区间详见附录。

范围

对加权与等层估计是不同估计量。报告的[-0.0665, +0.0122]区间属于等层估计量,描述此轮内层 bootstrap 程序下的不确定性。它不度量跨独立 Outlier 种子、更大世界、更长运行或替代规则配置的涨落。

发表的因果研究在1024 × 1024上跑 20,000 更新。我们的实验用512 × 512跑 1600 代。这里没有任何东西确立运动相干结果推广到更大的发表机制。

完整跟踪、家系指派、背景流、匹配、支撑、重采样程序见附录及配套实验记录。


参考文献

[1] 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

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