基于机器学习的城市内涝积水点积水过程预测方法及系统
技术领域
本发明涉及城市内涝预测
技术领域
,具体涉及一种基于机器学习的城市内涝积水点积水过程预测方法、系统、设备及存储介质。背景技术
随着城镇化的快速发展,城市不透水面积随之增加,城市水文效应发生改变,加之城市排水设施能力不足等原因,城市暴雨内涝问题开始凸显。近几年,我国“城市看海”的现象频发,引发城市供水、供电、通讯等故障、交通瘫痪、商业区、生产区、居民区被淹没等一系列问题,不仅影响和干扰居民的生活和生产,还使得人们的财产蒙受巨大损失。城市暴雨内涝已成为威胁城市安全,干扰城市运行的重要因素。
综合分析,近些年城市内涝频发的原因主要如下:全球气候变暖使得极端天气频发,极端降雨发生的频率和强度随之增加;城镇化进程的加快使得下垫面硬化率增大,导致地表径流增加;城市排水系统的排水能力不足,无法及时将降水排出,易在地势低洼区域产生积水。
目前,城市内涝预测普遍采用结合天气预报运用基于数值模型模拟或者是根据经验进行推测的方法。对于基于数值模型预测的方式受限于对城市基础本底资料掌握不足、模型构建及运算效率较低以及专业人员本身能力等原因,导致难以精确且高效地对城市内涝进行预测;而基于经验进行城市内涝预测的方法,更加受限于专业人员自身的知识与经验储备,预测结果的精度也高低不一。
发明内容
针对现有技术中的上述不足,本发明提供了一种基于机器学习的城市内涝积水点积水过程预测方法。
为了达到上述发明目的,本发明采用的技术方案为:
第一方面,本发明提供了一种基于机器学习的城市内涝积水点积水过程预测方法,包括以下步骤:
S1、利用改进的K邻域法建立积水监测站点和临近降雨监测站点之间的插值拓扑关系;
S2、获取积水监测站点的历史积水过程数据和临近降雨监测站点的历史降雨过程数据,根据步骤S1建立的插值拓扑关系,采用反距离权重插值法得到积水监测站点的历史降雨过程数据,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型;
S3、获取临近降雨监测站点的实时降雨过程数据,根据步骤S1建立的插值拓扑关系,采用反距离权重插值法得到积水监测站点的实时降雨过程数据;并根据多源定量降雨预报数据产品的时空特征,对各产品降雨过程数据进行融合,得到积水监测站点的定量预报降雨过程数据;
S4、将积水监测站点的实时降雨过程数据与定量预报降雨过程数据进行拼接,得到积水监测站点的实时和预报降雨过程数据;
S5、利用城市内涝积水点积水过程预测模型,根据积水监测站点的实时和预报降雨过程数据,进行城市内涝积水点积水过程预测。
进一步地,所述步骤S1具体包括以下分步骤:
S11、判断积水监测站点位置上是否同时存在降雨监测站点;若是,则将该点形成临近降雨监测站点领域点集,进入步骤S17;否则进入步骤S12;
S12、获取积水监测站点和城区全部降雨监测站点的经纬度坐标;
S13、以积水监测站点作为坐标系原点构建二维坐标系,计算各降雨监测站点的相对坐标;
S14、计算原点到坐标轴上每个降雨监测站点向量的模,选取每个坐标轴上模最小的点作为临近降雨监测站点;
S15、选取每个象限内满足设定筛选条件的点作为临近降雨监测站点;
S16、将步骤S14和S15选取的临近降雨监测站点形成临近降雨监测站点领域点集
S17、建立积水监测站点和临近降雨监测站点领域点集之间的插值拓扑关系。
进一步地,所述步骤S15具体包括以下分步骤:
S151、判断当前象限内是否不存在降雨监测站点;若是,则进入下一象限;否则进入步骤S152;
S152、判断当前象限内是否只有一个降雨监测站点;若是,则选取该降雨监测站点;否则进入步骤S153;
S153、计算原点到降雨监测站点向量的模;计算全部模与最小模的差值,判断差值不大于预设阈值的站点数量是否为1;若是,则选取模最小的降雨监测站点;否则进入步骤S154;
S154、计算满足预设阈值条件的各降雨监测站点相对坐标沿逆时针方向与坐标轴形成的小于90°的夹角,并按大小排序;
S155、判断最小夹角是否大于或等于45°;若是,则选取该夹角对应的降雨监测站点;否则进入步骤S156;
S156、判断最大夹角是否小于或等于45°;若是,则选取该夹角对应的降雨监测站点;否则进入步骤S157;
S157、计算最大夹角与最小夹角的差值,判断该差值是否大于或等于30°;若是,则选取最大夹角和最小夹角对应的降雨监测站点;否则选取各个夹角与45°差值的最小值对应的降雨监测站点。
进一步地,所述步骤S2具体包括以下分步骤:
S21、获取积水监测站点的各场次历史积水过程数据和临近降雨监测站点的历史降雨过程数据;
S22、利用临近降雨监测站点的历史降雨过程数据,根据步骤S1建立的插值拓扑关系,利用反距离权重插值法对临近降雨监测站点的历史降雨过程数据进行插值,生成积水监测站点的历史降雨过程数据;
S23、遍历积水监测站点的历史积水过程数据和历史降雨过程数据,计算积水过程数据与滑动降雨过程数据的相关性;
S24、选取相关性最大对应的滑动时段,建立各场次历史降雨积水的滑动降雨过程和积水过程数据集;
S25、利用建立的数据集进行机器学习训练和验证,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型。
进一步地,所述步骤S3具体包括以下分步骤:
S31、获取临近降雨监测站点的实时降雨过程数据;
S32、根据步骤S1建立的插值拓扑关系,利用反距离权重插值法对临近降雨监测站点的实时降雨过程数据进行插值,生成积水监测站点的实时降雨过程数据;
S33、获取积水监测站点所在位置上的各类气象定量预报降雨产品,根据不同产品的时空精度,选取其中时空精度最高的气象定量预报降雨产品进行插值,得到积水监测站点的定量预报降雨过程数据。
进一步地,所述步骤S33具体包括以下分步骤:
S331、将积水监测站点与气象定量预报网格进行空间叠加,得到积水监测站对应的网格编号;
S332、读取所述网格编号的各类气象定量预报产品的降雨过程数据;
S333、选取步骤S332读取的降雨过程数据中时空间精度最高的降雨过程数据;
S334、采用平均分配法或构造等差数列法,将步骤S333选取的降雨过程数据插值为等间隔的预报降雨过程数据。
第二方面,本发明还提供了一种基于机器学习的城市内涝积水点积水过程预测系统,包括:
插值拓扑关系构建模块,用于利用改进的K邻域法建立积水监测站点和临近降雨监测站点之间的插值拓扑关系;
数据获取模块,用于获取积水监测站点的积水过程数据和临近降雨监测站点的降雨过程数据;
数据插值模块,用于利用临近降雨监测站点的降雨过程数据,根据建立的插值拓扑关系,利用反距离权重插值法插值生成积水监测站点的降雨过程数据;
数据融合模块,用于融合多源定量降雨预报数据产品,得到积水监测站点的定量预报降雨过程数据;
数据拼接模块,用于拼接定量预报降雨过程数据与实时降雨过程数据,得到积水监测站点的实时和预报降雨过程数据;
模型构建模块,用于根据积水监测站点的历史积水过程数据和临近降雨监测站点的历史降雨过程数据,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型;
积水预测模块,用于利用构建的城市内涝积水点积水过程预测模型,基于积水监测站点的实时和预报降雨过程数据,预测城市内涝积水点的积水过程。
第三方面,本发明还提供了一种基于机器学习的城市内涝积水点积水过程预测设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述的基于机器学习的城市内涝积水点积水过程预测方法的步骤。
第四方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于机器学习的城市内涝积水点积水过程预测方法的步骤。
本发明具有以下有益效果:
本发明利用改进的K邻域法建立积水监测站点和临近降雨监测站点之间的插值拓扑关系,并根据获取的积水监测站点的历史积水过程数据和插值得到的积水监测站点的历史降雨过程数据,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型;并将积水监测站点的实时降雨过程数据与定量预报降雨过程数据拼接,得到积水监测站点的实时和预报降雨过程数据,利用构建的城市内涝积水点积水过程预测模型进行城市内涝积水点积水过程预测。本发明具有操作简单、建模速度快,计算效率高,预测精度高等优点,能够实现准确有效的积水预测,有助于城市内涝应急防治。
附图说明
图1为本发明实施例提供的一种基于机器学习的城市内涝积水点积水过程预测方法的流程图;
图2为本发明实施例提供的一种基于机器学习的城市内涝积水点积水过程预测系统的结构图;
图3为本发明实施例提供的一种基于机器学习的城市内涝积水点积水过程预测设备的结构图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,为本发明实施例提供的一种基于机器学习的城市内涝积水点积水过程预测方法,包括以下步骤S1至S5:
S1、利用改进的K邻域法建立积水监测站点和临近降雨监测站点之间的插值拓扑关系;
下面对如何基于空间位置改进K邻域法,构建临近降雨监测站点与积水监测站点的插值拓扑关系进行说明。
步骤S1具体包括以下分步骤:
S11、判断积水监测站点位置上是否同时存在降雨监测站点,;若是,则直接建立积水监测站点与降雨监测站点的插值拓扑关系;否则进入步骤S12;
S12、获取积水监测站点和城区全部降雨监测站点的经纬度坐标;
在本步骤中,获取积水监测站点S0和全部降雨监测站点S(S1,S2,S3,…,Sj)的经纬度坐标(x0,y0)和[(x1,y1),(x2,y2),(x3,y3),…,(xj,yj)];
S13、以积水监测站点作为坐标系原点构建二维坐标系,计算各临近降雨监测站点的相对坐标
在本步骤中,以积水监测站点S0作为坐标系原点构建二维坐标系,计算全部降雨监测站点的相对坐标[(x1-x0,y1-y0),(x2-x0,y2-y0),(x3-x0,y3-y0),…,(xj-x0,yj-y0)]
S14、计算原点到坐标轴上每个降雨监测站点向量的模,选取每个坐标轴上模最小的降雨监测站点;
在本步骤中,本发明自动选取相对坐标满足条件(xn*yn=0|n∈(1,2,3,…,j))的临近降雨监测站点,组成点集SZ;如果每个坐标轴上存在2个及以上的点,则每个坐标轴上只选取模最小的临近降雨监测站点。
S15、选取每个象限内满足设定筛选条件的降雨监测站点,具体包括以下分步骤:
S151、判断当前象限内是否不存在降雨监测站点;若是,则进入下一象限;否则进入步骤S152;
S152、判断当前象限内是否只有一个降雨监测站点;若是,则选取该降雨监测站点;否则进入步骤S153;
S153、计算原点到降雨监测站点向量的模;计算全部模与最小模的差值,判断差值不大于预设阈值的站点数量是否为1;若是,则选取模最小的降雨监测站点;否则进入步骤S154;
S154、计算满足预设阈值条件的各降雨监测站点相对坐标沿逆时针方向与坐标轴形成的小于90°的夹角,并按大小排序;
S155、判断最小夹角是否大于或等于45°;若是,则选取该夹角对应的降雨监测站点;否则进入步骤S156;
S156、判断最大夹角是否小于或等于45°;若是,则选取该夹角对应的降雨监测站点;否则进入步骤S157;
S157、计算最大夹角与最小夹角的差值,判断该差值是否大于或等于30°;若是,则选取最大夹角和最小夹角对应的降雨监测站点;否则选取各个夹角与45°差值的最小值对应的降雨监测站点。
具体而言,对于未落在坐标轴上的点分四个象限选择,即:((xn>0,yn>0),(xn>0,yn<0),(xn<0,yn<0),(xn<0,yn>0)|n∈(1,2,3,…,j))四种情况分类为S1,S2,S3,S4;
以S1((x1n,y1n)|(n∈(1,2,3,…,j)||x1n,y1n>0))为例,选点方法如下:
如果该象限内无点,则跳过该象限进入下一象限。
如果该象限内只有1个点,则自动选择该点,并进入下一象限。
如果该象限内有2个及以上的点,则选取原点到这些点向量的模最小的点,记为S1’(x’,y’)。
计算原点到该象限内其它点向量的模与到S1’向量的模(d)的差值zn|(n∈(1,2,3,…,j);
预设一个比例k%(一般取10%),判断zn不大于k%*d对应的点的数量是否为1;若是,则选取S1’为该象限的临近降雨监测站点,并进入下一象限;否则,进入下一步骤;
利用夹角公式,分别计算满足zn不大于k%*d对应的点形成的向量逆时针方向与坐标轴形成的小于π/2的夹角,如向量(x11,y11)夹角如下:
θ11=arccos(y11/sqrt(x11^2+y11^2))
将夹角从小到大排序,假设为θ11、θ12、θ13。
如果θ11>=π/4,则选择θ11对应的点作为临近降雨监测站点;
如果θ13<=π/4,则选择θ13对应的点作为临近降雨监测站点;
如果θ11<π/4<θ13,则计算Δθ=θ13-θ11;
如果Δθ>=π/6,则选择θ11和θ13对应的点作为临近降雨监测站点;
如果Δθ<π/6,则计算min(|θ11-π/4|,|θ12-π/4|,|θ13-π/4|)选取对应的点作为临近降雨监测站点。
S1空间点选择完毕,进入下一象限。
S16、将步骤S14和S15选取的临近降雨监测站点组成临近降雨监测站点领域点集;
S17、建立积水监测站点和临近降雨监测站点领域点集之间的插值拓扑关系。
S2、获取积水监测站点的历史积水过程数据和临近降雨监测站点的历史降雨过程数据,根据步骤S1建立的插值拓扑关系,采用反距离权重插值法得到积水监测站点的历史降雨过程数据,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型;
在本步骤中,步骤S2具体包括以下分步骤:
S21、获取积水监测站点的各场次历史积水过程数据和临近降雨监测站点的历史降雨过程数据;
S22、利用临近降雨监测站点的历史降雨过程数据,根据步骤S1建立的插值拓扑关系,利用反距离权重插值法对临近降雨监测站点的历史降雨过程数据进行插值,生成积水监测站点的历史降雨过程数据;
S23、遍历积水监测站点的历史积水过程数据和历史降雨过程数据,计算积水过程数据与滑动降雨过程数据的相关性;
S24、选取相关性最大对应的滑动时段,建立各场次历史降雨积水的滑动降雨过程和积水过程数据集;
S25、利用建立的数据集进行机器学习训练和验证,构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型。
具体而言,本发明利用滑动降雨过程和积水监测站点的最大积水深度、积水过程建立训练集、验证集和测试集,采用机器学习模型,进而建立积水过程~降雨过程相关的预测模型,具体过程如下:
①读取积水监测站点各场次历史积水过程数据(时间间隔一般为5分钟),利用牛顿插值法或拉格朗日插值法平滑积水过程。
②读取临近降雨监测站点的历史降雨过程数据(时间间隔一般为5分钟),根据S17建立的插值拓扑关系,采用反距离权重插值法计算积水监测站点的各场次历史降雨过程数据。
③遍历积水监测站点的历史积水过程数据和历史降雨过程数据,计算最小的时段T分钟(一般为5分钟的倍数),使得积水监测站点的T时段滑动降雨过程PT与对应的积水过程H的相关性最好。
④根据③所确定的T,选取2场T时段滑动降雨过程和对应的积水过程作为验证集,其余场次T时段滑动降雨过程和对应的积水过程作为训练集。
⑤根据训练集和验证集,用线性回归模型、向量机模型和神经网络等模型训练并验证。根据训练集回归残差的均值和方差最小,且验证集预测残差的均值和方差最小的原则,选定所用模型及参数,从而建立积水过程~降雨过程相关的城市内涝积水点积水过程预测模型。
S3、获取临近降雨监测站点的实时降雨过程数据,根据步骤S1建立的插值拓扑关系,采用反距离权重插值法得到积水监测站点的实时降雨过程数据;并根据多源定量降雨预报数据产品的时空特征,对各产品降雨过程数据进行融合,得到积水监测站点的定量预报降雨过程数据;
在本步骤中,步骤S3具体包括以下分步骤:
S31、获取临近降雨监测站点的实时降雨过程数据;
S32、根据步骤S1建立的插值拓扑关系,利用反距离权重插值法对临近降雨监测站点的实时降雨过程数据进行插值,生成积水监测站点的实时降雨过程数据;
S33、获取积水监测站点所在位置上的各类气象定量预报降雨产品,根据不同产品的时空精度,选取其中时空精度最高的气象定量预报降雨产品进行插值,得到积水监测站点的定量预报降雨过程数据。
在本步骤中,步骤S33具体包括以下分步骤:
S331、将积水监测站点与气象定量预报网格进行空间叠加,得到积水监测站对应的网格编号;
S332、读取上述网格编号的各类气象定量预报产品的降雨过程数据;
S333、选取步骤S332读取的降雨过程数据中时空间精度最高的降雨过程数据;
S334、采用平均分配法或构造等差数列法,将步骤S333选取的降雨过程数据插值为等间隔t(一般为5分钟)的预报降雨过程数据。
具体而言,气象定量预报降雨数据为公里网格未来12小时、24小时等逐小时降雨预报数据。以24小时逐小时降雨过程数据为例:
①平均分配法:
逐小时内降雨按t分钟(一般为5分钟)平均分配;
②构造等差数列法:
对于第i个小时,比较雨量Pi-1、Pi、Pi+1的大小,当i=1或24时,Pi-1或Pi+1取0。
Pi-1、Pi、Pi+1的大小关系存在以下两种情况:
(Pi-1<=Pi<=Pi+1或Pi-1>=Pi>=Pi+1)或(Pi-1<Pi>Pi+1或Pi-1>Pi<Pi+1)
对于第1种情况:
以i-1小时里最后一条t分钟(一般为5分钟)雨量p’(i-1)为基础(i=1时,p’(i-1)=0),构造等差数列F(p’(i-1)+d*j|d为公差,j=1,2,3,…,60/t),要求等差数列的和与第i小时的预报雨量Pi相等,求得公差d,进而计算出第i小时内的时间间隔为t分钟的降雨过程。
对于第2种情况:
以i-1小时里最后一条t分钟(一般为5分钟)雨量p’(i-1)为基础(i=1时,p’(i-1)=0),构造等差数列F(p’(i-1)+d*j|d为公差,j=1,2,3,…,30/t),要求等差数列的和等于第i小时预报雨量Pi的1/2,求得公差d,构造出第i小时内前30分钟的时间间隔为t分钟的降雨过程,将该降雨过程的倒序作为后30分钟的时间间隔为t分钟的降雨过程。
S4、将积水监测站点的实时降雨过程数据与定量预报降雨过程数据进行拼接,得到积水监测站点的实时和预报降雨过程数据;
S5、利用城市内涝积水点积水过程预测模型,根据积水监测站点的实时和预报降雨过程数据,进行城市内涝积水点积水过程预测。
在本步骤中,根据时间间隔为t分钟的实时和预报降雨过程,利用构建的城市内涝积水点积水过程预测模型可以直接预测积水点积水过程。
上文对于本发明提供的一种基于机器学习的城市内涝积水点积水过程预测方法的实施例进行了详细的描述,本发明还提供了一种与该方法对应的基于机器学习的城市内涝积水点积水过程预测系统、设备及计算机可读存储介质。由于系统、设备及计算机可读存储介质部分的实施例与方法部分的实施例相互照应,因此系统、设备及计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图2为本发明提供的一种基于机器学习的城市内涝积水点积水过程预测系统,包括:
插值拓扑关系构建模块,用于利用改进的K邻域法建立积水监测站点和临近降雨监测站点之间的插值拓扑关系;
数据获取模块,用于获取积水监测站点的积水过程数据和临近降雨监测站点的降雨过程数据;
数据插值模块,用于利用临近降雨监测站点的降雨过程数据,根据建立的插值拓扑关系,利用反距离权重插值法插值生成积水监测站点的降雨过程数据;
数据融合模块,用于融合多源定量降雨预报数据产品,得到积水监测站点的定量预报降雨过程数据;
数据拼接模块,用于拼接定量预报降雨过程数据与实时降雨过程数据,得到积水监测站点的实时和预报降雨过程数据;
模型构建模块,用于根据积水监测站点的历史积水过程数据和临近降雨监测站点的历史降雨过程数据构建积水过程与降雨过程相关的城市内涝积水点积水过程预测模型;
积水预测模块,用于利用构建的城市内涝积水点积水过程预测模型,基于积水监测站点的实时和预报降雨过程数据,预测城市内涝积水点的积水过程。
本发明实施例提供的基于机器学习的城市内涝积水点积水过程预测系统具有上述基于机器学习的城市内涝积水点积水过程预测方法的有益效果。
图3为本发明提供的一种基于机器学习的城市内涝积水点积水过程预测设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述的基于机器学习的城市内涝积水点积水过程预测方法的步骤。
本发明实施例提供的基于机器学习的城市内涝积水点积水过程预测设备具有上述基于机器学习的城市内涝积水点积水过程预测方法的有益效果。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于机器学习的城市内涝积水点积水过程预测方法的步骤。
本发明实施例提供的计算机可读存储介质具有上述基于机器学习的城市内涝积水点积水过程预测方法的有益效果。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。