一种数据中心用铅酸电池组内异常自动识别方法与流程

文档序号:31123207发布日期:2022-08-13 02:10阅读:91来源:国知局
一种数据中心用铅酸电池组内异常自动识别方法与流程

1.本发明涉及数据中心技术设施运行维护技术领域,更具体的说是涉及一种数据中心用铅酸电池组内异常自动识别方法。


背景技术:

2.随着大数据、云计算的发展,新基建的提出,“东数西算”工程的启动,数据中心越来越重要,动力系统作为整个数据中心的基础性设施,其运行安全对保障信息业务的不间断稳定运行具有重要意义。不间断电源系统作为动力系统的重要组成部分,一方面可以提高供电质量,另一方面可以赋能动力系统应对短时供电中断。为应对短时供电中断,不间断电源系统需配备大量的蓄电池。由于蓄电池存储大量能量,安全风险高,当蓄电池节数达到数千、数万节时,极易发生安全隐患事件。依据研究机构ponemon institute的调研结果,ups系统故障是导致数据中心意外停机的最主要因素,在ups系统故障中,很大一部分比例的故障均与蓄电池有关。因此,提升蓄电池的运行安全性具有重要意义。
3.为提升蓄电池的运行安全性,一个重要的技术手段是对蓄电池电压、内阻和温度进行在线监测,同时对上述指标设定阈值规则,当监测值超过阈值时,监控平台便会给出风险提示,由专业维护人员进行现场核查和确认。尽管上述基于阈值规则的方法有效提升了蓄电池的运行安全性,但并不能完全满足实际需要,在监控平台未给出任何风险提示的情况下蓄电池故障仍时有发生,而且往往为蓄电池漏液、火灾等严重事故。因此,有必要在现有基础上进一步加强蓄电池运行风险的自动识别能力。
4.现有的基于阈值规则的运行风险识别方法只利用了蓄电池自身的电压、内阻和温度数据,没有考虑同组其他蓄电池的运行数据,同组蓄电池在初次建设和更新改造时通常采用同一批次的蓄电池,且运行环境相似,因此其参数变化应具有相似性,当某节蓄电池的运行参数明显不同于其他蓄电池时,则表明其很可能存在运行风险。
5.因此,如何提供一种采用聚类方法实现同组蓄电池中异常运行数据的自动识别,并提高蓄电池的风险识别能力的数据中心用铅酸蓄电池组内异常自动识别方法是本领域技术人员亟需解决的问题。


技术实现要素:

6.有鉴于此,本发明提供了一种数据中心用铅酸电池组内异常自动识别方法,通过采用聚类方法实现同组蓄电池中异常运行数据的自动识别,提高蓄电池的风险识别能力,提高蓄电池的运行安全性。
7.为了实现上述目的,本发明采用如下技术方案:
8.一种数据中心用铅酸蓄电池组内异常自动识别方法,包括:
9.s1、获取同组蓄电池的运行数据,得到数据集d;
10.s2、将数据集d中的样本按照从小到大排序,按照四分位法确定当前聚类簇数量和当前中心点集合;
11.s3、若聚类簇数量等于1,则该组蓄电池不存在异常样本;若聚类簇数量大于1,则执行s4;
12.s4、逐一计算数据集d中样本到每一个当前中心点的距离,依据最小距离确定样本所属的聚类簇,并根据新划分好的聚类簇重新计算中心点位置;迭代计算聚类簇的中心点位置,直至各聚类簇的中心点位置不再发生改变,得到最终中心点集合;
13.s5、根据最终中心点集合确定数据集d中每个样本所属的聚类簇,形成最终的簇划分;
14.s6、计算簇划分中每个聚类簇中所含样本数量,将所含样本数量最多的簇作为正常簇,其他簇作为异常簇,并将其他簇中的样本作为组内蓄电池的异常样本。
15.进一步的,在上述一种数据中心用铅酸蓄电池组内异常自动识别方法中,s1中的数据集为内阻数据集、电压数据集或温度数据集。
16.进一步的,在上述一种数据中心用铅酸蓄电池组内异常自动识别方法中,s2包括:
17.s21、将数据集d中的样本按照从小到大排序,计算数据集d中样本的最小值x
min
、第一四分位数q1、第二四分位数x
med
、第三四分位数q3和最大值x
max
;定义初始的聚类簇数量k=1;
18.如果最大值x
max
》q3+1.5(q
3-q1)或最小值x
min
《q
1-1.5(q
3-q1),则k增加1;如果最大值x
max
》q3+1.5(q
3-q1)且最小值x
min
《q
1-1.5(q
3-q1),则k增加2;
19.s22、如果聚类簇数量k=2,则:
20.当最大值x
max
》q3+1.5(q
3-q1)时,聚类簇中心点集合u={x
med
,x
max
};
21.当最小值x
min
《q
1-1.5(q
3-q1)时,聚类簇中心点集合u={x
med
,x
min
};
22.如果聚类簇数量k=3,则:聚类簇中心点集合u={x
med
,x
max
,x
min
}。
23.进一步的,在上述一种数据中心用铅酸蓄电池组内异常自动识别方法中,如果最大值x
max
和最小值x
min
均不满足:x
max
》q3+1.5(q
3-q1)和x
min
《q
1-1.5(q
3-q1),则k=1。
24.进一步的,在上述一种数据中心用铅酸蓄电池组内异常自动识别方法中,s4包括:
25.s41、逐一计算数据集d中每个样本到当前中心点集合中所有中心点的距离d
ij
=|x
i-uj|,得到m行k列的矩阵d=(d
ij
);xi表示数据集d中的样本,1≤i≤m;uj表示当前中心点集合u中的中心点,1≤j≤k,k表示当前中心点个数;
26.s42、逐一求解矩阵d中每一行的最小值并获取最小值所在的行序号i和列序号j,若样本xi对应距离d
ij
最小,则将样本xi划分到聚类簇cj;
27.s43、计算各个聚类簇cj的中心点uj,得到新的中心点集合;
28.s44、比较最新的中心点集合和上一次得到的中心点集合之间的差异,如果二者相同,则迭代更新完毕;若二者不相同,迭代执行s41-s43,直至最新的中心点集合和上一次的中心点集合相同。
29.进一步的,在上述一种数据中心用铅酸蓄电池组内异常自动识别方法中,s43中,uj的计算公式为:
[0030][0031]
其中,uj表示中心点,n表示聚类簇cj中样本的个数,x表示样本。
[0032]
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种数据中心用铅酸蓄电池组内异常自动识别方法,有益效果为:
[0033]
1、本发明利用四分位法解决了聚类簇数量选定的难题,利用最大值、最小值和中位值解决了聚类簇初始中心点设定的难题。
[0034]
2、本发明利用聚类算法实现了蓄电池组组内异常运行内阻、电压、温度的自动识别,并基于聚类结果,将含有样本较少的聚类判定为异常类,方法简单,且计算速度快。
[0035]
3、本发明通过实现对蓄电池组内运行异常的识别,提高了蓄电池运行风险的检测能力,增强了数据中心基础设施的运行安全。
附图说明
[0036]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0037]
图1为本发明提供的数据中心用铅酸蓄电池组内异常自动识别方法的流程图;
[0038]
图2为聚类簇数量为2时,某蓄电池组组内异常自动识别结果;
[0039]
图3为聚类簇数量为3时,某蓄电池组组内异常自动识别结果。
具体实施方式
[0040]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0041]
如图1所示,本发明实施例公开了一种数据中心用铅酸蓄电池组内异常自动识别方法,包括以下步骤:
[0042]
s1、获取同组蓄电池的运行数据,得到数据集d;
[0043]
s2、将数据集d中的样本按照从小到大排序,按照四分位法确定当前聚类簇数量和当前中心点集合;
[0044]
s3、若聚类簇数量等于1,则该组蓄电池不存在异常样本;若聚类簇数量大于1,则执行s4;
[0045]
s4、逐一计算数据集d中样本到每一个当前中心点的距离,依据最小距离确定样本所属的聚类簇,并根据新划分好的聚类簇重新计算中心点位置;迭代计算聚类簇的中心点位置,直至各聚类簇的中心点位置不再发生改变,得到最终中心点集合;
[0046]
s5、根据最终中心点集合确定数据集d中每个样本所属的聚类簇,形成最终的簇划分;
[0047]
s6、计算簇划分中每个聚类簇中所含样本数量,将所含样本数量最多的簇作为正常簇,其他簇作为异常簇,并将其他簇中的样本作为组内蓄电池的异常样本。
[0048]
下面对上述各步骤做进一步说明。
[0049]
s1、同组蓄电池运行数据的获取:数据集可以为内阻数据集、电压数据集或温度数
据集;同组蓄电池的内阻数据集r={r1,r2,

,rm},电压数据集v={v1,v2,

,vm}和温度数据集t={t1,t2,

,tm},其中m为同组蓄电池的节数,对于12v蓄电池,m通常为40,对于2v蓄电池,m通常为120。将内阻数据集、电压数据集和温度数据集统一记为数据集d={x1,x2,

,xm}。
[0050]
s2、聚类簇数量的确定:
[0051]
s21、将数据集d={x1,x2,

,xm}中的样本xi(1≤i≤m)从小到大排序,计算样本xi的最小值x
min
、第一四分位数q1、第二四分位数,即中位数x
med
、第三四分位数q3和最大值x
max
;定义初始的聚类簇数量k=1;
[0052]
如果最大值x
max
》q3+1.5(q
3-q1)或最小值x
min
《q
1-1.5(q
3-q1),则k增加1;
[0053]
如果最大值x
max
》q3+1.5(q
3-q1)且最小值x
min
《q
1-1.5(q
3-q1),,则k增加2。
[0054]
s22、聚类簇初始中心点的确定;如果聚类簇数量k=2:
[0055]
当最大值x
max
》q3+1.5(q
3-q1),此时聚类簇初始中心点集合u={x
med
,x
max
};
[0056]
当最小值x
min
《q
1-1.5(q
3-q1),此时聚类簇初始中心点集合u={x
med
,x
min
}。
[0057]
如果聚类簇数量k=3,聚类簇初始中心点集合u={x
med
,x
max
,x
min
}。
[0058]
s3、聚类簇数量k的可能取值为1、2、3,如果k取1,则直接结束,此时数据集d中无无异常值;如果k取2或者3,则进行s4。
[0059]
s4、聚类簇中心点的迭代计算:
[0060]
s41、样本点到簇中心点距离的计算:
[0061]
逐一计算数据集d中每个样本到当前中心点集合中所有中心点的距离d
ij
=|x
i-uj|,得到m行k列的矩阵d=(d
ij
);xi表示数据集d中的样本,1≤i≤m;uj表示当前中心点集合u中的中心点,1≤j≤k,k表示当前中心点个数。
[0062]
s42、样本点所属簇的划分:
[0063]
对于m行k列的矩阵d=(d
ij
),逐一求解每一行的最小值并获取最小值所在的行序号i和列序号j,若样本xi对应距离d
ij
最小,则将样本xi划分到聚类簇cj。例如若样本x1对应距离d
12
最小,则样本x1划分到聚类簇c2;若样本x2对应距离d
21
最小,则样本x2划分到聚类簇c1。
[0064]
s43、簇中心点的计算:
[0065]
对于聚类簇cj,其中心点uj的计算公式如下:
[0066][0067]
其中,n表示聚类簇cj中样本点的个数,x表示样本。
[0068]
对划分好的簇集合c={c1,c2,...,ck}中的每一个簇逐一计算,得到新的中心点集合u={u1,u2,

,uk}
[0069]
s44、簇中心点的迭代更新:
[0070]
比较最新的中心点集合和上一次得到的中心点集合之间的差异,如果二者相同,则迭代更新完毕;若二者不相同,迭代执行s41-s43,直至最新的中心点集合和上一次的中心点集合相同。
[0071]
s5、聚类簇的划分:
[0072]
依据最终确定的中心点集合u={u1,u2,

,uk}计算数据集d={x1,x2,

,xm}中每一个样本xi所属的聚类簇,形成最终的簇划分c={c1,c2,...,ck}。
[0073]
s6、异常值的判别:
[0074]
计算簇划分c={c1,c2,...,ck}中每一个聚类簇中所含样本点的数量,其中,所含样本最多的簇为正常簇,其他簇为异常簇,将异常簇中的样本判别为异常点,从而实现组内异常电阻,异常电压,异常温度的识别。
[0075]
下面结合具体实施例对本发明方法进行进一步说明。
[0076]
实施例一:以某组蓄电池2021年1月14日的内阻数据为例
[0077]
s1、同组蓄电池运行数据的获取:获取某组蓄电池2021年1月14日的内阻数据集r={r1,r2,

,rm},m取值为40,记为d={x1,x2,

,x
40
}。
[0078]
s2、聚类簇数量和中心点的确定:
[0079]
s21、聚类簇数量的确定:将数据集d={x1,x2,

,x
40
}中的样本xi从小到大排序,计算样本xi的最小值x
min
、第一四分位数q1、第二四分位数,即中位数x
med
、第三四分位数q3和最大值x
max
。上述值的计算结果为:
[0080]
x
min
=0mω,q1=2.57mω,x
med
=3.26mω,q3=3.57mω,x
max
=4.48mω。
[0081]
定义初始的聚类簇数量k=1;
[0082]
如果最大值x
max
》q3+1.5(q
3-q1),则k增加1,实际计算结果为:
[0083]
4.48《3.57+1.5(3.57-2.57)=5.07,因此k不增加。
[0084]
如果最小值x
min
《q
1-1.5(q
3-q1),则k增加1,实际计算结果为:
[0085]
0《2.57-1.5(3.57-2.57)=1.07,因此k增加1。
[0086]
因此,聚类簇数量k的取值为2。
[0087]
s22、聚类簇初始中心点的确定,如果聚类簇数量k=2:
[0088]
当最大值x
max
》q3+1.5(q
3-q1),此时聚类簇初始中心点集合u={x
med
,x
max
};
[0089]
当最小值x
min
《q
1-1.5(q
3-q1),此时聚类簇初始中心点集合u={x
med
,x
min
}。
[0090]
依据s21的计算结果,聚类簇初始中心点集合u={x
med
,x
min
},为u={3.26,0}
[0091]
s4、聚类簇中心点的迭代计算:
[0092]
s41、样本点到簇中心点距离的计算:
[0093]
数据集d={x1,x2,

,x
40
}中样本xi到中心点集合u={3.26,0}中中心点uj的距离d
ij
=|x
i-uj|,逐一计算数据集d中每个样本点到中心点集合u中所有中心点的距离,得到40行2列的矩阵d=(d
ij
)。
[0094]
s42、样本点所属聚类簇簇的划分:
[0095]
对于40行2列的矩阵d=(d
ij
),逐一求解每一行的最小值并获取最小值所在的行序号i和列序号j,则数据集中样本xi划分到聚类簇cj。例如若样本x1对应距离d
12
最小,则样本x1划分到聚类簇c2;若样本x2对应距离d
21
最小,则样本x2划分到聚类簇c1。具体结果如表1所示,其中所属聚类簇1代表c1,所属聚类簇2代表c2。
[0096]
表1实施例一聚类簇划分结果
[0097]
[0098][0099]
s43、聚类簇中心点的计算:
[0100]
对于聚类簇cj,其中心点uj:
[0101][0102]
其中n表示聚类簇cj中样本点的个数。对划分好的簇集合c={c1,c2}中的每一个簇逐一计算,得到新的中心点集合u={u1,u2},即u={3.39,0.47}。
[0103]
s44、簇中心点的迭代更新:
[0104]
重复s41-s43,得到最新的中心点集合u={3.49,0.374},比较最新的中心点集合和上一次得到的中心点集合u={3.39,0.47}之间的差异,发现二者不相同。
[0105]
继续迭代,得到最新的中心点集合u={3.49,0.374},比较最新的中心点集合和上一次得到的中心点集合u={3.49,0.374},发现二者相同,停止迭代,最终的聚类簇中心点集合为u={3.49,0.374}。
[0106]
s5、聚类簇的划分:
[0107]
依据最终确定的中心点集合u={3.49,0.374}计算数据集d={x1,x2,

,x
40
}中每一个样本xi所属的聚类簇,形成最终的簇划分c={c1,c2},如表2所示。
[0108]
表2实施例一最终的簇划分结果
[0109][0110]
[0111]
s6、异常值的判别:
[0112]
计算簇划分c={c1,c2}中每一个聚类簇中所含样本点的数量,其中所含样本最多的簇为正常簇,其他簇为异常簇,将异常簇中的样本点判别为异常点。从表2中可以算出,聚类簇c1含有30个样本,聚类簇c2含有10个样本,因此簇c2为异常簇,簇中的样本为异常样本。图2给出了蓄电池组组内异常的自动识别结果。
[0113]
实施例二:以某组蓄电池2021年1月26日的内阻数据为例
[0114]
s1、同组蓄电池运行数据的获取;
[0115]
获取某组蓄电池2021年1月26日的内阻数据集r={r1,r2,

,rm},m取值为40,记为d={x1,x2,

,x
40
}。
[0116]
s2、聚类簇数量和中心点的确定:
[0117]
s21、聚类簇数量的确定:将数据集d={x1,x2,

,x
40
}中的样本xi从小到大排序,计算样本xi的最小值x
min
,第一四分位数q1,第二四分位数,即中位数x
med
,第三四分位数q3和最大值x
max
。上述值的计算结果为:
[0118]
x
min
=0mω,q1=3.745mω,x
med
=4.05mω,q3=4.4775mω,x
max
=9mω。
[0119]
定义初始的聚类簇数量k=1;
[0120]
如果最大值x
max
》q3+1.5(q
3-q1),则k增加1,实际计算结果为:
[0121]
9》4.4775+1.5*(4.4775-3.745)=5.57625,因此k增加1。
[0122]
如果最小值x
min
《q
1-1.5(q
3-q1),则k增加1,实际计算结果为:
[0123]
0《3.745-1.5*(4.4775-3.745)=2.64625,因此k增加1。
[0124]
因此,聚类簇数量k的取值为3。
[0125]
s22、聚类簇初始中心点的确定:
[0126]
如果聚类簇数量k=3,聚类簇初始中心点集合u={x
med
,x
max
,x
min
}。
[0127]
依据第二步的计算结果,聚类簇初始中心点集合u={4.05,0,9}
[0128]
s4、聚类簇中心点的迭代计算:
[0129]
s41、样本点到簇中心点距离的计算:
[0130]
数据集d={x1,x2,

,x
40
}中样本xi到中心点集合u={4.05,0,9}中中心点uj的距离d
ij
=|x
i-uj|,逐一计算数据集d中每个样本点到中心点集合u中所有中心点的距离,得到40行3列的矩阵d=(d
ij
)。
[0131]
s42、样本点所属簇的划分:
[0132]
对于40行3列的矩阵d=(d
ij
),逐一求解每一行的最小值并获取最小值所在的行序号i和列序号j,则数据集中样本xi划分到聚类簇cj。具体结果如表3所示,其中所属聚类簇1代表c1,所属聚类簇2代表c2,所属聚类簇3代表c3。
[0133]
表3实施例二聚类簇划分结果
[0134]
[0135][0136]
s43、簇中心点的计算:
[0137]
对于聚类簇cj,其中心点uj:
[0138][0139]
其中n表示聚类簇cj中样本点的个数。对划分好的簇集合c={c1,c2,c3}中的每一个簇逐一计算,得到新的中心点集合u={u1,u2,u3}。即u={4.156,0,9}。
[0140]
s44、簇中心点的迭代更新:
[0141]
重复s41-s43,得到最新的中心点集合u={4.156,0,9},比较最新的中心点集合和上一次得到的中心点集合u={4.156,0,9}之间的差异,发现二者相同,停止迭代,最终的聚类簇中心点集合为u={4.156,0,9}。
[0142]
s5、聚类簇的划分:
[0143]
依据最终确定的中心点集合u={4.156,0,9}计算数据集d={x1,x2,

,x
40
}中每一个样本xi所属的聚类簇,形成最终的簇划分c={c1,c2,c3},如表3所示。
[0144]
表3实施例二的最终簇划分结果
[0145]
序号12345678910所属簇1111113111序号11121314151617181920所属簇1111111111序号21222324252627282930
所属簇1111111222序号31323334353637383940所属簇1111111111
[0146]
s6、异常值的判别:
[0147]
计算簇划分c={c1,c2,c3}中每一个聚类簇中所含样本点的数量,其中所含样本最多的簇为正常簇,其他簇为异常簇,将异常簇中的样本点判别为异常点。从表中可以算出,聚类簇c1含有36个样本,聚类簇c2含有3个样本,聚类簇c2含有1个样本,因此簇c2和簇c3为异常簇,簇中的样本为异常样本。图3给出了蓄电池组组内异常的自动识别结果。
[0148]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0149]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1