水质预测方法及系统转让专利

申请号 : CN201710233920.1

文献号 : CN107153874B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李振波吴静李晨朱玲岳峻李道亮

申请人 : 中国农业大学

摘要 :

本发明提供一种水质预测方法及系统,所述方法使用ARIMA自回归积分滑动平均模型与BP神经网络相结合的方法对水质时间序列数据的预测。本发明所述方案可以对待预测水域大量水质数据进行预测,具有预测范围大、精度高和速度快的特点,便于多水源监管、水质预警、水污染治理。

权利要求 :

1.一种水质预测方法,其特征在于,包括:

步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数第一预测值;基于待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据,利用BP神经网络模型,获取所述待预测水域水质参数第二预测值;

步骤2,将所述待预测水域水质参数第一预测值和所述待预测水域水质参数第二预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果;

其中,所述步骤1进一步包括:

基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型;基于待预测水域水质参数的输入数据,利用所述水质线性数据预测模型,获取所述待预测水域水质参数第一预测值;

其中,所述步骤1进一步包括:

基于待预测水域水质参数历史时间序列数据,利用LM-BP神经网络模型,训练得到水质非线性数据预测模型;基于待预测水域气象因素时间序列数据的输入数据,利用所述水质非线性数据预测模型,获取所述待预测水域水质参数第二预测值;

其中,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:判断待预测水域水质参数历史时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;计算所述ARIMA(p,q)自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数;

其中,p为自回归项;MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。

2.如权利要求1所述的方法,其特征在于,所述基于待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据,利用BP神经网络模型,训练得到水质非线性数据预测模型的步骤进一步包括:基于待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据,利用反向传播算法对BP神经网络模型的权值和偏差进行反复的调整训练,当网络输出层的误差平方和小于阈值时,保存所述BP神经网络模型的权值和偏差。

3.如权利要求1或2任一所述的方法,其特征在于,所述步骤1前还包括:删除所述待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据中的空缺值。

4.如权利要求1所述的方法,其特征在于,ARIMA自回归积分滑动平均模型ARIMA自回归积分滑动平均模型计算所述ARIMA自回归积分滑动平均模型的参数的步骤后还包括:将建立ARIMA自回归积分滑动平均模型过程中的出错数据,结合所述待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,获取所述待预测水域水质参数第二预测值。

5.如权利要求1所述的方法,其特征在于,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:S111,采用ADF单位根检验来判断待预测水域水质参数历史时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;

S112,利用自相关函数和偏自相关函数计算所述ARIMA(p,q)自回归积分滑动平均模型的系数和阶数;利用最小二乘法计算所述ARIMA自回归积分滑动平均模型的参数。

6.如权利要求1所述的方法,其特征在于,所述步骤1前还包括:

S0,对待预测水域历史气象因素进行数据预处理,得到各气象因素中主成分的以下值中至少一种:特征值、贡献率和累计贡献率。

7.一种水质预测方法系统,其特征在于,包括:

预测模块,用于基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数第一预测值;基于待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素第二预测值;

叠加模块,用于将所述待预测水域水质参数第一预测值和所述待预测水域水质参数第二预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果;

其中,所述预测模块进一步用于基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型;基于待预测水域水质参数的输入数据,利用所述水质线性数据预测模型,获取所述待预测水域水质参数第一预测值;

所述预测模块进一步用于基于待预测水域水质参数历史时间序列数据,利用LM-BP神经网络模型,训练得到水质非线性数据预测模型;基于待预测水域气象因素时间序列数据的输入数据,利用所述水质非线性数据预测模型,获取所述待预测水域水质参数第二预测值;

其中,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型具体包括:判断待预测水域水质参数历史时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;计算所述ARIMA(p,q)自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数;

其中,p为自回归项;MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。

说明书 :

水质预测方法及系统

技术领域

[0001] 本发明涉及环境预测技术领域,更具体地,涉及水质预测方法及系统。

背景技术

[0002] 目前,水质预测是实现水系统的柔性管理、防治水污染的前提工作。复杂水域的水环境涉及的环境影响因素较多,正是因为环境系统的复杂性,环境模拟的数学模型建立就具有不确定性和复杂性的特点,同时局限了预测方法的应用。环境问题复杂多样,环境介质有不同的类型,如天气因素可以决定河流山川的水流速、浊度等。使用历史数据,可通过不同的预测方法推求环境变量与待预测水质指标之间的非线性关系或待预测水质指标本身随时间的变化规律。目前,比较常用的预测方法有水质模拟预测、神经网络模型预测、时间序列预测法和灰色预测模型法和基于混沌理论的水质预测法等5大类。
[0003] 水域的季节性变化明显,受人类活动和水文气象条件的双重影响,利用上也存在众多难度,这就需要我们及时地监测相应流域的的水量与水质变化状况。流域水质的影响因子为PH、溶解氧(DO)、电导率(EC)、浊度(TU)、氨氮(NH3-N)、化学需氧量(COD)、总磷(TP)、总氮(TN)等8个水质参数,从目前来看这些参数基本能满足水质预测要求。对其中溶解氧、氨氮、总磷、总氮的预测,不论对不同流域的污染治理、水源管理都具有重要意义。利用采集的时间序列水质数据,分析监测数据,利用模型预测等是具有可行性的。
[0004] 现有技术中,Wedding and Cios提出了一个使用径向基函数网络(RBF)和Box-Jenkins模型相结合的方法;Pelikan等和Ginzburg和Horn提出了结合一些前馈神经网络的方法来改善时间序列预测的准确性;一些混合模型也已经出现,如使用自动回归滑动平均模型(ARIMA)和人工神经网络(ANNs)相结合的方法应用于时间序列预测;Chen and Wang构造了组合模型,合并季节性自回归综合移动平均(SARIMA)和支持向量机,用于季节性时间序列模型预测;Zhou and Hu提出了一种基于灰色和Box-Jenkins自回归移动平均模型的混合建模和预测方法。Tseng等提议使用结合了季节性ARIMA(SARIMA)模型和反向传播神经网络的SARIMABP混合模型来预测季节性时间序列数据。Mehdi Khashei等使用ARIMA与ANN的混合模型来对时间序列数据进行预测。
[0005] 但上述现有技术并没有对于水质预测上起到明显精准预测的有益效果,其预测结果远远不能达到相应的使用标准。

发明内容

[0006] 本发明为克服上述问题或者至少部分地解决上述问题,提供水质预测方法及系统,使用将ARIMA自回归积分滑动平均模型与BP神经网络相结合的方法实现对水质预测。
[0007] 根据本发明的一个方面,提供水质预测方法,包括:
[0008] 步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;
[0009] 步骤2,将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0010] 进一步,所述步骤1进一步包括:
[0011] 基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型;基于待预测水域水质参数的输入数据,利用所述水质线性数据预测模型,获取所述待预测水域水质参数预测值。
[0012] 进一步,所述步骤1进一步包括:
[0013] 基于待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,训练得到水质非线性数据预测模型;基于待预测水域气象因素的输入数据,利用所述水质非线性数据预测模型,获取所述待预测水域气象因素预测值;
[0014] 进一步,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:
[0015] 判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;计算所述ARMA(p,q)自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数。
[0016] 进一步,所述基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,训练得到水质非线性数据预测模型的步骤进一步包括:
[0017] 基于待预测水域历史气象因素时间序列数据,利用反向传播算法对BP神经网络模型的权值和偏差进行反复的调整训练,当网络输出层的误差平方和小于阈值时,保存所述BP神经网络模型的权值和偏差。
[0018] 进一步,所述步骤1前还包括:删除所述待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据中的空缺值。
[0019] 进一步,ARIMA自回归积分滑动平均模型ARIMA自回归积分滑动平均模型计算所述ARIMA自回归积分滑动平均模型的参数的步骤后还包括:将建立ARIMA自回归积分滑动平均模型过程中的出错数据,结合所述待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,获取所述待预测水域气象因素预测值。
[0020] 进一步,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:
[0021] S111,采用ADF单位根检验来判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;
[0022] S112,利用自相关函数和偏自相关函数计算所述ARMA(p,q)自回归积分滑动平均模型的系数和阶数;利用最小二乘法计算所述ARIMA自回归积分滑动平均模型的参数。
[0023] 进一步,所述步骤1前还包括:
[0024] S0,对待预测水域历史气象因素进行数据预处理,得到各气象因素中主成分的以下值中至少一种:特征值、贡献率和累计贡献率。
[0025] 根据本发明的一个方面,提供一种水质预测系统,包括:
[0026] 预测模块,用于基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;
[0027] 叠加模块,用于将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0028] 本申请提出水质预测方法及系统,所述方法使用ARIMA自回归积分滑动平均模型与BP神经网络相结合的方法对水质时间序列数据的预测。本发明所述方案具有对可以对待预测水域大量水质数据进行预测,具有预测范围大、精度高和速度快的特点,便于多水源监管、水质预警、水污染治理。

附图说明

[0029] 图1根据本发明实施例水质预测方法的整体流程示意图;
[0030] 图2根据本发明实施例水质预测方法的流程示意图;
[0031] 图3为根据本发明实施例水质预测系统的整体框架示意图;
[0032] 图4为根据本发明实施例水质预测方法的装置示意图。

具体实施方式

[0033] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0034] 首先,对本发明出现的相关名词进行说明。
[0035] ARIMA自回归积分滑动平均模型:全称为自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,简记ARIMA),是由博克思(Box)和詹金斯(Jenkins)于70年代初提出一著名时间序列预测方法,所以又称为box-jenkins模型、博克思-詹金斯法。其中ARIMA(p,d,q)称为差分自回归移动平均模型,AR是自回归,p为自回归项;MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。所谓ARIMA自回归积分滑动平均模型,是指将非平稳时间序列转化为平稳时间序列,然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型。ARIMA自回归积分滑动平均模型根据原序列是否平稳以及回归中所含部分的不同,包括移动平均过程(MA)、自回归过程(AR)、自回归移动平均过程(ARMA)以及ARIMA过程。
[0036] 如图1,示出本发明一个具体实施例中一种水质预测方法整体流程示意图。总体上,包括:
[0037] 步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;
[0038] 步骤2,将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0039] 在本发明另一个具体实施例中,一种水质预测方法,所述步骤1进一步包括:
[0040] 基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型;基于待预测水域水质参数的输入数据,利用所述水质线性数据预测模型,获取所述待预测水域水质参数预测值。
[0041] 在本发明另一个具体实施例中,一种水质预测方法,所述步骤1进一步包括:
[0042] 基于待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,训练得到水质非线性数据预测模型;基于待预测水域气象因素的输入数据,利用所述水质非线性数据预测模型,获取所述待预测水域气象因素预测值;
[0043] 在本发明另一个具体实施例中,一种水质预测方法,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:
[0044] 判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;计算所述ARMA(p,q)自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数。
[0045] 在本发明另一个具体实施例中,一种水质预测方法,所述基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,训练得到水质非线性数据预测模型的步骤进一步包括:
[0046] 基于待预测水域历史气象因素时间序列数据,利用反向传播算法对BP神经网络模型的权值和偏差进行反复的调整训练,当网络输出层的误差平方和小于阈值时,保存所述BP神经网络模型的权值和偏差。
[0047] 在本发明另一个具体实施例中,一种水质预测方法,所述步骤1前还包括:删除所述待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据中的空缺值。
[0048] 在本发明另一个具体实施例中,一种水质预测方法,计算所述ARIMA自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数的步骤后还包括:将建立ARIMA自回归积分滑动平均模型过程中的出错数据,结合所述待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,获取所述待预测水域气象因素预测值。
[0049] 在本发明另一个具体实施例中,一种水质预测方法,所述基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型的步骤进一步包括:
[0050] S111,采用ADF单位根检验来判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;
[0051] S112,利用自相关函数和偏自相关函数计算所述ARMA(p,q)自回归积分滑动平均模型的系数和阶数;利用最小二乘法计算所述ARIMA自回归积分滑动平均模型的参数。
[0052] 在本发明另一个具体实施例中,一种水质预测方法,所述步骤1前还包括:
[0053] S0,对待预测水域历史气象因素进行数据预处理,得到各气象因素中主成分的以下值中至少一种:特征值、贡献率和累计贡献率。
[0054] 在本发明另一个具体实施例中,一种水质预测方法,所述BP神经网络为基于Levenberg-Marquardt算法训练的BP神经网络。
[0055] 如图2,在本发明另一个具体实施例中,一种水质预测方法。
[0056] 对采集的待预测流域水质数据,水质数据的预测可能不容易被独立的模型实验,因为水质时间序列数据可能包括多种季节性等特点,异方差性或非高斯误差。对于时间序列水质数据有:线性和非线性序列。线性数据使用ARIMA自回归积分滑动平均模型预测,对于非线性数据,使用LM-BP神经网络预测,最后得出预测结果。考虑到水质数据其中大部分是非线性数据,则在LM-BP神经网络中加入气象因素对模型进行训练。概水质数据时间序列预测方法步骤如图2所示。
[0057] 对于采集的原始水质数据PH、溶解氧(DO)、电导率(EC)、浊度(TU)、氨氮(NH3-N)、化学需氧量(COD)、总磷(TP)、总氮(TN)等水质参数,以及采集到的气象因素,比如气温、风速、降雨量,大气压强等等气象因子,采用删除空缺值的方法对水质数据和气象因素数据做预理。
[0058] 气象因素的每个变量都在不同程度上反映了水质预测的某些信息,并且指标之间相互有一定的相关性,因而所得的统计数据反映的信息在一定程度上有重叠,采用主成分分析技术则可以剔除冗余信息。采用主成分分析对降水量、温度、风速、湿度、气压等天气因素进行数据预处理,得到各主成分的特征值,贡献率及累计贡献率。多变量天气因子经过主成分分析后,提取天气因素特征量,实现高维到低维的简化,可以简化数据结构,在保证预测精度的前提下,有效提高预测效率。
[0059] ARIMA自回归积分滑动平均模型建模时,首先采用ADF(Augmented Dickey-Fuller)单位根检验来判断数据的平稳性。水质数据一般为非平稳数据,数据经过d次差分处理,建立ARIMA(p,d,q)模型,采用自相关函数(ACF)、偏自相关函数(PACF)来判别ARIMA(p,q)模型的系数和阶数,然后使用最小二乘法对ARIMA自回归积分滑动平均模型进行参数估计,检验ARIMA自回归积分滑动平均模型是否合适,获得满意的ARIMA自回归积分滑动平均模型。把经过删除空缺值后的时间序列水质数据输入到ARIMA自回归积分滑动平均模型中,ARIMA自回归积分滑动平均模型对其中线性序列数据进行预测。
[0060] 其中经过ARIMA自回归积分滑动平均模型的出错数据,也就是剩余非线性序列数据,同时结合经过主成分分析后的天气因素特征量作为LM-BP神经网络模型的输入。建立神经网络模型是选择BP算法(反向传播算法)使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差。由于非线性隐层单元的存在,导致网络存在多个最小点,所以学习过程不一定能保证达到全局最小,使得实际输出和理想输出之间有一定的偏差。采用Levenberg-Marguardt(LM)优化算法解决学习过程收敛速度慢、对一些复杂问题训练时间很长和数据庞大等问题。本模型采用三层网络结构,包括输入层、隐含层和输出层。其然后精选出大量水质数据和天气因素数据作为样本集来训练网络,通过多次训练与测试,一直到获得满意的网络模型为止。
[0061] 最后将ARIMA自回归积分滑动平均模型与LM-BP神经网络模型结果在待预测各时间点的值进行相加,得到水质预测结果。
[0062] 下面分别介绍主成分分析、ARIMA自回归积分滑动平均模型、LM-BP神经网络模型三个方面的内容。
[0063] 1.主成分分析步骤:
[0064] 各个因素之间都存在一定的相关关系,信息互嵌,直接使用会造成信息冗余,增加计算复杂度,延长预测时间,影响计算速度和预测效率。因此,有必要对这些气象因素进行预处理。主成分分析是综合处理这种问题的一种强有力的工具,能在相关分析基础上,用较少新变量代替原来较多旧变量,而且使这些较少的新变量尽可能多地保留原来变量所反映的信息。
[0065] 对于采集的气象因素有n个样本,每个样本共有p个天气因子变量,构成一个n×p阶的数据矩阵:
[0066]
[0067] 主成分分析步骤:
[0068] (1)对数据标准化,将原始天气因素数据标准化为[0,1]之间的有效数据;
[0069] (2)计算相关系数矩阵;
[0070]
[0071] 式中:rij(i,j=1,2,…,p)为原变量的xi与xj之间的相关系数,其计算式为:
[0072]
[0073] (3)计算特征值与特征向量首先解特征方程|λI-R|=0,通常用雅可比法求出特征值λi(i=1,2,…,p),并使其按大小顺序排列,即λ1≥λ2≥…≥λp≥0;然后分别求出对应于特征值λi的特征向量ei(i=1,2,…,p)。要求,rij=rji, 其中eij表示ei的第j个分量。
[0074] (4)计算主成分贡献率及累计贡献率
[0075] 主成分zi的贡献率为:
[0076]
[0077] 累计贡献率为:
[0078]
[0079] 一般取累计贡献率达到85%~95%的特征值λ1,λ2,…,λm所对应的第一、第二,…,第m(m≤p)个主成分。
[0080] (5)新样本矩阵的构造定义:记x1,x2,…,xp为原变量指标,z1,z2,…,zm(m≤p)为新变量指标,根据下面两式计算得出每一个主成分的各样本值。
[0081]
[0082]
[0083] 则新样本矩阵为:
[0084]
[0085] 计算出特征值,得到特征向量,将特征向量与非线性水质时间序列数据作为LM-BP神经网络的输入。
[0086] 2.ARIMA自回归积分滑动平均模型
[0087] 全称为自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,简记ARIMA),是由博克思(Box)和詹金斯(Jenkins)于70年代初提出一著名时间序列预测方法,所以又称为box-jenkins模型、博克思-詹金斯法。其中ARIMA(p,d,q)称为差分自回归移动平均模型,AR是自回归,p为自回归项;MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。所谓ARIMA自回归积分滑动平均模型,是指将非平稳时间序列转化为平稳时间序列,然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型。ARIMA自回归积分滑动平均模型根据原序列是否平稳以及回归中所含部分的不同,包括移动平均过程(MA)、自回归过程(AR)、自回归移动平均过程(ARIMA)以及ARIMA过程。ARIMA是当前时间序列分析中最通用的方法,它是先通过差分运算,把长期趋势、固定周期等信息提取出来,将非平稳序列变为平稳序列后进行分析的过程。
[0088] ARIMA自回归积分滑动平均模型将预测指标随时间推移而形成的数据序列看作是一个随机序列,这组随机变量所具有的依存关系体现着原始数据在时间上的延续性,它既受外部因素的影响,又有自身变动规律。ARIMA自回归积分滑动平均模型可以对线性水质时间序列数据进行预测。
[0089] 建立ARIMA时间序列模型包括四个步骤:
[0090] (1)数据的平稳性处理
[0091] ARIMA自回归积分滑动平均模型建模时,首先采用ADF(Augmented Dickey-Fuller)单位根检验来判断数据的平稳性。采取差分的形式处理非平稳数据,进行差分的次数就是ARIMA(p,d,q)模型中的阶数d。时间序列数据被平稳化处理后,ARIMA(p,d,q)模型就转化为ARIMA(p,q)模型。
[0092] 序列能通过d次差分后变成平稳序列则建立ARIMA(p,d,p)模型:
[0093] wt=φ1wt-1+φ2wt-2+…+φpwt-p+δ+ut+θ1ut-1+θ2ut-2+…+θqut-q[0094] W表示时间序列数据,δ是常数,表示序列数据无0均值化,ut为白噪声序列。
[0095] (2)模型识别
[0096] 在时间序列分析中,采用自相关函数(ACF)、偏自相关函数(PACF)来判别ARIMA(p,q)模型的系数和阶数。自相关函数(ACF)描述时间序列观测值与其过去的观测值之间的线性相关性。偏自相关函数(PACF)描述在给定中间观测值的条件下时间序列观测值与其过去的观测值之间的线性相关性。
[0097] (3)参数估计
[0098] 时间序列分析模型的阶数确定后,然后用最小二乘法对ARIMA自回归积分滑动平均模型进行参数估计。
[0099] (4)模型验证
[0100] 验证所拟合的时间序列模型的参数估计值是否有显著性和验证所拟合的时间序列模型的残差序列是否是白噪声序列,即残差序列的独立性检验。
[0101] 3.LM-BP神经网络算法
[0102] 建模是选择LM算法的BP神经网络模型,然后精选大量水质数据和天气因素数据作为样本来训练网络,通过多次训练与测试,直至获得满意的网络模型。由于水质指标预测具有复杂的输入输出非线性隐性关系,需要通过大量的样本学习和训练才能得到有用的模型。将利用主成分分析技术降维处理的气象因素和非线性水质时间序列数据作为神经网络的输入。根据神经网络的数据处理特点,需要对输入数据进行归一化处理。
[0103] 水质非线性时间序列数据预测模型建模步骤具体如下:
[0104] (1)统计分析确定预测对象及其影响因子,并对影响因子做主成分分析,用少数不相关因子代替;
[0105] (2)对数据进行归一化处理;
[0106] (3)建立三层网络预测模型,包括输入层、隐含层和输出层;
[0107] (4)使用样本集对LM-BP神经网络的训练,训练出初始网络;
[0108] (5)利用剩余样本进行测试,得到网络预测模型;
[0109] LM算法是一种利用标准的数值优化技术的快速算法,它是梯度下降法与高斯一牛顿法的相结合,是高斯一牛顿法的一种改进形式,它既有高斯一牛顿法的局部收敛性,又具有梯度下降法的全局特性。标准的LM-BP算法为:
[0110] 设误差目标函数为:
[0111]
[0112] 其中
[0113] aij=tij-yij   (2)
[0114] 为网络误差向量,vi(x)为误差向量。由牛顿法:
[0115]
[0116] 则:
[0117]
[0118] 尽管牛顿法具有收敛迅速的优点,但由于每次迭代计算中不能保证Hessian矩阵F2(x)都可逆,则可用JT(x)J(x)+S(x)近似代替F2(x),式中J(x)为a(x)的雅可比(Jacobian)矩阵。 为a(x)为的误差矩阵。
[0119]
[0120] 可以证明:
[0121]
[0122] 当解靠近极值点时:
[0123] S(x)=0   (7)
[0124] 则:
[0125] Δ(x)=-[JT(x)J(x)]-1JT(x)a(x)   (8)
[0126] 将(8)式进行改进,使其既包含高斯-牛顿法又具有梯度下降法的混合形式。公式为:
[0127] Δ(x)=-[JT(x)J(x)+IU]-1·JT(x)a(x)   (9)
[0128] 式中:I为单位矩阵,U为比例系数,若U接近于0时,则为高斯-牛顿法,若U值较大时,近似于梯度下降法 通常的调整策略是算法开始时U取一小的正值,如果某一步不能减少误差目函数F(x)的值,则U乘以一个大于1的步进因子θ,即U=Uθ,如果某一步产生了更小的F(x),则U在下一步除以θ,即U=U/θ.
[0129] LM算法可以使BP神经网络模型更快收敛,获得有效的预测结果。
[0130] 图3中,示出一个具体实施例中,一种水质预测系统的整体框架示意图。整体上,包括:
[0131] 预测模块A1,用于基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;
[0132] 叠加模块A2,用于将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0133] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于:基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,训练得到水质线性数据预测模型;基于待预测水域水质参数的输入数据,利用所述水质线性数据预测模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,训练得到水质非线性数据预测模型;基于待预测水域气象因素的输入数据,利用所述水质非线性数据预测模型,获取所述待预测水域气象因素预测值。
[0134] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于:
[0135] 判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA(p,d,q)自回归积分滑动平均模型;计算所述ARMA(p,q)自回归积分滑动平均模型的系数和阶数;计算所述ARIMA自回归积分滑动平均模型的参数。
[0136] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于:基于待预测水域历史气象因素时间序列数据,利用反向传播算法对BP神经网络模型的权值和偏差进行反复的调整训练,
[0137] 当网络输出层的误差平方和小于阈值时,保存所述BP神经网络模型的权值和偏差。
[0138] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于:删除所述待预测水域历史气象因素时间序列数据和待预测水域水质参数历史时间序列数据中的空缺值。
[0139] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于将建立ARIMA自回归积分滑动平均模型过程中的出错数据,结合所述待预测水域历史气象因素时间序列数据,利用LM-BP神经网络模型,获取所述待预测水域气象因素预测值。
[0140] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于:采用ADF单位根检验来判断待预测水域历史气象因素时间序列数据的平稳性:经过d次差分处理,建立ARIMA自回归积分滑动平均模型;利用自相关函数和偏自相关函数计算所述ARIMA自回归积分滑动平均模型的系数和阶数;利用最小二乘法计算所述ARIMA自回归积分滑动平均模型的参数。
[0141] 在本发明另一个具体实施例中,一种水质预测系统,所述预测模块还用于对待预测水域历史气象因素进行数据预处理,得到各气象因素中主成分的以下值中至少一种:特征值、贡献率和累计贡献率。
[0142] 图4是示出本申请实施例的水质预测方法的设备的结构框图。
[0143] 参照图4,所述水质预测方法的测试设备,包括:处理器(processor)401、存储器(memory)402、通信接口(Communications Interface)403和总线404;
[0144] 其中,
[0145] 所述处理器401、存储器402、通信接口403通过所述总线404完成相互间的通信;
[0146] 所述通信接口403用于该测试设备与水质预测方法的通信设备之间的信息传输;
[0147] 所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;步骤2,将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0148] 本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;步骤2,将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0149] 本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:步骤1,基于待预测水域水质参数历史时间序列数据,利用ARIMA自回归积分滑动平均模型,获取所述待预测水域水质参数预测值;基于待预测水域历史气象因素时间序列数据,利用BP神经网络模型,获取所述待预测水域气象因素预测值;步骤2,将所述待预测水域气象因素预测值和所述待预测水域水质参数预测值在待预测各时间点的值进行相加,得到所述待预测水域的水质预测结果。
[0150] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0151] 以上所描述的水质预测方法的设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0152] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0153] 本发明所述基于BP神经网络和ARIMA自回归积分滑动平均模型的水质时间序列预测方法,对采集的待预测流域水质参数时间序列数据和天气因素数据进行预处理,将历史数据中的缺失数据删除,并将气象因素数据进行主成分分析,做降维处理;将经过预处理的待预测流域水质参数时间序列数据分为训练样本集和测试样本集,以训练样本集前若干连续单位时间的水质参数值作为ARIMA自回归积分滑动平均模型输入,以下一单位时间的水质参数值作为输出,对ARIMA自回归积分滑动平均模型用测试样本集对训练后的模型进行检验,获得基于ARIMA自回归积分滑动平均模型的水质参数时间序列预测模型;其中经过ARIMA自回归积分滑动平均模型后剩余的非线性数据和经过主成分分析的天气因素数据共同作为BP神经网络模型的输入,训练LM-BP神经网络模型,再测试样本集检验,获得合适的BP神经网络模型;最后可使用ARIMA自回归积分滑动平均模型和BP神经网络模型对新的水质参数时间序列数据进行预测,预测结果在待预测各时间点的值进行相加,获得更精确的预测结果。
[0154] 基于LM-BP神经网络和ARIMA自回归积分滑动平均模型的水质时间序列预测方法可应用于不同流域的PH、溶解氧(DO)、电导率(EC)、浊度(TU)、氨氮(NH3-N)、化学需氧量(COD)、总磷(TP)、总氮(TN)等水质参数的预测,预测精度高,范围广,具有良好的鲁棒性。
[0155] 最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。