【多智能体】基于嵌套进化算法的多代理工作流

在这里插入图片描述

😊你好,我是小航,一个正在变秃、变强的文艺倾年。
🔔本专栏《人工智能》旨在记录最新的科研前沿,包括大模型、具身智能、智能体等相关领域,期待与你一同探索、学习、进步,一起卷起来叭!
🚩Paper:EvoFlow: Evolving Diverse Agentic Workflows On The Fly
💻时间:202502
💭推荐指数:🌟🌟🌟🌟🌟

往期精彩专栏内容,欢迎订阅:

🔗【多智能体】20250610:受木偶戏启发实现多智能体协作编排
🔗【多智能体】20250609:基于LLM自进化多学科团队医疗咨询多智能体框架
🔗【具身智能体】20250608:EvoAgent:针对长时程任务具有持续世界模型的自主进化智能体

创新性

  1. 范式转变:首次明确将代理工作流程自动化表述为成本效益驱动的多目标优化问题,强调了LLM异质性和复杂性多样性在多智能体系统发展中的关键作用。
  2. 实用解决方案:提出了一种基于生态位进化算法的框架EvoFlow,能够在各种任务领域中自动演化出异质且复杂性自适应的代理工作流程,最小化人为干预。
  3. 实证评估:在七个基准测试上的广泛实验表明,EvoFlow具有多样性、高性能和经济性,优于之前的手工制作和自动化工作流程。
  4. 多样性演化:能够演化出从简单I/O任务到复杂多轮交互的工作流程群体。
  5. 性能提升:在六个基准测试中,EvoFlow的性能比现有的手工设计或自动化工作流程提高了1.23%到29.86%。
  6. 经济性:训练成本仅为SOTA基线AFlow的1/3,推理成本仅为AFlow的1/5,同时在MATH基准上超越了AFlow 5.91%。

补充这里可能会存在的疑点
EvoFlow在处理多目标优化问题时是如何定义其优化目标的?

EvoFlow的多目标优化目标是通过平衡成本和性能来生成的。具体来说,EvoFlow的优化目标函数定义为: G ⋆ = arg ⁡ max ⁡ G ∈ H ( I , E o ) [ u ( G , T ) , − c ( G , T ) ] ⊤ , \mathcal{G}^{\star}=\underset{\mathcal{G}\in\mathcal{H}(\mathcal{I},\mathcal{E}^{o})}{\arg\max}\left[u(\mathcal{G},T),-c(\mathcal{G},T)\right]^{\top}, G=GH(I,Eo)argmax[u(G,T),c(G,T)],
其中, u ( ⋅ ) u(\cdot) u()表示任务领域的性能评估函数, c ( ⋅ ) c(\cdot) c()表示系统成本的评估函数。

这个目标函数表示在寻找一个工作流集合 G ⋆ \mathcal{G}^{\star} G,使得在性能和成本之间达到最佳平衡。具体来说, G ⋆ \mathcal{G}^{\star} G包括一组非支配的工作流,这些工作流在目标空间中分布均匀,并且位于帕累托前沿(Pareto front)附近。

EvoFlow在实验中是如何设置初始工作流种群的?

EvoFlow的初始工作流种群是通过选择一个包含多种强大单代理和多代理结构的篮子来初始化的。这些结构包括CoT(Chain-of-Thought)、Ensemble、Self-Reflexion、Multi-agent
Debate等。具体初始化过程如下:

  1. 从操作符节点池 O ( 0 ) \mathcal{O}^{(0)} O(0)中选择多个操作符模板,并从LLM池 M \mathcal{M} M中随机抽样LLM实例和提示。
  2. 将选定的操作符模板实例化,生成初始工作流个体 G k \mathcal{G}_{k} Gk,并为其分配多个效用指示标签,这些标签反映了工作流在特定任务领域的专长。
  3. 通过上述步骤生成初始工作流种群 P ( 0 ) P^{(0)} P(0),并为其分配多个效用指示标签,以便快速匹配用户查询和相关工作流。

EvoFlow在进化过程中如何利用小生境选择机制来维持种群的多样性和质量?

具体步骤如下:

  1. 对于每个新个体 G ⊙ ( t ) \mathcal{G}_{\odot}^{(t)} G(t),计算其在成本和效用标签上的排名,以确定其所属的小生境区域 P N A P^{NA} PNA
  2. 在小生境区域内执行查询,记录每个个体在处理查询时的累计成本和性能。
  3. 计算每个个体在小生境区域内的适应度值 F ( G ) \mathcal{F}(\mathcal{G}) F(G),适应度值较低的个体被认为更优。
  4. 在小生境区域内执行选择操作,淘汰适应度值最低的个体 G worst \mathcal{G}^{\text{worst}} Gworst,并将
    其他个体(包括父代、后代和新个体)更新到种群中。

通过这种方式,EvoFlow能够在保持种群多样性的同时,逐步进化出高性能的工作流。

研究背景

在这里插入图片描述

  1. 研究问题:这篇文章要解决的问题是如何自动优化一组异构且复杂度自适应的智能工作流程,以提供多样化的解决方案。现有的自动化管道通常缺乏LLM异质性和复杂性调度,限制了它们结合较弱模型以实现更定制化和成本效益解决方案的潜力。
  2. 研究难点:该问题的研究难点包括:如何在多目标优化中平衡成本和性能;如何在大规模搜索空间中找到高效的进化算法;如何在保持种群多样性的同时提高进化效率。
  3. 相关工作:该问题的研究相关工作包括早期的手动配置工作流(如CAMEL、AutoGen、MetaGPT),以及后续显著减少人类干预的工作流(如DsPy、GPTSwarm、EvoAgent)。最近的研究表明,这些自动化管道能够开发出惊人且强大的智能工作流,标志着向完全自主智能代理AI的重大进步。然而,这些管道仍然缺乏LLM异质性和复杂性多样性。

研究方法

在这里插入图片描述

这篇论文提出了EvoFlow,一种基于小生境进化算法的框架,用于自动搜索异构且复杂度自适应的智能工作流程。具体来说,

  1. 标签检索:首先,EvoFlow通过标签检索从代理种群中提取父工作流程。标签是通过LLM生成的,反映了工作流程的任务领域专长。在这里插入图片描述
  2. 交叉和变异:然后,EvoFlow通过交叉和变异操作进化新工作流程。交叉操作在选定的父工作流程之间进行,变异操作包括LLM/提示/操作符变异,以提高后代的多样性。
  3. 小生境选择:最后,EvoFlow利用小生境选择机制维持种群的多样性和质量。小生境选择通过计算每个个体在成本和效用标签上的排名来确定小生境区域,并在该区域内执行查询。

公式解释:

  • 调用节点 I i I_{i} Ii 的定义: I i = ( M i , P i , τ i ) , , P i ∈ P , τ i ∈ [ 0 , 1 ] , I_{i}=(M_{i},P_{i},\tau_{i}),,P_{i}\in\mathcal{P},\tau_{i}\in[0,1], Ii=(Mi,Pi,τi),,PiP,τi[0,1],其中 P i P_{i} Pi 表示关联的提示, P \mathcal{P} P 表示可行的提示空间, τ i \tau_{i} τi 是温度参数。 M i M_{i} Mi 表示从可行模型池 M \mathcal{M} M 中选择的LLM实例。
  • 操作符节点 O j O_{j} Oj 的定义: O j = ( I j o , E j o ) , I j o = I 1 , … , I n , E j o ⊆ I j o × I j o , O_{j}=(\mathcal{I}{j}^{o},\mathcal{E}{j}^{o}),\mathcal{I} {j}^{o}={I{1},\ldots,I_{n}},\mathcal{E}{j}^{o}\subseteq\mathcal{I}{j}^{o}\times\mathcal{I}{j}^{o}, Oj=(Ijo,Ejo),Ijo=I1,,In,EjoIjo×Ijo,其中 I j o \mathcal{I}{j}^{o} Ijo 是选定的调用节点集合, E j o \mathcal{E}_{j}^{o} Ejo表示调用节点之间的连接关系。
  • 工作流 G \mathcal{G} G 的定义:KaTeX parse error: Expected '}', got '\right' at position 91: …_1,\ldots, O_ m\̲r̲i̲g̲h̲t̲},\mathcal{E}^a…
    其中 O S \mathcal{O}^S OS 是操作符节点的子集, E a / E o \mathcal{E}^a/\mathcal{E}^{o} Ea/Eo表示操作符节点内部/之间的连接。
  • EvoFlow的多目标优化目标: G ⋆ = arg ⁡ m a x G ∈ H ( I , E o ) [ u ( G , T ) , − c ( G , T ) ] ⊤ , \mathcal{G}^{\star}=\underset{\mathcal{G}\in\mathcal{H}(\mathcal{I},\mathcal{E}^{o})}{\arg\ max}\left[u(\mathcal{G},T),-c(\mathcal{G},T)\right]^{\top}, G=GH(I,Eo)arg max[u(G,T),c(G,T)],其中 u ( ⋅ ) u(\cdot) u()表示任务领域的性能评估函数, c ( ⋅ ) c(\cdot) c() 表示系统成本的评估函数, G ⋆ \mathcal{G}^{\star} G表示平衡成本和性能的帕累托最优工作流集合。

实验设计

  1. 任务和基准:实验在六个公共基准上进行,涵盖四个领域:数学推理(GSM8K、MATH、MultiArith)、代码生成(HumanEval、MBPP)、具身智能(ALFWorld)。对于MATH基准,选择了难度为5的617个问题。
  2. 基线:比较了EvoFlow与手工设计的工作流(如Chain-of-Thought、ComplexCoT)和自动化工作
    流(如GPTSwarm、ADAS)。
  3. LLM骨干网络:使用了四个开源模型(llama-3.1-70b、Qwen-2.5-72b、Deepseek-V2.5、Hermes-3-70b)和一个闭源模型(gpt-4o-mini-0718)。
  4. 参数配置:选择了七个操作符来初始化操作符节点的可行空间,种群大小为15,效用标签数量为5。

结果与分析

在这里插入图片描述

  1. 同质性能:在六个基准上,EvoFlow的性能均优于现有的手工设计或自动化工作流。例如,在MATH基准上,EvoFlow比vanilla gpt-4o-mini提高了11.41%,比最先进的AFlow提高了6.42%。在这里插入图片描述
  2. 异质性能:在异质设置中,EvoFlow通过优化四个开源模型,整体成本仅为ol-preview的12.4%。例如,在MATH基准上,EvoFlow比ol-preview提高了2.7%。
  3. 跨域性能:在跨域优化设置中,EvoFlow通过在MBPP数据集上的优化,提高了从87.62%到88.35%的性能,证明了其在不同领域间的优化能力。

总体结论

这篇论文提出了一种新的范式,将自主多代理工作流搜索从单目标优化转向成本效益驱动的多目标优
化。通过基于小生境的进化算法,EvoFlow能够自动进化出异构且复杂度自适应的智能工作流。广泛的实验结果表明,EvoFlow在性能上有显著提升,同时在成本上具有显著优势。

📌 [ 笔者 ]   文艺倾年
📃 [ 更新 ]   2025.6.11
❌ [ 勘误 ]   /* 暂无 */
📜 [ 声明 ]   由于作者水平有限,本文有错误和不准确之处在所难免,本人也很想知道这些错误,恳望读者批评指正!

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/diannao/86666.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电源知多少?LDO VS DCDC((下)

首先补充几个上一节没有提到的知识,我们通常说的DCDC同步整流是指什么? 同步是指采用通态电阻极低的专用功率MOS来取代整流二极管以降低整流损耗,,但是同步整流有以下两点需要注意:1、MOS在导通之后的压降比较低&…

数组方法_push()/pop()/数组方法_shift()/unshift()

push 方法用于在数组的末端添加一个或多个元素,并返回添加新元 素后的数组长度。注意,该方法会改变原数组 var arr [];arr.push("颤三") // 1arr.push(itbaizhan) // 2arr.push(true, {}) // 4arr // [颤三 , itbaizhan, true, {}] pop 方法用…

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…

多头与空头:市场博弈的两面

在金融市场中,多头(Bull)和空头(Bear)代表两种截然相反的投资策略,它们的博弈构成了市场价格波动的核心动力。 1. 概念对比:看涨与看跌的本质区别 多头(Bull)&#xff0…

Excel 发现此工作表中有一处或多处公式引用错误。请检查公式中的单元格引用、区域名称、已定义名称以及到其他工作簿的链接是否均正确无误。弹窗

Excel 提示“发现此工作表中有一处或多处公式引用错误”通常表示公式中存在无效引用。以下是系统化的检查步骤,帮助你定位和修复问题: 1. 检查单元格引用: 无效单元格引用:检查公式中的单元格地址(如 A1、B10&…

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …

【指针】(适合考研、专升本)

指针 &与*是两个作用相反的运算符。 二级指针只能保存一级指针变量的地址和指向指针数组,其余情况不考虑。 int *p[2];int a12;int b15;*p&a;*(p1)&b;printf("%d\n%d\n",**p,**(p1));int **rp;printf("%d\n",**r); 普遍变量…

电路图识图基础知识-行程开关自动往返运行控制电路详解(二十三)

行程开关自动往返运行控制电路详解 在机床设备运行中,部分工作台需在特定距离内自动往复循环,行程开关自动往返运行控制电路可实现该功能,通过行程开关自动控制电动机正反转,保障工作台有序运动,以下展开详细解析。 …

SpringBoot学习day1-SpringBoot的简介与搭建

springboot回顾springspringbootspringboot搭建(新闻为例)springboot中的配置文件spring集成jdbc,mybatis,阿里巴巴数据源**SpringBoot 集成日志功能**(了解)常用日志组件日志级别 springboot统一异常处理 springboot 回顾spring spring是一个轻量级的…

【牛客小白月赛117】E题——种类数小结

1 初步想法 1.1 前置知识:vector数组的去重操作 unique()将不重复的元素放在数组前面,重复元素移到后面,qs获取不重复元素的后一个位置,之后用erase()函数去除重复元素。 qsunique(a.begin()1,a.begin()k1); a.erase(qs,a.end(…

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…

MatAnyone本地部署,视频分割处理,绿幕抠像(WIN/MAC)

大家好,今天要和大家分享的项目是MatAnyone,与上一篇分享的SAM2LONG类似,不过上次的分享没有提到如何在 MAC 上部署,后来有小伙伴私信说希望能出一个 MAC 版本的。那正好看到MatAnyone这个项目顺手就写下来。该项目基于SAM2同样可…

记录下blog的成长过程

2025-06-11 新人榜83 2025-06-09 新人榜87 北京市原力月榜 80

C语言学习20250611

指针 指针类型 int p;》普通的整形变量int *p;》p先与*结合,表示p为指针,该指针指向的内容的数据类型为整型int p[3];》p为一个由整型数据组成的数组int *p[3];》因为[]比*优先级高,p先与方括号结合,所以p为一个数组&#xff0c…

【AI智能体】Dify 从部署到使用操作详解

目录 一、前言 二、Dify 介绍 2.1 Dify 是什么 2.2 Dify 核心特性 2.2.1 多模型支持 2.2.2 可视化编排工作流 2.2.3 低代码/无代码开发 2.3 Dify 适用场景 2.4 Dify 与Coze的对比 2.4.1 定位与目标用户 2.4.2 核心功能对比 2.4.3 开发体验与成本 2.4.4 适用场景对比…

Java爬虫库的选择与实战代码

如果你的项目正在Java中考虑引入爬虫能力,无论是做数据分析、信息聚合,还是竞品监测,选对库确实能大幅提升开发效率和运行效果。结合当前主流库的特点与适用场景,我整理了一份更贴近实战的对比分析,并附上可直接运行的…

详细解释aruco::markdetection _detectInitialCandidates函数

_detectInitialCandidates 是 OpenCV 的 ArUco 模块中一个非常关键的函数,它负责检测图像中的候选 ArUco 标记。该函数的主要目标是: 使用多个尺度(scale)对输入图像进行自适应阈值处理;在每个尺度下提取轮廓并筛选出…

Android 开发中配置 USB 配件模式(Accessory Mode) 配件过滤器的配置

在 Android 开发中配置 USB 配件模式(Accessory Mode) 的配件过滤器(accessory_filter.xml),需要以下步骤: 1. 创建配件过滤器文件 在项目的 res/xml/ 目录下创建 accessory_filter.xml 文件(若…

FreeRTOS互斥量

目录 1.使用场合2.函数2.1 创建2.1.1 动态创建2.1.2 静态创建 2.2 删除2.3 释放(Give)2.4 获取(Take)2.5 ISR 版本注意事项 3.常规使用流程4.和二进制信号量的对比5.递归锁5.1 死锁5.2 概念5.2.1 问题5.2.2 解决方案:递…

ThinkPad 交换 Ctrl 键和 Fn 键

概述 不知道那个大聪明设计的将fn设置在最左边,xxx,我服了,你这个老六真恶心。 方法 一:BIOS/UEFI 设置(推荐) 重启 你的 ThinkPad。 在启动时按下 F1(或 Enter,再按 F1&#xff0…