APP下载

住宅用电非侵入式电力负荷监测与识别

2021-11-12飞,

智能计算机与应用 2021年9期
关键词:检测点阈值功率

陈 飞, 杨 超

(贵州大学 电气工程学院, 贵阳 550025)

0 引 言

随着智能用电技术的发展,各国开始将该技术作为用电发展的热点[1]。负荷监测是实现智能电网的重要一步。当前,对于负荷监测的研究大致分为侵入式负荷监测和非侵入式负荷监测两个方向。传统的侵入式负荷监测(ILM)是通过把每个电力负荷处都安装上传感器,来对负荷的运行情况进行监控。虽然ILM的数据监测能力较好,但是维护成本高,可操作性较差[2]。非侵入式负荷监测(NILM)技术仅需要在电力负荷的入口处进行实时测量,分析采集到的电压、电流及功率等信息,便可以得到总负荷,分解出的各个用电负荷的类别以及不同用电负荷的实时的能耗,其维护成本较低,方便实施[3]。

在非侵入式负荷监测中,利用变点检测算法来检测负荷的投切状态是实现NILM的第一步,为后面的负荷稳态特征的提取以及负荷类别的辨识提供前提。周东国等使用状态特征聚类的非侵入式负荷事件检测方法对负荷进行暂态事件的检测[4];史帅彬等提出了一种基于负荷滑动窗的CUSUM暂态事件检测算法来对负荷事件检测[5];牛卢璐等提出基于滑动窗双边累积和暂态事件自动检测算法,对负荷进行暂态事件的检测[6];采用平均值窗来检测负荷投切,当滑动窗中的均值如果发生很大的变化,可以判断负荷投切时刻的发生,但对于用电负荷中电气量变化缓慢的事件,检测效果较差[7];通过检测负荷印记在相连的时间段内所发生的阶跃变化,当电气变化量超过阈值时,可以判断负荷存在投切,而对暂态过程比较长的事件中,经常发生误检与漏检,从而导致负荷投切时的检测率比较低[8]。

为了避免负荷在投切时出现误检或漏检,提高负荷投切检测的准确率,本文提出了一种变点检测方法—基于短期环比变点检测算法。

该方法在滑动窗的基础上进行改进,利用过去相连时刻的信息作为判断窗,以未来相连时刻的信息作为验证窗;先采用判断窗来判断该点是否为疑似变点,然后再利用验证窗对疑似变点进行验证,从而实现变点检测。该算法实现简单,抗干扰力较强,误判及漏判数目较低。在负荷的辨识方面,本文使用了LGSALO优化SVM算法,利用所提取负荷稳态特征来建立负荷特征库,进而对负荷进行辨识,并通过国外公开BLUED数据集来验证本文所提的检测算法与辨识算法的有效性。

1 短期环比变点检测原理

短期环比算法的设计思想是利用当前i时刻检测值和检测值过去T个时刻中的各个时刻点进行比较,将其达到阈值的个数进行累加,然后再与按需求进行设置的Count_num进行对比,最后得出检测结果。在电力负荷监测中,如果由于负荷投切导致有功功率或者电流有效值发生了突变或者缓慢变化,可以通过短期环比变点检测来确定负荷的投切时刻。

观测随机时间序列P={P(k)},k=1,2,…。

假设变点时刻为τ,定义短期环比算法的变点判断依据,式(1):

(1)

其中,P(τ)表示检测点τ时刻对应的有功功率的检测值;T表示检测点τ时刻之前总的T个时刻;P(i)表示对应i时刻的有功功率;threshold表示检测点与检测点前面时刻对应功率差值的阈值;count_num表示满足要求阈值个数。

1.1 阈值参数的设定

采用动态阈值设置方法设置阈值threshold,其设定方法是针对信号发生正向突变时,采用过去一段时间T内的均值作为阈值,式(2)。

(2)

其中:P(i)表示对应i时刻的有功功率;T表示检测点之前总的T个时刻;α表示信号发生正向突变时,动态阈值的权重。

信号发生反向突变时,可取过去一段时间T内的最大值与均值之差和均值与最小值之差中的最小值来作为阈值,式(3)。

(3)

其中:P(i)表示对应i时刻的有功功率;T表示检测点之前总的T个时刻;β表示信号在发生反向突变时,动态阈值的权重。

count_num阈值可以依据对变点的敏感程度来设置,对变点敏感,可以设置count_num小一些,而如果对变点不敏感,可以将count_num设置的大一些。

1.2 短期环比的检测算法流程

本文提出的短期环比的检测算法的流程图如图1所示。

从图1可以看出,m是判断窗长度;Jcount是检测点与检测点前面时刻所对应功率的差值中达到阈值threshold的个数;Dcount是达到count_num的个数。

图1 短期环比变点检测流程图

1.2.1 检测变点

记检测点时刻为τ,γ。当时,认为可能会产生疑似变点,判断窗的检测过程如图2所示。

>Jcount_num

从图2中可以看出,短期环比检测算法是通过判断窗来判断检测点是否为疑似变点,其原理是通过与过去4个时刻点进行比较,计算大于动态阈值threshold的个数,再与按需求设置的Jcount_num进行对比,得到对检测点的判断。但是在实际应用中,负荷可能会出现过长时间的启动或者关闭,从而导致启动或关闭时间的长度远远大于判断窗的长度,进而可能会出现漏检或误检。因此,本文在检测变点之前,加上约束来防止检测点在半坡上或半坡下导致的漏检或误检。

图2 判断窗的检测过程

检测上坡时的约束公式(4):

(4)

其中:P(i)表示检测点时刻i的有功功率;P(i-1)表示检测点前一时刻i-1的有功功率;P(i+1)表示检测点后一时刻i+1的有功功率;old表示检测点与前一点对应的有功功率差值;fulture表示检测点与后一点对应的有功功率差值。

该约束作用是防止负荷在投入时时间过长,出现远远大于判断窗长度,进而会出现对负荷投入的误判。

检测下坡时的约束公式(5):

(5)

其中:P(i)表示检测点i时刻的有功功率;P(i-1)表示检测点前一时刻i-1的有功功率;P(i+1)表示检测点后一时刻i+1的有功功率;old表示检测点与前一点对应的有功功率差值;fulture表示检测点与后一点对应的有功功率差值。

该约束作用是防止负荷在切除时时间过长,出现远远大于判断窗长度,进而会出现对负荷切除的误判。

考虑一些电感性负荷在启动过程中,可能会出现启动电流较大导致瞬时所耗有功功率过大,从而导致在有功功率恢复到正常使用的额定功率时所对应的下降过程时间过长,造成下降坡度平缓,负荷可能产生切除的误判,考虑到负荷在运行过程中很少在高于额定功率时出现切除,故增加负荷切除时约束。

(a)当检测对象为单负荷时,式(6)。

P(i)≤PW

(6)

其中:P(i)表示检测点时刻i的有功功率,PW表示单负荷的额定有功功率。

(b)当检测为混合负荷时,式(7)。

p(i)≤max(PW1,PW2…PWj)

(7)

其中:P(i)表示检测点i时刻的有功功率,PWj表示第j个负荷的额定有功功率。

1.2.2 验证变点

记验证点时刻为τ,γ。当时验证点判定为变点,验证窗的验证过程如图3所示。

图3 验证窗的验证过程

从图3可以看出,经过判断窗得出检测点为疑似变点之后,再通过验证窗来验证疑似变点是投切点而不是受到噪声干扰产生的变点。其原理是通过与未来4个时刻点进行比较,计算其大于动态阈值threshold的个数,再与按需求设置的Dcount_num对比,得到对变点的验证。

1.3 算法可行性验证

为了验证本文算法的有效性,利用从blued数据集中截取小型家庭用户部分功率数据来对以下6类负荷的功率数据进行变点检测仿真,对应的6类负荷分别是冰箱、烹饪机、吹风机、空气压缩机、打印机、熨斗。

如图4所示,冰箱的变点检测,从上到下对应的是本文所提出检测算法所得到的投切时刻,冰箱实际的投切时刻,冰箱的有功功率曲线。可以发现检测算法得到的投切时刻与实际投切时刻吻合,在12:22:01投入,12:37:40切除。

图4 冰箱变点检测

由图5可以看出:其是烹饪机的变点检测,从上到下所对应的是本文所提出检测算法所得到的投切时刻,烹饪机实际的投切时刻,烹饪机的有功功率曲线。可以发现检测算法得到的投切时刻与实际投切时刻吻合。在21:29:29投入,21:30:19切除。即使负荷在运行过程中存在着较大的功率波动,该检测算法仍能准确辨识负荷的投切。

图5 烹饪机变点检测

同理,如图6~9可以得到:吹风机在21:29:29投入,21:30:19切除;空气压缩机在07:53:18投入,07:53:38切除。打印机在02:56:23投入,02:56:31切除;熨斗在02:56:31投入,02:56:33切除。

图6 吹风机变点检测

由图10可以看出:其是冰箱与空气压缩机混合变点检测,从上到下所对应的是本文所提出检测算法所得到的投切时刻,冰箱与空气压缩机实际的投切时刻,冰箱与空气压缩机对应的有功功率曲线。可以发现检测算法得到的投切时刻与实际投切时刻吻合。在21:07:36时刻冰箱投入,在21:12:54时刻空气压缩机开始投入,在21:13:13时刻空气压缩机切除,然后在21:22:43时刻冰箱切除。

本文利用负荷的变点检测算法,提取用电负荷稳态时的负荷稳态特征数据,进而创建用电负荷稳态特征的样本库,实现为负荷的辨识工作。

图7 空气压缩机变点检测

图8 打印机变点检测

图9 熨斗变点检测

图10 冰箱与空气压缩机的混合变点检测

2 LGSALO-SVM算法原理及实现

2.1 LGSALO算法介绍

基本蚁狮优化算法(ALO)是基于蚁狮捕获蚂蚁原理的智能优化算法,主要分为蚂蚁随机游走、蚁狮陷阱放置、蚁狮诱捕、蚁狮捕获和蚁狮重构陷阱5个步骤[9]。ALO算法采用数学模拟的方法来实现蚂蚁与蚁狮之间相互作用行为,从而将问题进行优化:通过引入蚂蚁的随机游动实现解空间的全局搜索,为了保证种群的多样性和算法寻优性能,采用轮盘赌策略和精英策略。蚁狮是对应于优化问题中的解,通过捕捉适应度较高的蚂蚁实现对最优值更新及保存。然而,ALO算法在寻找最优解的过程中容易陷入局部最优解及所对应的收敛精度较低的问题,因此本文将采用融合莱维飞行(Lévy)与黄金正弦的蚁狮优化算法(LGSALO)。由于Lévy飞行短距离结合偶尔长距离跳跃的特点,使得蚂蚁在更新位置上将更加多样性。因为蚁狮的位置根据被捕后的蚂蚁位置来确定,使得蚁狮的群体具有多样性,实现迅速越过局部最优的位置,使得搜索解空间的范围更加全面,种群整体的寻优效率更高。因此,本文利用Lévy飞行机制实现对蚂蚁位置的变异更新。又由于golden-SA函数与单位圆之间的对应关系,可以搜索正弦函数的每一位,即可以遍历单位圆的每一位点,从而使得寻优的求解区域变得更加全面。通过随机选择参数R1和R2,可以控制位置和方向的更新,使得搜索空间逐步减小,驱使蚁狮个体能够更快的趋近最优值,这样可以大大缩短智能算法的寻优时间,算法的寻优的速度和精度以及寻优结果都比较理想。LGSALO算法中通过引入golden-SA算法的黄金分割数来确定精英蚁狮的更新位置。

2.1.1 蚂蚁的随机游走

蚂蚁在自然界中为觅食而随机游走,其运动过程公式(8)为:

(8)

其中:X(t)是蚂蚁随机游走的步数集;cumsum是累计蚂蚁游走步长的和函数;n表示最大迭代次数;t是随机游走步长;r(t)是由等式定义的随机函数,其定义为式(9):

(9)

其中:t是随机游走步长,rand表示在[0,1]区间内由均匀分布生成的随机数。

在算法优化过程中,将蚂蚁与蚁狮的位置保存到位置矩阵中,并且求解各自的适应度值,将其保存在适应度值矩阵中。当蚁狮群体中出现相连两次迭代的最优值几乎不存在差别时,则算法判断陷入局部最优,因此Lévy飞行来对蚂蚁的位置更新处进行变异更新。蚂蚁的位置更新公式(10)如下:

(10)

(11)

其中:μ,ν服从标准正态分布,λ=1.5,

(12)

2.1.2 蚁狮对蚂蚁随机游走的影响

蚁狮对蚂蚁随机游走的影响由蚂蚁构造的陷阱所决定,对这一假设进行数学建模如式(13):

(13)

其中:ct为所有变量在t次迭代的最小值;dt为所有变量在第t次迭代的最大值;ALit为第t次迭代中选择第i个蚁狮的位置。

2.1.3 自适应机制

自适应机制是指采用轮盘赌策略来决定哪只蚁狮捕捉哪只蚂蚁,每一只蚂蚁有且只能被一只蚁狮所捕获,而对于适应度值高的蚁狮有很高概率能够捕获到蚂蚁。其次,当一旦蚂蚁进入陷阱,蚁狮就会从陷阱中心射出沙子,这会逐渐缩小沙坑的半径。这种行为会滑倒试图逃跑的被困蚂蚁。为了对这种行为进行数学建模,蚂蚁的随机游动超球半径被自适应缩小。通过方程(14)模拟这种现象。

(14)

其中:I=10w(t/T)是蚁狮构建陷阱的范围大小;W是一个常数;T表示最大的迭代次数。

精英蚁狮位置采用golden-SA算法的黄金分割数进行更新,golden-SA算法的核心是位置处于更新的情况下,将会随机生成s个个体位置,并用XiT=(Xi,1,Xi2,…,Xid)T表示d维的个体空间中处于第T次迭代中第i(i=1,2,...,s)个个体的空间位置,PiT=(Pi1,Pi2,...,Pid)T表示第T代个体i的最优位置,在T+1次迭代中,第i(i=1,2,...,np)个个体的位置更新公式(15)如下:

(15)

2.1.4 精英策略

在迭代过程中,为了保证最优解,需要保留精英蚁群。精英蚂蚁是最好适应度值的蚂蚁,在每次迭代过程中,对所有蚂蚁的移动将会受到精英蚂蚁的影响。被选中的蚁狮和精英蚁狮随机行走来更新其位置,第t只蚂蚁在第t+1次迭代的位置由公式(16)确定:

(16)

其中:RAt是第t次迭代中蚂蚁的随机游走步长由轮盘赌来决定,REt表示在第t次迭代过程中,精英蚁狮周围随机游走蚂蚁的步长。

2.2 LGSALO-SVM在NILM的实现

支持向量机是在统计学基础上所提出有监督的机器学习方法,其在解决小样本、非线性中表现出许多特有的优势,且常用来处理回归与分类问题[10]。本文采用常用的交叉验证方法K折交叉验证方法(K-fold Cross Validation, K-CV),但由于其对应的惩罚因子C和g的参数具有不确定性,所以在支持向量机的惩罚因子的基础上,采用LGSALO算法优化,从而对惩罚因子C和g进行寻优,克服了参数不确定性,提高了家用负荷辨识的准确率。LGSALO-SVM算法的步骤如图11所示。

图11 LGSALO-SVM算法流程图

首先针对LGSALO算法中的适应度函数,选取支持向量机中K-CV的平均准确率;对蚂蚁和蚁狮的位置进行随机初始化;通过适应度函数为K-CV中的平均准确率,判断在SVM算法中惩罚因子C与核函数g是否达到最优值。若满足最优参数,则可以得到LGSALO算法优化后的最佳SVM参数,最后通过变点检测所提取的特征数据进行测试,获得最佳分类结果。倘若不满足最佳参数,则采用轮盘赌搜索方式对蚁狮优化选择,以Lévy变异来更新蚂蚁位置,以黄金正弦更新精英蚁狮位置等,直至获得最佳参数为止。

3 仿真实验

本文采用了国外公开Blued数据集测试算例,其中有冰箱、烹饪机、吹风机、打印机、空气压缩机、熨斗共6类负荷的数据。使用变点检测算法检测负荷的投切时刻,再提取出负荷的稳态数据来作为训练样本,所提取的特征为有功功率和无功功率。采用LGSALO-SVM算法训练分类模型,并与ALO-SVM算法以及传统SVM算法进行比较。

采用机器学习中分类器的评价指标,真阳性(True Positive, TP)表示正确检测负荷的投切;真阴性(True Negative, TN)表示检测没有出现负荷投切,实际上也没有负荷投切发生;假阳性(False Positive, FP)表示检测出负荷的投切,实际上没有负荷的投切,即检测的误判;假阴性(False Negative, FN)表示存在负荷投切,但却未检测出负荷投切,即漏判。因为在大部分情况中负荷都是处于稳定的运行状态,所以统计其TN的数值非常高,故TN通常忽略。而采用H.Altrabal等提出的F-Measure评价标准,FM越高,说明检测性能越好[11]。

3.1 单负荷的变点检测

设定短期环比检测参数,判断窗中Jcount_num=3,验证窗中Dcount_num=1。依据不同类型负荷来设置变点检测中动态阈值参数α,β。冰箱取α=1.3,β=1.3;烹饪机取α=1.3,β=1.3;吹风机取α=1.8,β=1.8;打印机取α=1.8,β=1.6;空气压缩机取α=1.8,β=0.1;熨斗取α=1.8,β=1.6。

采用CUSUM算法来作变点检测,CUSUM参数设定为:冰箱H=30.5,Beta=15;烹饪机H=80.5,Beta=65;吹风机H=80.5,Beta=65;打印机H=30.5,Beta=15;空气压缩机H=80.5,Beta=65;熨斗H=30.5,Beta=15。

从表1和表2中单负荷的指标可以发现CUSUM算法受窗口宽度的限制,当功率波动较大时,对电气量变化缓慢的负荷投切容易误检成多个负荷的投切,因此所对应的FP也会比较高。而在本文的算法中通过上下坡约束的方式,极大避免了负荷在投切过程中出现缓慢变化等影响,使得FP较低。从FN来看本文算法也低于采用CUSUM算法。对FM评价来看,本文检测算法的检测性能要高于CUSUM算法。冰箱和打印机在投切及运行过程中,采用CUSUM算法检测的误判及漏判的次数要远高于本文的检测算法。

表1 基于短期环比检测算法

表2 基于CUSUM算法检测

3.2 多负荷混合变点检测

为验证该算法对混合负荷的投切也具备有效性,本文选冰箱和空气压缩机的混合投切来进行验证。设定短期环比检测参数,判断窗Jcount_num=3;验证窗Dcount_num=1;对于其变点检测中阈值设置α=1.3,β=1.3;CUSUM中的参数设定为H=30.5,Beta=15。

从表1和表2多负荷的指标中可以看出,对于这两种电器混合投切,本文的检测算法漏检和误检的个数要低于CUSUM算法,检测算法的检测性能也高于CUSUM算法。

3.3 分类算法的比较

本文采用LGSALO-SVM与ALO-SVM和传统的SVM算法对负荷分类识别进行对比验证。通过变点检测,提取负荷的稳态特征,然后添加到特征数据库中,并且定义标签。LGSALO-SVM和ALO-SVM算法参数,种群数量N=30,最大迭代数Max_iter=50;利用LGSALO-SVM和ALO-SVM及传统的SVM算法分别进行分类模型训练,在相同的数据集基础上分类,对6种家用负荷识别准确率进行比较。

从表3可以看出,LGSALO-SVM算法比传统SVM和ALO-SVM算法具有较高的负荷准确率。

表3 6种家用负荷识别准确率(%)

4 结束语

本文提出了一种短期环比检测算法,该算法能够准确检测出用电负荷投切时刻,实现简单且解决了变点检测中容易出现误检与漏检的问题,提升了对负荷投切的检测能力。在负荷识别方面,本文以变点检测算法为基础,提取了用电负荷的稳态特征,并且采用LGSALO-SVM算法对分类模型进行建立与测试验证。实验结果表明,该辨识方法对于大部分的住宅用电负荷其具备良好的分类识别性能。

猜你喜欢

检测点阈值功率
非平稳声信号下的小波变换去噪方法研究
核酸检测点上,有最可爱的平江人
基于改进阈值的MRI图像降噪
骑马做核酸
土石坝坝体失稳破坏降水阈值的确定方法
一种改进小波阈值去噪法及其仿真
破冰船推进功率与破冰能力的匹配性分析
浅谈鼓风机轴振动在线监测的检测点设置
环境监测仪器管理中存在的问题及改进措施
“功率”练习