本发明属于天然气负荷预测方法技术领域,具体涉及一种城市天然气时负荷预测方法。
背景技术:
随着中国工业化和城市化进程的加速推进,各行各业对天然气的需求与日俱增,由于天然气产能严重不足和消费量快速增长,已对部分城市造成“气荒”,具体表现为:高峰时段,需求量过大,管网内气压相对较低,导致许多用户不能正常用气;低谷时段,需求量较少,燃气管网内部气压过高,威胁设备安全,使得管网运行效率低下。因此,短期天然气负荷预测的研究,对于保证天然气管网用气量、优化管网的调度和设备维修具有极其重要的意义。
然而,天然气负荷除具有以周、日的周期变化特点外,还受到天气、季节、节假日等诸多因素影响,导致天然气负荷波动十分频繁,呈高度非线性、时变性、分散性和随机性等特点,准确预测难度大。传统的天然气负荷预测方法包括线性回归分析法、时间序列法和灰色系统理论,但这些方法大多是基于线性数据预测的模型,因此不适合复杂的天然气负荷预测。
技术实现要素:
本发明的目的在于针对现有技术中存在的问题提供一种基于coiflets小波和bp-elman的城市天然气时负荷预测方法,提高了城市天然气时负荷的预测精度。
本发明的技术方案是:
一种城市天然气时负荷预测方法,该预测方法基于coiflets小波和bp-elman,包括如下步骤:
(1)采集某市某天然气站的时负荷时间序列数据,采用coiflets小波对实际采集的城市天然气时负荷时间序列数据进行分解,构建基于coiflets小波和bp-elman的城市天然气时负荷预测模型;
(2)应用bp神经网络对经coiflets小波分解出来的高频分量进行预测,运用elman神经网络对分解出来的低频分量进行预测;
(3)对bp神经网络的预测结果和elman神经网络的预测结果进行重构,并将重构结果与单独应用bp神经网络和elman神经网络的预测结果进行对比,以确定构建的预测模型的预测精度和有效性。
具体的,所述的步骤(1)采用coiflets小波对实际采集的城市天然气时负荷时间序列数据进行分解的具体过程为:
采用coiflets小波基函数对采集的城市天然气时负荷时间序列进行分解,分解阶数为3阶,分解层数为4层,分解出来4个高频分量包括第三层高频分量;4个低频分量包括第一层低频分量、第二层低频分量和第三层低频分量。
coiflets小波基函数分解,mallat算法是一种按正交小波展开时间序列的分解算法和重构算法,该算法与快速fourier变换类似,具有运算快捷,设计简单等特点,是一种纯数字的递推快速算法,因此受到越来越多的应用,本发明采用mallat小波快速分解算法,将信号分解为不同频带分量,从而可以更深入分析信号的特点,若将d0理解为待分解的离散信号,根据mallat分解算法可得分解过程如图2所示。图2分解过程所依据的公式如下:
dj=ldj+1,j=1,2,…,n
aj=haj+1,j=1,2,…,n
式中:l为低通滤波器,h为高通滤波器,dj+1表示原始信号在2-(j+1)分辨率下的低频分量,aj+1表示原始信号在2-(j+1)分辨率下的高频分量,将原始离散信号d0分解为aj和d1,d2,…,dj,分别表示第j层高频分量,第一层低频分量,第二层低频分量,…,第j层低频分量,最大分解层数为n。
具体的,所述的步骤(2)的具体过程为:
①应用bp神经网络对经coiflets小波分解出来的第三层高频分量进行预测;
②采用elman神经网络对经coiflets小波分解出来的第一层低频分量、第二层低频分量和第三层低频分量分别进行预测。
①rbf神经网络预测模型
rbf(radialbasisfunction,rbf)神经网络是一种高效的前馈式神经网络,对于每个输入输出数据,只有少量的权值需要调整,并且具有学习速度快,全局逼近性和最佳逼近性能的优点,同时训练方法快速易行,因此,本发明选取rbf神经网络预测模型对分解后的高频分量进行预测。rbf神经网络由输入层,隐层和输出层组成,其完成如下非线性映射:
式中:wi为输出层与隐层之间的权重,ci为基函数的数据中心,n为神经元数,x∈rn是输入矢量
式中:σi是基函数的数据中心和宽度。
rbf神经网络在预测过程中,需要确定的主要参数为基函数的中心ci和宽度σi及输出层与隐层之间的权重wi,按如下步骤求解:
①求解中心ci和宽度σi参数
采用k-means聚类方法,训练样本是输入量进行聚类,找出聚类中心,即所需要求解的中心ci和宽度σi;
②求解网络的权值
在确定了中心ci和宽度σi后,rbf神经网络预测模型从输入到输出就变为了一个线性方程组:
采用最小二乘法对上述方程进行网络的权值wi的求解。
②elman神经网络预测模型
elman型的神经网络通常可以分为四层,分别是输入、隐含(中间)、承接及输出层。输入层和隐含层、隐含层和输出层之间的连接与前馈式神经网络的连接类似,输入层单元仅仅起到信号的传输作用,输入层的单元可以起到线性加权的作用。隐含层的单元传递函数一般可用线性或者是非线性的函数,承接层又可以称为状态层或者是上下文层,其是用来记忆隐含层单元前一时刻输出值,同时,返回给elman神经网络的输入,这样可认为是一个一步的延时算子。
elman型神经网络非线性的状态空间的表达式可以表示为:
y(k)=g(ω3x(k))
x(k)=f(ω1xc(k)+ω2(u(k-1)))
xc(k)=x(k-1)
式中:y为m维的输出结点的向量;x为n维的中间层结点的单元向量;u为r维的输入向量;xc为n维的反馈状态向量;ω3为中间层到输出层的连接权值;ω2为输入层到中间层的连接权值;ω1为承接层到中间层连接权值;g(*)为输出神经元传递函数,是中间层输出的线性组合;f(*)为中间层神经元传递函数,本发明采用的是s函数。
具体的,所述的步骤(3)的具体过程为:
①对bp神经网络预测的第三层高频分量的预测结果和elman神经网络预测的第一层低频分量、第二层低频分量和第三层低频分量的预测结果进行重构;根据重构算法可得重构过程如图3所示。图3重构过程所依据的公式如下:
d0=l*dj+1+h*aj+1
式中:l*和h*是一对对偶算子,j=n-1,n-2,…,0,采用分解出来的a1,a2,…,aj和dj分别进行重构,得到a1,a2,…,aj和dj,分别为第一层重构低频信号,第二层重构低频信号,…,第j层重构低频信号和第j层重构高频信号。
②将重构后的结果与单独应用bp神经网络和elman神经网络的预测结果进行对比,以确定本发明构建的预测模型的预测精度和有效性;
③误差评价指标如下公式所示:
分别为rsme(均方根误差)、mae(平均绝对误差)、mape(平均绝对百分误差),具体公式为:
式中:n为误差对比的总数量;lactual为实际采集的天然气负荷;lforecast为预测的天然气负荷。
具体的,所述的步骤(1)中对实际采集的天然气时负荷时间序列数据进行分解前进行预处理,所述的预处理方法是高斯平滑法。
bp神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一,bp网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程,具有强非线性拟合能力。
elman神经网络是一种典型的局部回归网络,elman网络可以看作是一个具有局部记忆单元和局部反馈连接的递归神经网络,具有强非线性拟合能力。
本发明的有益效果是:以coiflets小波基函数为基础,结合bp神经网络和elman神经网络的强非线性拟合能力,提出基于coiflets小波和bp-elman的城市天然气时负荷预测技术以提高城市天然气时负荷的预测精度。
附图说明
图1为本发明的结构示意图;
图2为mallat分解算法分解过程示意图;
图3为重构过程示意图。
图4为采集的原始数据样本示意图;
图5为对原始数据进行高斯平滑处理后数据样本示意图;
图6为coiflets小波基函数分解出来的第三层高频分量示意图;
图7为coiflets小波基函数分解出来的第一层低频分量示意图;
图8为coiflets小波基函数分解出来的第二层低频分量;
图9为coiflets小波基函数分解出来的第三层低频分量;
图10为高斯平滑后第三层高频分量;
图11为高斯平滑后第一层低频分量;
图12为高斯平滑后第二层低频分量;
图13为高斯平滑后第三层低频分量;
图14为高斯平滑后第三层高频分量训练集结果;
图15为高斯平滑后第三层高频分量测试集结果;
图16为高斯平滑后第一层低频分量训练集结果;
图17为高斯平滑后第一层低频分量测试集结果;
图18为高斯平滑后第二层低频分量训练集结果;
图19为高斯平滑后第二层低频分量测试集结果;
图20为高斯平滑后第三层低频分量训练集结果;
图21为高斯平滑后第三层低频分量测试集结果;
图22为四个分量高斯平滑处理后重构结果;
图23为四个分量测试集重构结果。
具体实施方式
下面结合实例和附图对本发明提供的一种基于coiflets小波和bp-elman的城市天然气时负荷预测方法做出详尽的说明。
图1为本发明技术路线图。首先采集某市某天然气站的时负荷时间序列数据,样本共采集30天的数据,其中每天24小时,从6月1日的8点开始采集,直到6月30日晚7点,每1小时采集1次,共计720个数据。采用coiflets小波基函数对天然气需求时间序列进行分解,应用bp神经网络对分解出来的高频分量进行预测,运用elman神经网络对分解出来的低频分量进行预测,最后进行重构,对比单独采用bp神经网络和elman神经网络的预测精度。本发明对城市天然气时负荷预测有较高的预测精度,是一种高效的城市天然气时负荷预测技术。
图4给出了采集的原始数据样本示意图,图5给出了对原始数据进行高斯平滑处理后数据样本示意图。为了提高城市天然气时负荷时间序列的预测精度,采用的预处理方法是高斯平滑法,高斯平滑法采用的阶数为3阶。
图6-图9给出了coiflets小波基函数分解出来的第三层高频分量、第一层低频分量、第二层低频分量和第三层低频分量示意图,分解的层数为3层,采用的阶数为4阶。
图10-图13给出了高斯平滑后各层分量,对经coiflets小波基函数分解出来的高频和低频分量进行平滑,高斯平滑法采用的阶数为3阶,分解对第三层高频分量、第一层低频分量、第二层低频分量和第三层低频分量进行平滑;
图14-图21给出了高斯平滑后各层分量训练集和测试集结果,bp神经网络采用的结构是(5,5),elman采用的结构是10,表1分别给出了第三层高频分量g3测试集和预测集的误差结果、第一层低频分量d1测试集和预测集的误差结果、第二层低频分量d2测试集和预测集的误差结果、第三层低频分量d3测试集和预测集的误差结果。
表1
图22给出了各层分量平滑后重构结果示意图,图23给出了测试集重构结果示意图,本发明预测方法的rmse、mae和mape值三个误差分别为165.7267、25.9097和0.0342,单独采用bp神经网络进行预测时的rmse、mae和mape值三个误差分别为1087.6037、29.1498和0.0406,单独采用elman神经网络进行预测时的rmse、mae和mape值三个误差分别为717.0347、38.1961和0.0791,与单独采用神经网络和elman神经网络进行预测,本发明在rmse、mae和mape值三个误差平滑指标上,分别降低了921.8770、3.2401和0.0064,551.308、12.2864和0.0449,由此可见,本发明在预测精度上得到了提高,验证了本发明的有效性。
综上所述,本发明在预测精度上较单独采用bp神经网络和elman神经网络得到提高,验证了本发明算法的有效性。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。