·694· 智能系统学报 第13卷 算法。由于其参数少、模型简单、算法性能好而 4)随机扰动: 获得大量运用。但是在处理复杂的优化问题时, 其易陷入局部极值和出现算法后期收敛速度变慢 D,=D- (4) 的问题。极限学习机5-是一种针对单隐含层前 式中:Dm[0.002,0.010]ms是最大扰动速度;6为 馈神经网络(single-hidden layer feedforward neural 每个变量服从(-1,1)均匀分布的方向矢量。 netwark,SLFN)的算法。该算法与传统训练方法 5)状态更新: 相比,具有学习速度快、泛化性能好的优点,但对 (5) 初始权值与阈值过度依赖。为解决上述缺点, X(+A)=X()+dX dt 本文提出了OKH算法,利用收集到的目标威胁 式中:△为时间间隔,必须根据实际问题进行选择。 度数据建立了目标威胁估计模型(extrem learning 最后,重复进行受诱导运动、觅食行为、随机 machine,ELM),并使用反向磷虾群算法优化 扰动,直到满足最大迭代次数后寻优停止。 ELM模型的初始参数。为了验证本模型的可靠 1.2改进的磷虾群算法 性,将本模型与其他几种神经网络模型作了对比 研究可以发现,对于标准磷虾群算法,随着迭 研究。 代次数的不断增加,所有磷虾个体都朝同方向运 动,使得磷虾群趋同性变得严重。本文采用 1反向磷虾群算法 反向学习策略3对标准磷虾群算法的初始种群 与迭代后的种群进行改进,成功改善了磷虾个体 1.1标准磷虾群算法 的分布特性和算法的寻优范围,使得算法精度和 KH算法是基于自然界磷虾群寻找食物和相 收敛速度得到较大提高。本算法主要有以下两点 互通信的模拟,采用拉格朗日模型模拟磷虾的移 动且引入了遗传算子来提高物种多样性⑧。在 改进。 KH算法中,每个磷虾都代表了n维解空间中的 1)优化初始种群位置 一个潜在解,磷虾食物代表了算法寻优需要找到 即使没有先验知识的情况下,利用反向点,也 的全局最优解。与其他仿生算法相比,磷虾群算 能获得一组较好的初始候选解(初始种群)。过程 法实现起来较为容易,除了时间间隔依据需求人 如下: 为设定,剩余参数都取自真实生态的研究结果, 随机初始化种群P。 所以有效避免了因参数设置不当而导致的算法性 ②计算反向种群OP,即 能下降问题。该算法具体流程如下。 OPab=Xa+ya-Pab (6) 1)磷虾个体的速度更新公式为 式中:a=1,2,…,Np;b=1,2,…,n;OPab和Pab分别 X:=N:+F:+D 表示反向种群位置与种群位置中a维第b个变量 (1) dt 的值;x和y分别表示第a维元素的最大值和最小值。 式中:X,为磷虾的状态;N,为受诱导运动的速度 ③分别计算P与OP中个体的适应度,从中 矢量;F为觅食行为的速度矢量;D:为随机扰动 取适应度值较好的n个体生成新的初始种群NP。 的速度矢量;下标i表示第i只磷虾。 2)优化迭代过程中的种群位置 2)受诱导运动: 同理,如果在迭代的过程中也使用类似的反 Niew Nmaxa+Nold (2) 向学习方法,就能够提高算法的全局搜索能力。 式中:N"为新的受诱导运动速度矢量;Naew= 算法迭代开始前,设置反向学习优化选择概率 0.01m/s为最大诱导速度;wn∈(0,1)是受诱导运动 P。每当完成一次迭代,计算出新的种群位置后, 的惯性权重;N是上次的受诱导运动速度矢量; 依据p来决定是否对种群进行反向学习优化(p a,为移动方向,a=a,c+a,aoca为相邻磷虾的 的大小根据实际需要决定)。过程如下: 方向引导,a是最优磷虾的方向引导。 ①生成一个随机数rand(0,I)。如果rand(0,I)K 3)觅食行为: p,则转入②,否则,直接进入算法下一轮迭代。 Fgw=V(Bood+B)+Fo (3) ②计算动态反向种群OP: 式中:F"表示觅食行为产生的速度矢量;V,是觅 OP=Min +Max-P (7) 食速度,一般取0.02m/s;o,(0,1)是觅食行为的惯 式中,Min。与Max分别表示第1次迭代第a维元素 性权重;B,是食物的吸引力;B,是从迭代开始 的最小值与最大值。 到当前时刻个体i的最优状态;F是上一次觅食 ③使用适应度评价函数计算P和与其对应 行为产生的速度矢量。 的OP中个体的适应度值。如果f<,则用OP,算法。由于其参数少、模型简单、算法性能好而 获得大量运用。但是在处理复杂的优化问题时, 其易陷入局部极值和出现算法后期收敛速度变慢 的问题[4]。极限学习机[5-6]是一种针对单隐含层前 馈神经网络 (single-hidden layer feedforward neural netwark, SLFN) 的算法。该算法与传统训练方法 相比,具有学习速度快、泛化性能好的优点,但对 初始权值与阈值过度依赖[7]。为解决上述缺点, 本文提出了 OKH 算法,利用收集到的目标威胁 度数据建立了目标威胁估计模型 (extrem learning machine,ELM) ,并使用反向磷虾群算法优化 ELM 模型的初始参数。为了验证本模型的可靠 性,将本模型与其他几种神经网络模型作了对比 研究。 1 反向磷虾群算法 1.1 标准磷虾群算法 KH 算法是基于自然界磷虾群寻找食物和相 互通信的模拟,采用拉格朗日模型模拟磷虾的移 动且引入了遗传算子来提高物种多样性[8-9]。在 KH 算法中,每个磷虾都代表了 n 维解空间中的 一个潜在解,磷虾食物代表了算法寻优需要找到 的全局最优解。与其他仿生算法相比,磷虾群算 法实现起来较为容易,除了时间间隔依据需求人 为设定,剩余参数都取自真实生态的研究结果, 所以有效避免了因参数设置不当而导致的算法性 能下降问题[10]。该算法具体流程如下。 1) 磷虾个体的速度更新公式为 dXi dt = Ni + Fi + Di (1) 式中:Xi 为磷虾的状态;Ni 为受诱导运动的速度 矢量;Fi 为觅食行为的速度矢量;Di 为随机扰动 的速度矢量;下标 i 表示第 i 只磷虾。 2) 受诱导运动: Ni new = N maxαi +ωnNi old (2) Ni new N new ∈ 式中: 为新的受诱导运动速度矢量; = 0.01 m/s 为最大诱导速度;ωn (0,1) 是受诱导运动 的惯性权重;Ni old 是上次的受诱导运动速度矢量; αi 为移动方向,αi=αi local+αi target ,αi local 为相邻磷虾的 方向引导,αi target 是最优磷虾的方向引导。 3) 觅食行为: F new i = Vf ( β food i +β best i ) +ωf F old i (3) ∈ 式中:Fi new 表示觅食行为产生的速度矢量;Vf 是觅 食速度,一般取 0.02 m/s;ωf (0,1) 是觅食行为的惯 性权重;βi food 是食物的吸引力;βi best 是从迭代开始 到当前时刻个体 i 的最优状态;Fi old 是上一次觅食 行为产生的速度矢量。 4) 随机扰动: Di = D max ( 1− I Imax ) δ (4) 式中:D ∈ δ max [0.002,0.010] m/s 是最大扰动速度; 为 每个变量服从 (–1,1) 均匀分布的方向矢量。 5) 状态更新: Xi(t+ ∆t) = Xi(t)+ ∆t dXi dt (5) 式中: ∆t 为时间间隔,必须根据实际问题进行选择。 最后,重复进行受诱导运动、觅食行为、随机 扰动,直到满足最大迭代次数后寻优停止。 1.2 改进的磷虾群算法 研究可以发现,对于标准磷虾群算法,随着迭 代次数的不断增加,所有磷虾个体都朝同方向运 动,使得磷虾群趋同性变得严重[11-12]。本文采用 反向学习策略[13-14]对标准磷虾群算法的初始种群 与迭代后的种群进行改进,成功改善了磷虾个体 的分布特性和算法的寻优范围,使得算法精度和 收敛速度得到较大提高。本算法主要有以下两点 改进。 1) 优化初始种群位置 即使没有先验知识的情况下,利用反向点,也 能获得一组较好的初始候选解 (初始种群)。过程 如下: ①随机初始化种群 P。 ②计算反向种群 OP,即 OPa,b = xa +ya − Pa,b (6) a = 1,2,··· ,Np b = 1,2,··· ,n OPa,b Pa,b xa ya 式中: ; ; 和 分别 表示反向种群位置与种群位置中 a 维第 b 个变量 的值; 和 分别表示第 a 维元素的最大值和最小值。 ③分别计算 P 与 OP 中个体的适应度,从中 取适应度值较好的 n 个体生成新的初始种群 NP。 2) 优化迭代过程中的种群位置 同理,如果在迭代的过程中也使用类似的反 向学习方法,就能够提高算法的全局搜索能力。 算法迭代开始前,设置反向学习优化选择概率 p。每当完成一次迭代,计算出新的种群位置后, 依据 p 来决定是否对种群进行反向学习优化 (p 的大小根据实际需要决定)。过程如下: ①生成一个随机数 rand(0,1)。如果 rand(0,1)< p,则转入②,否则,直接进入算法下一轮迭代。 ②计算动态反向种群 OP: OPa,b = Mint a +Maxt a − Pa,b (7) Mint a Maxt 式中, 与 a分别表示第 t 次迭代第 a 维元素 的最小值与最大值。 f ′ i < fi ③使用适应度评价函数计算 P 和与其对应 的 OP 中个体的适应度值。如果 ,则用 OPi ·694· 智 能 系 统 学 报 第 13 卷