海上平台负荷数据的聚类方法、装置、终端及存储介质与流程

文档序号:32691780发布日期:2022-12-27 18:56阅读:20来源:国知局
海上平台负荷数据的聚类方法、装置、终端及存储介质与流程

1.本发明涉及数据分析技术领域,尤其涉及一种海上平台负荷数据的聚类方法、装置、终端及存储介质。


背景技术:

2.基于岸基供电的近海采油平台通过海底电缆在陆上电网取电。相比于一般的独立微电网,海上采油平台内部的用电设备运行情况更加复杂,设备对平台运行造成的影响更大,主要体现在:

用电负荷多为感应电机类设备,对无功的需求高,且包含大量变频控制和无功补偿装置,使得平台上负荷特性呈现出强非线性,容易导致平台内部电压谐波问题突;

平台上感应电机负荷的运行工况较为复杂,在采油过程中常出现随机性波动或冲击性的运行工况,进一步影响了平台电压的电能质量。
3.为了进行相关的负荷预测和电能质量治理等工作,目前主要通过基于密度峰值的快速聚类算法对海上平台负荷数据内在的联系进行归纳分析。但是传统的cfsfdp算法定义的局部密度未考虑数据内部的结构差异,当类簇之间的密度差异过大时,通过固定的截断距离所计算出的局部密度不能真实地反映样本点的疏密情况。同时,聚类中心需要通过决策图人为确定,即聚类中心较为依赖人为主观选择,聚类结果准确性较低。这些原因导致对海上平台负荷数据进行聚类时效果较差。


技术实现要素:

4.本发明实施例提供了一种海上平台负荷数据的聚类分析方法、装置、终端及存储介质,以解决对海上平台负荷数据进行聚类效果差的问题。
5.第一方面,本发明实施例提供了一种海上平台负荷数据的聚类方法,包括:
6.获取多个海上平台的负荷数据作为负荷数据集;其中,负荷数据为按照设定采样频率采集的海上平台的有功功率;
7.将负荷数据集划分为测试数据集和训练数据集,对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值,并基于k值和高斯核函数计算负荷数据集的局部密度;
8.基于最大最小距离法确定负荷数据集的聚类中心数量;
9.基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇。
10.在一种可能的实现方式中,对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值,包括:
11.计算测试数据集中各负荷数据与训练数据集中各负荷数据之间的距离,得到距离集合;
12.按照递增顺序对距离集合中的距离排序;
13.令ki=1;
14.在距离集合中选取前ki个距离;
15.从测试数据集中和训练数据集中选取与前ki个距离对应的负荷数据作为数据集knni;
16.统计数据集knni中各负荷数据的类别,将各个类别中出现频率最高的类别作为数据集knni的预测分类,并计算数据集knni对应的分类准确率acci;其中,类别包括负荷数据对应的海上平台的信息;
17.将ki的值+1并跳转至“在距离集合中选取前ki个距离”这一步骤,直至ki=
max
;其中,k
max
为预设值;
18.取将t作为用于计算局部密度的k值。
19.在一种可能的实现方式中,基于k值和高斯核函数计算负荷数据集中各负荷数据的局部密度,包括:
20.基于高斯核函数确定局部密度公式;局部密度计算公式为:
[0021][0022]
其中,ρi表示负荷数据xi的局部密度,knnk(xi)为与负荷数据xi距离最近的k个负荷数据所构成的集合,d
ij
表示负荷数据xi到负荷数据xj的距离,负荷数据xi为任一负荷数据;
[0023]
基于k值确定负荷数据xi对应的集合knnk(xi);
[0024]
基于knnk(xi)和局部密度计算公式计算负荷数据xi的局部密度。
[0025]
在一种可能的实现方式中,通过最大最小距离法确定负荷数据集的聚类中心数量,包括:
[0026]
在负荷数据集中随机选择一个负荷数据作为第一个聚类中心z1;
[0027]
将负荷数据集中距离z1最远的负荷数据作为第二个聚类中心z2;
[0028]
分别计算负荷数据集中除z1、z2外的各个负荷数据与z1、z2的距离,并求出其中最小值d
min

[0029]
计算如果d
l
》θ‖z
1-z2‖,则将x
l
作为第n+1个聚类中心z
n+1
,并重复执行此步骤,直至d
l
≤θ‖z
1-z2‖时,得到负荷数据集的聚类中心数量n;其中,θ为预设比例系数。
[0030]
在一种可能的实现方式中,基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,包括:
[0031]
计算负荷数据集中各个负荷数据间的最小距离;最小距离δi为样本点和高于其密度且距最近样本点之间距离,即:
[0032][0033]
基于最小距离、局部密度和预设的权值计算公式计算各个负荷数据集、的聚类中
心权值;权值计算公式为:
[0034]
γi=ρi·
δi[0035]
按照递减关系对各个聚类中心权值进行排序,并将前n个聚类中心权值对应的负荷数据作为聚类中心;其中,n为聚类中心数量;
[0036]
按局部密度由高到低的顺序,将除聚类中心外的各个负荷数据依次分配到比其局部密度更高且距离最近的负荷数据对应的聚类中心所属的聚类簇中。
[0037]
在一种可能的实现方式中,在基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇之后,方法还包括:
[0038]
基于纯度计算公式计算各个聚类簇的纯度;纯度计算公式为:
[0039][0040]
其中,pi=max(p
ij
),m是第i个聚类簇中负荷数据的个数;
[0041]
基于各个聚类簇的纯度对各个聚类簇进行选取。
[0042]
在一种可能的实现方式中,获取多个海上平台的负荷数据作为负荷数据集,包括:
[0043]
获取多个海上平台的负荷数据;
[0044]
对各个负荷数据进行数据缺失值修正;
[0045]
对修正后的各个负荷数据进行归一化处理,得到负荷数据集。
[0046]
第二方面,本发明实施例提供了一种海上平台负荷数据的聚类装置,包括:
[0047]
获取模块,用于获取多个海上平台的负荷数据作为负荷数据集;其中,负荷数据为按照设定采样频率采集的海上平台的有功功率;
[0048]
划分模块,用于将负荷数据集划分为测试数据集和训练数据集;
[0049]
交叉验证模块,用于对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值;
[0050]
密度计算模块,用于基于k值和高斯核函数计算负荷数据集的局部密度;
[0051]
数量确定模块,用于基于最大最小距离法确定负荷数据集的聚类中心数量;
[0052]
聚类模块,用于基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇。
[0053]
第三方面,本发明实施例提供了一种终端,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上第一方面或第一方面的任一种可能的实现方式方法的步骤。
[0054]
第四方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如上第一方面或第一方面的任一种可能的实现方式方法的步骤。
[0055]
本发明实施例提供一种海上平台负荷数据的聚类方法、装置、终端及存储介质,该方法包括:获取多个海上平台的负荷数据作为负荷数据集;其中,负荷数据为按照设定采样频率采集的海上平台的有功功率;将负荷数据集划分为测试数据集和训练数据集,对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值,并基于k值和高斯核函数计算负荷数据集的局部密度;基于最大最小距离法确定负荷数据集的聚类中心数量;基
于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇。本发明通过高斯核函数计算负荷数据集的局部密度,可以对负荷数据的疏密程度进行调整,可以避免因类簇疏密差异过大而不能准确判断出类簇中心的问题;通过最大最小距离法确定聚类中心数量,可以避免聚类中心受到人为主观选择的影响,从而提高对海上平台负荷数据进行聚类的效果。
附图说明
[0056]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0057]
图1是本发明一实施例提供的海上平台负荷数据的聚类方法的应用场景图;
[0058]
图2是本发明一实施例提供的海上平台负荷数据的聚类方法的实现流程图;
[0059]
图3是本发明一实施例提供的海上平台负荷数据的聚类装置的结构示意图;
[0060]
图4是本发明一实施例提供的终端的示意图。
具体实施方式
[0061]
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
[0062]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图通过具体实施例来进行说明。
[0063]
图1为本发明实施例提供的海上平台负荷数据的聚类方法的应用场景图。如图1所示,基于岸基供电的近海采油平台采用海底电缆通过陆上电网向近海采油平台供电,能够有效实现电能替代,可以在提高经济效益的同时有效改善海上平台作业环境,减少污染物排放。相比于一般的独立微电网,海上采油平台内部的用电设备运行情况更加复杂,设备对平台运行造成的影响更大,主要体现在:

用电负荷多为感应电机类设备,对无功的需求高,且包含大量变频控制和无功补偿装置,使得平台上负荷特性呈现出强非线性,容易导致平台内部电压谐波问题突;

平台上感应电机负荷的运行工况较为复杂,在采油过程中常出现随机性波动或冲击性的运行工况,进一步影响了平台电压的电能质量。
[0064]
针对平台上负荷特性的问题,有必要对基于岸基输电的近海采油平台典型用电负荷特性进行系统分析,围绕近海采油平台典型用电设备的运行特征并结合负荷在时间和空间上的分布规律,归纳分析揭示海上平台负荷内在的联系。
[0065]
传统的基于密度峰值的快速聚类(clustering by fast search and find of density peaks,cfsfdp)算法应用于类簇分布情况复杂的海上平台负荷聚类存在缺陷。cfsfdp算法定义的局部密度并未考虑数据内部的结构差异,当类簇之间的密度差异过大时,通过固定的截断距离所计算出的局部密度不能真实地反映样本点的疏密情况。同时,聚类中心需要通过决策图人为确定,即聚类中心较为依赖人为主观选择,有一定主观性。因此
改进适用于海上平台负荷分析的聚类算法十分必要。
[0066]
参见图2,其示出了本发明实施例提供的海上平台负荷数据的聚类方法的实现流程图,详述如下:
[0067]
步骤101,获取多个海上平台的负荷数据作为负荷数据集;其中,负荷数据为按照设定采样频率采集的海上平台的有功功率。
[0068]
在本实施例中,可以通过安装在各个海上平台上的负荷监测终端,分别对每个海上平台按照某一频率采集n个不同时刻的功率,最终得到负荷数据集p={p1,p2,...,pi,...,pn},其中,第i个采集的功率记为pi,并将pi对应的海上平台作为pi的原始类。
[0069]
步骤102,将负荷数据集划分为测试数据集和训练数据集,对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值,并基于k值和高斯核函数计算负荷数据集的局部密度。
[0070]
在本实施例中,可以随机将负荷数据集中的负荷数据平均分配到测试数据集和训练数据集中,以进行交叉验证。交叉验证的思想是将原始数据分为训练集和测试集,通过训练集对分类器进行训练,并通过测试集对训练结果进行验证,从而得到可靠的模型。本实施例通过交叉验证计算k值,可以得到更准确并且适用于整个负荷数据集的k值。
[0071]
另一方面,k近邻算法的思想是利用k个邻近的样本值对自身的样本值进行预测,本实施例基于k近邻算法的思想重新定义了局部密度的计算,即利用某个负荷数据的k个邻近的负荷数据计算该负荷数据的局部密度。改进后的局部密度可以将稀疏类簇样本点的局部密度放大,密集类簇样本点的局部密度缩小,避免了因类簇疏密差异过大而不能准确判断出聚类中心的问题。
[0072]
步骤103,基于最大最小距离法确定负荷数据集的聚类中心数量。
[0073]
在本实施例中,最大最小距离法通常用于确定聚类中心点,其优点在于能够使聚类中心点不会太集中,有利于获得更好的聚类结果,缺点是容易陷入局部最优。因此本实施例中仅通过最大最小距离法确定聚类中心数量,在后续步骤中根据聚类中心数量重新确定聚类中心,可以实现更为客观的聚类中心提取方式。
[0074]
步骤104,基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇。
[0075]
在本实施例中,本发明是在cfsfdp聚类算法的基础上进行了改进。cfsfdp聚类算法的思想是,假设聚类的簇的中心符合以下规则:
[0076]
1.簇的中心被拥有更低局部密度的邻近点包围;
[0077]
2.这些邻近点距离更高局部密度的其他点都比较远。
[0078]
具体计算过程为:首先计算每个点的局部密度,以及与高局部密度点之间的距离,画出决策图,决策图右上方的点就是簇的中心点,右上方有几个点,就分几个簇。最后进行筛选,具体的筛选过程如下:(1)局部密度非常低的点通常是噪音点,独自成簇,可做好标记,不参与后面的分配;(2)可选择两个指标都在前50%的成立簇中心,剩余的点将归到离它最近的簇中心所在的簇里去。不需要反复的迭代运算。
[0079]
在一种可能的实现方式中,对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值,包括:
[0080]
计算测试数据集中各负荷数据与训练数据集中各负荷数据之间的距离,得到距离
集合;
[0081]
按照递增顺序对距离集合中的距离排序;
[0082]
令ki=1;
[0083]
在距离集合中选取前ki个距离;
[0084]
从测试数据集中和训练数据集中选取与前ki个距离对应的负荷数据作为数据集knni;
[0085]
统计数据集knni中各负荷数据的类别,将各个类别中出现频率最高的类别作为数据集knni的预测分类,并计算数据集knni对应的分类准确率acci;其中,类别包括负荷数据对应的海上平台的信息;
[0086]
将ki的值+1并跳转至“在距离集合中选取前ki个距离”这一步骤,直至ki=k
max
;其中,k
max
为预设值;
[0087]
取将t作为用于计算局部密度的k值。
[0088]
在本实施例中,通过交叉验证计算k值的步骤可以如下:
[0089]
s3.2.1、计算测试数据集x
test
各数据与训练数据集x
train
各数据之间的距离d
ij
∈r
l
×
p

[0090]
s3.2.2、按照距离的递增关系将d
ij
进行排序。
[0091]
s3.2.3、从1到k
max
取k的值ki,进行s3.2.4到s3.2.6的步骤。
[0092]
s3.2.4、选取距离最小的ki个点。
[0093]
s3.2.5、确定前ki个点的类别的出现频率。
[0094]
s3.2.6、返回前ki个点中出现频率最高的类别作为测试数据集的预测分类,并记录下knn预测结果以及对应分类准确率acci,acci即在当前ki值下knn的预测结果中预测分类与原始类别相同的比率。
[0095]
s3.2.7、取输出最终的k值k=t。
[0096]
本发明用于对海上平台负荷数据的时空特征进行分析,本实施例中的类别可以是负荷数据对应的海上平台的编号、作业类型以及空间位置等信息,对负荷数据分类后,根据聚类簇中的类别占比,就可确定负荷数据间的联系。
[0097]
在一种可能的实现方式中,基于k值和高斯核函数计算负荷数据集中各负荷数据的局部密度,包括:
[0098]
基于高斯核函数确定局部密度公式;局部密度计算公式为:
[0099][0100]
其中,ρi表示负荷数据xi的局部密度,knnk(xi)为与负荷数据xi距离最近的k个负荷数据所构成的集合,d
ij
表示负荷数据xi到负荷数据xj的距离,负荷数据xi为任一负荷数据;
[0101]
基于k值确定负荷数据xi对应的集合knnk(xi);
[0102]
基于knnk(xi)和局部密度计算公式计算负荷数据xi的局部密度。
[0103]
在本实施例中,局部密度的计算公式是在高斯核函数的基础上进行改进得到的。
具体基于k近邻和相对密度的思想重新定义了局部密度的计算方法,采取截断距离dc=1的策略,利用高斯核函数计算局部密度值,高斯核函数为:
[0104][0105]
将截断距离dc=1
[0106]
带入高斯核函数,得到局部密度计算定义式为:
[0107][0108]
其中,knnk(xi)为与xi距离最近的k个样本点所构成的集合。改进后,一定程度上避免了算法中密度计算受截断距离值的影响,使得样本点xi的局部密度值只取决于其k个近邻点,从而使稀疏类簇样本点的局部密度放大,密集类簇样本点的局部密度缩小,避免了因类簇疏密差异过大而不能准确判断出聚类中心的问题。
[0109]
在一种可能的实现方式中,通过最大最小距离法确定负荷数据集的聚类中心数量,包括:
[0110]
在负荷数据集中随机选择一个负荷数据作为第一个聚类中心z1;
[0111]
将负荷数据集中距离z1最远的负荷数据作为第二个聚类中心z2;
[0112]
分别计算负荷数据集中除z1、z2外的各个负荷数据与z1、z2的距离,并求出其中最小值d
min

[0113]
计算如果d
l
》θ‖z
1-z2‖,则将x
l
作为第n+1个聚类中心z
n+1
,并重复执行此步骤,直至d
l
≤θ‖z
1-z2‖时,得到负荷数据集的聚类中心数量n;其中,θ为预设比例系数。
[0114]
在本实施例中,确定聚类中心数量的具体步骤可以如下:
[0115]
s4.1、输入原始数据集x={x1,x2,...,xn},n为样本总数;θ为预设比例系数,θ(0《θ《1)。
[0116]
s4.2、从x中任意选择一个样本点作为第一个聚类中心z1。
[0117]
s4.3、从x中找出距离z1最远的样本点作为第二个聚类中心z2。
[0118]
s4.4、计算其余样本点xi与已选的聚类中心z1,z2距离,并求出其中最小值di。
[0119]
s4.5、如果此时可以选择x
l
作为第三个聚类中心,即z3=x
l
。然后转到s4.6;否则转到s4.7。
[0120]
s4.6、如果上一步骤中得到了新的聚类中心,则继续计算其余样本点与选出的各个聚类中心之间的距离d
ij
,并计算如果d
l
》θ||z
1-z2||,则z
k+1
=x
l
,继续转到s4.6;否则转至s4.7。
[0121]
s4.7、当x中剩余的样本点都不满足成为聚类中心的条件时算法结束,输出聚类中心个数k。
[0122]
在一种可能的实现方式中,基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,包括:
[0123]
计算负荷数据集中各个负荷数据间的最小距离;最小距离δi为样本点和高于其密度且距最近样本点之间距离,即:
[0124][0125]
基于最小距离、局部密度和预设的权值计算公式计算各个负荷数据集、的聚类中心权值;权值计算公式为:
[0126]
γi=ρi·
δi[0127]
按照递减关系对各个聚类中心权值进行排序,并将前n个聚类中心权值对应的负荷数据作为聚类中心;其中,n为聚类中心数量;
[0128]
按局部密度由高到低的顺序,将除聚类中心外的各个负荷数据依次分配到比其局部密度更高且距离最近的负荷数据对应的聚类中心所属的聚类簇中。
[0129]
在本实施例中,对负荷数据集进行聚类的具体步骤可以如下:
[0130]
s5.1、取s3.3计算得的局部密度作为cfsfdp的局部密度ρi,即:
[0131][0132]
s5.2、计算数据集x={x1,x2,...,xi,...,xn}各数据的最小距离δi。最小距离δi为样本点和高于其密度且距最近样本点之间距离,即:
[0133][0134]
s5.3、计算聚类中心权值;根据cfsfdp基于的两个假设,可得聚类中心一般为局部密度和距离值均较大的数据样本点,聚类中心权值即为两者加权值γi,即:
[0135]
γi=ρi·
δi[0136]
其中,
·
是指两个数值的乘积。
[0137]
s5.4、获取聚类中心;按照递增关系将γi进行排序,取s4.7输出的聚类中心数k,则将γ值最大的k个数据作为聚类中心。
[0138]
s5.5、样本分配策略;选出聚类中心后再对剩余样本点进行分配,cfsfdp算法的分配策略为:按局部密度下降的顺序,将剩余样本点依次分配到比其局部密度更高且距离最近的样本点所属类簇之中。
[0139]
在一种可能的实现方式中,在基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇之后,方法还包括:
[0140]
基于纯度计算公式计算各个聚类簇的纯度;纯度计算公式为:
[0141][0142]
其中,pi=max(p
ij
),m是第i个聚类簇中负荷数据的个数;
[0143]
基于各个聚类簇的纯度对各个聚类簇进行选取。
[0144]
在本实施例中,可以使用纯度purity定义来分析海上平台负荷的时空特性;纯度越高,代表聚出的各类分别能代表各个原始类别的特征,即聚类得到的某条海上平台负荷的数据能很好代表某一平台的一个特征,适合进一步分析海上各个平台的负荷特性。
[0145]
使用纯度对聚类簇进行选取的具体步骤可以如下:
[0146]
s5.6、负荷特征分析;若海上平台负荷的数据集x被划分为t个类c1,c2,...,c
t
,对一个聚成的类i,首先计算聚类i中的成员属于原始类j的概率p
ij
,纯度purity的定义为:
[0147][0148]
其中,pi=max(p
ij
),m是整个聚类划分所涉及到的成员个数。某一个类的纯度高,代表聚出类能代表一个原始类的特征,且此特征在其它原始类中出现较少。在海上平台负荷数据聚类分析中,原始类别是获取时各个负荷数据的类别,代表着负荷数据的时空特性,因此纯度高的聚类簇中的负荷数据能代表这一海上平台的一个时空特性。反之,若某一聚类簇的纯度较低,则说明这一聚类簇中的负荷数据来自于多个海上平台都有出现,不能够代表一个海上平台负荷的时空特性。
[0149]
在一种可能的实现方式中,获取多个海上平台的负荷数据作为负荷数据集,包括:
[0150]
获取多个海上平台的负荷数据;
[0151]
对各个负荷数据进行数据缺失值修正;
[0152]
对修正后的各个负荷数据进行归一化处理,得到负荷数据集。
[0153]
在本实施例中,海上平台在实际运行中,由于装置测量和信道的误差及各种故障及冲击负荷的影响,数据中会存在缺失、不准确等问题。因此,有必要对海上平台的电力数据进行预处理,包括数据缺失值修正、数据归一化处理。
[0154]
数据预处理部分包括对负荷数据中缺失值进行修正以及对修正后的负荷数据进行归一化处理。对缺失数据进行修正,首先判断负荷曲线的数据缺失量是否小于10%,若是,则使用以一元三点抛物线插值算法对缺失量进行插值拟合,否则直接删除该条负荷曲线。对数据使用最小-最大值标准化的方式进行归一化。具体步骤如下:
[0155]
s2.1、对负荷数据中缺失值进行修正;若某条负荷数据缺失量达到10%或以上时,认定该曲线无效直接删除该条负荷曲线;若某条负荷曲线的数据缺失量低于10%时,以一元三点抛物线插值算法对缺失量进行插值拟合。一元三点抛物线插值算法的原理为:
[0156]
设n个节点xi(i=0,1,...,n-1)的函数值为yi=f(xi),有x0《x1《...《x
n-1
,对应函数值y0《y1《...《y
n-1
。为计算指定的插值点t的近似函数值z=f(t),选择最靠近t的3个节点:x
k-1
,xk,x
k+1
(xk《t《x
k+1
),然后根据抛物线插值公式计算z的值,即:
[0157][0158]
其中,当|x
k-t|《|t-x
k+1
|时,m=k-1;当|x
k-t|》|t-x
k+1
|时,m=k。若插值点t不在包含n个节点的区间内,则只选取区间某一端的2个节点来进行线性插值。
[0159]
s2.2、对修正后的功率曲线数据进行归一化处理;记pk=[p
k1
,...,p
ki
,...,p
km
]∈r1×m为修正后第k条负荷功率数据的m点原始有功功率矩阵,k=1,2,3,...,n,n为负荷功率曲线总条数,p
ki
为第k条负荷功率曲线的第i点原始有功功率,i=1,2,...,m,m为采样点个
数,则p=[p1,p2,...,pn]
t
∈rn×m为n条负荷功率的m点原始有功功率矩阵。
[0160]
计算负荷数据的功率最大值p
k.max
=max{p
k1
,p
k2
,...,p
ki
,...,p
km
}和最小值p
k.min
=min{p
k1
,p
k2
,...,p
ki
,...,p
km
},对原始数据样本进行归一化处理:
[0161][0162]
得到归一化的负荷功率曲线有功功率标幺值矩阵p
′k=[p

k1
,...,p

ki
,...,p

km
]∈r1×m,最终得到n条负荷数据归一化后的结果p

=[p1′
,p
′2,...,p
′n]
t
∈rn×m。
[0163]
在一个具体的实施例中,采用建模仿真的方式对海上平台的负荷特性进行研究。经过对某海域近海采油平台的负荷类型和配电结构进行调研,初步掌握了平台基本情况。并且平台内各种用电负荷的特性是清楚的,因此建立电磁暂态模型可以在一定程度上反映平台真实的运行工况。
[0164]
根据海上采油平台结构,在pscad/emtdc电磁暂态仿真软件中搭建近海采油平台系统的仿真模型,仿真的采样频率设置为100hz,主要是对设备的启动过程进行仿真。系统中共包含两个采油平台,每个采油平台各自通过两个变压器采用单母线分段的方式供电,岸上电源通过海底电缆为海上平台供电。
[0165]
为验证本发明所提出的方法在用户负荷曲线聚类中的有效性,本实施例采用本发明方法和cfsfdp算法以及经典的传统聚类方法k-means算法进行聚类分析,并以外部指标纯度purity、内部指标轮廓系数sc和戴维森指数dbi评价各类聚类算法的聚类效果,其中纯度越高,轮廓系数,戴维斯指数越低,聚类的效果越好。3种聚类算法聚类效果比较结果如表1所示:
[0166]
表1
[0167] purity指标(

)sc指标(

)db指标(

)本发明0.8050.7870.736cfsfdp0.7530.7540.792k-means0.7300.7250.822
[0168]
从上表可以看出,在海上平台负荷特性提取的上,本文所提方法效果较其他两种方法效果更好。具体来讲,在内部评价指标方面,本文所提的方法能够优化传统cfsfdp算法聚类后的轮廓系数和戴维森指数,这是因为本文选取了基于knn的局部密度定义方式,能较好的减小不均衡负荷样本的影响。在外部评价指标方面,本文所提的方法纯度最高,因此本文的方法能够很好的挖掘出各个平台的负荷特征,所以相较其他两个方法更适合应用于海上平台负荷的时空特性分析上来。
[0169]
本发明实施例通过高斯核函数计算负荷数据集的局部密度,可以对负荷数据的疏密程度进行调整,可以避免因类簇疏密差异过大而不能准确判断出类簇中心的问题;通过最大最小距离法确定聚类中心数量,可以避免聚类中心受到人为主观选择的影响,从而提高对海上平台负荷数据进行聚类的效果。
[0170]
本发明提供的海上平台负荷数据的聚类方法还具有以下有益效果:
[0171]
(1)本发明先针对cfsfdp算法对类簇间密度相差较大海上平台负荷数据集聚类效果较差问题,将k近邻的思想融入到局部密度的定义,改进后的局部密度可以将稀疏类簇样本点的局部密度放大,密集类簇样本点的局部密度缩小,避免了因类簇疏密差异过大而不
能准确判断出类簇中心的问题。
[0172]
(2)本发明使用最大最小距离法确定聚类数目,使用聚类中心权值降序方式选取聚类中心。通过这样的方法代替了人为在决策树中主观选取聚类中心的方式,能够在一定程度上减少人为主观判断带来的决策偏差,使结果更加具备客观性。
[0173]
(3)本发明使用纯度purity定义来分析海上平台负荷的时空特性,纯度越高,代表聚出的各类分别能代表各个原始类的特征,即聚出的某条海上平台负荷的数据能很好代表某一平台的一个特征,由此来进一步分析海上各个平台的负荷特性。
[0174]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0175]
以下为本发明的装置实施例,对于其中未详尽描述的细节,可以参考上述对应的方法实施例。
[0176]
图3示出了本发明实施例提供的海上平台负荷数据的聚类装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
[0177]
如图3所示,海上平台负荷数据的聚类装置3包括:
[0178]
获取模块31,用于获取多个海上平台的负荷数据作为负荷数据集;其中,负荷数据为按照设定采样频率采集的海上平台的有功功率;
[0179]
划分模块32,用于将负荷数据集划分为测试数据集和训练数据集;
[0180]
交叉验证模块33,用于对测试数据集和训练数据集进行交叉验证,得到用于计算局部密度的k值;
[0181]
密度计算模块34,用于基于k值和高斯核函数计算负荷数据集的局部密度;
[0182]
数量确定模块35,用于基于最大最小距离法确定负荷数据集的聚类中心数量;
[0183]
聚类模块36,用于基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇。
[0184]
在一种可能的实现方式中,交叉验证模块33具体用于:
[0185]
计算测试数据集中各负荷数据与训练数据集中各负荷数据之间的距离,得到距离集合;
[0186]
按照递增顺序对距离集合中的距离排序;
[0187]
令ki=1;
[0188]
在距离集合中选取前ki个距离;
[0189]
从测试数据集中和训练数据集中选取与前ki个距离对应的负荷数据作为数据集knni;
[0190]
统计数据集knni中各负荷数据的类别,将各个类别中出现频率最高的类别作为数据集knni的预测分类,并计算数据集knni对应的分类准确率acci;其中,类别包括负荷数据对应的海上平台的信息;
[0191]
将ki的值+1并跳转至“在距离集合中选取前ki个距离”这一步骤,直至ki=k
max
;其中,k
max
为预设值;
[0192]
取将t作为用于计算局部密度的k值。
[0193]
在一种可能的实现方式中,密度计算模块34具体用于:
[0194]
基于高斯核函数确定局部密度公式;局部密度计算公式为:
[0195][0196]
其中,ρi表示负荷数据xi的局部密度,knnk(xi)为与负荷数据xi距离最近的k个负荷数据所构成的集合,d
ij
表示负荷数据xi到负荷数据xj的距离,负荷数据xi为任一负荷数据;
[0197]
基于k值确定负荷数据xi对应的集合knnk(xi);
[0198]
基于knnk(xi)和局部密度计算公式计算负荷数据xi的局部密度。
[0199]
在一种可能的实现方式中,数量确定模块35具体用于:
[0200]
在负荷数据集中随机选择一个负荷数据作为第一个聚类中心z1;
[0201]
将负荷数据集中距离z1最远的负荷数据作为第二个聚类中心z2;
[0202]
分别计算负荷数据集中除z1、z2外的各个负荷数据与z1、z2的距离,并求出其中最小值d
min

[0203]
计算如果d
l
》θ‖z
1-z2‖,则将x
l
作为第n+1个聚类中心z
n+1
,并重复执行此步骤,直至d
l
≤θ‖z
1-z2‖时,得到负荷数据集的聚类中心数量n;其中,θ为预设比例系数。
[0204]
在一种可能的实现方式中,聚类模块36具体用于:
[0205]
计算负荷数据集中各个负荷数据间的最小距离;最小距离δi为样本点和高于其密度且距最近样本点之间距离,即:
[0206][0207]
基于最小距离、局部密度和预设的权值计算公式计算各个负荷数据集、的聚类中心权值;权值计算公式为:
[0208]
γi=ρi·
δi[0209]
按照递减关系对各个聚类中心权值进行排序,并将前n个聚类中心权值对应的负荷数据作为聚类中心;其中,n为聚类中心数量;
[0210]
按局部密度由高到低的顺序,将除聚类中心外的各个负荷数据依次分配到比其局部密度更高且距离最近的负荷数据对应的聚类中心所属的聚类簇中。
[0211]
在一种可能的实现方式中,聚类模块36还用于:
[0212]
在基于局部密度、聚类中心数量和cfsfdp聚类算法对负荷数据集进行聚类,得到多个聚类簇之后,基于纯度计算公式计算各个聚类簇的纯度;纯度计算公式为:
[0213][0214]
其中,pi=max(p
ij
),m是第i个聚类簇中负荷数据的个数;
[0215]
基于各个聚类簇的纯度对各个聚类簇进行选取。
[0216]
在一种可能的实现方式中,获取模块31具体用于:
[0217]
获取多个海上平台的负荷数据;
[0218]
对各个负荷数据数据缺失值修正;
[0219]
对修正后的各个负荷数据进行归一化处理,得到负荷数据集。
[0220]
本发明实施例通过高斯核函数计算负荷数据集的局部密度,可以对负荷数据的疏密程度进行调整,可以避免因类簇疏密差异过大而不能准确判断出类簇中心的问题;通过最大最小距离法确定聚类中心数量,可以避免聚类中心受到人为主观选择的影响,从而提高对海上平台负荷数据进行聚类的效果。
[0221]
图4是本发明实施例提供的终端的示意图。如图4所示,该实施例的终端4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42。所述处理器40执行所述计算机程序42时实现上述各个海上平台负荷数据的聚类方法实施例中的步骤,例如图2所示的步骤201至步骤204。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能,例如图3所示模块/单元31至36的功能。
[0222]
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述终端4中的执行过程。例如,所述计算机程序42可以被分割成图3所示的模块/单元31至36。
[0223]
所述终端4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端4可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是终端4的示例,并不构成对终端4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
[0224]
所称处理器40可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0225]
所述存储器41可以是所述终端4的内部存储单元,例如终端4的硬盘或内存。所述存储器41也可以是所述终端4的外部存储设备,例如所述终端4上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器41还可以既包括所述终端4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
[0226]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可
以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0227]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0228]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0229]
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0230]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0231]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0232]
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个海上平台负荷数据的聚类方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
[0233]
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改
或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1