前置知识: AI Agent

群体优化PSO与ACO

13 minIntermediate

生物启发优化正在 LLM 领域回归。LMPSO (arXiv:2504.09247) 使用 PSO,其中每个粒子的速度是一个提示,LLM 生成下一个候选;在结构化序列输出(数学表达式、程序)上效果良好。Model Swarms (arXiv:2410.11163) 将每个 LLM 专家视为模型...

群体优化 — PSO, ACO

生物启发优化正在 LLM 领域回归。LMPSO (arXiv:2504.09247) 使用 PSO,其中每个粒子的速度是一个提示,LLM 生成下一个候选;在结构化序列输出(数学表达式、程序)上效果良好。Model Swarms (arXiv:2410.11163) 将每个 LLM 专家视为模型权重流形上的 PSO 粒子,在 9 个数据集上仅用 200 个实例就报告了相对 12 个基线的 13.3% 平均增益SwarmPrompt (ICAART 2025) 混合 PSO + 灰狼优化用于提示优化。AMRO-S (arXiv:2603.12933) 是 ACO 启发的信息素专家用于多 Agent LLM 路由——4.7 倍加速、可解释的路由证据、质量门控异步更新,将推理与学习解耦。本课程在提示参数空间上实现 PSO,在 Agent 路由上实现 ACO,测量这些经典算法为何适合 LLM 时代,以及何时不适合。

类型: 学习 + 构建 语言: Python (stdlib) 前置条件: Phase 16 · 09 (并行群体网络), Phase 16 · 14 (共识与BFT) 时间: ~75 分钟

问题

你有一个在任务评估上得分 62% 的提示。你想改进它。朴素的方法是无梯度的手动调整,扩展性很差。强化学习需要奖励信号和足够的 rollout 来训练。通过提示的反向传播并不真正可行——提示是离散字符串,不是可微参数。

经典生物启发优化——PSO 用于连续搜索空间,ACO 用于路径选择——正是为这种场景设计的:无梯度、基于种群、每次评估成本低。将它们与 LLM 配对用于无梯度搜索步骤,你得到一个惊人实用的优化器。

相同的模式适用于多 Agent 系统中的 Agent 路由。ACO 风格的信息素轨迹记录哪个 Agent 在哪种任务型上效果最好,让路由器利用轨迹,并衰减信息素以便路由可以被重新发现。

概念

PSO 回顾 (Kennedy & Eberhart 1995)

粒子群优化:连续搜索空间中的粒子种群。每个粒子有位置 x_i 和速度 v_i。每次迭代:

v_i <- w * v_i + c1 * r1 * (p_best_i - x_i) + c2 * r2 * (g_best - x_i)
x_i <- x_i + v_i
evaluate fitness(x_i)
update p_best_i if improved
update g_best if global best

其中 p_best 是粒子自身最佳,g_best 是群体最佳,w, c1, c2 是惯性 + 认知 + 社会权重,r1, r2 是随机因子。

LLM 输出上的 PSO — LMPSO

arXiv:2504.09247 将 PSO 适配于 LLM 生成的结构化输出(数学表达式、程序)。每个粒子是一个候选输出。速度是一个提示,描述如何将当前输出向个人/全局最佳修改。LLM 从速度提示生成新输出。速度的”惯性”是一个像”做小的增量修改”的提示。

这在以下情况下效果良好:

  • 输出是结构化的(可解析、可评估)。
  • 适应度是自动的(测试运行、算术评估)。
  • 种群很小(~10-30 个粒子),因此总 LLM 调用保持可管理。

在适应度需要人工审查时效果不佳——每次迭代的成本变得过高。

Model Swarms

arXiv:2410.11163 将 PSO 从输出层移到模型层。每个”粒子”是一个专家 LLM(参数)。群体通过无梯度更新将参数移向集体最佳。报告:在 9 个数据集上相对 12 个基线的 13.3% 平均增益,每次迭代仅 200 个实例。

关键洞察是 LLM 专家模型已经在共享参数流形中彼此接近(适配器权重、LoRA 增量)。在这个低维子空间上的 PSO 便宜且有效。

ACO 回顾 (Dorigo 1992)

蚁群优化:蚂蚁遍历;每条路径有信息素轨迹。蚂蚁移动概率按信息素强度加权。完成任务的蚂蚁按解决方案质量比例沉积信息素。信息素随时间衰减。

AMRO-S — Agent 路由的 ACO

arXiv:2603.12933 使用 ACO 进行多 Agent 路由。每种任务型是一个”目的地”;每个 Agent 是一条可能的路由。信息素加强产生良好输出的路由。关键贡献:

  • 可解释的路由证据。 信息素强度是人可读的信号。
  • 质量门控异步更新。 信息素只在质量检查通过后更新,将推理与学习解耦。
  • 4.7 倍加速在多 Agent 路由基准上。

质量门很重要:没有它,快速但错误的 Agent 会积累信息素,系统锁定在糟糕的路由上。

何时使用 PSO / ACO 用于 LLM

使用 PSO 当:

  • 搜索空间是连续的或映射到连续参数(提示嵌入、LoRA 权重、数值生成参数)。
  • 适应度便宜且自动。
  • 种群可以很小(10-30)。

使用 ACO 当:

  • 你有路由或路径选择问题。
  • 决策随时间加强(相同的任务型会回来)。
  • 你需要路由决策的可解释证据。

两者都不使用当:

  • 适应度需要人工审查(每次迭代太贵)。
  • 搜索空间是 PSO 不覆盖的离散组合方式(改用遗传算法)。
  • 实时决策需要严格延迟(PSO/ACO 相对单次启发式收敛缓慢)。

为什么生物启发仍然赢

基于梯度的方法需要可微信号。LLM 输出和路由决策不是平凡可微的。伪梯度方法(强化学习路由器、DPO 风格提示调优器)有效但需要昂贵的训练。

PSO 和 ACO 只需要一个评估器函数。如果你可以评分候选输出或路由决策,你就可以在空间上优化。这使得适用性门槛低得多。

实际限制

  • 种群预算。 N 个粒子 × T 次迭代 × 每次评估成本。对于约 0.02/调用的LLM评估,20粒子PSO运行50次迭代花费约0.02/调用的 LLM 评估,20 粒子 PSO 运行 50 次迭代花费约 20。相应规划。
  • 探索 vs 利用。 信息素衰减率和 PSO 惯性权衡;太快衰减 → 忘记解决方案;太慢 → 卡在早期局部最优。
  • 灾难性漂移。 如果适应度景观变化(新数据分布),两种算法都可能收敛然后发散。监控最佳适应度稳定性。

构建它

code/main.py 实现:

  • LMPSO — 数值提示参数(temperature, top_k 权重)上的 PSO。每个粒子的”LLM 生成”被模拟为脚本化适应度函数。运行算法 30 次迭代并显示 g_best 收敛。
  • AMRO_S — ACO 风格路由。3 个 Agent,4 种任务型,信息素矩阵,100 个路由任务。打印 (task_type → Agent 选择) 分布随时间变化以显示轨迹形成。
  • 比较:相同任务流上的随机路由 vs ACO 路由。测量质量和延迟。

运行:

python3 code/main.py

预期输出:

  • LMPSO:g_best 适应度在 30 次迭代中从随机改善到接近最优。
  • AMRO-S:信息素表稳定在每个任务型的正确 Agent 上;ACO 路由在质量上击败随机约 30-40%,也减少延迟(更少重试)。

使用它

outputs/skill-swarm-optimizer.md 帮助在 LLM / Agent 优化问题的 PSO、ACO、遗传算法和基于梯度的优化器之间选择。

发布它

  • 从小开始。 10-20 个粒子,20-50 次迭代。只有在收敛曲线显示明确增益时才扩展。
  • 记录每次迭代的信息素或 g_best。 没有轨迹调试群体优化器是痛苦的。
  • 质量门控更新。 特别是 ACO 路由:快速但错误的 Agent 不能积累信息素。
  • 分布偏移时重置衰减。 当评估分布变化时,老化信息素是陈旧的;重置或临时加倍衰减率。
  • 限制每次迭代成本。 发出每次迭代成本指标。每次迭代花费 $500 且增益 0.5% 的 PSO 不可发布。

练习

  1. 运行 code/main.py。观察 LMPSO 收敛。变化种群大小 5, 10, 20, 50。在什么大小时收敛时间饱和?
  2. 实现”灾难性漂移”实验:第 30 次迭代后,改变适应度函数。PSO 多快适应?重置 p_best 有帮助吗?
  3. 向 AMRO-S 添加质量门:只在评估分数 > 0.7 的运行上沉积信息素。这如何改变收敛 vs 无门控版本?
  4. 阅读 LMPSO (arXiv:2504.09247)。将论文的”速度作为提示”映射回你的数值速度。模拟中丢失了什么,保留了什么?
  5. 阅读 AMRO-S (arXiv:2603.12933)。实现解耦的”推理快速路径”与异步信息素更新。这如何改变持续负载下的系统延迟?

关键术语

术语人们怎么说实际含义
PSO”粒子群优化”Kennedy-Eberhart 1995。基于种群的无梯度优化器。
ACO”蚁群优化”Dorigo 1992。通过信息素轨迹的路径/路由优化。
LMPSO”LLM 生成的 PSO”arXiv:2504.09247。速度是提示;LLM 产生候选。
Model Swarms”专家权重上的 PSO”arXiv:2410.11163。模型参数子空间上的无梯度更新。
AMRO-S”Agent 路由的 ACO”arXiv:2603.12933。任务型 × Agent 上的信息素矩阵。
p_best / g_best”个人/全局最佳”迄今找到的每粒子和群体范围的最佳解决方案。
信息素”路由记忆”边上的强度;随时间衰减;按质量沉积。
质量门控更新”只从好的运行学习”以质量检查为条件的信息素沉积。
灾难性漂移”分布偏移”适应度景观变化;旧的 p_best 和信息素变得陈旧。

延伸阅读