技术领域
[0001] 本发明属于山洪预测技术领域,尤其涉及一种基于多AI模型融合及参数优化的山洪预报方法。
相关背景技术
[0002] 山洪是指在山地地区发生的洪水,其特点是发展迅速、规模巨大、破坏力强,山洪预报是指针对山区地区由于暴雨等极端天气条件引发的洪水进行的预测预警工作,山洪预报作为山区地区防灾减灾工作的重要组成部分,具有重要的现实意义和挑战,目前做山洪预报通过建立气候背景—天气系统—致灾暴雨—地形—山洪的山洪灾害发展链来对山洪进行预报,但是整个链条是很复杂的,涉及大气动力过程,降雨产流过程,水动力过程,不管是采用系统动力学还是基于物理机制的多过程耦合,在时效上都难以满足山洪这种快速的灾害,针对山洪,我们报得越快损失越小。
[0003] 因此,现阶段亟需提出一种山洪预报方法来解决目前存在的上述问题,提高山洪预报的时效性和准确性。
具体实施方式
[0017] 如图1所示,提出如下技术方案。根据本申请的一个方面,提供一种基于多AI模型融合及参数优化的山洪预报方法,包括如下步骤:步骤S1、收集研究区历史山洪灾情数据,提取典型山洪灾情,构建山洪灾害发展链,识别山洪驱动因子;
步骤S2、构建多种基于AI模型的山洪预报模型,融合多种山洪预报模型得到综合山洪预报模型;
步骤S3、提取综合山洪预报模型多目标参数和超参数,采用集成优化算法优化综合山洪预报模型多目标参数和超参数,得到模型参数多目标优化模型;
步骤S4、将模型参数多目标优化模型的多目标转化为单目标,构建山洪预报优化模型,提取山洪驱动因子输入山洪预报优化模型,得到研究区山洪灾害预报。
[0018] 通过建立气候背景‑天气系统‑致灾暴雨‑地形‑山洪的山洪灾害发展链来对山洪进行预报,但是整个链条是很复杂的,涉及大气动力过程,降雨产流过程,水动力过程等等物理过程,我们不管是采用系统动力学还是基于物理机制的多过程耦合,在时效上都难以满足山洪这种快速的灾害,针对山洪,我们报得越快损失越小,因此在本实施例中通过建立人工智能模型来预报,提高预报的时效性。
[0019] 根据本申请的一个方面,如图2所示,所述步骤S1进一步为:步骤S11、收集研究区历史山洪灾情数据,包括:气候背景、天气系统、致灾暴雨雨量、地形和山洪数据;
步骤S12、采用耦合聚类分析法从历史山洪灾情中提取X类典型山洪灾情,X为大于
5的自然数;
步骤S13、提取历史山洪数据分别输入预构建的X类典型山洪灾情的分布式气象‑水文耦合系统SD(动力学)模型,得到n条大回路和m条小回路,构建气候背景—天气系统—致灾暴雨雨量—地形—山洪的山洪灾害发展链,n为大于1的自然数,m为大于5的自然数;
Vensim是用于解决系统动力学模型的仿真、分析和优化问题的可视化建模工具,是目前系统动力学研究领域应用最广泛的建模和仿真软件,在本实施例中采用Vensim作为SD模型的建模工具。
[0020] 为区别适应不同变量类型对模型的作用,Vensim提供了三种不同记号来表示水平变量、速率变量、辅助变量,再用箭头连接各变量以直接形成变量间的流向关系,在此逻辑基础上,编辑变量方程式确立输入变量与自身的数值关系,在开始仿真前,软件会自动检验系统内部逻辑错误,并提示错误的原因和位置,大大提高了建模效率。
[0021] Vensim对系统动力学模型结果提供多种分析方法,大致可以分为结构分析工具和数据集分析工具两类,前者包括了原因树、使用树、反馈环等,可以用树状图形或列表形式将工作变量之间的逻辑关系表示出来;数据集分析工具除了可以将各变量在模拟周期内的数值变化以图形形式直观表达,还可以追踪与该变量有直接因果关系的其他变量,以分析系统变量间的影响关系。Vensim还提供了多个情景下的复合模拟,对不同情景下的模型结果进行运行对比,分析系统内部扰动对系统表达的影响。
[0022] 山洪灾害发展链是一个复杂的大系统,建模的目的在于系统地分析各子系统的结构和功能及其联系,通过山洪灾害发展链能够准确地计算出其中影响因子对最终山洪发展的影响程度,能够准确地筛选出山洪驱动因子。
[0023] 在某实施例中,具体为:通过收集研究区地理位置、地形地貌、天气系统和气候背景资料,绘制形成气候背景—天气系统—致灾暴雨—地形—山洪的系统因果回路关系模型,其中包括了2条大回路和6条小回路;
2条大回路为正因果回路和负因果回路,6条小回路更多地描述了山洪形成过程中各个影响因子之间地互馈关系。
[0024] 步骤S14、基于山洪灾害发展链采用摄动‑响应法识别山洪驱动因子。
[0025] 根据本申请的一个方面,所述步骤S12进一步为:步骤S12a、提取研究区历史山洪灾情数据作为样本集并将样本集数据归一化;
步骤S12b、循环计算不同时间段样本集之间的弗雷歇聚类并进行类合并;
步骤S12c、在类的个数为1时,绘制各样本集的系统聚类图,完成聚类;
步骤S12d、基于聚类结果将样本集划分为X类,X为大于5的自然数。
[0026] 根据本申请的一个方面,所述步骤S14进一步为:步骤S14a、基于山洪灾害发展链提取所有影响因子;
步骤S14b、依次对每个影响因子的参数进行扰动,将扰动后的影响因子参数输入山洪灾害发展链,得到山洪灾害发展链响应情况,构建响应曲面;
步骤S14c、基于响应曲面计算各影响因子的敏感系数并进行排序,提取敏感系数高于阈值的所有影响因子作为山洪驱动因子。
[0027] 根据本申请的一个方面,如图3所示,所述步骤S2进一步为:步骤S21、分别构建循环神经网络模型、长短时记忆网络模型和卷积神经网络模型;
步骤S22、依次采用随机森林和梯度提升树集成循环神经网络模型、长短时记忆网络模型和卷积神经网络模型,得到随机森林集成学习模型和梯度提升树集成学习模型;
集成学习是机器学习中常用的一种方法,通过结合多个基本模型的预测结果,来获得更好的整体预测效果,随机森林和梯度提升机是集成学习中最好的方法。
[0028] 随机森林是一种基于决策树的集成学习算法,通过随机选择特征和样本来构建多棵决策树,并最终综合多棵树的结果进行预测,该方法的优势包括鲁棒性强,对于噪声数据和过拟合有较好的鲁棒性,能够有效处理高维数据和大量特征;高效性能,可以并行构建多棵树,在处理大规模数据时具有较高的计算效率;可解释性,相对于复杂的深度学习模型,随机森林的结果更易解释。
[0029] 梯度提升机是一种通过迭代训练弱分类器来构建强分类器的集成学习算法,具有预测性能好、处理不平衡数据效果好、灵活性强的优点。
[0030] 通过随机森林和梯度提升机将多个AI模型集成起来,能够充分发挥模型各自的优势,提高整体模型的泛化能力和预测准确性。
[0031] 步骤S23、基于卷积神经网络模型、气候背景和天气系统构建时空卷积神经网络模型;步骤S24、采用堆叠法融合随机森林集成学习模型、梯度提升树集成学习模型和时空卷积神经网络模型,得到综合山洪预报模型。
[0032] 根据本申请的一个方面,所述步骤S24进一步为:步骤S24a、提取研究区历史山洪灾情数据,将其划分为训练集和验证集;
步骤S24b、将训练集依次输入随机森林集成学习模型、梯度提升树集成学习模型和时空卷积神经网络模型训练,并使用验证集对模型输出进行验证,将验证结果作为元特征;
步骤S24c、构建元模型,提取元特征输入元模型中对元模型进行训练,得到堆叠模型,即综合山洪预报模型。
[0033] 堆叠法是一种集成学习方法,通过结合多个基础模型的预测结果,再训练一个元模型来进行最终的预测,堆叠法的基本思想是利用不同模型的优势,通过组合它们的预测结果从而提高整体模型的性能。
[0034] 相比于其他方法,堆叠法可以充分利用不同模型的优势,通过组合它们的预测结果,可以获得更好的泛化性能;堆叠法通过将基础模型的预测结果作为新特征输入到元模型中,可以减少过拟合的风险,提高模型的稳定性和鲁棒性;堆叠法可以灵活地组合不同类型的模型,适用于各种类型的数据和任务。
[0035] 在本实施例中,首先构建循环神经网络模型、长短时记忆网络模型和卷积神经网络模型,再采用随机森林和梯度提升机将三种AI模型集成为一个模型,再将卷积神经网络模型结合时空数据构建时空卷积神经网络模型,能够更好的利用时空数据提高预测的准确度,最后采用堆叠法将所有AI模型结合到一起,充分发挥所有模型各自的优势,使得预测结果更加准确。
[0036] 根据本申请的一个方面,如图4所示,所述步骤S3进一步为:步骤S31、提取综合山洪预报模型多目标参数和超参数中的一组参数和超参数并初始化作为初始解;
步骤S32、依次采用遗传算法、贝叶斯优化和局部搜索对初始解的参数和超参数进行优化,提取性能最好的一组参数和超参数作为下一轮优化的起点;
步骤S33、循环多次优化直至达到最大迭代次数,将最后一组性能最好的参数和超参数作为最终的模型参数和超参数,得到模型参数多目标优化模型。
[0037] 根据本申请的一个方面,所述步骤S32进一步为:步骤S32a、采用遗传算法对初始解的参数和超参数进行变异和交叉操作,生成新的参数组合;
变异操作用于向当前种群中的个体引入一些随机性,从而增加种群的多样性,对于一个参数向量,变异操作具体为:
新染色体=原染色体+变异率*(上界‑下界)*随机数;
其中,原染色体是指当前的参数向量,变异率是一个小的值用于控制变异程度,上界与下界是参数的取值范围,随机数是一个在【0,1】区间的随机值;
交叉操作用于从两个个体的染色体中产生新的个体,两个染色体根据某个交叉点进行切割,然后将交叉点之后的部分交换,生成两个新的染色体;
通过变异和交叉操作,遗传算法可以在搜索空间不断生成新的参数组合,并逐步逼近最优解。
[0038] 步骤S32b、采用贝叶斯优化法对参数组合进行评估,提取评估结果最好的一组参数组合;在本实施例中,使用贝叶斯优化法对参数组合进行评估时,结合高斯过程作为代理模型来建立参数和目标函数之间的映射关系,具体为:
初始化选择初始参数进行评估;
根据初始参数计算目标函数值;
将参数和目标函数加入训练数据,更新高斯过程模型,具体为:
对于每一个候选参数组合x,计算其期望改进值EI(x),表示在当前模型下选择x可能带来的改进;
EI(x)=\int max(f{best}‑f(x),0)pf(x)|D)d f(x);
式中,f{best}是目前找到的最佳目标函数值,D是已有的观测数据,pf(x)|D是高斯过程模型的后验预测分布;
基于更新后的高斯过程模型,选择下一各参数进行评估;
重复上述步骤直至达到迭代次数上限,提取评估结果最好的一组参数组合。
[0039] 步骤S32c、采用局部搜索法对评估结果最好的参数组合优化;步骤S32d、将优化后的参数组合作为下一轮优化的初始解。
[0040] 集成优化算法是一种通过结合多个优化算法来解决问题的方法,利用不同算法的优势,通过集成它们的结果来获得更好的性能,不同的优化算法可能在不同的领域或问题上有更好的表现,在本实施例中,数据涉及到大气动力过程、降雨产流过程和水动力过程,非常复杂,如果采用单一算法会导致结果误差过大且计算效率低下,因此采用集成优化算法通过集成多个算法提高搜索效率,找到最优解决方案,集成多个优化算法可以减少单个算法的局限性,提高算法的鲁棒性,使得在不同情况下都能获得良好的性能,不同优化算法可能会陷入不同的局部最优解,通过集成它们的结果可以减少陷入局部最优解的风险,更快找到全局最优解。
[0041] 根据本申请的一个方面,如图5所示,所述步骤S4进一步为:步骤S41、采用线性加权法将模型参数多目标优化模型的多目标转化为单目标,构建山洪预报优化模型;
步骤S42、提取山洪驱动因子输入山洪预报优化模型,得到研究区山洪灾害预报。
[0042] 根据本申请的一个方面,所述步骤S41进一步为:步骤S41a、基于模型参数多目标优化模型的多目标构建一个单一目标函数,将多个目标线性加权组合起来;
步骤S41b、采用层次分析法对多目标的每个目标进行赋权;
步骤S41c、依次采用遗传算法、粒子群算法和模拟退火计算得到最优的权重组合;
在某个实施例中,具体为:
随机生成初始种群,初始种群大小为10,每个个体包含三个权重;
计算每个个体的适应度值,即权重值;
根据适应度值选择个体进行繁殖,对选定的个体进行交叉和变异操作,生成新的个体;
重复选择、交叉和变异操作,直到达到最大迭代次数。
[0043] 随机初始化粒子群中每个粒子的位置和速度;根据粒子当前位置和速度,以及个体和全局最优解更新粒子的位置和速度;
根据新的粒子位置更新个体和全局最优解;
重复更新粒子位置和速度,直到达到一定的迭代次数。
[0044] 随机初始化初始温度、结束温度和退火速率;在当前温度下随机选择一个权重组合,计算目标函数值;
基于Metropolis准则接受或拒绝新的权重组合;
降低温度,重复更新权重组合和接受新解;
重复降温过程直到达到结束温度。
[0045] 通过以上三种优化算法的计算过程,逐步优化权重组合,找到使目标函数达到最小值的最优权重组合。
[0046] 步骤S41d、将最优的权重组合输入单一目标函数中,构建山洪预报优化模型。
[0047] 在某个实施例中,根据需求设定了模型参数多目标优化模型的三个目标分别为预报洪量误差最小、预报洪峰误差最小和预报滞时最短,由于三种目标在不同类型的山洪、不同地区或者不同场景下重要性是不一样的,在该实施例中,由于此次预报的山洪必须撤离,那么预报滞时就是最重要的,因此在赋权是将预报滞时作为必须条件再调整预报洪量误差最小和预报洪峰误差最小的权重。
[0048] 根据本申请的另一个方面,提供一种基于多AI模型融合及参数优化的山洪预报系统,包括:至少一个处理器;以及
与至少一个所述处理器通信连接的存储器;其中,
所述存储器存储有可被所述处理器执行的指令,所述指令用于被所述处理器执行以实现上述任一项所述的基于多AI模型融合及参数优化的山洪预报方法。
[0049] 以上详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这些等同变换均属于本发明的保护范围。