1. 引言
水面蒸发是指发生在自由水面上的蒸发过程,是自然界中水循环基本要素[1] [2],同样也是导致湖泊、水库等水体水量损失的重要因素之一[3] [4]。因此,科学估算水面蒸发对于水资源管理有重要意义。
国内外很多专家学者对于水面蒸发模型的研究开展了很多工作。1802年Dalton [5]通过大量的试验,提出水面蒸发与水汽压、风速成正比,即道尔顿蒸发模型。1948年Penman [6]提出彭曼公式,为水面蒸发计算提供了一种较科学的方法。在国内,李万义[7]分析了水面蒸发的主要影响因素,并以此提出了一个基于水面蒸发量过程的水面蒸发模型。闵骞[8]等通过分析水面蒸发物理机制,在相关研究成果基础上对道尔顿模型进行改进,提出了多因子水面蒸发模型。上述水面蒸发模型主要基于经验公式,具有一定的区域适用性。近年来,随着人工智能算法的迅速发展,包括支持向量机、神经网络等机器学习开始应用于水面蒸发模型的构建。刘彩红[9]等应用BP神经网络开展新疆某平原地区的水面蒸发预测,通过实测数据验证,表明有较好的实用性。彭玉洁、张东东[10]等提出基于VMD-LSTM水面蒸发预测模型,并应用于三峡水库巴东站的月水面蒸发预测,数据表明该模型具有较好的拟合精度。陈志月,吴立峰[11]等基于GPR、CatBoost、XGBoost三种模型预测江西地区水面蒸发量,模拟效果优于传统经验模型。陆云燕、王振龙等[12]基于主成分分析和BP神经网络开展五道沟水面蒸发计算研究,实测值与模拟值误差较小。相关研究表明[13] [14],机器学习可以通过分析大量数据,识别非线性关系,提升水面蒸发量模拟精度。
丹江口水库作为南水北调中线工程的核心水源地,大坝加高后,正常蓄水位提高至170 m,其水资源的合理调配和科学管理至关重要。水库水面蒸发是丹江口水库水资源损失的重要组成部分,准确模拟计算水面蒸发量对于水库蓄水、供水调度具有指导意义。基于上述,本文通过收集丹江口水库蒸发站蒸发及气象实测资料,采用灰色关联度分析方法,探讨水面蒸发与气象因子之间的关联度,开展基于BP神经网络的丹江口水库蒸发模型研究,以期为丹江口水库水面蒸发量科学估算提供支撑。
2. 研究区域概况及数据收集
2.1. 工程流域概况
丹江口水库位于湖北省丹江口市和河南省南阳市淅川县,是由汉江干流与支流丹江两个库区组成的并联式水库。2012年大坝主体加高工程完工后,正常蓄水位由157 m提高至170 m,相应水面面积扩大至1024 km2,库容272亿m3。丹江口水库多年平均入库径流量为380亿m3,设计多年可向北方20多座城市调水95亿m3,将有效缓解中国北方水资源严重短缺局面。水库自2014年蓄水后,多年平均水面面积扩大为788 km2。
库区所在流域属亚热带季风区,多年平均年降水量约为700~1100 mm。降水量年内分配不均匀,5~10月降水占全年的70%~80%,7、8、9三个月占年降水量的40%~60%。
2.2. 蒸发站概况
丹江口水库蒸发站由长江水利委员会汉江水文水资源勘测局于2014年1月设立,位于丹江口水利枢纽大坝左岸。该站的建设目的主要为建立丹江口库区水面蒸发模型及经验公式、探究水陆蒸发换算系数、气象要素与水面蒸发的关系。同时为区域水资源和丹江口水库水量平衡研究收集基础数据及南水北调中线工程运行调度服务。
丹江口水库蒸发监测系统由两部分组成,分别为陆上水面蒸发观测场(简称陆上蒸发站)和漂浮水面蒸发观测场(简称漂浮蒸发站),两者距离约220 m。蒸发系统观测要素有蒸发、水温、气温、降水、相对湿度、日照、气压、总辐射、土壤湿度、地温、风向、风速等。漂浮蒸发站2017年正式投入运行,收集有较完整的蒸发及气象资料。丹江口库区及蒸发站位置如下图1所示。
图1. 丹江口库区水系及蒸发站分布
2.3. 数据收集
根据研究需要,本文收集了丹江口水库漂浮蒸发站的实测水面蒸发、降水及气象资料,资料系列从2017年1月至2022年4月。所用数据来源于长江水利委员会水文局汉江水文水资源勘测局,且均为整编数据,并经过长江委水文局组织的可靠性、一致性和代表性审查。
3. 研究方法
3.1. 灰色关联度分析
灰色关联度是灰色关联分析方法度量事物或者序列之间的关联性的一种准则。它的思想是根据比较数列与参考数列曲线族的几何相似度来确定两者的关联度,比较数列与参考数列曲线的几何形状相似度越高,两者关联度则越大。
应用灰色关联度开展综合评价的具体步骤如下:
1) 构建原始评价矩阵及参考数列,设有m个对象、n个指标构成的评价问题,
为第i个对象第j个指标的指标值,原始评价矩阵为:
(1)
设定参考数列为
。
2) 一般采用均值化处理方法对指标进行标准化处理,标准化后序列为:
(2)
其中,
为标准化后参考数列。
3) 对经过标准化处理后的数据序列,分别计算每个被评价对象指标序列与参考数列对应元素的绝对差值,即:
(3)
计算绝对误差的最值:
(4)
(5)
4) 计算比较序列与参考数列每个元素的关联系数:
(6)
式中:
为分辨系数,一般取0.5;关联系数
是不超过1的正数,它代表第i个比较序列
与参考序列
在第j个属性指标上的关联度。
5) 计算关联度
对各个指标与参考序列对应元素的关联系数求均值,得到关联度
:
(
) (7)
关联度
取值在
之间,
越接近1,说明比较序列与参考序列的关联程度越高;反之,则关联程度越低。
3.2. BP神经网络
BP神经网络是在20世纪80年代由Rumelhart和McCelland等科学家提出,属于一种基于误差逆传播算法进行训练的多层前馈网络[15],广泛应用于各种工程应用领域。它可以快速并大量地学习、记忆并存储输入–输出模式的非线性函数关系,而不需要事前建立准确的数学模型,具有很强的近似数学映射能力。其学习规则通常采用训练误差极小化的梯度法,基于反向传播改变神经元的阈值和权值,使其误差平方和最小。实际应用中,往往采用三层的神经网络,由输入层、隐含层、输出层组成,每层有多个神经元,各层之间以权重相连,如图2所示。
图2. 多个输入1个输出的三层BP神经网络拓扑结构
对于三层的BP神经网络,其输入向量
,其中
,输入层到隐含层的权值为
,阈值为
,隐含层有l个神经元,则输出量为:
,
(8)
输出层有m个神经元,隐含层到输出层的权值为
,阈值为
,输出层的输出量为:
,
(9)
式中:
为激活函数,连续且可导。
BP神经网络算法性能评价通过网络训练值和实际值的差值大小来衡量,误差计算公式如下:
(10)
式中:
为期望输出,记
,则有:
(11)
输入层到隐含层的权值
,隐含层到输出层的权值
调整值分别为:
(12)
(13)
阈值更新公式为:
(14)
(15)
式中:
为学习率。
通过反复优化迭代,损失函数收敛,网络拟合性能最优,由神经网络模型计算得到网络输出。
3.3. 数据评价指标
本文使用纳什系数NSE,平均绝对误差MAE、平均相对误差百分比MAPE这三项评价指标来评估构建的人工神经网络模型对月水面蒸发量的预测效果。NSE是衡量预测结果与实际观测值之间吻合程度的指标,其值越接近1,表明模拟精度更高。MAPE以百分比的形式表示预测值与实际值之间的平均相对误差。各项指标计算公式分别如下:
(16)
(17)
(18)
式中:
为实测值;
为模拟值;
为实测值平均值;n为数据系列长度。
4. 蒸发模型构建及结果分析
4.1. 影响因子筛选
不同的气象因子对水面蒸发影响具有差异性,在进行模型构建之前,需要通过相关性分析正确认识水面蒸发量与气象因子之间的关系,以获取相关性强的影响因子进行水面蒸发模型研究,从而进一步提高模型模拟精度。本文选取的灰色关联度分析气象因子见表1所示。
表1. 灰色关联分析选用气象要素指标
序号 |
气象要素 |
单位 |
代表字母 |
1 |
月蒸发量 |
mm |
E |
2 |
月降水量 |
mm |
P |
3 |
月平均湿度 |
% |
RH |
4 |
月平均风速 |
m/s |
W |
5 |
月日照时数 |
h |
R |
6 |
月平均气温 |
℃ |
T |
7 |
月平均水温 |
℃ |
TS |
8 |
月平均大气压 |
hpa |
Pa |
9 |
月平均水汽压 |
hpa |
e |
考虑资料的年系列情况,采用以月尺度进行模型构建;通过收集到的日序列统计资料得到月序列资料,将各月资料进行算术平均得到月平均值,2017~2021年各项指标月均值统计如表2所示。
表2. 丹江口水库漂浮蒸发站蒸发及气象要素月均值统计
月份 |
蒸发/mm |
降水/mm |
日照时数/h |
水温/℃ |
水气压/hPa |
气温/℃ |
相对湿度/% |
风速/m/s |
汽压(hPa) |
1 |
70.4 |
32.0 |
132.9 |
9.4 |
5.7 |
4.3 |
64.0 |
1.5 |
1008.2 |
2 |
51.6 |
22.1 |
139.2 |
9.5 |
6.8 |
7.0 |
70.6 |
1.5 |
1005.2 |
3 |
57.2 |
54.2 |
166.8 |
11.9 |
9.6 |
11.7 |
72.0 |
1.6 |
992.6 |
4 |
78.2 |
59.7 |
187.7 |
16.4 |
13.0 |
16.4 |
74.0 |
1.7 |
997.0 |
5 |
93.6 |
82.3 |
204.1 |
21.9 |
17.8 |
20.8 |
69.8 |
1.6 |
991.5 |
6 |
102.7 |
111.1 |
171.7 |
26.3 |
22.9 |
25.4 |
76.6 |
1.6 |
986.7 |
7 |
115.3 |
81.8 |
210.9 |
29.2 |
26.5 |
27.6 |
77.8 |
1.6 |
969.2 |
8 |
139.2 |
123.3 |
185.3 |
29.0 |
23.8 |
27.5 |
77.2 |
4.1 |
987.4 |
9 |
115.2 |
92.1 |
158.5 |
25.0 |
25.1 |
22.7 |
77.2 |
1.7 |
994.4 |
10 |
112.4 |
119.9 |
135.6 |
20.4 |
18.7 |
16.8 |
76.8 |
1.8 |
996.0 |
11 |
106.2 |
37.0 |
104.2 |
17.3 |
11.6 |
11.7 |
69.3 |
1.7 |
963.2 |
12 |
83.1 |
9.7 |
133.3 |
12.9 |
8.5 |
6.8 |
65.8 |
1.8 |
995.6 |
基于MATLAB语言编写的灰色关联度程序,分析漂浮站月蒸发量与各气象因子的相关度,其中月平均蒸发量作为参考系列,其他气象要素月均值作为比较系列。通过进行无量纲处理和灰色关联系数各个步骤计算,进而得出各气象要素各月关联系数,结果见表3。对1~12月各气象因子灰色关联系数求取平均值,得到各气象指标与月蒸发的关联度如图3所示。
表3. 丹江口水库漂浮蒸发站蒸发与气象要素各月关联系数
月份 |
降水 |
日照 |
水温 |
水汽压 |
气温 |
相对湿度 |
风速 |
气压 |
1 |
0.333 |
0.700 |
0.650 |
0.718 |
1.000 |
1.000 |
1.000 |
1.000 |
2 |
0.372 |
0.846 |
0.679 |
0.964 |
0.852 |
0.949 |
0.562 |
0.855 |
3 |
0.514 |
0.809 |
0.553 |
0.704 |
0.903 |
0.788 |
0.556 |
0.766 |
4 |
0.511 |
0.941 |
0.495 |
0.749 |
0.860 |
0.669 |
0.524 |
0.695 |
5 |
0.653 |
0.812 |
0.466 |
0.645 |
0.651 |
0.591 |
0.896 |
0.611 |
6 |
0.878 |
0.795 |
0.737 |
0.533 |
0.555 |
0.527 |
0.520 |
0.540 |
7 |
0.549 |
0.733 |
0.524 |
0.849 |
0.524 |
0.524 |
0.524 |
0.483 |
8 |
0.836 |
0.579 |
0.801 |
0.579 |
0.583 |
0.581 |
0.607 |
0.579 |
9 |
0.936 |
0.997 |
0.696 |
0.995 |
0.889 |
0.892 |
0.682 |
0.434 |
10 |
0.851 |
0.801 |
0.488 |
0.767 |
0.658 |
0.641 |
0.816 |
0.416 |
11 |
0.355 |
0.636 |
0.355 |
0.428 |
0.494 |
0.458 |
0.487 |
0.376 |
12 |
0.641 |
0.439 |
0.407 |
0.333 |
0.377 |
0.359 |
0.365 |
0.355 |
从图3可知,日照时数与水面蒸发的关联度为0.757,远大于其他气象要素,对漂浮水面蒸发影响最为显著。气温、水汽压、相对湿度关联度分别为0.695、0.689、0.665,对水面蒸发影响次之。风速、降水、气压、水温关联度较小,分别为0.628、0.619、0.592、0.571。日照时数间接反映了太阳辐射,而太阳辐射是水体蒸发的能量源泉,故对蒸发的影响是最大的[16]。气温、水汽压与水面蒸发的关联度基本相当,气温升高会使水汽压差增大,
图3. 丹江口漂浮蒸发站蒸发量与气象要素关联度
这为水汽分子从水面逸出并向空气中扩散提供了更强的动力,从而加快水面蒸发速度。相对湿度是空气中实际水汽压与同温度下饱和水汽压的百分比,相对湿度增大时,空气,水汽分子的扩散速度会减慢,水面蒸发速率变小。水温与水面蒸发的关联度最小,可能与丹江口水库为大水深水库,水体温度变化较小有关[17] [18]。
4.2. BP神经网络模型构建
1) 选择输入输出因子及预处理
根据上文影响因子筛选及参考相关文献[5] [19]研究成果,选取日照、气温、水汽压、相对湿度、风速作为丹江口水库漂浮蒸发站水面蒸发主要影响因子,作为三层前向神经网络的输入,水面蒸发作为神经网络的输出。在建模前对学习样本归一化处理,将数据全部映射到[0,1]区间,提升模型的训练效率。
2) 划分数据集
根据2017年1月至2022年4月(其中部分月份蒸发站施工,数据缺测未纳入采用) 60组逐月水面蒸发及气象数据样本,选取其中2017年1月~2020年9月(部分月份数据缺测未采用,下同) 42组数据当作训练样本,用于训练神经网络模型,通过反向传播算法不断调整模型的权重和阈值,使模型的输出尽可能逼近训练集中的实际水面蒸发量;选用2020年10月~2022年4月18组数据作为验证样本,用于独立验证训练好的模型的泛化能力和预测精度,评估模型在未参与训练的数据上的表现。
3) 设计网络结构
由上文可知,BP网络输入神经元个数为5个,输出神经元为1个。隐层神经元数的选择往往靠经验确定,本文参考有关文献[20],应用经验公式:
,其中:m为输入神经元数,n为输出层神经元数,根据公式隐含层神经元数取6,模型结构为5-6-1。
4) 模型参数及训练结果
采用MATLAB R2016a编写程序,对输入的蒸发及气象要素数据进行训练。BP神经网络传递函数及其他训练参数如表4所示。
表4. BP神经网络参数
序号 |
参数名称 |
参数值 |
1 |
传递函数 |
tansig |
2 |
网络训练函数 |
trainlm |
3 |
网络权值学习函数 |
learngdm |
4 |
性能函数 |
nse |
5 |
学习率 |
0.1 |
6 |
允许最大迭代次数 |
1000 |
7 |
附加动能因子 |
0.95 |
8 |
最大误差设定 |
0.001 |
经过训练,网络精度满足要求,得到神经网络训练结果,输入层到隐含层、隐含层到输出层的权值(IW1, IW2)及阈值(B1, B2)见表5。
表5. BP神经网络模型权值及阈值
隐藏层神经元 |
IW1 |
B1 |
IW2 |
B2 |
日照 |
水汽压 |
气温 |
相对湿度 |
风速 |
1 |
−0.474 |
−1.166 |
1.285 |
−0.442 |
2.459 |
1.505 |
1.853 |
0.759 |
2 |
1.834 |
−1.194 |
−2.714 |
−0.010 |
1.991 |
−2.629 |
0.720 |
3 |
−1.222 |
0.012 |
0.380 |
2.413 |
0.039 |
0.085 |
0.553 |
4 |
−1.562 |
0.427 |
−0.583 |
1.266 |
1.606 |
−1.007 |
0.662 |
5 |
−2.477 |
−1.437 |
−0.033 |
0.667 |
−2.741 |
0.473 |
−0.961 |
6 |
−0.701 |
−1.674 |
1.272 |
0.515 |
0.013 |
−1.719 |
−2.607 |
4.3. 结果分析
根据上文训练的神经网络模型,对2017年1月~2022年4月60组样本数据进行模拟得到逐月蒸发计算值,并与月实测值过程比较,得到月蒸发实测值与模拟值过程对比如下图4所示,另外为了揭示其相关性,对两者进行线性回归分析如图5所示。
图4. 丹江口水库漂浮站模拟计算蒸发量与实测蒸发量过程对比
图5. 丹江口水库漂浮站实测与模拟水面蒸发散点图
从图4和图5可知,水面月蒸发量模拟值与实测值总体变化过程趋势基本一致,两者线性相关性较高,拟合效果较好。在少数极端天气下,如2018年8月气温和日照时数较其他月份显著偏大,2019年2月气温和日照时数、降水等要素较历史同期月份显著偏小,导致模型的月蒸发量计算误差略有增大。可能是由于极端天气条件下各因素之间的相互作用更加复杂,尤其在高温条件下,水分子的热运动变得更加剧烈,水体的饱和水汽压会显著增大。这使得水面与大气之间的水汽压差进一步增大,从而加快了水面蒸发的速度。水面蒸发模型没有充分考虑到高温天气下饱和水汽压的非线性变化以及相对湿度的大幅波动,就很可能导致计算出的蒸发量比实际值偏小,进而降低模型的计算精度[21]。针对这一问题,后续将进一步收集和补充极端天气数据,对模型进行优化和改进,以提高其在复杂情况下的模拟能力。
以纳什系数和平均绝对误差、平均相对误差作为精度评定指标,分别对模型训练期和验证期月模拟值与实测值进行统计分析,得到月尺度人工神经网络模型精度如表6所示。
表6. 月尺度BP人工神经网络模型精度评定
类别 |
纳什系数 |
平均绝对误差/mm |
相对误差/% |
训练期 |
0.88 |
8.6 |
11.5 |
验证期 |
0.81 |
9.7 |
12.6 |
从上表可知,对于漂浮水面蒸发,人工神经网络在率定期和验证期均有不错的精度效果,其中在模型训练阶段精度更优。训练结果与实测值之间的纳什系数为0.88,平均绝对误差为8.6 mm,平均相对误差为11.5%;验证结果与实测值之间的纳什系数为0.81,平均绝对误差为9.7 mm,平均相对误差为12.6%。说明所建模型合理可行,可用于丹江口水库漂浮水面蒸发模拟。
5. 结论
1) 本文通过收集丹江口水库漂浮蒸发站实测资料,基于灰色关联分析,探讨了蒸发与各气象要素的关联程度,筛选出与水面蒸发关联度较高的5个气象因子,分别为日照时数、平均气温、平均气压、平均相对湿度、平均风速。
2) 基于灰色关联度分析结果作为BP神经网络输入层,构建了结构为5-6-1的三层BP神经网络模型。在训练期和验证期纳什系数均在0.8以上,绝对误差在在10 mm以内,平均相对误差在13%以下。结果表明,基于灰色关联分析和BP神经网络模型可以用于丹江口水库逐月水面蒸发模拟。
基金项目
汉江集团科研项目“基于精准调度下丹江口入出库多因子量化分析研究”(HJ-JS-KF202403)。长江水利委员会水文局科技创新基金项目(SWJ-25CJX16)。
NOTES
作者简介:张成孝,男,工程师,硕士,主要从事水文水资源工作,Email: 417959548@qq.com