Abstract— In recent years, research of optimal algorithms for III) and our effective hybrid algorithm GA-PSO for ANN
short-term load forecasting has become popular. Optimal training (Part IV). The conclusion will be made clear in Part V.
algorithms can improve forecast results in two main directions:
precision and speed of convergence. To achieve both of these goals, II. METHODOLOGY OF SHORT-TERM LOAD FORECASTING
researchers often use a combination of different algorithms. This
paper describes a new combination of two optimal algorithms: A. Selecting the model of STLF
Genetic Algorithm (GA) and Particle Swarm Optimization (PSO). This research selects the model described in [12]. This
The forecasting of the 24-hour daily-load on the normal working model includes three independent parts: The maximum load
day of the SPC-Southern Power Corporation (a big local Vietnam power (peak load) forecasting, the minimum load power (valley
Company) showed a significant improvement in the error as well load) forecasting and the identified day types. The overview of
as the speed of convergence with several selected days. In the most this model is showed in the following figure:
accurate case, the average error of prediction reaches 1.15% while
the biggest error is 3.74% and the smallest is 0.02%
I. INTRODUCTION
In recent years, research of optimal algorithms for STLF has
become popular. In particular, the GA and PSO used to be
applied separately like a training method for the Artificial
Neural Network. The GA integration on STLF can be find in
many publications, as in [1]–[7]. In these articles, the authors
selected the most suitable parameters of GA to improve the
result’s accuracy. While the GA focus on improving accuracy,
the PSO makes training faster[8]. In other hand, the accuracy is
affected by different parameters and one of which is the method Fig. 1. The overview of STLF model
of combination of algorithms. The combined method is
described clearly like in [9][10]. The authors in [9] implemented Caused by characteristics of SPC’s Load, we classify the
a study using GA-PSO to solve a non-linear optimization hourly load pattern types into 8 groups: 5 working day groups
problem. With this method, the authors used GA to optimize (from Monday to Friday), 2 weekend groups (Saturday and
each individual. Accordingly, the GA must be implemented Sunday), 1 holidays (or special-event day) group. The evidence
continuously with both crossover and mutation operations. This of load’s characteristics can be clearly seen in the case of one
will greatly increase the number of steps, thus, leading to the week on the figure 2 (from 29/8/2016 to 3/9/2016). This case
run-time increasing. With the same inconvenience about the includes a holiday (Friday 2/9 is the Vietnam Nation day). What
run-time, the authors in [11] also use hybrid algorithms GA- is striking this figure is the difference between 3 groups:
PSO, in which GA executes repeatedly. So, this paper describes working days, weekend and holidays.
an effective method that GA is implemented only one time.
Continuously, this work will provide an overview of the STLF
methodology (Part II), the input data and materials using (Part
Tpmax- Tpmax-
Day’s Tpmax Ppmax-1 Ppmax-7
Date 1 7 o Encryption
4500 Notation o o C MW MW
C C
Monday,(29/8/2016) Tuesday,(30/8/2016) Wednesday, (31/8/2016)
Thusday,(01/9/2016) Friday,(2/9/2016) Saturday,(3/9/2016) Saturday 22/10/2016 32 33 32 8020 7874 0 0 0 0 0 0 1 0
Sunday,(4/9/2016) (Daily,hour)
4000 Sunday 23/10/2016 32 33 33 7569 6248 0 0 0 0 0 0 0 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Monday 24/10/2016 33 32 31 6113 8007 0 1 0 0 0 0 0 0
Tuesday 25/10/2016 31 31 30 7961 8115 0 0 1 0 0 0 0 0
Wednesday 26/10/2016 30 32 33 7873 7873 0 0 0 1 0 0 0 0
Thursday 27/10/2016 33 30 34 8014 7935 0 0 0 0 1 0 0 0
Fig. 2. The daily load of one week on August 2016 Friday 28/10/2016 34 32 33 8184 8020 0 0 0 0 0 1 0 0
Saturday 29/10/2016 33 32 33 8031 7569 0 0 0 0 0 0 1 0
Sunday 30/10/2016 33 33 31 7505 6113 0 0 0 0 0 0 0 1
B. Calculating the 24h hourly load forecasting from peak Monday 31/10/2016 31 31 32 6164 7961 0 1 0 0 0 0 0 0
load, valley load and load pattern Tuesday 01/11/2016 32 30 32 7775 7873 0 0 1 0 0 0 0 0
Wednesday 02/11/2016 32 33 32 7926 8014 0 0 0 1 0 0 0 0
The peak load and the valley load will be forecasted firstly Thursday 03/11/2016 32 34 30 7950 8184 0 0 0 0 1 0 0 0
like description in the Part III and the Part IV. Friday
Saturday
04/11/2016
05/11/2016
30
29
33
33
29
27
7320
7725
8031
7505
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
Sunday 06/11/2016 27 31 28 7311 6164 0 0 0 0 0 0 0 1
We use two following equations to calculate 24 hours daily Monday 07/11/2016 28 32 34 5953 7775 0 1 0 0 0 0 0 0
load: Tuesday
Wednesday
08/11/2016
09/11/2016
34
32
32
32
32
33
7725
7774
7926
7950
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
%& '%()&* Thursday 10/11/2016 33 30 34 8264 7320 0 0 0 0 1 0 0 0
𝑃"# = (1) Friday 11/11/2016 34 29 34 8109 7725 0 0 0 0 0 1 0 0
%()+, '%()&* Saturday 12/11/2016 34 27 34 7976 7311 0 0 0 0 0 0 1 0
Sunday 13/11/2016 34 28 34 7828 5953 0 0 0 0 0 0 0 1
𝑃# = 𝑃-.#" − (𝑃-.12 − 𝑃-.#" )×𝑃"# (2) Monday 14/11/2016 34 34 35 7725 7725 0 1 0 0 0 0 0 0
Tuesday 15/11/2016 35 32 34 8052 7774 0 0 1 0 0 0 0 0
Wednesday 16/11/2016 34 33 35 8382 8264 0 0 0 1 0 0 0 0
Where: Thursday 17/11/2016 35 34 33 8290 8109 0 0 0 0 1 0 0 0
Friday 18/11/2016 33 34 33 8197 7976 0 0 0 0 0 1 0 0
• Pni: Normalized load for hour I (this normalization
increases the execution speed of algorithms)
TABLE II. THE INPUT DATA FOR VALLEY LOAD FORECASTING
• Ppmax, Ppmin: Real average Peak load and valley load
of past days which is in the same group with the Day’s
Date
Tpmin-1
o
Tpmin-7
o
Tpmin
o
Ppmin-1 Ppmin-7
Encryption
forecast day (the number of similar days is 5 by Notation C C C MW MW
• Pfmax, Pfmin: Peak load and valley load result Friday 28/10/2016 25 24 24 6088 6052 0 0 0 0 0 1 0 0
Saturday 29/10/2016 24 25 24 6031 5775 0 0 0 0 0 0 1 0
Sunday 30/10/2016 24 24 24 5256 5135 0 0 0 0 0 0 0 1
Monday 31/10/2016 24 24 24 4966 5299 0 1 0 0 0 0 0 0
Tuesday 01/11/2016 24 24 23 5210 5961 0 0 1 0 0 0 0 0
III. PREPARE INPUT DATA AND MATERIALS Wednesday 02/11/2016 23 25 24 5919 5989 0 0 0 1 0 0 0 0
This paper explores a large input data of a Vietnam big local Thursday 03/11/2016 24 25 25 5980 6088 0 0 0 0 1 0 0 0
Friday 04/11/2016 25 24 24 5830 6031 0 0 0 0 0 1 0 0
power company (SPC). In this section, the datasheet stopped on Saturday 05/11/2016 24 24 24 5984 5256 0 0 0 0 0 0 1 0
Nov. 18, 2016 and was required to forecast a daily power load Sunday 06/11/2016 24 24 24 5734 4966 0 0 0 0 0 0 0 1
of Nov. 19. We will further forecast on Nov. 16 (not holidays) Monday 07/11/2016 24 24 25 5005 5210 0 1 0 0 0 0 0 0
Tuesday 08/11/2016 25 23 25 5984 5919 0 0 1 0 0 0 0 0
to confirm the accuracy of forecasting methods. All results are Wednesday 09/11/2016 25 24 24 5812 5980 0 0 0 1 0 0 0 0
compared and discussed. As the same implementation, we Thursday 10/11/2016 24 25 25 6006 5830 0 0 0 0 1 0 0 0
thoroughly describe the input data for Nov. 19, 2016 (just giving Friday 11/11/2016 25 24 25 6104 5984 0 0 0 0 0 1 0 0
Saturday 12/11/2016 25 24 25 6125 5734 0 0 0 0 0 0 1 0
the result of Nov.16, 2016 to compare with). The daily high Sunday 13/11/2016 25 24 25 6109 5005 0 0 0 0 0 0 0 1
temperature will be employed as the weather parameters for Monday 14/11/2016 25 25 25 5984 5984 0 1 0 0 0 0 0 0
peak load and the daily low temperature for valley load. The Tuesday 15/11/2016 25 25 26 5270 5812 0 0 1 0 0 0 0 0
Wednesday 16/11/2016 26 24 25 6358 6006 0 0 0 1 0 0 0 0
temperature variables of all past days and forecast day are Thursday 17/11/2016 25 25 26 6387 6104 0 0 0 0 1 0 0 0
collected from the public webpage “weather.com”. Note that the Friday 18/11/2016 26 25 26 6283 6125 0 0 0 0 0 1 0 0
Saturday 19/11/2016 26 25 26 5830 6109 0 0 0 0 0 0 1 0 𝑉#678 = 𝑋× 𝑉#6 + 𝐶8 ×𝑅8 × 𝑃#6 − 𝑥#6 + 𝐶= ×𝑅= × 𝐺 6 − 𝑥#6
(4)
𝑥#678 = 𝑥#6 + 𝑉#678
Where:
Note that the past temperatures are always real values but
which of current day is predicted value. =
- 𝑋= :
constriction
factor
='A' AB 'CA
C. Materials for forecasting
- 𝜑 = 𝐶8 + 𝐶= , 𝜑 > 4
We use the MATLAB version 2014 with ANN toolbox to
implement the STLF. One Macbook Pro with processor Intel After testing, we decided to use the basic PSO in our hybrid
Core i7 2 GHz, 8 GB memory 1600 MHz DDR3 is exploited to Algorithm.
ensure the execute speed.
C. The used hybrid Algorithm GA-PSO
IV. USING EFFECTIVE HYBRID ALGORITHM GA-PSO FOR In view of all that has been mentioned and tested so far, we
STLF build one effective hybrid algorithm showed as in figure 3.
As explained in the introduction, it is clear that our hybrid This hybrid algorithm is embedded in the ANN structure as
algorithm uses two singles: GA and PSO. However, there are follows:
many improved algorithms from the basic. This part will
describe more details what is the improved algorithm be used - Structure type: feedfoward network
and how it worked together. - Neuron’s Quantity of input layer: 13
A. The GA - Neuron’s Quantity of output layer: 1
The hybrid algorithm uses basic GA with three basic
- Quantity of hidden layers: 1
operators: reproduction, crossover and mutation. In each
operator, it’s very important to choose special parameters. As in - Neuron’s Quantity of hidden layer: 5
[13][14], the encryption is of two kinds: encryption by binary
string and encryption by real value; the crossover consists of - Fitness function in GA-PSO: MSE (Mean Square
two types, which are the crossover-weights, the crossover-nodes Error)
Start Accordingly, the results exceeded the allowable error in three
times (12h, 14h and 22h). However, the average error is still
Error calculation,
Update the velocity,
position of each particles
updating the Pbest, Gbest within the allowable range. So we suggest these results for the
values
Evaluate, align the errors
of each particle
grid operation.
Update the Pbest, Gbest Evaluation
Eliminate incompatible
No values of each particles of adaptation Turning now to the experimental evidence on Nov. 16, 2016,
particles
Initiate velocity, initial Yes the result is not good. The figure 6 and 7 show that it exists
constants, number of
Random crossover to moves
Natural evolution of each
particle
weak-points of the hybrid algorithm.
generate k new particles No
Stop