System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于流域水文模型和计算机,更具体地,涉及一种基于水文模型和机器学习的流域产水产沙演进模拟方法。
技术介绍
1、流域产水产沙过程决定了进入河道的水量、沙量、以及与之相关的物质量(如营养盐等),影响着河流的水沙输移过程,从而对下游地区的生态环境、粮食安全以及自然灾害等产生重要影响。然而在很多流域,尤其是高寒流域,由于数据获取困难,导致水沙资料缺少,为流域管理带来巨大挑战。
2、swat(soil and water assessment tool)是一个综合性的流域尺度模型,用于模拟和预测气候变化、土地利用和管理实践对环境的影响。但是现有的技术都主要集中在swat模型在流量、水质方面的应用,在产沙方面的应用很少。并且现有的swat模型参数率定方法常在全流域采取同一套参数值,不能反映空间异质性。
3、另外,一些流域由于实测数据的缺乏,例如但不限于,很多高寒流域,流量和产沙量缺少长期尺度的实测值,存在很多年份和月份数据缺失的问题。swat模型的应用范围受到了限制,无法为流域管理提供足够的数据支持。
技术实现思路
1、为解决现有技术中存在的不足,本专利技术提供一种基于swat模型和机器学习的流域产水产沙演进模拟方法,用于解决现有技术存在的上述问题。该方法充分考虑了流域内不同区域的特点,旨在获得更准确的参数值,以反映流域的真实情况。通过采用xgboost算法,针对流域的多个子区域,建立了水沙变化与气候因子以及下垫面因子之间的复杂关系模型,以期深入探究水沙对环境
2、本专利技术采用如下的技术方案。本专利技术的第一方面提供了一种基于swat模型和机器学习的流域产水产沙演进模拟方法,包括以下步骤:
3、步骤1,获取流域的空间数据、气象数据和水文数据;
4、步骤2,使用步骤1获得的流域的空间数据、气象数据和水文数据,构建流域的swat模型,将流域划分为子流域和水文响应单元,模拟每一个水文响应单元的流量值和产沙量值;
5、步骤3,基于设定时间段流域的水文数据实测值,对swat模型中与水沙有关的参数设定初始范围,进行分区域多次迭代调参,得到适用于设定流域的swat模型参数和水沙模拟值;
6、步骤4,将步骤3获得的模型模拟的水沙数据与实测的水沙数据构成的样本集代入到xgboost模型中进行训练,构建swat与机器学习耦合的模型,用于模拟流域在下垫面和气候条件下的产水产沙演进过程。
7、优选地,步骤1中,空间数据包括:水系、地形、土地利用和土壤类型;气象数据包括:降雨、温度、太阳辐射、风速和相对湿度;水文数据包括:流量和产沙量。
8、优选地,步骤2包括:
9、步骤2.1,根据地形数据和水系数据划分子流域;
10、步骤2.2,基于步骤2.1获得的子流域,根据土壤类型、土地利用类型和坡度进一步划分水文响应单元;
11、步骤2.3,基于步骤2.2划分的水文响应单元,模拟每一个水文响应单元流量值和产沙量值。
12、优选地,步骤3包括:
13、步骤3.1,根据步骤1获得的上、中、下游三个水文站点设定时间范围的水文数据实测值,将流域分为上、中、下游三个区域分步调参;
14、步骤3.2,为上、中、下游三个区域设置相同的参数和参数的初始范围;
15、步骤3.3,选取与流量有关的参数,根据上、中、下游水文站点的流量数据实测值来依次率定上、中、下游区域与流量有关的参数,获得全流域的流量参数;期间利用r2和nse系数来评估调参效果;
16、步骤3.4,固定与流量相关的参数,选取与产沙量相关的参数,根据上、中、下游水文站点的产沙量数据实测值来依次率定上、中、下游区域与产沙量有关的参数,获得全流域的产沙量参数。
17、优选地,步骤3.3具体包括:
18、步骤3.3.1,选取与流量有关的参数,根据上游水文站点的流量数据实测值来率定上游区域与流量有关的参数,反复迭代,当r2和nse系数达到设定值时,停止迭代,固定上游区域的流量参数;
19、步骤3.3.2,将上游区域的参数设置为步骤3.3.1得到的最优值,根据中游水文站点的流量数据实测值,来对中游区域的流量参数进行反复迭代,当r2和nse系数达到设定值时,停止迭代,固定中游区域的流量参数;
20、步骤3.3.3,将中游区域的参数设置为步骤3.3.2得到的最优值,根据下游水文站点的流量数据实测值,来对下游区域的流量参数进行反复迭代,当r2和nse系数达到设定值时,停止迭代,固定下游区域的流量参数。
21、步骤3.4具体包括:
22、骤3.4.1,选取与产沙量有关的参数,根据上游水文站点的产沙量数据实测值来率定上游区域与产沙量有关的参数,反复迭代,当r2和nse系数达到设定值时,停止迭代,固定上游区域的产沙量参数;
23、步骤3.4.2,将上游区域的参数设置为步骤3.4.1得到的最优值,根据中游水文站点的产沙量数据实测值,来对中游区域的产沙量参数进行反复迭代,当r2和nse系数达到设定值时,停止迭代,固定中游区域的产沙量参数;
24、步骤3.4.3,将中游区域的参数设置为步骤3.4.2得到的最优值,根据下游水文站点的产沙量数据实测值,来对下游区域的产沙量参数进行反复迭代,当r2和nse系数达到设定值时,停止迭代,固定下游区域的产沙量参数。
25、优选地,流量率定时,r2和nse大于0.7;产沙量率定时,r2和nse大于0.6,停止迭代,依次固定上游、中游以及下游区域的流量参数和产沙量参数。
26、优选地,步骤4中,训练xgboost模型,建立输入变量:气候因子和下垫面因子与输出变量:流量和产沙量的直接关系。
27、优选地,步骤4包括:
28、步骤4.1,选择与流域产水产沙有关的气候因子与下垫面因子;
29、步骤4.2,对气候因子和下垫面因子进行数据归一化预处理;
30、步骤4.3,以步骤4.2归一化后的数据构建训练集,训练xgboost模型;建立swat与机器学习耦合的模型,用于模拟流域产水产沙演进过程。
31、优选地,步骤4.3中,训练集t={(x1,y1),…,(xi,yi),…,(xn,yn)},其中(x1,y1)为训练集中的一个训练样本,训练集的长度为n,xi=(xi,1,…,xi,j,…,xi,m)为第i个样本的预测因子,该输入预测因子包含m个预测变量;
32、算法以如下公式表示:
33、
34、f={fk(x)=wq(x)} (5)
35、式中:
36、为第i个样本的预测值;
37、k为决策回归树个数;
38、fk(x)为第k个决策回归树;
39、f为决策回归树集合;
40、wq(x)表示叶子权重值;本文档来自技高网...
【技术保护点】
1.一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
3.根据权利要求2所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
4.根据权利要求3所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
5.根据权利要求4所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
6.根据权利要求5所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
7.根据权利要求4所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
8.根据权利要求7所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
9.根据权利要求8所述的一种基于SWAT模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
【技术特征摘要】
1.一种基于swat模型和机器学习的流域产水产沙演进模拟方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于swat模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
3.根据权利要求2所述的一种基于swat模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
4.根据权利要求3所述的一种基于swat模型和机器学习的流域产水产沙演进模拟方法,其特征在于:
5.根据权利要求4所述的一种基于swat模型和机器...
【专利技术属性】
技术研发人员:刘跃,黄磊,刘家富,周雅,赵桂莲,何国建,黄良文,方红卫,童建文,
申请(专利权)人:中国电建集团成都勘测设计研究院有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。