
可执行记忆与世界耦合自修改模拟中作为认知接口的代码Executable Memory and World Coupling: Code as Cognitive Interface in a Self-Modifying Simulation作者Hu YiZhang独立研究者2026 年原文链接Zenodo·DOI 永久指向最新版https://doi.org/10.5281/zenodo.22176942许可CC BY 4.0学术论文禁止用于洗稿摘要大语言模型LLM智能体近期探索了可执行记忆executable memory——将智能体记忆编译为代码片段由外部 LLM 在推理时解释执行。我们认为这一范式始终受制于单一架构选择执行者是外部模型、记忆是个人档案、代码从不参与智能体自身的记忆经济。本文提出相反的架构定位我们在认知模拟引擎内部构建可执行记忆——代码以单位级记忆条目存储由模拟自身的确定性规则引擎执行。携带EXPR:前缀的记忆条目是一个小程序——对引擎参数与状态变量的算术表达式——每代解释执行一次其结果直接馈入单位的行为回路。代码记忆参与引擎的完整记忆经济会衰减、被命中强化、被容量驱逐与任何机制一样通过验证门。单位通过觅食获取可执行片段将能量增益与行为信息传递耦合。实验表明i代码记忆可测量地改变生存动态威胁 1.0 下灭绝计数增长降低约 97%ii代码的生存收益按策略分层——衰减强化在威胁 1.5 下带来 15 代愈合强化 10 代而激进清除无增益清除危险记忆同时清除了驱动防御行为的恐惧iii超过临界威胁强度3.0后任何代码策略都无收益——一个可测量的能力边界iv外部触发器耦合单位的代码可以读取外部触发器状态认知当外部信号存在时确定性清除自身威胁记忆并写入外部可观察痕迹——信号缺失时同一代码完全惰性证明感知是响应的必要组件v认知代码是获得的而非遗传的没有代码片段的新生单位无法感知外部状态使认知成为可进化的个体性状vi当防御代码与对抗代码共存时仅凭原语操作就涌现出军备竞赛。我们还报告了负值代码的意外语义、其诊断与作为候选抑制机制的重设计。该架构指向自修改系统的方向记忆、行为、感知与鲁棒性收敛于单一可执行基底之上。1. 引言可执行记忆——将智能体知识表示为模型可以运行的代码——近期在 LLM 智能体文献中受到关注。典型做法是把智能体的记忆编译成代码文件或代码片段由外部 LLM 在推理时执行或解释该代码用其输出调节行为。这一模式虽然提升了忠实度与可审计性但代码始终外在于智能体执行者是外部模型、记忆是档案而非活的存储、代码不受它本该服务的认知经济约束。本文探索相反的放置方式。我们在认知模拟内部构建可执行记忆代码存储为单位级记忆条目由模拟自身的确定性规则引擎执行完全受记忆经济衰减、强化、驱逐支配。因此代码记忆不是静态工件而是认知的活的部分不用时被遗忘、有用时被强化、通过觅食获取、在选择压力下可进化。第二个贡献是世界耦合。我们用外部触发器接口扩展引擎外部世界可以设置触发器状态单位的代码记忆可以读取该状态感知的计算类比并据此行动。由此形成的闭环——外部信号、内部代码、外部可观察的动作、内部效果——证明可执行记忆可以成为认知系统与其环境之间的真正接口且感知是适应性响应的必要组件。我们报告统一配置下的实验种群上限 1000每条件三次重复干净的威胁梯度威胁强度 1.5/2.0/2.5/3.0 对应灭绝代 240/130/95/75策略分层的生存收益可测量的能力边界带惰性对照的外部触发器耦合获得而非遗传的认知涌现的军备竞赛以及一个被诊断、修复并重新解释为抑制机制的意外负值代码语义。2. 相关工作与定位本工作是从引擎实验中自底向上发展出来的而非建立在既有文献基础上本文报告的每一个机制代码记忆、代码即食物、外部触发器耦合、认知代码都是通过模拟运行发现并验证的论文刻意不包含文献引用。我们知道更广泛的智能体记忆与人工生命社区中存在相邻方向例如 LLM 智能体的记忆分层、智能体的开放式代码生成、数字有机体进化熟悉这些工作的读者可以自行定位本贡献与它们的关系。我们选择不引用具体文献因为我们并非建立于其上并且我们更愿意给出明确的独立声明而非表演式的参考文献列表。3. 系统架构单位Units。引擎模拟一个单位种群实验中容量 1000可扩展到 200,000。每个单位携带具有指数衰减的情节记忆权重 val × d^age、概念索引回忆、命中强化、基于容量的驱逐、预测机制、情绪状态与成对关系。单位会繁殖、代谢能量并死亡。规则引擎Rule engine。行为与生存机制表达为数据驱动的规则表JSON由确定性规则引擎解释。规则是对小原语集的有序步骤GEN_MEM、MEASURE、PRESSURE、BOOST_PROB、CLEAR_MEM、EXEC_MEM、TRIGGER_FIRE及代级结算原语。条件与概率是对引擎参数和状态变量的表达式解析为逆波兰表示RPN并由一个小型求值器执行。规则表可热重载。威胁与生存Threat and survival。外部威胁注入按给定强度向所有单位添加「危险」「受伤」知识记忆。每代单位威胁权重被测量为危险/受伤记忆的衰减权重之和这贡献给全局灭绝计数dc它通过代谢稀释衰减当 dc ≥ 100 或全体单位死亡时生态系统灭绝。疼痛应对回路以基础概率清除威胁记忆由恐惧提升恐惧随 dc 增长上限 90%。灭绝计数与灭绝代数作为主要生存指标。4. 可执行记忆代码作为一种记忆类型。文本以EXPR:开头的单位记忆条目是一个程序——对引擎参数与状态变量的算术表达式数字、参数符号、状态变量与运算符 − × ÷ 及 min/max。我们称这类条目为代码记忆。执行。EXEC_MEM原语按单位按代求值扫描单位的代码记忆条目解析第一个匹配的表达式求值并把结果存入后续规则步骤消费的上下文变量。语法无效的片段被跳过没有代码记忆的单位得到零。执行失败被构造性地包含——代码记忆不能使模拟崩溃它只能无效。类型标签。代码条目可以携带概念标签例如code:clear用于防御代码code:attack用于对抗代码EXEC_MEM可选地按标签过滤使不同的规则链在同一生态内消费不同的代码种群。记忆经济集成。代码记忆在其他任何方面都是普通记忆会衰减、命中时强化、占用容量、按同样的最小权重策略驱逐。一个旧代码片段被遗忘的方式与旧情节记忆被遗忘的方式完全相同。因此代码受制于它所参与其中的认知经济。5. 代码即食物世界代码池。注入的EXPR:文本进入世界级代码池使代码成为环境资源。觅食。通常把食物概念转化为能量的觅食机制被扩展持有食物概念并觅食的单位可能吃掉代码——从池中消费一个片段获得能量并把一份副本挂载到自己的记忆中。能量增益超过觅食成本所以吃代码在能量上是划算的。水平基因转移。能量增益与行为信息传递的组合是水平基因转移的计算类比。有用的片段倾向于持续被命中强化、被重新获取无用的衰减并被驱逐。代码沿与能量相同的通道流过生态系统将代谢与信息耦合。6. 外部触发器耦合外部触发器接口。引擎通过 TCP 接口暴露trigger命令外部世界可以set、clear或list具名触发器状态例如clear_gate。规则表达式可以像引用变量一样引用触发器状态例如$trig:clear_gate使外部状态对代码可见。代码即感知。像EXPR:$trig:clear_gate这样的代码片段是认知代码执行时其值就是外部触发器状态。这是作为记忆操作的感知——读取世界的结果是记忆系统内部的一等值。带外部痕迹的触发动作。TRIGGER_FIRE原语按单位触发当单位的代码值超过阈值且在耦合条件下外部信号存在时单位i确定性衰减自身的危险/受伤记忆ii写入外部可观察痕迹——一条日志行和一个可设置的触发器状态。痕迹是系统在外部世界的足迹外部观察者可以精确数出多少个单位、在哪一代、感知并响应了。认知是获得的不是遗传的。单位繁殖代码记忆不复制给后代。没有代码片段的新生单位执行EXEC_MEM得到零——它无法感知外部状态。因此认知是一种获得的个体性状在种群中动态分布且可进化选择可以塑造哪些代码片段持续并传播。7. 实验所有实验使用统一配置种群容量 1000每 5 代注入威胁每条件三次重复报告值为灭绝代的中位数。引擎对每个条件全新运行不复用快照。7.1 威胁梯度基线灭绝作为威胁强度的函数是一条干净的单调梯度威胁 1.5灭绝于第 240 代三次运行 240/245/2402.0第 130 代130/135/1252.5第 95 代95/95/953.0第 75 代75/75/75。注入率越高生态系统死得越快该梯度作为下方所有代码评估的参照。7.2 可执行记忆显著改变生存在威胁强度 1.0 下100 代窗口基线生态积累 dc ≈ 11.9运行 10.6/10.7/14.4。每 10 代注入代码片段EXPR:0.9——使代码记忆以每代 0.45 的概率驱动额外的威胁清除步骤——将灭绝计数增长降低约 97%三次运行 dc 0.4。效应可归因于代码同一规则链没有代码记忆时求值为零不产生任何变化。7.3 代码策略分层在威胁 1.5 下四种代码策略与基线对比灭绝代中位数基线 245245/245/235双倍衰减强化DEATH_DECAY_RATE * 2260255/260/260双倍愈合PAIN_HEAL_RATE * 2255250/255/255自适应愈合PAIN_HEAL_RATE * (1 DEATH_CNT/100)245245/245/245激进确定性清除代码值高于 0.8 触发危险/受伤记忆 20% 衰减保留 80% 权重240240/250/235。分层是有信息量的衰减强化带来最大收益15 代愈合强化次之10 代自适应变体中性激进清除没有收益——略为负面。我们从机制上解释这个负面结果危险与受伤记忆也驱动恐惧而恐惧是防御回路的一部分它把清除概率提升到 90% 上限。激进清除威胁记忆同时也清除了驱动防御行为的恐惧——生态用一个应对机制换了一条记忆。因此代码策略质量在「清除越多越好」上不是单调的记忆经济包含真正的设计权衡。7.4 能力边界在威胁强度 3.0 下代码策略无收益基线灭绝于第 75 代之前评估过的相同代码链包括激进清除在 70–80 代灭绝与基线统计上不可区分。算术解释了边界威胁以每代 0.6 单位进入每 5 代一次强度 3.0 注入而最强的清除链每次激活只移除现存威胁的一部分——注入跑赢清除。可执行记忆在有界区间内有效超出区间则惰性。7.5 外部触发器耦合我们在威胁 1.5 下评估耦合闭环。四个条件共享相同的认知规则链EXEC_MEM读取代码然后由min($cx 0.8, $trig:clear_gate 0.5) 0.5门控的TRIGGER_FIRE条件灭绝代中位数外部痕迹无代码基线2450 行内部清除无外部门2400 行trig_off外部信号缺失2200 行trig_on外部信号存在245245 代有日志cogn_off认知代码信号缺失2300 行cogn_on认知代码信号存在245245 代有日志外部痕迹是决定性证据信号存在时每一代都记录一行形如TRIGGER gen1 count360的日志count 跟踪感知并响应的单位数随种群死亡从 360 递减到 0。信号缺失时同一代码产生零痕迹——感知是响应的必要条件。认知代码条件EXPR:$trig:clear_gate以代码值内部的感知实现相同的耦合代码是对世界的读取行为跟随读取。感知可观察性。在单独探测中EXEC_MEM对每次求值无论值为何都写日志行。外部信号缺失时全部 14,231 次记录的求值都是COGN val0.000单位感知到了缺失。信号存在时记录的值的分裂为val1.000持有认知代码的单位与val0.000没有代码的新生单位。因此认知i在其全谱系上外部可观察ii是获得的而非遗传的——新单位在获得代码之前无法感知。7.6 涌现竞争代码军备竞赛在独立配置中容量 5000用于按种群分层注入两种代码类型共存防御代码code:clear挂载在等级 ≥ 4 的单位上清除威胁对抗代码code:attack挂载在等级 4 的单位上每代生成威胁记忆。引擎不包含任何竞争概念——只有威胁生成与威胁清除。单条件对照威胁 1.0100 代无代码 dc 20.5仅防御 dc 0.0仅对抗 dc 增长加速。两者同时存在时防御压制退化到 dc ≈ 19–20。一个四轮协同进化循环维持独立的防御与对抗种群防御种群在清除系数 1.3 处达到峰值第 3 轮dc 18.9而对抗种群收敛到投毒强度 0.82。值得注意的是只有 13% 的单位携带防御代码对抗 87% 的对抗者——少数代码种群支撑着生态系统对抗数量上占优的投毒者。7.7 意外语义负值代码在进化运行中我们观察到一个异常结果负值代码片段例如PAIN_HEAL_RATE - 2.6似乎成功了一轮中全部八个变体都存活满窗口。诊断揭示BOOST_PROB原语只钳制了上界cap 0.9而没有钳制下界负概率使条件frand() p真空成立威胁清除以概率 1 触发——负代码意外地成为最强防御。修复下界钳制为 0恢复了预期语义。这一插曲说明了设计的两个性质代码空间有超出设计者预期的涌现语义而验证方法论全新生态 A/B 对比恰恰是检测此类异常的仪器。我们在下文中讨论负值作为候选抑制机制。8. 讨论感知作为一种记忆操作。触发器耦合提出了一个具体的架构主张感知可以实现为把世界读进代码值一旦读取该值就与任何记忆一样参与同一经济。这消解了感知与记忆的边界看见即记住世界此刻是什么。认知是获得的且可进化的。因为代码记忆不被遗传认知动态分布新生儿在获得代码前是盲的。因此选择可以直接作用于认知本身——哪些片段传播、持续、被遗忘——使感知成为可进化的性状而非固定官能。代码策略包含权衡。分层结果表明「防御代码越多越好」不是单调的激进清除通过移除驱动防御的恐惧而降低生存。记忆经济编码了真正的设计权衡而选择或进化是发现它们所必需的。负代码作为抑制机制。在神经系统中抑制性神经元占种群的 20–30%对调节不可或缺在多细胞生物中肿瘤抑制因子与细胞凋亡约束增殖。一种设计的负语义——代码值抑制而非仅仅失败——会给生态带来内部的、稳态的资源治理密度依赖的繁殖抑制、接近容量时的软记忆压缩、以及异常单位的程序化死亡。走向环境内化。代码记忆的沙箱化执行暗示一个架构方向把执行环境逐步内化进认知基底。存储变成记忆容错变成验证门控的代码选择进程级失效面收缩到只剩物理资源——鲁棒性作为组织的内在属性而非外部监控层。下一步设计中赋予单位修改外部世界的能力超越触发消除外部要素作为环境治理的行为——单位成为其世界的行动者而不仅是感知者。局限性。表达式语言把代码表达能力限制在算术组合更丰富的程序结构需要字节码层。生存指标粗糙灭绝代在容量 1000 下跨运行波动 ±10–25 代例如基线运行 235/245/245因此只有超过该噪声的差异才可解释我们全文报告三次运行中位数。实验在单机上20 万单位以上的种群规模并发效应未经测试。引擎没有 LLM 集成代码记忆表达机制而非自然语言知识。9. 结论与未来工作我们展示了一个认知模拟引擎其中可执行代码是一等单位级记忆由引擎自身的确定性规则引擎解释、参与完整记忆经济、在验证门控的选择下可进化。通过觅食获得的代码把能量与信息传递耦合代码的生存收益在经验上按策略分层并被威胁强度界定外部触发器接口使代码成为真正的感知-行动接口带外部可观察痕迹一个意外的负值代码语义被诊断、修复并重新构想为抑制机制。未来工作沿三条线推进i世界耦合能够修改而非仅仅感知环境的单位——外部要素作为代码驱动行动的目标ii认知鲁棒性与表达式求值器失败包含设计对齐的解析器级容错以及基于记忆的自我恢复规则缓存在单位记忆中外部配置损坏时用于恢复iii认知的进化代码片段竞争感知与行为生态位的选择实验。*本文为作者原创工作采用 CC BY 4.0 许可。原始版本含实验数据包见 Zenodohttps://doi.org/10.5281/zenodo.22176942