跳转至

SimpleEvol: An Agent-Loop Framework for LLM-Driven Automated Heuristic Design with Minimal Human Priors

会议: NeurIPS2026
arXiv: 2609.37172
代码: https://github.com/HenryZhu1029/SimpleEvol-Master
领域: 优化/理论
关键词: 自动启发式设计、智能体循环、轨迹记忆、组合优化、智能转化效率

一句话总结

SimpleEvol 用单条“生成代码—执行评价—压缩记忆”搜索轨迹替代复杂的种群与进化算子编排,在十个 LLM 上获得最高的 TSP/CVRP 智能转化回归斜率,并在 GPT-5-mini 下取得更低的各规模测试 gap,但这不等于证明“先验越少必然越好”。

研究背景与动机

自动启发式设计(automated heuristic design,AHD)不是让 LLM 针对每个客户实例直接输出路线,而是让它写出可重复运行的决策函数,再用一组优化实例检验该函数。FunSearch 用程序岛屿和候选采样组织搜索,EoH 预设交叉、变异类操作,ReEvo 增加短期与长期反思。这些机制能控制探索,却也把模型限定在人工规定的局部角色中:即使模型能够自行诊断失败、提出另一种算法思路,也未必能在当前算子的输出契约下表达出来。

因此,只比较“某个模型搭配某个框架的最终最优值”不足以回答框架是否善用更强的模型。较好的成绩可能来自模型本身,也可能来自外层搜索工程。本文改为跨十个骨干模型比较:当外部知识、指令遵循、数学与代码能力的综合代理分数上升时,哪类框架的启发式质量提升更明显?作者以 AHI 描述编排结构,以 ICE 描述跨模型性能趋势,再构造一个主动减少外层控制的框架检验这一视角。

这里的简化是取消显式种群管理与预设多算子协作,不是抛弃所有人类知识。任务接口、评价器、保留最佳候选、记忆压缩周期乃至底层 ACO/GLS 求解器都仍由人定义。核心 idea:把搜索策略的选择留给同一个 LLM,只保留可执行反馈、最佳候选和压缩轨迹,让模型通过连续实验积累经验,而不是在固定进化操作之间被外部控制器调度。

方法详解

整体框架

输入包括优化问题说明、待生成函数的接口要求和训练实例;输出是训练评价中发现的最佳启发式代码。SimpleEvol 维持单条按时间推进的尝试轨迹,每轮由同一个 LLM 提出一份候选及简短算法说明,执行后将目标值、耗时、错误和实验序号写回上下文。默认每五轮压缩历史,留下工作笔记与最佳候选,随后继续搜索。

必须分清两个循环:外层是设计启发式的 LLM 搜索循环,内层是候选程序在固定求解器中的执行。TSP 的候选决定下一城市;CVRP 的候选生成 ACO 使用的边偏好矩阵;FSSP 的候选改变 GLS 搜索景观并选择扰动作业。最终部署或测试时运行已选代码,不需要每次决策都重新调用 LLM。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["任务接口与训练实例"] --> B["自主候选生成"]
    B --> C["可执行反馈"]
    C -->|每五轮压缩| D["轨迹记忆与精英保留"]
    C -->|近期评价进入上下文| B
    D -->|工作笔记与最佳代码| B
    C -->|预算结束后选训练最佳| E["最终启发式代码"]
    X["新测试实例"] --> F["固定求解器执行"]
    E --> F
    F --> G["路线或作业序列"]

图中的反馈与记忆边只属于搜索阶段;新测试实例到固定求解器的路径属于最终启发式推理。测试结果用来报告泛化性能,而不是在主实验搜索过程中给 LLM 提供监督。

关键设计

1. 自主候选生成:不预先规定下一步必须交叉还是变异

传统框架常先选择父代,再要求 LLM 完成某一种局部编辑。SimpleEvol 则提供问题说明、实验进度和已有上下文,让模型自行选择接下来的算法方向,并返回代码与设计说明。一次候选可以是修补已有逻辑,也可以是换掉核心策略;“如何探索”不再由种群控制器与算子菜单提前限定。它仍是一次生成一个候选的串行轨迹,并非模型可以任意增减实际评价预算或自行更改任务。

附录 B 表明,这种自主性仍有明确的提示结构:模型被引导记录尝试、反思结果、比较策略并规划改进,压缩后的生成提示还会包含鼓励行为多样性的线索。因此,“没有独立反思模块”不意味着没有反思,而是把反思融合进同一模型的推理和生成过程;“最少先验”也不意味着提示完全无约束。其可能优势是模型能够依据失败类型决定改进粒度,而不必将所有问题都改写成一次规定的交叉或变异。

2. 可执行反馈:用实际优化结果约束代码与叙述

只有算法说明而没有执行评价,模型可能不断提出听起来合理、实际上不能运行或没有效果的方案。每轮候选在训练实例上执行,评价器记录目标值、运行时间、错误信息和尝试序号;候选自己的设计说明与这些观测一起成为下一轮上下文。这样既能告诉模型“这次是否更好”,也能区分性能差、超时、接口错误等不同失败,避免用同一种盲目编辑处理所有问题。

评价器不是由 LLM 临时发明的:函数接口、可行性检查、目标函数与执行时限是外部约束。TSP 的决策函数读取当前节点、终点、未访问集合及距离矩阵并输出下一节点;CVRP 的函数读取距离、坐标、需求和容量并输出边偏好矩阵,之后仍由信息素和 ACO 构造路线;FSSP 的函数读取当前作业序列与加工时间矩阵,返回修改后的矩阵及扰动作业,之后仍由 GLS 的邻域搜索推进。框架简化发生在“如何发现这些函数”,不是发现完整求解器。

这也是成绩解释的边界:TSP/CVRP 的每份候选限时 60 秒,FSSP 每个实例限时 60 秒;代码必须适应这些规则。更强模型发现的复杂启发式仍受运行预算限制,且任务接口本身已经规定了可搜索的算法空间。评价器和外围求解器都是重要结构先验,不能因为 AHI 未将它们单独计数,就把它们当成不存在。

3. 轨迹记忆与精英保留:压缩经验,但不丢失当前最好解

随着候选增多,直接保留全部代码、错误与结果会拉长上下文,增加输入成本并稀释有效线索。SimpleEvol 默认每五轮调用同一个 LLM 压缩历史,把有效与无效的结构模式、常见实现错误及实验进度整理成工作笔记,然后删除较旧记录。记忆承担的是“哪些方向值得再试”的经验积累,不是外部规划器强制规定下一操作。

压缩时还保留最佳候选及其元信息,避免只剩抽象经验、却丢失已验证的可运行基线。最佳候选是整个搜索中的精英锚点,单条轨迹不意味着一旦生成较差代码就覆盖历史最优。新尝试可以失败,但最终返回仍按训练评价选最佳。消融中,取消最佳候选保留造成的 gap 增幅最大,说明方法的有效性恰恰依赖这一人为安排的结构先验,而非“完全放手”本身。

压缩与代码生成是两类不同 LLM 调用,因此 SimpleEvol 的调用数会超过候选评价数。它省去显式种群与多算子路由,但不保证最短运行时间或最少输入 token;串行推进也牺牲了种群方法可以利用的候选并行性。这一取舍需要结合实际成本和模型能力判断。

一个完整示例

以训练规模为 50 节点的 TSP 为例,模型首先根据下一节点选择接口写候选代码,评价器在 64 个训练实例上执行并返回路线长度、耗时或异常。接下来的候选能够参照此前的算法说明与真实结果修改策略;第五轮后,模型总结这一段轨迹,将有效模式与错误写入工作笔记,同时保留当前最佳代码。这里只是在解释真实协议,不虚构某一轮获得了多少收益。

达到 820 份候选的预算后,用训练成绩选出的最佳函数在每组 64 个、规模分别为 50、100、200 的独立测试实例上运行。这时每一步选城市调用的是生成的 Python 函数,而不是 LLM。附录 F.1 给出的两份实际程序说明搜索空间可以相当宽:GPT-4.1-nano 发现带动态权重的最近邻 rollout;GPT-5-mini 的示例组合了最小生成树信息、候选预筛、归一化插入遗憾与少量前瞻。它们是搜索产物的案例,不是 SimpleEvol 预置的模块,也不能仅由两份代码推断普遍因果关系。

损失函数 / 训练策略

这里没有梯度训练或 LLM 参数更新;所谓训练是反复评价和筛选程序。每个“框架、模型”组合运行三次,默认温度为 1.0,统一预算为 820 份启发式;CVRP 的 ACO 使用 30 只蚂蚁、100 次迭代,FSSP 的 GLS 使用 1000 次迭代。CVRP 训练集只有 10 个 50 节点实例;FSSP 训练集为 64 个实例,每例 50 个作业、机器数从 2 到 20 均匀采样。

作者还提出两个分析指标。AHI 只描述其计数规则所覆盖的外层编排:\(M\) 是独立选择或路由候选的有状态组件数,\(K\) 是不同搜索角色的 LLM 调用类型数,\(Q\) 是基准任务上跨模型平均的总调用数。初始化不另计调用类型,仅存储或格式化上下文的组件也不另计入 \(M\)。

\[ \mathrm{AHI}(\mathcal A)=M+K+\log_{10}(1+Q). \]

SimpleEvol 按作者口径为一个模型组件、生成和压缩两种调用类型,TSP 平均调用数为 1001,得到 AHI 6.001。AHI 是作者定义的描述指数,不是客观测量“全部先验”的仪器;求解器、接口、评价数据、提示要求及精英保留都可能影响结果,却不一定在该规则下单独增加分数。

模型能力代理分数聚合 MMLU-Pro、IFBench、AIME 2025 与 LiveCodeBench,以最弱模型 GPT-4o-mini 的对应成绩为基准,取比值的几何平均:

\[ I(m)=\left(\prod_{b\in\mathcal B}\frac{s_{m,b}}{s_{m',b}}\right)^{1/|\mathcal B|}. \]

它用于跨模型比较,不代表真实智力的绝对单位。性能先计算每例相对参考值的 gap,即 \((J-J^*)/J^*\),再跨运行与测试规模取平均。TSP 参考来自 LK/LKH 类求解器,CVRP 参考来自 DeepACO,FSSP 合成分布使用下界、Taillard 使用最优或最好已知值,所以不同任务的 gap 不能都解释为严格最优性差距。

\[ P(\mathcal A,m)=\frac{1}{\overline g(\mathcal A,m)+\epsilon},\qquad P(\mathcal A,m)\approx\alpha_{\mathcal A}I(m)+\beta_{\mathcal A},\qquad \mathrm{ICE}(\mathcal A)=\alpha_{\mathcal A}. \]

ICE 就是上述回归的斜率,不是对计算成本的效率比,也不是因果效应或真实智力增长定律。取 gap 的倒数会放大小 gap 区域的变化;能力基准、参考解、稳定常数与模型集合都会影响斜率,因此应在同一任务和同一指标定义下比较,而不能将 TSP 与 CVRP 的 ICE 大小直接排序。

实验关键数据

主实验

以下数值来自正文表 2、表 3 与附录 F.3;ICE 越大表示拟合趋势越陡。MCTS-AHD 是附录扩展基线,不是正文四方法比较的原始成员。

框架 AHI TSP ICE CVRP ICE
FunSearch 6.915 1.8174 5.4381
EoH 8.919 1.5082 3.6572
ReEvo 9.112 0.8230 2.0824
MCTS-AHD 10.215 0.7525 1.5376
SimpleEvol 6.001 2.1941 6.2128

固定 GPT-5-mini 后,下表报告各测试规模的 gap,越低越好;TSP 与 CVRP 使用不同参考来源,不能横向比较任务难度。所有条目是三次独立运行的平均结果。

任务与规模 FunSearch EoH ReEvo SimpleEvol
TSP,50 5.50% 6.76% 7.98% 4.77%
TSP,100 7.33% 8.44% 10.06% 6.47%
TSP,200 10.35% 10.56% 12.10% 9.49%
CVRP,50 1.04% 0.71% 0.49% 0.34%
CVRP,100 4.83% 6.70% 5.98% 4.31%
CVRP,200 4.46% 4.28% 4.38% 4.26%

CVRP 规模 200 上,4.26% 与 EoH 的 4.28% 只差 0.02 个百分点,不能把每个胜出都描述为大幅领先。SimpleEvol 的优势既包括跨模型趋势,也包括这一骨干下的具体结果,但不意味着每个骨干都获胜。

消融实验

消融使用 GPT-4.1-nano,规模为 50;括号内是目标值标准差,不是 gap 的标准差。保留源文报告值,不将它们替换为附录详细主实验的数值。

配置 TSP50 gap(目标值标准差) CVRP50 gap(目标值标准差)
默认 SimpleEvol 10.00%(0.1020) 3.08%(0.1643)
不做摘要压缩 13.24%(0.0711) 7.38%(0.2826)
移除元信息 11.67%(0.0477) 6.01%(0.1243)
不保留最佳候选 14.56%(0.0036) 11.49%(0.1345)
每 10 轮压缩 12.88%(0.0942) 6.01%(0.2381)

相对默认配置,移除最佳候选使 TSP/CVRP gap 分别增加 4.56/8.41 个百分点;移除摘要分别增加 3.24/4.30 个百分点。默认五轮压缩优于十轮压缩,但这只支持所测配置,不能据此宣称五轮对所有模型与任务都最优。

关键发现

  • 终点之外也有优势,但早期不总成立。 200 次评价时 SimpleEvol 的 TSP/CVRP ICE 为 1.403/3.281,400 次为 1.835/4.028,600 次为 2.436/6.137。50 次时 TSP 的 EoH 为 1.393、高于 SimpleEvol 的 0.936;100 次时 CVRP 的 FunSearch 为 2.430、高于 SimpleEvol 的 2.215。
  • 统计证据强弱有别。 10000 次贝叶斯 bootstrap 中,SimpleEvol 相对 FunSearch 的 ICE 差为正的概率为 TSP 85.5%、CVRP 79.1%;相对 ReEvo 为 97.6%/99.7%。点估计领先不能自动等同于所有比较都具有同样强的统计支持。
  • 泛化不遵守简单的“模型越强越好”。 TSPLIB 的 15 个实例上,GPT-4.1-nano 搜出的 SimpleEvol 启发式平均 gap 为 10.26%,赢得 8 个第一名;FSSP 的 Taillard 上虽有 8/10 骨干取得最佳性能分数,但各框架的跨模型拟合斜率为负,说明更好地适应合成训练分布不保证更好的分布外迁移。
  • 统一的是候选预算,不是资源消耗。 TSP 平均调用数为 FunSearch 821、EoH 828、ReEvo 1293、SimpleEvol 1001;SimpleEvol 输入 token 为 4.517M,高于其余三者。其 TSP 运行时间为 10.55 小时,而 EoH/ReEvo 为 5.23/3.60 小时,故不能称它全面最快或最省。

亮点与洞察

  • 把“升级模型是否有用”纳入框架评价。 只挑一个骨干的最终分数会掩盖框架与模型的交互;跨模型曲线让这种交互变得可检查。不过斜率与平均成绩是不同维度,二者都应报告。
  • 记忆压缩是搜索状态管理,不只是省 token。 工作笔记把失败类型与算法结构保留下来,而精英代码提供可执行锚点。可迁移的是这一组合,不能只复制“定期摘要”而丢掉真实评价和最佳实现。
  • 外层简单不等于产物简单。 一个自由度较高的循环仍能生成含拓扑信息、插入策略与前瞻的复杂程序。复杂性从人工固定的编排转移到模型发现的候选中,并未消失。

局限与展望

  • AHI 的覆盖范围有限。 只比较少数框架,且组件划分、调用类型定义和权重都由作者规定;216 组权重测试增强了该计数口径下的稳健性,却不能排除评价器、提示和底层求解器这些未充分计量的先验。
  • ICE 是观察性回归。 十个模型在价格、推理设置、速度和训练背景上同时变化,不能把斜率解释为去掉某个模块的因果收益。未来可在严格成本预算下操纵单个编排变量,并报告不确定性和平均 gap。
  • 分布外结果限制结论外推。 FSSP 在 Taillard 上的负斜率直接提醒读者:强模型可能更擅长利用训练分布特征。可进一步加入跨规模、跨分布训练实例,并检验随机或代理评价反馈下的稳定性。
  • 源文存在口径差异,不能自行修齐。 正文称 TSP 参考由 LKH-3 计算,附录 C.4 则称使用 elkai 的 LK 实现;消融默认 TSP/CVRP gap 为 10.00%/3.08%,附录主实验对应 GPT-4.1-nano 为 10.16%/3.19%,未解释两组差异。表 5 的 MMLU-Pro 原始成绩与部分归一化比值也不一致,例如基准 64.8 与 GPT-4.1-nano 的 65.7 对应比值却列为 1.04;本笔记引用作者 ICE,而不据此重算纠正。
  • 初始化与发布描述也需核验。 附录一方面说 SimpleEvol 不需要种子启发式,另一方面说 FSSP 的种子用于所有方法,不能断言三任务均无种子。摘要给出代码链接,但 checklist 仍写将在最终版本发布;仅保留论文提供的链接,不声称仓库已验证可复现。

相关工作与启发

  • vs FunSearch:FunSearch 用岛屿、程序簇与采样管理多条探索方向,SimpleEvol 用单条轨迹及压缩经验积累搜索信息。后者减少外部候选路由,但前者保留了更显式的多样性机制;这里的 ICE 比较不代表所有程序搜索任务都会同样排序。
  • vs EoH / ReEvo:EoH 预设进化操作,ReEvo 额外拆分反思调用;SimpleEvol 将如何改进的决定交给同一模型。其消融同时表明,放松算子约束应与可靠反馈、精英保留配套,不能简化为删除一切工程。
  • vs MCTS-AHD:树搜索提供显式分支选择与路径推理,附录中其 AHI 更高、ICE 更低。值得进一步研究模型能力较弱、预算较小或评价更随机时,显式探索结构是否反而更有价值。
  • vs 神经组合优化:神经组合优化通常训练模型直接构造或改进解,这里搜索的是供固定求解器调用的程序。可借鉴跨分布训练以减轻启发式过拟合,但不能混同两者的训练与推理成本。

评分

  • 新颖性: 4/5。贡献主要在跨模型分析视角与极简对照框架,而不是新的组合优化求解算子。
  • 实验充分度: 4/5。包含十个骨干、三任务、消融与稳健性分析,但样本量、成本公平性和部分口径差异仍限制结论。
  • 写作质量: 3/5。核心循环清晰,但“几乎无先验”的表述与精英保留、外围求解器的实际作用需要区别。
  • 价值: 4/5。适合作为升级 LLM 时的轻量 AHD 基线,以及研究记忆、反馈和编排约束的起点。