大宁河流域SCS-CN模型初损取值与CN值确定方法的研究
2022-04-20陈仲邢明娇
陈仲 邢明娇
摘要:本篇文章主要是分析大宁河流域实地的降雨量和流域径流深数据,结合SCS-CN模型估计出合适的关键参数CN,并根据灰色预测模型和BP神经网络模型预测出2019年该地的降雨量和流域径流深,最后根据我们所得到的数据与建模分析的结果说明方案的合理性并比较不同方案的优劣。
一、问题的重述
1.1背景介绍
SCS-CN模型是美国农业部土壤保护局根据美国气候、地形特征及多年水文径流资料研发的一种径流估算经验模型,其结构简单、所需参数较少、模拟精确度较高和前提假设明确,广泛应用于水资源管理、暴雨模拟、径流估算等,该模型的主要参数径流曲线数CN是反映流域前期土壤湿润程度(AMC,anteced-entmoisturecondition)、坡度、土壤類型、土地利用现状等综合特性的参数。该模型在美国、欧洲等国家推广应用取得较好效果。SCS-CN模型也广泛用于我国水资源评价工作中。
由于我国的地域特征与欧美等国家存在着一定的差异,所以直接采用美国农业部水土保持局提供的CN值来进行径流预测就一定会产生拟合程度低等一些列问题,最终导致预测结果不准确,甚至在他们所提供陈CN表中难以查到相应的CN。但如果研究流域中有一定年限长度的降雨径流资料,则可以用研究流域的资料反推CN值。尽管近些年来国内已经提出多种推算CN的计算方法,但是目前对推算CN值方法比较研究还较少,因此本篇文章通过研究中科院下属的某研究机构在长江三峡流域的大宁河流域为期11年(2008-2018)的实地水文监测数据(包括实地降雨量及径流深监测数据),运用数学建模的方法解决下列问题。
1.2具体问题
问题一:请设计自动调参算法,估计CN的最佳值。
问题二:请利用至少2种方法预测2019年逐月的降雨量,计算2019年流域径流深。
二、问题的分析
2.1问题一的分析
针对问题一,首先根据所给SCS-CN模型公式求得每个月的流域最大持水潜力S,根据P>λ×S的条件,筛选出符合条件的月份数据,由公式算出对应的实际CN值。由于目前CN值的半段没有明确的方法,根据现有文献,主要有:平均值法、中值法、算术平均值法、S对数频率分布曲线法和渐近线法5种。根据这5种方法,选择符合条件的后两年的数据,直接或间接求出流域最大持水潜力S和待定的CN值。之后,用多种评价参数进行比较不同方法确定的CN值对SCS-CN模型计算精度影响,并将各种方法测得的径流量Q的均值和标准差与实际值对比,综合考虑将各种方法进行对比,选择出较精确的方法。并根据此种方法得出的CN值,代回原式得出λ值。
2.2问题二的分析
针对问题二,方法一:采用BP神经网络模型,用2017和2018两年的降雨量预测2019年的降雨量;方法二:根据前十一年的每年的1月,采用容错性较好的灰色预测模型,预测第十二年即2019年1月份的降雨量,其他月份同理。用预测的降雨量和第一问得出的精确CN值和调参后的λ值计算出流域径流深。之后,通过对模型的误差分析,比较各模型间的优劣。
三、问题的解答
3.1问题一求解
由于Q只在P>λ×S时有具体运算公式,故我们在计算S值时应先筛选出符合条件的降雨量,进行一系列计算。通过查找文献得CN值的求取主要依靠五种方法对比求取:平均值法,中值法,算术平均值法,S对数频率分布曲线法,渐近线法。
(1)平均值法
将实测降雨径流数据代入上述推导出的公式,计算出S值,取其平均值,将其代入CN公式中计算出CN。
(2)中值法
如上文中求出S值,将其排序取其中值代入CN公式得。
(3)算数平均值法
将上文中求得的S值分别代入公式求取对应CN值,再对其CN值求平均值为最终值。
(4)S对数频率分布法
将上文所求S值及其对应CN值作为随机变量,通过数学计算得到S的频率分布曲线,去频率为0.5时的S得CN。
(5)渐近线法
3.2问题二求解
3.2.1基于灰色预测模型对降雨量的预测
已知参考数据列x(0)=(x(0)(1),x(0)(2),...,x(0)(n)),累加生成列。
建立灰微分方程:
x(0)(k)+az(1)(k)=b,k=2,3,...,n,
求得相应的白化微分方程。
则由最小二乘法,求得使J(u)=(Y−Bu)T(Y−Bu)达到最小值的u的估计值。于是求解方程。
首先,为保证建模方法的可行性,需要对已知数据列作必要的检验处理。设参考数据为x(0),=(x(0)(1),x(0)(2),...,x(0)(n))则计算序列的级比。
按照上文的白化微分公式建立GM(1,1)模型,则可以得到预测值。
由GM(1,1)模型得到指定时区内的预测值,根据实际问题的需要,给出相应的预测预报。
3.2.2基于神经网络模型对降雨量的预测
构成BP网络的神经元仍然是神经元。按照BP算法的要求,这些神经元所用的激活函数必须处处可导。一般都使用S型函数。
1.网络初始化。
2.随机选取第k个输入样本以及对应的期望输出。
3.计算隐含层各神经元的输入,然后用输入以及激活函数计算隐含层各神经元的输出。
4.利用网络期望输出向量网络的实际输出,计算误差函数对输出层各神经元的偏导数。
5.利用隐含层到输出层的链接权值、输出层和隐含层的输出计算误差函数对隐含层各神经元的偏导数。
6.利用输出层各神经元和隐含层各神经元的输出来修正连接权值和阈值。
7.使用隐含层各神经元和输入层各神经元的输入修正连接权和阈值。
8.计算全局误差。
9.判断网络误差是否满足要求。
参考文献:
[1]司守奎,孙兆亮.数学建模算法与应用[M]第二版.北京,国防工业出版社,2019.[2]姜启源.数学模型.2版.北京:高等教育出版社,1993.
[2]http://news.hexun.com/2020-03-02/200466872.html疫情对十六个行业的影响.
[3]司守奎,孙玺菁.数学建模算法与应用[M].南京:国防工业出版社,2011.
[4]http://www.doc88.com/p-0189120693785.html淮河上游流域SCSCN模型初损取值与CN值确定方法的研究.
作者简介:第一作者:陈仲(2001-),男,汉族,吉林长春人,本科。通讯作者:邢明娇(2001-),女,汉族,河北唐山人,本科。