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

文档序号:9417901阅读:来源:国知局
4] 航程代价越小,相应的消耗也越少,因此该Agent执行此任务的机率越大。航程代 价可表为
[0045]
[0046] (1)
[0047] 其中(Iij为Agent ;目标j的距离。maxd』为全部Agent分别到达目标j距离的最 大值。
[0048] (3) Agent完成任务所消耗的时间
[0049]
(2)
[0050] 其中,1^为Agent ;完成任务j所消耗的时间。max t。为全部Agent分别完成任 务j消耗时间的最大值。
[0051] (4) Agent完成任务所获得的收益
[0052] 引导任务分配向效能最大化的方向进行,AgentJ^击目标j的收益为
[0053] C4= V ) · A1 (3)
[0054] 其中:Vj为目标j的价值,A ;为Agent ;的能力。
[0055] (5)多Agent协同任务分配是一个多目标优化问题,通过线性加权求和法将问题 转化为单目标优化问题。多Agent任务分配指标为
[0056]
(4)
[0057] 其中:ωι~ω 4为各指标的权重,反映了其对任务分配的重要程度。
[0058] 步骤2、基于粒子群算法改进的合同网
[0059] 多Agent协同任务调度问题有许多的约束和附加要求,在确定问题的编码时需要 综合考虑,以确保编码对应解的可行性,同时尽量降低问题的维度和搜索的范围。利用粒子 群算法求多Agent任务分配问题,就要考虑上面的问题。粒子群算法的更新公式:
[0060]
[0061]
[0062] 其中=M5Pc2为学习因子,^和"为[0,1]范围内的均匀随机数。V ld是粒子的速 度,vide [-V _,ν_],ν_是常数,由用户设定用来限制粒子的速度。r JP r 2是介于[0, 1] 之间的随机数。w为惯性权重,pld为个体最优的位置,p gd群体最优位置X ld当前位置。
[0063] 嵌入粒子群算法后的合同网流程图如图3所示:
[0064] (1)任务通告。对于待分配的任务,管理Agent首先确定满足任务基本要求,通过 Agent能力向满足这些信息要求的Agent发布招标消息。
[0065] (2) Agent接收任务通告;
[0066] (3)投标。Agent接收到招标信息后,根据自己的现有能力和资源,规划决定投标 信息。
[0067] (4)接收标书并利用粒子群算法对标书作出评估,在此引入粒子群算法,具体有下 面几个步骤。
[0068] (I)种群随机初始化
[0069] 种群的规模,即粒子的个数NP = 20,目标任务的个数5,步骤一筛选后的Agent个 数为A = 50。初始化时Ai (i e [1~50])的位置是在[1~5]之间随机生成的。总共随 机生成20个长度为50的向量。
[0070] (Π )设置粒子编码方式
[0071] 粒子群算法的实质在于粒子根据自己和同伴的飞行经验不断调整位置和速度,从 而向最优位置飞行。粒子的新位置是粒子的速度、个体极值和全局极值相互作用的结果。
[0072] 在基于粒子群算法优化的合同网任务分配方法中变量是离散的,必须用一个合适 的表达方式。这里采用自然数编码方式来表达,每个粒子的维数为Agent的总数。
[0073] 仿真实验中 5 个任务(Tl,T2, T3, T4, T5),50 个 Agent 为 Al,A2, A3…A49, A50。 粒子的每一位都在集合{1,2,3,4,5}中选取。如某个粒子编码如下所示
[0074]
[0075] 其第1位编码是4表不Al执行任务T4,第2位编码是3表不A2执行任务T3,第 3位编码是1表不A3执行任务Tl,以此类推。
[0076] (III)搜索空间
[0077] 通过将约束条件合理映射到粒子的搜索空间,生成粒子的飞行规则,从而避免不 满足约束条件的非法解,可以收缩搜索空间,高算法的搜索效率。根据粒子的编码方式,粒 子位置初始化及选择新位置时,并不是在全定义域内进行选择。其位置取值范围不能超出 任务最大编号N。使用饱和策略限制粒子位置,其计算公式如下
[0078] (§)
[0079] 其中,表示当前时刻粒子第i位的编码,|4+1|表示对非法编码取绝对值,然后 向上取整;
进行对N求模运算。运用此方法,得到有效的位置更新。
[0080] (IV)惯性权重线性递减
[0081] 为了保证算法初期的全局搜索能力,在算法的初期使用较大的惯性权值,而为了 保证算法的局部搜索能力,则在算法的后期使用较小的惯性权值,惯性权值的计算公式如 下:
[0082] (Q)
[0083] 其中,ω_和ω min是惯性权重的最大和最小值,CurIter和MaxIter是算法的当 前迭代次数和算法设置的最大迭代次数。其中:ω_= 0. 9, ω _= 〇. 4, MaxIter = 1500
[0084] (5)管理Agent给予任务;
[0085] 粒子群算法结束后得出评估结果,以此选取最优分配方案,管理Agent根据分配 方案发送信息到中标的Agent。
[0086] (6)执行Agent收到中标,执行任务;
[0087] 待执行任务的Agent设有两种工作模式,即空闲模式和忙碌模式。当中标的Agent 接收到管理Agent发送的信息后,由空闲模式转为忙碌模式。进而完成所分配任务。
[0088] (7)完成任务后,Agent获得收益。
[0089] 当Agent完成任务后,管理Agent根据目标的价值和执行Agent自认能力给予收 益。
[0090] 除说明书所述的技术特征外,均为本专业技术人员的已知技术。
【主权项】
1. 一种基于粒子群算法改进合同网的方法,其特征在于,包括如下步骤: 步骤1、设置任务分配指标;包括执行Agent的能力,执行Agent的收益,执行Agent到 目标任务的距离,以及执行Agent完成任务所需要的时间; 步骤2、基于粒子群算法改进合同网 (1) 任务通告;对于待分配的任务,管理Agent首先确定满足任务基本要求,通过执行 Agent能力向满足任务要求的执行Agent发布招标消息; (2) 执行Agent接收任务通告; (3) 投标;执行Agent接收到招标信息后,根据自己的现有能力和资源,规划决定投标 信息; (4) 接收标书并利用粒子群算法对标书作出评估;招标Agent在有效的时间内收到所 有的投标信息后,选择投标书中满足约束要求且性能最优的执行Agent作为中标者; (5) 管理Agent给予任务; (6) 执行Agent收到中标,执行任务; (7) 完成任务后,Agent获得收益。2. 如权利要求1所述的基于粒子群算法改进合同网的方法,其特征在于, (1) 每个执行Agent执行任务的能力值C1= A ;,当管理Agent发布任务后,Agent会把 自己的能力值和完成任务所需要的能力进行比较,从而得出是否投标; (2) 执行Agent到目标任务的距离为:其中屯为Agent i与目标j的距离;maxd ,为全部Agent分别到达目标j距离的最大 值; (3) Agent完成任务所消耗的时间为:其中,b为Agent ;完成任务j所消耗的时间;maxt 为全部Agent分别完成任务j消 耗时间的最大值; (4) Agent完成任务所获得的收益 引导任务分配向效能最大化的方向进行,AgentJ^击目标j的收益为 C4= V j ? A1 (3) 其中:Vj为目标j的价值,A ;为Agent ;的能力; (5) 多Agent协同任务分配是一个多目标优化问题,通过线性加权求和法将问题转化 为单目标优化问题;多Agent任务分配指标为其中:%~co 4为各指标的权重,反映了其对任务分配的重要程度。
【专利摘要】本发明公开了一种基于粒子群算法改进合同网的方法,基于传统合同网的任务分配算法在动态环境下分配多个任务时存在效率较低的问题,引入了粒子群算法,解决了标书评估阶段计算量大的难题。当管理Agent分配多个任务出时,利用粒子群算法改进的合同网任务分配方法和现有的方法相比,任务分配的收益和效率都有所提高。
【IPC分类】G06N3/00
【公开号】CN105139069
【申请号】CN201510458528
【发明人】杨奕飞, 赵东见, 翟江涛, 唐雨
【申请人】江苏科技大学
【公开日】2015年12月9日
【申请日】2015年7月30日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1