改进合同网算法的分布式任务分配方法

白昊 ,  陈新庄 ,  李江荣 ,  徐麟

延安大学学报(自然科学版) ›› 2026, Vol. 45 ›› Issue (2) : 126 -132.

PDF (1755KB)
延安大学学报(自然科学版) ›› 2026, Vol. 45 ›› Issue (2) : 126 -132. DOI: 10.13876/J.cnki.ydnse.250127
数学与计算机科学

改进合同网算法的分布式任务分配方法

作者信息 +

Distributed task allocation method based on improved Contract Net Algorithm

Author information +
文章历史 +
PDF (1796K)

摘要

针对传统合同网协议(Contract Net Protocol, CNP)在动态环境下容易陷入局部最优及任务分配失败的问题,提出一种改进的CNP算法。该算法的核心在于引入动态招标智能体迁移策略与多轮迭代优化机制,通过动态迁移任务招标智能体,逐步扩大任务的搜索范围,确保更多智能体参与竞标;多轮迭代优化机制有效提升了解决方案的最优性与任务分配的成功率。仿真实验表明,与传统的CNP算法相比,改进的CNP算法在不同网络密度下,显著降低了任务执行的总成本,并提高了资源紧张情况下的任务分配成功率,为复杂动态环境下的分布式任务调度提供了有效的解决方案。

Abstract

To address the issue of traditional Contract Net Protocol (CNP) easily converging to local optima and failing in task allocation within dynamic environments, an improved CNP algorithm is proposed. The core of the algorithm lies in introducing a dynamic migration strategy for task announcement agents and a multi-round iterative optimization mechanism. By dynamically migrating task announcement agents, the search scope for tasks is progressively expanded, ensuring greater participation of agents in bidding. The multi-round iterative optimization mechanism effectively enhances the optimality of solutions and the success rate of task allocation. Simulation results demonstrate that, compared to the traditional CNP algorithm, the improved CNP algorithm significantly reduces the total cost of task execution under varying network densities and improves the task allocation success rate under resource-constrained conditions, providing an effective solution for distributed task scheduling in complex dynamic environments.

Graphical abstract

关键词

分布式任务分配 / 合同网算法 / 多智能体 / 招标智能体迁移 / 迭代优化

Key words

distributed task allocation / Contract Net Algorithm / multi-agent / bidding agent migration / iterative optimization

引用本文

引用格式 ▾
白昊,陈新庄,李江荣,徐麟. 改进合同网算法的分布式任务分配方法[J]. 延安大学学报(自然科学版), 2026, 45(2): 126-132 DOI:10.13876/J.cnki.ydnse.250127

登录浏览全文

4963

注册一个新账户 忘记密码

随着无人机集群、卫星网络与智能机器人等无人系统在军事侦察、灾害救援与工业自动化等领域的广泛应用,多智能体系统的协同任务分配问题已成为智能控制与分布式计算领域的研究热点。在这一背景下,实现高效、动态且可扩展的任务分配,成为提升系统整体效能的关键。分布式任务分配方法因其具有鲁棒性强、通信负担低等优势而备受关注,SMITH1提出的CNP作为经典的分布式协商机制,通过模拟市场中的“招标-投标-中标”机制,为实现多智能体间的任务协调提供了基础框架。然而,传统CNP在执行过程中通常仅基于局部邻域信息进行决策,易陷入局部最优解,且在资源紧张或任务动态变化时容易出现分配失败的问题,限制了其在复杂实际场景中的应用。
为克服传统CNP的局限性,近年来研究者们从多个维度展开了深入探索,研究大致可归纳为3个主要方向:通信效率优化、动态适应性提升和资源均衡分配。在通信效率优化方面,姜月秋等2提出多约束投标策略与能力评估机制有效降低了通信负载;赵飞扬等3通过合同交换与资格审核缩短了响应时间;靳鹏等4提出的多任务集中招标策略显著减少了协商次数;张传昊等5通过威胁排序与效益评估降低了通信负担。在动态环境适应性方面,王强等6基于BIS策略实现了多无人机动态任务分配;李复名等7采用效用函数与阈值机制提升了战场响应能力;ZHANG等8有效处理了关联任务与无人机故障;LIU等9通过引入有人机节点增强了协同编队的威胁响应能力;ZHANG等10通过混合合同网协议机制实现了对多种动态场景的适应。在资源优化与负载均衡方面,廖承城等11通过负载均衡机制提升了异构系统效能;常松等12优化了任务分配条件;靳鹏等13采用双层规划提升了负载均衡性;ZHANG等14通过负载因子定价机制实现了均衡分配;YAN15引入负载率与匹配度概念进一步优化了分配效率。此外,姚亚宁等16提出的迭代寻优策略、梁志伟等17提出的角色评价机制、MORAES等18提出的混合算法以及LUO等19提出的轨道规划耦合方法都为CNP的发展做出了重要贡献。尽管上述研究取得显著进展,但是多数方法仍依赖初始招标智能体的静态邻域,缺乏持续扩展搜索空间的内在机制,难以保证全局最优性与分配成功率的提升。
针对上述问题,本文在现有研究基础上,提出一种基于动态招标智能体迁移与多轮迭代优化机制的改进CNP算法。相较于WANG等20针对动态环境提出的两阶段分布式算法,本文方法通过引入招标智能体自适应迁移策略,动态调整任务发起智能体,逐步扩大任务搜索范围,吸引更多智能体参与竞标,从而增强算法的全局探索能力;进一步结合多轮迭代优化机制,实现对任务分配方案的持续改进,并在理论上证明了该机制能够单调降低系统总成本,确保算法收敛。仿真实验表明,所提方法在不同网络密度与资源约束条件下均能有效降低任务执行总成本,并在资源紧张场景下显著提高任务分配成功率,为复杂动态环境下的分布式任务调度提供了理论保证。

1 问题描述和数学模型

无人集群通常建模为多智能体系统,每个智能体表示一个无人设备。令A1,,An为智能体集合,智能体之间的通信网络建模为具有邻接矩阵A的无向图G,若Aij=1,则智能体i和智能体j可以相互通信;否则,两个智能体不能直接通信。本文研究具有多个任务的多智能体系统任务分配问题。假设M1,,Mm为任务集,任务Mj所需资源数量为hj;智能体Ai可以提供的资源数量为gi,智能体Ai完成任务Mj的成本为cij。若每个任务仅需分配给一个智能体,给出分配方案,使得完成m个任务的总成本最小。

设任务分配的0-1决策变量为xij0,1,当xij=1时,智能体i执行任务j。那么,此任务分配问题建模如下:

mini=1nj=1mxijcij,s.t.i=1nxij=1,j=1,,m,                      j=1mxijgi,i=1,,n,                        xij0,1,i=1,,n,j=1,,m,

其中,目标函数为最小化任务执行的总成本,第一个约束条件强制每个任务的资源充分性,第二个约束条件确保每个智能体使用的资源数量不超过其容量,最后一个约束条件强制要求为整数决策变量。

在实际应用中,目标函数的设计表现出了显著的灵活性。例如在无人机集群战场场景中,典型的考虑因素包括弹药消耗和打击时间优化,其目标函数可以表示为

mini=1nj=1mλ1xijpi+λ2δ(xij)tij,

其中,pi为第i架智能体的单价,tij为第i架智能体到第j个任务的打击时间,δ为Dirichlet函数,λ1λ2为可调权值。由于智能体需要不断执行新的任务,还需要考虑资源利用率和负载均衡指标。本文的重点是改进CNP算法框架下的任务分配机制,所提出的改进的CNP算法旨在普遍适用。

2 基于招标智能体迁移的改进CNP算法

任务分配算法在多智能体-多任务协同任务分配中起着至关重要的作用。任务分配算法按照特定的规则协调智能体与任务之间的匹配,实现任务的最优分配。由于每架智能体具有不同的资源和执行效率,这些因素将直接影响系统的整体性能。

2.1 传统的CNP算法

传统CNP算法是一种开创性的基于市场的任务定位机制,它使多智能体系统中的分散协调成为可能。通过模仿“招标-投标-中标”机制,赋予每个智能体角色,类似于人类市场中实体的角色和行为。在CNP算法下的任务分配过程中,有招标智能体和投标智能体两个角色。招标智能体发起招标过程,其参与竞争性招标过程的邻居称为投标智能体。招标智能体为任务分配发起的招标过程,涉及参与竞争性招标过程的相邻投标智能体。在算法的协调机制下,其运行框架由4个顺序阶段组成,如图1所示。

图1所示的传统的CNP算法过程图,招标智能体从创建任务开始,经过发布任务,将信息传递给投标智能体。投标方经过决策后创建投标,双方随后进入合同授予、确认投标、合同确认环节及签订合同,最终共同执行任务。

合同网的智能体任务分配流程如图2所示。

图2所示的任务分配算法流程图,将每个任务分配具体分为如下4个阶段。

1) 任务广播与初步筛选阶段

招标智能体作为流程发起方,向所有相邻智能体广播任务需求。广播信息包含任务的资源要求、时间约束等,确保投标智能体了解任务边界。投标智能体接收到信息后,首先开展能力匹配校验,若自身资源、执行能力无法满足任务要求,则自动放弃该任务;仅保留符合基础条件的任务进入下一环节。

2) 投标生成与提交阶段

对于通过能力匹配的任务,投标智能体将进行成本效益评估,精准计算自身执行该任务的各项成本。基于评估结果,生成结构化标书,标书中需明确包含执行成本、资源分配方案及执行确认承诺等关键信息,随后将标书正式递交给招标智能体,完成投标流程。

3) 投标评估与合同授予阶段

招标智能体收集所有标书后,采用集中式算法对投标进行综合评估。评估核心目标是筛选出成本最低且综合条件最优的投标方案,确定中标智能体。之后,招标智能体向中标智能体发出正式的合同授予通知,明确任务执行要求。

4) 任务执行与结果反馈阶段

合同生效后,中标智能体需向招标智能体发送执行确认信息,随后启动任务执行。若执行过程中出现资源短缺、无法在截止时间前完成等异常情况,则合同将被即时撤销,该任务视为分配失败;招标智能体需重新启动整个任务分配程序,确保任务最终落地。

2.2 招标智能体迁移与CNP算法的迭代优化

为了克服传统CNP算法每次任务分配都被限制在单智能体邻域内的局限性,导致局部最优甚至任务分配失败,提出了动态招标智能体迁移和自适应迭代优化机制的双策略框架。

2.2.1 招标智能体自适应迁移策略

自适应招标智能体迁移策略的核心机制在于动态调整任务分配的发起主体,通过重新指定招标智能体逐步扩大任务搜索范围,促使更多智能体参与竞标,从而提升全局寻优能力。在传统CNP中,每个任务固定由一个招标智能体负责,基于其局部邻域信息利用集中式算法求得局部最优解;然而该解所对应的中标智能体往往并非全局最优执行智能体。为解决此局限,所提策略以当前任务分配方案为起点,将招标职责迁移至当前中标智能体,进而采用传统CNP算法重新计算任务分配方案。每次迁移后,通过比对相邻两次迭代的任务分配结果以判断收敛性:若结果未发生变化,则视为当前迭代收敛;若结果发生更新,则基于新确定的招标智能体继续迭代优化,直至满足终止条件。

该迁移过程构成一个闭环反馈机制,不仅有效拓展了搜索空间,还通过成本单调性定理保证了算法在迭代过程中总成本逐步降低,显著增强了传统CNP算法在动态环境中的适应性与分配效果,招标智能体自适应迁移策略如图3所示。

任务初始阶段,一个任务由A1作为其招标智能体,在A1的邻域内,通过CNP算法找到A2作为其局部最优解,因此任务的招标智能体迁移到了A2,再次使用CNP算法,在A2的邻域内找到更优的执行任务的智能体A3,所以将A3作为该任务的新招标智能体。招标智能体迁移策略会持续进行,直到无法获得更好的任务执行智能体为止,通过使用自适应招标智能体迁移,通过CNP算法,每个任务的投标智能体根据当前最优执行任务的智能体进行任务重分配,扩展了任务的搜索范围,自适应招标智能体迁移及搜索范围拓展示意图如图4所示。

为了严格验证招标智能体迁移策略的有效性,基于成本单调性的理论保证,下面将证明每个迁移操作均能严格降低任务分配总成本,直至算法收敛。

定理1 在招标智能体迁移策略下,任务分配的总成本随着迭代次数k单调不增,且算法在有限步内收敛。

证明 设第k次迭代时的任务分配方案为Χ(k)=xij(k)0,1n×m,其中,xij(k)=1表示智能体Ai执行任务Mj,系统总成本定义为

C(k)=i=1nj=1mxij(k)cij,

其中,cij为智能体Ai执行任务Mj的成本。

在第k次迭代中,对于任意任务Mj,设其当前执行智能体为Ai。根据招标智能体迁移策略,Ai作为任务Mj的新招标智能体,在其通信领域内重新执行传统合同网协议,寻求成本更低的执行智能体。

若在Ai的邻域中存在智能体Ap,满足cpj<cij,则任务Mj的执行智能体更新为Ap,该任务的执行成本降低量为Δcj=cij-cpj>0。若不存在成本更低的智能体,则任务Mj的执行智能体保持不变,该任务成本不变。

由于每个任务独立执行上述更新过程,且不同任务之间通过资源容量约束相互耦合,但在迁移策略中仅当资源允许时才进行重新分配,因此不会出现因资源冲突导致的成本上升。综合所有任务,有

C(k+1)C(k),

即总成本序列C(k)为单调不增序列。同时,任务分配总成本存在下界,所有任务均由成本最低的可行智能体执行,且满足资源约束,因此该序列必然收敛。

进一步地,任务分配方案为有限离散状态空间,n个智能体与m个任务的所有可行分配构成有限集合,单调不增的成本序列在有限步内必然达到稳定状态,即存在K,使得对任意kKC(k+1)=C(k)。此时算法满足终止条件,分配方案不变或达到预设最大迭代次数,算法收敛。招标智能体迁移策略保证了任务分配总成本随迭代单调不增,并在有限步内收敛到局部最优解。

2.2.2 改进的CNP任务分配算法

基于自适应招标智能体迁移策略,本文提出了一种改进的CNP任务分配算法,算法流程如图5所示。该算法首先通过传统的CNP算法获得初始任务分配方案,然后通过迭代执行招标智能体迁移策略,并利用传统CNP算法求解任务分配问题。算法在以下两种条件下终止:

1)迭代次数达到预设值kmax

2)连续两次迭代得出的任务分配方案相同。

为了在每次迭代中获得更好的解决方案,招标智能体应在其领域找到一个成本更低的智能体。若不存在这样的智能体,则投标智能体是该任务的最佳执行智能体。为避免任务分配失败,招标智能体应为其任务预留足够的资源。本文介绍的改进的CNP算法是在传统的CNP算法的基础上提出的,对于其他基于CNP的任务分配算法,本文提出的自适应招标智能体迁移策略和迭代优化也同样适用。

3 仿真实验

为了验证算法的有效性,给出数据实验来展示所提出算法的过程改进。与传统的CNP算法相比,改进算法能显著提高解的最优性,提高任务分配率。

考虑由7个智能体A1,,A7组成的多智能体系统,其智能体的资源容量设定为(50,55,60,50,55,60,50);同时有10个任务,对应的资源需求为(10,15,12,18,10,14,16,12,10,15),各智能体执行任务的代价矩阵如表1所示。

初始化,让智能体A1是任务M1M2的投标智能体,A2是任务M3M4的投标智能体,A3是任务M5M6的投标智能体,A4是任务M7M8的投标智能体,A5是任务M9M10的投标智能体。假设智能体之间的通信拓扑是一个单步环形网络拓扑,另一种类型的智能体之间的通信拓扑是一个二步环形网络拓扑,如图6所示。

3.1 不同网络密度下的算法比较

图6A所示,利用传统的CNP算法,可以计算出任务分配的结果。如表2所示,第二行给出每个任务的执行任务的智能体,第三行给出其对应的代价,总代价为293。

在传统CNP算法任务分配结果的基础上,招标智能体迁移机制下,将每个任务的执行智能体指定为下一次迭代的新招标智能体。从第二行开始,智能体A1为任务M1的招标智能体,A2为任务M2M3的招标智能体,A3为任务M4的招标智能体,A4为任务M5M6的招标智能体,A5为任务M7M8的招标智能体,A6为任务M9M10的招标智能体。

在第四次迭代中,可以在传统CNP算法的基础上,计算出新的任务分配结果。如表2最后两行所示,任务M6M7M8M9M10的执行任务的智能体被改变,相应的成本降低。总成本从293降低到225。在下一次迭代中,招标智能体迁移机制下,每个任务的招标智能体由当前任务分配结果决定,如表2第四行所示。通过使用传统的CNP算法,可以验证结果没有变化,且迭代次数达到预设值kmax后终止算法。

对于图6B,对智能体的资源数量与任务所需的资源数量之间的定量关系进行如下对比实验。

3.2 不同资源总量约束下的算法性能对比分析

3.2.1 总资源充足场景下的算法性能对比

假设7个智能体A1,,A7的资源容量指定为(14,20,15,21,18,20,22),10个任务M1,,M10}的资源需求为(7,9,6,11,7,9,6,5,7,5),智能体的资源容量是任务所需的资源数量的1.8倍。

在第三次迭代中,可以在传统CNP算法的基础上计算新的任务分配结果。如表3最后两行所示,任务M6M7M10的执行任务的智能体发生了变化,相应的成本也降低了。总成本从261降低到225。

3.2.2 总资源紧张场景下的算法性能对比

假设7个智能体A1,,A7的资源容量指定为(14,17,14,18,16,16,14),10个任务M1,,M10}的资源需求为(7,9,6,11,7,9,6,5,5,25),智能体的资源容量是任务所需的资源数量的1.2倍。

在第四次迭代中,可以在传统CNP算法的基础上计算新的任务分配结果。如表4最后两行所示,任务M6M7M8M10的执行任务的智能体发生了变化,相应的成本也降低了。总成本从266降低到225。

考虑到具体的任务分配场景,由7个智能体和10个任务组成。在这个场景中,智能体的总资源是任务总需求的1.2倍,导致资源状态紧张,增加了任务分配的复杂性。每个任务都有固定的资源需求,每个智能体都有固定的资源容量,同时,智能体执行不同任务的成本也各不相同。改进的CNP算法通过招标智能体迁移和迭代优化机制,成功克服了传统CNP算法的局部最优问题,扩大了搜索区域,逐步改善了任务分配结果,降低了总成本。

4 结论

本文通过结合迭代优化与动态迁移机制,改进了分布式任务分配方法,成功克服传统CNP算法的局部最优局限。该框架通过逐步重新指定任务投标智能体以扩大搜索范围,在提升全局最优性的同时,有效解决了任务分配失败问题。与传统CNP算法相比,随着迭代推进,任务分配结果逐步优化,进而验证了所提方法的有效性。

参考文献

[1]

SMITH R G. The contract net protocol:High-level communication and control in a distributed problem solver[J]. IEEE Transactions on Computers198029(12):1104-1113.

[2]

姜月秋,宗睿,关启学,. 基于多约束投标策略的改进合同网算法[J]. 兵器装备工程学报202243(1):206-211.

[3]

赵飞扬,陈洪超,康林,. 基于改进合同网的分布式协同目标分配[J]. 兵工自动化202342(3):26-30.

[4]

靳鹏,李健. 基于改进合同网协议的多星分布式任务规划[J]. 无线电工程202454(10):2434-2445.

[5]

张传昊,李豪杰,于航,. 基于合同网的巡飞弹任务分配算法及模型[J]. 探测与控制学报202345(1):84-90.

[6]

王强,贾强. 基于改进合同网的多无人机动态任务分配[J]. 火炮发射与控制学报202546(5):75-83.

[7]

李复名,孔磊,王丽军,. 基于改进合同网算法的电子对抗资源动态调度[J]. 电子信息对抗技术202035(4):44-47+77.

[8]

ZHANG KLIU Z KSHI H Tet al. UAVs cooperative air-to-ground associated task assignment algorithm based on multi-agent and contract net protocol[C]//In 2020 IEEE 16th International Conference on Control & Automation. New York:IEEE,2020:991-996.

[9]

LIU Y FZOU JSUN H J. Task allocation method of manned/unmanned aerial vehicle formation based on extended CNP[C]//In 2016 IEEE Chinese Guidance,Navigation and Control Conference. New York:IEEE,2016:1975-1979.

[10]

ZHANG Z SLIU HWU G H. A dynamic task scheduling method for multiple UAVs based on contract net protocol[J]. Sensors202222(12):4486.

[11]

廖承城,陶伟,刘韬. 基于改进合同网的异构无人机协同对地任务分配[J]. 现代计算机2021(15):100-107.

[12]

常松,贾子彦. 基于改进合同网算法的多无人机任务分配[J]. 物联网技术202010(5):98-100.

[13]

靳鹏,李康. 基于改进合同网协议的分布式卫星资源调度[J]. 系统工程与电子技术202244(10):3164-3173.

[14]

ZHANG K WZHAO X LLI Z Zet al. Real-time reconnaissance task assignment of multi-UAV based on improved contract network[C]//In 2020 International Conference on Artificial Intelligence and Computer Engineering. New York:IEEE,2020:472-479.

[15]

YAN S K. Research on heterogeneous UAVs task assignment based on improved contract net algorithm[C]//In 2021 6th International Conference on Robotics and Automation Engineering. New York:IEEE,2021:60-64.

[16]

姚亚宁,杨风暴,吉琳娜,. 基于迭代寻优策略合同网协议的任务分配算法[J]. 指挥控制与仿真202042(4):51-56.

[17]

梁志伟,吴海健. RoboCup标准平台组中基于改进合同网协议的任务分配算法[J]. 计算机工程与科学202244(1) :176-183.

[18]

MORAES R SFREITAS E P. Distributed control for groups of unmanned aerial vehicles performing surveillance missions and providing relay communication network services[J]. Journal of Intelligent & Robotic Systems201892(3):645-656.

[19]

LUO Y LJIANG X QZHONG S Cet al. Multisatellite task allocation and orbit planning for asteroid terminal defence[J]. Aerospace20229(7):364.

[20]

WANG GLV XYAN X H. A two-stage distributed task assignment algorithm based on contract net protocol for multi-UAV cooperative reconnaissance task reassignment in dynamic environments[J]. Sensors202323(18):7980.

基金资助

国家自然科学基金项目(12561065)

国家自然科学基金项目(62262067)

国家自然科学基金项目(12261090)

陕西省自然科学基础研究计划项目(2024JC-YBMS-548)

陕西省自然科学基础研究计划项目(2024JC-YBMS-569)

陕西省留学人员科技活动择优资助项目(2022-22)

延安大学研究生科研与实践创新计划项目(YKY2025034)

AI Summary AI Mindmap
PDF (1755KB)

83

访问

0

被引

详细

导航
相关文章

AI思维导图

/