In this section, we introduce the incremental clustering algorithm used for electricity consumption pattern learning. First, we present an overview of the incremental clustering algorithm. Second, we optimize this algorithm by a novel probability strategy in order to improve the incremental clustering performance. Third, several parameters are updated for the following continuous incremental clustering. Finally, we give the generalization of our optimized incremental clustering with the analysis of its asymptotic time complexity.
4.1. Incremental Clustering Algorithm
As presented in
Section 3, the inputs are the existing load patterns
and new daily load curves
, while the output is the updated load patterns
. The main challenge of our problem is how to determine whether to create a new load pattern. As consumer behaviors are complex, it is uncertain that there are any different load patterns in
comparing with
. We cannot conduct a simple clustering by regarding all
as the cluster centers. As a result, a novel incremental clustering algorithm is proposed to intergrade the load patterns of
into
. This model is able to determine whether integrating a load pattern into a
or keeping it as a new load pattern. An illustration of the incremental clustering algorithm is presented in
Figure 3, which contains three phases: load pattern extraction, load pattern intergradation, and load pattern modification. As the example shown in
Figure 3, the set of existing load patterns
, which is extracted from
, contains two load patterns. Then, we extract five new load patterns from new daily load curves
and intergrade them with the two existing load patterns one by one. For the intergration of
, we obtain an existing load pattern and an intergrated load pattern. After five times of load pattern intergradation and one extra load pattern modification, we finally obtain four updated load patterns.
Given a set of existing load patterns and a set of new daily load curves , we describe these phases in detail.
Load pattern extraction. We need to process the new daily load curves
before the load pattern intergradation. A fused load curve clustering algorithm FCCWT [
39], which is our previous work designed specially for daily load curve clustering, is applied to
. Then, we obtain the set of its load patterns
. The corresponding probability of
is
, where
and
.
Load pattern intergradation. Let
denote the result of load pattern intergradation, and
is initialized as
. We combine the
ith load pattern
with all load patterns in
, which is denoted as
. Then, two
K-means clusterings are performed on
with
and
, respectively. We evaluate their clustering results by the Simplified Silhouette Width Criterion (SSWC), which is one variant of Silhouette Width Criterion (SWC) index [
39,
49]. Then, the SSWC values of the clustering results when
and
are denotes as
and
, respectively.
Given
and its clustering result
with the set of corresponding cluster centers
, the SSWC is calculated as the average of the Simplified Silhouette of the individual load pattern
over
.
where
is the distance between
and the center of cluster
, while
is the closest distance between
and the centers of other clusters in
C except for
. They are calculated as follows:
where
and
.
K refers to the parameter of clustering conducted on
. Then, we obtain
and
according to Equations (
2)–(
4). There are two situations when comparing
and
.
(1) implies that the clustering performance of is equal or superior to the performance of . As a result, we do not keep the ith load pattern as a new load pattern, and adopt the set of cluster centers when as the integrating result of .
(2) implies that results in a better clustering performance than does. In that case, we keep the ith load pattern as a new load pattern, and adopt the set of cluster centers when as the integrating result of .
After the above comparison and judgment, the set is reset with the integrating result of . Each over with is integrated gradually according to this procedure. Finally, we obtain the intergraded set .
Load pattern modification. We perform a further modification on the intergraded set
to obtain an optimal incremental clustering result. As the the number of load patterns generally is within the range
[
25,
39], multiple
K-means clusterings are applied to
with
K in the range of 2 to
, where
denotes the number of load patterns in
. The SSWCs of
times clusterings are calculated and compared with each other. Then we select the
K with the largest SSWC as the optimal parameter, and regard the set of cluster centers with the selected optimal
K as our target set of updated load patterns
.
We outline the incremental clustering of
and
in Algorithm 1, including the three phase mentioned above. In Algorithm 1, Line 1 is for load pattern extraction, Lines 2–11 conduct load pattern intergradation, and Lines 12–16 are for load pattern modification.
Algorithm 1: The incremental clustering algorithm |
|
4.2. Optimization via Probability Strategy
Assume is the load patterns extracted directly from the combined set , then is based on the non-incremental clustering of daily load curves. On the other hand, the incremental clustering algorithm shown in Algorithm 1 is based on the fusion of load patterns from both and , which refer to only load patterns. Our purpose is to obtain an that equals or approximates to . However, the simply K-means clustering algorithm with Euclidean distance is not appropriate to achieve this purpose.
It should be considered that the load patterns usually have different probabilities so that we should not treat them equally in the incremental clustering. Thus, an optimized distance measure with probability strategy is proposed for Algorithm 1, in which Euclidean distance measure is replaced with the proposed measure when performing both
K-means clustering and SSWC calculation shown in Equation (
3). It is assumed that this probability strategy can optimize Algorithm 1 to achieve an ideal
. Given a set of load patterns
with the set of corresponding probability
, where
and
N is the number of daily load curves that
A refers to, the optimized distance with probability strategy between
and
is calculated as follows:
where
and
denote the numbers of daily load curves that
and
represent, respectively.
The cluster center
in
K-means clustering with Euclidean distance is calculated as the mean of the objects that contained in the cluster:
where
is the number of
contained in the cluster
. We set the probability of
with
when performing
K-means clustering with the optimized distance. As a result, the optimized distance with probability strategy between
and
is calculated as follows:
Similarly, the calculation of cluster center shown in Equation (
6) should be rewritten as
where
denotes the number of daily load curves that the load pattern
refers to, and
denotes the total number of daily load curves that all
refer to.
4.5. Complexity Analysis
The time complexity of FCCWT is
where
N is the number of daily load curves,
K is the number of clusters and
T is the number of iterations needed until convergence [
39]. The time complexity of
K-means is
while the one of SSWC calculation is
, where
d is the size of dimensions of daily load curves. As the default of maximum
T is usually set as 100, 200, or 300, we assume that all
Ts in Algorithm 1 are the same so that the time complexity can be analyzed more easily. Moreover, we also assume that all
Ks adopt the maximum value 10 due to
.
Based on the above assumptions, the asymptotic time complexities of load pattern extraction, load pattern intergradation and load pattern modification in Algorithm 1 are
,
and
, respectively. Therefore, the asymptotic time complexity of Algorithm 1 is
The time complexity of updating parameters is
so that the asymptotic time complexity of Algorithm 2 is
where
is the time complexity of
t times FCCWT performed on
,
is the time complexity of
t times load pattern intergradation and modification, and
is the time complexity of
t times parameter updating.
As for non-incremental clustering, the time complexity of
t times FCCWT on
over
is
which is sensitive to the size of
t. Similarly, the time complexity of
t times non-incremental clustering algorithm
K-means on the same data is
. Comparing Equation (
15) with the time complexities of two non-incremental clustering algorithms, it is suggested that the incremental clustering saves time and reduces the clustering scale when
t is relatively large.