← 返回资料站  /  Recursive Self-Improvement
论文 理论分析 背景

Gödel Machines: Self-Referential Universal Problem Solvers Making Provably Optimal Self-Improvements

Gödel Machine:可证明最优的自指自改写问题求解器
一句话Schmidhuber 2003 年提出的纯理论构造:一台机器内置证明搜索器,只有当它形式化证明了"改写自己的代码会带来更高期望效用"时才执行改写,并证明这种自改写是全局最优的。没有任何可运行的实现,但它是 recursive self-improvement 谱系的命名源头(DGM/HGM 都在向它致敬)。

这是什么

这是一篇 2003 年的理论论文(arXiv cs/0309048,S2 引用 99 次),提出 Gödel Machine:一台与环境交互、目标是最大化期望累积 reward 的通用机器,其初始软件 p(1) 由两部分组成——一个(通常次优的)初始问题求解器 e(1)(比如任意传统 RL 算法),和一个证明搜索器。证明搜索器系统地枚举 proof techniques(输出证明的程序),一旦找到某个 switchprog 的"目标定理"——立即用 switchprog 改写 p 的期望效用严格高于保持 p 不变——就执行 switchprog,后者可以改写机器的任何部分,包括证明搜索器本身。

核心卖点是 Global Optimality Theorem:这种策略不是贪心的,因为"保持 p 不变"的效用已经隐含评估了未改动的 p 之后可能找到的所有替代 switchprog,所以第一次被证明有用的自改写就相对于初始证明搜索策略和资源限制是全局最优的,且所有 meta-meta-...层级自动坍缩为一层。收录它的原因是谱系溯源:2024-2025 年的 Darwin Gödel Machine、Huxley-Gödel Machine 等经验性 RSI 工作都以它命名,读那些工作前需要知道原版假设了什么、为什么 20 多年没人真正造出来。

论文唯一一张图:初始(尚未自改写的)Gödel Machine 的存储快照。左侧是环境,右侧是机器状态 s 的分区:底部是硬件写的 time/x/y 等变量;中部是初始软件 p(1),含与环境交互的初始求解器 e(1) 和初始证明搜索器(内含描述硬件、p(1)、环境、代价与目标的公理系统);顶部是证明搜索器可写区(proof、switchprog、switchbit、当前测试的 proof technique)。右侧标注了各区域对 proof techniques / switchprog 的读写权限——switchprog 一旦被证明有用即可改写包括证明搜索器在内的任何部分。
论文唯一一张图:初始(尚未自改写的)Gödel Machine 的存储快照。左侧是环境,右侧是机器状态 s 的分区:底部是硬件写的 time/x/y 等变量;中部是初始软件 p(1),含与环境交互的初始求解器 e(1) 和初始证明搜索器(内含描述硬件、p(1)、环境、代价与目标的公理系统);顶部是证明搜索器可写区(proof、switchprog、switchbit、当前测试的 proof technique)。右侧标注了各区域对 proof techniques / switchprog 的读写权限——switchprog 一旦被证明有用即可改写包括证明搜索器在内的任何部分。

机制与做法

机器的构造与目标定理

形式化设定:硬件是有单一生命周期的(可能空间受限的)通用图灵机,状态 s 中划出 time、输入 x、输出 y、代码 p 等变量;效用函数 u(s, Env) 定义为对未来 reward 之和的条件期望(公式 1),并把证明搜索本身的计算开销也计入。初始代码里编码了公理系统 A,包括:(a) 每条硬件指令如何改变状态,(b) p(1) 自身的描述(论文论证这不引入循环),(c) 环境的随机性质,(d) 效用函数 u。proof techniques 通过特殊指令(生成公理、应用推理规则、check 目标定理等)来延长当前 proof,目标定理的形式是"立即执行当前 switchprog 比保持 p 不变效用更高"。

BIOPS 与最优性声明

初始证明搜索器用 Bias-Optimal Proof Search(BIOPS),即 Levin Universal Search 的在线变体,按 2^{-l(w)} 的时间预算系统测试 proof techniques,阶(order)意义上 O()-最优;而与 Hutter 的 AIXItl、HSEARCH 等"硬编码搜索器"不同,Gödel Machine 原则上还能通过自改写消掉 O() 记号里隐藏的巨大常数/加性慢化项——前提是这种加速的效用可证。

论文自己列出的根本限制:由 Gödel 不完备性,任何包含算术的公理系统都存在真而不可证的命题,所以即使算力无限,机器也必须放弃那些无法在 A 内证明有效的自改进;可以构造病态的环境/效用函数使目标定理永远不可证;现实中资源受限的机器更是只能利用在时间/空间预算内证得完的改进。这些限制正是后来 DGM 等工作放弃"证明"、改用经验 benchmark 验证的动机。

关键结果

实证核查

未能核查纯理论构造,无代码无实验,"可证明最优"是定义在自身公理系统内的数学命题,无法用实证手段核查;能核实的是:20 多年过去没有任何接近完整的实现,连作者组自己的实现尝试也止步于框架探讨。
论文声称给出"第一类数学严格、完全自指、最优效率的通用问题求解器",可全局最优地自改写。
这是存在性/最优性定理而非可运行系统:论文(arXiv cs/0309048 tex 源码全文 2138 行)无任何实验或代码,官方主页 people.idsia.ch/~juergen/goedelmachine.html 也只列理论论文。最优性以初始公理系统 A 和初始搜索策略为前提,且论文 4.4 节自己承认目标定理可能极难甚至不可证——所以"最优"在实践中不构成可检验的声称。
机制上可实现:只需把硬件、初始代码、环境、效用函数公理化,用 BIOPS 搜证明即可。
2003 年以来无人造出可用的 Gödel Machine。作者组后续的 Steunebrink & Schmidhuber "A Family of Gödel Machine Implementations"(AGI 2011, Springer LNCS 6830, 被引 22)和 "Towards an Actual Gödel Machine Implementation"(2012, 被引 20)只是探讨实现空间和自反射机制,均未产出能自证自改的系统;瓶颈正是形式化证明真实程序的效用改进在计算上不可行。2025 年 Sakana 的 Darwin Gödel Machine(sakana.ai/dgm)官方博客明确说明其放弃证明、改用经验验证,恰是对原版不可实现性的旁证。
作为 RSI 理论源头具有持续影响。
S2 显示引用 99 次,对一篇 22 年前的"奠基"论文来说不算高(同期 Hutter 的 AIXI 系列引用高得多),说明其影响更多是概念/命名层面:DGM(2025)、HGM(2025, Schmidhuber 组参与)都借其名但机制上只保留"自改写代码"这一点,证明搜索被完全丢弃。

与我们方向的关系

对课题组读 DGM/HGM 这条线的直接价值是坐标系:原版 Gödel Machine 把"什么时候允许自我修改"定义为"证明了改写后效用更高",这是最强也最不可行的验证标准;DGM 把它降级为"在 SWE-bench/Polyglot 上分数变高",HGM 又加了对长期改进潜力的估计。比较三者时,关键差异就是验证信号的强度与可得性,而不是"自改写"本身——自改写在 2003 年就说清楚了。

另一个可借鉴的概念是 meta 层级坍缩:目标定理一次性覆盖对后续所有自改写的影响,避免无穷回归。现代经验性 RSI 没有这个性质(改坏评估器/选择器的风险始终存在),这正是 objective hacking / 评估腐蚀问题的理论根源,写综述或立论时可以引用本文 4.3 节和 FAQ 第 2、3 条作对照。

阅读笔记

读 tex 源码比读 PDF 快:核心内容在 Section 2(set-up + basic idea + limitations)和 Section 4(Global Optimality Theorem),Section 6.8 的 FAQ 意外地好读,直接回答了"后续自改写会不会破坏性""meta-meta 层怎么办"等现代读者最想问的问题。注意本文有多个版本(gm6 是 v6),期刊版后来以 'Ultimate Cognition à la Gödel' (2009) 等形式重写过。

材料清单

TeX 源码
已存档:Raw/g-del-machines/source/
实现尝试link.springer.com/chapter/10.1007/978-3-642-22887-2_29
Steunebrink & Schmidhuber, A Family of Gödel Machine Implementations (AGI 2011)——最接近实现的后续工作,仍停留在框架层面
现代后继sakana.ai/dgm/
Darwin Gödel Machine(2025):放弃形式证明、改用经验 benchmark 验证的自改写 coding agent

同类条目