发明内容
本说明书实施例之一提供一种基于电站水库水位监测及库容计算算法,所述算法包括:获取电站水库的地形信息;将所述电站水库分为多个初始区域,基于所述电站水库的地形信息确定每个所述初始区域的地形变化信息,基于所述多个初始区域的位置信息及地形变化信息对所述多个区域进行聚类,确定多个水库区域,其中,每个所述水库区域包括至少一个所述初始区域,所述多个水库区域包括至少一个一类水库区域及二类水库区域;获取所述电站水库在目标时间段的水位信息;对于每个所述一类水库区域,通过预设函数确定所述一类水库区域的区域库容;对于每个所述二类水库区域,通过人工智能模型确定所述二类水库区域的区域库容;基于每个所述一类水库区域的区域库容及每个所述二类水库区域的区域库容,确定所述电站水库的库容。
在一些实施例中,所述获取电站水库在目标时间段的水位信息,包括:对于所述目标时间段内的每个监测时间点,获取所述电站水库的多个监测位置在所述监测时间点的水位,确定所述监测时间点对应的水位,生成所述目标时间段对应的水位序列,其中,所述水位序列由所述目标时间段内的多个连续的检测时间点对应的水位组成;对所述水位序列进行预处理,生成所述电站水库在目标时间段的水位信息。
在一些实施例中,所述对所述水位序列进行预处理,生成所述电站水库在目标时间段的水位信息,包括:确定所述目标时间段的至少一个相关历史时间段;获取每个所述相关历史时间段对应的水位信息;通过数据处理模型基于所述至少一个相关历史时间段对应的水位信息对所述水位序列进行异常数据剔除及数据补全,生成所述电站水库在目标时间段的水位信息。
在一些实施例中,所述数据处理模型包括异常数据确定层及数据补全层;所述通过数据处理模型基于所述至少一个相关历史时间段对应的水位信息对所述水位序列进行异常数据剔除及数据补全,生成所述电站水库在目标时间段的水位信息,包括:所述异常数据确定层基于所述至少一个相关历史时间段对应的水位信息确定水位波动范围,基于所述水位波动范围判断所述水位序列是否存在所述异常数据;当判断所述水位序列不存在所述异常数据时,将所述水位序列作为所述目标时间段的水位信息;当判断所述水位序列存在所述异常数据时,所述异常数据确定层确定并剔除所述水位序列中异常数据,生成缺失水位序列;所述数据补全层对所述缺失水位序列进行数据补全,生成所述电站水库在目标时间段的水位信息,其中,所述数据补全层的输入包括所述缺失水位序列、掩码矩阵及随机噪声矩阵,其中,所述随机噪声矩阵服从标准正态分布。
在一些实施例中,所述基于所述多个初始区域的位置信息及地形变化信息对所述多个区域进行聚类,确定多个水库区域,包括:基于所述多个初始区域的位置信息,确定每个所述初始区域的相邻区域;对于每个所述初始区域,确定所述初始区域的地形变化信息与每个所述相邻区域的地形变化信息之间的相似度;基于所述初始区域的地形变化信息与每个所述相邻区域的地形变化信息之间的相似度,对所述多个区域进行聚类,确定所述多个水库区域。
在一些实施例中,所述基于所述多个初始区域的位置信息及地形变化信息对所述多个区域进行聚类,确定多个水库区域,包括:通过K-Means聚类算法基于所述初始区域的地形变化信息与每个所述相邻区域的地形变化信息之间的相似度,对所述多个区域进行聚类,确定所述多个水库区域。
在一些实施例中,所述基于所述初始区域的地形变化信息与每个所述相邻区域的地形变化信息之间的相似度,对所述多个区域进行聚类,确定所述多个水库区域,包括:基于所述初始区域的地形变化信息与每个所述相邻区域的地形变化信息之间的相似度,对所述多个区域进行聚类,确定多个水库区域;对于每个所述水库区域,基于所述水库区域对应的聚类中心的地形变化信息,确定所述水库区域为所述一类水库区域或所述二类水库区域。
在一些实施例中,所述预设函数的自变量至少包括所述一类水库区域的等效高度、所述一类水库区域的等效横截面积、所述电站水库在目标时间段的水位信息,所述预设函数的因变量为所述一类水库区域的区域库容。
在一些实施例中,所述对于每个所述二类水库区域,通过人工智能模型确定所述二类水库区域的区域库容,包括:将所述二类水库区域的地形信息及所述电站水库在目标时间段的水位信息输入至所述人工智能模型,所述人工智能模型输出所述二类水库区域的区域库容。
本说明书提供的一种基于电站水库水位监测及库容计算算法,相比于现有技术,根据电站水库的地形信息,将电站水库分为多个水库区域,针对区域类型的不同,采用不同的方式计算区域库容,例如,对于地形变化较小的一类水库区域,直接基于预设计算规则确定一类水库区域的区域库容,花费时间较少的同时,计算的一类水库区域的区域库容较为准确,而对于地形变化较大的二类水库区域,直接基于预设计算规则确定二类水库区域的区域库容,误差较大,因此,使用人工智能模型确定二类水库区域的区域库容,保证确定的二类水库区域的区域库容准确度,整体提高了电站水库的水位监测及库容计算的效率及准确性。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本说明书一些实施例所示的基于电站水库水位监测及库容计算算法的流程图,如图1所示,基于电站水库水位监测及库容计算算法可以包括以下流程。
步骤110,获取电站水库的地形信息。
可以通过任意方式获取电站水库的地形信息,例如,可以通过GPS载波相位差分定位技术和回声测深仪等获取电站水库的地形信息。仅作为示例的,GPS载波相位差分定位技术和回声测深仪等获取电站水库的各个位置的三维坐标,根据各个位置的三维坐标,确定电站水库的地形信息,其中,地形信息可以包括:纵向特征、横向特征等,其中纵、横向特征包括波高差、波间距、平均坡度等。
步骤120,将电站水库分为多个初始区域,基于电站水库的地形信息确定每个初始区域的地形变化信息,基于多个初始区域的位置信息及地形变化信息对多个区域进行聚类,确定多个水库区域。
在一些实施例中,对于每个初始区域,可以基于每个区域的纵、横向特征的加权求和得到该初始区域的地形变化信息。
水库区域包括至少一个初始区域,多个水库区域包括至少一个一类水库区域及二类水库区域。其中,一类水库区域为地形变化小于低于第一地形变化阈值的区域,二类水库区域为地形变化大于第二地形变化阈值的区域。
在一些实施例中,基于多个初始区域的位置信息及地形变化信息对多个区域进行聚类,确定多个水库区域,包括:
基于多个初始区域的位置信息,确定每个初始区域的相邻区域;
对于每个初始区域,确定初始区域的地形变化信息与每个相邻区域的地形变化信息之间的相似度;
基于初始区域的地形变化信息与每个相邻区域的地形变化信息之间的相似度,对多个区域进行聚类,确定多个水库区域。例如,地形变化信息之间的相似度小于预设相似度阈值的初始区域和该初始区域的相邻区域被聚类在一个水库区域中。
在一些实施例中,可以通过K-Means聚类算法基于初始区域的地形变化信息与每个相邻区域的地形变化信息之间的相似度,对多个区域进行聚类,确定多个水库区域。
在一些实施例中,对于每个水库区域,基于水库区域对应的聚类中心的地形变化信息,确定水库区域为一类水库区域或二类水库区域。例如,某个水库区域的聚类中心的地形变化小于低于第一地形变化阈值,则该水库区域为一类水库区域,若水库区域的聚类中心的地形变化大于第二地形变化阈值,则该水库区域为二类水库区域。
步骤130,获取电站水库在目标时间段的水位信息。
图2是根据本说明书一些实施例所示的获取电站水库在目标时间段的水位信息的流程图,如图2所示,在一些实施例中,获取电站水库在目标时间段的水位信息,可以包括:
对于目标时间段内的每个监测时间点,获取电站水库的多个监测位置在监测时间点的水位,确定监测时间点对应的水位,例如,对电站水库的多个监测位置在监测时间点的水位进行加权求和,确定监测时间点对应的水位;
生成目标时间段对应的水位序列,其中,水位序列由目标时间段内的多个连续的检测时间点对应的水位组成;
对水位序列进行预处理,生成电站水库在目标时间段的水位信息。
如图2所示,在一些实施例中,对水位序列进行预处理,生成电站水库在目标时间段的水位信息,可以包括:
确定目标时间段的至少一个相关历史时间段,例如,与目标时间段之间的时间间隔小于预设时间间隔阈值(例如,一天、一周等)的历史时间段作为该目标时间段的相关历史时间段;
获取每个相关历史时间段对应的水位信息;
通过数据处理模型基于至少一个相关历史时间段对应的水位信息对水位序列进行异常数据剔除及数据补全,生成电站水库在目标时间段的水位信息。数据处理模型的类型包括但不限于神经网络(NN)、卷积神经网络(CNN)、深度神经网络(DNN)、神经网络(NN)、卷积神经网络(CNN)、循环神经网络(RNN)等或其任意组合,例如,数据处理模型可以为卷积神经网络和深度神经网络组合形成的模型。
在一些实施例中,数据处理模型包括异常数据确定层及数据补全层。
图3是根据本说明书一些实施例所示的确定多个水库区域的流程图,如图3所示,在一些实施例中,通过数据处理模型基于至少一个相关历史时间段对应的水位信息对水位序列进行异常数据剔除及数据补全,生成电站水库在目标时间段的水位信息,包括:
异常数据确定层基于至少一个相关历史时间段对应的水位信息确定水位波动范围,基于水位波动范围判断水位序列是否存在异常数据;
当判断水位序列不存在异常数据时,将水位序列作为目标时间段的水位信息;
当判断水位序列存在异常数据时,异常数据确定层确定并剔除水位序列中异常数据,生成缺失水位序列;
数据补全层对缺失水位序列进行数据补全,生成电站水库在目标时间段的水位信息,其中,数据补全层的输入包括缺失水位序列、掩码矩阵及随机噪声矩阵,其中,随机噪声矩阵服从标准正态分布。
水位序列X对应的缺失水位序列表示为。其中,/>为目标时间段的第一个时间点的水位信息(例如,多个监测位置在目标时间段的第一个监测时间点的水位),/>为目标时间段的第二个监测时间点的水位信息,/>为目标时间段的第d个监测时间点的水位信息。设/>为/>对应的掩码矩阵,且/>用于表示/>中缺失数据的位置。/>和/>都是m维向量,/>为/>中第i列向量,即目标时间段的第i个监测时间点的水位信息,/>为M中第i列向量,m是数据集/>中的样本数,也是水位序列X中的样本数,即多个监测位置的数量。X、/>和M之间对应关系如下:
其中,表示缺失数据,/>表示/>中第i个列向量中的第j个数据,/>表示水位序列X中第i个列向量中的第j个数据,/>表示掩码矩阵中第i个列向量中的第j个元素。
数据补全层基于对抗网络(Generative Adversarial Network,GAN)估计缺失水位序列的分布实现缺数据补全。由于GAN无法接受 NaN(Not a Number)输入,因此需要提供一个服从标准正态分布的随机噪声矩阵,其中,/>为目标时间段的第一个监测时间点的水位信息对应的随机噪声,/>为目标时间段的第2个监测时间点的水位信息对应的随机噪声,/>为目标时间段的第d个监测时间点的水位信息对应的随机噪声,用替换原有的/>,/>表示元素相乘,其中,NaN(Not a Number)输入用来描述一个数值,表示该数值不是一个有效的数值,它不属于任何有意义的类别。生成器G将缺失的数据集/>、掩码矩阵M、随机噪声矩阵N作为输入:
是数据补全层的生成器G的输出数据集,G会为/>中的每个/>生成一个对应的估计值/>。为了不改变真实值,使用/>替换/>中相对应的缺失元素,获得的补全后的水位序列用/>表示:
步骤140,对于每个一类水库区域,通过预设函数确定一类水库区域的区域库容。
在一些实施例中,基于预设函数确定一类水库区域的区域库容,其中,预设函数的自变量至少包括一类水库区域的等效高度、一类水库区域的等效横截面积、电站水库在目标时间段的水位信息,预设函数的因变量为一类水库区域的区域库容。一类水库区域的等效高度为该一类水库区域的水面的某个位置与底部之间的垂直距离,一类水库区域的等效横截面积可以为某个高程对应的一类水库区域的横截面积。
步骤150,对于每个二类水库区域,通过人工智能模型确定二类水库区域的区域库容。
在一些实施例中,将二类水库区域的地形信息及电站水库在目标时间段的水位信息输入至人工智能模型,人工智能模型输出二类水库区域的区域库容。人工智能模型的类型包括但不限于神经网络(NN)、卷积神经网络(CNN)、深度神经网络(DNN)、神经网络(NN)、卷积神经网络(CNN)、循环神经网络(RNN)等或其任意组合,例如,人工智能模型可以为卷积神经网络和深度神经网络组合形成的模型。
步骤160,基于每个一类水库区域的区域库容及每个二类水库区域的区域库容,确定电站水库的库容。
在一些实施例中,全部一类水库区域的区域库容和全部二类水库区域的区域库容的和即为电站水库的库容。
图4是根据本说明书一些实施例所示的电子设备的结构示意图,如图4所示,其是可以应用于本发明的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图4所示,电子设备包括计算单元,其可以根据存储在只读存储器(ROM)中的计算机程序或者从存储单元加载到随机访问存储器(RAM)中的计算机程序,来执行各种适当的动作和处理。在RAM中,还可存储设备操作所需的各种程序和数据。计算单元、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
电子设备中的多个部件连接至I/O接口,包括:输入单元、输出单元、存储单元以及通信单元。输入单元可以是能向电子设备输入信息的任何类型的设备,输入单元可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元可以包括但不限于磁盘、光盘。通信单元允许电子设备通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元执行上文所描述的各个方法和处理。例如,在一些实施例中,基于电站水库水位监测及库容计算算法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元而被载入和/或安装到电子设备上。在一些实施例中,计算单元可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于电站水库水位监测及库容计算算法。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。