一种基于收益最大化的多智能体任务分配方法与流程

文档序号:21185734发布日期:2020-06-20 18:06阅读:221来源:国知局
一种基于收益最大化的多智能体任务分配方法与流程
本发明属于多任务分配方法,特别是一种多智能体协同任务分配方法。
背景技术
:随着无人机等机器人智能体应用的增长,异构的网络化智能体编队被广泛应用于不同类型的自治使命任务。编队中不同智能体间协调与合作对成功完成使命至关重要,异构网络化编队自治的协同任务分配和规划方法是实现这一目标的基础。然而随着系统数目,组成部分以及使命任务的增加,大规模编队的任务规划变得异常复杂。在无人机突防过程中,对于中长航时无人机,在到达目标点过程中要飞越各种不同地貌,遭受敌方防空体系多重威胁,因此通过对无人机突防概率的研究和计算,可以定量地指出影响无人机生存的各种因素。从而进一步提高无人机战场生存能力,提高无人机使用效能。无人机航路规划是依据具体任务明确飞行约束条件,寻找从初始点到目标点并且满足某种性能指标最优的运动轨迹。航路规划的优劣直接决定无人机作战效能发挥,甚至影响其战场生存。国内外实时航路规划研究已成为一个热点问题。pellazarmiles_lo和ioannisk.nikolos等分别采用了基于遗传算法进化算法来求解航迹规划问题,均存在比较费时的问题。irishongyang和jamesdoebble分别研究了规避地形障碍物的实时航迹规划问题,但该方法没有考虑其他外在威胁的影响;而蚁群算法中蚁群在第一次搜索航路时仅考虑固定威胁,无其他任何先验信息,航路具有很大的随机性,导致能够走到目标点的蚂蚁数量很少,完成全部搜索形成稳定的最优航路所需时间较长。技术实现要素:本发明的目的在于提供一种基于收益最大化的多智能体协同任务分配方法。实现本发明目的的技术解决方案为:一种基于收益最大化的多智能体协同任务分配方法,步骤如下:步骤1、多智能体任务分配问题描述,即考虑战场环境、智能体编队、任务集合等一系列元素,称包含这些元素的集合为任务空间。在考虑约束条件下建立集合模型,然后针对突防任务和探测任务分别进行了效能分析。步骤2、具体分析任务分配的约束条件,即分别分析时间约束和类型约束,多智能体协同任务分配问题是一个多约束条件的组合优化问题,约束条件众多,各约束条件耦合度高,求解复杂。本方案默认所有智能体均具执行以上两种任务的能力。步骤3、建立任务分配函数模型,即根据上述条件建立智能体协同任务分配目标函数模型。通过以上分析,本方案所研究的智能体协同任务分配的主要目标是根据目标函数在基本约束条件下进行优化求解,从而得到协同任务分配的最优解集。步骤4、基于收益最大化的任务选派方案研究,即确定选择哪些任务执行使得整个分配方案收益最大。代价采用每一可能出现的状态的概率与智能体完成某任务收益(模型中称作需求量)、距离的乘积的加权和的期望形式。本方案采用遗传算法解决这问题因为其具有传统优化方法无法比拟的优点。本发明与现有技术相比,其显著优点为:1)无人机突防需要实时性,本发明的规划速度快,经过仿真验证时间指标300毫秒以内,优于其他算法;2)在无人机突防中搜索空间的限制性也对结果有较大约束,本发明采用的遗传算法不受搜索空间的限制性假设的约束,不必要求诸如函数连续性、导数存在和函数是单峰等假设,以及固有的并行性,因此具有传统优化方法无法比拟的优点;3)根据多智能体协同任务分配遗传算法的特性,本发明采用整数编码方案,运算效率较高;4)以往的交叉方法容易使交叉后的子染色体不符合染色体约束进而导致个体死亡,使种群数目减少,降低算法效率;而本发明采用一种新的染色体交叉方法则避免了上述情况产生;5)为了避免搜索过程中个体根据基因表达出的性征趋同,也即个体陷入局部最优,本发明引入变异算子,通过改变染色体中个别基因,既保持了个体的进化方向保持在原轨道上,也增强了算法的局部搜索能力,避免算法陷入局部最优而失效。下面结合附图对本发明作进一步详细描述。附图说明图1是本发明基于收益最大化的多智能体协同任务分配技术流程图。图2是遗传算法流程图。具体实施方式本发明的一种多智能体协同任务分配方法,步骤如下:步骤1、在考虑智能体航程约束和能力约束的条件下建立任务空间集合模型,然后分别针对突防任务和探测任务进行效能分析;具体步骤为:步骤1-1、建立任务空间集合模型,包括智能体集合、任务集合、任务约束类型集合;所述智能体集合为u={u1,u2,...,un},u为有限集合;智能体要分配的任务集合为t={t1,t2,...,tn};智能体i自身的约束条件为:ri={di,hi},di表示智能体i的航程约束,hi表示智能体的能力约束;任务约束类型集合为:fi={ai,pi,si},其中,ai表示第i个任务是打击任务,pi表示第i个任务是突防任务,si表示第i个任务是侦察任务;步骤1-2、对突防任务进行分析,假设某次突防中共有t个任务载荷与d个诱饵,防御系统对此t+d个目标进行识别,并对其中认为危险的n个目标发射毁伤设备拦截,假设敌方防御系统对任务载荷的识别概率为p,任务载荷数目为t,则最终突破敌方防御的任务载荷数目的期望为:e(t)=t*(1-p),将e(t)视为突防效能评价的指标值;步骤1-3、对探测任务进行分析,其基准为:(1)无人机对区域进行探测的过程中,无人机的飞行轨迹应没有重复;(2)建立收益函数模型为:其中,nu是无人机数量,na是目标区域数量;x(k,i)表示第k个无人机是否对第i个目标进行探测,为1表示有,为0表示无;si表示第i个目标区域的面积,prtg表示类型为tg的传感器对探测任务为gg的目标区域的探测收益系数;{t1,t2,…tn}表示传感器类型集合,{g1,g2,…gm}表示探测任务类型集合。步骤2、分析任务分配的约束条件,即分别分析时间约束条件和类型约束条件;具体为:步骤2-1、时间约束:对于任意给定的任务ti,智能体ui如果分配到该任务,则智能体必须在给定的时间窗口[etime(ti),ltime(ti)]到达任务区才可以完成任务,其中etime(ti)是智能体到达给定任务区的最早时间,ltime(ti)是智能体到达给定任务区的最晚时间;步骤2-2、类型约束,包括智能体自身的类型约束和任务自身的类型;所述智能体自身的类型约束包括两种构型:具备执行侦察任务能力的智能体,具备执行突防任务能力的智能体可以抛洒诱饵或者配备了干扰机;任务自身的类型,智能体类型只有与任务类型相匹配才能执行该任务。步骤3、建立任务分配函数模型,即根据上述条件建立智能体协同任务分配目标函数模型;所述模型为:max[f1(x)-f2(x)]。式中,f1(x)为智能体完成任务得到的收益;f2(x)为智能体完成任务付出的代价。步骤4、利用遗传算法确定基于收益最大化的任务分配方法。具体步骤为:步骤4-1、对多智能体协同任务分配进行整数编码,将整形决策矢量映射成染色体,决策变量映射成基因位,染色体用一维非负数组表示,默认第i个基因位对应第i枚智能体,基因值为智能体被分配的任务序号;编码时若不满足上述约束则编码无效,进行重新编码,直到编码满足所有的约束规则;步骤4-2、采用选择算子计算出群体中每个个体的适应度f(xi)(i=1,2,...,m),m为种群大小;对所有个体进行排序,选择适应度最高的个体进行复制,取代群体中适应度最低的个体;步骤4-3、采用交叉算子,选取一个父染色体,随机选取小于m的两个不同随机数,并将两个随机数代表的基因位之间的基因倒序排列,从而完成交叉工作。步骤4-4、采用变异算子,采用随机选取两个相邻基因位互换基因值的方法进行变异操作;步骤4-5、建立适应度函数,函数为fitness=w1×gd+w2×gp,其中gd代表探测收益,也即分配去执行探测任务的智能体的探测能力系数之和;gp代表突防收益,也即成功突防子任务载荷数目的期望,w1,w2为系数。本发明引入变异算子,通过改变染色体中个别基因,既保持了个体的进化方向保持在原轨道上,也增强了算法的局部搜索能力,避免算法陷入局部最优而失效。下面进行更详细的描述。结合图1,本发明基于收益最大化的多智能体协同任务分配方法,步骤如下:步骤1:多智能体任务分配问题描述,即考虑战场环境、智能体编队、任务集合等一系列元素,称包含这些元素的集合为任务空间。在考虑约束条件下建立集合模型,然后针对突防任务和探测任务分别进行了效能分析。(1)考虑k的所有取值,可得认定有n个危险目标的情况下,成功突防的任务载荷数和诱饵数的数学期望为:考虑n所有取值,可得认定有n个危险目标的情况下,成功突防的任务载荷数和诱饵数的数学期望为:根据以上理论分析,进行简化处理。假设敌方防御系统在考虑各种干扰之后,对任务载荷的识别概率为p,任务载荷数目为t,则最终突破敌方防御的任务载荷数目的期望为:e(t)=t*(1-p)。将e(t)视为突防效能评价的指标值;(2)衡量智能体探测能力的主要参数为智能体搜索宽度b,被选定执行探测任务的智能体具有最大搜索宽度。步骤2:对于任意给定的任务ti,智能体ui如果分配到该任务,则智能体必须在给定的时间窗口[etime(ti),ltime(ti)]到达任务区才可以完成任务,其中etime(ti)是智能体到达给定任务区的最早时间,ltime(ti)是智能体到达给定任务区的最晚时间。类型约束有两种,一种是智能体自身的类型约束,另一种是任务自身的类型。步骤3:建立任务分配函数模型,即根据上述条件建立智能体协同任务分配目标函数模型max[f1(x)-f2(x)]。通过以上分析,本方案所研究的智能体协同任务分配的主要目标是根据目标函数在基本约束条件(1)(2)(3)(4)(5)下进行优化求解,从而得到协同任务分配的最优解集。其中,基本约束条件为其中ts是侦察型任务集合,tp是突防型任务集合,tts是串行时间任务集合,ttc是并行时间任务集合,决策矩阵x={xij|i=1,2,...,n;j=1,2,...,k},来表示任务分配的结果。xij取1表示任务j分配给智能体i,取0表示不分配。步骤4:(1)编码。本发明采用整数编码方案,整形决策矢量映射成染色体,决策变量映射成基因位,染色体用一维非负数组表示,默认第i个基因位对应第i枚智能体,基因值为智能体被分配的任务序号。编码时若不满足相关约束则编码无效,需要重新编码,直到编码满足所有的约束规则。(2)采用选择算子。计算出群体中每个个体的适应度f(xi)(i=1,2,...,m)。m为种群大小;对所有个体进行排序,选择适应度最高的个体进行复制,取代群体中适应度最低的个体。(3)采用交叉算子。本发明使用一种新的染色体交叉方法首先选取一个父染色体:任务编号132465随机选取小于m的两个不同随机数,并将两个随机数代表的基因位之间的基因倒序排列。如选取随机数为2和5,交叉操作后的染色体如下:任务编号164235(4)采用变异算子。这里的变异操作采用随机选取两个相邻基因位互换基因值的方法进行变异操作。(5)建立适应度函数。建立函数为fitness=w1×gd+w2×gp,其中gd代表探测收益,也即分配去执行探测任务的智能体的探测能力系数之和;gp代表突防收益,也即成功突防子任务载荷数目的期望。w1,w2为系数。下面结合实施例对本发明做进一步详细的描述:实施例假设已知某地有敌方一个a、四个b以及一个c组成的编队,欲发射智能体对此目标群进行攻击。航行过程中,在某段路径需要分配二十枚智能体执行突防、探测两类任务。两类任务相关参数如下:表1-8任务参数任务编号任务类型任务编号任务类型1探测11突防2探测12突防3探测13突防4探测14突防5探测15突防6探测16突防7突防17突防8突防18突防9突防19突防10突防20突防各任务和智能体参数给出如下:表1-9智能体参数仿真环境为matlabr2014a,计算机主频2.70ghz,内存2g。程序运行291ms。所得分配结果如下所示:表1-10分配结果从分类结果可以看出,3、4、5、6号智能体因其携带任务载荷数目不多,且探测能力良好,故被分配去执行探测任务;剩余两个探测任务分别由探测能力较好的12号和19号智能体执行,分配是合理的。任务分配规划时间300ms以内,满足1s规划的时间指标。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1