APP下载

基于CMFO算法的投影寻踪威胁目标评估模型

2020-01-17李宏伟白景波

计算机工程与应用 2020年2期
关键词:飞蛾投影火焰

李宏伟,陈 亮,2,白景波

1.陆军工程大学 野战工程学院,南京210007

2.军事交通学院 汽车士官学校,安徽 蚌埠233011

1 引言

目标威胁评估是对目标进行预警、拦截和攻击的前提和关键,对其进行研究具有重要的意义。目前,常用的目标威胁评估方法包括AHP法[1]、模糊综合评判法[2]、TOPSIS 法[3]、灰色关联法[4]、基于贝叶斯网络法[5]、神经网络法[6]、熵权法[7]等。然而,这些方法在对目标威胁评估的权重的处理上,受主观因素影响较大,评估结果客观性不足。同时,目标威胁往往由多个非线性指标来决定,采用传统的评价方法建立威胁目标评估模型时,受到过于数据化的限制,难以找到数据的内在规律。

投影寻踪[8](Projection Pursuit,PP)是处理和分析高维数据的一种新型统计方法,其基本思想是将高维数据投影到低维子空间上,并在该子空间上寻找能反映原高维数据结构或特征的投影,从而达到研究和分析高维数据的目的,在克服“维数祸根”以及解决小样本、超高维等问题中具有明显优势。在实际应用中,最佳投影方向的选取决定了投影寻踪模型的评估精度和评估结果。目前,投影寻踪评估模型已广泛应用于洪旱灾评估、水质评估等领域。

由于,投影寻踪评估模型具有非线性、离散等特点,传统方法难以求解。目前,用于投影寻踪模型最佳投影方向求解的方法主要是智能优化算法。这些算法包括:遗传算法[9]、粒子群算法[10]、差分进化算法[11]、引力搜索算法[12]等。2015年,Mirjalili[13]受飞蛾围绕灯光做螺旋飞行的启发,提出了一种新的群智能算法——MFO。该算法结构、参数简单和运行高效,受到广大学者的青睐。到目前为止,MFO 算法已经成功运用到了工程设计[13-15]、图像分割[16-17]、特征提取[18-19]和电力调度[20]等领域。

混沌现象是在非线性动力系统中表现的确定性、类随机的过程,存在着貌似随机的不规则运动,其行为表现为不确定性、不可重复、不可预测,并且对于初始值具有敏感的依赖性。混沌映射(系统)是可产生此种混沌现象的非线性动力系统。混沌映射已被众多智能优化算法利用[21-22],以改进全局探索和局部开发能力。为此,本文提出了基于CMFO 算法的投影寻踪威胁目标评估模型。

2 准备工作

2.1 飞蛾火焰优化(MFO)算法

飞蛾在夜间飞行时,采用了一种独特的导航机制——横向定向(transverse orientation)机制。这种机制能确保飞蛾的飞行路线与飞蛾和月亮之间的连线保持一个固定的角度[23],从而使得飞蛾沿着近似直线的方向飞行(由于飞蛾与月亮的距离非常遥远),如图1 所示。然而,当飞蛾以人造灯光为参考点,采用横向定位机制导航时,由于飞蛾与人造灯光的距离较近,飞蛾将会围绕着人造灯光做螺旋飞行,直至飞抵人造灯光(如图2所示)。学者Mirjalili[13]模拟了飞蛾以螺旋轨迹飞抵人造灯光的自然现象,提出了MFO算法。

在MFO算法中,存在两个重要的群体:飞蛾群体和火焰群体。飞蛾群体代表搜索空间中当前解的位置,火焰群体代表目前已知的最优解集。飞蛾群体可用矩阵M 表示,火焰群体可用矩阵F 表示:

图1 横向定向

图2 围绕近距光源螺旋飞行轨迹

其中,n 表示飞蛾、火焰的数目,d 是搜索空间的维数。向量分别用于存储飞蛾适应度和火焰的适应度。在迭代更新过程中,飞蛾和火焰采取不同的位置更新方式:

(1)飞蛾的位置更新方式

每个飞蛾会被分配一个目标火焰,并围绕该火焰按照以下公式更新位置:

其中,Mt-1,i表示第t-1 代第i 个飞蛾的位置,Ft-1,j表示第t-1 代第j 个火焰的位置,Mt,i表示第i 个飞蛾更新后的位置,S 表示螺旋函数。Mirjalili[13]认为满足某些条件的任何螺旋函数都可作为函数S 。在基本MFO[13]中,采用的是对数螺旋函数。采用对数螺旋函数的飞蛾位置更新公式如下所示:

其中,Di表示第i 个飞蛾与第j 个火焰之间的距离,b是一个限定对数螺旋函数形状的常数,r 是距离调整参数,T 是算法的最大迭代次数,t 是当前迭代次数,a 的值随迭代过程取值由-1 线性减小到-2。

从以上更新方式来看,飞蛾群体围绕n 个不同的火焰(对应n 个不同的优良解)搜索。然而,对n 个不同的优良解采取同等的搜索强度,可能会导致算法局部开发能力不足,收敛速度缓慢。为了解决这个问题,文献[13]提出了一种自适应调整火焰数量的方法。通过逐渐减少火焰数量,使得飞蛾逐渐向火焰群中最优的几个解搜索,直至在算法最后阶段仅向唯一的最优解搜索。逐渐减少的火焰数量,起到了平衡局部开发和全局探索的作用。火焰数量的计算公式如下:

(2)火焰的位置更新方式

为了充分利用历史信息,火焰群体采用以下方式更新:

其中,sort( )[Mt-1,Mt],n 表示对前一代Mt-1和当代Mt的适应度按降序排序(适应度越大对应的解越好),并保留前n 个适应度对应的n 个解作为当前火焰种群Ft。

2.2 混沌映射

在优化领域,混沌优化算法(Chaotic Optimization Algorithm,COA)是一种使用混沌变量的基于随机搜索的方法。在COA中,由于混沌映射(chaotic maps)具有遍历性和不重复性,可以比依赖概率的随机搜索算法更高的速度实现全局搜索。目前常用的混沌映射有以下10种:Chebyshev map,Circle map,Gaussian map,Iterative map,Logistic map,Piecewise map,Sine map,Singer map,Sinusoidal map 和Tent map。关于以上混沌映射的详细信息可参见文献[24-25]。以上混沌映射具有不同的行为特性,通过归一化的处理方式,取值可限定在[0,1]。

3 混沌飞蛾火焰(CMFO)算法

在公式(6)中,参数r 决定了飞蛾的下一个位置与对应火焰的距离。随着r 的变化,飞蛾的位置分布在火焰周围并形成一个围绕火焰的超椭圆,从而保证对搜索空间的全局探索和局部开发。在基本MFO中,使用[0,1]间的均匀分布随机数调节r 。鉴于混沌映射的优良性能,选择用混沌映射代替公式(6)中的随机部分(rand),尝试提高算法性能。改进的MFO算法称为混沌火焰优化(CMFO)算法。不同混沌映射与MFO 结合,可得到不同的CMFO算法。为方便记录,CMFO1~CMFO10分别 对 应 使 用Chebyshev map,Circle map,Gaussian map,Iterative map,Logistic map,Piecewise map,Sine map,Singer map,Sinusoidal map 和Tent map 的CMFO算 法。CMFOs 表 示CMFO1~CMFO10 的 算 法 集 合。CMFOs算法的伪代码如下所示:

1. Initialize chaotic value cc;

2. update flame no using Eq.(8).

3. Initialize M0and calculate the fitness values OM0.

4. While the termination condition is not satisfied

5. if t==1

6. OF1=sort(OM0)(sort OM0in ascending order)

7. F1=sort(M0)(sort M0according to OM0in ascending order)

8. else

9. OFt=sort(OMt-1,OMt)(sort [OMt-1,OMt]in ascending order);

10. Ft=sort([Mt-1,Mt],n)(sort [Mt-1,Mt]according to [OMt-1,OMt]in ascending order);

11. end;

12. update a using Eq.(7);

13. for i=1:n

14. r=a·chaotic(cc)+1;

15. Calculate Diusing Eq.(5)with respect to Mt-1,iand Ft-1,j;

16. Update Mt( )i,j using Eqs.(4)with respect to Mt-1,iand Ft-1,j;

17. end;

18 End while

嵌入混沌映射的距离调整参数r 的代码见第14行。

为了检验提出的CMFOs 算法的有效性,选择了8个标准测试函数(如表1)。前4个是单峰函数,后4个是多峰函数。表2给出了MFO算法与CMFOs算法在标准测试函数上的平均误差和标准差。其中,函数维数D=30,种群规模NP=D,最大函数评价次数FES=100×D,每个算法独立运行50 次。表中以黑体标注了在当前函数下的最优结果。

表1 测试函数

表2 MFO与CMFOs的实验结果

从表2可以看出,不论是单峰函数,还是多峰函数,CMFO8 算法都能取得优于基本MFO 算法的性能。为了进一步检验这种差异是否具有显著性,引入了0.05显著水平下的统计检验Wilcoxon's rank sum test。‡、≈和†分别表示CMFO8 算法的性能优于、相等和劣于MFO算法。从统计检验的结果来看,CMFO8算法显著优于MFO算法。CMFO8算法中采用的混沌映射是Singer map。因此,下文使用的CMFO 特指采用了Singer map的CMFO8算法。

4 基于CMFO的投影寻踪威胁目标评估模型

4.1 投影寻踪威胁目标评估模型

对于一般的多指标决策和排序问题,设其方案集为A={ A1,A2,…,An} ,属性集(也称指标集)为G={G1,G2,…,Gm},方案Ai关于指标Gj的属性值(指标值)记为yij(i=1,2,…,n;j=1,2,…,m),矩阵Y=(yij)n×m表示“决策矩阵”。投影寻踪威胁目标评估模型的建模步骤如下:

步骤1 评价指标集的归一化处理。不同的评价指标具有不同的量纲,并且取值范围不统一。为此,在决策之前首先应该将评价指标归一化处理。在威胁目标评估中,较多使用到的指标有“效益型”指标和“成本型”指标[26]。所谓“效益型”指标是指属性值越大越好的指标。“成本型”指标是指属性值越小越好的指标。对于不同类型的评价指标,归一化处理的方法也不同。对于效益型指标Gj,令:

通过以上归一化处理后,得到归一化的决策矩阵X=(xij)n×m。

步骤2 线性投影。线性投影就是从不同投影方向观察数据,寻找最能充分挖掘和反映数据潜在信息的最佳投影方向。设投影方向为a=[a1,a2,…,am]T,且a为单位向量。则方案i 在一维线性空间的投影特征值zi的表达式为:

步骤3 投影指标函数的构造。投影指标函数可定义为:

Q(a)=S(a)D(a)

其中,S(a)为投影特征值z 的标准差:

步骤4 优化投影方向。当投影指标函数取最大值时,对应的投影方向a 即是最能反映数据特征的最佳投影方向a*。因此,寻找最佳投影方向a*的问题就转化为求解以下带约束的优化问题:

求解该优化问题可采用CMFO 算法,4.2 节将详细给出CMFO算法求解该优化问题的步骤。

步骤5 方案综合排序。根据最佳投影方向a*,便可依公式(12)计算出方案i 的综合指标信息的投影特征值zi。方案的投影特征值zi反映了方案的优劣,按照投影特征值zi的由大到小的排序,即可对应地对方案做由优到劣的排序。

4.2 CMFO优化投影方向

目标函数(公式(13))是带有约束的极值问题,通常情况下CMFO 求解的问题是无约束的极值问题。文献[28]采用对约束函数赋予惩罚系数的方式,将带约束的极值问题转化为无约束的极值问题。在本问题中,由于公式(13)中的约束条件较简单,可先随机生成投影方向a′=[a′1,a′2,…,a′n]T,其中0 ≤a′i≤1,i=1,2,…,n,然后对a′单位化a=a′/‖ a′ ‖。CMFO 算法优化投影方向的步骤归纳如下:

步骤1 数据预处理。利用公式(1)和(2)对数据进行归一化处理,设置CMFO 算法的种群规模NP ,最大函数评价次数FES。

步骤2 确定目标函数。由于MFO搜索算法是求极小值问题,因此将公式(13)的相反数作为目标函数:

步骤3 按照上文给出的CMFO 算法对目标函数进行优化,求解最优解a*

步骤4 输出最优解a*。

5 实验应用

在实验中,选择了3个实例来验证本文提出方法的有效性。CMFO 算法的种群规模NP=20,FES=1 000。为了减少随机性的影响,实验是在相同的环境和参数条件下运行独立运行100次获得的结果的平均值。

5.1 空战目标威胁评估

文献[4]选择了空中作战目标的目标类型、航路捷径、目标速度、到达时间和干扰强度等五个指标,使用变权理论并结合灰色关联法,对空战目标进行威胁度评估。归一化后的决策矩阵X 为:

使用CMFO 索算法优化求解,求得最佳投影方向a*=(0.526 0 0 0.564 2 0.559 1 0.304 0)T,将a*代入公式(12)后得到5架敌机的投影值z*=(0.614 8 1.703 5 1.466 5 0.101 3 1.079 7)T。按照投影值z*的大小得到最终的目标威胁度排序(2,3,5,1,4),与文献[4]得到的威胁度排序完全一致。

文献[29]选取空中作战中威胁目标的空战能力、角度、距离和速度作为评估目标威胁指标,采用离差最大化方法对空战目标进行威胁度评估。根据计算模型给出了8架敌机与我机的空战态势表,规范化处理后得到决策矩阵X 为:

使用CMFO 算法优化求解,得到最优投影方向a*=(0.720 8 0 0.693 1 0)T,将a*代入公式(12)后得到8 架敌机的投影值z*=(0.910 2 0.956 6 1.005 8 1.122 8 1.084 7 0.971 7 0.937 0 0.960 6)T按照投影值z*的大小得到最终的目标威胁度排序(4,5,3,6,8,2,7,1),与文献[29]得到的威胁度排序(4,5,3,6,8,7,2,1)基本一致,只是在目标7和目标2的次序上有差别。

5.2 空袭目标威胁评估

文献[30]选取了空袭目标的飞行高度、飞行速度、飞临时间、航路捷径、目标类型等五个指标,采用了与文献[29]相同的方法(离差最大化)对空袭目标威胁程度进行评估。根据隶属度函数确定空袭目标决策矩阵,并进行归一化得到决策矩阵X 为:

使用CMFO算法优化求解,得到最优投影方向a*=(0.173 8 0.840 4 0 0.513 4 0)T,将a*代入公式(12)后得到4 种空袭目标的投影值z*=(1.030 3 0.261 5 1.029 5 0.140 0)T。按照投影值z*的大小得到最终的目标威胁度排序(1,3,2,4),与文献[30]得到的威胁度排序完全一致。

6 结语

本文提出了一种基于CMFO 算法的投影寻踪威胁目标评估模型。该模型利用投影寻踪将威胁目标评估的多维数据投影到一维空间(投影特征值),降低了评价的难度。在投影过程中,提出了一种混沌增强的MFO算法优化最佳投影方向。方案集在最佳投影方向上投影后得到的投影值,作为方案排序的依据。整个评估过程中,并不需要获取各指标的权重,依据投影特征值即可确定目标威胁的高低。有效弥补了传统目标威胁评估中指标权重难以确定或主观因素较多的不足。实验验证了该方法的有效性,为威胁目标评估提供了更加准确和客观的评估方法,具有良好的应用前景。文中投影指标函数的密度窗口参数在PPC中非常关键,然而目前密度窗口的确定还缺乏理论依据。因此,下一步可考虑构造更加实际、可行的投影指标函数。

猜你喜欢

飞蛾投影火焰
最亮的火焰
可爱的你
Trolls World Tour魔发精灵2
解变分不等式的一种二次投影算法
缤纷的火焰
基于最大相关熵的簇稀疏仿射投影算法
飞蛾说
找投影
漂在水上的火焰
找投影