APP下载

基于改进灰狼算法自适应BP神经网络的电量预测研究

2024-12-12李广胜

电脑知识与技术 2024年29期

关键词:狼群优化算法;BP神经网络;参数优化

0 引言

灰狼优化方法,是由Mirjalili等在2014年发明的较新颖的元启发式智能优化方法。因只需较少参数条件和较好的搜索最优解的能力,得到学者们的广泛关注。当前,灰狼优化算法逐渐应用于各个领域,例如传感器训练、图像处理、负荷调度、参数优化等。但是,类似于其他的智能优化算法,GWO算法也面临如求解的精确度较差、容易进入局部优化和收敛速度较慢等难题。为克服以上困难,国内外科研学者们提供了不同的改进版本,如:文献[1]给出了修正遗传算法和BP算法相结合的方法,并应用于求解网络的阈值和权值参数。文献[2]提出了一种改进的灰狼算法优化BP神经网络来解决预测住宅工程造价问题。文献[3] 提出了使用混沌映射初始化种群、非线性收敛和动态权重策略来优化BP神经网络的初始权值和阈值问题,有效地提高了检测精度和稳定性。尽管以上学者对GWO算法进行了一些优化,但算法在搜索准确度、寻优稳定性以及收敛速率上仍有改善空间。

对此,论文从初始种群出发,提出一种修正的GWO算法,考虑优化参数要求必须为正整数,所以论文采用取整化和反向修正策略改善初始种群,保证算法计算的正常进行;通过修正后的GWO算法应用到BP神经网络模型中,可以较好地适用于算法计算,并构建稳定的神经网络模型用于电量预测中。通过与原始BP网络选取默认调节常数得到的拟合数值进行比较,结果显示改进算法在测试结果中表现较好。

1 灰狼优化算法

灰狼也是所有犬科哺乳动物中的最高捕食者,它们占据了食物链的中心顶点[4]。因为灰狼是一种群居动物,所以它们狩猎过程通常是一群狼围攻猎物。每个群一般都由5~12只的狼所构成,并且狼群内存在着相当严密的社会政治阶层,主要分为α、β、δ、ω 四个级别;它们的社会等级、结构分布如图1所示。

灰狼的捕猎活动主要包括如下三方面:包围、猎捕和攻击。按照灰狼算法的基本理念以及对灰狼系统的结构等级做出了相应的数学模型,把前面三匹最优的狼依次描述成α、β、δ,它们共同引导着ω 狼向着狩猎任务前进。剩余的狼将被认定为ω,它们以α、β、δ为核心,调整更新下一代灰狼种群的位置,以此达到寻优目的。在觅食活动中,依据猎物的所在位置,狼群需要对猎物进行包围,使用公式(1)~(4)对狼群位置进行相应调整:

其中:t 是目前的迭代代数,A → 和C → 是系数向量;基于数学建模的散度,可以用A → > 1或者<-1的随机值来强迫灰狼与猎物分开,或者如果用A → > 1强迫灰狼与猎物分开, 以希望发现更好的猎物;当A → < 1时, 狼群向猎物进行了冲击。X →p 和X → 别为猎物的方位矢量和群狼的方位矢量,a 为收敛因子, 并伴随迭代频次由2线性地下降到0,如式中(5)所示,T 为最大迭代频次,r1和r2的模取[0,1]间的随机数。

式(7) 中,D → α,D →β 和D →δ 分别表示α、β、δ 与其他个体间的距离;X → α,X →β 和X →δ 分别代表α、β、δ 的当前位置;C → 1,C →2,C →3 是随机向量,X → 是当前灰狼的位置。最终由式(8)更新下一代狼群位置。

2 改进的灰狼优化算法

2.1 初始种群的改进策略

原始灰狼算法是将初始种群利用随机的方式生成,由于初始种群解会影响计算的收敛效率以及最优解的准确性,而随机生成初始种群的方式往往会让狼群勘探陷入局部最优以及求解准确度不高等问题,导致无法获得最优解。为了解决这一问题,当前很多学者采用不同的方法来优化种群:一些学者利用混沌映射算法对狼群初始化,有效解决初始种群分布不均的问题,但是混沌算法也有局限性,例如参数少、映射范围小、实现混沌行为所需条件较多的问题,这就可能导致在某一特定较小范围内,狼群出现两极分化的现象[5];也有一些学者使用高斯函数来解决初始种群分布不均的问题,虽然高斯函数很好地保证了狼群多样性和狼群均匀分布,但是有些区域具有特殊性,可能还会出现局部最优值准确度不理想的情况,从而无法进行最优估计分析;还有学者提出使用精英反向学习策略,较好地使种群保持多样性,但在一些特定的边界搜索区域,狼群难以探勘,仍会出现求解精度不高的问题。

本文采用初始化随机种群,但传统初始种群随机解会出现数值异化现象,例如生成为浮点数或者负数等不符合算法计算的数值,由于BP神经网络的隐含层节点的个数为正整数,初始种群数值异化会导致狼群探索进程停滞。因此对于初始种群数值为浮点的问题,采用取整函数进行校正操作,如式(9)所示;对于初始种群在勘探过程中出现越界现象,采用反向修正策略处理获得反向解,如式(10)所示,以期达到算法计算的条件。

2.2 收敛因子

原始灰狼优化方法收敛因子是从2线性地下降到0,如图2所示。在迭代过程中,随着收敛因子线性下降,狼群会不断逐步缩小搜寻范围,并最终确定搜索目标,如式(11)所示,其中,t 为当前迭代次数,Tmax为最大迭代次数。

2.3 算法实施流程

改进的灰狼优化算法具体实施步骤如图3所示。

3 IGWO-BP 自适应模型构建

3.1 神经网络模型的节点选取

BP神经网络的拓扑结构一般包含三层前馈网,即输入层、隐含层和输出层,具体结构如图4所示。

对于一般神经网络模型参数设定为:输入层包含m 个节点,输出层包含n 个节点,隐含层的神经元的个数一般由公式(12)确定,具体公式如下:

其中,h 为隐含层节点数目,m 为输入层节点数目,n为输出层节点数目,a为1~10之间的调节常数。

在BP神经网络模型中,隐含层节点个数的选择对于神经网络模型的学习能力和泛化性能具有重要影响,但是目前没有比较成熟的隐含层节点个数的选择方法,因此本文考虑引入灰狼算法对神经网络模型的调节常数进行寻优,通过寻优结果来确定隐含层的节点数,具体操作步骤如下。

步骤1:初始种群优化,将调节常数作为初始狼群,通过取整和绝对化操作保证调节常数数值在算法的计算过程中正常运行,调节常数取值在[1,10]之间。

步骤2:适应度评价函数,根据式(12)得出的隐含层节点数目依次带入神经网络中进行计算,再将由不同隐含层节点数构建的神经网络模型所得出的预测值与实际值进行比较,使用平均绝对百分比误差作为适应度函数作为输出,具体计算公式见式(13)。

其中,n为样本数量,p 为预测值,a为实际值。

步骤3:计算新个体的适应值,通过步骤2得到的不同网络结构的适应度函数值,重新加入到灰狼群体进行比较,通过灰狼进行迭代优化,选择适应较优的前三的优秀狼群个体,作为下一代种群更新的初始群狼,判断是否达到最大迭代次数,到了转到步骤7,否则返回到步骤2,继续迭代。

步骤4:确定最优个体,最优个体就是当前的对于该网络模型最优的隐含层的个数。ff37e46ff912a68630f86a7ed6495e075f96fe36c578e6e7c5ef8b3e5b7b6af1

3.2 实例分析

鉴于我国目前发电主要方式是火电和水电,因此通过使用湖北省2023年3月至2023年12月总体发电量数据与火力发电量及水力发电量作为原始数据集来拟合总体发电量走势,利用IGWO-BP模型对数据集训练及拟合预测,选择2023年3-8月的火力和水力发电量数据作为输入层的训练数据集,输入神经元个数为2,2023年9-12月的火力和水力发电量数据为测试集;隐含层神经元个数由灰狼算法优化的结果确定;选择2023年3-8月的总发电量为输出层训练数据集,输出神经元个数为1,2023年9-12月的总发电量则为需要拟合预测数据,电量数据如下表1,模型参数:灰狼个体为10,进化迭代次数200,BP网络的学习率为0.001,迭代次数为1 000,利用MATLAB2017a,得到结果如表2,原始神经网络的默认调节参数通过取上下限平均值(调节常数值为5)得到的拟合结果如表3所示,通过优化后的神经网络模型自适应调节隐含层节点(最优调节常数为2)来预测拟合2023年9-12月总体发电量的趋势,得到结果如表4所示。

3.3 结果分析

通过表3及表4拟合得到的样本残差数值以及相对误差来看,可以得出IGWO-BP神经网络拟合的单个样本数据误差相对较小;文章采用平均相对误差作为最终判断样本拟合的效果,可以看出,IGWO-BP神经网络与原始选取默认调节常数的得到拟合数值效果相对较优。

4 结束语

论文针对灰狼的种群多样性较低、种群数值异化问题,提供了一个可以改进种群策略来优化神经网络模型的调节常数,对于通过原始种群数值不稳定性的情况,利用取整校正策略及反向修正策略操作来改善初始种群勘探停滞行为。通过采集湖北省2023年3 月-12 月的总发电量、火力及水力发电量数据用IGWO-BP模型,将数据集划分为训练集和测试集两部分进行样本训练;实验结果表明,与初始BP网络选取默认调节常数拟合数值结果进行比较,证明了改进方法的合理性。论文中提到改进灰狼优化方法在搜索质量以及算法的稳定性均有很好的效果。但是收敛效率上方面表现还不够好,后续将进一步研究提升算法的收敛速度。