树人论文网一个专业的学术咨询网站!!!
树人论文网

基于改进神经网络的电力系统短期负荷预测

来源: 树人论文网发表时间:2019-11-28
简要:摘要: 电力系统的短期负荷预测是电力系统保证稳定运行的重要环节,也是区域配电调度的重要依据。为了提高短期负荷预测的精准度与稳定性,本文提出一种基于粒子群算法与遗传算

  摘要: 电力系统的短期负荷预测是电力系统保证稳定运行的重要环节,也是区域配电调度的重要依据。为了提高短期负荷预测的精准度与稳定性,本文提出一种基于粒子群算法与遗传算法共同优化BP神经网络的负荷预测方法。针对BP神经网络存在的权值取值不确定、收敛速度慢等问题,将粒子的维度空间与人工神经网络的权值建立映射关系,使得神经网络的均方误差作为粒子群的适应函数,同时,引入遗传算法对其迭代过程进行优化,利用遗传算法全局搜索能力对极值进行搜索,并对粒子的适应度进行分类。最后通过实例分析,证明了该方法的有效性。

  关键词: 短期负荷预测; BP神经网络; 粒子群算法; 遗传算法

电力建设论文

  1 引言

  我國是一个能源消费大国,电力产业的稳定运行是国家深化改革的有力保障,是实现两个一百年的重要基石。电力的发展往往预示着国家经济的发展水平,中国经济的持续高速增长使得全社会的用电量也保持了较快的增长趋势,然而快速增长的供电需求给电力部门带来了压力,加之电煤供应吃紧、水利供电不足等问题的影响,因此如何保障电力系统的平衡供应已经成为一个至关重要的问题[1]。

  电力系统负荷预测是指从需求供给侧出发,基于电网负荷的历史数据,结合现有的重要因素,预测接下来某段时间某地区的用电负荷值。由于现实中电能无法进行大量存储,且发电、供电、用电过程都是同时进行的,因此为了保障电力系统的稳定性和经济性,所以对地区的电力负荷预测十分重要。

  2 BP神经网络

  BP神经网络是一种误差反向传播的网络模型,它是由D.E.Rummelhart 以及 J.L.Ma Clelland于1986年提出的概念,也是当前应用最广泛的神经网络[2]。

  2.1 BP预测模型设计

  (1)网络层数:BP神经网络由一个输入层和一个输出层,以及一个以上的隐含层组成。对一般问题来说,只要增加适量的神经元节点数,单隐含层结构的神经网络就能够满足绝大多数问题的需求。

  (2)输入层节点数:输入层节点数是由实际问题和所拥有的数据集决定的,它取决于输入向量的维数,比如历史负荷数据、天气、温度、节假日类型等等。

  (3)隐含层节点数:一般来说,隐含层节点数越多,网络的性能就越好,就越能满足负荷预测的需求,但网络结构的复杂化,也会使得训练时间变长,因此如何选择既能满足网络性能也能保证收敛速度的最优节点数,是神经网络模型搭建过程中至关重要的问题。在实际的操作中,通常采用以下公式来选择最优隐含层节点数:

  (4)输出层节点数:输出层节点数是有具体问题的需求而确定的,对于一般的负荷预测,1个节点数即预测数值就可以满足预测需求。

  (5)传递函数:输出层均选用线性函数作为传递函数,而输入层和隐层的传递函数选用S型函数,如下式所示:

  (6)训练方法:在训练开始前,确定初始值作为迭代调整的起点,并用迭代调整的方式确定权值,接着对历史负荷数据进行训练。

  3 粒子群算法

  粒子群优化算法是科学家通过观察鸟群捕食过程研究而来的仿生学方法,是基于种群的随机优化技术的一种非常典型的寻优算法,于1995年由Eberhart和Kennedy提出。

  BP算法的缺点在于隐含层节点难确定、易限入局部极小值、收敛速度慢等问题。BP神经网络能否达到预期目前,与算法的选择、网络的确定、训练样本的大小都有很大关系。而粒子群算法通过概率全局搜索最优,其具有收敛速度快,鲁棒性好等优点,而神经网络模型具有一定的自学习能力。将粒子群算法与神经网络结合,利用粒子群算法来选择神经网络的权值,不但能够发挥粒子群算法的优点,还能够提高神经网络的收敛速度和学习能力[3]。

  3.1 粒子群优化步骤

  利用粒子算法对神经网络进行优化的主要工作为:将粒子维度空间与神经网络的权值建立映射关系,神经网络权值的个数对应着粒子群的个数;使粒子群的适应函数作为神经网络的均方误差。在算法的设计过程中,首先对神经网络权值进行编码,表示粒子群的个体,再按照粒子群算法进行迭代,把新生成的个体向量还原成神经网络权值,最后将输出结果用于计算样本点的均方误差,如果误差小于系统指定的误差精度,则停止训练[4]。同时,训练过程中产生的均方误差作为评价个体的适应函数,训练的目的是使均方误差指标达到最小,即:

  其中n,c分别表示样本的个数与神经网络的输出个数,tk,p为p个样本的k个理想输出,Yk,p为第p个样本的第k个实际输出。当均方误差的适应度函数达到最小时,神经网络的权值与阈值就确定了。

  具体过程如下:(1)首先确定网络规模、最大速度、搜索范围、最大迭代步数以及精度要求等。(2)其次根据粒子群的规模和权值个数确定种群。(3)计算各粒子的适应值。(4)将当前每个粒子的适应度与全局适应度值进行比较,确定每个粒子最优适应度。(5)检验迭代次数和误差要求,判断是否符合预定条件。(6)更新每个粒子的速度和位置。(7)返回步骤(3)继续迭代至结束。

  4 遗传算法

  遗传算法是模拟达尔文进化论的自然选择和遗传机理的生物进化计算模型,是一种具有适者生存、自然淘汰的一种优化算法,它能够把求解问题表示成染色体,通过编码的形式表示成字符串。在利用遗传算法求解问题时,首先要确定问题的目标函数和变量,然后对变量进行编码,这样做主要是因为在遗传算法中,问题的解是用数字串来表示的,而且遗传算子也是直接对串进行操作,编码方式可以分为二进制编码和实数编码[5]。随着遗传算法的迭代,品质优良的特征值会被逐渐被保留,并且重新组合产生新的个体。遗传操作包括三个基本的遗传算子,即选择、交叉、變异,选择和交叉能够完成大部分搜索功能,而变异则可以最大限度逼近最优解。

  遗传算法的特点是:适应度函数采用目标函数;很强的全局优化能力和搜索能力;采用启发式搜索,而不是完全的随机测试。

  4.1 遗传算法优化步骤

  将粒子群算法与遗传算法结合,对BP神经网络做优化,不仅具有粒子群算法收敛速度快的优点,而且也有遗传算法的全局收敛的优点。优化的具体过程为:

  (1)初始化种群以及设定粒子群相关参数,如最大迭代次数以及误差精度等,其中,每个粒子都对应着BP神经网络的权值。

  vi (t+1)=θ1 × vi (t)+(1-θ1)vj (t)vj (t+1)=(1-θ1)× vi (t)+θ1× vj (t)

  对粒子之间的位置交叉公式操作实现如下:

  xi (t+1)=θ2 × xi (t)+(1-θ2)xj (t)xj (t+1)=(1-θ2)× xi (t)+θ2× xj (t)

  式中的θ为一个范围在[0,1]之间的随机数,比较交叉后粒子的适应度值,保留适应度值较大的粒子进入下一次迭代,剩下的部分则进行变异操作。

  (4)更新个体和群体的全局极值,经过遗传算法的处理后,再对粒子的当前适应度值与个体极值做比较,判断是否需要更新个体极值pbest与全局极值gbest。

  (5)重复以上步骤,直到迭代数达到上限或者达到目标函数的收敛精度。

  (6)将得到的全局最优解赋值于BP神经网络的权值和阈值,通过BP神经网络再进行学习训练,得到负荷预测的网络模型。

  5 实例分析

  本文基于某县供电站的历史负荷数据,训练样本采集了2012年1月1日至2012年6月28日共180天的负荷数据。对于该负荷预测的步骤数据处理如下:

  (1)对负荷数据进行预处理,修补异常数据及缺失数据。然后对样本数据的归一化处理,将数据压缩到[0,1]或者[-1,1]区间内。

  (2)确定BP神经网络的隐藏层节点数、学习率、训练目标、迭代次数等。对于BP神经网络其学习率为0.01,误差训练的目标值为0.0001,迭代次数上限为300次。

  推荐阅读:《广西电力建设科技信息》以马列主义、毛泽东思想、邓小平理论和“三个代表”重要思想为指导,全面贯彻党的教育方针和“双百方针”,理论联系实际,开展教育科学研究和学科基础理论研究,交流科技成果,促进学院教学、科研工作的发展,为教育改革和社会主义现代化建设做出贡献。