胡永迅,姜媛媛,夏玲
(安徽理工大学 电气与信息工程学院,安徽 淮南,232001)
2020年冬季,沿海各省相继发布有序用电或限电通知。通知要求企业要实行错峰生产,非必需的景观亮化设施应该全部关闭,在用电高峰期应该避免使用大功率的家用电器。综合分析电力供应偏紧的主要原因有工业生产快速恢复拉动用电增长、极寒天气的到来进一步增加用电负荷,且外受电能力有限和机组故障增加的影响电力保供困难。电力系统的可靠运行决定着人们生产生活的稳定有序进行。
输电线路的负荷预测是保障电网可靠运行的重要研究内容。事实证明,对于输电线路精确的负荷预测,可以为电力运行制定出更加合理的方案,从而给社会创造一定的经济价值。现在的电力系统技术发展日新月异,传统负荷预测技术的预测精度有待进一步提高[1],电力部门也越来越需要更加精准的负荷预测结果。因此,通过遗传算法对常规的输电线路负荷预测模型进行优化升级,进一步提高负荷预测的准确性就显得很有必要。
关于负荷预测问题,国内外学者提出了很多种研究方法。文献[2]提出了以径向基神经网络预测输电线路动态容量的方法,预测4 h的稳态负载能力可以将误差控制在40%以内。文献[3]提出了基于自组织特征神经网络和最小二乘支持向量机的短期电力负荷预测方法。这种方法虽然得到了较为理想的预测结果,但是计算量比较大。文献[4]提出了一种基于多源数据和模型融合的超短期母线负荷预测方法,这种方法虽然预测结果较为理想,但是需要采集最高气温、最低气温以及风向等大量的数据,存在一定的难度。因此,有必要进一步研究在使用有限的样本数据下,预测方法不仅简便快捷,而且能够取得理想的预测结果。
本文通过智能算法中比较经典的遗传算法来寻找BP神经网络最优的权值和阈值,以提高BP神经网络的收敛速度,避免陷入局部最优解,从而提高网络的预测精度[5]。每年的夏季和冬季都是用电的高峰期,因此,本文选取了最为关键的影响因素即环境温度作为神经网络的输入[6]。这与基于统计的方法相比,具有更强的鲁棒性和更准确的负荷预测效果。
BP神经网络算法包含两部分内容,分别是信号的前向传播和误差的反向传播。实际输出的计算从输入到输出的方向,而权值和阈值的调整从输出到输入的方向进行。BP神经网络是一种多层前馈神经网络,它由输入层、隐含层和输出层组成[7]。如图1所示为具有代表性的3层BP神经网络的结构示意图,不同层之间采用全互联方式,同层之间不存在相互连接,隐含层可以选择1层或者是多层。
图1 三层BP神经网络的结构图Fig.1 Architecture diagram of three-layer BP neural network
1.1.1 信号的前向传播过程
隐含层第i个节点的输入ni:
(1)
隐含层第i个节点的输出oi:
(2)
输出层第k个节点的输入nk:
(3)
输出层第k个节点的输出ok:
(4)
式中:ωij为隐含层第i个节点到输入层第j个节点间的权值;θi为隐含层第i个节点的阈值;φ为隐含层的激励函数;ωki为输出层第k个节点到隐含层第i个节点间的权值;ak为输出层第k个节点的阈值;ψ为输出层的激励函数。
1.1.2 误差的反向传播过程
首先,逐层计算输出层每个神经元的输出误差。然后,使用误差梯度下降法对各层的权值和各节点阈值进行调整,使调整后的神经网络输出能够更加接近期望值。
每个样本p的二次型误差准则函数为
(5)
系统对p个训练样本的总误差准则函数为
(6)
输出层权值调整公式:
(7)
输出层阈值调整公式:
(8)
隐含层权值调整公式:
(9)
隐含层阈值调整公式:
(10)
1.2.1 神经网络算法流程和实现
本文输入参数有2个,分别为日最高和日最低环境温度,输出参数只有日平均负荷,所以,可以设置BP神经网络结构为2—5—1。输入层共有2个节点,输出层共有1个节点,隐含层共有5个节点,所以,权值有15个,阈值有6个,遗传算法编码的长度为21。
网络创建完成后就要对网络进行训练。训练是一个不断调整权值和阈值的过程,使输出误差变得越来越小。训练结束后就可以对网络进行测试。
神经网络的权值和阈值是通过随机初始化为某一区间的随机数,这些参数对网络训练的结果影响较大,导致输出结果的精度不同。如果能够确定网络的权值和阈值,就能确定网络的输出结果。由于BP神经网络容易陷入局部极小状态,学习效率低,收敛速度慢[8],因此,引入遗传算法这一智能算法对其进行优化升级[9]。
遗传算法优化BP神经网络算法流程见图2。算法主要分为:BP神经网络的结构确定;遗传算法优化权值、阈值和BP神经网络的训练和预测。
图2 算法流程图Fig.2 Algorithm flow chart
1.2.2 遗传算法实现
遗传算法是通过模仿生物界中“物竞天择、适者生存”演化法则而得到的一种进化算法。遗传算法的优点是稳定性好,过程比较简单,容易与其他智能算法相结合等。由于遗传算法从问题解的串集开始搜索,而不是从单个解开始,覆盖面比较大,因此,能够更好地选择全局最优解[10]。
遗传算法的操作就是一种优胜劣态的进化过程。在确定了实际问题参数集后,首先,对参数集进行编码。然后,初始化群体。通过位串解码的参数、计算目标函数值、函数值向适应值映射和适应值调整对群体进行评价。如果评价后的群体满足停止条件,那么就可以直接结束。如果评价后的群体不满足停止条件,那么就进行选择、交叉和变异操作产生新一代的群体,然后继续对群体进行评价,直到满足停止规则才结束。
遗传算法优化BP神经网络主要包括种群的初始化、适应度函数、选择算子、交叉算子和变异算子[11]。
种群初始化。首先,随机产生N个初始串数据,每串数据代表1个个体,所有的个体构成了1个群体。遗传算法就是以这些初始串数据为起点开始进化。在本文中个体编码方法采用了实数编码的方式,每一个个体都是1个实数串。个体包含了神经网络中的所有权值和阈值。在网络结构已经确定的情况下,就形成了结构、权值和阈值确定的网络。
适应度函数。适应度是指对环境的适应程度,它可以表达个体的优劣性。对于不同的问题,适应度函数的选择也是不同的,需要具体问题具体分析。适应度函数是用来计算个体在群体中被使用的概率。在本文中把BP神经网络的预测输出和期望输出间的误差绝对值之和作为个体适应度F,它的计算公式是:
(11)
式中:n为网络的输出节点;yi为第i个节点的输出期望;oi为第i个节点输出。
选择操作。选择操作的目的是从目前的群体中挑选出优良的个体作为父代用来繁殖下一代。选择操作正是达尔文适者生存原则的最大体现,它的准则是对环境适应性强的个体为繁殖后代的概率更大。常见的选择方法有适应度比例方法、随机遍历抽样法、局部选择法等。本文遗传算法选择操作选用轮盘赌法,这是一种基于适应度比例的选择方法。每个个体i的选择概率pi为
(12)
交叉操作。遗传算法中最为重要的操作就是交叉操作,通过此操作可以得到组合父辈个体特性的新一代个体,体现了信息交换的重要思想。本文使用实数交叉法来实现交叉操作。第k个染色体ak和第l个染色体al在j位的交叉操作如下:
(13)
式中:b为[0,1]间的随机数。
变异操作。变异的个体是在群体中随机选择的,被选中的个体以一定的概率随机地改变串结构数据中某个串的值。因为生物界变异出现的概率通常比较低,所以,遗传算法中变异概率通常取值很小。第i个个体的第j个基因aij进行变异操作的方法如下:
(14)
式中:amax和amin分别为基因aij的上界和下界;f(g)=r2(1-g/Gmax)2;r2是1个随机数;g为当前迭代次数;Gmax为最大进化次数;r是闭区间0到1上的1个随机数。
本文遗传优化参数设置见表1。
表1 遗传优化参数
本文以某市2019年11月1日至2020年7月17日电网线路在线监测系统采集的260 d负荷和每天最高和最低环境温度进行算法验证。采样间隔为15 min,1天共采样96次,然后得到日平均负荷作为网络的输出。输入参数分别为日最高和日最低环境温度。选取前250组数据作为训练样本,后10组数据作为预测样本。采用相对误差和均方误差指标对模型预测性能进行评价。
相对误差(E):
(15)
均方误差(MSE):
(16)
本案例的输入参数是2个,输出参数是1个,可以建立结构为2—5—1的网络,即输入层是2个节点,隐含层是5个节点,输出层是1个节点。输入为日最高环境温度、日最低环境温度,输出为输电线路负荷。
优化后的神经网络权值和阈值见图3。优化后输入层隐含层间的权值分别为0.276 9,-2.47,0.944 1,1.872,1.227,-2.139,2.197,-2.18,0.179 6和0.746 5。隐含层节点阈值分别为-1.504,-1.734,1.89,-2.534和-2.717。隐含层输出层间权值分别为-0.638 7,-1.687,-1.401,-0.823和-1.034。输出层节点阈值为2.998。
图3 最优初始权值和阈值Fig.3 Optimal initial weight and threshold
在BP神经网络模型中,权值和阈值的选择对预测结果影响较大,本文通过遗传算法这一智能算法准确获得了最优的权值和阈值。其次,隐含层个数的选择对预测结果有影响,本文通过经验公式和实验比较,最终确定隐含层个数为5。预测结果见图4。
图4 预测结果对比图Fig.4 Comparison chart of prediction results
预测模型预测值与实际值见表2。通过表2可以看出,优化后最大相对误差从15.38%降为9.18%,相对误差的变化范围缩小。优化后均方误差从14 831.166降低为3 619.706 8。BP神经网络建模仿真时间为2.484 4 s。GA优化后BP神经网络再建模仿真时间为0.125 s。优化后的网络不仅减小了预测误差,而且提高了收敛速度,取得了理想的预测结果。
表2 预测模型预测值与实际值
利用BP神经网络对输电线路负荷进行预测时,网络的权值和阈值是通过随机初始化为某一区间的随机数,这些参数的选择对网络预测结果影响较大,不同权值和阈值的选择会导致预测结果精度不同。为了提高网络的预测精度,提出一种基于GA-BP的输电线路负荷预测研究方法,采用遗传算法对BP神经网络的权值和阈值进行优化。经过优化,均方误差从14 831.166降低为3 619.706 8,与优化前的BP神经网络相比,输电线路负荷预测的误差降低,预测精度提高。