本申请属于水位预测技术领域,具体涉及一种基于时间序列的水库水位趋势预测方法。
背景技术:
水库作为拦洪蓄水和调节水流的水利工程建筑物,水库的信息获取和管理非常重要。水文数据库中存在大量时间序列数据,发现水文时间序列中蕴藏的规律,有利于掌握水文数据变化规律和趋势,在水资源管理和水文预报方面有重要的现实意义。
传统的水库水位预测通常用水库的日水位值表征,然而,单一参数或单一特征建立的水库水位预测模型皆难以准确描述实际水库水位状态,导致水文数据的实际应用效果不佳。
技术实现要素:
本申请的目的在于提供一种基于时间序列的水库水位趋势预测方法,对水库水位的变化趋势预测准确,应用意义大。
为实现上述目的,本申请所采取的技术方案为:
一种基于时间序列的水库水位趋势预测方法,所述基于时间序列的水库水位趋势预测方法,包括:
步骤s1、获取水库的水位数据,所述水位数据包括历史水位数据和当前水位数据,采用历史水位数据构成训练集,采用当前水位数据构成测试集;
步骤s2、对所述水位数据进行滤波处理;
步骤s3、对滤波处理后的训练集按照趋势和残差进行数据序列的区分,并分别计算趋势序列和残差序列的差分阶数、自相关系数和偏相关系数;
步骤s4、根据趋势序列和残差序列的差分阶数、自相关系数和偏相关系数建立长期时间序列趋势模型、季节性时间趋势模型、周期性时间趋势模型和残差项模型;
步骤s5、根据长期时间序列趋势模型、季节性时间趋势模型、周期性时间趋势模型和残差项模型构建水库水位趋势预测模型,包括:
构建时间序列的函数如下:
y=f(tsci)
其中,y为时间序列的函数,t为长期时间序列趋势,s为季节性时间趋势,c为周期性时间趋势,i为残差项;
从而得到水库水位趋势预测模型yt为:
yt=tt+st+ct+it
其中,tt为长期时间序列趋势模型,st为季节性时间趋势模型,ct为周期性时间趋势模型,it为残差项模型;
步骤s6、采用滤波处理后的测试集验证水库水位趋势预测模型的相对误差和命中率;
步骤s7、采用最优的水库水位趋势预测模型预测水库的水位变化趋势。
作为优选,所述对水位数据进行滤波处理,包括:
采用五项滑动平均滤波器对水位数据进行滤波处理,所述五项滑动平均滤波器的差分方程为:
其中,x为输入,y为输出,n为训练集或测试集容量。
作为优选,所述计算趋势序列和残差序列的差分阶数、自相关系数和偏相关系数,包括:
1)自相关系数计算公式如下:
式中,k为变量,zt为t时刻的观测值,即t时刻的水位数据,zt-k为t-k时刻的水位数据,
2)偏自相关系数计算公式如下:
式中,k为变量,zt为t时刻的观测值,即t时刻的水位数据,zt-k为t-k时刻的水位数据,
3)根据贝叶斯准则函数法确定差分阶数。
作为优选,所述建立长期时间序列趋势模型、季节性时间趋势模型、周期性时间趋势模型和残差项模型包括:
根据长期时间序列趋势、季节性时间趋势、周期性时间趋势和残差项分别对应的差分阶数、自相关系数和偏相关系数,采用arima(d,q,p)模型分别进行建模,arima(d,q,p)模型的公式如下:
式中,wt为t时刻建立的模型,wt=δdxt=(1-l)dxt,u表示白噪声,d为差分阶数,q为自相关系数,p为偏自相关系数,xt为t时刻的影响因素,即t时刻的水位数据,
作为优选,所述采用滤波处理后的测试集验证水库水位趋势预测模型的相对误差和命中率,包括:
水库水位趋势预测模型的相对误差定义为:
其中,mse为计算得到的相对误差,
水库水位趋势预测模型的命中率定义为:
其中,l为测试集中的样本数量,ε为相对误差阈值;
若相对误差和命中率不满足要求,则重新执行步骤s3;否则输出当前的水库水位趋势预测模型作为最优的水库水位趋势预测模型。
本申请提供的基于时间序列的水库水位趋势预测方法,突破传统的单一参数或单一特征建立水库水位预测模型表征水库水位状态的局限性,利用水库水位的周期性、季节性的多参数特征对水库水位变化趋势预知的准确性,建立了基于时间序列和水位多趋势的水库水位预测模型。基于水库水位多趋势变化可超前预知水库水位变化趋势,可协助水利管理部门,在汛期对灾害程度做出客观准确的判断与分析,可以安排部署放在抗灾工作的基本前提,也可以合理分派调度抗灾资源,准确的水位信息预测对做出准确救灾决策起到至关重要的作用有重大意义。
附图说明
图1为本申请基于时间序列的水库水位趋势预测方法的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。
如图1所示,一种基于时间序列的水库水位趋势预测方法,用于水库水位的准确预测。
本实施例的基于时间序列的水库水位趋势预测方法,包括:
步骤s1、获取水库的水位数据,所述水位数据包括历史水位数据和当前水位数据,采用历史水位数据构成训练集,采用当前水位数据构成测试集。
在数据采集时,为了提高采集频率同时保障数据传输的稳定性,可以按5分钟采集一次水位数据,每15分钟上传一次水位数据的方式进行工作,且5分钟采集但未上传的水位数据存在在历史水位数据库中,本次采集同时上传的数据作为当前水位数据。
步骤s2、对所述水位数据进行滤波处理。
本实施例对原始信号中的突变信号和数据坏点等干扰项进行滤波处理,最终得到相对变化缓慢的数据。并且为了在提高数据可用性的同时保证数据的原始性,在一实施例中,采用五项滑动平均滤波器对水位数据进行滤波处理,所述五项滑动平均滤波器的差分方程为:
其中,x为输入,y为输出,n为训练集或测试集容量。
步骤s3、对滤波处理后的训练集按照趋势和残差进行数据序列的区分,并分别计算趋势序列和残差序列的差分阶数、自相关系数和偏相关系数。
按照长期时间序列趋势、季节性时间趋势和周期性时间趋势对时间序列进行分解,得到包含多趋势项的趋势序列,再结合残差序列进行d阶差分运算,得到趋势序列和残差序列的自相关系数和偏自相关系数,并分别对趋势序列和残差序列建模。
其中一个实施例中,根据贝叶斯准则函数法确定差分阶数d,并且在贝叶斯信息准则评价最小的情况下,确定自相关系数和偏自相关系数,提供的自相关系数和偏自相关系数的计算公式如下:
1)自相关系数计算公式如下:
式中,k为变量,zt为t时刻的观测值,即t时刻的水位数据,zt-k为t-k时刻的水位数据,
2)偏自相关系数计算公式如下:
式中,k为变量,zt为t时刻的观测值,即t时刻的水位数据,zt-k为t-k时刻的水位数据,
步骤s4、根据趋势序列和残差序列的差分阶数、自相关系数和偏相关系数建立长期时间序列趋势模型、季节性时间趋势模型、周期性时间趋势模型和残差项模型。
由于本实施例的水库水位趋势预测方法涉及趋势序列和残差序列,故首先需要建立各序列的最优模型,在一实施例中,各趋势根据各自对应的差分阶数、自相关系数和偏相关系数,采用arima(d,q,p)模型,即自回归移动平均模型分别进行建模,arima(d,q,p)模型的公式如下:
式中,wt为t时刻建立的模型,wt=δdxt=(1-l)dxt,u表示白噪声,d为差分阶数,q为自相关系数,p为偏自相关系数,xt为t时刻的影响因素,即t时刻的水位数据,
各趋势将步骤s3中计算得到的差分阶数、自相关系数和偏相关系数,分别利用上述公式进行建模,采用arima模型来拟合趋势序列、残差序列,得到各自最优的模型。
步骤s5、根据长期时间序列趋势模型、季节性时间趋势模型、周期性时间趋势模型和残差项模型构建水库水位趋势预测模型。
本实施例中构建的时间序列的函数如下:
y=f(tsci)
其中,y为时间序列的函数,t为长期时间序列趋势,s为季节性时间趋势,c为周期性时间趋势,i为残差项。
从而得到水库水位趋势预测模型yt为:
yt=tt+st+ct+it
其中,tt为长期时间序列趋势模型,st为季节性时间趋势模型,ct为周期性时间趋势模型,it为残差项模型。
arima(d,q,p)模型中的wt根据不同参数计算即对应为所建立的长期时间序列趋势模型tt、季节性时间趋势模型st、周期性时间趋势模型ct和残差项模型it。
得到的水库水位趋势预测模型结合了时间序列,多因素考虑进行水位预测,从而能够得到准确性高的预测结果,具有较大的实际应用意义。
步骤s6、采用滤波处理后的测试集验证水库水位趋势预测模型的相对误差和命中率。
为了得到最优的模型,需要对模型进行验证,以便于根据验证结果优化模型,本实施例根据相对误差和命中率进行模型验证,在一实施例中,水库水位趋势预测模型的相对误差定义为:
其中,mse为计算得到的相对误差,
水库水位趋势预测模型的命中率定义为:
其中,l为测试集中的样本数量,ε为相对误差阈值。
若相对误差和命中率不满足要求,则重新执行步骤s3;否则输出当前的水库水位趋势预测模型作为最优的水库水位趋势预测模型。本实施例中设定满足一小时内水位预测数据误差±8%和准确率达到85%为符合预测模型。
步骤s7、采用建立的水库水位趋势预测模型预测水库的水位变化趋势。
本实施例利用水库水位周期性、季节性特征,对水库水位序列进行周期性多趋势项、趋势性分解和残差分解,依次分析其对水库水位变化响应的影响,结合实时水库水位数据对水库水位数据的偏差影响,建立了基于时间序列的水库水位趋势预测模型,并以实际水位采集情况为研究对象,给出了基于实际运行数据的预测与分析,验证预测模型趋势预测的准确性,保证实际使用过程中模型输出的准确性。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。