1. Introduction
Swarm optimization techniques have displayed highly effective tracking of the optimal solutions in various applications. These techniques send searching agents to determine the values of fitness functions and use this information to move these agents toward the optimal value. The first metaheuristic technique was proposed by Tillman (1969) [
1]. Particle swarm optimization (PSO) is one of the most popular metaheuristic optimization techniques of the last two decades, owing to its simplicity and reliability, with its usage increasing every day [
2]. The PSO technique introduced by Kennedy and Eberhart (1995) [
3] is inspired by the behavior of the flocks of fish, birds, swarms, and shoals searching for food, and it is used to determine the optimal solutions for multi-dimensional problems. This technique uses several particles to search for the optimal solution in the search space of the optimization problem. In the consecutive iterations (movements), the PSO collects the information gained from the particles to guide them in the next movement to the global optima. The new movement of each particle depends on the experience gained from the previous movements, the information gained from the best position of the particle itself (cognitive or self-experience), and the information gained from the global optimum (social experience). The confidence of capturing the global peak and the convergence speed are highly affected by the choice of PSO control parameters (acceleration parameters cl and
cg, and inertia weight
ω) that are affected considerably by the fitness function. The equations governing the performance of the PSO technique are expressed as shown in (1) and (2) [
4]. The acceleration parameters cl and cg are also called the self-confidence and the swarm-confidence parameters, respectively. Increasing the value of
cg affects the attraction of particles toward the best individual. Additionally, increasing the value of cl enhances the self-confidence search and vice versa. The inertia weight
ω is used to enhance the stability of the particles, and its value affects the performance of the PSO searching behavior such that a high value of
ω enhances the social search and reduces the cognitive search, and vice versa. The first usage of the
ω in PSO was reported in [
4]. The definitions of these symbols are listed in the list of symbols shown in the Abbreviations.
The performance of the PSO in its journey to capture the global optima is governed by the values of
ω,
cl, and
cg. While evaluating the performance of the PSO, the premature convergence rate (
PCR) and the speed of convergence are the major concerns. The
PCR is used to measure the number of times the PSO failed to capture the global optima or was trapped in one of the local peaks divided by the total number of attempts, which can be obtained from (3). The convergence time consumed to reach the final convergence is proportional to the number of iterations
N, multiplied by
SS, as shown in Equation (4). The factor
NSS is used to count the number of attempts to hit the fitness function, through the optimization process, which can represent the convergence time.
where
NPCR is the number of occurrences of premature convergence and
Nav is the total number of experimental occurrences.
The purpose of any strategy used to modify the performance of the PSO is to reduce the two factors
PCR and
NSS. These two factors are such that for a low
PCR, a large
NSS is expected and vice versa. These two factors are vital to be minimized, especially in online applications where the confidence and the convergence time are crucial issues and the focus of this study. Many strategies have been suggested in the literature to minimize these two factors. There are two major modification strategies, the first one is the mutation of the particles’ positions [
5,
6,
7] and the second one is the tuning of PSO control parameters (
ω,
cl, and
cg) [
8,
9,
10,
11,
12,
13,
14,
15]. Some researchers used these two improvement strategies together to improve the performance of PSO [
16,
17]. The mutation strategy of the PSO changes the position of the particles based on many stochastic strategies without changing the velocity of the particles. Adjusting the next movement helps the particles to escape from convergence at one of the local optimal solutions. An adaptive mutation strategy was introduced in [
18] to adjust the particle movement distance automatically. A Gaussian mutation algorithm (GPSO) was introduced in [
6] that uses neighbor heuristics and the Gaussian cloud learning PSO algorithm. Cauchy mutation strategy uses a scaling factor on the Cauchy mutation to control the distance the particle moves [
7]. A detailed review with the evaluation of the mutation strategies is introduced in [
5]. The mutation strategies slightly improve the premature convergence rate; however, they increase the convergence time and add complexity to the PSO strategy. Therefore, they have not been discussed further in this study.
The second improvement in the PSO is achieved by fine-tuning the PSO control parameters
ω,
cl, and
cg, which considerably improves the performance of the PSO without adding extra complexity to the conventional PSO technique. Numerous studies have introduced different strategies to estimate the best values of the PSO control parameters [
8,
9,
10,
11,
12,
13,
14,
15]. Most of these strategies include tuning these parameters to improve the performance of the PSO using the trial-and-error mechanism or using the empirical formulas. Few strategies have shown successful results in certain applications; however, they have failed in some other applications. Thus, there is a need for fine-tuning the PSO control parameters for different applications. Two strategies were used for this purpose, the first one depends on using fixed values of the PSO control parameters, which can be determined using the different strategies suggested in [
8,
9,
10,
11,
12,
13,
14,
15,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29], the other strategy is called the online strategy, where the values of PSO control parameters are changing during the execution of the code. Fixed control parameters are fixed during the entire iterations of the searching space. Therefore, these PSO control parameters should be known before running the PSO code to search for the optimal solution. Most of these studies have used the recommended values of these parameters based on the previous studies or after fine-tuning these parameters to be more effective in a certain application. Some researchers introduced empirical formulas to assist in choosing the PSO control parameters [
16,
19]. Some studies introduced a mathematical derivation for obtaining the optimal values of the PSO parameters [
20,
21], considering the effects of these parameters on the behavior of the PSO. Kennedy et al. [
3] introduced the first study on the effect of the PSO control parameters values on its searching performance; they recommended the values of
cg,
cl, and ω as 2, 2, and 1, respectively. Another study discussed the effect of
ω and other PSO parameters,
cg and
cl, on the performance of PSO using the trial-and-error mechanism [
30] and concluded that it is beneficial to use the linearly decreasing inertia weight, as will be discussed later. Eberhart [
20] introduced a modified strategy considering the relation between the PSO control parameters called the constriction factor, as expressed in (5) and (6). This strategy introduced the values of control parameters that may work well with a certain application; however, they were not suitable for other applications, as shown in the experimental results of this study.
Clerck [
9] concluded that the most suitable value of
ϕ was 4.1, which showed many positive results. Therefore, from (5) and (6),
ω = 0.729, and the author assumed
cg =
cl = 1.49445 [
9]. Additionally, an empirical formula was introduced in [
16] to examine the performance of the PSO search with the varying PSO control parameters. The main inference from this study was that the balance between the acceleration parameters,
cg and
cl, does influence the regions of the parameter space that leads to approximately optimal performance. The relation between
cg,
cl, and
ω is defined in (5). Additionally, this strategy introduced a relation between
ω and (
cg +
cl); however, the deterministic values of these parameters that can fit with all optimization problems were not introduced. It was checked with the optimal values of control parameters that show the highest performance; however, it was not compatible with this condition, as shown in [
16].
Additional empirical formulas that can assist in determining or introducing the boundary values of the PSO control parameters were introduced in [
10,
17,
22,
23]. Additionally, all these empirical formulas were tested, and it was found that they might be suitable for a certain application, but not suitable for all optimization problems. The authors of [
10] recommended the values
ω = 0.715 and
cg =
cl = 1.7, and concluded that the most suitable values of the PSO control parameters depended on the experimental findings. Nevertheless, this strategy was tested, and it was found that it was not suitable for all the optimization problems, as shown in the results of this study. Most of the recommended and popular strategies estimating the control parameters [
8,
9,
10,
11,
12,
13,
14,
15,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29] were tested with the final recommendations of this study. This study concludes that all these strategies may work well for a certain application; however, they will not work well in all the optimization problems.
Another strategy is the online strategy; it changes the values of the PSO parameters during the search progress to enhance the social search at the beginning of the search operation to capture the global best (GB) and not fall in one of the local best (LB). Additionally, it enhances the cognitive search to capture the GB accurately and with the least oscillations around it [
31]. Most of the online PSO parameter variations were examined and compared in [
32,
33]. An online strategy can be subclassified into two types, namely, the dynamic strategies [
30,
34,
35,
36] and the adaptive strategies [
32]. A dynamic strategy uses certain formulas to change the values of the PSO parameters with iterations. The dynamic strategy enhances the social search at the beginning of the iterations by increasing the values of the inertia weight parameter. Subsequently, it enhances the cognitive search by reducing the values of the inertia weight parameter with increasing the number of iterations. Meanwhile, the adaptive strategy adapts the PSO control parameters, depending on the progress achieved during the search based on the online results from the search progress. Reference [
37] introduced a formula for dynamic variation equations for the acceleration parameters besides the inertia weight. This strategy requires the introduction of optimal dynamic equations for PSO control parameters.
Based on the previous discussion, it was concluded that the performance of PSO techniques is highly affected by the values of PSO control parameters, especially in online applications where the confidence of capturing the GB and the convergence time are the crucial factors. The previous strategies used recommended or tuned values of PSO control parameters.
The proposed strategy introduced in this study focuses on the determination of the optimal fixed control parameters, and therefore, the dynamic variation in the PSO control parameters has not be further discussed. This is a pioneer study that has introduced a strategy to determine the optimal PSO control parameters in the metaheuristic techniques for minimum PCR and the shortest convergence time that suits all the applications. This new proposed strategy uses two nested PSO loops and is called NESTPSO. The inner one is to get the optimal solution of the fitness function and the outer one optimizes the PSO control parameters of the inner loop to get the lowest PCR and NSS for the inner loop. Thus, the control parameters of the inner PSO are used as optimization variables in the outer PSO loop. The fitness function to be minimized in the outer loop is a multiobjective function containing the PCR and the NSS of the inner PSO loop. The stunning results obtained from using the NESTPSO in the optimization of many benchmark functions with different levels of complexity and the real-world application show a substantial reduction in convergence time and PCR compared to 10 state-of-the-art strategies. This improvement gained from NESTPSO allows the use of the PSO in the online applications that need very fast and reliable convergence, such as the maximum power point tracker (MPPT) of the PV systems. Moreover, NESTPSO can determine the optimal swarm size for optimal optimization performance. The author has ambition in this strategy to open a new way of optimally determining the control parameters of all swarm optimization techniques in the engineering optimization field.
The rest of the paper is designed thus:
Section 2 explains the proposed strategy and its logic.
Section 3 introduces the experimental results of the proposed strategy compared to the state-of-the-art strategies with four benchmark mathematical functions.
Section 4 shows the application of NESTPSO as an MPPT of PV energy system compared to state-of-the-art strategies.
Section 5 shows the conclusions of the study and introduced future work.
2. Proposed Strategy
The concept proposed in this study can be applied to all the PSO parameter estimation strategies, where it can be used with fixed PSO parameters, dynamic PSO, and adaptive PSO parameter variations. Moreover, this strategy can be used to determine the optimal parameters for all metaheuristic techniques. The proposed strategy for PSO control parameter (
ω,
cl, and
cg) determination is called the nested PSO (NESTPSO). The term nested PSO has been introduced in many researches [
38,
39,
40,
41,
42,
43,
44] to handle certain functions. However, it has been used in this paper to determine the control parameters of PSO or any other metaheuristic techniques. All the previous studies depended on non-autonomous strategies to estimate the control parameters of the PSO. Two nested PSO searching loops are used, where the inner PSO loop contains the fitness function required to be optimized. The outer PSO loop uses the inner PSO as a fitness function to minimize the
PCR and
NSS. The PSO parameters of the inner loop (
ωi,
cli, and
cgi) and swarm size (
SSi) are used as the variables to be optimized in the outer loop. The outer PSO loop control parameters’ values are given in [
20], where
ωe = 0.729, and
cle =
cge = 1.49445. The swarm size of the outer loop is chosen to be equal to 50 particles. A block diagram showing the logic used to determine the optimal values of control parameters in the NESTPSO is shown in
Figure 1 and
Figure 2 for the outer and inner PSO loops, respectively. At the beginning of the iteration process, the outer PSO loop initiated random values for the control parameters and the swarm size of the inner PSO loop. These values are applied to the inner PSO loop to minimize the benchmark mathematical functions used in this study. To avoid the effect of the random nature inherent in the inner PSO loop, the function is minimized for a certain number of iterations,
Nav, to obtain the average results. After performing
Nav iterations for the inner loop, the times the inner loop is trapped in the local optima are counted as a variable
NPCR and the
PCR is determined from (3). The number of average iterations in the inner loop,
Ni, is determined and used to determine the average value of
NSS, as shown in (4). The multi-objective function is determined in terms of
PCR and
NSS, as shown in (8), to get the optimal PSO parameters of the inner function for minimum
PCR and
NSS. These two parameters displayed opposite performance, which means to get minimum
PCR,
NSS had to be increased, and vice versa. Therefore, the multi-objective function shown in (8) is introduced to achieve a trade-off between these two factors.
where
M is a weighting value to be multiplied with the
PCR to express the importance of
PCR compared to the
NSS. A detailed study to determine the value of
M is shown in the experimental results.
Minimizing the objective function,
F in the outer PSO loop guaranteed optimal PSO control parameters and swarm size of the inner loop for minimum
PCR and
NSS. The optimal values of the control parameters of the inner loop are obtained as the optimal solutions for the outer loop. The detailed pseudo-code explaining this new strategy (NESTPSO) for obtaining the optimal values of the PSO control parameters is shown in
Figure 3 and
Figure 4 for the outer and inner loops, respectively. It is clear that the control parameters and the swarm size of the inner PSO loop are fed from the outer PSO loop as optimized variables. The concept of using the NESTPSO in the determination of the parameters of metaheuristic techniques has not been reported in the literature before. The proposed strategy can be used as an on-shelf optimal parameter estimation for any metaheuristic technique, which will assist researchers and designers to use their proposed metaheuristic techniques with optimal performance. This new strategy ensures fast and reliable convergence for any fitness function used with any metaheuristic technique. The proposed strategy will open a new way for the optimal determination of metaheuristic techniques parameters estimation and other applications.
4. Real-World Application
The MPPT of the PV system under partial shading conditions was the motive for developing the new NESTED PSO technique. The PV system shown in
Figure 18 is showing PV arrays having five series groups of PV modules, connected to boost converter, and three-phase pulse width modulation (PWM) inverter to be interconnected with the electric utility. Each group of the PV array contains 300 modules placed in 60 parallel branches with five modules in series in each branch. The irradiance on each group is assumed to be the same within the modules of each group; meanwhile, each group is exposed to different irradiance than the others. The inductance and capacitance of the boost converter are
L = 0.5 mH and
C = 200
μF. The PV module used in this simulation is (Sunperfect Solar CRM185S156P-54) [
46], and its specifications are that maximum power per module is 185.22 W and open-circuit voltage and short circuit currents are 32.2 V and 7.89 A, respectively.
The relation between the PV power from the PV arrays and the duty ratio of the boost converter is shown in
Figure 19 for uniform irradiance and partial shading conditions (PSC). For uniform irradiance as shown in SP0 of
Figure 19, there is only one peak in the P-V characteristics of PV array. Meanwhile, in the case of PSC, many peaks are generated in the P-V characteristics of the PV array, as shown in SP1-SP3 of
Figure 18. Shading patterns based on PSC (SP1-SP3) are having one global peak (GP) and many local peaks (LPs) in each curve. A conventional technique like hill-climbing [
47] or perturb and observe [
48] are effective in tracking the MPPT of the PV system in uniform irradiance, because there is only one peak. Meanwhile, these techniques may stick at one of the LPs in the case of PSC. For this reason, swarm techniques like the PSO have been used as an MPPT of the PV systems [
49,
50,
51,
52,
53,
54,
55,
56,
57,
58,
59]. Although these techniques, especially the PSO, showed great improvement; meanwhile, they are suffering from two shortcomings, which are the sluggish convergence and premature convergence possibilities. The main reason for these two shortcomings was the improper selection of the PSO control parameters, which was the main motive to propose a new technique to determine the optimal values of these parameters. The two shortcomings can be measured using the
NSS and
PCR. The actual convergence rate of the boost converter is equal to the value of
NSS times the sampling time or switching signal period
tS. The sampling period is chosen in this study to be 0.05 s. The PV system is simulated in Simulink, and the Matlab code of the PSO is simulated in Matlab code. The simulation is carried out for the PV system shown in
Figure 18 1000 times to avoid the random nature of PSO. The swarm size is selected to be equal to the maximum number of peaks in the P-V characteristics, which is recommended in the literature [
46,
50]. For this reason, the swarm size is chosen to be equal to five. Random initialization for the values of duty ratios of boost converter prolongs the convergence rate and increases the value of
PCR, and for this reason, the initialization of duty ratios can be obtained from (14). As an example, if
SS = 5, then the initial values of duty ratios are [0.166 0.333 0.5 0.667 0.833]. The boundaries for the inner loop variables (duty ratio of boost converter) are set between 0.02 to 0.98. Regarding the variables of the outer PSO loop variables that will be used as input to the inner PSO loop, the boundaries of these PSO control parameters are selected as the same for the benchmark function.
where,
k is the counter representing the particles of the swarm,
k = 1, 2, …
SS, and
SS is the swarm size.
The simulation is performed for the same strategies shown in
Table 5 compared to the results obtained from NESTPSO, and the results are shown in
Table 6. The multiobjective function is as shown in (8), where
M is chosen to be equal to 1000. It is clear from the results obtained that the
PCR is equal to zero for all strategies under study thanks to initialization from Equation (14), and the evaluation of these strategies will be based on the convergence time
tC. It is clear from the results shown in
Table 6 that the longest convergence time is 15.0175 s for S3 [
10] strategy. Meanwhile, the shortest convergence time is 5.171175 s for S8 [
14] strategy. The simulation used to determine the optimal PSO control parameter values using the NESTPSO is started in the beginning using the same logic discussed above. The values of the control parameter obtained from the NESTPSO are used online to see the convergence time for online control where random radiations are chosen for the 5 PV module groups are used. The convergence time with the NESTPSO strategy is 2.7672 s, which is less than half the convergence time of the best state-of-the-art strategy shown in
Table 6. This reduction in convergence time shows the superiority of using the NESTPSO in many online optimization applications where the fast response of this strategy allows the PSO to work effectively with the fast-changing weather conditions.
To show the superiority of performance of the NESTPSO in MPPT of the PV system, it will be compared to the longest convergence (S3 [
10]) and shortest convergence (S8 [
14]) time strategies.
Figure 20 shows the performance of the PV system with the longest convergence time (S3 [
10]) state-of-the-art strategy. It is clear from this figure that the PSO captured the GP after 15.02 s convergence time.
Figure 21 shows the performance of the PV system with the shortest convergence time (S8 [
14]) state-of-the-art strategy. It is clear from this figure that the PSO captured the GP after 5.17 s convergence time.
Figure 22 shows the performance of the PV system with the control parameters obtained from NESTPSO. It is clear from this figure that the NESTPSO strategy captured the GP with 2.76 s, which is substantially lower than the convergence time from all state-of-the-art strategies, which proved the superiority of the NESTPSO in determining the control parameters of the PSO when it is used as an MPPT of the PV energy systems. This reduction in convergence time will enable the PSO and other swarm optimization techniques to work in online tracking of MPPT with very fast performance.