基于LSTM模型模拟安康水库洪水过程
Simulation of Ankang Reservoir Inflow Based on LSTM Model

作者: 何 伟 , 左园忠 , 石静涛 :安康水力发电厂,陕西 安康; 万 俊 , 吴金津 , 郭 炅 :武汉大学水资源与水电工程科学国家重点实验室,湖北 武汉;

关键词: 洪水模拟长短期记忆安康水库Flood Simulation Long Short-Term Memory (LSTM) Ankang Reservoir

摘要:
安康流域受人类活动等因素影响,下垫面条件发生较大变化,洪水预报系统的误差较大。考虑到水文数据是一种复杂的时间序列,普通的水文模型难以捕捉其变化规律,LSTM (长短期记忆)作为一种有记忆能力的学习网络模型,通过不断输入的新数据,学习时间序列的主要特征和变化趋势,能很好地学习水文数据这种复杂的多变的时间序列。本文利用LSTM网络模型对安康水库洪水过程进行模拟,并与新安江模型进行比较分析,探讨LSTM网络模型在水库洪水预报的适应性。

Abstract: The underlying surface conditions have changed greatly in the Ankang river basin due to human activities, and the error of the flood forecasting system is relatively large. Considering that hydrological data is a complex time series, it is difficult for ordinary hydrological models to capture its changing laws. LSTM (Long-short term memory), as a learning network with memory ability, can learn the complex and chan-geable time of hydrological data well by continuously inputting new data and learning the main features and changes of time series sequence. The LSTM network model is used to simulate the flood process of Ankang reservoir and compare with the Xinanjiang model. The adaptability of LSTM model in reservoir flood prediction is also discussed.

1. 概述

1.1. 研究背景

安康水库洪水预报系统于2008年建成,洪水预报模型采用的是三水源新安江模型。近10年来流域内人类活动频繁,自然条件变化大,已有的新安江洪水预报模型的预报精度越来越低,难以满足现在安康水库洪水预报精度的要求。考虑到水文数据具有高度的时间不确定性,属于复杂的非线性时间序列 [1],传统的线性模型一般用于平稳序列的预报或模拟,因而在水文预报中的表现往往不尽人意,即使是像新安江三水源模型这种非线性结构的蓄满产流模型也只是对应部分固定地区有较好的模拟精度。

随着信息技术的高速发展,流域水文气象资料的观测取得了长足进步。与此同时,流域产汇流理论却尚未取得重大突破。在这种背景下,一些学者试图用数据驱动的方式来解决流域产汇流问题。人工神经网络(Artificial Neural Networks, ANN)作为一种适用于拟合高度非线性系统的算法,早在20世纪90年代初期就被应用于降雨径流模拟当中。递归神经网络Recurrent Neural Networks, RNN)作为人工神经网络的一种,由于其结构特别适用于时间序列数据的关系模拟,也被应用在流域降雨产流模拟的研究中。

本文以安康水库洪水过程模拟作为研究对象,尝试构建有时间序列记忆能力的LSTM神经网络模型来模拟安康水库洪水过程,以便研究LSTM神经网络模型在安康水库的适用性。

1.2. 研究对象

安康水库位于汉江上游陕西省境内,是一座以发电为主,兼顾防洪、航运等综合利用的大型水利枢纽。坝址位于安康市城西18 km处,控制流域集水面积35,700 km2,且坝址下游与安康市区间有月河加入 [2]。地理上属南北过度的亚热带地区,夏季受太平洋副高控制,多暴雨。由于流域内水系条件较为特殊,常遇降雨往往形成稀遇洪水。

安康水库为季调节水库,总库容为32亿m3,其中死库容为11.13亿m3,兴利库容为14.72亿m3,最大调洪库容为9.8亿m3;水库死水位为305 m,正常蓄水位为330 m,防洪限制水位325 m,设计洪水位333.10 m,校核洪水位337.05 m,水库预留有3.6亿m3的防洪库容。安康水库上游修有石泉季调节水库(1975建成),占流域面积60%;安康–石泉区间的两个大一点支流上,其中:岚河干流上修建有蔺河口季水库(2003建成),任河干流上修建有巴山年调节水库(2008建成),而这两个支流正是暴雨中心,降雨产流复杂。

本文需要的原始资料有:遥测站或水文站日雨量资料、安康日入库流量资料,具体如下:安康现有遥测站33个,日雨量资料统计不全,这33个雨量站都分布在石泉–安康区间,其日雨量资料安康仅提供了2001~2017年的,暂缺石泉日雨量资料,最后收集国家气象局的安康上游以上流域8个雨量站(57,028太白、57,124留坝、57,127汉中、57,134佛坪、57,211宁强、57,232石泉、57,238镇巴、57,245安康)的日雨量数据作为本项目研究的雨量数据,系列长度为1961~2017年(来自国家气象信息中心的中国气象数据网),8个气象站点布置如图1所示。安康水库的入库资料由安康水电站提供,系列长度为1991~2017年。

Figure 1. Location map of the meteorological and hydrological stations in the Ankang River basin

图1. 安康流域气象水文站点位置示意图

2. 模型介绍

2.1. LSTM模型

Hochreiter和Schmidhuber引入长短期记忆(LSTM)神经网络,是一种特殊的循环神经网络(Recurrent Neural Network, RNN) [3],其结构如图2所示,许多人进行了改进和普及,解决了RNN的长期记忆能力上的缺陷。LSTM神经网络通过在神经网络的隐藏层(Hidden layer)中引入存储单元(Memory cell),即输入门(Input gate)、忘记门(Forget gate)、内部回馈连结(Self-recurrent connection)、和输出门(Output gate)来选择记忆当前信息或遗忘过去记忆信息,以增强神经网络的长期记忆能力 [4]。

原始的RNN神经网络包含输入层、输出层和隐含层,是一种模拟时间序列的递归神经网络。具体表现为计算网络会对前期输出的信息进行记忆并在当前输出中应用 [5]。但在实际应用中,为了降低网络的复杂度,RNN常常只假设当前节点状态与之前邻近的几个状态有关。

在网络的前向传播过程中,上一时刻网络的输出及权值对下一层的影响可表示为:

h t = δ ( U x t + W h t 1 + b ) (1)

式中: h t 1 表示 t 1 时刻隐含层的输入, h t 表示t时刻隐含层的输出, x t 表示t时刻输入层的输入,b表示偏置项, δ 为激励函数。

因此RNN是一个不停向前传递的神经网络,沿着时间轴方向利用当前时刻输入数据和模型当前状态,模拟下一时刻目标值。虽然RNN的计算过程考虑到前一个计算时刻的状态,但如时间间距较长,后面的节点对前面节点的感知将逐渐下降,将会产生“梯度消失”问题 [6]。

Figure 2. Recurrent neural network structure

图2. 循环神经网络结构

Figure 3. Complete RNN unit diagram

图3. 完整的RNN单元图

LSTM神经网络是一种在RNN (如图3)基础上改进的递归神经网络,用来解决RNN使用过程中所产生的梯度消失、梯度爆炸以及缺乏长期记忆能力等问题。Bengio等 [7] 已经表明,传统的RNN几乎不能记住长度超过10的序列,对于日流量模拟,这就意味着我们只能使用最近10天的气象数据作为输入来预测第二天的流量。考虑到地下水,积雪甚至冰川储存等集水区的记忆,这段时间太短,降水和排放之间的滞后时间达到几年。为解决RNN在计算过程中出现梯度消失的问题,LSTM神经网络在原有的RNN神经网络结构的基础上,将隐含层的RNN计算单元换成结构更加复杂的LSTM计算单元,更新了计算网络的节点。LSTM神经网络通过设置多个不同门的开关实现时间轴上的记忆和遗忘功能,解决梯度消失问题,在每个LSTM神经网络计算单元设置3个门控制器,分别为输入门、输出门和遗忘门,形成一个新的计算单元。输入门控制特征值的信息输入,遗忘门控制计算单元状态信息的保留,输出门控制信息输出。

为了解释RNN和LSTM如何的工作,我们将递归神经网络展开为有向无环图(见图4)有最后n个独立变量的连续时间步长(在我们的特征值中,每日降水,最低/最高温度,太阳辐射和蒸气压)构成的输入 x = [ x 1 , , x n ] 预测特定时间步长的输出并按顺序处理。在每一个时间步长 t ( 1 t n ) ,在网络中每层的循环单元中,目前的输入xt被处理。

LSTM神经网络的构建思想是在RNN网络的基础上,将RNN中每个隐藏计算单元换成具有记忆功能的计算单元。LSTM层的计算可以表示如下(若干个计算单元组成一个LSTM层):

Figure 4. Complete LSTM unit diagram

图4. 完整的LSTM单元图

g ( t ) = ϕ ( W g x x ( t ) + W i h h ( t 1 ) + b g ) (2)

i ( t ) = σ ( W i x x ( t ) + W i h h ( t 1 ) + b i ) (3)

f ( t ) = σ ( W f x x ( t ) + W f h h ( t 1 ) + b f ) (4)

o ( t ) = σ ( W o x x ( t ) + W o h h ( t 1 ) + b o ) (5)

h ( t ) = s ( t ) (6)

由以上公式可以看出:输入门、遗忘门和输出门各自对应着一个线性单元,控制计算单元的信息输入和输出以及更新计算单元的状态。LSTM神经网络采用基于时间的反向传播(BPTT)算法进行训练,该算法与经典反向传播算法类似 [6]。采用Adam算法进行梯度优化算法,与其他优化算法相比,Adam算法更适合在实际生产中应用。

神经网络是一种由处理单元相互关联,有自适应能力的,非线性系统。它可以通过神经元的有向连接,建立输入参数到输出参数的映射,这种学习能力可以省略系统建模的步骤,特别适用于规律未知的情况。在LSTM神经网络的计算中往往还需要通过堆积LSTM隐藏层来模拟较为复杂的水文时间序列 [8]。如本文图5使用的双层LSTM计算流程图。输入前n个时段的特征值向量,计算第n个时段的目标值。

Figure 5. LSTM calculation flow chart

图5. LSTM计算流程图

2.2. 新安江模型

新安江三水源模型是一种模拟流域上降雨径流形成的数学函数以及逻辑结构,模型输入的是降雨量和蒸散发能力(常用水面蒸发值),输出的是流域出口断面的洪水过程,广泛在我国南方湿润地区应用,并取得很好的效果 [9] [10]。新安江模型是一种适用于我国湿润半湿润地区的概念性流域水文模型 [11],其中,蒸散发采用三层模型计算;产流计算选择蓄满产流模型;总径流采用自由水库结构被划分为地表径流、壤中流和地下径流;汇流计算采用线性水库;河道汇流采用马斯京根演算。模型参数主要包括以下4类:1) 蒸散发参数;2) 产流模型参数;3) 水源划分参数;4) 汇流模型参数。对于新安江模型而言,其模型的输入变量包括流域面均降水量和蒸发。

3. 实例计算与分析

3.1. 模型评价指标

基于水文预报的规范以及从安康水库的实际情况出发,选择洪峰流量相对误差和洪量相对误差这两个指标,对两个模型进行对比分析,同时采用纳什模型效率系数评价LSTM模型的精度,如公式(7)所示。

N S = 1 t = 1 n ( Q o t Q p t ) 2 t = 1 n ( Q o t Q o ¯ ) 2 (7)

式中:n是径流序列的长度, Q p t Q o t 分别表示t时刻径流的预报值和实测值,m3/s; Q o ¯ 是实测径流均值,m3/s。该系数越接近1,表示模型效果越好。

3.2. LSTM模拟计算结果

LSTM神经网络需要构建多层复杂网络结构,并且选取不同特征值来适配最优模拟目标结果,本文在尝试多种网络结构以及不同的特征值后,最终选取双层LSTM网络结构,选取时间、降雨、前一天入库流量作为特征值,模拟安康水库的入库洪水过程。

本文LSTM模型选择以日为计算时段,以1991~2017年序列资料为计算期,选取1991~1995作为率定期,1996~2017作为检验期。检验期22年(1996~2017)实测值与预报值对比,LSTM模型的Nash效率系数为0.926,LSTM的模拟效果明显优于新安江模型。图6绘制几个代表年汛期降雨径流过程及模拟结果,LSTM模型模拟的入库径流与实测入库径流总体比较吻合。

3.3. 新安江模拟计算结果

同样,新安江模型选择以日为计算时段,以1991~2017年序列资料为计算期,选取1991~1995作为率定期,1996~2017作为检验期,新安江模型参数率定结果如表1所示,检验期22年(1996~2017)实测值与预报值对比,新安江模型的Nash效率系数为0.540。图7给出几个代表年汛期新安江模型模拟的汛期过程,由图可见新安江

Figure 6. Flood seasonal runoff hydrograph simulated by LSTM model

图6. LSTM模型模拟的汛期径流过程线

Table 1. Calibrated parameters of Xinanjiang model

表1. 新安江模型参数率定结果

Figure 7. Flood seasonal runoff hydrograph simulated by Xinanjiang model

图7. 新安江模型模拟的汛期径流过程

模型模拟的效果不理想,峰值偏低,峰现时间也不太吻合。

3.4. 结果对比分析

为了进一步分析LSTM模型的实际效果,表2给出了检验期22年(1996~2017)年模拟和汛期模拟的Nash效率系数。LSTM模型的Nash效率系数的大部分模拟结果都在0.9以上,而对应的新安江模型的Nash效率系数为0.5左右。从检验期22年(1996~2017)的均值,LSTM模型和新安江模型的Nash效率系数分别为0.926和0.540,可以看出LSTM模型的模拟效果明显优于新安江模型。

Table 2. Comparison of annual and flood seasonal Nash efficiency coefficients simulated by LSTM model and Xinanjiang model

表2. LSTM和新安江模型分别模拟的年和汛期Nash效率系数比较

图6图7可见,就洪峰流量看,两个模型模拟的结果均小于实测流量,但是LSTM网络模型的模拟结果更接近实际值;就峰现时间看,新安江模型模拟的洪水过程,峰现时间比实际情况晚,甚至会出现实际上不存在的洪水过程,而LSTM模型模拟的洪水峰现时间基本与实际洪水过程吻合,模拟精度较高。显然,从图形总体来看,LSTM模型的模拟效果远比新安江模型的模拟效果好。

需要说明的是,本文的研究所用到的安康流域降雨站点(图1所示的8个雨量站点)偏少,导致新安江模型的模拟精度较低。同时也说明,LSTM模型对流域降雨站点的密集程度要求不那么高,而对历史洪水过程的资料整编的精度要求较高。

4. 结论

依据以上的研究计算结果,可以得到以下2点结论:

1) LSTM模型对安康水库洪水过程模拟时,仅使用降雨与径流的历史过程,相对于新安江模型在一定程度上更简便,模拟效果也明显优于新安江模型。

2) 在日洪水过程模拟的基础上,进一步研究LSTM模型在时段洪水过程的模拟,以便将LSTM模型应用于安康水库实时洪水预报。

文章引用: 何 伟 , 万 俊 , 左园忠 , 石静涛 , 吴金津 , 郭 炅 (2020) 基于LSTM模型模拟安康水库洪水过程。 水资源研究, 9, 202-210. doi: 10.12677/JWRR.2020.92021

参考文献

[1] 武连洲, 白涛, 哈燕萍, 等. 水文序列变异对水库调度运行的影响研究[J]. 水资源与水工程学报, 2016, 27(4): 88-92. WU Lianzhou, BAI Tao, HA Yanping, et al. Effect of hydrological sequence variation on operation reservoir. Journal of Water Resources & Water Engineering, 2016, 27(4): 88-92. (in Chinese)

[2] 杨光, 郭生练, 陈柯兵, 等. 基于决策因子选择的梯级水库多目标优化调度规则研究[J]. 水利学报, 2017, 48(8): 914-923. YANG Guang, GUO Shenglian, CHEN Kebing, et al. Multi-objective cascade reservoir optimal operation rules based on decision factor selection. Journal of Hydraulic Engineering, 2017, 48(8): 914-923. (in Chinese)

[3] 冯钧, 潘飞. 一种LSTM-BP多模型组合水文预报方法[J]. 计算机与现代化, 2018(7): 82-85. FENG Jun, PAN Fei. A hydrologic forecast method based on LSTM-BP. Computer and Modernization, 2018(7): 82-85. (in Chinese)

[4] 周研来, 郭生练, 张斐章, 等. 人工智能在水文预报中的应用研究[J]. 水资源研究, 2019(1): 1-12. ZHOU Yanlai, GUO Shenglian, CHANG Fi-John, et al. Hydrological forecasting using artificial intelligence techniques. Journal of Water Resources Research, 2019(1): 1-12. (in Chinese)

[5] 陈卓, 孙龙祥. 基于深度学习LSTM网络的短期电力负荷预测方法[J]. 电子技术(上海), 2018, 47(1): 39-41. CHEN Zhuo, SUN Longxiang. Short-term electrical load forecasting based on deep learning LSTM networks. Electronics Design & Application, 2018, 47(1): 39-41. (in Chinese)

[6] BENGIO, Y., SIMARD, P. and FRASCONI, P. Learning long-term dependencies with gradient descent is difficult. IEEE transactions on neural networks, 1994, 5(2): 157-166.
https://doi.org/10.1109/72.279181

[7] HOCHREITER, S., SCHMIDHUBER, J. Long short-term memory. Neural Computation, 1997, 9(8): 1735-1780.
https://doi.org/10.1162/neco.1997.9.8.1735

[8] 江衍铭, 张建全, 明焱. 集合神经网络的洪水预报[J]. 浙江大学学报(工学版), 2016, 50(8): 1471-1478. CHIANG Yenming, ZHANG Jianquan, MING Yan. Flood forecasting by ensemble neural networks. Journal of Zhejiang Uni-versity (Engineering Science), 2016, 50(8): 1471-1478. (in Chinese)

[9] 钱承萍, 黄川友. 新安江三水源模型与水箱模型在清江流域上的应用与比较[J]. 西北水电, 2013(2): 4-7. QIAN Chengping, HUANG Chuanyou. Application and comparison of Xinanjiang model and Tank model in Qingjiang catch-ment Northwest Hydropower, 2013(2): 4-7. (in Chinese)

[10] 赵人俊, 王佩兰. 新安江模型参数的分析[J]. 水文, 1988(6): 4-11. ZHAO Renjun, WANG Peilan. Analysis of Xinanjiang model parameters. Journal of China Hydrology, 1988(6): 4-11. (in Chi-nese)

[11] 刘佩瑶, 郝振纯, 王国庆, 等. 新安江模型和改进BP 神经网络模型在闽江水文预报中的应用[J]. 水资源与水工程学报, 2017, 28(1): 40-44. LIU Peiyao, HAO Zhenchun, WANG Guoqing, et al. Application of Xinanjiang model and the improved BP neural network model in hydrological forecasting of the Min River. Journal of Water Resources and Water Engineering, 2017, 28(1): 40-44. (in Chinese)

分享
Top