基于COBP模型的城市短期需水量预测研究*

2020-03-04 05:13叶强强王景成陈超波涂吉昌
计算机与数字工程 2020年1期
关键词:需水量维数预测值

叶强强 王景成,2 陈超波 王 召 涂吉昌

(1.西安工业大学 西安 710021)(2.上海交通大学自动化系 上海 200240)

1 引言

经济的高速发展带来了城市化与工业生产规模的不断发展,也使得城市供水系统的供需矛盾变得突出,特别是夏季,城市水量紧缺的现象越来越普遍。需水量预测[1]已成为现代供水调度系统学科中一个重要的研究领域。由于城市需水量增长受经济发展、产业结构、居民收入水平、气候等诸多因素的影响,用常规的数学方法来建立模型,不仅工作量大,而且精度也难以保证。

目前国内外采用的需水量预测模型主要有时间序列模型[2]、灰色预测模型[3]、人工神经网络模型[4]等。时间序列模型是一种定量分析方法,它是在时间序列变量分析的基础上,运用一定的数学方法建立预测模型,使时间趋势向外延伸,从而预测未来市场的发展变化趋势,确定变量预测值。具有运算过程简单,对于中短期预测的效果要比长期预测的效果好等优点。但其因突出时间序列暂不考虑外界因素影响,故存在着预测误差的缺陷。当遇到外界因素发生较大变化,往往会有较大偏差。灰色预测模型通过对原始数据的处理挖掘系统变动规律,建立相应微分方程,从而预测事物未来发展状况。对于不确定因素的复杂系统预测效果较好,且所需样本数据较小;但是基于指数率的预测没有考虑系统的随机性,中长期预测精度较差。人工神经网络模型一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。该网络具有强大的非线性逼近能力,同时其良好的自适应性、自组织性以及较强的学习、联想、容错和抗干扰能力使其广泛应用于诸多领域,可以解决涉及到多变量、强耦合、非线性等的数值拟合预测问题。其不足之处为:网络算法学习速度较慢,网络训练失败的可能性较大,隐含层层数和隐含层神经元个数难以确定,一般根据经验公式结合实际问题选取,网络结构的选择尚无一种统一而完整的理论指导,一般只能由经验选定。国内外专家、学者及相关工程技术人员对需水量预测已经进行了大量的研究,需水量预测方法研究从传统的预测方法发展到现在的人工智能预测方法[5],例如:支持向量机回归技术[6]、遗传算法[7]、遗传神经算法[8]、深度学习算法[9]、机器学习算法[10]等,预测算法已相当丰富。

Chaos理论[11]是非线性动力学的重要发展。城市需水量的时间序列具有多种不确定性和非线性,不易建立精确数学模型。结合BP神经网络理论[12]的Chaos-BP理论对于城市短期需水量预测,能够克服传统预测模型所需训练样本多,预测误差大,算法学习收敛速度慢,网络结构难以确定等缺陷。

综上所述,本文提出一种基于Chaos-BP理论的COBP(Chaos Back Propagtion)预测模型,为城市短期需水量预测的研究提供一条崭新的途径。

2 Chaos识别

用Chaos理论研究城市短期需水量问题的前提是确定城市短期需水量时间序列是混沌的,这就涉及到Chaos判别的问题。本文采用关联维D2法[13]判别。在考察m维相空间中设相点之间的欧氏距离为rij(m):

任给一标度r,统计小于r的点对数目在所有点中所占的比例。

其中,n为相点数;θ为Heaviside函数。

关联维D(m)记为

不随m改变,于是得到城市需水系统的关联维数:

当D2>2或为分数,表明城市需水系统具有混沌特征,则该系统吸引子的维数为D2;否则,系统被诊断为随机系统。

3 相空间重构

Packard等[14]最早提出了相空间重构的方法,建议用原始系统的某变量的延迟坐标来重构相空间,即在某些固定时间延迟点上的观测值作为新维来处理,从而通过“嵌入”方法可以构造出一个与原系统等价的相空间,在这个空间中可以恢复原有动力系统的规律,并研究其吸引子的质。相空间重构可表述如下:

设时间序列{x(t),t=0,1,2,…,n},由此序列嵌入m维相空间,可得到一系列m维相空间的相点为

其中m为嵌入维数,τ为延迟时间,N=n-(m-1)τ。

但实际上,实测时序是有限长的,且不可避免地被噪声污染,延迟时间取任意值不能重构原系统相空间,因此对实测时序相空间重构的关键是其参数的选取。

3.1 延迟时间的选取方法

延迟时间是一个重要的相空间重构参数,最佳延迟时间[15]τ不能选的太大也不能太小。如果τ太小,相空间轨迹会向同一位置挤压,信息不易显露,产生冗余误差;如果τ太大,会导致某一时刻的动力学性态与后一时刻的动力学性态变化剧烈,使得简单的几何对象表现得很复杂,动力系统信号失真,产生不相关误差。

本文采取自相关法选取延迟时间[16]τ的步骤为

引入一个非线性相关函数,使延时时间τ的计算度量变成两部分:

线性相关函数:

检测状态之间的线性相关性。

非线性相关函数:

检测状态之间的非线性相关性。

该方法中可以检测到检测不到的时间序列中的变化,一般会得到比单独检测线性相关性更短的延迟时间。

3.2 饱和嵌入维数(输入层神经元数目)的选取方法

在目前确定饱和嵌入维数[17]的方法中,伪邻近点法[18]、奇异值分解法[19]、去偏自相关法[20]、饱和关联维数法[21]是比较好的方法,但是各自都有些不足。本文采用去偏自相关法[20]确定饱和嵌入维数。

采用去偏自相关法来求取饱和嵌入维数的具体步骤为

1)设定m维相空间重构的去偏自相关函数为

4 基于COBP模型的城市短期需水量预测的步骤

4.1 COBP网络模型的确定

经过研究比较,COBP网络模型采用含有隐含层的误差反向传播神经网络,此类网络模型有一个或多个中间层(即隐含层),输入层的节点通过特定的连接向隐含层节点传递刺激信息(即实测需水量值):

式中,W 为(L,I)维权值矩阵;θ0为(L,1)维需水量值向量;S为(I,J)维的需水量值矩阵,J为COBP网络模型的刺激信息的输入数目。

每一个隐含层节点都通过一个激活函数将输入需水量值转化为相应的反应输出:

同理,每一个输出层的神经元节点也通过一个激活函数将输入需水量值转化为相应的反应输出:

4.1.1 COBP网络模型的训练

选随机数初始化权值矩阵W、Z和需水量值向量θ0、偏移向量 z0,将 n-1个实测数据 s1、s2、s3、…、si、…、sn-1输入进行训练。取 S(I,J)维需水量值输入矩阵对每一个隐含层节点计算它所有输入的总和,并且促使这些获取的信号通过激活函数进行传递。在输出节点也是这样进行信号传递,输出向量为

式中,δk为输出节点的输出需水量值向量;f为隐含层的激活函数;g为输出层的激活函数。

将此COBP网络的输出需水量值向量δk与实测输出需水量值增量Δsk=sn-1-sn-2进行比较,计算出COBP网络的输出误差:

将此误差在COBP网络中进行反向传播:通过网络将误差信号沿原来的连接通路反传回去,并根据使均方误差最小的算法来修改每一阶段的权值矩阵和偏移向量的值,以达到对COBP网络进行训练的目的。

每次训练时最小化的量是COBP网络输出误差的方差:

Ek相对于Z矩阵的梯度:

将隐含层和输出层的两个激活函数置为相同:

则Ek相对于Z矩阵的梯度可计算如下:

由Ek表达式,第1个偏导数如下:

第2个偏导数依赖于选择的激活函数类型,激活函数是非线性递增的。目前应用的最多的是单极性s函数、双极性s函数和双曲正切函数,它们的特点是可以将输入从区间[-∞,+∞]分别变换成[0,1]和[-1,1]区间的输出。经计算,作为城市短期需水量预测采用单极性s函数稳定性较好。

第2个偏导数可用式(20)表达:

式中,I代表与输出需水量值向量δk维数相同的单位矩阵,“·”操作代表项对项的乘积。

第3个偏导数如下:

由梯度下降法更新权值,(k+1)步的权值矩阵Z为

式中,η为训练增益;∂s为输出误差。

偏移向量z0的更新方法同上。(k+1)步的偏移矩阵为

同理可得输入层节点和隐含层节点的连接权值矩阵W、隐含层节点单元的需水量值向量θ0的(k+1)步表达式:

将此正向输出计算与反向权值修改交替进行,直到误差达到允许的范围,即COBP网络的拟合达到规定要求。

4.1.2 COBP网络模型的预测

一旦网络训练结束,将第n个需水量值sn输入到COBP网络模型中,此时的输出:

就是该序列的n+1步预测值,由于该预测值是从已有数据中总结出的规律,按照一定的映射关系得出的,当下一步的实际需水量值符合前n-1个数据所具有的规律时,此预测值较准确。

但在城市短期需水量预测过程中,影响预测的因素众多,如社会生活习惯,节假日、气像条件(诸如降雨、气温)等,会造成城市短期需水量预测值产生较大的跳跃,在时间序列位移曲线上会出现“尖点”。在“尖点”处,预测值往往会产生较大的误差,因此本文采用了Chaos控制方法对“尖点”需水量预测值进行控制[22],使预测结果更加准确。

4.2 COBP网络模型的混沌优化搜索

4.2.1 混沌优化搜索原理

COBP网络由输入层(n个神经元)、隐含层和输出层(m个神经元)三层组成,是一种误差逆向传播型学习算法。通过样本学习可完成从输入的n维欧氏空间到输出的m维欧氏空间的映射。最基本COBP算法是基于极小化二次性能指标函数(能量函数),即:

式中,L为训练样本数,Yjs为第s个样本在第 j输出节点的网络计算输出值;Yjs-Y*js为第s个样本在第 j个节点的期望输出值。

本文运用混沌变量寻优[23]训练BP神经网络,采用Ligistic映射,即

式中:n为迭代次数;_为控制参数,当_=4.0时,系统完全进入混沌状态,且混沌变量X0在(0,1)范围内遍历。由于混沌状态具有对初始条件的敏感性,取不同的初始值,即可得到不同轨迹的混沌变量。

设BP神经网络有 p个连接权,采用下列公式对连接权寻优:

在(0,1)区间任取 p个不同的初始值分别代入式(29),则得到 p个不同混沌轨迹变量,再经过式(30)变换到(-1,+1)区间,然后把 p个混沌轨迹序列作为BP神经网络的粗搜索时的权值解空间,每个混沌轨迹变量对应BP神经网络中的一个权值。

4.2.2 参数控制法确定预测值

城市短期需水量预测是非线性动力系统的混沌现象,是由城市需水量值的变化引起的。因而,预测值的混沌控制可通过对原有监测数据的规律进行总结,选择混沌态内含的某些临界点为控制值。当COBP网络模型输出达到控制值任意近的邻域时,启动控制机制,用较小信号将系统捕捉到目标轨道上去,以达到减小“尖点”的目的,因而参数控制法[24]属于反馈控制方法的一种。

设从sn到sn+1的映射为

当β≥规定值ε时,启动控制:

当β≤规定值ε时,再次启动控制:

当 β远离规定值时,关闭控制,预测值按式(26)输出。

式中,sn+1为城市短期需水量的一步预测值;sn为城市短期需水量第n个实测值;Δ为控制参数:为输出需水量值向量;sn-1为城市短期需水量第n-1个实测值。

5 实例仿真计算

用上海市2017年8月12日—10月20日的历史水量数据训练和测试(见表3),进行相空间重构和建模,对2017年10月21日—2017年2月2日的水量数据进行预测。采用自相关法计算延迟时间为7,用关联维D2法计算关联维数,用Matlab编程,发现关联维数到2.03时不再增大,所以可以判断该时间序列是混沌序列,然后用去偏自相关法求得嵌入维数为5。

采用COBP网络模型进行拟合和预测,可取输入层节点数为5,延迟时间为7,隐含层节点数为10,输出层节点数为1,训练3753次之后,得到100天的需水量实际值与预测值拟合图(见图3),其它两种对比模型的预测拟合图(见图1、图2)。本文提出的COBP模型的得到前10天预测值和BP模型以及GM模型得到的前10天预测值(见表4)。

图1 基于GM模型的上海市短期需水量的实际值与预测值以及绝对误差分布图

图2 基于BP模型的上海市短期需水量的实际值与预测值以及绝对误差分布图

图3 基于COBP模型的上海市短期需水量的实际值与预测值以及绝对误差分布图

为了检验预测效果的好坏,按照整体评价预测方法,采用均方误差MSE、均方根误差RMSE、平均绝对误差MAE和平均相对误差MAPE来评价(见表3、表4)。

式中,Yi、Y^i分别为实际值和预测值;n为预测数据个数。

结合表1、表2,从三种模型预测的结果可以看出:GM模型预测结果具有时滞现象,平均绝对误差较大,平均相对误差较大;应用BP模型的预测结果没有时滞现象,但预测的波动性较大,4种误差指标也较大;COBP模型预测结果较为理想,不但平均绝对误差较小,而且平均相对误差也较小,从而显示出对城市短期需水量预测效果较为理想。

表1 3种模型预测结果性能指标

表2 3种模型预测结果误差分布统计(个)

表3 上海市2017年8月12日~10月20日的日需水总量

表4 本文提出的COBP模型、GM模型和BP模型的预测值及误差

从表4中可以看出,用COBP模型预测方法对2017年10月21日—2017年10月30日的需水量预测较为准确,与GM模型的预测结果以及BP模型预测结果相比,本文所使用的模型预测结果整体误差的指标较好,呈现较好的综合预测性能。

6 结语

城市短期需水量预测是城市供水总体规划和工程规划的主要依据,关系到水资源可持续利用和城市可持续发展。本文将混沌优化和BP神经网络有机结合起来,建立了基于COBP网络城市短期需水量预测模型。COBP模型预测方法,可以对城市需水量有效地做出短期预测。而且BP神经网络本身就是一种辩识模型,结合Chaos理论,很容易确定输入层节点个数,不需要建立以实际系统数学模型为基础的预测模型,可以省去在预测前对系统建模这一步骤。实例研究表明,该模型收敛速度快、预测精度高、简便易行,具有良好的应用推广价值。

猜你喜欢
需水量维数预测值
径流季节变化对清水河河道生态环境需水量的影响
一类一维齐次Moran集的维数结果
线性变换的核空间在求若尔当矩阵上的一个研究结果
AI讲座:ML的分类方法
自体荧光内镜对消化道肿瘤诊断临床应用分析
建设项目水资源论证中生态环境需水量的分析与计算
探析几何学“维数”与空间“维”数的区别
豫北地区参考作物需水量计算方法比较与评价
季节模型在某医院月门诊量预测中的研究与应用
旱涝交替对水稻生理生长及水分利用效率的影响