基于LS-SVM的东苕溪洪水过程预报方法
2021-04-17姬战生章国稳
姬战生,章国稳,黄 薇
(1.杭州市水文水资源监测中心,浙江 杭州 310016;2.杭州电子科技大学自动化学院,浙江 杭州 310018)
1 问题的提出
东苕溪位于浙江省东北部,发源于浙江省暴雨中心之一的天目山区,下游为杭嘉湖平原河网区,与太湖相连接,是典型的山溪——平原混合性河流。流域坡陡流急,一旦发生强降雨,洪水迅速从山区流入平原河道造成水位暴涨,加之下游河道泄流不畅,洪水直接威胁杭嘉湖平原,极易形成较大的防洪压力[1]。
东苕溪全流域降雨时,既有区间降雨形成的洪水,又受上游3座大中型水库放水影响和下游平原区洪水顶托,同时受蓄滞洪区和德清大闸分洪影响,影响要素多,工况多变,洪水过程复杂,常规水文预报方法难以适用,因此东苕溪洪水预报一直是浙江省水文预报的难点和痛点。目前较为精准的预报以人工经验预报为主,通过分析历史资料建立模型进行洪水预报,但无法充分考虑河道变化、人类活动等因素对水位的影响,存在预报精度不高、预见期短等问题。
随着计算机等新一代技术的迅速发展,人工智能算法在洪水预报中得到进一步的研究和推广,尤其是以支持向量机(SVM)、人工神经网络为代表的学习算法已日趋成熟,在河道水位预报中得到越来越多的应用[2-5]。支持向量机算法的复杂程度取决于样本个数,样本越多算法越复杂,计算速度越慢。最小二乘支持向量机(LS-SVM)是支持向量机的改进形式,采用等式约束代替SVM中的不等式约束,不仅降低模型的复杂程度,而且提高了计算效率[6]。因此,本文以东苕溪瓶窑水文站为例,尝试将LS-SVM算法应用于瓶窑站洪水预报中,并对预报成果进行精度评定,以验证本文所提方法的有效性。
2 研究流域概况
东苕溪属太湖流域,其干流发源于天目山南麓,流经临安、瓶窑、德清等地,至湖州西门杭长桥与西苕溪汇合流入太湖。流域总面积约为2 267 km2,干流长151 km,瓶窑以上流域面积约1 420 km2。流域气候属于亚热带季风气候,湿润多雨,降雨集中在汛期。流域内主要水利工程分“上蓄、中滞、下泄”:“上蓄”工程包括青山、里畈、水涛庄、四岭4座大中型水库,“中滞”工程包括南湖、北湖滞洪区和永建等非常滞洪区,“下泄”工程主要是导流港。流域内主要河道和水利工程分布见图1。
图1 东苕溪流域内主要河道和水利工程分布图
3 预测模型构建
3.1 输入向量构建
支持向量机影响因素的选择是否准确很大程度决定了模型预测精度。本文根据东苕溪控制站瓶窑站的洪水特性,分析出4种影响水位的主要因素:
(1)起涨水位:即预测站点在预测时刻的水位。
(2)区间降水量:降水是引起河道水位变化的一个关键因素。
(3)上游水库放水量:瓶窑站上游有3座大中型水库,水库放水量对瓶窑站水位变化影响较大。
(4)下游水位:预测站点下游的德清大闸水位,能体现下游河道对预测站点的顶托作用。
采用瓶窑起涨水位、区间降水量、上游水库放水量以及德清大闸水位建立特征向量X(n):
式中:Z1(n)为n时刻瓶窑水位,m;Z2(n)为n时刻德清水位,m;Q(n)为n时刻上游水库放水量,m3/s;R(n)为n时刻区间降水量,mm。
3.2 数据归一化
不同的特征量往往具有不同的数量级,而特征量的数量级的差异会对模型优化带来不利影响,常用做法是对所有特征量进行归一化使其处于同一数量级,本文采用的归一化方法如下:
式中:x′为归一化水位数据,m;x为预处理前数据,m;xmax、xmin分别为训练集各特征量的最大值与最小值,m。
3.3 最小二乘支持向量回归机
最小二乘支持向量回归机是支持向量机理论和最小二乘结合得到的算法,首先将样本从原始空间映射到高维线性空间,接着使用传统最小二乘理论实现线性回归,从而实现非线性回归。
假设训练样本为{xi,yi},i=1,...,n,通过核函数Φ将样本映射到一个高维空间并建立线性回归模型:
式中:f(x,w)为估计函数;w为权重;b为阈值。
支持向量回归机的拟合精度可以由损失函数ε来表示。实际数据往往无法实现精确拟合,因此引入松弛因子ξi、。式(3)可以转换为寻求最优回归超平面:
相应的约束条件为:
式中:C(C>0)为惩罚系数,表示控制训练误差的代价。式(4)的优化问题可以通过引入拉格朗日函数转化为对偶问题得到最优解为:
根据Mercer核定理,核函数为K(x,y)=Φ(x) ·Φ(y),式(4)变为:
式(7)为最小二乘支持向量回归机的回归函数。其中ai、和b可以通过约束条件求得,具体如下:
最小二乘支持向量回归机便是基于以上原理建立预测模型。在支持向量机建模过程中,核函数和损失函数参数ε的选择往往对模型预测精度有较大影响。常见的核函数有:RBF、线性、多项式及Sigmoid;而在实际应用中损失函数参数ε一般在0.000 1~0.100 0选取。ε越大则拟合误差越大,支持向量越少;反之,拟合精度越高,但有可能会出现过拟合问题,影响模型泛化能力。
4 实例分析
4.1 构建样本数据集
本文以瓶窑站洪水水位过程为预报对象,以起涨水位、区间降水量、上游水库放水量及下游水位为影响因素,选取东苕溪2007——2020年15场典型洪水过程中瓶窑站涨水段(北湖分洪的场次洪水,选取北湖分洪前的涨水段)对应的水文数据作为样本,构建LS-SVM洪水预报模型。
将所有样本划分为训练样本和预测样本。本文以2007——2018年中的12场洪水数据作为训练样本,用于模型构建;以2019——2020年的3场洪水数据为预测样本,用于检验模型的预测精度。
4.2 模型的训练和预测
对比采用不同核函数类型和损失函数参数ε时瓶窑水位预报结果,发现核函数选择线性函数、损失函数参数ε取0.010 0时模型具有较好的预测结果。据此对训练样本进行训练建模,得到最终的LS-SVM洪水水位过程预报模型,并对预测样本进行预报(预见期取6 h)。训练和预测所得结果与瓶窑站实测水位过程对比见图2~3,各场次洪水的预测精度评定结果见表1。
表1 精度评价表
续表1
图2 LS-SVM模型对训练样本的拟合结果图
图3 LS-SVM模型对预测样本的拟合结果图
从图2和图3可以看出,本文构建的模型对训练样本和预测样本均拟合较好,预报结果较为准确。表1计算结果表明:率定期的洪峰水位绝对误差均值为0.23 m,洪峰水位相对误差均值为3.61%,确定性系数均值为0.92,预报精度达到甲级,预报合格率为100.00%,预报精度为甲级;验证期内洪峰水位绝对误差均值为0.26 m,洪峰水位相对误差均值为4.25%,确定性系数均值为0.95,预报精度达到甲级,预报合格率为100.00%,预报精度为甲级。总体来看,LS-SVM模型在率定期和验证期内的预报精度都很高,均达到甲级精度,说明模型的泛化能力较好,符合支持向量回归机适用于小样本、具有较好“鲁棒性”的特点。
5 结 语
东苕溪是典型的山区——平原混合性河流,坡陡流急,常规水文预报方法难以适用。本文构建一种基于LS-SVM的洪水预报模型,并对瓶窑站2007——2020年15场典型洪水过程涨水段进行模型训练和预测,结果表明预报精度能达到甲级,具有较好的预报效果,可为东苕溪流域防洪决策提供参考。