An Iterative Load Disaggregation Approach Based on Appliance Consumption Pattern

: Non-intrusive load monitoring (NILM), monitoring single-appliance consumption level by decomposing the aggregated energy consumption, is a novel and economic technology that is beneﬁcial to energy utilities and energy demand management strategies development. Hardware costs of high-frequency sampling and algorithm’s computational complexity hampered NILM large-scale application. However, low sampling data shows poor performance in event detection when multiple appliances are simultaneously turned on. In this paper, we contribute an iterative disaggregation approach that is based on appliance consumption pattern (ILDACP). Our approach combined Fuzzy C-means clustering algorithm, which provide an initial appliance operating status, and sub-sequence searching Dynamic Time Warping, which retrieves single energy consumption based on the typical power consumption pattern. Results show that the proposed approach is effective to accurately disaggregate power consumption, and is suitable for the situation where different appliances are simultaneously operated. Also, the approach has lower computational complexity than Hidden Markov Model method and it is easy to implement in the household without installing special equipment.


Introduction
With the development of science and technology, the electricity consumption is constantly growing, which stimulate the development of Smart Grid [1], a new efficient, reliable, flexible and optimized electric power system [2]. Smart Grid requires that smart meters provide electricity consumption information to help in making demand management strategies [3]. Research has shown that the total electricity information feedback can produce energy saving by approximately 15% [4]. Furthermore, if detailed electricity consumption information is provided, the energy sector can adjust hourly dynamic energy price to reduce the demand in peak hour [5], and inform consumers about high energy consumable appliance, there will be more benefits than energy savings [6].
Traditional intrusive load monitoring technique requires installing sensors on each appliance for monitoring the load electricity consumption details. Although accurate monitoring can be achieved, it also causes high hardware installation cost [7,8]. Non-intrusive load monitoring (NILM), as proposed in 1992 [9], is a novel and cost-effective technique. NILM, using pattern recognition technologies and machine learning methods, decomposes the total energy consumption measured at the household level by a single point sensor into the energy consumption of individual appliances [9]. Thus, NILM has the advantages of low cost and easy implementation.
In recent years, several NILM approaches have been proposed [10]. Hart proposed event-based method to identify appliances [9]. Literature [11] adopts Naive Bayes classifier to identify the multiple appliances operating. Wavelet transform are used to identify the appliances by analyzing the power spectrum [12]. Yet, a number of problems emerged in recent works. At first, high-frequency feature leads to higher identification accuracy. However, high-frequency feature extraction needs additional measuring equipment and also causes high computational complexity [13]. Large-scale applications of NILM demands that appliances in residential or buildings could be directly monitored without adding additional costs. Load disaggregation utilizingsmart meter reading is easy to implement in real life.
Second, simultaneously operating appliances not only increases the complexity of identifying appliance-specific consumption patterns [14,15], but also the consequently overlapping operation makes it difficult for event detection [16]. Finally, the accuracy metrics of NILM approach are difficult to be defined consistently [14,15,17]. Many approaches focus on the accuracy of the on/off detection [18][19][20], and only few studies consider the retrieving appliances consumption information.
To solve the above problems, we proposed an iterative load disaggregation approach based on appliance consumption pattern (ILDACP), which will be implemented in a reduced invasiveness way. Proposed approach combines the fuzzy C-means clustering algorithm (FCM) and Dynamic Time Warping (DTW) to identify the on/off states of each appliance in sequence and sub-sequence searching DTW (SSDTW) to accurately disaggregate total power into single-level base on the different consumption pattern of each appliance. In our work, the consumption pattern of each appliance is described in low sampling, as high sampling leads to higher hardware cost [21]. FCM algorithm clusters the total consumption, high power level values of which will be clustered first, as the appliance with the highest contribution brings the greatest impact to the total consumption. Then, DTW is applied to identify the series from selected highest power level cluster (label the cluster) and SSDTW to estimate the consumption trajectory of single appliance. This process is repeated until each appliance power consumption trajectory is reproduced except normally open appliances. The proposed algorithm is tested on the data in AMPds database and three kinds of performance metrics are utilized to estimate the capability to identify the appliances operating states, power consumption, and the accuracy of trace retrieve. The computational complexity analysis and intrusiveness of the algorithm analysis are performed as well.
The rest of the paper is organized as follow. Section 2 formalizes the problem to be solved in load disaggregation and describes the related work that other researcher worked on. Section 3 explains the proposed approach. In Sections 4 and 5, the result and discussion of the implementing approach is described and the final performance is evaluated.

Related Work and Problem Description
The goal of the NILM disaggregation algorithm is to estimate the power of each appliance that contributes to the total power consumption that was measured by smart meter in a household. The problem can be described as: where P t is the total power consumption at time t, p i t is the consumption of appliance i at time t, N equals the number of appliances, and e t the measurement noise.
For FSM (Finite State Machine) with multiple power states, assuming that each appliance has M power states, the power consumption of i-th appliance, for time t, is described as follows: where A i is a vector containing the power consumption a i,j for appliance i in every state j, and X i t is a binary-valued vector, composed by the ON/OFF status of each power state for appliance i at time t. If appliance i is in state j at time t, x i,j t = 1; Otherwise, x i,j t = 0. Obviously, appliance i is in only one state, so ∑ M j=1 x i,j t = 1, ∀i, t. e i t is the measurement noise for appliance i at time t. Based on the above introduction, the load disaggregation is transformed into the optimization problem seeking operating state of each appliance X t at time t, so that the difference between the estimated and the measured total power is minimized, which can be described as follows for a given time step H and the measured total power P t at time t: Problem described in Equation (3) can be solved by using optimization algorithms such as genetic algorithms [22], integer optimization [23], sparse optimization [24][25][26], or differential evolution [27], which are applied to search the best matched combination of appliances making the calculated total power equal to the measured total power. The techniques are not suitable for more types of appliances and need complex computation. Another solution for load disaggregation is the so-called pattern recognition method, which extracts transient or steady-state features of appliances, then to match with the signature model in database. Pattern recognition techniques, such as artificial neural networks (ANN) [12,28,29] or Hidden Markov Models (HMM) [30,31] have been tested and show their ability in learning the consumption pattern of appliances. In particular, HMMs and their extensions were used in many data disaggregation models The hidden states chain in HMMs represents the operating state/states of a device and the emission or observation sequences represent the measured total power consumption [30]. However, as the number of appliances increases, the computation complexity of HMM increases exponentially (see the computational complexity analysis in Section 4.3.2) [31].
Time series subsequence data mining is using to study and classify the transient operations of typical appliances [32]. K-means method is applied to denoise the measured consumption sequence [31], and in some literature, FCM, fuzzy version of the K-means, is running to divide appliances turn-on events or spectral into several categories, and then each category is labeled [33,34]. In literature [35], X-means algorithm is used to cluster the power levels, and shows good performance on real data in an industrial application for smart houses. However, the appliances with similar power ranges may be misidentified. Another pattern recognition method proposed recently relies on Dynamic Time Warping (DTW), used in the field of speech recognition to match between traces of difference length [36]. DTW is used to match transient signature [37] and to identify the appliance power sequence [31].
Our ILDACP algorithm combines FCM algorithm and DTW based method to achieve load disaggregation. A multi-state appliance is considered as multiple appliances. FCM clusters the total power consumption values with maximum into a cluster. The time series composed of these values are labeled by calculating the similarity between the series and the signature of each appliance. The proposed approach, utilizing low sampling data, can be applied in industrial solutions based on real-life data acquired.

The ILDACP Algorithm
Through the study of the power consumption characteristics of some typical electrical appliance, we found that even everyday appliances with similar power profiles show the time characteristics, we hope to apply these characteristics to disaggregate the consumption of multiple electrical appliances. We extract the measured power consumption of fridge in AMPds database [38], as shown in Figure 1. The fridge exhibits a cyclic pattern of power consumption due to duty cycling of its compressor. Since there may be multiple electrical appliances with a similar power level, a power values does not represent a particular appliance. Thus, our work disaggregates the consumption of multiple appliances based on the consumption pattern characteristics.
Our approach, ILDACP, is based on the following assumptions: First, each appliance, contributing to the total power consumption, has its own consumption pattern. Second, we can identify the appliance and estimate its power consumption through its power consumption pattern. The workflow of the approach includes four steps: appliance signatures extraction, consumption clustering, appliances identification and power consumption estimate, and result correction. The last three stages of them are carried out iteratively, until every appliance is disaggregated or only normally-open appliances left. The flowchart of ILDACP is shown in Figure 2. In this section, we provide details on each step of ILDACP in the next paragraphs.

Appliance Signatures Extraction
At the first step, we need to create a signature database of each appliance i, (i = 1, 2, ..., N), contributing to the total measured consumption in the household. In order to gain the database of appliance signature S = S i , (i = 1, 2, ..., N), for each appliance, we retrieved the power consumption value intrusively to constitute a training dataset D T in a chosen short training period T. When considering of the possible consumption differences between weekdays and weekend days, it is necessary to ensure that T is longer than a week. In order to reduce intrusiveness, a seven-day training period is considered.

Total Power Consumption Clustering
Fuzzy C-means algorithm (FCM) [39] is a clustering algorithm that is based on squared error and criterion. In this phase, FCM clusters the aggregation power consumption to detect the operating states of the largest power contribution appliance over the validation time horizon H. First of all, if the total power consumption values that are extracted from total power trajectory P include more than one appliance, it is clustered into optimal number clusters. Figure 3 shows a clustering result. We can see from the figure, the power consumption values of the highest power appliance in turned-on state are clustered shown in cluster 3. Then, the total consumption trajectory A j , only the power value in cluster 3 left (others are set to 0), is generated. Thus, the appliances power values with larger power contribution can be estimated first, as they give largest impact on the trajectory of total power consumption and weaken the traces of less contribution appliances.

Power Load Disaggregation
DTW is used to measure the similarity between time series with different length [40]. In our paper, DTW based methods are used to identify the appliance by searching minimum DTW distance between the time series A j of largest contribution appliance and each signature sequence S i .

Appliances Identification
For two one-dimensional time-series A j and each S i , they are expressed respectively in vector forms as A j = [x(1), x(2), ..., x(t)] T and S i = [y(1), y(2), ..., y(T)] T , where x(m) and y(n) belong A j and S i .
We utilize DTW pattern-matching technique to measure the similarity between A j and each S i . The similarity between two time series is measured by DTW distance. The larger the DTW distance, the lower the similarity between two time series. In our algorithm, DTW distance is calculated according to the following procedure.
At first, all pairwise distances between A j and S i are stored in local cost matrix C t×T , which is described as: where C(m, n) is the element of the mth row and the nth column in matrix C t×T , and d(x(m), y(n)) is the Euclid distance between x(m) and y(n), which is d(x(m), y(n)) = |x(m) − y(n)|. Secondly, assume that the warping path between A j and S i from (1, 1) to (m, n) is where p k = (m k , n k ) ∈ {1, 2, ..., m} × {1, 2, ..., n}.
The constraints of boundary condition, step size condition and monotonicity condition are shown in the following Equation (6).
where l is the length of the path. The accumulated cost of warping path p is described as where k ∈ {1, 2, ..., l} and l ∈ [max(m, n), m + n − 1]. Finally, we use dynamic programming algorithm according to the recursive rule shown in Equation (8) to search the optimal warping path between A j and S i .
The corresponding minimum accumulated distance D(t, T) is calculated, and finally the DTW distance DTW A j , S i = D(t, T).
In this step, we search for the minimum DTW distance between A j and each signature S i , the appliance with minimum DTW distance is identified as the one of maximum contribution.

Power Consumption Trajectory Estimating
We have received the total power consumption trajectory when the appliance with largest power contribution is operating, which is written as A j . By removing 0 from A j , it is partition into some operation duration sub-sequences A j 1 , A j 2 , ..., , A j k , where k is the number of operation sub-sequences. Since A j r represents an operation duration, and S j include more than one operation durations, we use sub-sequence searching method based DTW (SSDTW) to find the best matched sub-sequence from appliance signatures. SSDTW is described as follows: Assume that S j represents the closest signature to A j . We estimate each A j r according to following procedure.

1.
Sequentially scan S j and find a time s(1 ≤ s ≤ T) with S j (s) = 0, compute DTW distance between S j [s, T] and A j r . In this procedure, DTW S j [s, t], A j r (s ≤ t ≤ T) are generated.

2.
Scanning and compute iteratively DTW distance as above until s > T, find such a sub-sequence S j s , which bring about minimum DTW distance.

3.
Replace A j r in A j with the best matched signature subsequence S j s .
At last, the new total power consumption sequence is calculated according to Equation (9):

Power Consumption Correction
In this very last phase of our algorithm, the results of the previous step are corrected in order to produce accurate disaggregated end-use trajectories. We correct the results based on two basic facts: an operating appliance is in one state at time t, and the total power value is always greater than or equal to 0. The correction is carried out taking into account the following three-case correction:

1.
False appliance identification correction. Assuming the closest signature of A j is S j . In one case, if the sub-sequence at the same time in A j has ever been identified as the appliance j, it is false identification. The other case, when two different appliances have a similar contribution to the total power consumption, if sub-sequence A j r picked up from A j is far shorter than the duration of appliance j, it is false identification as well. In these situations, the second highest similarity signature is adopted.

2.
False clustering correction. We detect every A j r . If the length of it is less than the minimum duration time of appliance j in S j , false clustering is considered. It is possible that A j r or its neighbor is misclassified. Inaccurate power estimation of an appliance generates incorrect new total power, which causes the wrong clustering. Thus, we adjust the false clustered power value to the cluster's center value of its neighbor, and compensate former power estimation.

3.
New total power estimation correction. Once any value of new total power estimation is negative, adjust it to the average value of its neighbors and compensate former power estimation of the highest contributing appliance. If there are still positive values in total power after all of the appliances power consumption traces has been retrieved, adjust the negative values to 0, and compensate former power estimation of the highest contributing appliance.

Data Setting
We choose AMPds dataset [38] to test our ILDACP method. AMPds contains power consumption readings in a single house in Canada and provides the metered data at the end-use level at 1 min resolution. The data of AMPds dataset was obtained over a long period of time (two years) and is presented with minor amounts of missing data. All of the mentioned above make the dataset meet the need of our algorithm. We considered several typical indoor appliances, i.e., security/network equipment, heat pump, clothes dryer, and fridge. In order to focus only on the most important indoor activities of residents, we did not take into account the outdoor appliance and undefined reading, e.g., room aggregate consumption.
Due to the possible seasonality effects on power consumption, we extract four sub-periods from the dataset to test our algorithm. Since the minimum power of chosen appliances is more than 30 Watt, the preset threshold is set to 30 Watt.

Performance Metrics
The consistent evaluation of the result is mentioned as a difficult challenge in the literature on NILM [14][15][16]. Moreover, accurate estimates of appliances power consumption patterns are helpful in identifying peak hours, quantifying the contribution of each appliance during the peak and off-peak hours, and assess the efficiency levels of different appliances, which help to design demand management strategies that aim to improve energy efficiency and reduce costs through demand peak shifting and replacing low-efficiency devices.
In our paper, a set of three metrics, F-score, power contribution error, and R2 score, is used to assess the quality of identifying and disaggregation result of our ILDACP method. The metrics are picked from others' literature, because it is a complete evaluation with necessary estimation characteristics involved [16].
F-score (Fs) provides the capability of NILM algorithms to identify the appliances' operating states for each appliance i, which is defined in the following Equation (10) where PC i and RC i are the recall and precision for appliance i. PC i and RC i are described in Equation (11). Based on above description, F-score ranges from 0 (0% accuracy in state detection) to 1 (100% accuracy in state detection). It evaluates how good the algorithm is in identifying the operating states of each appliance. However, it does not give the information about the power consumption of each appliance i.
The power contribution error (PCE) shows the goodness of NILM models to estimate the power consumption assigned to each appliance. It gives the information on the accuracy in assigning the total power consumption to each appliance i, according to the Equation (12). The closer the estimated contribution of appliance i is to the true contribution, the closer PCE i is to 0.
where y i t andŷ i t are the measured true and estimated power consumption for appliance i in time t; P t is the total power consumption of all the appliance in time t. The more accurate NILM model is, the closer to 0 the PCE values are. The PCE provides more information than F-score to describe the estimation of power contribution of appliances. The R2 score evaluates the accuracy of power trace retrieve. For each appliance i, it is defined as The more similar the estimated consumption trajectory of the appliance i is to the measured consumption trajectory, the closer R2 i is to 1.
This set of metrics assesses the performance of NILM algorithms in different viewpoints, and the values that were calculated by these metrics offer electric utilities and decision makers the reference to help designing energy demand management strategies.

Numerical Results
We test our ILDACP method on the chosen data and calculate the three metrics from four sub-periods to analyze ILDACP method, the results of three metrics are shown in Tables 2-4. Figure 4 shows the metrics from the first test period when compared with the factorial Hidden Markov Model (FHMM) algorithm that was developed in literature [16]. An open source toolkit using FHMM for NILM is provided to allow for empirical comparisons to be made between energy disaggregation algorithms across multiple data sets. The charts in Figure 5 represent a detailed comparison of model estimation versus measured values of the four considered appliances for the first chosen period. Table 2. F-score values from four periods for the four appliances.   See Tables 2-4, F-score and PCE show good performance for values close to 1 and 0 respectively on the date in four sub-periods. The first three periods are in different seasons, the three metrics are not much different, which proved the robustness of data. In the period 3, heat pump is a normally opened appliance. There are two normally-open appliances, which makes the clustering algorithm is unable to cluster correctly, so the heat pump shows poor performance in period 3.

Period (1) Period (2) Period (3) Period (4)
As shown in Figure 4, when compared with FHMM algorithm, the ILDACP method achieves good performance in detecting the operating states, estimating contribution power consumption, and consumption pattern trace of each appliance The F-score values show that the algorithm can correctly find turned-on states of each appliance with a high rate. F-score values of all the four appliances are higher than FHMM. We can find out why larger contribution appliance generates higher F-score except normally-open appliances, the reason is that the operating states of largest contribution appliance is first detected and estimated, thus the estimation error affects the result behind (the top panel in Figure 4). On the other two metrics, ILDACP obtains PCE values that were lower and R2 higher than FHMM.
As described above, ILDACP can detect the operating states of the appliances, generate the contribution to the total power consumption by each appliance, and provide the consumption pattern of most appliances in spite of multiple appliances operating simultaneously. Besides, there is another truth needing our attention in the R2 metric shown in Figure 4: though highest accuracy of power contribution estimation for security/network equipment (lowest PCE value in the middle panel of Figure 4), the performance on the R2 is relatively poor. Since the powers of security/network equipment vary in a narrow range compared to the other appliance, thus making accurate power contribution estimation with average value. However, the impact of noise on the trace of it leads to difficult predict (the ILDACP doesn't filter out the noise for such appliances).

Algorithm Computational Complexity Analysis
The ILDACP method shows good performance in detecting the operating states, estimating the power contribution, and retrieving the consumption pattern for the considered four appliances. FCM algorithm is adopted iteratively to detect the operating states of the largest contribution appliance. In the clustering phase, multiple states for one appliance are detected respectively, thus the performances are effectively improved. The time complexity of FCM algorithm is O(MNT2) for a problem with M states for each appliance, N appliances and T time instances [37], but FHMM for the same problem attains the time complexity in the order of O(TM2N) on. Obviously, as the number of states and appliances increase, FCM needs less computation than FHMM does ( Figure 6). Then, FCM is coupled with SSDTW to estimate the best matching power trace pattern. ILDACP method, the combination of FCM and SSDTW, gets the time complexity O(MNT2+kNT2), where k is time series A j length. When combined Figure 6 with the results analysis in Section 4.3.1, we can get the conclusion that our ILDACP method can achieve good disaggregation with a lower computational complexity for the problem with increasing appliances numbers and states number of each appliance than FHMM. From the points of disaggregation outputs, we expect to keep improve the disaggregation accuracy. Since cluster validity index for calculating the best cluster number is invalid when only one cluster exists, clustering algorithms have difficulty in detecting turned-on state of normally-open appliance. The problem in our algorithm is solved in correction phase in Section 3.4. However, once more than one kinds of normally-open appliance contribute to the total power consumption, we need to skip the clustering phase when these appliances become the largest contribution appliance.
Based on the above discussion, the proposed approach has high accuracy on the three metrics and relatively low computational complexity.

Sensitivity of the Result with the Signature Length
Reducing the invasiveness of the algorithm is one of the most important issues in NILM. Hart's work [9], known as supervised algorithm, requires large appliance-level data for the training step. Although in order to ensure the accuracy of algorithm in disaggregation, a certain degree of invasiveness is inevitable, the purpose is to keep it at the minimum level. In this step, we conduct a test and compare the performance of our approach in two different length signatures.
The signatures for each appliance are shortened to an operating duration series in Section 3.1 to keep the intrusiveness lowest. Figure 7 is the disaggregation performance comparisons of ILDACP and revised method. We can find that the accuracy of states identification is not significantly reduced when short signature is adopted. However, the performance of estimating the power contribution and retrieving the consumption trace is worse than the long one especially on PCE and R2 metrics. The R2 for fridge shows inaccuracy in consumption pattern trace estimation caused by error determination the turned-on time of fridge. The result provides us the sensitivity of three metrics with the signature length of our algorithm. The result shows the impact of signature length on performance. Figure 7. This is disaggregation accuracy metrics for ILDACP with a long signature (a week data) and a short signature (an operating duration data). From top: (a) F-score; (b) PCE; and, (c) R2.

Conclusions and Further Work
In this paper, ILDACP, an appliance consumption pattern based load disaggregation approach is proposed. The approach, utilizing low sampling data, clusters the power consumption and labels the highest contribution appliance, and the power estimation approach based on consumption pattern utilizing SSDTW is given. We tested the proposed algorithm on the data from AMPds dataset and compared it with the literature. The results demonstrate that the appliances can be distinguished according their contribution to total consumption and their own consumption pattern without extra equipment being installment. The proposed ILDACP has better performance on F-score, PCE and R2 metrics than those that are presented in other studies, and the algorithm has the advantage of quick execution, particularly for multi-states appliance when compared with FHMM.
The proposed ILDACP algorithm in this paper has a limitation. It can not cluster normally-open appliances. When the number of the appliances contributing to the total power is more than 1, not all the normally-open appliances can be identified. In addition, the identification performances of lower contribution appliances are affected by the estimation performance of higher contribution appliances. Thus, further study will concentrate on improving the estimation performance of appliances to enhance the rate of appliances identification.