1. 引言
径流模拟对水土流失的防治、水体污染的影响评价、污染事件预测、水资源评价、洪水预报等实际问题研究都非常有必要 [1] ,也是水文模拟中最重要的一步。由于气候变化和人类活动加剧,青海湖的水位每年下降近10 cm [2] [3] 。而沙柳河作为流入青海湖的第二大河流,其径流量占入湖地表径流总量的30%左右,因此,模拟预测沙柳河径流变化对于分析青海湖水量变化和水资源开发利用具有重要意义。
传统的经验相关法很难精确模拟具有高度非线性、时变、空间分布不均匀、动态不确定的降雨径流过程 [4] [5] ,而SWAT分布式水文模型客观考虑了气候和下垫面因子的空间分布对流域径流形成的影响,能较真实地模拟现实世界流域降雨径流形成的物理过程,且在结构上考虑了融雪和冻土对水文循环的影响,所以较适用于我国西北高寒区 [6] [7] 。目前,有关学者基于SWAT模型对青海省湟水河与布哈河流域进行了研究,模拟结果的R2和Ens在0.60~0.80左右,但存在基流模拟值偏小和不确定性较大等问题 [8] - [10] 。
人工神经网络(Artificial Neural Networks,简称ANNs)是系统模型研究的新技术,也是生物学、非线性科学、人工智能和信息处理等研究的热点 [11] ,与分布式水文模型相比,不需要大量观测资料,尤其适用于我国广大基础数据资料缺乏地区的径流模拟。就流域径流模拟而言,曹广学和鞠琴 [12] [13] 等采用改进的BP神经网络建模,表明该模型可用于水文模拟;刘刚和梁国华 [14] [15] 等利用BP人工神经网络模型达到了期望的模拟精度;陶凤玲和刘晓刚 [16] [17] 等利用BP神经网络预测径流,相对误差均小于10%,精度较高;李娇 [18] 等输入降雨、时间、气温、风速和辐射量5个因子,结果表明BP模型的精度较SWAT高;余楚 [1] 等对宜昌一个小流域分类建立BP神经网络模型,结果表明该模型对高流量和低流量的模拟精度高。但以上研究均为基于BP人工神经网络直接建模,而非用于模拟结果的进一步处理。
综上,SWAT模型的径流模拟精度根据流域、数据条件不同差异较大,效果不一定十分理想,而BP人工神经网络模型不需深入理解水文系统中具体的物理机制就可以实现径流过程的模拟 [19] ,非常适用于多种复杂多变的非线性系统 [20] 。目前的BP人工神经网络必须借助Matlab工具箱,输入方式比较复杂。基于以上原因,本文以沙柳河流域为研究区域,先分别运用SWAT和BP人工神经网络建立模型,再将SWAT模拟结果作为输入层变量之一,利用BP人工神经网络进行模型率定和验证(简称BP后处理),分析比较三者的径流模拟结果,探索BP人工神经网络模型在该流域径流模拟后处理中的适用性。
2. 数据与方法
2.1. 研究区概况
沙柳河(见图1)又称伊克乌兰河,位于我国西北高寒区青海省刚察县,是流入青海湖的第二大河流。流域面积1442 km2,河长105.8 km,河口海拔3195 m,年径流量为2.86亿m3。流域气候属高原大陆性气候,寒冷期长,无明显四季之分,多风,昼夜温差大,多年平均气温为−0.6℃~5.7℃,年平均降水量为324.5~522.3 mm,年平均蒸发量为1500.6~1847.8 mm,每年6~9月为汛期,冰冻期6个月,流域上游径流以降水、冰川融雪和沼泽补给为主。流域内多峡谷,土地利用类型主要包括高寒草甸、滩地、低覆盖草地、中覆盖草地、林地,共5类,土壤类型主要包括沼泽土、草毡土、黑毡土、钙质石质土、栗钙土、石灰性黑钙土,共6类。
2.2. 基础数据
SWAT模型输入数据主要有DEM、土地利用、土壤、水文气象数据等。本文采用中科院“地理空间数据云”空间分辨率30 m的DEM、中科院的1:25万土地利用数据、南京土壤所的1:100万土壤数据。研究区水文气象数据选取2000~2010年的月序列数据,包括2个雨量站的降水数据,刚察水文控制站的径流数据以及刚察气象站点的气温、风速、日照时数、相对湿度。模型的模拟期为2000~2010年,其中2000~2007年为率定期,2008~2010年为验证期。
2.3. SWAT分布式水文模型
SWAT是一个具有很强物理机制的大中尺度流域长时段的分布式水文模型。该模型将流域划分为多个子流域,每个子流域由不同的水文响应单元(HRU)组成,利用空间数据信息模拟复杂大流域中多种不同的水文物理过程,包括水、沙、化学物质和杀虫剂的输移与转化过程 [21] 。SWAT-CUP是由瑞士联邦水质科学技术研究所(Eawag)专门针对SWAT模型开发的提供敏感性分析、率定、验证和不确定性分析的计算机程序,实现了自动参数率定,每次模拟后,都会给出最优参数取值范围和本次模拟的最优参数值,它提供了SUFI2、GLUE、参数求解法ParaSol、蒙特卡洛马尔科夫链McMc和粒子群优化算法PSO五种率定和验证算法。本文采用GLUE (Generalized Likelihood Uncertainty Estimation)算法进行模型的率定和验证。

Figure 1. Location of Shaliu River basin and distribution map of the hydrological and meteorological stations
图1. 沙柳河流域地理位置及水文气象站分布图
2.4. BP人工神经网络模型
人工神经网络基于对人脑或自然神经网络若干基本特性的抽象和模拟,可充分逼近任意复杂的非线性关系,快速进行大量运算,它通过最速下降法学习,通过反向传播调整网络的权值和阈值,使误差平方和最小,通过数次学习和反馈将误差降低。其中,反向传播(Back Propagation,简称BP)人工神经网络是一种按误差逆传播算法训练的多层前馈网络。典型的BP网络为3层前馈神经网络,包括输入层、中间隐含层和输出层。BP算法的学习过程包括正向传播和反向传播,正向传播时,输入信息从输入层经隐含层逐层处理,每一层节点的状态只影响下一层节点的状态,如果在输出层不能得到期望的输出,则转入反向传播,将误差信号沿原来的连接通路返回,通过修改各层节点的权值,使误差最小 [14] ,这里神经元的传递函数采用Sigmoid函数。
由北京师范大学数字流域实验室开发的BP人工神经网络模拟应用工具V1.0与传统的BP神经网络模型相比具有很大优势,一是脱离Matlab等平台,能够独立完成建模过程,直接在Windows系统运行;二是提供了更加便捷的输入方式,使用者只需按照规定格式准备训练与验证所需的输入数据,工具实现了率定和验证的同步运行,方便用户使用 [18] ,操作界面见图2。
2.5. 评价指标
本文选用复相关系数R2和Nash-Suttclife效率系数(Ens)两个统计参数进行模拟效果评价。R2和Ens的表达式如下:
(1)
(2)

Figure 2. User interface of BP Artificial Neural Network Tool V1.0
图2. BP人工神经网络模拟应用工具V1.0操作界面
式中:n表示序列长度,i表示序数,
、
分别为实测流量与模拟流量序列(m3∙s−1),
、
分别为实测流量与模拟流量序列的均值(m3∙s−1)。R2 = 1表示实测值和模拟值的变化趋势完全一致,R2偏离1越远,表示实测值和模拟值吻合度越低;Ens越接近1,表明模拟值越接近实测值,Ens越偏离1,表明模拟值越偏离实测值。
3. 结果与讨论
3.1. 基于SWAT分布式水文模型的径流模拟
基于先前准备的基础数据,经过子流域与水文响应单元划分,最终形成了23个子流域,105个HRU。运用SWAT-CUP2009软件的GLUE算法进行参数率定和模型验证,SWAT模型中关于径流的参数有26个,遵循先调整地表径流,再调整土壤水、蒸发、地下径流以及降雪融雪参数的原则发现:径流曲线数CN2、主河道水力传导率CH_K2、主河道曼宁系数CH_N2、坡面流曼宁系数OV_N、地下水的延迟时间GW_DELAY的变化能显著影响研究区径流模拟效果,CN2值越大,下垫面的不透水性越强,径流量越大;CH_N2对河道汇流有重要影响,值越大粗糙度越大流速越慢;OV_N对产流影响小,对水流传输损失量影响大,值越大传输损失量也越大。其他参数如降雨与降雪的临界气温SFTMP、土壤蒸发补偿系数ESCO、土壤可利用水量SOL_AWC(1)、积雪温度延迟因子TIMP、100%积雪覆盖时的最小雪水当量SNOCOVMX等对径流影响也较大。最终确定了20个相对敏感参数,见表1。
径流模拟率定期的复相关系数R2和效率系数Ens分别为0.79和0.78,验证期的R2和Ens分别为0.81和0.71,模拟效果较好。由刚察水文站率定期和验证期月径流过程实测值与SWAT模拟结果径流过程线(见图5)可以看出,刚察站逐月径流模拟值与实测值过程线总体趋势一致,但一方面,2000年、2005年、2007年和2009-2010年丰水期模拟结果离实测值有较大差距,未对春季融雪径流导致的流量增大和汛期洪峰流量进行良好的模拟,原因一是雨量站点少,位于流域内的仅有一个,而降水是径流形成的主要驱动因子,是影响降雨径流过程的关键因素,二是研究区海拔高,空间差异较大,但未对气温和降雨数据进行高程分带设置;另一方面,整个模拟期内枯水期的模拟结果与实测值也有一定差距,存在滞后现象,是由复杂的土壤含水层分布导致的,且各参数之间的相互影响不明确,在实际率定时,往往只对总径流进行率定,枯水期的率定由于无实测资料难以进行 [22] ,无法找出一组绝对适合某流域的参数。
3.2. 基于BP人工神经网络的径流模拟
应用BP人工神经网络模拟应用工具V1.0主要包括两个步骤:
1) 数据准备:训练样本和验证样本,数据格式为*.csv。本文将月降雨量、月最高/最低气温、月平均风速、月辐射量、月平均相对湿度6个因子作为输入层变量,因此输入层个数为6。
2) 系数设置:包括中间层数、权重调节系数、阈值调节系数、误差控制率和最大学习次数。系数选择要合理,否则会使模型结构过于复杂形成过适应,过于简单则难以捕捉复杂的非线性关系 [23] 。本文确定权重调节系数为0.1,阈值调节系数为0.1,误差控制率为0.1。中间层数只决定了验证过程误差收敛的速度,而与最终的收敛水平无关,通常随输入层变量个数的增加而增加,因此本文根据输入层个数经反复尝试,设置中间层数为6,也即隐含层个数。当最大学习次数设置为10,000时,误差–训练验证次数曲线(见图3)已趋于收敛,验证期精度在训练验证9000次附近达到峰值后有所下降是由于过度学习造成的。
表2为率定期和验证期的复相关系数R2和效率系数Ens的具体变化情况。运用BP人工神经网络径流模拟率定期的复相关系数R2和效率系数Ens分别为0.88和0.88,验证期的R2和Ens分别为0.87和0.86,评价指标值较高,由刚察水文站率定期和验证期月径流过程实测值与BP-ANN模拟结果径流过程线(见图5)可以看出,模拟值与实测值过程线总体拟合程度较好,尤其是2004、2007和2010年;枯水期的模拟结果与实测值拟合程度较好,但2001年丰水期的模拟值大大高于实测值,说明纯粹基于数学统计模型的模拟存在很大的不确定性和误

Figure 3. Error-calibration and validation times curve (BP-ANN)
图3. 误差–训练验证次数曲线(BP-ANN)

Table 1. Parameter variation ranges and calibrated values
表1. 参数取值范围及率定值

Table 2. R2 and Ens in the study process of BP-ANN
表2. BP人工神经网络学习过程中的R2和Ens
差;其他年份丰水期模拟效果也不够理想,故此方法有待进一步完善。
3.3. 基于BP人工神经网络的径流模拟后处理
运用BP人工神经网络对SWAT模拟结果进行后处理的主要步骤同3.2节所述,不同的是输入层变量在3.2节的基础上新增了月校正因子(率定期月平均径流量)和SWAT模拟流量,因此输入层个数为8。设置权重调节系数为0.1,阈值调节系数为0.001,误差控制率为0.001,中间层数为10。当最大学习次数设置为10,000时,误差-训练验证次数曲线(见图4)已趋于收敛,由于过度学习,验证期精度在训练验证10,000次附近达到峰值后也有所下降。
表3为率定期和验证期的复相关系数R2和效率系数Ens的具体变化情况。经过BP后处理,率定期的复相关系数R2和效率系数Ens分别为0.92和0.92,验证期的R2和Ens分别为0.90和0.90,评价指标值均达到了0.90,精度很高。由刚察水文站率定期和验证期月径流过程实测值与BP后处理模拟结果径流过程线(见图5)可以看出,模拟值与实测值过程线总体拟合程度好,尤其是2003~2004以及2007年;模拟期内枯水期的模拟结果与实测值拟合程度较好,但2000、2001和2006年三个枯水年丰水期的模拟值较实测值偏高,可能是由于降水量减少、气温下降导致了枯水年,统计模型难以准确模拟,而2005年、2009~2010年丰水期模拟值较实测值偏低是因为训练样本序列长度不够,刘晓刚 [17] 等对玉龙喀什河实测年径流数据的研究中也存在此类问题。总体来说,模型在模拟期内可以较好地重现刚察水文站径流量随时间的演变过程,对丰水期到达时刻把握得较为准确,但对于峰值的模拟仍存在误差。
3.4. 结果分析
运用SWAT模型和BP人工神经网络模型以及BP后处理的刚察站2000~2010年逐月径流模拟结果见表4,可以看出BP后处理的复相关系数R2和效率系数Ens最高,均达到了0.90,模拟效果好,满足模型应用要求。图5表明BP后处理的模拟值与实测值过程线较SWAT模型和BP-ANN模型更为吻合,尤其是丰水期和枯水期的拟合程度显著较高,能够更真实地模拟该流域的径流过程,更具备该流域的适用性。总的来说,BP后处理方法在该研究区具有很好的适用性,能够很好地模拟该流域的水文过程。

Table 3. R2 and Ens in the study process of BP-ANN
表3. BP人工神经网络学习过程中的R2和Ens

Table 4. Monthly runoff simulation results of Gangcha station
表4. 刚察水文站逐月径流模拟结果

Figure 4. Error-calibration and validation times curve (BP post-processing)
图4. 误差–训练验证次数曲线(BP后处理)
4. 结论与展望
本文以沙柳河流域2000~2010年降雨、气温、风速、辐射、相对湿度等实测气象数据为基础,结合流域DEM、

Figure 5. Monthly runoff process of the measured value and simulation result analysis of Gangcha hydrological station in calibration and validation periods
图5. 刚察水文站率定期和验证期月径流过程实测值与模拟结果分析
土地利用、土壤类型等运用SWAT模型模拟了该流域的月径流过程,并对相同的气象数据运用BP人工神经网络进行径流模拟。另外,新增输入层变量——月校正因子和SWAT模型月径流模拟值,运用BP人工神经网络进行径流模拟后处理,以此评价BP人工神经网络用于径流模拟后处理的精度与适用性。三者比较表明BP后处理能有效提高该流域径流模拟精度,适用于该流域的径流模拟研究。
BP人工神经网络不需深入理解具体的物理机制就能够模拟非线性过程,且输入变量少,甚至无需降雨数据,就能大大提高模拟精度。BP人工神经网络模拟应用工具V1.0操作简便,无需重复调整繁杂的参数,能够实现率定和验证同步进行,缩短计算时间,提高工作效率,还能在操作界面直观地显示模拟结果,可以考虑运用BP后处理方法作为分析青海湖水量变化和资源利用的工具。在今后的研究中,还需对网络参数设置做进一步探讨;其次,可以针对研究区状况,考虑增加其他输入层变量或者将径流序列分为不同类型的子径流序列,分别运用神经网络进行后处理,获得更好的模拟效果。
基金项目
国家重点研发计划课题(2016YFC0401308);中央高校基本科研业务费专项资金项目。