一种基于双层粒子群优化的任务规划方法与流程

文档序号:21369673发布日期:2020-07-04 06:19阅读:358来源:国知局
一种基于双层粒子群优化的任务规划方法与流程

本发明属于作战任务规划领域,具体涉及一种基于双层粒子群优化的任务规划方法。



背景技术:

现代战争依靠其高度信息化的网络环境,能够快速收集战场上瞬息万变的态势信息,例如敌我兵力数量、武器装备部署以及包含大量不确定因素的突发事件。现代战争时效性强、信息量大,给作战任务规划带来沉重负担,因此使用人工智能来生成作战规划方案成为当前发展趋势。作战任务是一个涉及众多不确定因素、具有特定军事规则和知识的复杂任务网络。一个好的作战任务规划方法,必须满足在接收战场态势和任务目标后,能够快速、准确地输出行动方案,并且尽量满足全局优化。

然而,目前大多数的作战任务规划往往只能取得局部最优解,例如集团军层级下达给师团层级的作战任务,经过优化算法处理后生成的作战计划,也许只达到了师团层级的最优解,但所得参数并不一定满足集团军层级的最优方案。因此,研究“在新的作战样式中,如何进行作战任务规划,实现多个指挥层级联动作业、全局最优”的问题,具有十分实用的意义。

当前的作战任务规模逐渐变大,结构越来越复杂,层次性也逐渐突显出来,在实际生活中,不可避免地,任何一个部门的决策都受到上级或下级的影响,如果只使用单层规划方法就不能全面分析、解决问题。因此为了实现作战任务规划的全局最优,必须改变原有的单层规划方式,按照实际决策机构的框架,形成不同层级的目标函数和约束函数,进而科学高效地求解这类优化问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于双层粒子群优化的任务规划方法,所述方法充分考虑上下两层的目标函数以及约束条件,提供了一种上下两层联合规划的框架,使得规划出来的任务同时符合上下两层的实际需求,达到任务均衡优化的目的。

基于上述目的,一种基于双层粒子群优化的任务规划方法,包括以下步骤:

步骤1,获取作战任务相关数据,环境数据,包括目标任务、导弹性能参数指标、战场环境参数、后勤保障条件、我方兵力部署情况;

步骤2,分别建立上层规划模型和下层规划模型;

步骤3,采用双层粒子群算法对两层规划模型联合优化;

步骤4,获得优化后的任务执行方案。

具体地,所述的上层规划模型的目标函数为:

f(ammon,dis)代表广义毁伤效果函数,f1(ammon,dis)代表单位弹药量对敌毁伤效果,f2(ammon,dis)代表道路选取对作战效果的影响函数,三个函数都是关于耗弹量ammon和部队机动距离dis的函数;

其中p5表示单位弹药量对敌造成毁伤的概率;dis表示部队机动距离;dis_max表示不同路径中部队机动距离的最大值;n表示不同路径对应不同的卫星过顶次数;k表示不同路径对应不同的保障力系数;cir表示不同的路况系数。

约束条件为:

ammon为正整数;n为整数,且路况越好,n越大;其中cir代表不同的路况系数,c∈[0,1];k∈[0,1],保障能力越好,k值越大;

所述的下层规划模型的目标函数为:

f(ammon,dis)代表部队广义损耗函数,f1(ammon,dis)代表作战单位机动过程综合损耗函数,f2(ammon,dis)代表已发射弹药的成本函数,f3(ammon,dis)代表未使用弹药的损耗函数,四个函数都是关于耗弹量ammon和部队机动距离dis的函数;

其中,unit表示作战任务所需调配的部队数量;假设共有m种弹药类型可供选择使用,pricei表示第i种弹药的价格;classi表示选取第i种弹药的概率;r表示机动距离对弹药损耗的影响系数;ammop表示作战中实际准备的弹药量。

约束条件为:unit有整数约束;价格price>0,单位万元/枚;概率class∈[0,1],且影响系数r∈(0,1);ammop,有整数约束。

具体地,步骤3中对两层规划模型联合优化包括以下步骤:首先,由上层确定一个ammon值,下层根据ammon值寻找自己的目标函数的最佳值,并将最佳策略通过dis代表的下层决策变量y反应给上层,完成一次迭代;上层为寻求自身目标函数的最优值,调整ammon值,再次传递给下层,下层重复上述步骤。在上层和下层之间多次迭代后,得到的结果趋近于最优解,所对应的最优决策方案为(ammon*,dis*)。

具体地,步骤3具体包括以下步骤:

步骤301,建立规模为m的粒子群,并随机初始化粒子的位置xi和速度vi;设置初始化时刻pbest和gbest;

步骤302,对更新每一个粒子的位置和速度信息;

步骤303,若位置或速度超出定义域,则将其设置为对应的上限或下限;

步骤304,将粒子的位置传递给下层模型;

步骤305,求解minf(x,y),得到最优值y;求解f(x,y);

步骤306,若f(x,y)>f(xbest,ybest),则xpbest=xi,ypbest=yi;

步骤307,若未达到最大迭代次数且算法为达到设定精度,则继续步骤302至306;

步骤308,输出双层粒子群优化的最优解xgbest和ygbest。

本发明考虑上下两层的目标函数以及约束条件,提出了一种上下两层联合规划的框架,且利用粒子群算法对两层进行联合规划,使得规划出来的任务同时符合上下两层的实际需求,在实际应用中具有较好的规划效果和较小的时间复杂度。

附图说明

图1为本发明任务规划方法的流程示意图;

图2为本发明方法中步骤3的流程示意图;

图3为本发明实施例的迭代次数与目标函数f的关系示意图;

图4为本发明实施例的迭代次数与目标函数f的关系示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在进行任务规划之前,首先需要任务的相关基础数据,包括(目标任务、导弹性能参数指标、战场环境参数、后勤保障条件、我方兵力部署情况)本实施例中,指挥部作为上层决策机构,作战部队作为下层决策机构。很显然,上层决策机构追求对敌目标打击效果的最大化,下层决策机构在上层决策机构的全局目标条件下,追求广义损耗的最小化。

在上层规划模型中,需要考虑以下几个方面的因素:

(1)单位弹药量对敌毁伤效果

弹量规划是按照毁伤要求、导弹发射可靠性、飞行可靠性、突防能力等计算需要准备多少发导弹。

耗弹量是在平时根据弹型、弹头类型和毁伤要求确定,建立相应的成果数据库,规划时只需要检索即可得到;

所以单位弹药对敌毁伤效果函数如下:

f1(ammon,dis)=ammon·p5

其中,ammon表示耗弹量,p5表示单位弹药量对敌造成毁伤的概率。

考虑到路径越长,运输过程对导弹的发射可靠性p1,飞行可靠性为p2,中段突防概率为p3,末段突防概率为p4以及毁伤概率p5都会产生影响,设置影响系数改进函数为:

其中,dis表示路径长度,dis_max表示路径长度的最大值。

(2)路径选取

规划部队从营区到作战区之间的路径要考虑道路可通过性、起始点和终点及沿途防御情况、移动信号覆盖情况。

在道路可通过(沿途桥梁称重、隧道限高满足要求)的前提下,按整条路线沿途防御覆盖和通信覆盖越多、转进时间越短(道路等级高、距离短)为优先原则确定路线。

对于每个任务部队,可以选择五种备选策略,分别是综合策略最优、防御最优、通信最优、最短路线、最快路线(对应道路等级高)。默认采用综合策略最优,即防御、通信、距离等权重依次降低。

针对本问题,将路径选取考虑方面简化。首先,不同路径修建的地理位置不同,相应地,敌卫星过顶侦察到作战部队的概率不同,所以不同路径对应不同的卫星过顶次数n;其次,不同的路况必然会造成不同保障输送能力,假设不同路径对应不同的保障力系数k;与上一点类似,道路状况会影响部队通行速度,假设在不同道路上部队通行所需的时间为t。

综上,得到道路选取对作战效果的影响函数

约束条件:

n为整数,且路况越好,n越大;

其中cir代表不同的路况系数,cir∈[0,1];

k∈[0,1],保障能力越好,k值越大。

(3)广义毁伤效果目标函数

约束条件:

ammon有正整数约束;

n为整数,且路况越好,n越大;

其中cir代表不同的路况系数,cir∈[0,1];

k∈[0,1],保障能力越好,k值越大。

从目标函数来看,上层决策机构希望能使用更多的弹药,同时在路径选取中,尽量选择路程短、被敌卫星侦察次数少、路径保障能力好的路径,从而达到更大的毁伤效果。

在下层规划模型中,需要考虑以下几个方面的因素:

(1)作战单位转移过程损耗

作战部队在转移至阵地过程中,会有一定的设备损耗、对作战人员的保障成本等,则这一过程产生的损耗:

f1(ammon,dis)=unit×dis

约束条件:

unit是作战任务所需调配的部队数量,unit有整数约束;

(2)已发射弹药成本

假设可用弹药类型共有m种,弹药价格分别为(price1、price2、price3…pricem);在弹药类型规划中,选择对应种弹药的概率分别为(class1、class2、class3…classm)。

则已发射弹药成本为:

约束条件:

价格price>0,单位万元/枚;

概率class∈[0,1],

(3)剩余弹药损耗

假设共规划了a个瞄准点,考虑导弹发射可靠性p1,飞行可靠性为p2,中段突防概率为p3和末段突防概率为p4,则发射弹量为:

表示向上取整数,实际规划时p1、p2、p3、p4均需根据实验或理论分析确定。

因为在规划准备弹药量时,会按照一定的比例超额准备弹药,因此,未使用的弹药也会因运输、检测、待机等因素造成一定的损耗,将该损耗整理如下式:

约束条件:

影响系数r同上,

ammop,有整数约束。

(4)部队广义损耗函数

约束条件:

unit是作战任务所需调配的部队数量,unit有整数约束;

价格price>0,单位万元/枚;

概率class∈[0,1];

系数r表示按照弹药单价的一定比例造成损耗,r∈(0,1);

ammop,有整数约束。

从目标函数来看,下层决策机构希望能使用更少的弹药,同时在路径选取中,尽量选择路程短、被敌卫星侦察次数少、路径保障能力好的路径,从而减少的成本和其他损耗。

故如图1所示,一种基于双层粒子群优化的任务规划方法,包括以下步骤:

步骤1,获取作战任务,环境数据,包括目标任务、导弹性能参数指标、战场环境参数、后勤保障条件、我方兵力部署情况;

步骤2,分别建立上层规划模型和下层规划模型;

步骤3,采用双层粒子群算法对两层规划模型联合优化;

步骤4,获得优化后的任务执行方案。

具体地,将ammon作为决策变量x,实现上下两层级的信息传递。首先,由上级确定一个ammon值,下层根据ammon值寻找自己的目标函数的最佳值,并将最佳策略通过dis代表的下层决策变量y反应给上层,完成一次迭代;上层为寻求自身目标函数的最优值,调整ammon值,再次传递给下层,下层重复上述步骤。在上层和下层之间多次迭代后,得到的结果趋近于最优解,所对应的最优决策方案为(ammon*,dis*)。

具体地,如图2所示,步骤3具体包括以下步骤:

步骤301,建立规模为m的粒子群,并随机初始化粒子的位置xi和速度vi;设置初始化时刻pbest和gbest;

步骤302,对更新每一个粒子的位置和速度信息;

步骤303,若位置或速度超出定义域,则将其设置为对应的上限或下限;

步骤304,将粒子的位置传递给下层模型;

步骤305,求解minf(x,y),得到最优值y;求解f(x,y);

步骤306,若f(x,y)>f(xbest,ybest),则xpbest=xi,ypbest=yi;

步骤307,若未达到最大迭代次数且算法为达到设定精度,则继续步骤302至306;

步骤308,输出双层粒子群优化的最优解xgbest和ygbest。

下面以一个实验为例,详细说明本发明方法。

在实验设计过程中,对一部分变量进行赋值,便于对目标函数的分析。

首先,确定双层规划中的两个决策变量。因为考虑到双层规划的中心思想是上下两层级通过共有的决策变量相互影响,并在迭代联动中不断寻找最优解。所以,通过分析,耗弹量ammon和路径dis能够作为联结上下两层决策的关系变量。因为上层决策机构期望达到较大的毁伤效果,这必然会带来更多的弹药消耗;相反,下层决策机构期望通过更少的弹药消耗和作战损耗,完成上层决策机构下达的对目标摧毁的命令。

根据指导思想,对模型中除了耗弹量ammon和路径dis以外的其他变量进行量化赋值,将上下两层目标函数中的所有变量转换为两个决策变量。实施例中的条件有:

(1)耗弹量ammon存在正整数约束,根据经验,针对一个任务,通常会有有限的取值区间,设ammon∈[10,100]且ammon∈z;

(2)部队机动的路径长度dis是一个有限的连续区间[dis_min,dis_max],此实验设为[10,100],单位为公里;

(3)路况与路径长度成反比,即路程越短,路况越好;

(4)敌卫星过顶次数与路径长度成正比,且有正整数约束;

(5)保障力系数与路径长度成反比;

(6)单位数量unit有正整数约束;

(7)本实施例只涉及三种导弹型号,分别为i型、ii型和iii型。

上层目标函数参数设计:

(1)f1中的p5表示单位弹药对敌造成毁伤的概率,根据经验,确定p5=80%;

(2)f2中包含了n、t、k三个变量,分别进行量化:

k表示保障力系数,为满足与路径长度的反比关系,设

n表示敌卫星过顶次数,为满足与路径长度的反比关系,设

t表示部队通行时间时间,已知引入的路况变量cir与路径长度成反比,设

(3)综上,上层目标函数为:

下层目标函数参数设计:

(1)f1中的unit代表部队数量,设单位部队所携带的导弹数量为5,则

(2)f2中的classi和pricei分别代表不同型号导弹选取的概率和对应的价格,设class1=0.5、class2=0.3、class3=0.2,price1=16、price2=40、price3=80;

(3)f3中ammop代表准备弹量,公式为目标数量设为a=1,设综合可靠性概率p1·p2·p3·p4=0.5,考虑运输对p1、p2、p3和p4的影响,备弹量公式改进为

(4)综上,下层目标函数为:

实验结果分析

全部实验均使用matlabr2016a进行编程,实现pso算法对双层规划问题的求解。

结果表明,当函数适应值f最大时,对应的耗弹量最大且路径最短。这与认知相符,即更多的耗弹量必然会使毁伤值增大,更短的路径会带来更少次被敌卫星侦察、更快的部队通行速度和更好的部队保障能力,这也会使毁伤值增大。因此上层目标函数f的设计是满足问题背景的。当函数适应值f最小时,对应的耗弹量最少且路径最短。即更少的耗弹量会降低成本,更短的路径会降低运输过程中的各种损耗。因此下层目标函数f的设计也是满足问题背景的。

初始化ammon和dis值,分别为ammon=10,dis=10。

经过程序求解,共进行了300次迭代,在第91次迭代后,ammon的值超出了实验限制的[10,100]的取值范围,因此只展示前91次计算后的结果,如表1所示。

表1实验结果

如图3所示,从目标函数f的变化趋势来看,当迭代次数从1增加到91,f的值在不断变大,一直向着毁伤效果增大的方向发展,如图4所示,从目标函数f的发展趋势来看,随着迭代次数的增加,在第43次迭代之前,f的值一直在减小,第43次迭代之后,f的值逐渐增大。

经过对结果分析,认为ammon值的大小对目标函数f的前期影响较小,后期影响较大。导致在优化求解的过程中,为了使得f值最大,粒子会倾向于使ammon的值一直在增大。虽然ammon的值与f的值成反比,但在第43次迭代前,虽然ammon的值在增大,但f的值也在不断减小,没有造成很大的影响;但在第43次迭代后,ammon的值已经大到足以影响f的值,致使f的值开始回升。

通过分析,得到了一个结论,即第43次迭代对应的ammon和dis的值是使目标函数f和f达到一个较优值的转折点。随着迭代次数的继续增加,虽然上层目标函数f还会继续增加,但会牺牲掉f的较优解。从结果数据中,找到了(ammon*,dis*)=(ammon43,dis43)=(52,31.66692),意味着在问题背景下,选取耗弹量为52枚,路径长度31.66692公里时,会使上下层级决策机构的目标共同达到一个较优解。

由发明内容和实施例可知,本发明考虑上下两层的目标函数以及约束条件,提出了一种上下两层联合规划的框架,且利用粒子群算法对两层进行联合规划,使得规划出来的任务同时符合上下两层的实际需求,在实际应用中具有较好的规划效果和较小的时间复杂度,能够很好的应用于此类任务规划问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1