1 事件检测方法综述

现有的事件检测方法主要分为两类:规则检测概率模型检测。还有其他的,但是主要是这两类。

规则检测的方法是直接观察待测信号的变化,提出一种规则作为事件检测判据,规则合理与否就决定了这类方法的准确程度。由于电器投切事件的差异性和多样性,仅凭直观经验容易漏检和误检,因而这类方法应用场景较少。概率模型检测本质上为一种统计学判断假设的问题,事件发生时序列中元素的分布或分布参数会发生变化。主要有四种方法:广义似然比(GLRT)、卡方拟合优度、贝叶斯信息准则(BIC)和累计和(CUSUM)方法。

规则检测就是自己认为设置一个规则,满足该规则的就是发生了事件。以有功功率为例,|ΔP|>50W,就认为发生了事件,这样的规则有效,但是局限较大。小于50W的电器检测不到,然后只要有一个简单的波动会导致误测。如下图所示。

前者发生了一个事件,但是由于ΔP小于50,所以漏测了。后者虽然ΔP大于50,但是其并不是一个电器状态变化引起的,该波动前后的稳态是一样的。

相比与规则检测、概率模型更加有效。GLRT是指从相邻窗口的对数概率分布比率中导出一个决策函数,来检测新事件的发生。卡方拟合优度是通过判断两个相邻窗口是否共享同一个分布来检测事件。BIC是通过将滑动窗口内的样本划分成均匀片段,再通过模型复杂度惩罚的似然准则函数进行事件判断。CUSUM算法是通过判断累计和是否超过阈值来检测事件。上述概率模型检测方法都引入了更多的参数,计算量更大,针对不同用电环境需要调整参数。在复杂用电环境下,单一方法可能无法满足所有特性的电器,为此,有研究学者提出了融合多种方法进行混合事件检测。

这几类的方法大同小异,都需要建立两个假设,含变点的模型和不含变点的模型。具体原理可参考文献[1]和文献[2]。这类算法都需要用到滑动窗口,在滑动的过程中计算各种数学量,判断当前窗口内有变点的概率有多大,再设置一个阈值。当数学量大于阈值时,认为有事件发生了。

CUSUM[3]最简单,所以我以这个为例来介绍概率模型。

2 滑动窗双边CUSUM事件检测算法

在电流有效值(简称电流)时间序列内定义均值计算窗Wm和暂态检测窗Wd两个连续的滑动窗口,窗口大小分别为mn。两个窗口内电流均值MmMd定义如下:

式中  k1—— 均值计算窗的第1个采样点。

为检测用电器投入和切出,分别定义投入、切出事件累积和 、 ,具体计算方法为:

式中  β —— 外界引入的噪声,反映电流时间序列稳定时的波动水平。

以投入事件为例对该算法进行阐述。首先,设置累计和阈值H来判断事件是否发生,该值可通过训练得到。累计和初始值为零,当检测窗口均值Md大于Mm+β 时, 值开始累加。当0<<H时,说明此时可能发生了投入事件,引入时间延迟因子d,初始值为0,令d=d+1,计算 直至>H时确定投入事件发生,事件开始时刻为第j个点。为避免序列震荡导致误检测,延迟因子每次增加时对进行比较,若 ,则判定为一次电流波动而非事件,并令 。投入事件的事件检测流程如图所示。

这个算法实现简单,效果比规则检测好。但是在一些场景下,它仍会出现漏测和误测。还有如何判断何时进入稳态,这都需要研究。有较多的文献对此进行了改进。文献[4-6]在不同程度上有改进。

3 代码实现

该代码的实现很简单,根据公式进行计算它的平均值,以及累计和就行。

滑动窗口

Islide=zeros(Point_T,(length(Inorm(:,2))-Point_T+1)*2);%%现将所有的滑动窗放到矩阵Islide中
for i=1:length(Inorm(:,2))-Point_T+1Islide(:,2*i-1)=Inorm(i:i+Point_T-1,1);Islide(:,2*i)=Inorm(i:i+Point_T-1,2);
end

平均值计算

meanNm=mean(Islide(1:LNm,2*i));
meanNd=mean(Islide(LNm+1:LNd+LNm,2*i));

累计和计算

gp=max(0,gp+meanNd-(meanNm+beta));
gn=max(0,gn-meanNd+(meanNm-beta));

然后只需要不断的进行循环就行。其中进入稳态的时刻可以参考文献5或者6。

结果图。

只要控制阈值H,就可以检测到满足要求的事件。

4 事件检测的难点

这里讲的难点适用于所有算法。

1)如何解决小电流电器或者小功率电器事件被大电流电器或者大功率电器波动所覆盖的问题[6]。论文中的算例图如下,电风扇的电流变化远比台式机运行电流波动小。这会导致事件检测误测或者漏测。

2)如何解决有周期性设备运行时,多事件同时发生的情况[7]。

3)如何准确的判断进入稳态时刻。可以关注文献[5,6]

关于事件检测的算法不止我提到的这些文献,以上的文献我就不一一将代码贴出来,大家感兴趣的可以去看看文献。如果对哪种事件检测算法感兴趣也欢迎在评论区讨论。

[1]肖江,Fran?ois AUGER,荆朝霞,Sarra HOUIDI.基于贝叶斯信息准则的非侵入式负荷事件检测算法[J].电力系统保护与控制,2018,46(22):8-14.

[2]张露,Francois Auger,荆朝霞,Sarra Houidi,Huu Kien Bui,肖江.基于非侵入式的事件检测方法统计评估[J].电测与仪表,2020,57(01):106-112+120.DOI:10.19753/j.issn1001-1390.2020.001.014.

[3]牛卢璐,贾宏杰.一种适用于非侵入式负荷监测的暂态事件检测算法[J].电力系统自动化,2011,35(09):30-35.

[4]史帅彬,张恒,邓世聪,周东国,周洪,胡文山.基于复合滑动窗的CUSUM暂态事件检测算法[J].电测与仪表,2019,56(17):13-18.DOI:10.19753/j.issn1001-1390.2019.017.003.

[5]丁世敬,王晓静,雍静,刘明.基于事件检测的非侵入式负荷识别方法研究[J].建筑电气,2017,36(07):57-64.

[6]黄伟,郑明杨.基于小电流电器的滑动窗双边CUSUM事件检测改进算法[J].水电能源科学,2022,40(02):206-210.

[7]黄伟, 郑明杨. 基于周期性多态洗衣机运行的混合事件检测算法[J]. 智能电网, 2021, 11(3): 242-258. 基于周期性多态洗衣机运行的混合事件检测算法

何为非侵入式负荷识别-事件检测相关推荐

  1. 何为非侵入式负荷监测-目标检测

    1 前言 上一篇忘记说明一点:组合优化和隐马尔可夫模型我归为一类,但是没有写关于隐马尔可夫模型的内容,这是因为近几年已经很少见到这样的文献了,所以我研究的不多,就不献丑了.本篇是主要是讨论,暂为看到有 ...

  2. 何为非侵入式负荷识别-特征提取

    1 前言 虽然没有人这么在文献中写道,但是我一直都认为事件检测是负荷识别的基础,特征提取是关键,负荷辨识只是一个简单的分类任务.不是说负荷辨识不重要,而是如果事件检测未检测到有电器状态发生变化,那就别 ...

  3. 何为非侵入式负荷识别-负荷辨识(传统机器学习)

    1 前言 其实我觉得这个部分可能没什么好讲的,但是我确实也遇到一些同学刚入门时搞不懂怎么去做负荷辨识,这篇主要针对这部分同学.本篇用支持向量机(SVM)作为代表,介绍传统机器学习算法在负荷辨识的应用. ...

  4. 何为非侵入式负荷识别-负荷辨识

    1  前言 在负荷识别中负荷辨识一直是被建模为分类任务,因此一切能用于分类的算法和模型都可以研究.不管是什么算法,只有特征选的好才能最大程度发挥算法的性能.最开始Hart[1]使用了有功功率和无功功率 ...

  5. 微分算法 非侵入式负荷识别_基于决策树的非侵入式负荷识别技术

    基于决策树的非侵入式负荷识别技术 杨雨 ; [期刊名称] <科学技术创新> [年 ( 卷 ), 期] 2018(000)013 [摘要] 本文旨在对非侵入式电力负荷监测与分解技术进行研究 ...

  6. 微分算法 非侵入式负荷识别_一种非侵入式用电负荷识别方法与流程

    本发明涉及智能电网领域,具体地,涉及一种非侵入式用电负荷识别方法. 背景技术: 在智能电网环境下,智能量测设备会逐步得到广泛应用,从而能够得到用户负荷准确的.海量的数据.利用数据挖掘方法对用户负荷大数 ...

  7. 微分算法 非侵入式负荷识别_基于用户用电行为和粒子群算法的非侵入式负荷识别方法...

    基于用户用电行为和粒子群算法的非侵入式负荷识别方法 丁屹峰 1 ,杨 烁 1, 赵 乐 1 ,焦 然 1 ,马龙飞 1 ,许仪勋 2 ,王洪安 2 [摘 要] 居民用电行为是影响负荷识别的重要因素之一 ...

  8. NILM非侵入式负荷识别(papers with code、data)带代码的论文整理——(论文及实现代码篇) 全网最全

    说在最前面 研究生三年快毕业了,毕业前整理一下该领域的研究工作.正所谓,我栽树,后人乘凉.研究NILM的时候,个人觉得最快的方法是直接复现别人的论文,或者甚至用别人论文的代码直接跑出来体会整个流程(数 ...

  9. NILM非侵入式负荷识别(papers with code、data)带代码的论文整理——(公开数据集、工具、和性能指标篇) 全网最全

    说在最前面 这篇文章主要介绍用于非侵入式负荷识别领域目前的公开数据集.工具和其它等,如果需要看论文及具体代码实现,看我上一篇的文章. 其外,不是所有数据集我都用过,我只用过UK-DALE,所以其它数据 ...

最新文章

  1. 小型职工工作量c语言,计算机c语言职工工作量统计系统.doc
  2. 被问懵了,BeanFactory和FactoryBean接口的区别到底是什么?
  3. 企业证书系列之数据加密
  4. bzoj 2342: 双倍回文 回文自动机
  5. fis3 php cgi,FIS3 : 构建
  6. Component Configuration.js - 所有支持属性列表 - configuration priority
  7. linux代码工具tag,gcov-dump原理分析_Linux平台代码覆盖率测试
  8. ubuntu nginx php问题研究
  9. 动视暴雪消费产品集团首次亮相2018年中国授权展
  10. NATAPP使用教程(内网穿透)
  11. stc15单片机c语言 pdf,stc15单片机编程指南.pdf
  12. Python编程要点:列表操作和Python的Fraction类(代码实现和练习)
  13. springboot学习(下)
  14. 2021/07/24 SpringBoot2 Web开发快速入门
  15. 计算机的主板显卡内存条怎么查,电脑显卡在哪看?查看自己电脑显卡的显存等信息的方法...
  16. 操作系统之文件管理思维导图
  17. 【Python爬虫学习实践】多线程爬取Bing每日壁纸
  18. 实现文件拷贝并获取拷贝进度
  19. 代码审计[java安全编程]
  20. 加载property配置文件

热门文章

  1. 华尔街大神:跌势不止,做空不止,你把握住了吗?
  2. MySQL表操作的三个命令
  3. 树莓派开发系列教程10——树莓派spi液晶屏支持(fbtft)
  4. qq侧滑界面的实现(DreawerLayout)
  5. Node.js+Protractor+vscode搭建测试环境(1)
  6. 如何用python抓取文献_浅谈Python爬虫技术的网页数据抓取与分析
  7. 联想电脑去掉开机广告 关闭开机广告 ideapad 去掉开机广告
  8. p,np,npc,np难问题,确定图灵机与非确定图灵机
  9. 剪绳子I和剪绳子II
  10. SpringCloud相关重难点解析