CN115689070A - 基于帝王蝶算法优化bp神经网络模型的能源预测方法 - Google Patents

基于帝王蝶算法优化bp神经网络模型的能源预测方法 Download PDF

Info

Publication number
CN115689070A
CN115689070A CN202310000659.6A CN202310000659A CN115689070A CN 115689070 A CN115689070 A CN 115689070A CN 202310000659 A CN202310000659 A CN 202310000659A CN 115689070 A CN115689070 A CN 115689070A
Authority
CN
China
Prior art keywords
butterfly
neural network
imperial
population
network model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310000659.6A
Other languages
English (en)
Other versions
CN115689070B (zh
Inventor
丁贵立
颜高洋
刘文轩
许志浩
康兵
张兴旺
程巧
曹昆峰
郑芯蕊
杨勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanchang Institute of Technology
Original Assignee
Nanchang Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanchang Institute of Technology filed Critical Nanchang Institute of Technology
Priority to CN202310000659.6A priority Critical patent/CN115689070B/zh
Publication of CN115689070A publication Critical patent/CN115689070A/zh
Application granted granted Critical
Publication of CN115689070B publication Critical patent/CN115689070B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,该方法针对能源消费总量及其影响因素的数据建立BP神经网络模型;通过归一化函数将所有数据归一化消除量纲影响;并通过帝王蝶算法对确定BP神经网络模型的初始权重、初始阈值;将最终得到的初始权重、初始阈值代回BP神经网络模型对测试集的能源消费总量进行预测。本发明将帝王蝶算法应用到BP神经网络模型中,降低了单一BP神经网络模型预测的随机性,缩小了预测误差范围,也提高了BP神经网络模型的预测精度,其方法相对简单,预测效果更优。

Description

基于帝王蝶算法优化BP神经网络模型的能源预测方法
技术领域
本发明属于能源预测技术领域,具体涉及一种基于帝王蝶算法优化BP神经网络模型的能源预测方法。
背景技术
为了应对全球严峻的环境污染和气候变化问题,要有效地控制能源消费带来的碳排放,制定高污染、高排放行业绿色、低碳转型路线。
BP神经网络是一种按误差逆传播算法训练的多层前馈网络,是应用最广泛的神经网络模型之一。它由信息的正向传播和误差的反向传播两个过程组成。神经网络的核心成分是人工神经元,每个神经元接收来自其他几个神经元的输入,将它们乘以各自分配的权重,然后再相加,最后把相加的总和传递给一个或多个神经元。当把很多神经元多层放置并堆叠在一起时,就形成了神经网络。通过给定训练集的输入数据,它会根据输出值与实际值的误差不断调整权重,直到能将每个输入映射到正确的输出。因其非线性映射能力很强,所以被广泛应用于受复杂因素影响的预测问题中。但是BP神经网络的初始权重和阈值为随机赋值,这会导致其预测结果的误差波动较大,因此提出了一种帝王蝶算法优化BP神经网络的初始权重和阈值来缩小其预测结果的误差范围,提高预测精度。
帝王蝶算法(Monarch Butterfly Optimization,MBO)是一种受帝王蝶迁徙行为启发的智能优化算法。帝王蝶优化算法有两个算子:具有局部搜索能力的迁移算子和具有全局搜索能力的调整算子,可同时确定帝王蝶的搜索方向,适合并行处理。通过迁移操作和适应性操作,可以更新帝王蝶中的个体位置。在解决全局数值优化等问题时,帝王蝶优化算法的性能比较优越。其收敛速度快,局部精细搜索能力强,但是其全局搜索能力一般,易陷入局部最优。因此,如何将改进的帝王蝶算法应用于能源消费预测,解决神经网络预测过于随机的问题是目前迫切需要解决的。
发明内容
本发明的目的在于克服现有技术的不足,提供一种设计合理、准确可靠且易于工程实现的基于帝王蝶算法优化BP神经网络模型的能源预测方法,本发明引入柯西变异因子进一步改进帝王蝶算法,来增强算法的抗扰动能力,提高算法全局的搜索能力,防止陷入局部最优解,利用改进的帝王蝶算法解决了单一BP神经网络模型的随机性导致的预测结果误差区间较大的问题。
本发明解决现有的技术问题是采取以下技术方案实现的:
一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,包括以下步骤:
步骤1、将能源消费总量及其影响因素的历史数据划分为训练集和测试集;
对于由能源消费总量以及它的五个影响因素组成的第k组数据列γk=[γk(1),γk(2), γk(3),γk(4), γk(5), γk(6)], γk(i) >0,k=1,2,…,n;i=1,2,…,6,取n组数据列的部分划分为训练集,剩下的数据列划分为测试集;
式中,γk(1)代表第k组数据的年末常住人口数、γk(2)代表第k组数据的地区生产总值、γk(3)代表第k组数据的地区生产总值指数、γk(4)代表第k组数据的人均年收入、γk(5)代表第k组数据的年平均气温、γk(6)代表第k组数据的能源消费总量;
步骤2、使用归一化函数将训练集和测试集的所有数据归一化;
归一化函数为:
Figure 58079DEST_PATH_IMAGE001
,(γk(i)>0,k=1,2,…,n;i=1,2,…,6)
式中,min γk(i)为数据列γk中的最小值,max γk(i)为数据列γk中的最大值,f (γk(i))为归一化处理后的数据列各元素的值;即经过归一化处理后的第k组数据列为
Figure 889769DEST_PATH_IMAGE002
= [f(γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5)), f(γk(6))];
步骤3、设置BP神经网络基本参数;
步骤4、针对BP神经网络模型的初始权重ω、初始阈值θ,建立平均绝对误差目标函数;
Figure 801224DEST_PATH_IMAGE003
式中,f(ω,θ)为平均绝对误差目标函数;
步骤5、通过帝王蝶算法对平均绝对误差目标函数进行求解,确定BP神经网络模型的初始权重ω、初始阈值θ;
步骤6、将初始权重ω、初始阈值θ代回BP神经网络模型进行训练,将能源消费总量的影响因素输入训练好的BP神经网络模型对能源消费总量进行预测。
进一步优选,所述步骤3的具体实现方法包括以下步骤:
步骤3.1、在归一化后的训练集数据列中取能源消费总量的五个影响因素f(γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5))作为BP神经网络模型的输入值,能源消费总量f(γk(6))作为BP神经网络模型的输出值;
步骤3.2、设置BP神经网络模型基本参数:输入层节点数、隐含层节点数、输出层节点数、训练次数、学习速率、最大误差、激活函数。
进一步优选,步骤5的具体过程如下:
步骤5.1、初始化帝王蝶个体的位置状态为向量σ=(ω,θ),向量ω,θ分别对应BP神经网络模型的初始权重ω、初始阈值θ,每只帝王蝶的位置组合了初始权重ω、初始阈值θ参数的信息,并且每只帝王蝶代表平均绝对误差目标函数的一个解,设置帝王蝶算法的初始参数:帝王蝶个体总数N、最大迭代次数tmax、帝王蝶种群分为第一种群和第二种群,第一种群和第二种群的种群数量分别为P1和P2、帝王蝶迁移率p、迁移周期peri、调整率BAR、帝王蝶步长S、最大步长Smax,随机生成共N个帝王蝶个体,每个帝王蝶个体都是满足平均绝对误差目标函数的潜在解;
步骤5.2、根据平均绝对误差目标函数,在迭代初始阶段对种群进行适应度值计算并按照从优到劣排序,平均绝对误差越小,表明个体适应度越高,选取出本次迭代适应度值高的帝王蝶个体,作为精英个体保留下来;
步骤5.3、将帝王蝶个体总数N根据帝王蝶迁移率p划分为第一种群和第二种群两部分,即第一种群数量P1=N×P,第二种群数量P2=N×(1-P),执行迁移算子更新第一种群的帝王蝶,执行调整算子更新第二种群的帝王蝶,将迭代后的新种群整合,重新计算适应度值;
步骤5.4、将适应度最低的五个帝王蝶个体进行柯西函数变异操作,用适应度高的帝王蝶个体取代适应度低的帝王蝶个体,将替换后的种群作为下一次迭代的初始种群;
步骤5.5、记录每次迭代中适应度值最优的帝王蝶个体,重复迭代过程直到达到最大迭代次数tmax,从每次迭代的最优帝王蝶个体中选择适应度最高的帝王蝶作为优化后的最终输出。
进一步优选,迁移算子和调整算子的具体执行方式如下:
第一种群中的帝王蝶行为为迁徙,对第一种群中的帝王蝶个体,迁移算子表示为
Figure 99482DEST_PATH_IMAGE004
,式中,
Figure 424284DEST_PATH_IMAGE005
为第t+1次迭代产生的帝王蝶个体w的第μ维,维度μ 代表一个权重或阈值,r1为第一种群中的随机帝王蝶个体,r2为第二种群中的随机帝王蝶 个体,
Figure 59664DEST_PATH_IMAGE006
为第t次迭代产生的第一种群中的随机帝王蝶个体r1的第μ维,
Figure 560047DEST_PATH_IMAGE007
为第t次迭 代产生的第二种群中的随机帝王蝶个体r2的第μ维,rand为[0,1]之间均匀分布的随机实 数;迁移算子的含义为根据产生的随机数τ=rand×prei与帝王蝶迁移率p的大小关系,
Figure 294785DEST_PATH_IMAGE005
分别来自第t次迭代中第一种群和第二种群中的随机帝王蝶个体;维度μ的取值范围为[-3, 3];当随机数τ≤帝王蝶迁移率p时,
Figure 169200DEST_PATH_IMAGE005
Figure 277446DEST_PATH_IMAGE008
替换,当随机数τ>帝王蝶迁移率p时,
Figure 491389DEST_PATH_IMAGE005
Figure 600291DEST_PATH_IMAGE007
替换;
第二种群中的帝王蝶行为为适应环境,对第二种群中的帝王蝶个体,调整算子为:
Figure 634106DEST_PATH_IMAGE009
当随机实数rand≤帝王蝶迁移率p时,根据
Figure 548972DEST_PATH_IMAGE010
来调整位置,即
Figure 351843DEST_PATH_IMAGE011
来自第t次迭代第一种群和第二种群中最优帝王蝶个体的第μ维
Figure 756280DEST_PATH_IMAGE012
,当随机实数rand >帝王蝶迁移率p时,帝王蝶个体按
Figure 277391DEST_PATH_IMAGE013
更新当前的位置;在此基础上,如果进 一步满足随机数rand>调整率BAR,则该帝王蝶个体的位置则进一步更新为
Figure 730369DEST_PATH_IMAGE014
,在帝王蝶算法中调整率BAR与帝王蝶迁移率 p相等,帝王蝶最大步长Smax与当前迭代次数t平方的比值称为权重因子,
Figure 853658DEST_PATH_IMAGE015
通过莱维飞行公式计算而来,
Figure 101100DEST_PATH_IMAGE016
为第t次迭代中帝王蝶个体w的行走步 长,
Figure 375087DEST_PATH_IMAGE017
为第t次迭代产生的帝王蝶个体w。
进一步优选,柯西变异方式为:
Figure 366176DEST_PATH_IMAGE018
其中,
Figure 143640DEST_PATH_IMAGE019
为第t次迭代产生的帝王蝶个体w的第μ维,Cauchy(0,1)为柯西随机变 量生成函数,
Figure 561983DEST_PATH_IMAGE020
,ε为[0,1]之间均匀分布的随机实数。
进一步优选,BP神经网络模型的训练方法为:
对于输入层的n组5元素输入数据列F(γk(i))=f(γk(i)),γk(i)>0,k=1,2,…,n;i=1,2, …,5(即输入层神经元节点数为5)以及n组1元素输出数据列f(γk(6)),k=1,2,…,n(即输出层神经元节点数为1),隐含层神经元节点数为d,隐含层神经元节点的输入为Vk,j,k=1,2,…,n;j=1,2, …,d,第k组输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权重为ωij,第k组输入数据列对应第j个隐含层神经元节点的输出阈值为θk,j,输入层的输入数据与隐含层神经元节点输入的关系为:
Figure 792107DEST_PATH_IMAGE021
当第j个隐含层神经元节点的输入大于0时才会继续输出Ik,j,k=1,2,…,n;j=1,2,…,d,其关系为:
Figure 321308DEST_PATH_IMAGE022
式中,
Figure 973786DEST_PATH_IMAGE023
为激活函数,输出层神经元节点的输入为Ok,k=1,2,…,n,第j个隐含层神 经元节点的输出Ik,j对应输出层神经元节点的权重为ωj,隐含层神经元节点的输出对应输 出层神经元节点的输出阈值为θk,输出层的输入Ok与隐含层输出Ik,j的关系为:
Figure 563030DEST_PATH_IMAGE024
输出层神经元节点再次判断其输入是否大于0,若大于0,则最后通过激活函数输出预测数据列Yk(6),其关系为:
Figure 811609DEST_PATH_IMAGE025
然后开始计算神经网络输出的误差Ek:Ek=
Figure 144501DEST_PATH_IMAGE026
,若误差没有达到设定 的值,则开始误差反向传播,使用梯度下降法调整BP神经网络的参数,权重更新公式为:
Figure 958873DEST_PATH_IMAGE027
Figure 250177DEST_PATH_IMAGE028
阈值更新公式为:
Figure 454894DEST_PATH_IMAGE029
Figure 591477DEST_PATH_IMAGE030
式中
Figure 932460DEST_PATH_IMAGE031
为更新后的第j个隐含层神经元节点的输出Ik,j对应输出层神经元节点的 权重;
Figure 126156DEST_PATH_IMAGE032
为更新后的输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权 重;
Figure 21431DEST_PATH_IMAGE033
为更新后的第k组输入数据列对应第j个隐含层神经元节点的输出阈值;
Figure 961705DEST_PATH_IMAGE034
为更新后 的隐含层神经元节点的输出对应输出层神经元节点的输出阈值;α为学习速率,表示每次参 数更新的幅度大小;权重和阈值调整完毕后进行下一轮训练,重复权重和阈值更新过程,直 到误差Ek符合要求或者达到规定的最大迭代次数后完成BP神经网络模型的训练。
本发明的优点和积极效果是:
本发明将在解决全局数值优化等问题时,性能优越的帝王蝶算法(MonarchButterfly Optimization,MBO)引入到BP神经网络模型关键参数初始权重和初始阈值的寻优过程,提出基于帝王蝶算法优化BP神经网络模型,将平均绝对误差函数作为帝王蝶算法的目标函数,通过帝王蝶算法对目标函数进行求最优解,同时通过引入柯西变异来增加扰动,提高算法全局的搜索能力,防止陷入局部最优解,确保能源消费预测结果的精确性。本发明将改进的帝王蝶算法应用到BP神经网络模型中,解决了单一BP神经网络模型的随机性导致的预测结果误差区间较大的问题,也提高了BP神经网络的拟合度和预测精度,其方法相对简单,预测效果更优。
附图说明
图1为本发明的基于帝王蝶算法优化BP神经网络模型的能源预测方法流程框图。
图2为均权GM(1,1)模型预测的某省能源消费总量预测曲线图。
图3为黄金分割优化权值的GM(1,1)模型预测的某省能源消费总量预测曲线图。
图4为BP神经网络模型预测的某省能源消费总量预测曲线图。
图5为帝王蝶算法优化BP神经网络模型预测的某省能源消费总量预测曲线图。
图6为采用帝王蝶算法对BP神经网络模型参数优化的平均绝对误差收敛图。
具体实施方式
以下结合附图对本发明实施例做进一步详述。
本发明的设计思想为:采用帝王蝶算法MBO与BP神经网络模型融合对模型的初始权重ω、初始阈值θ两个参数进行优化,采用平均绝对误差函数为帝王蝶算法MBO的目标函数,将帝王蝶算法应用到BP神经网络模型中,解决了单一BP神经网络模型的随机性导致的预测结果误差区间较大的问题,也提高了BP神经网络模型的拟合度和预测精度,迭代方法简单,收敛速度快,易于工程实现。并且在帝王蝶算法中,每只帝王蝶都是满足目标函数的一个潜在解,通过迁移算子和调整算子来更新种群中帝王蝶的搜索方向,通过柯西变异来增加扰动,跳出局部最优。个体的适应度与目标函数相关联,每次迭代中适应度高的精英个体直接进入下一代,以避免帝王蝶种群的质量随着迭代次数的增加而下降。循环迭代直到达到最大迭代次数,最终从每次迭代的最优个体中选出适应度最优的个体,以此达到优化目的。
基于上述设计思想,本发明提出一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,如图1所示,包括以下步骤:
步骤1、将能源消费总量及其影响因素的历史数据划分为训练集和测试集;
对于由能源消费总量以及它的五个影响因素组成的第k组数据列γk=[γk(1),γk(2), γk(3), γk(4), γk(5), γk(6)], γk(i)>0,k=1,2,…,n;i=1,2,…,6,取n组数据列的部分划分为训练集,剩下的数据列划分为测试集;
式中,γk(1)代表第k组数据的年末常住人口数、γk(2)代表第k组数据的地区生产总值、γk(3)代表第k组数据的地区生产总值指数、γk(4)代表第k组数据的人均年收入、γk(5)代表第k组数据的年平均气温、γk(6)代表第k组数据的能源消费总量。
步骤2、使用归一化函数将训练集和测试集的所有数据归一化。
在本步骤中,根据步骤1所得数据列,建立如下归一化函数为:
Figure 422773DEST_PATH_IMAGE035
,(γk(i)>0,k=1,2,…,n;i=1,2,…,6)。
式中,minγk(i)为数据列γk中的最小值,maxγk(i)为数据列γk中的最大值,f (γk(i))为归一化处理后的数据列各元素的值。即经过归一化处理后的第k组数据列为
Figure 118197DEST_PATH_IMAGE002
= [f(γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5)), f(γk(6))]。
步骤3、设置BP神经网络模型基本参数。本步骤的具体实现方法包括以下步骤:
步骤3.1、在归一化后的训练集数据列中取能源消费总量的五个影响因素f(γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5))作为BP神经网络模型的输入值,能源消费总量f(γk(6))作为BP神经网络模型的输出值;
步骤3.2、设置BP神经网络模型基本参数:输入层节点数、隐含层节点数、输出层节点数、训练次数、学习速率、最大误差、激活函数。
步骤4、针对BP神经网络模型的初始权重ω、初始阈值θ,建立平均绝对误差目标函数。
在本步骤中,针对
Figure 297505DEST_PATH_IMAGE036
Figure 775891DEST_PATH_IMAGE037
两个参数,根据预测值与输出值构造出平均绝对误差目标函 数:
Figure 91466DEST_PATH_IMAGE038
式中,f(ω,θ)为平均绝对误差目标函数。
步骤5、通过帝王蝶算法对目标函数进行求解,确定BP神经网络模型的初始权重ω、初始阈值θ。本步骤的具体实现方法包括以下步骤:
步骤5.1、初始化帝王蝶个体的位置状态为向量σ=(ω,θ),向量的两个参数分别对应BP神经网络模型的初始权重ω、初始阈值θ,每只帝王蝶的位置组合了初始权重ω、初始阈值θ参数的信息,并且每只帝王蝶代表平均绝对误差目标函数的一个解,设置帝王蝶算法的初始参数:帝王蝶个体总数N、最大迭代次数tmax、帝王蝶种群分为第一种群和第二种群,第一种群和第二种群的种群数量分别为P1和P2、帝王蝶迁移率p、迁移周期peri、调整率BAR、帝王蝶步长S、最大步长Smax,随机生成共N个帝王蝶个体,每个帝王蝶个体都是满足平均绝对误差目标函数的潜在解;
步骤5.2、根据平均绝对误差目标函数,在迭代初始阶段对种群进行适应度值计算并按照从优到劣排序,平均绝对误差越小,表明个体适应度越高,选取出本次迭代适应度值高的帝王蝶个体,作为精英个体保留下来;
步骤5.3、将帝王蝶个体总数N根据帝王蝶迁移率p划分为第一种群和第二种群两部分,即第一种群数量P1=N×P,第二种群数量P2=N×(1-P),执行迁移算子更新第一种群的帝王蝶,执行调整算子更新第二种群的帝王蝶,将迭代后的新种群整合,重新计算适应度值;
两个算子的具体执行方式如下:
第一种群中的帝王蝶行为为迁徙,对第一种群中的帝王蝶个体,迁移算子表示为
Figure 629895DEST_PATH_IMAGE004
,式中,
Figure 496832DEST_PATH_IMAGE005
为第t+1次迭代产生的帝王蝶个体w的第μ维,维度 μ代表一个权重或阈值,r1为第一种群中的随机帝王蝶个体,r2为第二种群中的随机帝王蝶 个体,
Figure 513330DEST_PATH_IMAGE006
为第t次迭代产生的第一种群中的随机帝王蝶个体r1的第μ维,
Figure 948990DEST_PATH_IMAGE007
为第t次 迭代产生的第二种群中的随机帝王蝶个体r2的第μ维,rand为[0,1]之间均匀分布的随机实 数;迁移算子的含义为根据产生的随机数τ=rand×prei与帝王蝶迁移率p的大小关系,
Figure 392741DEST_PATH_IMAGE005
分别来自第t次迭代中第一种群和第二种群中的随机帝王蝶个体;维度μ的取值范围为[-3, 3];当随机数τ≤帝王蝶迁移率p时,
Figure 546642DEST_PATH_IMAGE005
Figure 632410DEST_PATH_IMAGE008
替换,当随机数τ>帝王蝶迁移率p时,
Figure 922577DEST_PATH_IMAGE005
Figure 130704DEST_PATH_IMAGE007
替换;
第二种群中的帝王蝶行为为适应环境,对第二种群中的帝王蝶个体,调整算子为:
Figure 771901DEST_PATH_IMAGE009
当随机实数rand≤帝王蝶迁移率p时,根据
Figure 127271DEST_PATH_IMAGE010
来调整位置,即
Figure 740786DEST_PATH_IMAGE011
来自第t次迭代第一种群和第二种群中最优帝王蝶个体的第μ维
Figure 791919DEST_PATH_IMAGE012
,当随机实数 rand>帝王蝶迁移率p时,帝王蝶个体按
Figure 185991DEST_PATH_IMAGE013
更新当前的位置;在此基础上,如 果进一步满足随机数rand>调整率BAR,则该帝王蝶个体的位置则进一步更新为
Figure 816824DEST_PATH_IMAGE014
,在帝王蝶算法中调整率BAR与帝王蝶迁移率p 相等,帝王蝶最大步长Smax与当前迭代次数t平方的比值称为权重因子,
Figure 81583DEST_PATH_IMAGE015
通过莱维飞行公式计算而来,
Figure 631513DEST_PATH_IMAGE016
为第t次迭代中帝王蝶个体w的行走步长,
Figure 981723DEST_PATH_IMAGE017
为第t次迭代 产生的帝王蝶个体w;
步骤5.4、将适应度最低的五个帝王蝶个体进行柯西函数变异操作,用适应度高的帝王蝶个体取代适应度低的帝王蝶个体,将替换后的种群作为下一次迭代的初始种群;
对种群中适应度最差的五个帝王蝶个体进行柯西变异,其变异方式为:
Figure 947405DEST_PATH_IMAGE018
步骤5.5、记录每次迭代中适应度值最优的帝王蝶个体,重复迭代过程直到达到最 大迭代次数
Figure 63741DEST_PATH_IMAGE039
,从每次迭代的最优帝王蝶个体中选择适应度最高的帝王蝶作为优化后的 最终输出。
步骤6、将初始权重ω、初始阈值θ代回BP神经网络模型进行训练,将能源消费总量的影响因素输入训练好的BP神经网络模型对能源消费总量进行预测。本步骤的具体实现方法包括以下步骤:
步骤6.1、根据帝王蝶算法优化后的BP神经网络模型的初始权重ω、初始阈值θ,开始BP神经网络模型的训练;
BP神经网络的具体训练方法为:
对于输入层的n组5元素输入数据列F(γk(i))=f(γk(i)),γk(i)>0,k=1,2,…,n;i=1,2, …,5(即输入层神经元节点数为5)以及n组1元素输出数据列f(γk(6)),k=1,2,…,n(即输出层神经元节点数为1),隐含层神经元节点数为d,隐含层神经元节点的输入为Vk,j,k=1,2,…,n;j=1,2, …,d,第k组输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权重为ωij,第k组输入数据列对应第j个隐含层神经元节点的输出阈值为θk,j,输入层的输入数据与隐含层神经元节点输入的关系为:
Figure 659939DEST_PATH_IMAGE021
当第j个隐含层神经元节点的输入大于0时才会继续输出Ik,j,k=1,2,…,n;j=1,2,…,d,其关系为:
Figure 294182DEST_PATH_IMAGE022
式中,
Figure 1238DEST_PATH_IMAGE023
为激活函数,输出层神经元节点的输入为Ok,k=1,2,…,n,第j个隐含层神 经元节点的输出Ik,j对应输出层神经元节点的权重为ωj,隐含层神经元节点的输出对应输 出层神经元节点的输出阈值为θk,输出层的输入Ok与隐含层输出Ik,j的关系为:
Figure 975011DEST_PATH_IMAGE040
输出层神经元节点再次判断其输入是否大于0,若大于0,则最后通过激活函数输出预测数据列Yk(6),其关系为:
Figure 538847DEST_PATH_IMAGE041
然后开始计算神经网络输出的误差Ek:Ek=
Figure 129228DEST_PATH_IMAGE042
,若误差没有达到设定 的值,则开始误差反向传播,使用梯度下降法调整BP神经网络的参数,权重更新公式为:
Figure 499030DEST_PATH_IMAGE027
Figure 262062DEST_PATH_IMAGE043
阈值更新公式为:
Figure 324696DEST_PATH_IMAGE044
Figure 871215DEST_PATH_IMAGE045
式中
Figure 982390DEST_PATH_IMAGE031
为更新后的第j个隐含层神经元节点的输出Ik,j对应输出层神经元节点的 权重;
Figure 196334DEST_PATH_IMAGE032
为更新后的输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权 重;
Figure 305236DEST_PATH_IMAGE046
为更新后的第k组输入数据列对应第j个隐含层神经元节点的输出阈值;
Figure 339051DEST_PATH_IMAGE034
为更新后 的隐含层神经元节点的输出对应输出层神经元节点的输出阈值;α为学习速率,表示每次参 数更新的幅度大小;权重和阈值调整完毕后进行下一轮训练,重复权重和阈值更新过程,直 到误差Ek符合要求或者达到规定的最大迭代次数后完成BP神经网络模型的训练。
步骤6.2、训练完毕后,取测试集数据列中能源消费总量的五个影响因素f(γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5))作为训练完成的BP神经网络模型的输入值,即可输出BP神经网络模型的预测值,然后将预测值反归一化后即可得到实际预测值。
下面以一个具体实例对本发明预测结果进行验证。
在本实例中,选取1999年至2020年某省年末常住人口数、地区生产总值(地区GDP)、地区生产总值指数、人均年收入、年平均气温、能源消费总量22组6维的数据列作为BP神经网络模型的原始序列,年末常住人口数、地区生产总值(地区GDP)、地区生产总值指数、人均年收入、年平均气温作为神经网络的输入,能源消费总量作为BP神经网络模型的输出。在此基础上,我们用本发明提出的帝王蝶算法优化BP神经网络模型对该段数据序列进行预测,结果如表1所示:
Figure 988338DEST_PATH_IMAGE047
表1描述了三种预测模型与本发明所提帝王蝶算法优化BP神经网络模型对某省1999年至2020年能源消费总量预测值与实际值对比,可以看出帝王蝶算法优化BP神经网络模型的预测值更接近实际值,说明了本发明所提方法的正确性。
图2-图5为对表1中的历史数据和各预测算法的预测数据进行图形化,图2为均权GM(1,1)模型预测的某省能源消费总量预测曲线图,图3为黄金分割优化权值的GM(1,1)模型预测的某省能源消费总量预测曲线图,图4为BP神经网络模型预测的某省能源消费总量预测曲线图,图5为帝王蝶算法优化BP神经网络模型预测的某省能源消费总量预测曲线图。从图中也可清晰看出四种算法对实际值的拟合度以及平均相对误差大小,说明了本发明所提算法误差更小,能更好地预测能源消费总量。
图6表示帝王蝶算法对BP神经网络模型参数优化的平均绝对误差收敛图,由图6可以看出经过10次迭代后平均绝对误差即可收敛到0.0166左右,收敛速度较快,表明了本发明所提方法的迭代方法简单,收敛速度快,易于工程实现。
四种模型的平均绝对误差MAE、平均相对误差MAPE两种精度指标的比对结果如表2所示:
Figure 56788DEST_PATH_IMAGE048
从数据结果可以看出,帝王蝶算法优化BP神经网络模型的预测精度要高于均权GM(1,1)模型、黄金分割优化权值的GM(1,1)模型和BP神经网络模型。验证了本算法的准确性和优越性。需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。

Claims (6)

1.一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:包括以下步骤:
步骤1、将能源消费总量及其影响因素的历史数据划分为训练集和测试集;
对于由能源消费总量以及它的五个影响因素组成的第k组数据列γk=[γk(1), γk(2), γk(3),γk(4), γk(5), γk(6)], γk(i) >0,k=1,2,…,n;i=1,2,…,6,取n组数据列的部分划分为训练集,剩下的数据列划分为测试集;
式中,γk(1)代表第k组数据的年末常住人口数、γk(2)代表第k组数据的地区生产总值、γk(3)代表第k组数据的地区生产总值指数、γk(4)代表第k组数据的人均年收入、γk(5)代表第k组数据的年平均气温、γk(6)代表第k组数据的能源消费总量;
步骤2、使用归一化函数将训练集和测试集的所有数据归一化;
归一化函数为:
Figure 541699DEST_PATH_IMAGE001
式中,minγk(i)为数据列γk中的最小值,maxγk(i)为数据列γk中的最大值,f(γk (i))为归一化处理后的数据列各元素的值;即经过归一化处理后的第k组数据列为
Figure 396522DEST_PATH_IMAGE002
=[f (γk(1)), f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5)), f(γk(6))];
步骤3、设置BP神经网络基本参数;
步骤4、针对BP神经网络模型的初始权重ω、初始阈值θ,建立平均绝对误差目标函数;
Figure 783117DEST_PATH_IMAGE003
式中,f(ω,θ)为平均绝对误差目标函数;
步骤5、通过帝王蝶算法对平均绝对误差目标函数进行求解,确定BP神经网络模型的初始权重ω、初始阈值θ;
步骤6、将初始权重ω、初始阈值θ代回BP神经网络模型进行训练,将能源消费总量的影响因素输入训练好的BP神经网络模型对能源消费总量进行预测。
2.根据权利要求1所述的一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:所述步骤3的具体实现方法包括以下步骤:
步骤3.1、在归一化后的训练集数据列中取能源消费总量的五个影响因素 f(γk(1)),f(γk(2)), f(γk(3)), f(γk(4)), f(γk(5))作为BP神经网络模型的输入值,能源消费总量 f(γk(6))作为BP神经网络模型的输出值;
步骤3.2、设置BP神经网络基本参数:输入层节点数、隐含层节点数、输出层节点数、训练次数、学习速率、最大误差、激活函数。
3.根据权利要求2所述的一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:所述步骤5的具体实现方法包括以下步骤:
步骤5.1、初始化帝王蝶个体的位置状态为向量σ=(ω,θ),向量ω,θ分别对应BP神经网络模型的初始权重ω、初始阈值θ,每只帝王蝶的位置组合了初始权重ω、初始阈值θ参数的信息,并且每只帝王蝶代表平均绝对误差目标函数的一个解,设置帝王蝶算法的初始参数:帝王蝶个体总数N、最大迭代次数tmax、帝王蝶种群分为第一种群和第二种群,第一种群和第二种群的种群数量分别为P1和P2、帝王蝶迁移率p、迁移周期peri、调整率BAR、帝王蝶步长S、最大步长Smax,随机生成共N个帝王蝶个体,每个帝王蝶个体都是满足平均绝对误差目标函数的潜在解;
步骤5.2、根据平均绝对误差目标函数,在迭代初始阶段对种群进行适应度值计算并按照从优到劣排序,平均绝对误差越小,表明个体适应度越高,选取出本次迭代适应度值高的帝王蝶个体,作为精英个体保留下来;
步骤5.3、将帝王蝶个体总数N根据帝王蝶迁移率p划分为第一种群和第二种群两部分,即第一种群数量P1=N×P,第二种群数量P2=N×(1-P),执行迁移算子更新第一种群的帝王蝶,执行调整算子更新第二种群的帝王蝶,将迭代后的新种群整合,重新计算适应度值;
步骤5.4、将适应度最低的五个帝王蝶个体进行柯西变异操作,用适应度高的帝王蝶个体取代适应度低的帝王蝶个体,将替换后的种群作为下一次迭代的初始种群;
步骤5.5、记录每次迭代中适应度值最优的帝王蝶个体,重复迭代过程直到达到最大迭代次数tmax,从每次迭代的最优帝王蝶个体中选择适应度最高的帝王蝶作为优化后的最终输出。
4.根据权利要求3所述的一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:迁移算子和调整算子的具体执行方式如下:
第一种群中的帝王蝶行为为迁徙,对第一种群中的帝王蝶个体,迁移算子表示为
Figure 116009DEST_PATH_IMAGE004
,式中,
Figure 399223DEST_PATH_IMAGE005
为第t+1次迭代产生的帝王蝶个体w的第μ维,维度 μ代表一个权重或阈值,r1为第一种群中的随机帝王蝶个体,r2为第二种群中的随机帝王蝶 个体,
Figure 34735DEST_PATH_IMAGE006
为第t次迭代产生的第一种群中的随机帝王蝶个体r1的第μ维,
Figure 3565DEST_PATH_IMAGE007
为第t次 迭代产生的第二种群中的随机帝王蝶个体r2的第μ维,rand为[0,1]之间均匀分布的随机实 数;迁移算子的含义为根据产生的随机数τ=rand×prei与帝王蝶迁移率p的大小关系,
Figure 832760DEST_PATH_IMAGE005
分别来自第t次迭代中第一种群和第二种群中的随机帝王蝶个体;维度μ的取值范围为[-3, 3];当随机数τ≤帝王蝶迁移率p时,
Figure 924475DEST_PATH_IMAGE005
Figure 121101DEST_PATH_IMAGE008
替换,当随机数τ>帝王蝶迁移率p时,
Figure 544605DEST_PATH_IMAGE005
Figure 484879DEST_PATH_IMAGE007
替换;
第二种群中的帝王蝶行为为适应环境,对第二种群中的帝王蝶个体,调整算子为:
Figure 945948DEST_PATH_IMAGE009
当随机实数rand≤帝王蝶迁移率p时,根据
Figure 516737DEST_PATH_IMAGE010
来调整位置,即
Figure 961625DEST_PATH_IMAGE011
来自 第t次迭代第一种群和第二种群中最优帝王蝶个体的第μ维
Figure 174432DEST_PATH_IMAGE012
,当随机实数rand>帝 王蝶迁移率p时,帝王蝶个体按
Figure 755586DEST_PATH_IMAGE013
更新当前的位置;在此基础上,如果进 一步满足随机数rand>调整率BAR,则该帝王蝶个体的位置则进一步更新为
Figure 356331DEST_PATH_IMAGE014
,在帝王蝶算法中调整率BAR与帝王蝶迁移率p相 等,帝王蝶最大步长Smax与当前迭代次数t平方的比值称为权重因子,
Figure 22936DEST_PATH_IMAGE015
通过莱维飞行公式计算而来,
Figure 302083DEST_PATH_IMAGE016
为第t次迭代中帝王蝶个体w的行走步长,
Figure 737744DEST_PATH_IMAGE017
为第t次迭代 产生的帝王蝶个体w。
5.根据权利要求4所述的一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:柯西变异方式为:
Figure 650336DEST_PATH_IMAGE018
其中,
Figure 538658DEST_PATH_IMAGE019
为第t次迭代产生的帝王蝶个体w的第μ维,Cauchy(0,1)为柯西随机变量生 成函数,
Figure 624425DEST_PATH_IMAGE020
,ε为[0,1]之间均匀分布的随机实数。
6.根据权利要求5所述的一种基于帝王蝶算法优化BP神经网络模型的能源预测方法,其特征在于:BP神经网络模型的训练方法为:
对于输入层的n组5元素输入数据列F(γk(i))=f(γk(i)),γk(i)>0,k=1,2,…,n;i=1,2, …,5,以及n组1元素输出数据列f(γk(6)),k=1,2,…,n,隐含层神经元节点数为d,隐含层神经元节点的输入为Vk,j,k=1,2,…,n;j=1,2, …,d,第k组输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权重为ωij,第k组输入数据列对应第j个隐含层神经元节点的输出阈值为θk,j,输入层的输入数据与隐含层神经元节点输入的关系为:
Figure 242489DEST_PATH_IMAGE021
当第j个隐含层神经元节点的输入大于0时才会继续输出Ik,j,k=1,2,…,n;j=1,2, …,d,其关系为:
Figure 122720DEST_PATH_IMAGE022
式中,
Figure 498338DEST_PATH_IMAGE023
为激活函数,输出层神经元节点的输入为Ok,k=1,2,…,n,第j个隐含层神经元 节点的输出Ik,j对应输出层神经元节点的权重为ωj,隐含层神经元节点的输出对应输出层 神经元节点的输出阈值为θk,输出层的输入Ok与隐含层输出Ik,j的关系为:
Figure 122217DEST_PATH_IMAGE024
输出层神经元节点再次判断其输入是否大于0,若大于0,则最后通过激活函数输出预测数据列Yk(6),其关系为:
Figure 529540DEST_PATH_IMAGE025
然后开始计算神经网络输出的误差Ek:Ek=
Figure 783935DEST_PATH_IMAGE026
,若误差没有达到设定的 值,则开始误差反向传播,使用梯度下降法调整BP神经网络的参数,权重更新公式为:
Figure 646849DEST_PATH_IMAGE027
Figure 74419DEST_PATH_IMAGE028
阈值更新公式为:
Figure 401495DEST_PATH_IMAGE029
Figure 623529DEST_PATH_IMAGE030
式中
Figure 973739DEST_PATH_IMAGE031
为更新后的第j个隐含层神经元节点的输出Ik,j对应输出层神经元节点的权重;
Figure 939421DEST_PATH_IMAGE032
为更新后的输入数据列的第i个元素f(γk(i))对应第j个隐含层神经元节点的权重;
Figure 527528DEST_PATH_IMAGE033
为更新后的第k组输入数据列对应第j个隐含层神经元节点的输出阈值;
Figure 651955DEST_PATH_IMAGE034
为更新后的隐含 层神经元节点的输出对应输出层神经元节点的输出阈值;α为学习速率,表示每次参数更新 的幅度大小;权重和阈值调整完毕后进行下一轮训练,重复权重和阈值更新过程,直到误差 Ek符合要求或者达到规定的最大迭代次数后完成BP神经网络模型的训练。
CN202310000659.6A 2023-01-03 2023-01-03 基于帝王蝶算法优化bp神经网络模型的能源预测方法 Active CN115689070B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310000659.6A CN115689070B (zh) 2023-01-03 2023-01-03 基于帝王蝶算法优化bp神经网络模型的能源预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310000659.6A CN115689070B (zh) 2023-01-03 2023-01-03 基于帝王蝶算法优化bp神经网络模型的能源预测方法

Publications (2)

Publication Number Publication Date
CN115689070A true CN115689070A (zh) 2023-02-03
CN115689070B CN115689070B (zh) 2023-12-22

Family

ID=85057058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310000659.6A Active CN115689070B (zh) 2023-01-03 2023-01-03 基于帝王蝶算法优化bp神经网络模型的能源预测方法

Country Status (1)

Country Link
CN (1) CN115689070B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116127858A (zh) * 2023-04-13 2023-05-16 南昌工程学院 基于改进沙猫算法优化的gis设备温升预测方法及系统
CN116203365A (zh) * 2023-05-05 2023-06-02 南昌工程学院 基于野马算法优化pnn的gis设备局部放电检测方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015172560A1 (zh) * 2014-05-16 2015-11-19 华南理工大学 基于bp神经网络的中央空调冷负荷的预测方法
CN105913150A (zh) * 2016-04-12 2016-08-31 河海大学常州校区 一种基于遗传算法的bp神经网络光伏电站发电量预测方法
CN114091746A (zh) * 2021-11-17 2022-02-25 国网天津市电力公司 基于动态优化帝王蝶算法的电力能源供应调度规划方法
CN114137829A (zh) * 2021-09-28 2022-03-04 南京理工大学 基于almbo优化算法的质子交换膜燃料电池子空间辨识方法
CN114186709A (zh) * 2021-10-19 2022-03-15 国网天津市电力公司 基于帝王蝶算法优化灰色模型关键参数的能源预测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015172560A1 (zh) * 2014-05-16 2015-11-19 华南理工大学 基于bp神经网络的中央空调冷负荷的预测方法
CN105913150A (zh) * 2016-04-12 2016-08-31 河海大学常州校区 一种基于遗传算法的bp神经网络光伏电站发电量预测方法
CN114137829A (zh) * 2021-09-28 2022-03-04 南京理工大学 基于almbo优化算法的质子交换膜燃料电池子空间辨识方法
CN114186709A (zh) * 2021-10-19 2022-03-15 国网天津市电力公司 基于帝王蝶算法优化灰色模型关键参数的能源预测方法
CN114091746A (zh) * 2021-11-17 2022-02-25 国网天津市电力公司 基于动态优化帝王蝶算法的电力能源供应调度规划方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
傅军栋;喻勇;黎丹;: "BP神经网络在解决电力消耗问题中的应用", 华东交通大学学报, no. 02 *
胡振, 《干旱区资源与环境》, vol. 34, no. 7, pages 82 - 89 *
陈伟;徐卫华;: "棉铃虫转录因子c-Myc基因在滞育和非滞育蛹脑中的表达分析及多克隆抗体制备", 昆虫学报, no. 02 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116127858A (zh) * 2023-04-13 2023-05-16 南昌工程学院 基于改进沙猫算法优化的gis设备温升预测方法及系统
CN116203365A (zh) * 2023-05-05 2023-06-02 南昌工程学院 基于野马算法优化pnn的gis设备局部放电检测方法

Also Published As

Publication number Publication date
CN115689070B (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
CN115689070A (zh) 基于帝王蝶算法优化bp神经网络模型的能源预测方法
Juang et al. An online self-constructing neural fuzzy inference network and its applications
CN106529818B (zh) 基于模糊小波神经网络的水质评价预测方法
CN112700060B (zh) 站所终端负荷预测方法和预测装置
CN109085752B (zh) 基于角度支配关系的铝电解偏好多目标优化算法
Qiao et al. A self-organizing RBF neural network based on distance concentration immune algorithm
CN113191092A (zh) 一种基于正交增量随机配置网络的工业过程产品质量软测量方法
CN116680540A (zh) 一种基于深度学习的风电功率预测方法
CN110309907A (zh) 一种基于去跟踪自编码器的动态缺失值填补方法
CN108717506A (zh) 一种预测焦炭热态强度的方法
CN111203887A (zh) 一种基于nsga-ii模糊逻辑推理的机器人控制系统优化方法
CN113052373A (zh) 一种基于改进elm模型的月径流变化趋势预测方法
CN114282478B (zh) 一种修正可变电阻器件阵列点乘误差的方法
CN111832817A (zh) 基于mcp罚函数的小世界回声状态网络时间序列预测方法
CN111832911A (zh) 一种基于神经网络算法的水下作战效能评估方法
CN109408896B (zh) 一种污水厌氧处理产气量多元智能实时监控方法
CN114186709A (zh) 基于帝王蝶算法优化灰色模型关键参数的能源预测方法
CN112561200A (zh) 基于完备集合经验模态分解和改进蚁群优化的长短期记忆网络的风电站出力混合预测技术
CN108319146B (zh) 一种径向基神经网络基于离散粒子群训练的方法
CN115526308A (zh) 基于宽度剪枝回声状态网络的时间序列预测方法
Wu et al. Echo state network prediction based on backtracking search optimization algorithm
CN110501903B (zh) 机器人免逆解控制系统参数的自调节及优化方法
CN114202063A (zh) 一种基于遗传算法优化的模糊神经网络温室温度预测方法
CN114528094A (zh) 基于lstm和遗传算法的分布式系统资源优化分配方法
Yu et al. A combination forecasting model of extreme learning machine based on genetic algorithm optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant