Z80随机磁带把偷窃压成少数派,能量短缺让背叛自我限速

Tapes Together Strong: The Co-evolution of Computation and Cooperation

Kunal Jha, Francesco Cicala, Blaise Agüera y Arcas, Blake Aaron Richards, Natasha Jaques, Max Kleiman-Weiner, Eyvind Niklasson

cs.MA, cs.AI

2026-09-10

随机Z80程序在能量短缺下自发压制偷窃:损耗型STEAL会拖死复制。均匀混合无记忆时背叛仍是少数派,空间结构再抬高复杂度和联合解题率。

这篇在解决什么

进化博弈论把社会互动和复制拆成两套规则:先打一局囚徒困境,再按收益更新种群。复制本身不花钱,也不改对方的身体。这个拆法让「均匀混合、没有记忆」几乎成了合作的死亡条件,必须额外塞进互惠、惩罚或亲缘聚类才能稳住。

人工生命走另一条路。Tierra、Avida 里,随机指令会演化出自复制,程序在共享内存里抢时间片。但这些系统多半把竞争写成零和抢资源,没有把「偷邻居的能量」和「保住双方还能算下去」做成同一条指令级的社会困境。

多智能体系统正在把这两件事叠在一起:计算、交互、繁殖从同一份预算里扣。这篇问的是,如果策略和复制机制都得从随机字节里长出来,合作还能不能站住。

方法

框架叫 Autopoietic Game Theory(自创生博弈论)。自创生是生物学用语,指系统不断再生产自己的组成部分。实验把这句话落成计算:每条指令都有能量代价,执行速度跟着能量走,交互和复制从同一份预算里扣。

具体设置:16384 条程序,每条是 32 字节的随机 Z80 机器码,论文叫 tapes(磁带)。每轮给每条磁带注入 ε=24 的基础能量,再两两配对,拼成 64 字节的环形共享内存。两边各有独立 CPU 和寄存器,从自己的代码起点开始跑。每条指令固定耗 1 点能量;无效指令也会扣能量,只是安全跳过。下一条指令由谁执行,概率等于自己能量占双方总和的比例。能量上限 255,下限 0。

没有内置的复制指令。要繁殖,程序必须自己写出覆盖对方磁带的代码。手工最短复制体只要 11 字节,所以 ε=24 够不偷窃的磁带安全复制并攒余粮。每轮开始前,每个字节以 μ=1/128 的概率突变。

社会困境写在一条 STEAL 指令里:从对方抽走 δ 点能量,自己只吸收 α=0.8 的份额。每次成功偷窃,系统净损失 0.2δ。不执行 STEAL 就算合作。这不等于善良,复制本身就是覆盖对方内存;合作只表示不搞损耗型能量掠夺。

种群有两种拓扑:均匀随机配对,或 2D 网格只跟上下左右四邻交互。

结果

均匀能量、均匀混合、持续突变时,STEAL 在多种固定 δ 和可调偷窃量设置下都被压到很低。机制是代谢性的:互偷把共享能量池抽干,配对系统变慢,寄生者更容易在突变里死掉;合作者攒能量,下一轮跑得更快,甚至能在对方复制完成前把它覆盖掉。

这不是高突变率的假象。把突变关掉(μ=0),往随机汤里各撒 1% 的可用复制体和 STEAL 操作码,背叛者仍然是少数派。偷窃量从 δ=16 提到 δ=32,背叛成功率显著下降(p<0.001,Cohen's d=4.17):偷太多,共享能量先饿死,L 次写入还没写完复制就失败。

这也不是「偷窃太亏」单独造成的。α×δ 全组合、10 个随机种子、把 STEAL 收成单字节指令方便演化,背叛者占比几乎不随 α 走:

α背叛者占比标准误
0.250.2100.038
0.500.1690.034
0.750.2130.035
0.950.2040.036

α 提到 0.95,背叛者还是两成上下。α×δ 与背叛占比只有弱相关(Pearson r=0.14,p=0.03)。稳住合作的,是策略和复制机制一起演化。

均匀能量下,空间结构不是合作的必要条件,两种拓扑都压偷窃。但空间会把程序写得更复杂、更像亲戚:高阶熵 Cohen's d=2.81,编辑距离 d=7.32,均为 p<0.001。能量按位置严重不均时,均匀混合种群代谢和结构一起塌;局域交互保住终端能量(d=8.98)和结构复杂度(d=3.54)。

再加外源任务。网格位置绑定常数 b,每轮给随机输入 x,读邻居的 y 更贵。Solo 任务算 x+b,Joint 任务算 x+y。自由能量只在储量低于阈值时发放,例如容量的 25%。阈值越高(白给的能量越多),解题率越低:个体任务 r=-0.267(p=0.017),联合任务 r=-0.427(p=7.7×10⁻⁵)。

把数学题做成序贯社会困境:先做出 Joint 双方各得 2ε;对方再做 Solo 自己再拿 5ε,先做 Joint 的人只剩 2ε;对方也做 Joint 则各再得 4ε,人均 6ε;双方都 Solo 各得 5ε。磁带还是压 Solo、冲 Joint,STEAL 继续被压。局域交互的联合解题率更高(p≤0.01,d=1.63)。

简化模型把复制时机单独拿出来:如果先互动再按事后能量决定谁复制,背叛接管;如果复制优先级在互动前就定死,合作接管。能量损耗本身不够,损耗必须绑上可演化的复制机制。

为什么重要

对做多智能体和开放式自我改进的人,这篇给了一条硬约束:把计算能力和能量预算绑死,合作可以从物理里长出来,不必先给记忆、惩罚或身份识别。空间结构在均匀资源下是复杂度催化剂,在资源不均和联合任务里变成生存脚手架。

这仍然是人工生命实验,不是生产级 agent 协议。Z80 磁带能互相读写全部内存,更接近共享 harness 的 agent,不像私有权重的模型。机制主张比「再加一个合作奖励」硬,落地距离也一样远。

局限与存疑

作者自己写了:模拟限于简化囚徒困境和 Z80 指令集,换硬件密度会改复制成本和饥饿阈值,合作策略是否还摸得到不知道。无限制读写对方内存,很多真实系统不给这个权限。附录理论还冻住了相对执行速度,用平均能量代替动态总量。不对称能量、持续突变、外源任务上的充分条件还没写出来。

另外,合作的操作定义很粗:不执行 STEAL 就算 C。程序可以循环 STEAL、改偷窃量、只覆盖对方一部分代码。论文把这种梯度放进附录,主文仍用二元标签。α-δ 扫描里 δ=16 时背叛占比到 0.313,δ=24 又掉到 0.075,曲线并不单调,主文只强调「对 α 不敏感」。图上的「heavily suppressed」多数没有给出终端偷窃率的绝对数字。

术语

原文与代码

社区讨论

相关论文

全部论文解读