一种基于非事件的非侵入式负荷监测方法
艾哈迈德·佐哈、卡梅尔·H·阿巴西和穆罕默德·A·伊姆兰
格拉斯哥大学詹姆斯·瓦特工程学院,英国
8.1 引言
迄今为止的研究主要集中在基于事件的方法上,以从复合负荷测量中识别电器(埃尔哈特‐马丁内斯等人,2010;蔡夫曼和罗斯,2011;佐哈等人,2012a,b)。直到最近,才开始尝试在不检测功率测量中的特定事件的情况下,直接估计构成聚合信号的各个负荷源。然而,这些初步研究旨在设计一个完全无监督的负荷分解系统。此外,值得注意的是,在没有分项计量训练数据的情况下,这些方法未能达到足够高的分解性能,目前尚无法应用于实际应用场景。这正是本章所要解决的具体问题。为此,我们提出一种基于非事件的概率模型,以非侵入方式监控桌面级电器的使用情况。该方法的目标是:首先利用每个目标电器的分离特征学习电器模型的精确参数,然后将其用于识别聚合负荷测量中的电器状态转移,从而实现高分解精度。
非事件型电器负荷分解问题可正式表述如下:给定M个电器在t ∈ T时间段内进行的T次测量所得到的聚合功率读数序列Y = {y₁, …, yₜ},我们希望识别出每个电器的功率贡献 p = [p₁, …, pₘ]ᵀ,其中p依赖于电器状态Sₜ = [s₁, …, sₘ]ᵀ,且m ≤ M。在任意时刻t,有Yₜ = Σᵢ pᵢₜ成立,而各电器状态的能耗信息可通过训练阶段的分项计量数据确定。因此,该问题被简化为确定每个时间段t内的电器状态Sₜ。
在多个桌面级电器连接到单个电源插座的办公环境中,可以利用概率模型根据总功率观测值进行隐藏设备状态估计。因此,在本研究中,我们决定探讨阶乘隐马尔可夫模型 (FHMMs) 在桌面级负荷分解中的适用性。我们工作的关键方面之一是选择合适的特征集,这些特征集用于所提出的分类器以及对单个电器功率状态的建模。通过实证评估,我们表明功率与统计特征的组合不仅能够提升电器二元状态(开机/关机)估计的准确性,而且在多状态功耗模型的推断中也表现良好。当前的非事件型负荷分解研究主要集中在识别二元负载操作;然而,在实际应用场景中,许多电器通常具有两个以上的运行状态。鉴于这一点,我们评估了我们的模型在二元和多状态电器操作下的适用性。我们提出的方法不依赖于高保真功率测量,而是使用低频功率测量来构建目标模型。这种方案具备良好的可扩展性,因为现有的计量基础设施(特别是在住宅环境中)通常仅提供低分辨率数据。此外,我们证明了在模型训练完成后,该方法能够在实时条件下运行,优于传统方法,并展示了将系统部署为实时应用的实际案例。
隐式电器的建模与估计的概率框架将在下一节中讨论。
8.2 负荷分解的概率建模
隐马尔可夫模型(HMM)(拉比纳,1989)已被广泛用于建模随机过程,并且也非常适合对一组独立过程进行建模。图8.1(a)展示了HMM模型的图形表示。St是一个隐状态变量,影响可观测状态变量Yt的分布。在负荷分解的背景下,Yt是电能表输出端观测到的功率信号,由St所决定,后者代表电器的底层状态。例如,液晶显示屏可以具有三种运行状态:开机、待机和关机。液晶显示屏可能的状态转移可如图8.1(b)所示。这可以通过定义初始状态概率 π、发射概率φ以及状态转移概率As.t λ={π, φ,A},将其转化为一个HMM模型 λ。π定义了在时间t=1时电器状态的初始概率,而A是一个转移矩阵,表示模型内的可能状态转移。φ是在给定某一特定状态下,在时间t观测到某观测值的概率。
在一种简化的场景中,Yt在时间步t可以被视为某个特定状态k下电器的耗电值,我们假设φ服从高斯分布:φ ≈ (μk, σk),其中μ和σ分别为输出观测值的均值和标准差。如(拉比纳,1989)中所提出的,存在学习算法用于训练隐马尔可夫模型(HMM)(例如鲍姆‐韦尔奇算法)、评估模型似然度(例如前后向算法)以及用于可能的隐藏状态序列估计(例如 Veterbi 算法)使该模型成为各种模式识别问题的流行选择。
我们的目标是根据聚合功率读数执行隐藏设备状态估计。为了表示并行运行电器的综合负载模型,可以定义一个常规HMM模型,该模型具有KM × KM个转移矩阵,其中K为每个电器的状态数量,M为目标电器总数。然而,这种模型会带来较高的计算需求,因为状态转移随新增电器呈指数级增长。FHMM是对隐马尔可夫模型(HMM)的扩展,通过引入分布式状态空间架构,将转移矩阵限制为M个大小为K × K的矩阵。这种HMM变体已被加赫拉马尼和乔丹(Ghahramani and Jordan, 1997)深入研究,由于当有KM个HMM状态时精确推断变得难以处理,因此已提出用于学习模型参数的高效算法,以及使用更快的变分近似来推断每条马尔可夫链最可能的状态序列的方法。在FHMM中,独立马尔可夫链共同贡献于单一可观测输出,如图8.2(a)所示。隐状态St被分解为M个独立因子S(m)t。然而,转移矩阵受到限制
隐马尔可夫模型(HMM)的图形表示。St是离散变量,而Yt是时间步t的可观测输出。垂直箭头显示了可观测输出对隐状态的依赖关系。(b)液晶显示屏的状态转移模型。)
FHMM的图示表示,它由M个隐马尔可夫模型(HMM)组合而成。此时,隐状态被划分为m个因子(即S(m)t)。可观测输出Yt现在依赖于所有子HMM的贡献。转移矩阵被约束为生成M个独立因子。(b)结构化变分近似假设M条链之间相互解耦,以简化推理任务。)
以一种在M个独立链之间没有中间状态转移的方式,但它们仍通过可观测输出Yt相互关联。箭头表示隐状态与可观测状态之间的水平和垂直依赖关系。每条链或因子m代表一个单个电器,可以处于一种K状态,S(m)t ∈ {1, 2,…,K},估计的隐藏概率分布表示为Q(S(m)t)。每个因子的输出贡献W(m)S(m)t取决于该因子在时间t的状态。而可观测输出则是各因子贡献之和。我们将在接下来的小节中进一步讨论模型定义,并概述FHMM的学习和推理方法。
8.2.1 模型定义
如前所述,FHMM中的每条链都遵循马尔可夫动态,意味着在时间t的隐状态(即S(m)t=t)在给定前一时刻状态(即S(m)t=(t−1))的情况下,独立于过去状态(即S(m)t<t)。形式上,
$$
P(S(m))=(S(m)t=1)
\prod_{t=2}^{T}
(S(m)t |S(m)t−1) \quad (8.1)
$$
其次,每条链根据其自身的动态演化,意味着
$$
P(S)=\prod_{m} p(S(m)) \quad (8.2)
$$
观测值Yt是一个高斯随机向量,其均值是各因子输出贡献的总和,如以下方程所示
$$
\mu_t=\sum_{m=1}^{M} W(m)
{S(m)t} \quad (8.3)
$$
设D × 1为观测向量Yt的维度,则模型输出的概率密度函数可表示为
$$
P(Yt|St)= |C|^{-1/2}(2π)^{-D/2} \exp\left{-\frac{1}{2}(Yt −\mu_t)^T C^{-1/2}(Yt −\mu_t)\right} \quad (8.4)
$$
其中C是D × D协方差矩阵,且均值μt依赖于在时间步t时各电器的各自的贡献,如公式8.3所示。如前所述,各链之间相互独立,其横向依赖可建模为M个转移矩阵A(m)。这相当于组合独立电器隐马尔可夫模型,并利用公式8.1和8.2的性质,FHMM的隐状态先验和转移矩阵可正式表示为公式8.5和8.6。
$$
P(S1)=\prod
{m=1}^{M} \pi(m) \quad (8.5)
$$
$$
P(St|St−1)=\prod_{m=1}^{M} A(m) \quad (8.6)
$$
这种独立性意味着电器1处于状态a、电器2处于状态b等的联合概率等于各个边缘概率的乘积。因此,联合概率分布p(Yt,St)可定义如下
$$
P(Yt, St)= P(S1)p(Y1|S1) \prod_{t=2}^{T} P(St|St−1)P(Yt|St) \quad (8.7)
$$
公式(8.7)可以使用公式(8.5)和公式(8.6)展开
$$
P(Yt, St)= \prod_{m=1}^{M} \pi(m)P(Y1|S1) \prod_{t=2}^{T} \prod_{m=1}^{M} AMP(Yt|St) \quad (8.8)
$$
8.2.2 推断
期望最大化(EM)算法通过两个迭代步骤来学习隐马尔可夫模型的参数。在期望步骤(E步)中,执行对模型状态后验分布P(S|Y λ)的推断,而在最大化步骤(M步)中,将模型参数λ更新为其最大似然值。然而,在FHMM的情况下,E步中的精确推断是一个计算代价高昂的过程,所关注的概率变得难以处理。为了解决这一问题并降低计算需求,已提出了多种近似推断方法。加赫拉马尼和乔丹,1997的作者对因子隐马尔可夫模型中的训练与推断的精确与近似方法进行了比较。在近似方法中,假设了一种简化图结构,并引入了近似分布Q(S)以旨在最小化近似分布Q(S)与精确分布P(S)之间的 Kullback‐Leibler(KL)散度。在本研究中,我们采用了一种结构化变分EM近似方法,下文将简要讨论该方法。模型的理论依据和完整推导见(加赫拉马尼和乔丹,1997)。图8.2(b)展示了结构化变分近似方法的简化结构,其中假设M个马尔可夫链是解耦的。
在E步中,通过引入责任因子h(m)t来替代P(Y|S),从而简化了推理问题。h(m)t可以被视为一种虚构观测,表示S(m)t不同状态的组合。在E步期间,调整该责任因子的概率以最小化Q(S)与P(S)之间的 KL散度。因此,近似分布的参数变为λ={π(m),Am,hmt}。Q(S)可表示为
$$
Q(S|λ)= \frac{1}{ZQ} \prod_{m=1}^{M} Q(S(m)1 |λ) \prod_{t=2}^{T} Q(S(m)t |S(m)t−1, λ) \quad (8.9)
$$
其中先验概率和转移概率可以用hmt表示如下
$$
Q(S(m)1 |λ)= \prod_{k=1}^{K} (h(m)1,k \pi(m)k)^{S(m)1,k} \quad (8.10)
$$
$$
Q(S(m)t |S(m)t−1 , λ)= \prod_{k=1}^{K} \left( h(m)1,k \prod_{j=1}^{K} (A(m)k,j)^{S(m)t−1,j} \right)^{S(m)t,k} \quad (8.11)
$$
将公式8.9与公式8.8进行比较可以看出,P(Y1|S1)通过每条链对应的观测似然并利用h(m)t进行了分解。因此,每条链的最可能状态序列或后验概率可以像单个HMM那样独立计算,其中包含K个状态。FHMM的M步与HMM相同,是可处理的,其详细内容可参见(加赫拉马尼和乔丹,1997)。学习模型参数的生成式方法在算法1中进行了总结。
概率性负荷建模在电器分解中的过程总结如下:第一步是初始化FHMM参数,这需要选择模型中链的总数,该数量对应于电器总数。此外,每条链由不同数量的
状态取决于电器的运行行为和类型。为了初始化负荷分解模型,必须按照第8.2.1节中所述指定初始状态和转移概率。下一步是使用算法1中总结的EM算法来学习模型参数。EM算法迭代进行两个步骤,直到达到收敛。算法的收敛性通过新旧模型参数之间的变化差异小于某一指定值来衡量,该指定值称为停止准则。如本节前面所述,结构化变分近似的目的是最小化KL散度,因为它提供了理论保证,即在E步和M步期间似然性的下界被最大化。每次E步和M步的迭代都会增加似然Q(Y|λ),直到收敛到局部最优。
最后,目标是根据聚合的功率测量值来发现电器的隐藏状态。一旦学习到模型参数,就可以使用最大似然估计(MLE)原则对隐状态变量序列进行解码。我们希望找到生成观测信号的隐状态的联合概率。通过应用标准的维特比算法(拉比纳,1989),可以解码出最可能的状态序列,该算法能够找到所有可能状态序列中的最大似然,其形式化表达为
$$
S^* = \arg\max_S Q(Y, S|λ) \quad (8.12)
$$
8.3 实验评估
所提出的方法已通过从实验装置中获取数据进行评估,详细讨论见(纳蒂等,2013)。数据采集模块的硬件包括智能电力一种作为电路级监控设备的插座式监测器(SPO)。该SPO由一个 TelosB节点与现成的电能表(Plogg)连接构成,并放置在目标工作台附近,以便通过多插口插座连接多个电器。实验中使用的一组电器包括台式计算机、液晶显示器、笔记本电脑、具有三种不同状态的风扇以及具有两种工作状态的白炽台灯。SPO用于测量这些电器的设备总用电量。为评估所提出方法的性能,实验分为两个阶段进行,如下所述。实现和评估均在Matlab环境中完成。
8.3.1 实验设计
为了训练和测试我们基于非事件的电器模型的性能,在二元阶段和多状态运行阶段两个阶段分别采集了总负荷和各电器级别的数据。在二元阶段,我们将所有目标电器配置为仅工作在两种状态:开启和关闭。例如,通过电源管理选项,我们禁用了液晶显示屏(LS)、台式计算机(DC)和笔记本电脑的所有节能设置,使其保持在活动模式运行,而不会切换到中间状态。相反,在多状态阶段,则考虑了目标设备所有可能的状态转移。在这两个阶段中,每种电器均被单独监测约30分钟,所采集的数据用于通过EM算法推导其相应的隐马尔可夫模型链(即状态数量、转移矩阵和初始状态概率)。所学习到的参数进一步通过公式8.5和8.6组合,以确定复合负荷 FHMM的初始参数。FHMM随后使用算法1进一步估计模型参数。模型训练完成后,利用可观测的功率测量值进行电器状态估计。
为了探究所提出方法在桌面级负荷分解中的有效性,设计了10个测试场景,如表8.1所示,每个场景中至少有两个并行运行的电器。每个电器状态的平均持续时间为5分钟。在每个测试场景中,电器被切换到各自的状态,并相应地标注数据以获得真实标签。要估计的目标电器数量取决于每种场景中使用的目标电器的数量。接下来的小节详细介绍了用于隐藏设备状态估计的不同模型。
8.3.2 特征子组
特定电器的功率测量可以通过从电压和电流信号中提取一组特征来进行表征。设T表示观测向量Yt的长度,在本例中该长度设置为15,每个测量值可用一个D维的特征向量来表征。我们采用基于功率的特征进行状态 modeling,包括平均有功功率和无功功率,以及它们各自的标准差和功率因数信息。由于我们主要关注电器的稳态行为,这种行为可被视为平稳随机过程,因此功率特征非常适合用于表征此类过程的组合。这些特征进一步被划分为多个子组,每个子组用于训练一个独立的FHMM,如表8.2所列。这使我们能够研究目标特征及其组合在电器状态建模中的有效性,从而影响隐状态估计精度。所训练的模型使用这五个子组对表8.1中列出的测试场景进行了评估。
表8.2 电器模型的特征
| 模型ID | 观测向量(Yt) | 备注 |
|---|---|---|
| M1 | P 其中 $P = \frac{1}{T}\sum_{t=1}^{T} P_t$ | — |
| M2 | P, Q 其中 $Q = \frac{1}{T}\sum_{t=1}^{T} Q_t$ | — |
| M3 | P, Q, PF 其中 $PF = \frac{P}{AP}$ | — |
| M4 | P, Q, PF, Pstd 其中 $Pstd = \sqrt{\frac{1}{T}\sum_{t=1}^{T}(P_t - \bar{P})^2}$ | — |
| M5 | P, Q, PF, Pstd, Qstd 其中 $Qstd = \sqrt{\frac{1}{T}\sum_{t=1}^{T}(Q_t - \bar{Q})^2}$ | — |
8.3.3 性能评估
图8.3展示了基于FHMM的电器状态解码在给定功率测量下的总体流程。该流程包括三个步骤:通过提取功率特征对采集的测量数据进行特征提取;利用训练模型对电器状态进行解码;通过与真实数据对比来评估隐状态估计的准确率。为了评估模型的性能,采用宏平均F度量(F1 score)作为评估指标。实验结果将在接下来的讨论中报告。
8.3.3.1 二元和多状态分类
在测试实验的第一阶段,如表8.1所列,当仅允许对电器进行二元操作时,我们的目标模型的性能总结于图8.4中。可以看出,模型M4的状态估计准确率最高,达到0.906,而表现最差的模型是M1,其准确率为0.734。复合特征在建模电器状态方面的优势是明显的,因为模型M2到M5对状态解码性能表现出积极影响。然而,我们并未观察到模型M5相较于M4有显著的性能提升。同样,在实验的第二阶段,如图8.4所示,M4仍然表现出优于其他模型的性能。但需要注意的是,在多状态电器运行场景中观察到了10%性能下降。
对性能最佳的模型M4进行深入分析揭示了一些有趣的观测值。在表8.3中,我们列出了使用M4在二元和多状态实验会话中各测试场景的性能得分。可以明显看出,在测试场景7到10之间,电器状态识别的性能低于宏平均两个实验阶段的得分。这些观测值得出若干发现,总结如下:
表8.3 在测试场景中使用model M4获得的F分数
| 阶段 | 场景 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 二元 | 0.987 | 0.980 | 0.976 | 0.862 | 0.941 | 0.931 | 0.90 | 0.88 | 0.830 | 0.768 | |
| 多分类 | 0.956 | 0.961 | 0.87 | 0.702 | 0.890 | 0.91 | 0.74 | 0.731 | 0.669 | 0.614 |
首先,与二元状态电器激活相比,在多状态电器操作中,目标模型的性能明显下降。当测试的电器数量增加时,尤其是电器数量在7到10之间时,这一现象更为明显。由于电器数量的增加最终导致需要监测的电器状态数量增多,电器中间状态之间的功耗值相似的可能性也随之增加。这导致了功率和的混叠,因此,与其他稳态技术类似,在这种情况下,电器状态之间的消歧成为一个挑战。对于FHMMs等生成模型而言,该问题更加严重,因为一个电器的状态解码依赖于另一个正在运行的电器的正确状态估计。例如,笔记本电脑和风扇在其激活状态下所消耗的功率与液晶显示器处于开机状态时的功耗相当。由于这种重叠引起的状态估计误差会在链式过程中传播,从而导致较高的误报错误,并降低模型的整体准确率。这解释了仅依赖功率信息的模型M1得分较低的原因。然而,可以看出,通过增加特征向量的维度,这一问题得到了缓解。
其次,不仅并行运行的电器数量,其类型也对隐状态估计精度有影响。在时间步t的联合概率分布取决于底层M因素之间的相互作用。每种电器的状态配置文件由其内部结构决定,具体取决于它是否包含电感、电容或电阻元件。无功功率依赖于电流和电压之间的相位角,对于容性负载,电流超前于电压,而感性负载则相反,从而产生超前和滞后的功率因数。因此,当含有电容和电感元件(如电容器和电机)的负载(例如笔记本电脑和风扇)并行运行时,它们的无功功率不会叠加,而是相互抵消。另一方面,在FHMM初始化过程中,我们假设在时间步t每个因子的贡献是线性组合以表示观测值变量。这导致在电感和电容负载并行运行期间概率分布的特征提取不准确,从而在测试场景8到10中出现了状态估计错误。而阻性负载(即台灯)没有无功功率,因此它们与电感和容性负载组合时不会对我们的假设产生影响。这也进一步解释了为何模型M5相较于M4并未表现出性能提升,以及将Qstd与其他功率特征拼接以构成负载特征未显示出明显优势。相反,在启动阶段和状态转换期间,电器的功耗表现出变化性。当风扇速度从中档调至高档时也是如此。同样,工作站的负载会根据CPU使用率而变化。加入Pstd将这些变化编码进复合负载特征中,从而改善了各状态下电器行为的特征提取以及整体估计准确率,结果已充分证明了这一点。
与复合负载操作相比,当电器以分离方式运行时,我们基于非事件的方法在单个电器上的识别准确率显著更高。使用性能最佳的模型M4对每个单个电器的识别准确率如图8.5所示。该模型能够以超过90%的准确率唯一地刻画每个目标电器的状态转移行为,但台式风扇的多状态操作除外,因其在状态转移过程中存在非线性行为。
8.4 实时部署
为了展示非事件型负荷分解模型在实时环境中的性能,我们设置了一个实时部署系统,包括一个办公室工作台、目标电器、SPO单元以及移动应用,如图8.6(a)所示。该移动应用名为“device workdesk”,开发目的是让用户能够通过手机监控其工作台上所有电器的当前状态。Plogg单元的测量数据被传送到服务器,并存储在Mysql数据库中。监控站会查询该数据库并获取聚合后的能源消耗被发送到在Matlab环境中运行的负荷分解模块。该分解模块的输出是目标电器的预测状态。为了说明,图8.6(b)展示了工作站和液晶显示器的综合负荷曲线。负荷曲线由我们提出的算法解码为状态。每个功率水平对应目标电器的一种状态组合,其中连续状态表示该状态的持续时间,可用于估算总能耗。这些信息被传送给移动应用,从而相应地显示用户工作台上电器的当前状态。
实际部署:移动应用、Plogg单元和工作台上的目标电器(b)显示了总负荷测量结果,该结果由光源和工作站的并行运行产生。叠加的绿色和黑色点是我们的模型M4解码的状态,这些状态被转发至移动应用。)
8.4.1 能量估计
一旦所提出的系统预测出生成聚合信号的电器状态,它便可以进一步估算每个单个电器消耗的功率。表8.4显示了在运行期间各个桌面级电器的估算的能源消耗对提出算法的实时评估。该系统通过将每个电器状态的持续时间乘以其在训练阶段确定的平均功率消耗,来估计各电器的能源消耗。然后将每个电器的估计能耗与从Plogg单元获得的实际能耗数据进行比较。需要注意的是,不同类别的电器其估计误差也不同。对于液晶显示器和台灯,由于其功率行为稳定,误差小于10%;然而对于笔记本电脑、台式机和风扇,由于其能耗特征的变化性较大,导致能耗估计误差较高。此外,电器状态的错误分类也导致这些设备的能源消耗估计不准确。
表8.4 设备级能耗估算。
| 电器 | 开机平均时间(小时) | 估计功率(瓦) | 实际能量(瓦时) | 估计能量(瓦时) | 误差% |
|---|---|---|---|---|---|
| Lamp | 6.75 | 35.6 | 252.4 | 240.3 | 5 |
| LCD | 5.3 | 31.2 | 178.58 | 165.36 | 8 |
| DC | 6.2 | 61.3 | 437.69 | 380.6 | 15 |
| 笔记本电脑 | 5.6 | 39.2 | 175.6 | 219.52 | 20 |
| Fan | 3.2 | 25.2 | 58.86 | 80.64 | 27 |
8.5 结论
在本章中,我们研究了使用隐马尔可夫模型(FHMM)来识别与聚合功率测量时间序列相对应的最可能的电器状态序列。结果表明,我们提出的非事件型方法对桌面级电器的聚合行为建模准确率分别达到二元操作90%和多状态操作80%。此外,实证评估表明,在识别单个电器操作方面,非事件型方法与事件型方法在性能上具有竞争力。然而,对于复合负载操作,FHMMs的性能被发现对并行运行的电器数量和类型较为敏感。
4876

被折叠的 条评论
为什么被折叠?



