刘春蕾 庞鹏飞 石纹赫 孔令号 黄 洵 戚 军
(1.国网河北省电力有限公司保定供电分公司 保定 071000;2.浙江工业大学信息工程学院 杭州 310000)
近年来,负荷监测作为智能用电技术体系的重要组成部分[1],实现了电力公司与居民用户之间的双向互动机制,是目前各国研究的热点[2]。负荷监测技术通过对综合用电数据进行深度挖掘,不仅能够为电网侧提供负荷构成信息,为电网的优化调度提供助力,还能够反馈于用户,解析用户电能消费结构[3],有效提高电能的利用率和峰谷电价引导下的削峰填谷积极性。
目前负荷监测可大致分为侵入式监测(Intrusive load monitoring, ILM)和非侵入式监测(Non-intrusive load monitoring, NILM)。ILM 需要在设备上安装监测传感器,虽然监测精度高且无需复杂的识别算法,但其硬件安装成本高,且在更加注重个人隐私的信息化时代,用户接受程度也较低[4-6]。与之相对,由HART 于20 世纪80 年代首先提出的NILM 技术只需要在配电进线处安装监测设备,对监测数据进行负荷分解,即可实现对各设备的监测。该方法硬件成本低,用户接受程度高,在工业设备监测以及常用居民负荷监测等领域得到了广泛的应用[7-11]。文献[8-9]基于低频电力数据,采用稳态功率信息构建负荷识别特征,特征提取速度快,但是实际工程应用中容易出现特征重叠问题导致识别准确率降低。为提高复杂场景下的识别正确率,可采用包含更多信息量的负荷特征。文献[10]基于电流时域波形和频域谐波信息,采用主成分分析法降维构建负荷特征。文献[11]则采用差异分析方法构建易于区分的融合特征作为负荷特征。这两种方法都能提高负荷识别准确率,但与此同时负荷识别的速度也明显降低,在实际工程应用中影响负荷识别的实时性。
本文基于对各类负荷特征的对比分析,综合考虑负荷特征提取代价及识别效果构建双层特征组,采用基于支持向量机(Support vector machine,SVM)多分类算法的负荷动态识别方法按需识别负荷类型。最后通过Matlab 仿真及实际工程应用对所提NILM 动态识别方法的性能进行测试验证。
负荷特征作为负荷识别的依据,直接影响着NILM 识别算法的识别准确度及速度。表1[12-16]总结了实际工程中较为常用的负荷特征的提取代价:采样频率是线路电压、电流测量装置的采样频率;监测窗口宽度是提取负荷特征所需的测量数据长度;计算复杂度表示负荷特征提取算法的复杂程度;负荷特征存储量是记录负荷特征所需要的硬件空间。
表1 负荷特征综合分析表
从表1 可以看出,稳态特征中除电流谐波特征外,稳态功率特征(P、Q)以及电压-电流轨迹特征对采样频率要求较低,监测窗口宽度普遍较小,电压-电流轨迹及电流谐波特征的计算复杂度和负荷特征存储量明显高于稳态功率特征;暂态特征的采样频率普遍较高,监测宽度窗口宽度取决于具体的负荷类型,一般不超过100 s,除S 变换特征外,其余暂态电流特征计算复杂度都较低且负荷特征存储量较小;时间特征的采样频率和计算复杂度较低且负荷特征存储量较小,但所需监测窗口宽度往往较大。在实际工程应用中,时间特征在负荷停止运行前往往无法识别负荷类型,实时性较差;稳态功率特征容易出现特征重叠问题,通常与暂态特征结合使用。这种结合方法要求NILM 识别方法采用更多的特征或通过复杂的特征融合方法构造新特征,从而导致特征提取代价较高以及实时性较差。
综合考虑工程应用中对识别准确率及速度的要求,本文所提负荷动态识别方法包含两层特征组,如表2 所示。负荷识别时,由简入繁,动态选用负荷特征,首先选用第一层特征组,针对部分无法用第一层特征组区分的相似负荷,进一步采用第二层特征组进行区分。每一层特征组中的多类负荷特征类型,根据负荷特征提取代价进一步区分优先级,根据实际应用场景选取其中的一类或多类负荷特征。
表2 分层特征组
基于上述负荷特征分层思想,本文所设计的负荷动态识别方法由分类模型训练和在线负荷识别两部分构成,详细流程如图1 所示。其中,分类模型训练基于已标定负荷类型的训练/测试数据集,提取各层特征进行模型训练和检验,形成分层的负荷识别模型供在线负荷识别使用;在线负荷识别部分实时采集电压电流数据进行投切事件监测,然后按需提取特征输入至对应层的负荷识别模型进行判断,最后输出负荷类型识别结果。针对流程图中的关键步骤,下文将详细展开介绍。
步骤1:获取负荷投切事件数据。针对于待识别的负荷群,试运行一段时间并记录共m次投切事件ETp(p=1,2,3,…,m)的暂态电压vp(n)、暂态电流ip(n),然后根据实际负荷投切情况标定ETp的负荷类型并记为yp。
步骤2:设置负荷特征层及准确率阈值δ。首先根据实际工程需求设置识别准确率阈值δ,然后根据表2 所述特征选取优先级并结合实际工程应用场景,确定第一层特征组及第二层特征组所采用的特征。
步骤3:提取第一层负荷特征。根据步骤2 所设置的负荷特征层,结合表1 所述提取方法,提取所有负荷投切事件的第一层特征数据集FL=[FL1…FLp…FLm]T,其中FLp为第p次投切事件的第一层特征向量。
步骤4:训练第一层识别模型。考虑到训练数据集的样本数量较少且负荷类型往往不止两类,采用小样本环境下识别准确率较高的SVM 多分类OAA(One-against-ALL)方法。识别模型的构建步骤如下[17-19]所示。
(1) 针对c种负荷类型,OAA 共需要构建c个SVM 模型。首先训练第一类负荷的SVM 模型,即初始化λ=1。
(2) 基于训练数据集中的负荷类型标记yi以及第一层负荷特征集FL构建负荷特征样本训练集S以及测试集S',其中若ETp为第λ类负荷,则将目标值yp设置为λ,若否则令yp设置为-1。