一种基于种群爆炸粒子群算法的目标分配优化方法技术

技术编号:12256345 阅读:152 留言:0更新日期:2015-10-28 19:38
本发明专利技术提供一种基于种群爆炸粒子群算法的目标分配优化方法,属于智能算法优化领域。本优化方法为根据寻优过程中种群的聚集情况,引入“种群爆炸算子”,结合混沌搜索以及自适应的部分原理,在一定限制条件下进行粒子的发散处理,同时进行参数调节,避免种群过早陷入局部最优,实现了在虚拟战场中坦克智能兵力间交战的目标分配问题。步骤1,将己方和对方均采用实数编码,使用混沌搜索产生良好的初始种群;步骤2,调整算法的初始参数;步骤3,采用基于“种群爆炸算子”的粒子群算法进行迭代寻优搜索;步骤4,当迭代次数达到设定次数时迭代结束,获得最优方案。相比于原算法,本方法增强了粒子的全局寻优能力,并满足了高实时性的要求。

【技术实现步骤摘要】
一种基于种群爆炸粒子群算法的目标分配优化方法
本专利技术属于智能算法优化领域,尤其涉及一种基于种群爆炸粒子群算法的目标分配优化方法。
技术介绍
虚拟战场环境中的目标分配是CGF(ComputerGeneratedForces,计算机生成兵力)真实行为模拟的一个重要方面,目标分配是许多CGF作战实体的一个共同行为,它模拟的准确性直接影响CGF的其它作战行为和CGF模拟的真实性。“目标分配”的研究意义不仅是可以在CGF仿真系统中提升仿真效果的可信度,给人以很好的“沉浸感”。同时,“目标分配”的研究在实际作战中也可以发挥巨大的作用,可为作战人员提供快速,高效的打击方案。虚拟战场环境中CGF的目标分配是现代战争中一个十分重要的问题。然而,其解空间随着武器总数和目标总数的增加而呈指数级的增加,使其成为一个多参数、多约束的“NP完全问题”。所以只能用完全枚举法求解得到其最优解。显然在规模较大的情况下是不现实的,因此必须通过一定的智能算法解决。为解决这一问题,人们提出许多算法,例如,神经网络方法,遗传算法,粒子群算法等等。这些算法各有优劣,但是也大多具有一定的局限性,例如收敛速度较慢、实际操作中难以实现等等。粒子群算法(PSO算法)最早由Kennedy等于1995年提出,此算法受鸟群觅食行为的启发,并用于解决优化问题。同遗传算法相比,PSO算法不但具有遗传算法的全局寻优能力,还具有较强的局部寻优能力。由于PSO算法概念简单、实现容易、收敛速度快、可适应大规模模型等优点PSO被广泛应用于多个领域。但是PSO算法在搜索的初期往往收敛过快,当解空间中存在多个极值点(即在该点附近的区域中,这一点所代表的分配方案是最好的)时,种群容易收敛在极值点附近,因此在寻优的后期种群容易陷入局部最优解,导致难以获得最优的解。
技术实现思路
为解决上述问题,本专利技术提供一种基于种群爆炸粒子群算法的目标分配优化方法,其具体包括以下步骤:步骤1,将己方和对方均采用实数编码,对方记为1,2,…q…N,己方记为1,2,…k…M,则寻优过程中的可行解空间为(x1,x2…xi…xM),表示分配方案,并随机产生初始分配方案,其中,xi的取值范围为1~N之间的整数,xi=q表示第q个对方分配给第i个己方,N为对方总数,M为己方总数;步骤11,随机产生第一个初始粒子粒子位置各维的分量值属于区间(0,1);步骤12,以第一个初始粒子X1为基础,按照生成其他初始粒子X2~XD;其中,D为种群规模,表示第n个粒子位置的第i维分量;步骤13,将已生成的所有初始粒子Xn按round(Xn×(N-1)+1)取整,获得初始分配方案,其中n=1,2,…D;步骤2,利用公式计算初始种群X1~XD中各个粒子的适应度值,并设定各个粒子的适应度值为各个粒子当前的个体最优解pbest;从各个粒子的个体最优解pbest中选择最小作为初始种群的全局最优解gbest;其中,tq为第q个对方的威胁度值,pkq为己方k对对方q的命中率,ykq的值为0或1,若为1则己方k攻击对方q,否则己方k不攻击对方q;步骤3,采用迭代过程进行寻优搜索:步骤31,若当前粒子种群同时满足以下三个条件,则执行步骤32;否则,直接执行35;1)从第m次迭代到当前迭代之间保持全局最优解gbest持续不变的迭代次数(t-m)大于第一设定阈值;2)设t为当前迭代次数,t小于第二设定阈值;3)种群爆炸算子未被屏蔽,初始种群爆炸算子默认为未被屏蔽;步骤32,判断粒子的收敛程度:根据当前的迭代次数t通过c_boundary=((MaxDT-t)/MaxDT+0.05)×dis_BANG计算一个收敛边界c_boundary,并计算各粒子到全局最优解gbest的欧式距离DIS,若DIS<收敛边界c_boundary,则粒子收敛于全局最优解gbest;判断完所有粒子的收敛程度后,若收敛边界c_boundary内的粒子达到设定量时执行步骤33,否则直接执行步骤35;其中,MaxDT为最大迭代次数,dis_BANG为常数,代表最大收敛边界;步骤33,执行种群爆炸算子后执行步骤34,执行种群爆炸算子包括:步骤331,利用BANG=((MaxDT-t)/MaxDT+0.02)×(N/3)+1计算爆炸威力BANG,其中,MaxDT为最大迭代次数,t为当前迭代次数;,步骤332,根据计算第i个粒子的爆炸方向矩阵fi,则计算结果表示为:rand表示取0~1之间均匀分布的一个随机数,表示第i个粒子的第j维将受到“引力”,表示第i个粒子的第j维将受到“斥力”,所述“斥力”即使粒子远离全局最优解方向的力;“引力”即使粒子接近全局最优解方向的力;步骤333,用vi+fi×BANG更新粒子速度vi,用Xi+vi更新粒子位置Xi;步骤34,用(w+w_1)×vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi)更新粒子速度vi,然后执行步骤36,其中w_1和c_2为引入的调整参数,并且在每一次迭代结束后进行更新,w_1用w_1+(-0.3/40)实时更新,c_2用c_2+(1/40)实时更新;其中,w为速度更新公式中原速度的权重值,c1、c2分别为速度更新公式中局部最优解和全局最优解的权重值;步骤35,若不满足条件3):则依据(w+w_1)×vi+c1×rand×(pbest-Xi)+(c2+c_2)×rand×(gbest-Xi)更新粒子速度vi,然后执行步骤36;若满足条件3):则依据w×vi+c1×rand×(pbest-Xi)+c2×rand×(gbest-Xi)更新粒子速度vi,然后执行步骤36;步骤36,检测粒子速度是否越界:粒子速度vi任意一维的取值在[-N/4,N/4]之外,则越界,否则未越界;若越界,该维的速度值取边界值,未越界速度不变;执行步骤37;步骤37,依据Xi+vi更新粒子位置Xi,执行步骤38;步骤38,检测粒子位置是否越界:粒子任意一维的取值在为[1,N]之外,则越界,否则,未越界;若越界,该维的值取边界值附近一定范围内的随机值,未越界位置不变;步骤39,更新全局最优解与个体最优解如果t次迭代产生的粒子新位置的适应度小于该粒子的个体最优解pbest的适应度,则更新该粒子的个体最优解为粒子新位置,否则不变;若粒子新位置的个体最优解的适应度小于全局最优解的适应度,则用该粒子的个体最优解取代全局最优解,否则不变;同时执行步骤40和步骤41;步骤40,若当前迭代过程中执行过种群爆炸算子,则要生成影子种群:影子种群的初始位置为t-1次迭代执行完毕的粒子位置或者各个粒子的个体最优位置;若当前迭代过程中未执行过种群爆炸算子,则直接执行步骤4;在种群爆炸算子的影响代数t+1到t+U中依次进行交叉操作,直到第t+U次迭代结束,获得影子种群的全局最优解;U为种群爆炸屏蔽量,即t+1到t+U默认种群爆炸算子为被屏蔽,且受到种群爆炸算子影响,执行步骤42;步骤41,t+1到t+U次迭代中,实际种群直接执行步骤34、36、37、38和39,直到第t+U次迭代结束,获得实际种群的全局最优解,执行步骤42;步骤42,将影子种群与实际种群融合:若影子种群的全局最优解的适应度小于实际种群的全局最优解的适应度值,本文档来自技高网
...
一种基于种群爆炸粒子群算法的目标分配优化方法

【技术保护点】
一种基于种群爆炸粒子群算法的目标分配优化方法,其特征在于,包括:步骤1,将己方和对方均采用实数编码,对方记为1,2,…q…N,己方记为1,2,…k…M,则寻优过程中的可行解空间为(x1,x2…xi…xM),表示分配方案,并随机产生初始分配方案,其中,xi的取值范围为1~N之间的整数,xi=q表示第q个对方分配给第i个己方,N为对方总数,M为己方总数;步骤11,随机产生第一个初始粒子粒子位置各维的分量值属于区间(0,1);步骤12,以第一个初始粒子X1为基础,按照生成其他初始粒子X2~XD;其中,D为种群规模,表示第n个粒子位置的第i维分量;步骤13,将已生成的所有初始粒子Xn按round(Xn×(N‑1)+1)取整,获得初始分配方案,其中n=1,2,...D;步骤2,利用公式计算初始种群X1~XD中各个粒子的适应度值,并设定各个粒子的适应度值为各个粒子当前的个体最优解pbest;从各个粒子的个体最优解pbest中选择最小作为初始种群的全局最优解gbest;其中,tq为第q个对方的威胁度值,pkq为己方k对对方q的命中率,ykq的值为0或1,若为1则己方k攻击对方q,否则己方k不攻击对方q;步骤3,采用迭代过程进行寻优搜索:步骤31,若当前粒子种群同时满足以下三个条件,则执行步骤32;否则,直接执行35;1)从第m次迭代到当前迭代之间保持全局最优解gbest持续不变的迭代次数(t‑m)大于第一设定阈值;2)设t为当前迭代次数,t小于第二设定阈值;3)种群爆炸算子未被屏蔽,初始种群爆炸算子默认为未被屏蔽;步骤32,判断所有粒子的收敛程度:根据当前的迭代次数t通过c_boundary=((MaxDT‑t)/MaxDT+0.05)×dis_BANG计算一个收敛边界c_boundary,并计算各粒子到全局最优解gbest的欧式距离DIS,若DIS<收敛边界c_boundary,则粒子收敛于全局最优解gbest;判断完所有粒子的收敛程度后,若收敛边界c_boundary内的粒子达到设定量时执行步骤33,否则直接执行步骤35;其中,MaxDT为最大迭代次数,dis_BANG为常数,代表最大收敛边界;步骤33,执行种群爆炸算子后执行步骤34,执行种群爆炸算子包括:步骤331,利用BANG=((MaxDT‑t)/MaxDT+0.02)×(N/3)+1计算爆炸威力BANG,其中,MaxDT为最大迭代次数,t为当前迭代次数;,步骤332,根据计算第i个粒子的爆炸方向矩阵fi,则计算结果表示为:rand表示取0~1之间均匀分布的一个随机数,表示第i个粒子的第j维将受到“引力”,表示第i个粒子的第j维将受到“斥力”,所述“斥力”即使粒子远离全局最优解方向的力;“引力”即使粒子接近全局最优解方向的力;步骤333,用vi+fi×BANG更新粒子速度vi,用Xi+vi更新粒子位置Xi;步骤34,用(w+w_1)×vi+c1×rand×(pbest‑Xi)+(c2+c_2)×rand×(gbest‑Xi)更新粒子速度vi,然后执行步骤36,其中w_1和c_2为引入的调整参数,并且在每一次迭代结束后进行更新,w_1用w_1+(‑0.3/40)实时更新,c_2用c_2+(1/40)实时更新;其中,w为速度更新公式中原速度的权重值,c1、c2分别为速度更新公式中局部最优解和全局最优解的权重值;步骤35,若不满足条件3):则依据(w+w_1)×vi+ci×rand×(pbest‑Xi)+(c2+c_2)×rand×(gbest‑Xi)更新粒子速度vi,然后执行步骤36;若满足条件3):则依据w×vi+c1×rand×(pbest‑Xi)+c2×rand×(gbest‑Xi)更新粒子速度vi,然后执行步骤36;步骤36,检测粒子速度是否越界:粒子速度vi任意一维的取值在[‑N/4,N/4]之外,则越界,否则未越界;若越界,该维的速度值取边界值,未越界速度不变;执行步骤37;步骤37,依据Xi+vi更新粒子位置Xi,执行步骤38;步骤38,检测粒子位置是否越界:粒子任意一维的取值在为[1,N]之外,则越界,否则,未越界;若越界,该维的值取边界值附近一定范围内的随机值,未越界位置不变;步骤39,更新全局最优解与个体最优解如果t次迭代产生的粒子新位置的适应度小于该粒子的个体最优解pbest的 适应度,则更新该粒子的个体最优解为粒子新位置,否则不变;若粒子新位置的个体最优解的适应度小于全局最优解的适应度,则用该粒子的个体最优解取代全局最优解,否则不变;同时执行步骤40和步骤41;步骤40,若当前迭代过程中执行过种群爆炸算子,则要生成影子种群:影子种群的初始位置为t‑1次迭代执行完毕的粒子位置或者各个粒子的个体最优位置;若当前迭代过程中未执行过种群爆炸算子,则直接执行步骤4;在种...

【技术特征摘要】
1.一种基于种群爆炸粒子群算法的目标分配优化方法,其特征在于,包括:步骤1,将己方和对方均采用实数编码,对方记为1,2,…q…N,己方记为1,2,…k…M,则寻优过程中的可行解空间为(x1,x2…xi…xM),表示分配方案,并随机产生初始分配方案,其中,xi的取值范围为1~N之间的整数,xi=q表示第q个对方分配给第i个己方,N为对方总数,M为己方总数;步骤11,随机产生第一个初始粒子粒子位置各维的分量值属于区间(0,1);步骤12,以第一个初始粒子X1为基础,按照生成其他初始粒子X2~XD;其中,D为种群规模,表示第n个粒子位置的第i维分量;步骤13,将已生成的所有初始粒子Xn按round(Xn×(N-1)+1)取整,获得初始分配方案,其中n=1,2,...D;步骤2,利用公式计算初始种群X1~XD中各个粒子的适应度值,并设定各个粒子的适应度值为各个粒子当前的个体最优解pbest;从各个粒子的个体最优解pbest中选择最小作为初始种群的全局最优解gbest;其中,tq为第q个对方的威胁度值,pkq为己方k对对方q的命中率,ykq的值为0或1,若为1则己方k攻击对方q,否则己方k不攻击对方q;步骤3,采用迭代过程进行寻优搜索:步骤31,若当前粒子种群同时满足以下三个条件,则执行步骤32;否则,直接执行35;1)从第m次迭代到当前迭代之间保持全局最优解gbest持续不变的迭代次数(t-m)大于第一设定阈值;2)设t为当前迭代次数,t小于第二设定阈值;3)种群爆炸算子未被屏蔽,初始种群爆炸算子默认为未被屏蔽;步骤32,判断所有粒子的收敛程度:根据当前的迭代次数t通过c_boundary=((MaxDT-t)/MaxDT+0.05)×dis_BANG计算一个收敛边界c_boundary,并计算各粒子到全局最优解gbest的欧式距离DIS,若DIS<收敛边界c_boundary,则粒子收敛于全局最优解gbest;判断完所有粒子的收敛程度后,若收敛边界c_boundary内的粒子达到设定量时执行步骤33,否则直接执行步骤35;其中,MaxDT为最大迭代次数,dis_BANG为常数,代表最大收敛边界;步骤33,执行种群爆炸算子后执行步骤34,执行种群爆炸算子包括:步骤331,利用BANG=((MaxDT-t)/MaxDT+0.02)×(N/3)+1计算爆炸威力BANG,其中,MaxDT为最大迭代次数,t为当前迭代次数;,步骤332,根据计算第i个粒子的爆炸方向矩阵fi,则计算结果表示为:rand表示取0~1之间均匀分布的一个随机数,表示第i个粒子的第j维将受到“引力”,表示第i个粒子的第j维将受到“斥力”,所述“斥力”即使粒子远离全局最优解方向的力;“引力”即使粒子接近全局最优解方向的力;步骤333,用vi+fi×BANG更新粒子速度vi,用Xi...

【专利技术属性】
技术研发人员:陈晨陈正雄陈杰方浩王健张啸天
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1