一种基于粒子群算法改进合同网的方法

文档序号:9417901阅读:455来源:国知局
一种基于粒子群算法改进合同网的方法
【技术领域】
[0001] 本发明涉及合同网任务分配,具体是提出了一种基于粒子群算法改进原有合同网 的任务分配方法,属于多智能体任务分配技术领域。
【背景技术】
[0002] 多智能体系统(Multi Agent System,MAS)是多个智能体组成的集合,它的目标是 将大而复杂的系统建设成小的、彼此互相通信和协调的,易于管理的系统。主要研究智能体 之间的交互通信、协调合作、冲突消解等方面,强调多个智能体之间的紧密群体合作,而非 个体能力的自治和发挥。
[0003] 受经济学研究启发,人们基于对合同网机制的研究,提出了一种称为"合同网算 法"的分布式控制机制。运用合同网算法求解任务分配问题的本质是MAS中的Agent为求 得整体利益的最大值,在某种协议的基础上与其他Agent通过对话、协商来动态分配任务。 目前,合同网算法被广泛地应用于MS及其应用领域的任务分配问题中,已成为MS协调技 术中相对成熟的协商机制。
[0004] 传统的合同网模型如附图1所示可以成功解决一个任务在多个Agent之间的分配 问题,特别适合于单任务、单中标者、单回合的招投标场景。MAS利用合同网方法进行协商, 虽可以实现任务的分配,但随着任务的复杂度的提升,系统环境的动态变化,传统的合同网 模型越来越显示其突出的问题,影响了协商过程中任务完成的效率,这些不足主要表现在 以下几方面:
[0005] 标书发布阶段信息通信量大,资源消耗大。传统的合同网模型中,管理Agent采 用广播方式将招标信息发送给系统中的所有Agent,获取任务信息的所有Agent都可成为 投标者自由参与投标,而不需要支付额外的投标费用或者做出某种承诺。但是,有的Agent 根本没有能力去执行。该类任务也接到标书,这种不对招标范围进行限制的运作方式,不仅 浪费了很多标书,造成系统中Agent通信的频繁,而且很可能出现参与投标的Agent数量过 多。造成系统的通信量过大甚至阻塞,加重管理者的决策负担。
[0006] 标书接收和评估阶段计算量大,效率低。在复杂的环境下,衡量一个Agent是否适 合执行某项任务的因素是多个的。随着任务和投标Agent数量的增加,管理Agent收到的 标书数据量也随之增加,因而导致标书评估阶段消耗大量时间。

【发明内容】

[0007] 发明目的:针对现有技术中存在的问题与不足,如果管理Agent掌握了系统中各 Agent相关的能力信息,就可以根据Agent能力将投标Agent进行划分。这样就可以在招标 之前估算选出能够完成任务的候选Agent,然后将招标通告只发送给这些候选者。对投标 者Agent筛选可以有效的减少管理者Agent后期对于收到的投标申请的处理,降低减少系 统中由于招投标信息而产生的大量通信负载,节省系统的资源。
[0008] 在同时分配多个任务时,多智能体的任务分配就成为多维变量寻优问题,对其求 解是一项非常耗费计算的工作。因此必须寻找一种算法,提高标书评估的效率。
[0009] 为了达到上述目的,本发明提供一种基于粒子群算法改进合同网的方法。
[0010] 技术方案:一种基于粒子群算法改进合同网的方法,包括如下步骤:
[0011] 步骤1、设置任务分配指标
[0012] (I)Agent的能力:每个Agent都有一定的能力。能力就判定了能否完成某项任务, 在加入Agent能力值后,管理Agent可以有选择的发布招标信息,以此减小通讯压力。(2) Agent的收益:当Agent完成某一项任务时,根据Agent的能力和Agent的消耗计算出收益。 (3) Agent到目标任务的距离:Agent到达目标任务的距离越短,执行任务花费的消耗的就 越少。(4)Agent完成任务所需要的时间:在模拟战场的对抗环境下,时间非常宝贵,因此算 法要在最短的时间内完成任务。
[0013] 在分配任务过程中,多个任务分配问题是个多目标优化问题,通过线性加权把多 目标优化问题转化为单目标优化问题。
[0014] 步骤2、基于粒子群算法改进合同网
[0015] (1)任务通告。对于待分配的任务,管理Agent首先确定满足任务基本要求,通过 Agent能力向满足这些信息要求的Agent发布招标消息。
[0016] (2) Agent接收任务通告;
[0017] (3)投标。Agent接收到招标信息后,根据自己的现有能力和资源,规划决定投标 信息。
[0018] (4)接收标书并利用粒子群算法对标书作出评估。招标Agent在有效的时间内收 到所有的投标信息后,利用粒子群算法寻优迅速优点,快速找出适合的Agent,进行任务分 配。具体包括以下几个步骤:
[0019] (I)种群随机初始化
[0020] (Π )设置粒子编码方式
[0021] 编码长度为Agent个体总数,编码每一位的值为占用的资源编号。如图2所示,假 设有2个任务(Tl,T2),5个Agent (Al,A2, A3, A4, A5),个体编码长度则为5,每一位都在集 合{1,2}中取值。如个体编码[1,2, 2,1,2],其第1位编码是1表不Al执行任务T1,第2 位编码是2表不A2执行任务T2,第3位编码是2表不A3执行任务T2,第4位编码是1表 不A4执行任务T1,第5位编码是2表不A5执行任务T2。
[0022] (III)设置搜索空间
[0023] 通过将约束条件合理映射到粒子的搜索空间,生成粒子的飞行规则,从而避免不 满足约束条件的非法解,可以收缩搜索空间,高算法的搜索效率。
[0024] (IV)惯性权重线性递减
[0025] 在粒子群算法的初期使用较大的惯性权值,保证粒子群算法初期的全局搜索能 力。在粒子群算法的后期使用较小的惯性权值,依次保证局部搜索能力。
[0026] (5)管理Agent给予任务;
[0027] 粒子群算法结束后得出评估结果,以此选取最优分配方案,管理Agent根据分配 方案发送信息到中标的Agent。
[0028] (6)执行Agent收到中标,执行任务;
[0029] 待执行任务的Agent设有两种工作模式,即空闲模式和忙碌模式。当中标的Agent 接收到管理Agent发送的信息后,由空闲模式转为忙碌模式。进而完成所分配任务。
[0030] (7)完成任务后,Agent获得收益。
[0031] 当Agent完成任务后,管理Agent根据目标的价值和执行Agent自认能力给予收 益。
[0032] 有益效果:与现有技术相比,本发明具有如下优点:
[0033] 经典合同网任务分配的基础嵌入粒子群算法,利用其概念清晰、搜索速度快、易于 实现的优点求解任务分配是一项非常好的选择。改进算法能够高效的解决多个任务的分配 问题,通过实验验证,该方法提高了分配的效率。解决了在合同网中,多个指标下,寻优困难 的问题。
【附图说明】
[0034] 图1为经典合同网任务分配流程图;
[0035] 图2为粒子群算法编码方式;
[0036] 图3为基于粒子群算法改进分配流程图。
【具体实施方式】
[0037] 下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明 而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价 形式的修改均落于本申请所附权利要求所限定的范围。
[0038] 假设在800*600的空间上,有50个Agent,出现了 5个目标,要让50个Agent分组 到达目标,执行任务。实验中单个Agent的能力是有限的,所以要多个Agent协作完成某个 任务。实验中通过改进后的合同网任务分配方法,不仅提高了分配效率,而且整体的收益有 所提尚。
[0039] 步骤1、设置分配指标
[0040] 和传统模型所不同的是,面向军事作战背景的任务分配中,作为投标者的Agent 与招标者是合作型的伙伴,任务的分配以整体利益最大为依据。本文加入多种指标,对投标 进行评估,利用粒子群算法快速寻优的特点,加快了评估标书的效率。在战场环境下,看一 个Agent能否执行任务,就涉及到Agent的各种能力,以及Agent所处的坏境、Agent完成 任务后所得收益等。
[0041 ] (I)Agent执行任务的能力
[0042] 每个Agent都有一定能力值C1= A ;,能力值就判定了能否完成某项任务。当管理 Agent发布任务后,Agent会把自己的能力值和完成任务所需要的能力进行比较,从而得出 是否投标。
[0043] (2) Agent到目标任务的距离
[004
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1