8

算法结构演化:AutoPSO 与 EvoGO

AI999 第5课:方法演化:从优化解到优化算法本身
00:00

在 MetaDE 这类方法中,演化发生在参数层:内层算法解决真实任务,外层算法调整内层算法的配置与策略。而 AutoPSO 与 EvoGO 把被演化的对象再向上抬高一层——直接演化算法结构本身:组件如何组合、候选如何生成、更新规则如何组织。

算法结构演化:AutoPSO 与 EvoGO 外层演化算法结构(改结构,而非仅调参数) · 内层在真实任务上评估并反馈 外层 组件池(可组合算子) 粒子速度项 / 位置更新 邻域拓扑结构 扰动项 重启策略 固定公式被拆解为可选组件 结构组装 历史反馈驱动的结构选择 组件如何组合 候选如何生成 更新规则如何组织 AutoPSO 与 EvoGO 的共同骨架 结构层:组件与连接方式可变 候选生成器 由外层结构实例化 内层评估结果 适应度 / 收敛轨迹 结构—表现配对记录 为外层选择提供统计依据 样本密度是可靠选择的前提 组合 实例化 结构在内层运行 历史反馈 结构更新的方向盘 内层:任务评估 + GPU 并行批量运行 大量内层任务同时评估,使结构—表现对照样本足够密集 并行批量评估 调学习因子只改变行为强度;改组件组合才改变行为形态。

判据:外层到底在搜什么

区分“调参”与“改结构”,不能只看方法名字,而要看外层搜索空间的层级。MetaDE 一类方法的外层搜索空间是内层算法的配置与策略(学习因子、变异概率、选择压力等取值);AutoPSO / EvoGO 的外层搜索空间则是算法结构——哪些组件参与组合、候选生成流程长什么样、状态如何更新。

  • 参数层:结构固定,只调数值。可及范围是行为的“强度”。
  • 结构层:组件与连接方式可变。可及范围是行为的“形态”。

AutoPSO:把经典 PSO 拆成组件池

经典 PSO 的速度—位置更新公式是写死的。AutoPSO 把这一过程拆解为可组合组件:速度项、邻域拓扑、扰动项、重启策略等,再由外层演化挑选并组装成新的候选生成器。它不再沿用固定的经典更新结构,而是让“更新结构”本身成为可搜索的变量。调学习因子只能改变行为强度,改组件组合才能改变行为形态。

EvoGO:让历史反馈决定结构往哪改

EvoGO 侧重把历史反馈接入结构演化路径:既往搜索轨迹与表现记录不再只用于“选解”,而用于决定“结构下一步往哪里改”。反馈因此从结果筛选器变成结构更新的方向盘——它改变的是下一轮结构候选的方向,而不是仅仅在一批已完成候选里挑一个好结果。

共享的双层骨架与工程含义

两者共享同一骨架:内层算法在真实任务上运行,外层依据内层表现演化结构。关键前提是样本密度——GPU 并行批量运行大量内层任务,使“结构—表现”的对照样本足够密集,外层的选择才具备统计意义,而不会被单次运行的噪声左右。

工程含义
算法从“一次性的先验选择”变成“可持续被改进的对象”。代价是:结构层演化天然带来更大的搜索空间与更高的评估成本,因此它的可行性依赖张量化并行底座——这也是下一节 GPU 并行主题的直接动因。