Potential-Based Differential Evolution Algorithm With Joint Adaptation of Parameters and Strategies

In the differential evolution (DE) algorithm, numerous studies have independently performed strategy adaptation and parameter adaptation. However, the strategy and parameters are interrelated in their impact on algorithm performance. It is well known that different problems and evolutionary stages require different appropriate parameters and strategies, but the fact that the same is true for different individuals is ignored. Few studies have focused on the difference in fitness values between two successive generations, which contains substantial evolution information. This study proposes a potential-based DE algorithm with joint adaptation of parameters and strategies (JAPSPDE). In JAPSPDE, a new population classification scheme, a new classification evolution mechanism, and a new joint adaptation mechanism are proposed to circumvent the three abovementioned issues. In the population classification scheme, individuals are divided into potential and unpotential individuals according to the improvement in fitness values between two generations. A classification evolution mechanism is applied by evolving potential individuals and unpotential individuals in two ways. In addition, a three-dimensional probability array is constructed to achieve joint adaptation of parameters and strategies. Finally, after properly combining the above algorithmic components, JAPSPDE can find the most appropriate combination of control parameters and mutation strategies for specific problems, stages, and individuals. The performance of JAPSPDE is evaluated in comparison with five well-known DE algorithms on BBOB2012 and CEC2014 and with six up-to-date evolution algorithms on CEC2014. The comparison results demonstrate the competitive performance of JAPSPDE.

The associate editor coordinating the review of this manuscript and approving it for publication was Fan-Hsun Tseng .
In DE, three elements influence the optimization performance: mutation factor F, crossover rate CR, and mutation strategy. However, these three elements are problem dependent. Different problems and even different stages of the same problem require different appropriate parameters and strategies. Finding the best combination of mutation strategies and parameter values for a specific problem and specific stage is time consuming. Many researchers have proposed adaptive DE variants that automatically adjust the parameters and choose mutation strategies during the evolution process. However, two problems exist in these studies.
First, all individuals are treated equally in these DE variants, without considering the difficulty of achieving improvements in fitness value for different individuals or the differences between individuals. However, differences exist between individuals, and algorithms may achieve better performance by assigning different evolutionary approaches to different individuals. Certain algorithms take the differences in individual fitness values into account and adopt different mutation strategies for different individuals, such as IDE [10]. IDE classifies individuals according to their fitness value and evolves them in different ways. In IDE, individuals are classified as superior and inferior individuals based on their fitness values. Superior individuals adopt two suitable mutation strategies, and inferior individuals adopt two other suitable mutation strategies. However, this approach uses fixed strategies for two types of individuals, which is not a strict adaptive method and does not apply the idea that individuals automatically choose appropriate strategies.
Second, in these versions of the DE algorithm, adaptations of the three evolutionary elements (control parameters F and CR and mutation strategies) are performed independently during evolution. Other algorithms combine the two control parameters and adaptively adjust them, such as EPSDE [11] and ZEPDE [12]. However, during the evolution process, parameters and strategies may also be relevant. For example, for strategy A, it may be suitable for a smaller F value and subsequently a larger CR value, or it may be possible for strategy A to be suitable for larger F values in conjunction with smaller CR values. The three factors interact with each other. However, previous studies do not consider the interrelationship of the three factors.
To solve the aforementioned problems, a potential-based DE algorithm with joint adaptation of parameters and strategies (JAPSPDE) is proposed. In JAPSPDE, a new population classification scheme is designed by classifying individuals into potential and unpotential individuals according to the improvement of the fitness values between two generations. On this basis, a classification evolution mechanism is proposed. Potential individuals and unpotential individuals evolve in two ways. The experience learned from the generation of potential individuals is used to guide future individuals. The generation process of potential individuals is separated into two cases in which they are sourced from previous potential or unpotential individuals. The study results of the two cases are applied to lead the evolution of current potential and unpotential individuals. In addition, a new joint adaptation mechanism is implemented by adapting F, CR and the mutation strategies in a joint manner. Firstly, a variety of different combinations of parameters and mutation strategies are preset. In each generation, the selection probability of each combination is determined by its contribution to the improvement in fitness values when generating potential individuals. This mechanism enables the algorithm to find a promising combination during the evolution process. Moreover, two historical memories that record historical successful probability combinations are introduced to enhance the robustness of the proposed algorithm. Finally, by combining the above algorithmic components, JAPSPDE can find the most appropriate combination of control parameters and mutation strategies for specific problems, stages, and individuals. The performance of this approach is verified via comparisons with several well-known DE variants and evolution algorithms (EAs) on two benchmark sets. The main contributions of this paper can be summarized as the following several points. 1) Potential and unpotential individuals are defined based on the improvement of fitness values. Selecting appropriate control parameters and mutation strategies for individuals with different characteristics is conducive to obtaining better optimization performance. 2) A new joint adaptation mechanism is implemented by adapting F, CR and the mutation strategies in a joint manner. Different combinations of mutation strategies and control parameters are preset, and the probability that each combination will be selected for potential and unpotential individuals in the next evolution is updated according to the degree of improvement of each combination on the fitness values. 3) Historical memories that record historical successful combinations are introduced to enhance the robustness of the proposed algorithm. The remaining article is organized as follows. The original DE is briefly described in Section II. Section III reviews the related works. Section IV elaborates on the basic rationale of JAPSPDE, and Section V tests its performance with extensive experiments. Conclusions are given in Section VI.

II. BASIC DIFFERENTIAL EVOLUTION
In the DE algorithm, NP individuals (NP: population size) with D dimensions (D: number of decision variables), x i = (x i,1 , x i,2 , · · · , x i,j ) (i = 1, 2, . . . , NP, j = 1, 2, . . . , D) search in a parallel manner within the search space. In each evolution of the generation, each individual vector is used once as the target vector. The basic steps of the detailed DE algorithm are described below [1], [13], [14].

A. INITIALIZATION
First, a random initial population is generated and is required to cover the entire searching region, and it is typically generated using a uniformly distributed random function.
In the iterative process of the DE algorithm, the following three steps are repeated: mutation, crossover and selection.

B. MUTATION
After initialization, the mutation operation is performed on every target vector x G i to generate a mutant vector v G i . For example, in the most commonly used mutation strategy (DE/rand/1), a mutant vector is generated by adding a random vector to a weighted differential vector, which represents another two different random vector subtractions: where r 1 , r 2 , r 3 ∈ {1, 2, · · · , NP} are different from each other and are also different from the index i. F is the scaling factor that controls the amplification of the differential vector. VOLUME 8, 2020 For variables that exceed the limit, the following operation should be performed: where x low j and x up j represent the maximum and minimum of the jth dimension, respectively.

C. CROSSOVER
The crossover operation is applied to x G i and v G i to generate a trial vector u G i . The crossover operation exchanges information between x G i and v G i , usually by adopting binomial (bin) or exponential (exp) crossover. The binomial crossover operation is described as follows: where CR is the crossover rate, rand(j) is a random number in [0, 1]. j rand ∈ {1,. . . ,D } ensures that the trial individual is not the same as the target individual.

D. SELECTION
Finally, the better of x G i and u G i is retained in the G + 1 generation. Taking minimization optimization as an example, In each generation, steps B to D are performed until the termination condition is reached.

III. RELATED WORK
In the DE algorithm, the mutation strategy and control parameters are the critical factors for algorithm performance. Numerous research studies have been performed on setting the control parameters and choosing mutation strategies for DE.
Certain works in the literature [15], [16] give empirical guidelines on the settings for F and CR and the selection of the mutation strategy. However, these values are often inconsistent and contradictory because they are obtained based on specific problems. However, the characteristics of most actual problems are unknown, and the process for searching for solutions is changing, which means that the fixed parameter values and mutation strategy cannot satisfy a certain problem and each phase of the evolution process. Therefore, various adaptive parameter control methods and strategy selection schemes have been proposed to adjust the parameters and strategies automatically during the evolution process. For example, Brest et al. [17] proposed a self-adaptive DE known as jDE in which the control parameters are encoded to individuals and determined with uniform distributions. SaDE, as proposed by Qin et al. [18], adopts four mutation strategies for which the selection probabilities are calculated by their own success rates in a learning period. In SaDE, F is adapted with a fixed normal distribution, and CR with respect to each strategy is adapted with a variable normal distribution in which the location parameter is the median of the successful CR values in a learning period with respect to the strategy. JADE [19] designs a new mutation strategy, which is the only strategy used in the algorithm. Similar to SaDE, JADE uses two distributions to generate F and CR (a Cauchy distribution for F and a normal distribution for CR), but both location parameters are updated in JADE as the weighted mean between the old value and the mean (the Lehmer mean for F and arithmetic mean for CR) of the successful values at the previous generation. To improve the robustness of JADE, the SHADE approach proposed by Tanabe and Fukunaga [20] introduces historical memory to store the mean of the successful parameters of each generation. The authors proposed forward L-SHADE [21] to improve the performance of SHADE by adding a population reduction scheme. Different from JADE, SHADE, and L-SHADE with a fixed strategy, another improved version of SHADE, known as SA-SHADE [22], uses five mutation strategies; thus, it adds a memory of successful mutation strategies, and the memory is reset after certain generations. The memory is initialized with random strategies and updated with the most successful strategy in each generation. For each individual, a random strategy is chosen from the memory. Wu et al. [23] proposed MPEDE, which randomly divides the population into three equally small-sized indicator subpopulations and one large-sized reward subpopulation at every generation. MPEDE uses three mutation strategies, which are assigned to three indicator subpopulations, and the best-performing strategy is assigned to the reward subpopulation in a certain generations. The parameter control method of MPEDE is the same as that of JADE. IMPEDE, proposed by Tong et al. [24], improves MPEDE by replacing one mutation strategy and adopting the weighted Lehmer mean strategy in the parameter adaptation process to balance exploration and exploitation. EPSDE, proposed by Mallipeddi et al. [11], has three pools with three mutation strategies, six F values, and nine CR values. A strategy, an F value, and a CR value randomly chosen from three pools are assigned to each initial individual. The successful combination is retained for the next generation and stored in a successful combination pool. The failed individuals are assigned a new strategy and parameters from three pools or the successful combination pool. CoDE, as proposed by Wang et al. [25], applies three sets of combined parameter values and three strategies. For each individual, each strategy and a random parameter setting are used to implement a crossover operation. The selection operator is implemented among the three trial vectors and the target vector. Tang et al. [10] proposed IDE, the parameters and strategy of which are all adapted based on individual difference in fitness values. In IDE, F and CR are generated by two normal distributions with location parameters based on the rank of each individual. Superior and inferior individuals in the former phase and latter phase adopt four strategies. Tian et al. [26] introduced an improved version of IDE known as IDEI by developing a combined mutation strategy that eliminates the need to separate the evolution process into two phases, freeing the algorithm from dividing the population into two categories. Similar to IDE, TSDE [27], proposed by Liu et al., establishes two different strategy pools containing two or three strategies with different characteristics for the former and the latter stages. In addition, TSDE adopts three parameter settings as in CoDE. For each individual, an arbitrary strategy in the corresponding strategy pool, according to its evolution stage, and a random parameter setting are selected to generate the trial vector. Fan and Yan [12] proposed ZEPDE, which divides the zone of parameters into four equal regions. For each region, two control parameters are determined with a Cauchy distribution and a normal distribution, the local parameters of which are based on the weighted mean of the successful parameters in this region. In ZEPDE, the selection probability in the next generation of each mutation strategy is based on the difference between the trial vector and the worst vector fitness values. PKDE, proposed by Fan et al. [28], adapts F with a Cauchy distribution and a local parameter that is gradually decreased during the evolution and adapts CR with a normal distribution and a local parameter that is gradually increased during the evolution to balance convergence and diversity. Mohamed and Suganthan [29] proposed EFADE, which balances convergence and diversity by introducing a triangular strategy and two novel parameter adaptation schemes. Fan et al. [30] proposed a search space reduction mechanism for the DE algorithm by sequentially finding the trust half area of each variable. The selected DE variant is used within the entire trust region found. Although Wu et al. also proposed to optimizing strategies and parameters of differential evolution as a whole (ACODE) [31]. The idea of JAPSPDE is different from ACODE's idea. ACODE uses an ant colony optimization algorithm to adaptively configure mutation strategies, crossover strategies, scaling factors, and crossover factors, which selects mutation strategy, scaling factor value, cross strategy and crossover rate for each individual one by one according to the weight of each component. In the proposed JAPSPDE, different combinations of mutation strategies and control parameters are set in advance, and update the probability that each combination will be selected in the next evolution according to the degree of improvement of each combination on the fitness values. In addition, ACODE does not divide the population and treat all individuals equally. However, the proposed JAPSPDE takes into account the differences between individuals, and divides the individuals in the population into potential and unpotential individuals to evolve separately.

IV. PROPOSED ALGORITHM
In this section, the potential-based DE algorithm with joint adaptation of parameters and strategies (JAPSPDE) is introduced in seven parts. In IV-A, we elaborate the general idea of JASPDE, IV-B introduces initialization, IV-C explains joint adaptation, IV-D presents the parameters and strategy generations, IV-E demonstrates the joint probability update, IV-F demonstrates the historical memory update, and IV-G ends by summarizing the complete processes of JAPSPDE.

A. GENERAL IDEA OF JAPSPDE
We propose JAPSPDE based on the following considerations.
First, the adjustment of parameters and strategies is based on individual differences. We know that different problems and evolutionary stages require different control parameters and mutation strategies. Various studies have been proposed to set parameters and select strategies according to the problem characteristics and evolutionary stages [10], [26], [32]. However, the observation that different individuals also require different parameters and strategies has been ignored. Individual characteristics are often not used in parameter setting and strategy selection.
Individuals with different characteristics need different evolutionary approaches. Only a few algorithms, such as IDE, which assigns different strategies to good and bad individuals classified based on fitness values, have acknowledged this fact. Although certain researchers have observed the individual differences in fitness values, no studies have noted the individual differences in the improvement of fitness valuesindividual potential.
The improvement in fitness values refers to the improvement of fitness values between two generations compared with the parent individual, i.e., f G ( i , which is characterized as individual potential. In our algorithm, all individuals are sorted in descending order by f . The individuals in the first ps × 100% with a larger f ( f = 0) can be treated as potential individuals, while the remainder are treated as unpotential individuals. In each generation, the population is divided into two types based on their improvement of fitness values, potential (abbreviated as P) and unpotential (abbreviated as UP) individuals. Different evolutionary approaches are applied for these two types of individuals.
Second, to find the evolutionary approach (parameter setting and strategy) that can deliver a larger improvement in fitness values for each individual, we study the production process of potential individuals and learn from these previous successful experiences in generations of potential individuals to guide the evolution of future generations. The sources of potential individuals at the current generation (P G ) fall into two categories: potential parent individuals in the previous generation (P G−1 ) and unpotential parent individuals in the previous generation (UP G−1 ). We abbreviate these two cases as P − P and UP − P in the following.
Based on the above two points, we study the evolutionary approaches of P − P and UP − P to guide the evolution of future P and UP individuals, respectively.
In addition, an evolutionary approach that produces larger improvement in fitness values can be considered a more appropriate evolutionary approach, and its selection probability is likely to be increased.
Third, we adapt F, CR, and the mutation strategy in a joint manner. In previous studies, adaptations of the control parameters and mutation strategy are often performed independently, with separate adaptive strategies, adaptive F, and adaptive CR. Certain algorithms combine the two control parameters, such as CoDE [25], EPSDE [11], and ZEPDE [12]. However, in the evolutionary process, the parameters and strategies are also related. For example, for the same strategy, it may be suitable to combine different parameter combinations for different individuals at different stages. For instance, sometimes a strategy requires a large F and a large CR combination, other times a strategy requires a small F and a small CR combination, a large F and a small CR combination or a small F and a large CR combination. The three elements interact with each other. However, previous studies have neglected the relationship among these three factors (control parameter F, control parameter CR, and mutation strategy). Considering the interrelationship among the three factors, our algorithm uses a joint adaptation method for F, CR, and mutation strategies to obtain the best combination of parameters and strategies for each individual in each generation.
Different from the fixed parameter value combinations of CoDE and EPSDE, and different from the only parameter zone combinations of ZEPDE, we divide the parameter interval into several segments and subsequently combine them with mutation strategies. For example, the F interval is divided into A segments, the CR interval is divided into B segments, and C strategies are adopted; thus, there are m = A * B * C combinations of the F interval, CR interval, and strategy. We use an artificial three-dimensional probability distribution array with m = A * B * C elements to represent the joint probability distribution of m combinations. The values of A, B, and C can be determined by the users. For example, when A = B = C = 3, the three-dimensional probability distribution array with m = 27 elements can be shown as in Fig. 1. As fig.1 shows, the three dimensions are F intervals, CR intervals, and strategies. Each cell in the array represents the selection probability of the corresponding combination.
Based on previous discussions and the second point, a combination (an evolutionary approach) that produces a larger improvement in fitness values is considered a more appropriate combination (a more appropriate evolutionary approach), and we increase its selection probability, whether for P or UP. The larger the improvement in fitness values produced by the combination is, the more obvious the superiority of the combination, and the greater its selection probability.
Fourth, to improve the robustness of JAPSPDE, we apply two historical memories, Memory P−jp and Memory UP−jp , to store the joint probabilities of m combinations in each generation for case P-P and case UP-P, respectively. The size of both memories is equal to H. Unlike the memories that store values in SHADE, our memories store vectors/arrays. In SHADE, the value directly selected from the memory is the location parameter of the distribution. In our algorithm, a roulette wheel is applied to randomly select a combination according to the probability distribution array first selected from the memory. The strategy and the location parameters of the distributions are determined by the combination, which is described in detail in section IV-D.

B. INITIALIZATION
We initialize the joint probability of potential and unpotential individuals jp P ∈ R 27 and jp UP ∈ R 27 with 1/27 and set all values in Memory P−jp ∈ R 27×H and Memory UP−jp ∈ R 27×H to jp P and jp UP , respectively, with ps = 0.35 and NP init = 150. In this paper, we adopt the LPSR population reduction scheme used in L-SHADE.
In this paper, the range of F is [0.4, 1]. We divide the suggested range of F into three equal segments of  Table 1. The three mutation strategies adopted in our algorithm are DE/rand-to-p best/bin/1, DE/current-to-p best/bin/1 with the archive, and DE/current/bin/1. We adopt three mutation strategies with different characteristics. The first strategy has a good exploration ability, the second has a good exploitation ability, and the third balances exploration and exploitation.
The initial population is randomly generated.

C. JOINT ADAPTATION
In the first three generations, for each individual, two control parameters are randomly generated in their own ranges. Each strategy in the strategy pool is allocated to individuals with equal probability. From the fourth generation on, joint adaptation is adopted. At first, all combinations are assigned to all individuals with equal probability.
In each generation, for every individual x G i (i = 1, 2, . . . , NP now ), a random index r i is selected from [1, H]. We calculate its improvement of fitness values and judge its category. If it is a potential individual (x G i belongs to P G ), then a random joint probability is selected in Memory P−jp (r i ). If it is an unpotential individual (x G i belongs to UP G ), then a random joint probability is selected in Memory UP−jp (r i ). A roulette wheel is used to select one combination from the m combinations based on the selected joint probability.

D. PARAMETERS AND STRATEGY GENERATION
Once the combination is determined, the F, CR, and strategy are determined as follows.
As the combination of x G i is determined, its F interval, CR interval, and strategy are determined. We use a Cauchy distribution to generate F and a normal distribution to generate CR. A random value from the selected F interval is assigned to the location parameter of the Cauchy distribution. A random value from the selected CR interval is assigned to the location parameter of the normal distribution. Therefore, the newly generated control parameters are likely to be located near the selected location parameters.
The specific process is described as follows. The combination index is The F interval number is Thus, the lower limit and upper limit of the F interval are The location parameter of the Cauchy distribution is randomly generated from this interval The Cauchy distribution is adopted to generate F, If CRflag(i) = 1, then CR G i = 0; otherwise, the CR interval number is cr i = ((C i − 1) mod (9)) div(3) + 1.
In the second case, the lower limit and upper limit of the CR interval are The location parameter of the normal distribution is randomly generated from this interval M CR,i = rand(CR low,i , CR up,i ).
The normal distribution is adopted to generate CR, The mutation strategy number is determined by If st equals 1, then strategy ''DE/rand-to-pbest/bin/1'' is applied. If st equals 2, then strategy ''DE/current/bin/1'' is applied. If st equals 3, then strategy ''DE/current-top best/bin/1 with the archive'' is applied.

E. JOINT PROBABILITY UPDATE
For each individual, we calculate its improvement of fitness values for two consecutive generations, We judge its category (P G or UP G ), and its parent's category (P G−1 or UP G−1 ). If f G (i) is ranked ps × 100% and f G (i) = 0, then the target individual is a potential individual in the current generation (P G ), and if not, then the target individual is an unpotential individual in the current generation (UP G ). If f G−1 (i) is ranked ps × 100% and f G−1 (i) = 0, then the target individual is a potential individual in the previous generation (P G−1 ), and if not, then the target individual is an unpotential individual in the previous generation (UP G−1 ).
If x G i is potential in the Gth generation, we record its used combination number k and check whether its parent individual x G−1 i is potential or unpotential. If x G−1 i belongs to P G−1 , then it is a P-P case. The number of the corresponding combination for the P-P case increases by 1. If x G−1 i belongs to UP G−1 , then it is a UP-P case. The number of the corresponding combination for the UP-P case increases by 1.
The pseudocode of the joint probability update process is presented in Algorithm 1. In each generation, if the situation exists in which the parents of the current potential individual are the previous potential individuals, i.e., the number of P-P is larger than zero (N PP > 0), then k 1 = k 1 + 1, and we update Memory P−jp (:, k 1 ) based on jp P , i.e., Memory P−jp (:, k 1 ) = jp P . If Memory P−CRflag (:, k 1 ) = 1 or max(CR−P) = 0, then Memory P−CRflag (:, k 1 ) = 1.
In each generation, if the situation exists in which the parents of the current potential individuals are the previous unpotential individuals, i.e., the number of UP-P is larger than zero (N UP > 0), then Memory UP−jp (:, k 2 ) is updated as jp UP , i.e., The pseudocode of the historical memories update process is presented in Algorithm 2.

Algorithm 2 Memory Update Algorithm
if sum(N P−P ) > 0, then update Memory P−jp (:, k 1 ) based on jp P :

COMPLETE PROCEDURE OF THE PROPOSED JAPSPDE
The complete pseudocode of JAPSPDE is presented in Algorithm 3.

Initialization phase:
Initialize jp P ∈ R 27   The time complexity of JAPSPDE mainly comes from two aspects: one is the mutation, crossover and selection operations of DE algorithm, and the other is the determination of the joint probabilities and the adaptive adjustment of the population's mutation strategies and control parameters.
In the differential evolution algorithm, the time complexity mainly comes from the number of iterations, the population size NP and the number of decision variables D. Then the time complexity of each iteration is O NP G × D . The time complexity of the second part mainly comes from updating the joint probabilities for potential individuals and unpotential individuals respectively. Then the time complexity of each iteration is O NP G × 27 . Therefore, the time complexity of JAPSPDE is as follows,

A. EXPERIMENT SETTINGS AND STATISTICAL ANALYSIS METHODS
The experimental results are obtained by 30 independent runs. The maximum number of function evaluations (MaxFEs) is set as 10000 * D. The accuracy of the optimization result is 1E-8, i.e., when it is smaller than 1E-8, it can be VOLUME 8, 2020 treated as 0. All experiments are executed under the Windows 10 operating system with MATLAB R2017b.
To perform an effective analysis of the experimental results, two nonparametric statistical methods and three post hoc procedures are selected. The significance level is set to 0.05. The two nonparametric statistical methods are Wilcoxon's rank sum test and Friedman's test. The three post hoc procedures are Bonferroni-Dunn's test, Bonferroni-Holm's procedure, and Hochberg's procedure.
For Wilcoxon's rank sum test, ''+'', ''−'', and ''≈'' indicate that the effect of JAPSPDE is obviously superior to, inferior to, or similar to that of the comparison algorithm, respectively. For Friedman's test, the algorithms with smaller rankings have better performance. For the three post hoc procedures, a significant difference exists between the control and compared algorithms when the p-value is less than 0.05.

B. PERFORMANCE COMPARISON WITH FIVE WELL-KNOWN DES ON BBOB2012
In this experiment, we use 24 BBOB2012 functions with 30D to compare the effect of JAPSPDE with five well-known differential DE algorithms (i.e., jDE, JADE, SaDE, CoDE, and EPSDE).
We note that the experimental data of the five DE algorithms are obtained from [38]. The experimental results (the mean error) of the six algorithms on BBOB2012 with 30D are shown in supplementary Table 13, in which the best solutions of each function are given in bold font.
From Table 13, we observe that for five separable functions (F1 BBOB2012 − F5 BBOB2012 ), JADE performs the best because of the use of a greedy strategy, but JAPSPDE also performs better than the other five opponents. For nine unimodal functions (F6 BBOB2012 − F14 BBOB2012 ), it is obvious that JAPSPDE is the algorithm with the best performance, and it obtains the best solution on F5, F6, F7, F8, F11, F12, F13, and F14. For ten multimodal functions (F15 BBOB2012 − F24 BBOB2012 ), CoDE is the best-performing algorithm due to its excellent exploration capabilities, and JAPSPDE is also superior to the other five algorithms.
As Fig. 2 shows, the winning times of the six algorithms are 4,5,9,11,6, and 14, respectively. JAPSPDE obtains the   greatest number of best results. In addition, Table 2 indicates that JAPSPDE obtains the best ranking among the compared algorithms. Table 3 gives the p-values calculated by three post hoc procedures and indicates that JAPSPDE is significantly better than SaDE, a adaptation method of the F, CR, and strategy.

C. PERFORMANCE COMPARISON WITH FIVE WELL-KNOWN DES ON CEC2014
In this experiment, we use 30 CEC2014 test functions to compare the performance of JAPSPDE with the performance of five well-known DE algorithm variants. For persuasive comparison, we used the same parameters as in the original papers.
Supplementary Tables 14 and 15 show the optimization results of the six algorithms on CEC2014 with 30D and 50D, respectively. At the same time, the comparison results calculated by Wilcoxon's rank sum test of each comparison algorithm and the proposed algorithm for each test function are also shown in Tables 14 and 15, respectively. Table 14 indicates that JAPSPDE performs the best among all the comparison algorithms on CEC2014 with 30D. For unimodal functions, except for the case in which JADE performs better on F1, the experimental results of JAPSPDE are almost superior to all comparison algorithms on all functions. For simple multimodal functions, CoDE and JADE perform better than JAPSPDE. However, the proposed algorithm has better results than jDE, SaDE, and EPSDE. Because CoDE and JADE balance convergence and diversity well, their performance on simple multimodal functions is better than that of other algorithms. For hybrid functions, CoDE does not outperform JAPSPDE on any function except F19. In addition, on other hybrid functions, the optimization results of JAPSPDE are no worse than the results of the other algorithms on any function. For composition functions, the optimization results of jDE, SaDE, JADE, and CoDE cannot exceed those of JAPSPDE in any function. In addition, for the   JAPSPDE and EPSDE performance comparison, JAPSPDE is superior to EPSDE on 2 functions, and EPSDE is better than JAPSPDE on 4 functions.
Similar to the results presented in Table 14, those presented in Table 15 indicate that JAPSPDE achieves the best average performance on CEC2014 with 50D. For unimodal functions, except for the case in which JADE performs better on F1, the experimental results of JAPSPDE are not inferior to those of any algorithm on any function. For simple multimodal functions, CoDE and JADE perform better because of their good balancing ability. However, JAPSPDE has better results than jDE, SaDE, and EPSDE. For hybrid functions, CoDE does not outperform JAPSPDE on any function except F19. In addition, the optimization results of JAPSPDE are almost always the best among all the algorithms on all hybrid functions. For composition functions, the optimization results of jDE, SaDE, JADE, and CoDE do not exceed those of JAPSPDE in any function. In addition, for the JAPSPDE and EPSDE performance comparison, JAPSPDE is better than EPSDE on 2 test functions, and EPSDE is better than JAPSPDE on 5 test functions. Table 4 presents contrasting outcomes calculated by Wilcoxon's rank sum test, which indicate that JAPSPDE outperforms the compared algorithms on most CEC2014 functions. More specifically, with respect to 30D functions, JAPSPDE is significantly superior to jDE, SaDE, JADE, EPSDE, and CoDE in 17, 24, 13, 17, and 10 functions out of 30 functions, respectively, and for the 50D functions,        Table 5 lists the rankings calculated by Friedman's test of the six algorithms on CEC2014 with 30 dimensions and 50 dimensions, indicating that JAPSPDE is the best algorithm for both the 30D and 50D problems. Tables 6 and 7 present the p-values obtained by three post hoc procedures on CEC2014 with 30 dimensions and 50 dimensions, respectively. From Table 6, we note that JAPSPDE significantly outperforms jDE, SaDE, and EPSDE in the 30D problems. Table 7 indicates that JAPSPDE significantly outperforms EPSDE and SaDE in the 50D problems.
In summary, the experimental results of the six algorithms on the 30-dimensional and 50-dimensional CEC2014 benchmark set indicate that JAPSPDE performs better than or at least competitively with the other five well-known DEs.

D. PERFORMANCE COMPARISON WITH SIX LATEST EAS ON CEC2014
In addition, six up-to-date EAs (i.e., IDEI, ETI-ODE, ZEPDE, SHADE, M_PSO_MA and QIAEA) are chosen for comparison with our algorithm on the 30-dimensional CEC2014 benchmark set.
We note that the experimental data of IDEI, ETI-ODE, ZEPDE, SHADE, M_PSO_MA and QIAEA are obtained from the original articles. The experimental results (the mean error) on CEC2014 with 30D are shown in supplementary Table 16, where the best solutions of each function are given in bold font. Table 8 shows the rankings of the seven algorithms according to Friedman's test. From Table 8, we observe that JAPSPDE is the best-performing algorithm among these comparison algorithms. The CEC2014 benchmark set contains three unimodal functions (F1 CEC2014 − F3 CEC2014 ), thirteen simple multimodal functions (F4 CEC2014 − F16 CEC2014 ), six hybrid functions (F17 CEC2014 − F22 CEC2014 ), and eight composition functions (F23 CEC2014 − F30 CEC2014 ). Tables 9-12 show the Friedman's rankings of the seven algorithms, from which we note that JAPSPDE performs better on hybrid and composition functions.

E. EFFECTIVENESS OF JAPSPDE
A 30-D F10 CEC2014 is adopted to verify the effectiveness of the proposed adaptive mechanism. Fig. 3 shows the probability change curves of the dominant combinations for potential individuals and unpotential individuals in the evolution process. It can be seen from Fig. 3 (a) that in the early and middle evolution stages, the 20th and 21st combinations play a leading role in the evolution for potential individuals. In the later evolution stage, the 27th combination played a leading role. Therefore, JAPSPDE has a better exploration ability in the early stage and a better exploitation ability in the later stage. For unpotential individuals, multiple combinations play a leading role in the early and middle evolution stages, while the 7th combination plays a leading role in the later evolution stage. It can be concluded that all individuals cannot be treated equally. Therefore, dividing individuals into potential individuals and unpotential individuals and evolve them separately is necessary.

VI. CONCLUSION
In the DE algorithm, searching for the best combination of control parameters and mutation strategy during evolution is a vital but difficult and time-consuming process. To settle this issue, this study proposes a potential-based DE algorithm with joint adaptation of parameters and strategies (JAPSPDE). In JAPSPDE, individuals are classified into potential and unpotential individuals and are treated differently. To achieve joint adaptation of parameters and strategies, the ranges of the control parameters are divided into several segments, and several mutation strategies combine them into several combinations. The combination that produces more improvement in fitness values has a better chance of being selected in future evolution, which increases the algorithm's exploitation ability. To increase the robustness of the proposed algorithm, two historical memories that record historical successful combination are applied. Therefore, JAPSPDE can balance exploitation ability and exploration ability.
The performance of JAPSPDE is evaluated by comparison with five well-known DE variants on BBOB2012 and CEC2014 and by comparison with six up-to-date evolutionary algorithms on CEC2014. The comparison results prove the competitive performance of JAPSPDE.
For future work, two issues deserve further study. The number of combinations can be adjusted, and the application of JAPSPDE to practical tasks is also an interesting subject. Tables 13-16.