发明内容
本发明提供基于多数据融合的充电棚光伏发电储量预测方法,以解决现有的问题。
本发明的基于多数据融合的充电棚光伏发电储量预测方法采用如下技术方案:
本发明实施例提供了基于多数据融合的充电棚光伏发电储量预测方法,该方法包括以下步骤:
获取充电棚的不同类型的历史数据对应的所有数据序列,对每种类型的数据序列进行分解得到每个数据序列的周期序列和趋势序列,根据周期序列自相关系数值的极大值获得每种类型的周期,根据每种类型的周期对每种数据类型的历史数据进行划分,得到每种类型的历史数据矩阵;根据所述历史数据矩阵获得历史数据矩阵中每个元素的第一先验概率和第二先验概率,以第一先验概率和第二先验概率为坐标获得历史数据矩阵所有元素对应的数据点,对所有数据点进行局部异常因子检测获得每个元素对应的每个数据的第一异常程度;
计算任意两种类型下每段数据序列对应的趋势序列之间的相关系数,根据任意两种类型下所有段数据序列对应的趋势序列之间的所有相关系数得到任意两个数据类型的关联性表征曲线,根据所述每段数据序列对应的趋势序列之间的相关系数、所述所有相关系数中的最大相关系数以及所述关联性表征曲线获得每种类型下每段数据序列的综合异常程度,将每段数据序列的综合异常程度作为每段数据序列中每个数据的第二异常程度;
根据每种类型与其他所有类型下每段数据序列对应的趋势序列之间的相关系数获得每种类型的融合权重,根据每个数据的第一异常程度、每个数据的第二异常程度以及每个数据对应类型的融合权重获得每个数据的最终异常程度,根据最终异常程度获得每个数据的参与度值,根据每个数据的参与度值获得参考历史数据,利用参考历史数据训练预测模型并预测光伏发电储量数据。
进一步地,所述根据周期序列自相关系数值的极大值获得每种类型的周期,具体方法包括:
设置周期大小t的初始值为1,以步长为2进行迭代,计算不同周期大小
值,以及每
个周期大小t对应的周期序列的自相关系数值
,获取到自相关程度值曲线,所述自相关程
度值曲线的横坐标为迭代的周期大小t,纵坐标为自相关程度值
;获取所述自相关程度值
曲线的极大值,极大值对应周期大小t即为周期序列的周期大小;获得每种类型下所有数据
序列对应的周期序列的周期大小的均值,作为每种类型的周期。
进一步地,所述根据每种类型的周期对每种数据类型的历史数据进行划分,得到每种类型的历史数据矩阵,具体方法包括:
以历史每种类型的周期为划分长度,将每种类型对应的所有历史数据均等划分为相同长度的数据序列片段,将所有的数据序列片段依照时间先后次序组合成每种类型历史数据矩阵,所述历史数据矩阵的每一行都是一个数据序列片段。
进一步地,根据所述历史数据矩阵获得历史数据矩阵中每个元素的第一先验概率和第二先验概率,具体方法包括:
在每种类型历史数据矩阵中,对于同一行上的相邻两个元素,其中一个记为当前
矩阵元素
,另一个记为前一个矩阵元素
,当前矩阵元素
在历史数据矩阵中的数据值
为
,前一个矩阵元素
在历史数据矩阵中的数据值为
,在历史数据矩阵获取条件
概率
,记为矩阵元素j的第一先验概率;
在每种类型历史数据矩阵中,对于同一列上的相邻两个元素,其中一个记为当前
矩阵元素
,另一个记为前一个矩阵元素
,当前矩阵元素
在历史数据矩阵中的数据值
为
,前一个矩阵元素
在历史数据矩阵中的数据值为
,在历史数据矩阵获取条件
概率
,记为矩阵元素i的第二先验概率。
进一步地,所述根据任意两种类型下所有段数据序列对应的趋势序列之间的所有相关系数得到任意两个数据类型的关联性表征曲线,具体方法包括:
对于任意两种类型的所有段数据序列对应的所有趋势序列,所有趋势序列之间获得的所有相关系数构成一个相关系数序列,将这个相关系数序列通过最小二乘算法拟合成一个多项式,所述多项式称之为任意两个数据类型的关联性表征曲线。
进一步地,所述获得每种类型下每段数据序列的综合异常程度,具体方法包括:
表示采集的历史数据中数据的类型的个数;第
种类型与第
种类型的关联性表
征曲线为
,
表示第
种类型与第
种类型在第
段数据序列分别对应的两个趋势序
列之间的相关系数与
的距离;
表示第
种类型与第
种类型在所有数据序列的
趋势序列之间的最大相关系数值与
的距离,
表示第h种类型下第a段数据序列的综
合异常程度。
进一步地,所述根据每种类型与其他所有类型下每段数据序列对应的趋势序列之间的相关系数获得每种类型的融合权重,具体方法包括:
表示数据序列的段数,
表示采集的历史数据中数据的类型的个数;
表示第
种类型的第
段数据序列的趋势序列
与第
种类型的第
段
数据序列的趋势序列
之间的皮尔逊相关系数,
表示第h种类型的融合权重。
进一步地,所述根据每个数据的第一异常程度、每个数据的第二异常程度以及每个数据对应类型的融合权重获得每个数据的最终异常程度,具体方法包括:
表示采集的历史数据中数据的类型的个数;
表示第
种类型的融合权重;
表示第
种类型中的第
个数据的第一异常程度;
表示在第
种类型中的第
个数据的第
二异常程度。
进一步地,所述根据最终异常程度获得每个数据的参与度值,具体方法包括:
对历史数据中所有数据的最终异常程度值进行线性归一化处理,将1.0减去归一化处理结果得到每个数据的参与度值。
本发明上述技术方案至少具有如下有益效果:
通过计算历史数据中某一个类型的历史数据中的相同周期内的数据分布概率,以及不同周期内的数据分布概率,来作为历史数据中的数据在概率坐标系中的坐标,根据在坐标系中的数据点的分布特征来表征历史数据中该类型下数据的第一异常程度值。并综合考虑不同类型的历史数据之间趋势分布的关联程度,来获取不同类型的历史数据的相互影响下的历史数据第二异常程度值以及对应不同数据类型的异常程度值的融合权重值。根据不同类型的异常程度融合权重值、单个类型的第一异常程度值以及对应的不同类型相互影响下的第二异常程度值综合获取历史数据的参与度大小。相较于传统的方法中仅根据单一类型下的历史数据与数据均值差异大小来进行数据筛选,而不考虑不同类型数据之间的相互关联性,并避免了传统方法中对异常的历史数据进行错误的选择,而不考虑数据的分布特征以及对应的趋势分布特征,大大提高了对有效的历史数据的选择率,保证了预测模型的训练数据的准确性,进一步提高预测模型的精度。
具体实施方式
为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的基于多数据融合的充电棚光伏发电储量预测方法,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
下面结合附图具体的说明本发明所提供的基于多数据融合的充电棚光伏发电储量预测方法的具体方案。
本发明提供实施例一,如图1所示,具体实施方法如下:
本实施例的目的为:在训练预测模型之前,先对历史数据进行预处理,获取历史数据的参考度,并根据历史数据的参考度对历史数据进行筛选,排除掉参考度低的历史数据。
本实施例所针对的具体场景为:充电棚利用光伏电池组进行发电并进行电能存储,通过多类型的数据进行充电棚的光伏充电储量的预测,预测模型使用的是神经网络模型。
步骤S101、获取充电棚工作过程中每天的不同类型的历史数据。
通过充电棚的能源管理系统(EMS)获取历史电量数据,其中历史电量数据包括:每天不同时刻的发电量以及对应的充电量数据等。为了对光伏发电储量进行科学预测,充分考虑天气对光伏发电的影响,因此相应的在采集历史电量数据时,同时考虑天气情况对预测的影响,其中相应的通过环境传感器采集历史天气数据,其中历史天气数据包括:每天不同时刻的温度数据、日照辐射数据等。本实施例中历史电量数据以及历史天气数据设定的采集频率相同,每天每小时采集一次即可。
需要说明的是,在预测过程中,由于历史数据混乱众多,不同情况的历史数据对预测有着不同的表达能力,对于历史的电量数据和天气数据来说,若历史数据中某一天的数据较为异常,例如该天的天气数据不符合季节性特征,该天充电棚的没有电动车充电因此放电数据较为异常等,若将所有的历史数据进行预测模型的训练,会使得预测模型在预测时造成较大的预测误差,进而充电棚控制系统无法根据当前充电棚的光伏发电储量对充电决策流程进行实时调整。因此本案在训练预测模型之前,先对历史数据进行预处理,获取历史数据的参考度,并根据历史数据的参考度对历史数据进行筛选,排除掉参考度低的历史数据。
因此,本发明对根据历史数据的参考度对历史数据进行筛选,排除掉参考度低的历史数据
步骤S102、根据不同类型的历史数据的周期分布特征获取历史数据的时间段划分大小,并根据时间段对历史数据进行划分得到不同类型的数据矩阵。
需要说明的是,由于天气数据和电量数据在时间上存在一定的规律的周期性的分布,例如天气数据会随着季节性进行周期性分布,而电量数据也会随着使用者的用电习惯同样呈现周期性分布,因此在计算历史数据的参考度时,应该为每个周期内的数据的参考度。首先需要对采集的历史数据进行时间段的划分,所述时间段的划分并非是针对某一天的数据划分,而是根据数据的趋势分布进行的对每一天的数据进行时间段的划分。
以历史数据中的温度数据为例,将采集的历史温度数据以每15天构成一段温度数据序列,那么所有历史温度数据对应得到多段温度数据序列,每段温度数据序列的横坐标为时间节点,纵坐标为温度值。为了获取温度数据的趋势分布特征,将温度数据序列输入到时间序列分解算法(STL)进行分解,得到该温度数据序列的周期序列和趋势序列,通过对该周期序列进行分析计算,即可获取该数据序列对应的周期大小。对获取的周期序列进行自相关函数的计算获取自相关程度值,根据自相关程度值的变化,即可得到进而获取该周期序列的周期大小,对应的即温度数据序列的周期大小。其中STL时间序列分割算法和自相关函数为公知技术,在本实施例中不再赘述。
具体的为:在自相关函数中计算不同周期大小
值,以及该值对应的周期序列的自
相关系数值
。设置周期大小值的初始值为1,以步长为2进行迭代,获取到自相关程度值曲
线(横坐标为迭代的周期大小,纵坐标为自相关程度值)。根据上述自相关系数值曲线获取
其极大值,该极大值对应的即为该周期序列的周期大小,对应的即为该温度数据序列的周
期大小。
在所有的温度数据序列中,计算所有温度数据的周期大小均值即为的历史温度数据的周期。类似上述操作,将其他类型的历史数据每15天构成一个数据序列,最终每种类型的历史数据对应多个数据序列,再根据这些数据序列获得每种类型对应的周期。
需要说明的是,由于在不同类型的历史数据中,正常的数据之间的分布具有关联性,则对应的不同类型数据之间在同样的时刻内分布具有关联性,但是由于单个时间节点无法表征不同类型数据之间的关联性,因此本实施例通过计算根据划分的每个时间段内的不同类型的历史数据分布,计算不同类型的同一时间段内每个数据的分布概率特征,以及对应的相邻时间段内的数据分布概率特征,来计算某一个类型的数据的异常程度。以温度数据为例叙述历史数据的划分方法:
以历史温度数据的周期为划分长度,将所有的历史温度数据均等划分为相同长度的温度数据序列片段,每个温度数据序列片段的长度为历史温度数据的周期,将所有的温度数据序列片段依照时间先后次序组合成一个历史数据矩阵,历史数据矩阵的每一行都是一个温度数据序列片段,即温度数据序列片段的列数位历史温度数据的周期。其他类型的历史数据按照同样的方法划分成多个数据序列片段,并构成历史数据矩阵。
至此,根据不同类型的历史数据的周期分布特征获取历史数据的时间段划分大小,并根据时间段对历史数据进行划分,得到不同类型的历史数据矩阵。在划分过程中由于不够均等划分导致最后一个温度数据序列片段不足一个周期时,将该温度数据序列片段删除掉,不予考虑。
步骤S103、根据不同类型的历史数据矩阵内每个元素的第一先验概率和第二先验概率计算不同类型下每个数据的第一异常程度值。
以历史数据矩阵为例进行叙述,对于每个矩阵元素来说,该矩阵元素对应的温度
值与其前一个矩阵元素对应的温度值有关,因此本案通过计算每个矩阵元素相对于其后一
个矩阵元素的分布来计算分布概率,即当不考虑相邻周期的情况时(仅考虑行方向上),在
同一个周期内计算每个矩阵元素的分布概率,对于同一行上的相邻两个元素,其中一个记
为当前矩阵元素
,另一个为其前一个矩阵元素,记为
,进而获取当前矩阵元素相对于
前一个矩阵元素的分布概率记为
,表示矩阵元素j对应的第一先验概率,其中
为前一个矩阵元素
的温度,
为当前矩阵元素
的温度,
表示同周期
内前一时刻的温度为
时,后一时刻的温度为
的概率。根据上述过程对同一个周期内
所有的矩阵元素计算其对应的分布概率,进而生成同一周期内第一先验概率矩阵。
在获取同一周期内获取的第一先验概率矩阵的基础上,当考虑相邻周期的情况
时,即对应历史数据矩阵中,通过计算列方向上的相邻周期内计算每个矩阵元素的分布概
率,类似上述计算,再次不再赘述,对于同一列上相邻的两个元素,其中一个记当前矩阵元
素为
,另一个为其前一个矩阵元素,记为
;获取当前矩阵元素
相对于前一个矩阵元素
的分布概率记为
,表示矩阵元素i对应的第二先验概率,其中
为前一
个矩阵元素
的温度,
为当前矩阵元素的温度,
表示不同周期内的相同
时刻中前一个周期内的温度为
时,后一个周期的温度为
的概率。根据上述过程对相
同时刻内不同周期内所有的矩阵元素计算其对应的分布概率,进而生成不同周期内第二先
验概率矩阵。
需要说明的是,上述
与
的统计获取过程中会存在矩阵第
一行和第一列上的元素不存在前一个元素的情况,那么本实施例中不对当前元素处于矩阵
第一行和第一列上这种情况进行统计计算。
根据上述步骤获取每个矩阵元素的第一先验概率和第二先验概率,通过构建第一先验概率(x轴)和第二先验概率(y轴)坐标系,该坐标系中每个数据点的对应矩阵中的一个元素,横坐标为该元素的第一先验概率,纵坐标为该元素的第二先验概率。其中坐标系中每个数据点的坐标表征着每个矩阵元素的分布概率特征,对于异常程度较低的数据点而言,其分布特征属于聚集性的分布,即对应的其分布概率与其余正常的分布概率特征具有相似性,对应到坐标系中呈现出聚集性的特点;而对于异常程度较高的数据点而言,由于其的分布特征较为异常,则其分布特征相较于其余正常的分布概率特征具有离散性,对应到坐标系中程度出离散性的特点。因此本案通过将温度数据转换为坐标数据点进行处理。
通过计算第一先验概率(x轴)和第二先验概率(y轴)坐标系中数据点的离散性来
表征矩阵元素中数据点的异常程度,进而表征温度数据类型下,温度历史数据的异常程度
值。本案中根据密度聚类的思想,采用LOF局部异常因子检测算法计算每个数据点的局部异
常因子作为每个数据点的异常程度值,进而得到温度历史数据矩阵中每个矩阵元素的异常
程度值,即对应的温度历史数据中每个温度数据的第一异常程度值,记为
。其中LOF局部
异常因子检测算法为公知技术,在本案中不再赘述,其中在本实施例中设置的
距离邻域为
5,可根据实施者具体实施情况而定。
根据上述类似计算,获取其他类型的历史数据中每个类型的历史数据矩阵的异常程度值,以及其他类型的历史数据中每个数据的第一异常程度值。
步骤S104、根据不同类型的历史数据中每个数据序列之间的相关性获得每个数据的第二异常程度,根据第一异常程度和第二异常程度获得历史数据的参与度值。
上述计算仅为单个数据类型的历史数据矩阵的异常程度值。为了联合不同历史数据类型下,不同类型数据之间的分布差异,来获取最终的每个时刻的异常程度值。因此本实施例通过比较不同类型数据之间的分布概率特征的关联性来获取不同类型之间的融合权重值,并根据融合权重值来获取历史数据的最终异常程度值,进而为计算历史数据的参考度提供计算基础。
需要说明的是,在获取最终的每个时刻异常程度值之前首先要通过不同类型历史数据之间的联系来获取其融合权重值,其中本实施例所述的联系为不同类型数据之间的分布趋势的关系,例如历史的温度数据和日照辐射数据之间往往存在一定的联系性,充电量与日照辐射数据之间也存在一定的联系性。因此在所有类型的历史数据中,若当前类型数据与其他类型数据之间的关联性越大,则表明当前类型数据在所有类型数据之间的相关程度越高,则对应的当前类型数据的融合权重值就越大,并且若该两个类型的数据之间分布差异较大的情况下(即不符合相关规律),则表明该数据的异常程度值就越大。
如步骤S102中所叙述的,对于所有历史温度数据以每隔15天分割成多段温度数据序列,每段将温度数据序列进行STL分解,得到每段温度数据序列的周期序列和趋势序列,那么同理对每其他类型的历史数据以每隔15天分割成的多段数据序列,每段数据序列进行STL分解得到每段数据序列的周期序列和趋势序列。根据不同类型的历史数据对应的趋势序列之间相关性,来表征每个类型的融合权重值。
具体的为:记第
种类型的第
段数据序列的趋势序列为
,计算
与其他
类型的第
段数据序列的趋势序列之间的皮尔逊相关系数。即对于任意两种类型的同一段
数据序列上都可以获得一个相关系数,那么任意两种类型的所有数据序列可以获得多个相
关系数,对这些相关系数构成一个相关系数序列,将这个相关系数序列通过最小二乘算法
拟合成一个多项式,本实施例中以拟合成一个5次多项式为例进行叙述,这个多项式称之为
任意两个数据类型的关联性表征曲线。
计算第
段的相关系数值与关联性表征曲线模型的距离即为对应的第
段数据序
列的异常程度值。具体的第
种类型下第
段数据序列的综合异常程度值
的计算表达式
为:
式中,
表示采集的历史数据中数据类型的个数;记第
种类型与第
个数据类型
的关联性表征曲线为
,则
表示第
种类型与第
个数据类型在第
段数据序列对应
的两个趋势序列之间的相关系数值与
的距离;
表示第
种类型与第
个数据类
型在所有数据序列对应的趋势序列之间的最大相关系数值与
的距离。
将每个数据值的第二异常程度值设置为每个数据所属数据序列的综合异常程度
值,即第
个数据类型的第
段数据序列中的每个数据的第二异常程度均为
。
获取第
种类型的融合权重值。其中第
种类型的融合权重值的
的计算表达式
为:
式中,
表示数据序列的段数,
,其中
表示采集的历史数据中的天数,15
为本实施例所构成数据序列的天数,
表示向下取整函数;
表示采集的历史数据中数据类
型的个数;
表示第
种类型的第
段数据序列的趋势序列
与第
种类
型(除
外)的第
段数据序列的趋势序列
之间的皮尔逊相关系数。对所有的数据类型
计算得到融合权重值之后进行
函数进行归一化处理。
则对应的对每个历史数据的第一异常程度值和第二异常程度值进而L2范数整合,
则对于历史数据中第
个数据的最终异常程度值
的计算表达式为:
式中,
表示采集的历史数据中数据类型的个数;
表示第
种类型的融合权重
值;
表示第
种类型中的第
个数据的第一异常程度值;
表示在第
种类型中的第
个
数据的第二异常程度值。对历史数据中所有数据的最终异常程度值进行线性归一化处理,
则对应的第
个数据的参与度值
。
需要说明的是第
个数据是指历史数据中所有类型下的第
个数据。
通过计算历史数据中某一个类型的数据中的相同周期内的数据分布概率,以及不同周期内的数据分布概率,来表征历史数据中该类型下数据的第一异常程度值。并综合考虑不同类型的历史数据之间的关联程度,获取不同类型的历史数据的相互影响下的历史数据第二异常程度值以及对应不同数据类型的异常程度值的融合权重值。根据不同类型的异常程度融合权重值、某个类型的第一异常程度值以及对应的不同类型相互影响下的第二异常程度值综合获取历史数据的参与度大小。相较于传统的方法中仅根据单一类型下的历史数据与数据均值差异大小来进行数据筛选,而不考虑不同类型数据之间的相互关联性,并避免了传统方法中对异常的历史数据进行错误的选择,而不考虑数据的分布特征以及对应的趋势分布特征,大大提高了对有效的历史数据的选择率,保证了预测模型的训练数据的准确性,进一步提高预测模型的精度。
至此,根据不同类型的历史数据融合权重值来获取最终异常程度值,进而获取历史数据的参与度值。
步骤S105、根据参与度值选取参考度大的历史数据作为预测模型的训练数据进行预测模型的训练并进行充电棚光伏发电储量预测。
根据上述步骤,获取历史数据的参考度值,通过设置参考度阈值
,使用历
史数据中参考度大于参考度阈值的历史数据记为参考历史数据,所有参考历史数据作为进
行预测模型训练的数据,即预测模型训练用的数据集为所有参考历史数据,每个参考历史
数据包括不同类型的电量数据和天气数据,其中电量数据包括:每天不同时刻的发电量、对
应的充电量数据等,其中历史天气数据包括:每天不同时刻的温度数据、日照辐射数据等;
每个参考历史数据对应的标签为每个参考历史数据相同时刻下充电棚的储量数据,由充电
棚的能源管理系统(EMS)获得。其中本实施例采用LSTM预测模型进行训练,模型中输入数据
为参考历史数据,输出数据为预测的光伏发电储量数据,其中模型中使用的损失函数为均
方根误差函数。具体的利用LSTM预测模型进行训练的方法为常规技术方法,本实施例不再
进行赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。