集群优化(PSO、ACO)


集群优化(PSO、ACO)

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

学习目标

阅读完本节,你应当能够:

  1. 复述 PSO(粒子群优化)的 v <- w·v + c1·r1·(p_best - x) + c2·r2·(g_best - x) 更新规则,并说明 LMPSO 如何把「速度」重新定义为提示。
  2. 复述 ACO(蚁群优化)的信息素沉积-挥发机制,并说明 AMRO-S 如何把它用于多智能体路由。
  3. 说明为何「生物启发仍赢」——LLM 输出与路由决策不可微,PSO/ACO 只需一个评估函数即可优化。
  4. 应用「PSO 适合连续/可映射连续空间 + 便宜自动适应度,ACO 适合路由/路径选择 + 决策随时间强化」的选择准则。
  5. 识别 PSO/ACO 的三条实践边界(人群预算、探索 vs 利用、灾难性漂移),并据此为一次优化估算成本。

一、问题与直觉

你有一个提示,在你的任务评测上得 62%。你想改进它。朴素做法是免梯度的手动微调,扩展性很差。强化学习需要奖励信号和足够多的 rollout 来训练。对提示做反向传播基本不可能——提示是离散字符串,不是可微参数。

经典生物启发式优化——PSO 面向连续搜索空间,ACO 面向路径选择——正是为这种场景设计的:免梯度、基于种群、单次评估便宜。把它们与 LLM 配对做免梯度搜索步骤,就得到一个出奇实用的优化器。

同样的模式也适用于多智能体系统里的 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) 若改善则更新 p_best_i 若为全局最优则更新 g_best ​

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

PSO 用于 LLM 输出——LMPSO

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

这在以下情况好用:输出是结构化的(可解析、可评估);适应度是自动的(测试运行、算术求值);种群小(约 10~30 个粒子),使总 LLM 调用可控。

在适应度需要人工评审时不好用——单次迭代成本变得 prohibitive。

Model Swarms

arXiv:2410.11163 把 PSO 从输出层移到模型层。每个「粒子」是一个专家 LLM(参数)。种群通过免梯度更新把参数移向集体最优。报告:9 个数据集上对 12 个基线平均提升 13.3%,每次迭代只需 200 个实例。

关键洞察是 LLM 专家模型本就在一个共享参数流形(适配器权重、LoRA delta)上彼此邻近。PSO 在这个低维子空间上又便宜又有效。

ACO 回顾(Dorigo 1992)

蚁群优化:蚂蚁遍历一个图,每条路径有信息素轨迹。蚂蚁移动概率按信息素强度加权。完成任务的蚂蚁按解的质量沉积信息素。信息素随时间挥发。

AMRO-S——用于 Agent 路由的 ACO

arXiv:2603.12933 用 ACO 做多智能体路由。每个任务类型是一个「目的地」,每个 Agent 是一条可能路由。信息素强化产出好输出的路由。关键贡献:

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

质量门要紧:没有它,快但错的 Agent 会累积信息素,系统锁死在坏路由上。

何时用 PSO / ACO

用 PSO 当: 搜索空间连续或可映射到连续参数(提示嵌入、LoRA 权重、数值生成参数);适应度便宜且自动;种群可小(10~30)。

用 ACO 当: 你有路由或路径选择问题;决策随时间强化(同任务类型会回来);你需要路由决策的可解释证据。

两者都别用当: 适应度需人工评审(单次迭代太贵);搜索空间是 PSO 覆盖不到的离散组合型(改用遗传算法);实时决策需严格延迟(PSO/ACO 相对单遍启发式收敛慢)。

为何生物启发仍赢

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

PSO 和 ACO 只需一个评估器函数。若你能给候选输出或路由决策打分,就能在这个空间上优化。这让适用门槛低得多。

⚠️ 「便宜评估器」是承重前提——PSO/ACO 的全部价值在于「能廉价地批量打分」。一旦适应度要人工评审或要跑昂贵仿真,N × T × 单次评估的成本会迅速失控,经典算法的优势就被吃光。

实践边界

  • 种群预算。 N 粒子 × T 迭代 × 单次评估成本。LLM 评测约 0.02 美元/调用,一个 20 粒子、跑 50 轮的 PSO 约 20 美元,提前规划。
  • 探索 vs 利用。 信息素挥发率与 PSO 惯性权衡:挥发太快 → 忘解;太慢 → 卡在早期局部最优。
  • 灾难性漂移。 两个算法都可能先收敛再发散,若适应度地貌漂移(新数据分布)。监控最优适应度的稳定性。

二、从零实现

code/main.py 实现:

  • LMPSO——在数值提示参数(温度、top_k 权重)上的 PSO。每个粒子的「LLM 生成」用脚本化适应度函数模拟。跑 30 轮,展示 g_best 收敛。
  • AMRO_S——ACO 式路由。3 个 Agent、4 种任务类型、信息素矩阵、100 个路由任务。打印(任务类型 → Agent 选择)随时间分布,展示轨迹形成。
  • 对比:同一任务流上的随机路由 vs ACO 路由,测量质量与延迟。

ACO 路由的信息素更新

def route(task_type, pheromone, alpha=1.0): weights = [pheromone[task_type][a] ** alpha for a in agents] chosen = weighted_pick(agents, weights) return chosen def deposit(task_type, agent, quality, pheromone, rho=0.1, gate=0.7): if quality < gate: # 质量门:差的不沉积 return for t in task_types: # 全局挥发 for a in agents: pheromone[t][a] *= (1 - rho) pheromone[task_type][agent] += quality ​

设计要点:gate 质量门是 AMRO-S 4.7 倍加速的承重墙——没有它,快但错的 Agent 会在初期靠速度累积信息素,系统锁死在坏路由上。挥发率 rho 与质量门 gate 的搭配,决定路由是「稳定收敛到最优 Agent」还是「卡在先快后错的局部最优」。

运行 python3 code/main.py,期望输出:LMPSO 的 g_best 适应度在 30 轮内从随机逼近最优;AMRO-S 的信息素表稳定到每个任务类型的正确 Agent,ACO 路由在质量上比随机高约 30~40%,且延迟更低(更少重试)。

三、框架对比

算法 搜索空间 承重机制 LLM 时代用途
PSO 连续 粒子向 p_best/g_best 移动 提示参数、LoRA 权重(LMPSO、Model Swarms)
ACO 图/路径 信息素沉积 + 挥发 多智能体路由(AMRO-S)
遗传算法 离散组合 交叉 + 变异 PSO 覆盖不到的组合搜索
强化学习路由 策略空间 可微/伪梯度 有训练数据时的路由器

💡 心法:PSO/ACO 的吸引力在于「只需评估器,不需梯度」。 在 LLM 这个「输出不可微、评估却能打分」的领域,这正是经典算法重新焕发的根因——门槛低、可解释、单次迭代可预算。

四、可复用产物

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

五、练习

  1. 观察收敛:运行 code/main.py,观察 LMPSO 收敛。变化种群大小 5、10、20、50,收敛时间在哪个大小饱和?
  2. 灾难性漂移:第 30 轮后改变适应度函数,PSO 多快适应?重置 p_best 有帮助吗?
  3. 加质量门:给 AMRO-S 加质量门——只在评测分 > 0.7 时沉积信息素。这相对无门版如何改变收敛?
  4. 读 LMPSO:读 arXiv:2504.09247,把论文的「速度即提示」映射回你的数值速度。模拟里丢了什么、保留了什么?
  5. 读 AMRO-S:读 arXiv:2603.12933,实现解耦的「推理快路径」加异步信息素更新。持续负载下系统延迟如何变?

本节要点回顾

  1. PSO 速度公式:v <- w·v + c1·r1·(p_best-x) + c2·r2·(g_best-x),惯性 + 认知 + 社会。
  2. LMPSO 把速度变提示:每个粒子是候选输出,LLM 按速度提示生成新候选,适合结构化输出。
  3. Model Swarms 在模型层做 PSO:每个粒子是专家 LLM,LoRA 权重流形上免梯度,9 数据集均提 13.3%。
  4. ACO 靠信息素:沉积按质量、挥发随时间,AMRO-S 用于多智能体路由,4.7 倍加速。
  5. 质量门是承重墙:无门则快但错的 Agent 锁死坏路由。
  6. 生物启发仍赢的根因:LLM 输出与路由不可微,PSO/ACO 只需评估器,门槛低。
  7. 三条实践边界:种群预算(N×T×单次评估)、探索 vs 利用、灾难性漂移。
  8. 选择准则:连续+便宜适应度用 PSO,路由+可解释证据用 ACO,人工评审适应度两者都别用。

下一节,我们回到训练——多智能体强化学习(MARL)的三块基石:MADDPG 的「中心训练分布执行」、QMIX 的单调值分解、MAPPO 的「被低估的默认基线」,看它们如何为 LLM Agent 的协调策略训练提供蓝图。


作者与出处
原作者: Rohit Gupta
来源:rohitg00
许可证:MIT
整理: 灏天文库整理
由灏天文库结构化整理,提供目录导航、全文检索与在线阅读,便于系统化学习
发布者: 作者: Rohit Gupta 转发
评论区 (0)
U