# A Dynamic Adaptive Weighted Differential Evolutionary Algorithm

Authors: Kaijun Wu; Zhengnan Liu; Ning Ma; Dicong Wang
Journal: Computational Intelligence and Neuroscience
 (2022)

---

## Abstract

This study proposed a dynamic adaptive weighted differential evolution (DAWDE) algorithm to solve the problems of differential evolution (DE) algorithm such as long search time, easy stagnation, and local optimal solution. First, adaptive adjustment strategies of scaling factor and crossover factor are proposed, which are utilized to dynamically balance the global and local search, and avoid premature convergence. Second, an adaptive mutation operator based on population aggregation degree is proposed, which takes population aggregation degree as the amplitude coefficient of the basis vector to determine the influence degree of the optimal individual on the mutation direction. Finally, the Gauss perturbation operator is introduced to generate random disturbance and accelerate premature individuals to jump out of the local optimum. The simulation results show that the DAWDE algorithm can obtain better optimization results and has the characteristics of stronger global optimization ability, faster convergence, higher solution accuracy, and stronger stability compared with other optimization algorithms.


---

## Body

## 1. Introduction

The differential evolution (DE) algorithm is an optimization algorithm based on the theory of modern intelligence [1]. It was first proposed by American scholars Rainer Storn and Kenneth Price in 1995 to solve the Chebyshev inequality [2]. The DE algorithm solves the problem by simulating the biological evolution of the survival of the fittest [3]. Superior to the traditional optimization algorithm such as the method based on calculus [4] and the exhaustive method [5], the DE algorithm uses its unique memory ability to track the current search situation and adjust the search strategy at the same time. It has high robustness and strong global convergence ability and can effectively deal with complex problems that are difficult to be solved by the traditional optimization algorithms. In addition, the DE algorithm is not limited by the nature of the problem, for example, derivatives are not required as auxiliary information and are not constrained by search space constraints (such as continuous differentiability and single peak) [6–9]. It is widely used in constrained optimization calculation, neural network optimization, filter design, etc.In recent years, the DE algorithm is widely used and is also a concern by scholars around the world. Wang et al. [10] proposed a generalized reverse differential evolution algorithm, which introduced acceleration and migration operations in DE. The acceleration operation used gradient information to lead the optimal individual to a better area, and when the dispersion of the population is lower than a certain threshold, the migration operation is used to regenerate new individuals in the vicinity of the optimal individual and replace the old individual, thereby maintaining the diversity of the population and preventing the algorithm from falling into local optimum to a certain extent. Chiou et al. [11] proposed a variable scaling hybrid differential evolution (VSHDE) algorithm, which does not need to select the type of mutation operation, but selects the appropriate mutation operator for DE from a variety of mutation operators in real time to speed up the optimization process of the algorithm. Compared with the random scale factor, the algorithm has a great improvement in performance. Qin et al. [12] proposed the SaDE algorithm to adaptively adjust F and CR based on the experience of early evolution to generate high-quality solutions. Brest et al. [13] proposed a differential evolution (JDE) algorithm for adaptive control parameters and introduced new control parameters to adjust the values of F and CR through a comparative study of numerical benchmark problems. Zhang et al. [14] introduced a new mutation strategy “DE/current-to-pbest” to improve the optimization performance of the algorithm and proposed an adaptive differential evolution (JADE) algorithm with optional external archiving. Hou Ying et al. [15] introduced a dynamic multiobjective differential evolution algorithm, based on the information on evolution progress (DMODE-IEP), which is developed to improve the optimization performance. The information of evolution progress, using the fitness values, is proposed to describe the evolution progress of MODE, and the dynamic adjustment mechanisms of evolution parameter values, mutation strategies, and selection parameter values based on the information on evolution progress are designed to balance the global exploration ability and the local exploitation ability.Aiming at the problems of long search time, easy stagnation, and easy to fall into the local optimal solution of the differential evolution algorithm [16], this study proposes a dynamic adaptive weighted differential evolution (DAWDE) algorithm on the basis of the above several improved algorithms. We select several typical benchmark functions to test [16, 17]. The test results show that the DAWDE algorithm has relatively strong global optimization ability, strong convergence performance, and is not easy to fall into the local optima. The global optimal values obtained are all near or equal to the given optimal value.


## 2. DE Algorithm

The DE algorithm is an algorithm based on group evolution, which can not only memorize the optimal solution of individuals but also has the characteristics of information sharing within the population. It is a method of optimization used in symmetrical optimization problems and also in problems that are not even continuous, and are noisy and change over time [18]. The essence is a greedy genetic algorithm based on actual number coding and with the idea of preserving optimality [19].In the DE algorithm, each population is composed ofNP individuals, which is expressed as follows: X0=x10,x20,…,xNP0, where NP is the population size; each individual is used to represent the solution of the problem, which is expressed as follows: xi0=xi,10,xi,20,…,xi,D0, where D is the dimension of the solution, xi0 is the ith individual in the 0th generation population, and xi,j0 is the jth component of the ith individual in the 0th generation population. The main operation steps of the algorithm are as follows.


### 2.1. Initialization

(1)xi,j0=xi,jmin+rand0,1⋅xi,jmax−xi,jmin,where xi,jmax and xi,jmin represent the upper and lower bounds of the jth dimension optimization, respectively, and rand0,1 represents a random number in the interval 0,1.


### 2.2. Mutation

The DE algorithm realizes individual mutation through the difference strategy, randomly selects two different individuals to scale their vector differences, and performs vector synthesis with the individual to be mutated to generate corresponding mutated intermediate individuals. The most commonly used strategy in mutation operation is DE/rand/1/bin, and the specific expression is as follows:(2)vig+1=xr1g+F⋅xr2g−xr3g,where i≠r1≠r2≠r3, and g is the current iteration number, that is, the gth generation. F is the scaling factor. The smaller the F is, the stronger the local search ability is; the larger the F is, the more it can jump out of the local area.


### 2.3. Crossover

The DE uses the original individualxig and the mutant intermediate individual vig+1 to cross to generate a new individual uig+1, and determines whether the new individual gene is provided by the original individual or the mutant intermediate individual according to whether the conditions are met. The crossover operation is as follows:(3)ui,jg+1=vi,jg+1,if rand0,1≤CRorj=jrandxi,jg,otherwise,where CR is the crossover probability, and jrand is a random integer on 1,D. j=jrand means j is randomly selected so that one gene in uig+1 is contributed by vig+1 to ensure the generation of new individuals, and the rest of the genes are determined by the crossover probability factor CR. The larger CR is, the more vig+1 contributes to uig+1, which is conducive to improving local development capabilities; the smaller CR is, the more xig contributes to uig+1, which is conducive to improving global search capabilities [20].


### 2.4. Selection

The DE algorithm adopts a greedy strategy when selecting operations, and only those with better fitness values are selected for the next generation. The selection operation is as follows:(4)xi,jg+1=ui,jg+1,fui,jg+1<fxi,jgxi,jg,fui,jg+1≥fxi,jg.


## 2.1. Initialization

(1)xi,j0=xi,jmin+rand0,1⋅xi,jmax−xi,jmin,where xi,jmax and xi,jmin represent the upper and lower bounds of the jth dimension optimization, respectively, and rand0,1 represents a random number in the interval 0,1.


## 2.2. Mutation

The DE algorithm realizes individual mutation through the difference strategy, randomly selects two different individuals to scale their vector differences, and performs vector synthesis with the individual to be mutated to generate corresponding mutated intermediate individuals. The most commonly used strategy in mutation operation is DE/rand/1/bin, and the specific expression is as follows:(2)vig+1=xr1g+F⋅xr2g−xr3g,where i≠r1≠r2≠r3, and g is the current iteration number, that is, the gth generation. F is the scaling factor. The smaller the F is, the stronger the local search ability is; the larger the F is, the more it can jump out of the local area.


## 2.3. Crossover

The DE uses the original individualxig and the mutant intermediate individual vig+1 to cross to generate a new individual uig+1, and determines whether the new individual gene is provided by the original individual or the mutant intermediate individual according to whether the conditions are met. The crossover operation is as follows:(3)ui,jg+1=vi,jg+1,if rand0,1≤CRorj=jrandxi,jg,otherwise,where CR is the crossover probability, and jrand is a random integer on 1,D. j=jrand means j is randomly selected so that one gene in uig+1 is contributed by vig+1 to ensure the generation of new individuals, and the rest of the genes are determined by the crossover probability factor CR. The larger CR is, the more vig+1 contributes to uig+1, which is conducive to improving local development capabilities; the smaller CR is, the more xig contributes to uig+1, which is conducive to improving global search capabilities [20].


## 2.4. Selection

The DE algorithm adopts a greedy strategy when selecting operations, and only those with better fitness values are selected for the next generation. The selection operation is as follows:(4)xi,jg+1=ui,jg+1,fui,jg+1<fxi,jgxi,jg,fui,jg+1≥fxi,jg.


## 3. Dynamic Adaptive Weighted Differential Evolution (DAWDE) Algorithm

### 3.1. Scale FactorF Adaptive Adjustment Strategy

According to formula (2), the scaling factor F in the mutation operation is an important parameter to control the diversity and convergence of the population, and it determines the magnification ratio of the deviation vector. The smaller the value of F is, the smaller the group difference is, which will speed up the algorithm convergence and also lead to the local convergence of the algorithm, while the larger the value F is, it will help the algorithm to jump out of the local optimal solution, but it will reduce the convergence speed. In order to balance the local and global search and maintain a fast convergence rate, an adaptive adjustment strategy is proposed as follows:(5)F=Fmax−Fmax−FmingG2,where Fmax is the maximum value of the scaling factor, which is 0.9, and Fmin is the minimum value of the scaling factor, which is 0.2, g is the current iteration number, that is, the gth generation, and G is the maximum iteration number.


### 3.2. Dynamic Adjustment Strategy of Crossover Probability FactorCR

The crossover probability factorCR determines whether the new individual gene is provided by the original individual or the mutant intermediate individual, that is, the degree of participation of each dimension of individual parameters in the crossover. The smaller the CR is, the better individuals are retained, and the faster the algorithm converges, but it is easy to fall into the local optimum value. The larger CR is, the higher the diversity of the population is, and the better the global search ability is, but the convergence speed of the algorithm will decrease accordingly. In this study, a dynamic adaptive crossover factor is adopted, and CR is set as a dynamic adaptive function that continuously oscillates in [0,1] and is updated every 50 generations, so that the constant change in CR can make the new individual randomly inherit the mutant individual or parent generation of individual genes, jumping out of the local optimal solution. The value is as follows:(6)CRg=1+cosg2,modg,50=0CRg−1,otherwise,where CRg is the value of CR of the gth generation, CRg−1 is the value of CR of the g-1th generation, and modg,50=0 is to be updated every 50 generations.


### 3.3. Adaptive Mutation Operator Based on Population Aggregation Degree

In the later stage of the iteration of the DE algorithm, the difference between individuals of the population decreases, the diversity decreases, finally, the aggregation phenomenon is formed, and the definition of population aggregation degree is proposed.Assuming that the size of the group isNP, the particle dimension is D, xi,j is the individual vector of individual x on the jth dimension, and xj¯ is the average value of the individual vector particles of the population on the jth dimension, then the population aggregation degree can be defined as follows:(7)C=∑j=1D∑i=1NPxi,j−xj¯.The smaller the population aggregation degreeC is, the smaller the individual differences of the population is, and the higher the aggregation degree is; on the contrary, it means that the population individuals are scattered and the population diversity is good. Therefore, the population aggregation degree C can well describe the aggregation degree of population individuals. In this study, C takes [0.05, 0.95].The main purpose of improving the DE algorithm is to balance the global exploration ability and local development ability of the algorithm. The standard DE algorithm adopts a random selection mutation strategy, expressed as DE/rand/1, which is beneficial to improve the diversity of mutation and global exploration ability, but the randomness interferes with the evolution direction in a large range, with great blindness and uncertainty, which may lead to algorithm premature and limited convergence speed. While DE/best/1 uses the optimal individual as the mutation base to ensure the optimal direction of evolution and local development ability, the optimal individual may be the local optimal individual. If the population keeps evolving in this direction, it is very likely to fall into the local optimum. The mutation strategies DE/best/1 and DE/rand/1 of the standard differential evolution algorithm are(8)vig+1=xbestg+F⋅xr1g−xr2gvig+1=xr3g+F⋅xr4g−xr5g,We carry out the weighted combination to propose a new weighted dynamic mutation strategy as follows:(9)vig+1=C⋅xbestg+F⋅xr1g−xr2g+1−C⋅xr3g+F⋅xr4g−xr5g,where i,r1,r2,r3,r4,r5 are random integers on 1,NP and are not equal to each other. xbestg is the optimal individual of the gth generation population.According to formula (5), the population aggregation degree C, as the weight of the influence of the optimal individual on the variation direction, is a monotonically increasing function; then, 1−C is a monotonically decreasing function. After weighted merging, in the early stage of optimization, the amplitude coefficient of xbestg+F⋅xr1g−xr2g is small, and the amplitude coefficient of xr3g+F⋅xr4g−xr5g is large, focusing on global exploration, and in the later stage of optimization, the amplitude coefficient of xbestg+F⋅xr1g−xr2g increases, and the amplitude coefficient of xr3g+F⋅xr4g−xr5g reduces, focusing on local development, so that the algorithm takes into account the global search ability and local development ability at the same time, which is not only beneficial to the diversity of the population but also improves the convergence speed of the algorithm.


### 3.4. Disturbance Dimensional Mutation to Get Out of Premature

When solving high-dimensional complex function problems, problems such as falling into local optimum will generally occur in the later stage of the DE algorithm. In order to describe the state of the population, the following premature definitions are given as follows:LetQ be the precocious period, and if Modg,Q=0 and the difference between the current fitness value and the fitness value before Q generations is extremely small, that is,(10)fbestg−fbestg−Q+1≤δ,the individual is said to be premature in the Q generation iteration. Among them, fbestg is the optimal fitness value of the gth generation, and δ is the premature test threshold and takes δ=1E−6.If it is judged by the above formula that the algorithm has been premature, the dimensional mutation is carried out, and the mutation strategy is as follows:(11)xi,jg=C⋅xbest,jg+1−C⋅xr1,jg+αxr2,jg−xr3,jg,where the weighting coefficient C is the same as formula (5), α=F1+0.5η is the acceleration random disturbance coefficient, η is a random variable obeying the distribution Gauss0,1, and xbestg is the optimal individual of the gth generation on the jth dimension.It can be seen from formula (9) that the dimensional mutation strategy consists of two parts, the C⋅xbest,jg+1−C⋅xr1,jg part is composed of the optimal individual and the weight of random individuals, and the information of the optimal individual is used to guide other individuals to evolve toward the optimization direction; the αxr2,jg−xr3,jg part is the accelerated random disturbance vector; and since the individual has fallen into the local optimum, disturbance mutation is randomly generated, which accelerates the individual to jump out of the local optimum and guides the individual to explore the global.


### 3.5. Algorithm Steps

Step 1.
Initialization parameters: population sizeNP, solution dimension D, maximum evolutionary generation G, upper bound of individual variables xi,jmax, lower bound of individual variables xi,jmin, maximum sum of scaling factors Fmax, minimum sum of scaling factors Fmin, premature generation Q, and premature test threshold δ.Step 2.
Initialize the population, calculate the fitness value of each individual, and find out the individual of optimal fitness valuexbest and the corresponding optimal fitness value fbest.Step 3.
CalculateF, CR, and C, according to formulas (5)–(7).Step 4.
Mutation operations. The variant individualvig+1 is obtained according to formula (9).Step 5.
Crossover operations. A new test individualui,jg+1 is obtained according to the formula (3).Step 6.
Selection operations. The next generationxi,jg+1 is obtained from the formula (4).Step 7.
Update the local and global optimal values.Step 8.
Check for premature. IfModg,Q=0 and fbestg−fbestg−Q+1≤δ, calculate a new individual xi,jg according to formula (11), and update the optimal value to jump out of the local optimum.Step 9.
Repeat Steps4–8.Step 10.
If the maximum number of iterationsG is not reached, go to Step 3; otherwise, continue.Step 11.
Output the optimal valuexbest and fbest.


## 3.1. Scale FactorF Adaptive Adjustment Strategy

According to formula (2), the scaling factor F in the mutation operation is an important parameter to control the diversity and convergence of the population, and it determines the magnification ratio of the deviation vector. The smaller the value of F is, the smaller the group difference is, which will speed up the algorithm convergence and also lead to the local convergence of the algorithm, while the larger the value F is, it will help the algorithm to jump out of the local optimal solution, but it will reduce the convergence speed. In order to balance the local and global search and maintain a fast convergence rate, an adaptive adjustment strategy is proposed as follows:(5)F=Fmax−Fmax−FmingG2,where Fmax is the maximum value of the scaling factor, which is 0.9, and Fmin is the minimum value of the scaling factor, which is 0.2, g is the current iteration number, that is, the gth generation, and G is the maximum iteration number.


## 3.2. Dynamic Adjustment Strategy of Crossover Probability FactorCR

The crossover probability factorCR determines whether the new individual gene is provided by the original individual or the mutant intermediate individual, that is, the degree of participation of each dimension of individual parameters in the crossover. The smaller the CR is, the better individuals are retained, and the faster the algorithm converges, but it is easy to fall into the local optimum value. The larger CR is, the higher the diversity of the population is, and the better the global search ability is, but the convergence speed of the algorithm will decrease accordingly. In this study, a dynamic adaptive crossover factor is adopted, and CR is set as a dynamic adaptive function that continuously oscillates in [0,1] and is updated every 50 generations, so that the constant change in CR can make the new individual randomly inherit the mutant individual or parent generation of individual genes, jumping out of the local optimal solution. The value is as follows:(6)CRg=1+cosg2,modg,50=0CRg−1,otherwise,where CRg is the value of CR of the gth generation, CRg−1 is the value of CR of the g-1th generation, and modg,50=0 is to be updated every 50 generations.


## 3.3. Adaptive Mutation Operator Based on Population Aggregation Degree

In the later stage of the iteration of the DE algorithm, the difference between individuals of the population decreases, the diversity decreases, finally, the aggregation phenomenon is formed, and the definition of population aggregation degree is proposed.Assuming that the size of the group isNP, the particle dimension is D, xi,j is the individual vector of individual x on the jth dimension, and xj¯ is the average value of the individual vector particles of the population on the jth dimension, then the population aggregation degree can be defined as follows:(7)C=∑j=1D∑i=1NPxi,j−xj¯.The smaller the population aggregation degreeC is, the smaller the individual differences of the population is, and the higher the aggregation degree is; on the contrary, it means that the population individuals are scattered and the population diversity is good. Therefore, the population aggregation degree C can well describe the aggregation degree of population individuals. In this study, C takes [0.05, 0.95].The main purpose of improving the DE algorithm is to balance the global exploration ability and local development ability of the algorithm. The standard DE algorithm adopts a random selection mutation strategy, expressed as DE/rand/1, which is beneficial to improve the diversity of mutation and global exploration ability, but the randomness interferes with the evolution direction in a large range, with great blindness and uncertainty, which may lead to algorithm premature and limited convergence speed. While DE/best/1 uses the optimal individual as the mutation base to ensure the optimal direction of evolution and local development ability, the optimal individual may be the local optimal individual. If the population keeps evolving in this direction, it is very likely to fall into the local optimum. The mutation strategies DE/best/1 and DE/rand/1 of the standard differential evolution algorithm are(8)vig+1=xbestg+F⋅xr1g−xr2gvig+1=xr3g+F⋅xr4g−xr5g,We carry out the weighted combination to propose a new weighted dynamic mutation strategy as follows:(9)vig+1=C⋅xbestg+F⋅xr1g−xr2g+1−C⋅xr3g+F⋅xr4g−xr5g,where i,r1,r2,r3,r4,r5 are random integers on 1,NP and are not equal to each other. xbestg is the optimal individual of the gth generation population.According to formula (5), the population aggregation degree C, as the weight of the influence of the optimal individual on the variation direction, is a monotonically increasing function; then, 1−C is a monotonically decreasing function. After weighted merging, in the early stage of optimization, the amplitude coefficient of xbestg+F⋅xr1g−xr2g is small, and the amplitude coefficient of xr3g+F⋅xr4g−xr5g is large, focusing on global exploration, and in the later stage of optimization, the amplitude coefficient of xbestg+F⋅xr1g−xr2g increases, and the amplitude coefficient of xr3g+F⋅xr4g−xr5g reduces, focusing on local development, so that the algorithm takes into account the global search ability and local development ability at the same time, which is not only beneficial to the diversity of the population but also improves the convergence speed of the algorithm.


## 3.4. Disturbance Dimensional Mutation to Get Out of Premature

When solving high-dimensional complex function problems, problems such as falling into local optimum will generally occur in the later stage of the DE algorithm. In order to describe the state of the population, the following premature definitions are given as follows:LetQ be the precocious period, and if Modg,Q=0 and the difference between the current fitness value and the fitness value before Q generations is extremely small, that is,(10)fbestg−fbestg−Q+1≤δ,the individual is said to be premature in the Q generation iteration. Among them, fbestg is the optimal fitness value of the gth generation, and δ is the premature test threshold and takes δ=1E−6.If it is judged by the above formula that the algorithm has been premature, the dimensional mutation is carried out, and the mutation strategy is as follows:(11)xi,jg=C⋅xbest,jg+1−C⋅xr1,jg+αxr2,jg−xr3,jg,where the weighting coefficient C is the same as formula (5), α=F1+0.5η is the acceleration random disturbance coefficient, η is a random variable obeying the distribution Gauss0,1, and xbestg is the optimal individual of the gth generation on the jth dimension.It can be seen from formula (9) that the dimensional mutation strategy consists of two parts, the C⋅xbest,jg+1−C⋅xr1,jg part is composed of the optimal individual and the weight of random individuals, and the information of the optimal individual is used to guide other individuals to evolve toward the optimization direction; the αxr2,jg−xr3,jg part is the accelerated random disturbance vector; and since the individual has fallen into the local optimum, disturbance mutation is randomly generated, which accelerates the individual to jump out of the local optimum and guides the individual to explore the global.


## 3.5. Algorithm Steps

Step 1.
Initialization parameters: population sizeNP, solution dimension D, maximum evolutionary generation G, upper bound of individual variables xi,jmax, lower bound of individual variables xi,jmin, maximum sum of scaling factors Fmax, minimum sum of scaling factors Fmin, premature generation Q, and premature test threshold δ.Step 2.
Initialize the population, calculate the fitness value of each individual, and find out the individual of optimal fitness valuexbest and the corresponding optimal fitness value fbest.Step 3.
CalculateF, CR, and C, according to formulas (5)–(7).Step 4.
Mutation operations. The variant individualvig+1 is obtained according to formula (9).Step 5.
Crossover operations. A new test individualui,jg+1 is obtained according to the formula (3).Step 6.
Selection operations. The next generationxi,jg+1 is obtained from the formula (4).Step 7.
Update the local and global optimal values.Step 8.
Check for premature. IfModg,Q=0 and fbestg−fbestg−Q+1≤δ, calculate a new individual xi,jg according to formula (11), and update the optimal value to jump out of the local optimum.Step 9.
Repeat Steps4–8.Step 10.
If the maximum number of iterationsG is not reached, go to Step 3; otherwise, continue.Step 11.
Output the optimal valuexbest and fbest.


## 4. Experimental Results

### 4.1. Test Functions and Comparison Algorithm

In order to verify the effectiveness of the algorithm, this algorithm is compared with the standard DE/rand/1, SaDE algorithm, and JADE algorithm. All algorithms are independently run 20 times on 8 typical test functions. The test functions are shown in Table1. Their global optimal values are all 0. According to the obtained optimal solution and convergence curve, the performances of each algorithm in terms of convergence speed, optimal solution accuracy, and robustness are compared.Table 1
Test functions.
Test functionsFormulaInitial rangeSpheref1x=∑i=1nxi2[−100, 100]Schwefel’s problem 2.2f2x=∑i=1nxi+∏i=1nxi[−10, 10]Schwefel’s problem 1.2f3x=∑i=1n∑j=1ixj2[−10, 10]Ackleyf4x=−20exp−0.2∑i=1nxi2−exp1/n∑i=1ncos2πxi+20+e[−32, 32]Griewankf5x=1/4000∑i=1nxi2−∏i=1ncosxi/i+1[−600, 600]Rastriginf6x=∑i=1nxi2−10cos2πxi+10[−5.12, 5.12]Rosenbrockf7x=∑i=1n100xi+1−xi2+xi−12[−10, 10]Schafferf8x=∑i=1n−10.5+sin2xi2+xi+12−0.5/1+0.001xi2+xi+122[−100, 100]The simulation experiment is programmed with MATLAB R2016a software, and the experimental configuration is Intel(R) Core(TM) i5-6300HQ CPU@2.30 GHz. The basic parameters of the algorithm are set as follows:NP=50, Fmax=0.9, Fmin=0.2, Q=10, and δ=1E−6, and the compared algorithm DE/rand/1, SADE, and JADE parameter settings are the same as the original. In order to examine the comprehensive performance of the algorithm, considering the dimension D=30 and D=50 two cases, for the sake of fairness, the maximum number of iterations of all algorithms is 2000, and the algorithm is independently run 20 times.


### 4.2. Results and Analysis

The minimum value, average optimal value, and standard deviation of the solution results are shown in Table2.Table 2
Test function optimization results of 30 dimensions and 50 dimensions.
fAlgorithm30 dimensions50 dimensionsBestMeanStdBestMeanStdf1DE5.34E-298.37 E+025.30 E+033.73E-132.08E-031.09 E+04SaDE5.01E-288.90 E+025.05 E+031.28E-143.13 E+031.41 E+04JDE1.34E-394.67 E+023.38 E+031.70E-261.61 E+038.88 E+03JADE1.62×E-049.34×E-038.86×E-031.94×E-019.68 E+088.20 E+10DAWDE000000f2DE4.94E-169.68 E+088.20 E+104.69E-091.27 E+201.19 E+22SaDE6.99E-171.99 E+084.78 E+091.96E-097.31 E+172.26 E+19JDE1.55E-242.53 E+051.08 E+071.22E-162.79 E+171.24 E+19JADE6.02E-032.69E-021.51E-027.10E-011.546.23E-01DAWDE000000f3DE4.70E-052.66E-011.02 E+027.54E-011.30 E+023.08 E+02SaDE1.34 E+022.28 E+021.17 E+021.12 E+031.14 E+031.17 E+02JDE3.61E-0321.9678.851.661.02 E+022.62 E+02JADE1.68 E+022.49 E+0231.645.12 E+027.77 E+021.01 E+02DAWDE000000f4DE7.99E-151.163.651.15E-141.193.67SaDE1.42E-141.143.631.95E-082.144.92JDE7.99E-150.913.182.22E-141.273.8JADE7.12E-0578.42E-011.11E-034.36E-031.040.79DAWDE8.88E-168.88E-1608.88E-168.88E-160f5DE07.5246.542.41E-131997.45SaDE08.247.041.55E-1426.691.15 E+02JDE04.9131.0509.9658.53JADE5.03 E+022.52 E+035.56 E+028.98 E+024.19 E+039.60 E+02DAWDE000000f6DE12.61.55 E+0265.3830.943.04 E+021.20 E+02SaDE20.9768.158.011.40 E+022.26 E+0295.21JDE027.3761.391.40E-0978.141.24 E+02JADE5.11 E+021.95 E+039.81 E+021.21 E+021.43 E+031.03 E+03DAWDE000000f7DE20.042.37 E+042.07 E+0544.016.51 E+044.65 E+05SaDE25.261.99 E+041.47 E+0545.591.21 E+056.48 E+05JDE17.927.02 E+037.08 E+0427.733.78 E+042.67 E+05JADE2.5411.715.8955.521.18 E+0231.44DAWDE000000f8DE10.4712.040.519.5221.720.6SaDE6.328.421.6316.1718.211.57JDE1.073.883.383.299.65.48JADE0.150.480.141.872.930.35DAWDE000000It can be seen from the analysis that the DAWDE algorithm can achieve better optimization results than the other four algorithms on the 8 test functions regardless of whether the dimension is 30 or 50. By comparing the best value, mean optimal value, and standard deviation, it can be seen that the DAWDE algorithm has strong global optimization ability and has great advantages compared with other algorithms in terms of convergence accuracy, convergence ability, and stability. The optimization performance of the DAWDE algorithm will not decrease due to the increase in the complexity of the function, which shows that the algorithm has high scalability, and it can be concluded from the standard deviation that the stability of the algorithm is strong. Compared with the other four algorithms, the theoretical optimal value of 0 cannot be obtained in 30 dimensions, and as the function becomes more complex, the optimal value converged by the algorithm deviates from the theoretical optimal value. It can be seen from the standard deviation that the stability of the other four algorithms in optimizing high-dimensional complex functions is also poor, and with the increase in the dimension, the evolutionary ability decreases to varying degrees.Figures1–8 show the fitness value convergencecurvesof the 5 algorithmstested for 8 functions. When we analyzedeach set of figures indetail, it can be seen from Figures 1(a) and 1(b) that for the function f1, although all the five algorithms can reach the theoretical optimal value of 0, the DAWDE algorithm has already converged to the optimal value before the 10th generation, which is the fastest among these algorithms. The other four algorithms all have stagnation to a certain extent. According to Figures 2(a) and 2(b), when the dimension is 30, the DAWDE algorithm gets the optimal value before the fifth generation, whereas other functions get the optimal value after the fifth generation. When the dimension is 50, the DAWDE algorithm and the JDE algorithm both perform well on f2, and the other three functions all fall into local optimum during the convergence process. It can be seen from Figures 3(a) and 3(b) that the DAWDE algorithm converges to the optimal value of 0 very quickly on f3, while the DE algorithm and the JDE algorithm perform slightly worse. In 30 and 50 dimensions, the DE algorithm and the JDE algorithm are optimized in about 400th generation and 1000th generation, respectively. The JADE algorithm and the SaDE algorithm perform even worse, failing to get the optimal value and falling into the local optimum. As can be seen from Figures 4(a) and 4(b), for the function f4, the DAWDE algorithm converges faster than the other algorithms. Figures 5(a) and 5(b) show that, for the function f5, when the dimension is 30, the DAWDE algorithm gets the optimal value before the 10th generation, whereas other functions get the optimal value after the 100th generation. When the dimension is 50, the convergence of the DAWDE algorithm is still very fast, but other algorithms are affected by the increase in dimension, and the optimal is not reached until 200 generations later. It can be seen from Figures 6(a) and 6(b) that for the function f6, the algorithms DE and SADE both fall into local optimum, and the solution accuracy is poor. As can be seen from Figures 7(a) and 7(b), for the function f7, although all five algorithms can obtain the optimal value, the curve convergence speed of the DAWDE algorithm is significantly faster than that of the other four algorithms. Figures 8(a) and 8(b) show that, for the function f8, when the other four algorithms fall into the local optimum, the DAWDE algorithm can still quickly obtain the optimum value, indicating that it has the ability to judge and jump out of premature. Comparing the 30-dimensional and 50-dimensional figures, it can be seen that although the spatial dimension has increased, the optimization ability of the DAWDE algorithm has not been significantly reduced. In contrast, the optimization capabilities of the other four algorithms have decreased to varying degrees, which proves that the DAWDE algorithm not only adapts to the low-dimensional search space but also meets the requirements of high-dimensional search space. To sum up, the DAWDE algorithm performs well in the early stage of optimization, and the convergence speed is very fast. The optimal value can be obtained around the 20th generation, and it is not affected by dimensions and has strong stability. Compared with DAWDE, the other four algorithms have a slower convergence speed and worse solution accuracy, and the more complex the function is, the more the objective function value deviates from the theoretical optimal value.Figure 1
Convergence curve off1. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 2
Convergence curve off2. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 3
Convergence curve off3. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 4
Convergence curve off4. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 5
Convergence curve off5. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 6
Convergence curve off6. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 7
Convergence curve off7. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 8
Convergence curve off8. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)


## 4.1. Test Functions and Comparison Algorithm

In order to verify the effectiveness of the algorithm, this algorithm is compared with the standard DE/rand/1, SaDE algorithm, and JADE algorithm. All algorithms are independently run 20 times on 8 typical test functions. The test functions are shown in Table1. Their global optimal values are all 0. According to the obtained optimal solution and convergence curve, the performances of each algorithm in terms of convergence speed, optimal solution accuracy, and robustness are compared.Table 1
Test functions.
Test functionsFormulaInitial rangeSpheref1x=∑i=1nxi2[−100, 100]Schwefel’s problem 2.2f2x=∑i=1nxi+∏i=1nxi[−10, 10]Schwefel’s problem 1.2f3x=∑i=1n∑j=1ixj2[−10, 10]Ackleyf4x=−20exp−0.2∑i=1nxi2−exp1/n∑i=1ncos2πxi+20+e[−32, 32]Griewankf5x=1/4000∑i=1nxi2−∏i=1ncosxi/i+1[−600, 600]Rastriginf6x=∑i=1nxi2−10cos2πxi+10[−5.12, 5.12]Rosenbrockf7x=∑i=1n100xi+1−xi2+xi−12[−10, 10]Schafferf8x=∑i=1n−10.5+sin2xi2+xi+12−0.5/1+0.001xi2+xi+122[−100, 100]The simulation experiment is programmed with MATLAB R2016a software, and the experimental configuration is Intel(R) Core(TM) i5-6300HQ CPU@2.30 GHz. The basic parameters of the algorithm are set as follows:NP=50, Fmax=0.9, Fmin=0.2, Q=10, and δ=1E−6, and the compared algorithm DE/rand/1, SADE, and JADE parameter settings are the same as the original. In order to examine the comprehensive performance of the algorithm, considering the dimension D=30 and D=50 two cases, for the sake of fairness, the maximum number of iterations of all algorithms is 2000, and the algorithm is independently run 20 times.


## 4.2. Results and Analysis

The minimum value, average optimal value, and standard deviation of the solution results are shown in Table2.Table 2
Test function optimization results of 30 dimensions and 50 dimensions.
fAlgorithm30 dimensions50 dimensionsBestMeanStdBestMeanStdf1DE5.34E-298.37 E+025.30 E+033.73E-132.08E-031.09 E+04SaDE5.01E-288.90 E+025.05 E+031.28E-143.13 E+031.41 E+04JDE1.34E-394.67 E+023.38 E+031.70E-261.61 E+038.88 E+03JADE1.62×E-049.34×E-038.86×E-031.94×E-019.68 E+088.20 E+10DAWDE000000f2DE4.94E-169.68 E+088.20 E+104.69E-091.27 E+201.19 E+22SaDE6.99E-171.99 E+084.78 E+091.96E-097.31 E+172.26 E+19JDE1.55E-242.53 E+051.08 E+071.22E-162.79 E+171.24 E+19JADE6.02E-032.69E-021.51E-027.10E-011.546.23E-01DAWDE000000f3DE4.70E-052.66E-011.02 E+027.54E-011.30 E+023.08 E+02SaDE1.34 E+022.28 E+021.17 E+021.12 E+031.14 E+031.17 E+02JDE3.61E-0321.9678.851.661.02 E+022.62 E+02JADE1.68 E+022.49 E+0231.645.12 E+027.77 E+021.01 E+02DAWDE000000f4DE7.99E-151.163.651.15E-141.193.67SaDE1.42E-141.143.631.95E-082.144.92JDE7.99E-150.913.182.22E-141.273.8JADE7.12E-0578.42E-011.11E-034.36E-031.040.79DAWDE8.88E-168.88E-1608.88E-168.88E-160f5DE07.5246.542.41E-131997.45SaDE08.247.041.55E-1426.691.15 E+02JDE04.9131.0509.9658.53JADE5.03 E+022.52 E+035.56 E+028.98 E+024.19 E+039.60 E+02DAWDE000000f6DE12.61.55 E+0265.3830.943.04 E+021.20 E+02SaDE20.9768.158.011.40 E+022.26 E+0295.21JDE027.3761.391.40E-0978.141.24 E+02JADE5.11 E+021.95 E+039.81 E+021.21 E+021.43 E+031.03 E+03DAWDE000000f7DE20.042.37 E+042.07 E+0544.016.51 E+044.65 E+05SaDE25.261.99 E+041.47 E+0545.591.21 E+056.48 E+05JDE17.927.02 E+037.08 E+0427.733.78 E+042.67 E+05JADE2.5411.715.8955.521.18 E+0231.44DAWDE000000f8DE10.4712.040.519.5221.720.6SaDE6.328.421.6316.1718.211.57JDE1.073.883.383.299.65.48JADE0.150.480.141.872.930.35DAWDE000000It can be seen from the analysis that the DAWDE algorithm can achieve better optimization results than the other four algorithms on the 8 test functions regardless of whether the dimension is 30 or 50. By comparing the best value, mean optimal value, and standard deviation, it can be seen that the DAWDE algorithm has strong global optimization ability and has great advantages compared with other algorithms in terms of convergence accuracy, convergence ability, and stability. The optimization performance of the DAWDE algorithm will not decrease due to the increase in the complexity of the function, which shows that the algorithm has high scalability, and it can be concluded from the standard deviation that the stability of the algorithm is strong. Compared with the other four algorithms, the theoretical optimal value of 0 cannot be obtained in 30 dimensions, and as the function becomes more complex, the optimal value converged by the algorithm deviates from the theoretical optimal value. It can be seen from the standard deviation that the stability of the other four algorithms in optimizing high-dimensional complex functions is also poor, and with the increase in the dimension, the evolutionary ability decreases to varying degrees.Figures1–8 show the fitness value convergencecurvesof the 5 algorithmstested for 8 functions. When we analyzedeach set of figures indetail, it can be seen from Figures 1(a) and 1(b) that for the function f1, although all the five algorithms can reach the theoretical optimal value of 0, the DAWDE algorithm has already converged to the optimal value before the 10th generation, which is the fastest among these algorithms. The other four algorithms all have stagnation to a certain extent. According to Figures 2(a) and 2(b), when the dimension is 30, the DAWDE algorithm gets the optimal value before the fifth generation, whereas other functions get the optimal value after the fifth generation. When the dimension is 50, the DAWDE algorithm and the JDE algorithm both perform well on f2, and the other three functions all fall into local optimum during the convergence process. It can be seen from Figures 3(a) and 3(b) that the DAWDE algorithm converges to the optimal value of 0 very quickly on f3, while the DE algorithm and the JDE algorithm perform slightly worse. In 30 and 50 dimensions, the DE algorithm and the JDE algorithm are optimized in about 400th generation and 1000th generation, respectively. The JADE algorithm and the SaDE algorithm perform even worse, failing to get the optimal value and falling into the local optimum. As can be seen from Figures 4(a) and 4(b), for the function f4, the DAWDE algorithm converges faster than the other algorithms. Figures 5(a) and 5(b) show that, for the function f5, when the dimension is 30, the DAWDE algorithm gets the optimal value before the 10th generation, whereas other functions get the optimal value after the 100th generation. When the dimension is 50, the convergence of the DAWDE algorithm is still very fast, but other algorithms are affected by the increase in dimension, and the optimal is not reached until 200 generations later. It can be seen from Figures 6(a) and 6(b) that for the function f6, the algorithms DE and SADE both fall into local optimum, and the solution accuracy is poor. As can be seen from Figures 7(a) and 7(b), for the function f7, although all five algorithms can obtain the optimal value, the curve convergence speed of the DAWDE algorithm is significantly faster than that of the other four algorithms. Figures 8(a) and 8(b) show that, for the function f8, when the other four algorithms fall into the local optimum, the DAWDE algorithm can still quickly obtain the optimum value, indicating that it has the ability to judge and jump out of premature. Comparing the 30-dimensional and 50-dimensional figures, it can be seen that although the spatial dimension has increased, the optimization ability of the DAWDE algorithm has not been significantly reduced. In contrast, the optimization capabilities of the other four algorithms have decreased to varying degrees, which proves that the DAWDE algorithm not only adapts to the low-dimensional search space but also meets the requirements of high-dimensional search space. To sum up, the DAWDE algorithm performs well in the early stage of optimization, and the convergence speed is very fast. The optimal value can be obtained around the 20th generation, and it is not affected by dimensions and has strong stability. Compared with DAWDE, the other four algorithms have a slower convergence speed and worse solution accuracy, and the more complex the function is, the more the objective function value deviates from the theoretical optimal value.Figure 1
Convergence curve off1. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 2
Convergence curve off2. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 3
Convergence curve off3. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 4
Convergence curve off4. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 5
Convergence curve off5. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 6
Convergence curve off6. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 7
Convergence curve off7. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)Figure 8
Convergence curve off8. (a) 30 dimensions. (b) 50 dimensions.
(a)(b)


## 5. Conclusions

In this study, a dynamic adaptive weighted differential evolution (DAWDE) algorithm is proposed to solve the problems of long search time, easy stagnation, and easy to fall into local optimal solution when a differential evolution algorithm solves high-dimensional complex optimization problems. The improved algorithm includes adaptive optimization scaling factor and crossover factor, proposes an adaptive mutation operator based on the aggregation degree of the population, and adopts a random dimensional mutation and disturbance strategy. The algorithm dynamically balances the global exploration ability and local development ability of the algorithm. The simulation results show that the DAWDE algorithm can obtain better optimization results than other optimization algorithms on the 8 test functions. Regardless of the dimension, it has the characteristics of strong optimization ability, fast convergence, high solution accuracy, and strong stability, which provides a choice for solving complex high-dimensional optimization problems and also provides algorithm support for practical application research in the future [17].



---

*Source: 1318044-2022-06-29.xml*