# A Hybrid Dynamic Probability Mutation Particle Swarm Optimization for Engineering Structure Design

Authors: Qiuyu Li; Zhiteng Ma
Journal: Mobile Information Systems
 (2021)

---

## Abstract

Particle swarm optimization (PSO) is a common metaheuristic algorithm. However, when dealing with practical engineering structure optimization problems, it is prone to premature convergence during the search process and falls into a local optimum. To strengthen its performance, combining several ideas of the differential evolution algorithm (DE), a dynamic probability mutation particle swarm optimization with chaotic inertia weight (CWDEPSO) is proposed. The main improvements are achieved by improving the parameters and algorithm mechanism in this paper. The former proposes a novel inverse tangent chaotic inertia weight and sine learning factors. Besides, the scaling factor and crossover probability are improved by random distributions, respectively. The latter introduces a monitoring mechanism. By monitoring the convergence of PSO, a developed mutation operator with a more reliable local search capability is adopted and increases population diversity to help PSO escape from the local optimum effectively. To evaluate the effectiveness of the CWDEPSO algorithm, 24 benchmark functions and two groups of engineering optimization experiments are used for numerical and engineering optimization, respectively. The results indicate CWDEPSO offers better convergence accuracy and speed compared with some well-known metaheuristic algorithms.


---

## Body

## 1. Introduction

Recently, an increasing number of fields, such as feature selection [1], artificial intelligence [2], and engineering structure design [3], have been faced with optimization problems due to the development of science and technology and industrialization level development. Among them, the engineering structure optimization problem is difficult to be solved by a specific algorithm because of extensive and complex constraints. Since the traditional optimization methods take too much time to solve these problems, thus making it difficult to find the optimal solution, people have started researching new optimization algorithms with a broader applicability. In the past two decades, physical or biological phenomena have provided inspiration. Researchers have consequently invented many optimization algorithms, like the whale optimization (WOA) algorithm [4], biogeography-based optimization (BBO) [5], the sine-cosine algorithm (SCA) [6], the moth-flame optimization (MFO) algorithm [7], ant colony optimization (ACO) [8], krill herd (KH) algorithm [9, 10], the artificial bee colony (ABC) [11], the gravitational search algorithm (GSA) [12], monarch butterfly optimization (MBO) [13, 14], earthworm optimization algorithm (EWA) [15], elephant herding optimization (EHO) [16, 17], moth search (MS) algorithm [18], slime mould algorithm (SMA) [19], Harris hawks optimization (HHO) [20], differential evolution (DE) algorithm, [21] and particle swarm optimization (PSO) [22, 23]. These optimization algorithms are also known as metaheuristic algorithms and are now widely used in real life.PSO is considered as a swarm intelligence algorithm put forward by the American computer intelligence researcher Eberhart and psychological researcher Kennedy in 1995 [22] and is derived from the foraging behavior of bird populations. PSO is not only robust and efficient but also easily implemented. Therefore, PSO is widely used in practical engineering optimization. However, it is susceptible to premature convergence and falls into local optimal solutions when dealing with complicated multimodal optimization or multiconstraint conditions. To overcome these shortcomings, several scholars have proposed various PSO variants. Liang et al. made an introduction to comprehensive learning PSO (CLPSO) [24], which combined an original learning method. Liu and Gao proposed chaos PSO (CPSO) [25], which improved the performance of PSO by introducing chaos mechanism. Wang et al. proposed an adaptive granularity learning distributed particle swarm optimization (AGLDPSO) [26] with the help of machine-learning techniques, including clustering analysis based on locality-sensitive hashing (LSH) and adaptive granularity control based on logistic regression (LR). To avoid premature convergence, Jordehi proposed a time-varying acceleration coefficient PSO (TVACPSO) [27]. A kind of EC algorithm called local version particle swarm optimization (PSO) is adopted by Li et al. to implement a pipeline-based parallel PSO (PPPSO, i.e., P3SO) [28]. Fan and Jen attempted to develop the basic PSO effectiveness and convergence by adopting the thought of multiple cooperative swarms, and then, an enhanced partial search PSO (EPS-PSO) [29] was proposed. Ma et al. proposed the chaotic PSO-arctangent acceleration coefficient algorithm (CPSO-AT) [30], which strengthened the effectiveness of the original PSO through chaotic initialization and nonlinear optimization. Zhang et al. proposed a cooperative coevolutionary bare-bones particle swarm optimization (CCBBPSO) with function independent decomposition (FID), called CCBBPSO-FID [31]. Liu et al. proposed a coevolutionary particle swarm optimization with a bottleneck objective learning (BOL) strategy for many-objective optimization (CPSO) [32]. Xia et al. proposed a triple archives PSO (TAPSO) [33]. Although the convergence accuracy of these algorithms is higher compared with the basic PSO, their convergence and robustness are still unsatisfactory.Similar to PSO, DE is also a typical swarm intelligence algorithm and possesses strong points of simple rules, excellent robustness, quick convergence speed, and easy implementation. Nevertheless, the individual convergence is too strong, which makes DE very easy to be attracted by local interference extreme values in the late evolution, leading to precocity. For the purpose of overcoming such issues, many scholars have done many works on adaptive aspects of DE, such as self-adaptive DE with developed mutation method (IMSaDE) [34], multipopulation ensemble DE (MPEDE) [35], self-adapting control parameters in DE (jDE) [36], and self-adaptive DE (SaDE) [37]. In addition, Zhao et al. proposed an LBP-based adaptive DE (LBPADE) algorithm [38]. Wang et al. proposed a new automatic niching technique based on the affinity propagation clustering (APC) and design a novel niching differential evolution (DE) algorithm, termed as automatic niching DE (ANDE) [39]. Zhan et al. developed a novel double-layered heterogeneous DE algorithm and realized it in cloud computing distributed environment (CloudDE) [40]. Wang et al. proposed a dynamic group learning distributed particle swarm optimization (DGLDPSO) [41] for large-scale optimization and extended it for the large-scale cloud workflow scheduling. Liu et al. developed a novel variant of adaptive DE, utilizing both the historical experience and heuristic information for the adaptation (HHDE) [42]. Zhan et al proposed an adaptive DDE (ADDE) [43] to relieve the sensitivity of strategies and parameters. Chen et al. developed a distributed individual differential evolution (DIDE) algorithm [44] based on a distributed individual for multiple peaks (DIMPs) framework and two novel mechanisms. The most classical one is adaptive DE with the optional external archive (JADE) [45] put forward by Zhang and Sanderson, which uses a Cauchy and Gaussian distributions to dynamically update and improve population convergent speed to the optimal value. Although these modifications are better than traditional DE, the parameter improvement depends too much on previous historical experience, and there are many problems such as slow convergence.To overcome the limitations of a single algorithm, scholars have combined PSO and DE and conducted much research on this kind of hybrid algorithms, such as self-adaptive mutation DE based on PSO (DEPSO) [46], ensemble PSO and DE (EPSODE) [47], combining DE and PSO (DEPSO) [48], and hybridizing PSO with DE (PSO-DE) [49]. The existing hybrid algorithms can be roughly classified as follows: two algorithms are used in sequence, two algorithms solve and communicate with two different populations, respectively, and two algorithms evaluate and select optimal values. These hybrid algorithms inherit the advantages of each algorithm, which is able to promote basic PSO and DE optimization performance. However, the requirements for more computing resources and slower convergence speed are still the main problems. Based on the above, we combine some ideas of DE and propose a dynamic probability mutation particle swarm optimization with chaotic inertia weight (CWDEPSO), which improves the parameters of PSO and DE. It adds chaotic processing to the inertial weight. Once it is found that PSO cannot successfully update the optimal value, a different mutation operator is adopted for helping PSO run away from local extrema, thereby avoiding the premature maturity of the algorithm and enhancing the population distribution entropy that aims at achieving the overall balance between the local search capability and the global search capability. Among them, the distribution entropy of the population represents the disorder degree of the population’s species and the population diversity [50]. Generally, individuals are scattered in the early stage of iteration, so the degree of disorder is high, and the population diversity is high. At the end of the iteration, individuals are concentrated in the area with strong fitness, so the degree of disorder is low, and the population diversity is low. The population diversity can be improved by adding a mutation operator [51]. The contributions of this paper are as follows:(1)
The paper proposes a different mutation operator DE/current-to-gbest/1 and a novel dynamic probability mutation strategy, and the former is applied to the latter.(2)
In the selection stage, to fully exploit the individual value in the population, an original selection strategy is proposed, which is to introduce a candidate population to reuse the culled individuals.(3)
The paper introduces a method of using logistic chaotic maps, inverse tangent, and cosine trigonometric functions and random distributions to optimize the parameters, respectively.(4)
CWDEPSO is applied to optimize the actual engineering structure. CWDEPSO proposed in this paper is used to optimize the spring tension structure and the pressure vessel structure.24 benchmark test functions and two groups of engineering optimization experiments are adopted for testing the algorithm to evaluate its performance. The results suggest that the performance of CWDEPSO is better compared with PSO [22], DE [21], AIWCPSO [52], MPSPSO-ST [53], JADE [45], SinDE [54], and DEPSO [55] and five common metaheuristic algorithms GSA [12], ABC [11], MFO [7], SCA [6], and BBO [5]. Besides, it achieves the best performance in practical engineering optimization problems.The remaining arrangements of the article are shown below. The second section is the introduction to the basic DE and PSO. The third section introduces the improvement of the parameters, and the fourth section presents the monitoring mechanisms and specific processes of CWDEPSO. The experimental part is shown in the fifth section. The sixth section uses CWDEPSO to solve the engineering structure optimization problem. Furthermore, the final section is the conclusion.


## 2. PSO and DE Algorithm

Two types of algorithms, including DE and PSO, are introduced in this section.


### 2.1. Particle Swarm Optimizer (PSO)

As a metaheuristic algorithm, the position of each particle is the representative of a candidate solution within the PSO algorithm, and the fitness of solution relies on the fitness function. The search method is completed by iteration. During the iterative process, the individual particles have a memory function, which can record the best positionXpbest they have passed in the search procedure and combine the optimal position Xgbest found by the entire population for refining their position XiG and speed ViG,i=1,2,…,NP. The NP particles are searched for the optimal solution in D-dimensional space by iteration. Within the i-th particle of the G-th generation, the position and velocity have been represented by vectors XiG=xi1G,xi2G,…,xiDG and ViG=vi1G,vi2G,…,viDG, respectively. In the i-th particle of the current G generation, the greatest position that has undergone is pbesti,dG. In addition, the best position explored by the whole particle swarm is gbestdG. At the G+1-th iteration, the D-dimensional vector of the i-th particle velocity and position is able to be updated as follows:(1)Vi,dG+1=ω⋅Vi,dG+c1⋅r1⋅gbesti,dG−Xi,dG+c2⋅r2⋅pbestdG−Xi,dG,(2)Xi,dG+1=Xi,dG+Vi,dG,where ω is the inertial weight; r1 and r2 are the random values in the interval [0, 1]; and c1 and c2 are the learning factors, with c1=c2=2.Shi and Eberhart [56] proposed a well-known PSO variant, which introduced a linearly decreasing inertial vector to balance well global and local searches, as shown in Figure 1. The definition of the update mechanism can be shown as follows:(3)ω=ωmax−GGmax⋅ωmax−ωmin,where Gmax and G have been the iterations’ maximum number and the current iterations’ number, respectively.Figure 1
Schematic diagram of PSO.represents the optimal value.


### 2.2. Differential Evolution (DE) Optimizer

Being a random search method based on population, DE is divided into three steps: mutation, crossover, and selection to solve optimization problems. DE is adopted worldwide within various fields due to its simple principle, strong robustness, and few control parameters. This part mainly introduces the specific steps of the DE.


#### 2.2.1. Population Initialization

Suppose there is a population containingNP individuals, and all the individuals can be represented by the vectors Xi=xi1,xi2,…,xiD, and D is the representative of the solution’s dimension. In the process of evolution, the evolution times and the maximum evolution times are, respectively, represented by G and Gmax. The G-th generation is represented by a vector XiG=xi1G,xi2G,…,xiDG. Every dimensional lower and upper limits are represented by the vectors Xl=xl1,xl2,…,xlD and Xu=xu1,xu2,…,xuD. The initial population is presented as follows:(4)xij0=xlj+rand0,1×xuj−xlj,where rand0,1 is a random number between the interval [0, 1].


#### 2.2.2. Mutation

In theG-th generation, each individual, the target vector XiG=xi1G,xi2G,…,xiDG, uses the mutation operator to produce the mutation vector ViG=vi1G,vi2G,…,viDG. Figure 2 shows the classic mutation operator DE/rand/1. Selecting different mutation operators will influence the algorithm’s performance greatly. Common mutation operators are as follows.Figure 2
Schematic diagram of DE/rand/1. represents the optimal value.DE/rand/1:(5)ViG=Xr1G+F⋅Xr2G−Xr3G.DE/rand/2:(6)ViG=Xr1G+F⋅Xr2G−Xr3G+F⋅Xr4G−Xr5G.DE/current/1:(7)ViG=XiG+F⋅Xr1G−Xr2G.DE/best/1:(8)ViG=XbestG+F⋅Xr1G−Xr2G.DE/current-to-best/1:(9)ViG=XiG+F⋅XbestG−XiG+F⋅Xr1G−Xr2G,where r1,r2,r3,r4,andr5 are integers obtained in the interval [1, NP] randomly and r1≠r2≠r3≠r4≠r5≠i. The parameter F is the scaling factor, which is used to control the scale of variation, usually F∈0,1. XbestG is the most suitable individual in the current population.


#### 2.2.3. Crossover

After mutation, the target vector of each generation crosses with its corresponding mutation vector to generate an experimental vectorUiG=ui1G,ui2G,…,uiDG. Each dimension of the experimental vector is gained from the mutation vector ViG or the target vector XiG. The specific operation of crossover looks as follows:(10)uijG=vijG,ifrand0,1<CR orj=jrand,xijG,otherwise,where i=1,2,…,NP, j=1,2,…,D, crossover probability CR∈0,1. CR is used to control the probability that the experimental vector inherits the mutation vector. The parameter jrand∈1,D, which is used to make sure that one or more dimensions in the experimental vector, inherits the value of the target vector.To prevent values from exceeding the upper and lower bounds, they must also be bounded. The specific operation is as follows:(11)uijG=xuj,ifuijG>xuj,xlj,ifuijG<xlj,uujG,otherwise,where i=1,2,…,NP, j=1,2,…,D.


#### 2.2.4. Selection

Use the greedy strategy between the target vector and the experimental vector: select the best function value to enter the next iteration. Better individuals can be inherited to the following generation via the greedy method, making sure the algorithm convergence. The specific operation process is described as follows:(12)XiG=UiG,iffUiG≤fXiG,XiG,otherwise,where i=1,2,…,NP andfx is the representatives of the function value of the vector x.


## 2.1. Particle Swarm Optimizer (PSO)

As a metaheuristic algorithm, the position of each particle is the representative of a candidate solution within the PSO algorithm, and the fitness of solution relies on the fitness function. The search method is completed by iteration. During the iterative process, the individual particles have a memory function, which can record the best positionXpbest they have passed in the search procedure and combine the optimal position Xgbest found by the entire population for refining their position XiG and speed ViG,i=1,2,…,NP. The NP particles are searched for the optimal solution in D-dimensional space by iteration. Within the i-th particle of the G-th generation, the position and velocity have been represented by vectors XiG=xi1G,xi2G,…,xiDG and ViG=vi1G,vi2G,…,viDG, respectively. In the i-th particle of the current G generation, the greatest position that has undergone is pbesti,dG. In addition, the best position explored by the whole particle swarm is gbestdG. At the G+1-th iteration, the D-dimensional vector of the i-th particle velocity and position is able to be updated as follows:(1)Vi,dG+1=ω⋅Vi,dG+c1⋅r1⋅gbesti,dG−Xi,dG+c2⋅r2⋅pbestdG−Xi,dG,(2)Xi,dG+1=Xi,dG+Vi,dG,where ω is the inertial weight; r1 and r2 are the random values in the interval [0, 1]; and c1 and c2 are the learning factors, with c1=c2=2.Shi and Eberhart [56] proposed a well-known PSO variant, which introduced a linearly decreasing inertial vector to balance well global and local searches, as shown in Figure 1. The definition of the update mechanism can be shown as follows:(3)ω=ωmax−GGmax⋅ωmax−ωmin,where Gmax and G have been the iterations’ maximum number and the current iterations’ number, respectively.Figure 1
Schematic diagram of PSO.represents the optimal value.


## 2.2. Differential Evolution (DE) Optimizer

Being a random search method based on population, DE is divided into three steps: mutation, crossover, and selection to solve optimization problems. DE is adopted worldwide within various fields due to its simple principle, strong robustness, and few control parameters. This part mainly introduces the specific steps of the DE.


### 2.2.1. Population Initialization

Suppose there is a population containingNP individuals, and all the individuals can be represented by the vectors Xi=xi1,xi2,…,xiD, and D is the representative of the solution’s dimension. In the process of evolution, the evolution times and the maximum evolution times are, respectively, represented by G and Gmax. The G-th generation is represented by a vector XiG=xi1G,xi2G,…,xiDG. Every dimensional lower and upper limits are represented by the vectors Xl=xl1,xl2,…,xlD and Xu=xu1,xu2,…,xuD. The initial population is presented as follows:(4)xij0=xlj+rand0,1×xuj−xlj,where rand0,1 is a random number between the interval [0, 1].


### 2.2.2. Mutation

In theG-th generation, each individual, the target vector XiG=xi1G,xi2G,…,xiDG, uses the mutation operator to produce the mutation vector ViG=vi1G,vi2G,…,viDG. Figure 2 shows the classic mutation operator DE/rand/1. Selecting different mutation operators will influence the algorithm’s performance greatly. Common mutation operators are as follows.Figure 2
Schematic diagram of DE/rand/1. represents the optimal value.DE/rand/1:(5)ViG=Xr1G+F⋅Xr2G−Xr3G.DE/rand/2:(6)ViG=Xr1G+F⋅Xr2G−Xr3G+F⋅Xr4G−Xr5G.DE/current/1:(7)ViG=XiG+F⋅Xr1G−Xr2G.DE/best/1:(8)ViG=XbestG+F⋅Xr1G−Xr2G.DE/current-to-best/1:(9)ViG=XiG+F⋅XbestG−XiG+F⋅Xr1G−Xr2G,where r1,r2,r3,r4,andr5 are integers obtained in the interval [1, NP] randomly and r1≠r2≠r3≠r4≠r5≠i. The parameter F is the scaling factor, which is used to control the scale of variation, usually F∈0,1. XbestG is the most suitable individual in the current population.


### 2.2.3. Crossover

After mutation, the target vector of each generation crosses with its corresponding mutation vector to generate an experimental vectorUiG=ui1G,ui2G,…,uiDG. Each dimension of the experimental vector is gained from the mutation vector ViG or the target vector XiG. The specific operation of crossover looks as follows:(10)uijG=vijG,ifrand0,1<CR orj=jrand,xijG,otherwise,where i=1,2,…,NP, j=1,2,…,D, crossover probability CR∈0,1. CR is used to control the probability that the experimental vector inherits the mutation vector. The parameter jrand∈1,D, which is used to make sure that one or more dimensions in the experimental vector, inherits the value of the target vector.To prevent values from exceeding the upper and lower bounds, they must also be bounded. The specific operation is as follows:(11)uijG=xuj,ifuijG>xuj,xlj,ifuijG<xlj,uujG,otherwise,where i=1,2,…,NP, j=1,2,…,D.


### 2.2.4. Selection

Use the greedy strategy between the target vector and the experimental vector: select the best function value to enter the next iteration. Better individuals can be inherited to the following generation via the greedy method, making sure the algorithm convergence. The specific operation process is described as follows:(12)XiG=UiG,iffUiG≤fXiG,XiG,otherwise,where i=1,2,…,NP andfx is the representatives of the function value of the vector x.


## 2.2.1. Population Initialization

Suppose there is a population containingNP individuals, and all the individuals can be represented by the vectors Xi=xi1,xi2,…,xiD, and D is the representative of the solution’s dimension. In the process of evolution, the evolution times and the maximum evolution times are, respectively, represented by G and Gmax. The G-th generation is represented by a vector XiG=xi1G,xi2G,…,xiDG. Every dimensional lower and upper limits are represented by the vectors Xl=xl1,xl2,…,xlD and Xu=xu1,xu2,…,xuD. The initial population is presented as follows:(4)xij0=xlj+rand0,1×xuj−xlj,where rand0,1 is a random number between the interval [0, 1].


## 2.2.2. Mutation

In theG-th generation, each individual, the target vector XiG=xi1G,xi2G,…,xiDG, uses the mutation operator to produce the mutation vector ViG=vi1G,vi2G,…,viDG. Figure 2 shows the classic mutation operator DE/rand/1. Selecting different mutation operators will influence the algorithm’s performance greatly. Common mutation operators are as follows.Figure 2
Schematic diagram of DE/rand/1. represents the optimal value.DE/rand/1:(5)ViG=Xr1G+F⋅Xr2G−Xr3G.DE/rand/2:(6)ViG=Xr1G+F⋅Xr2G−Xr3G+F⋅Xr4G−Xr5G.DE/current/1:(7)ViG=XiG+F⋅Xr1G−Xr2G.DE/best/1:(8)ViG=XbestG+F⋅Xr1G−Xr2G.DE/current-to-best/1:(9)ViG=XiG+F⋅XbestG−XiG+F⋅Xr1G−Xr2G,where r1,r2,r3,r4,andr5 are integers obtained in the interval [1, NP] randomly and r1≠r2≠r3≠r4≠r5≠i. The parameter F is the scaling factor, which is used to control the scale of variation, usually F∈0,1. XbestG is the most suitable individual in the current population.


## 2.2.3. Crossover

After mutation, the target vector of each generation crosses with its corresponding mutation vector to generate an experimental vectorUiG=ui1G,ui2G,…,uiDG. Each dimension of the experimental vector is gained from the mutation vector ViG or the target vector XiG. The specific operation of crossover looks as follows:(10)uijG=vijG,ifrand0,1<CR orj=jrand,xijG,otherwise,where i=1,2,…,NP, j=1,2,…,D, crossover probability CR∈0,1. CR is used to control the probability that the experimental vector inherits the mutation vector. The parameter jrand∈1,D, which is used to make sure that one or more dimensions in the experimental vector, inherits the value of the target vector.To prevent values from exceeding the upper and lower bounds, they must also be bounded. The specific operation is as follows:(11)uijG=xuj,ifuijG>xuj,xlj,ifuijG<xlj,uujG,otherwise,where i=1,2,…,NP, j=1,2,…,D.


## 2.2.4. Selection

Use the greedy strategy between the target vector and the experimental vector: select the best function value to enter the next iteration. Better individuals can be inherited to the following generation via the greedy method, making sure the algorithm convergence. The specific operation process is described as follows:(12)XiG=UiG,iffUiG≤fXiG,XiG,otherwise,where i=1,2,…,NP andfx is the representatives of the function value of the vector x.


## 3. The Parameters of CWDEPSO

This section describes the improvements of CWDEPSO parameters. We introduce chaos theory, the improvement of parameters in PSO, and that of parameters in DE, in turn.


### 3.1. Chaos Theory

Chaotic motion is a common nonlinear phenomenon in nature. It looks cluttered on the outside but has subtle regularity on the inside. It possesses the features of regularity, randomness, as well as ergodicity. Chaotic ergodicity is able to experience every state within a definite interval with no repetition. Therefore, the optimized search using chaotic variables is superior to the blind random search. There are many types of chaotic dynamic models. In this paper, logistic mapping [57, 58] is used to design chaotic operations. The iterative equation is defined as follows:(13)yk+1=μyk⋅1−yk,where y0=rand0,1 and y0≠0.25,0.5,0.75. It is completely chaotic when the control parameter 3.57<μ<4. The best results are obtained when μ=4, as shown in Figure 3, so let μ=4 in this article.Figure 3
Schematic diagram of logistic chaotic mapping.


### 3.2. Improvement of PSO Parameters

The traditional PSO algorithm uses fixed parameter settings during the evolution process. However, many pieces of literatures indicate that PSO is very sensitive to parameter settings [30, 58–61]. Among them, Zhan et al. [61] proposed APSO, which is a very famous PSO variant that well deals with the parameters. Also, Peng et al. [60] used probabilistic methods to prove that the inertia weight on PSO’s convergence is an order of magnitude higher than two learning factors, so the inertia weight can be more necessary to be adjusted in the evolution process of PSO. Among them, for the inertia coefficient ω, Shi and Eberhart [56] proposed a linearly decreasing ω. The reason for this improvement is to increase the global search capability in the early iterations and the local search capability in the late iterations. Correspondingly, a larger inertial weight is helpful for global exploration, and with small inertia weight, it is conducive to local exploration. Afterwards, after many numerous studies [53, 58, 59], it was found that the nonlinear ω is more helpful for algorithm enhancement. In addition, in this paper, we choose to use nonlinear ω and perform chaos treatment, aiming to enhance the disorder during iteration to enhance the population diversity of the algorithm in the late iteration. In general, we hope that the global exploration competence of the algorithm is strong in the primary period, and the local search competence is improved later to explore the optimal value more accurately. In this paper, we use the arctangent acceleration coefficient (AT) to propose a nonlinearly changing inertial weight and introduce a chaotic mechanism within to avoid a local optimum by increasing the population diversity and thereby improving the search performance of PSO. The update of the inertia weight is presented as follows:where φ, τ, and q are constants φ=0.9,τ=0.65,q=0.05. q⋅α⋅yk is the chaos term, which enables the algorithm to increase chaos characteristics while maintaining the original change trend, and α is the direction factor. The introduction of the direction factor can make ω fluctuate up and down, and in each iteration, the value of α will choose to be equal to 1 or −1. In each generation, yk is updated by equation (13) and substituted into equation (14). The specific image is shown in Figures 4(a) and 4(b).Figure 4
Improved inertia weight: (a) without adding chaotic terms; (b) with adding chaotic terms.
(a)(b)(14)ω=φπ⋅acrtan2⋅G−1Gmax−1+τ+q⋅α⋅yk,Similarly, the learning factor also influences the performance of PSO greatly.c1 and c2 are called cognitive and social components, respectively. Within the traditional PSO algorithm, the cognitive component is always equal to the social component, that is, c1=c2. However, many literatures [30, 53, 59] have demonstrated that the focus should be on the global exploration ability at the beginning of the iteration; i.e., the social component c1 is larger, and the focus should be on the local exploration ability at the later part of the iteration; i.e., the cognitive component c2 is larger. In order to better balance the global exploration and local exploration ability in the iteration, in this paper, we use the sine function to optimize it so that c1 gradually decreases and c2 gradually increases. The specific equation is as follows:where ∂, δ1, and δ2 are constants ∂=2,δ1=2.5,andδ2=0.5.The change in curves ofc1 and c2 is presented in Figure 5.Figure 5
Improved learning factors.(15)c1=−∂⋅sin2⋅Gπ⋅Gmax+δ1,(16)c2=∂⋅sin2⋅Gπ⋅Gmax+δ2,


### 3.3. Improvement of DE Parameters

Similar to PSO, the parameters of DE also have a significant impact on the algorithm [21, 24, 40, 41]. The JADE first proposed the use of Cauchy and Gaussian distributions to update parameters and was widely cited in the literature [36, 62, 63], where the parameters μF and μCR are proposed to be updated by a power function in the literature [62]. Inspired by that, this paper adjusts the scaling factor and the crossover probability by using the parameter control methods below.Similar to JADE, in each generation of evolution, the scaling factors of all the individuals in the population are independently and randomly created by the Cauchy distribution, as follows:(17)Fi=CauchyμF,0.1,where CauchyμF,0.1 is a random number generated by the Cauchy distribution with a scaling factor of 0.1 and a position parameter of μF. If Fi>1, make it equal to 1, and if Fi<0, regenerate. In the current generation, all successful scaling factors Fi are stored in set SF. The position parameter μF is initialized to 0.5. At the end of all the generations, μF is updated as follows:(18)μF=1−c⋅μF+c⋅meanLSF,where c is a constant between the interval [0, 1] and meanL represents the Lehmer average:(19)meanLSF=∑Fi∈SFFi2∑Fi∈SFFi.In each evolutionary generation, the crossover probabilityCR of all the individuals within the population is generated independently on the basis of the Gaussian distribution parameters as follows:(20)CRi=GaussianμCR,0.1,where GaussianμCR,0.1 is a random number generated by the Gaussian distribution with a standard deviation of 0.1 and a mean value of μCR. If CRi<0, let it be equal to 1, and if CRi<0, let it be equal to 0. In the current generation, all successful crossover probabilities CRi are stored in the set SCR. The position parameter μCR is initialized to 0.5. Unlike JADE, after the end of each generation, the update of μCR adopts the power average, as follows:(21)μCR=1−c⋅μCR+c⋅meanpowSCR,where meanpow represents the power-mean:(22)meanpowSCR=∑CRi∈SCRCRinSCR1/n,where SCR represents the cardinality of the set SCR and n is a constant n=2.


## 3.1. Chaos Theory

Chaotic motion is a common nonlinear phenomenon in nature. It looks cluttered on the outside but has subtle regularity on the inside. It possesses the features of regularity, randomness, as well as ergodicity. Chaotic ergodicity is able to experience every state within a definite interval with no repetition. Therefore, the optimized search using chaotic variables is superior to the blind random search. There are many types of chaotic dynamic models. In this paper, logistic mapping [57, 58] is used to design chaotic operations. The iterative equation is defined as follows:(13)yk+1=μyk⋅1−yk,where y0=rand0,1 and y0≠0.25,0.5,0.75. It is completely chaotic when the control parameter 3.57<μ<4. The best results are obtained when μ=4, as shown in Figure 3, so let μ=4 in this article.Figure 3
Schematic diagram of logistic chaotic mapping.


## 3.2. Improvement of PSO Parameters

The traditional PSO algorithm uses fixed parameter settings during the evolution process. However, many pieces of literatures indicate that PSO is very sensitive to parameter settings [30, 58–61]. Among them, Zhan et al. [61] proposed APSO, which is a very famous PSO variant that well deals with the parameters. Also, Peng et al. [60] used probabilistic methods to prove that the inertia weight on PSO’s convergence is an order of magnitude higher than two learning factors, so the inertia weight can be more necessary to be adjusted in the evolution process of PSO. Among them, for the inertia coefficient ω, Shi and Eberhart [56] proposed a linearly decreasing ω. The reason for this improvement is to increase the global search capability in the early iterations and the local search capability in the late iterations. Correspondingly, a larger inertial weight is helpful for global exploration, and with small inertia weight, it is conducive to local exploration. Afterwards, after many numerous studies [53, 58, 59], it was found that the nonlinear ω is more helpful for algorithm enhancement. In addition, in this paper, we choose to use nonlinear ω and perform chaos treatment, aiming to enhance the disorder during iteration to enhance the population diversity of the algorithm in the late iteration. In general, we hope that the global exploration competence of the algorithm is strong in the primary period, and the local search competence is improved later to explore the optimal value more accurately. In this paper, we use the arctangent acceleration coefficient (AT) to propose a nonlinearly changing inertial weight and introduce a chaotic mechanism within to avoid a local optimum by increasing the population diversity and thereby improving the search performance of PSO. The update of the inertia weight is presented as follows:where φ, τ, and q are constants φ=0.9,τ=0.65,q=0.05. q⋅α⋅yk is the chaos term, which enables the algorithm to increase chaos characteristics while maintaining the original change trend, and α is the direction factor. The introduction of the direction factor can make ω fluctuate up and down, and in each iteration, the value of α will choose to be equal to 1 or −1. In each generation, yk is updated by equation (13) and substituted into equation (14). The specific image is shown in Figures 4(a) and 4(b).Figure 4
Improved inertia weight: (a) without adding chaotic terms; (b) with adding chaotic terms.
(a)(b)(14)ω=φπ⋅acrtan2⋅G−1Gmax−1+τ+q⋅α⋅yk,Similarly, the learning factor also influences the performance of PSO greatly.c1 and c2 are called cognitive and social components, respectively. Within the traditional PSO algorithm, the cognitive component is always equal to the social component, that is, c1=c2. However, many literatures [30, 53, 59] have demonstrated that the focus should be on the global exploration ability at the beginning of the iteration; i.e., the social component c1 is larger, and the focus should be on the local exploration ability at the later part of the iteration; i.e., the cognitive component c2 is larger. In order to better balance the global exploration and local exploration ability in the iteration, in this paper, we use the sine function to optimize it so that c1 gradually decreases and c2 gradually increases. The specific equation is as follows:where ∂, δ1, and δ2 are constants ∂=2,δ1=2.5,andδ2=0.5.The change in curves ofc1 and c2 is presented in Figure 5.Figure 5
Improved learning factors.(15)c1=−∂⋅sin2⋅Gπ⋅Gmax+δ1,(16)c2=∂⋅sin2⋅Gπ⋅Gmax+δ2,


## 3.3. Improvement of DE Parameters

Similar to PSO, the parameters of DE also have a significant impact on the algorithm [21, 24, 40, 41]. The JADE first proposed the use of Cauchy and Gaussian distributions to update parameters and was widely cited in the literature [36, 62, 63], where the parameters μF and μCR are proposed to be updated by a power function in the literature [62]. Inspired by that, this paper adjusts the scaling factor and the crossover probability by using the parameter control methods below.Similar to JADE, in each generation of evolution, the scaling factors of all the individuals in the population are independently and randomly created by the Cauchy distribution, as follows:(17)Fi=CauchyμF,0.1,where CauchyμF,0.1 is a random number generated by the Cauchy distribution with a scaling factor of 0.1 and a position parameter of μF. If Fi>1, make it equal to 1, and if Fi<0, regenerate. In the current generation, all successful scaling factors Fi are stored in set SF. The position parameter μF is initialized to 0.5. At the end of all the generations, μF is updated as follows:(18)μF=1−c⋅μF+c⋅meanLSF,where c is a constant between the interval [0, 1] and meanL represents the Lehmer average:(19)meanLSF=∑Fi∈SFFi2∑Fi∈SFFi.In each evolutionary generation, the crossover probabilityCR of all the individuals within the population is generated independently on the basis of the Gaussian distribution parameters as follows:(20)CRi=GaussianμCR,0.1,where GaussianμCR,0.1 is a random number generated by the Gaussian distribution with a standard deviation of 0.1 and a mean value of μCR. If CRi<0, let it be equal to 1, and if CRi<0, let it be equal to 0. In the current generation, all successful crossover probabilities CRi are stored in the set SCR. The position parameter μCR is initialized to 0.5. Unlike JADE, after the end of each generation, the update of μCR adopts the power average, as follows:(21)μCR=1−c⋅μCR+c⋅meanpowSCR,where meanpow represents the power-mean:(22)meanpowSCR=∑CRi∈SCRCRinSCR1/n,where SCR represents the cardinality of the set SCR and n is a constant n=2.


## 4. Dynamic Probabilistic Mutation PSO

Under the premise of ensuring population diversity, PSO can effectively explore the solution area and has a fast convergence speed. However, the search can easily stall due to the lack of diversity during the search procedure. Once trapped in premature convergence, it is difficult to escape from local optimization [64–67]. To solve this problem, we have to enhance the population diversity in the late iteration in order to avoid falling into local optimum. According to [68], in the paper, we learn that DE effectively helps PSO jump out of the local optimum and improve the population diversity when the PSO algorithm falls into local optimum in the late iteration, and the literature [48, 68, 69] all shows that the DE algorithm combined with the PSO algorithm can effectively improve the algorithm performance and avoid premature convergence. In addition, some algorithms such as DEPSO [48] substantially increase the computational complexity in each iteration by comparing two different trial vectors when adapting. Therefore, in this paper, we choose to help the algorithm improve its diversity and at the same time avoid adding too much computational complexity by observing the results of the previous iterations to predict whether to join the DE algorithm next time. This paper proposes a novel dynamic probabilistic mutation PSO to improve local search in the later iteration. As shown in Figure 6, the improved mutation operator is introduced in PSO for increasing the population diversity and helping the algorithm get away from local convergence. The specific improvements can be seen below.Figure 6
Schematic diagram of CWDEPSO. represents the optimal value.


### 4.1. Monitor Global OptimumgbestG Update

First, the global optimumgbestG of each generation is monitored. Once the i-th particle of G-th generation fails to update the global optimum, the flag bit γi corresponding to the particle is increased by one. When the flag bit γi of all particles is greater than one, that is, all particles of the G-th generation fail to search the optimal value, it is considered to be trapped within a local optimum, which might affect the effect of population convergence. We will use methods increasing the probability of mutation according to the change in the flag bit γi to aid the population jump out of local convergence.


### 4.2. Improvement of Mutation Operator

In addition, an appropriate mutation operator needs to be selected. The DE/current-to-best/1 mutation operator possesses great local development capabilities and fast convergence speed, which can reflect the current particle state, but in comparison, the global development ability is poor. The DE/rand/1 and DE/rand/2 mutation operators depend on other random individuals, which are conducive to improving the population diversity. The global convergence competence is strong, but the convergence speed is relatively slow. Even if PSO updates the global optimumgbestG unsuccessfully in the current population, the corresponding current particles still have a high development value. Considering that the algorithm is mostly at the end of evolution when it falls into local convergence, it should pay more attention to the local development ability; we thus take the DE/current-to-best/1 mutation operator as the basis and improve it. The new mutation operator DE/current-to-gbest/1 is as follows:(23)ViG=α⋅XiG+F⋅gbestG−XiG+K⋅Xr1G−Xr2G,where K is a variable independent of the scaling factor and α is a variable that changes with the number of iterations. Making the variable α gradually increase with the number of iterations can reduce the influence of local convergence of the PSO in the later stage and improve the ability to explore the surrounding area. Mathematically, the variable α is given as follows:(24)α=0.8+0.2⋅GGmax.In contrast, the population diversity decreases as the number of iterations increases, and the variableK affecting the population diversity should increase as the iterations increase. Otherwise, it will still fall into local convergence. K is defined as follows:(25)K=0.1+0.2⋅GGmax.By strengthening the exploration of the global situation in the early period and focusing on the exploration of the current local area in the later stage, the balance between local and global convergences is effectively maintained.


### 4.3. Processing of Monitoring Data

When all particle flagsγi>1, the count variable count increases by one. With the increase in count, it indicates that the number of convergence failures gradually increases, which means that the algorithm is more likely to fall into the state of local convergence. The initial increase in the variable count has contingency, but the more the count increases, the more likely it falls into premature convergence. Therefore, we define a probability p, which represents the probability of the algorithm quoting mutation ideas. The larger the count, the larger the probability p. Inspired by the exponential formula update probability in the literature [49], the paper uses an exponential formula to control the probability p of introducing mutation ideas. The probability p is set as follows:(26)p=e−Gmax−10⋅count/Gmax,where Gmax is the evolutions’ maximum number.If the flag bitγi corresponding to the i-th particle is greater than the warning value θ, it means that the individual has a high probability of falling into local convergence that is not easy to escape. As a result, the reference value of the particle would be low. This paper sets the warning value θ=Gmax/5 in this article and gives it a proper probability to reinitialize it. The specific operation is as follows:(27)xij=xlj+rand0,1×xuj−xlj,if rand0,1<0.01,xij,otherwise,where j=1,2,…,D.The complete monitoring mechanism is shown in Figure7.Figure 7
Process of monitoring mechanism.


### 4.4. Modification of Selection Method

After the mutation operation, the algorithm will proceed according to the crossover and selection operation of DE. For the select operation, the fundamental DE and a lot of DE variants adopt the greedy selection method, while greedy selection often leads to the abandonment of many good individuals falling into local convergence [63]. In order to fully mine the effective information of these excellent individuals, we have added a temporary population to save these abandoned individuals temporarily as follows:(28)tempiG=UiG,iffViG<fUiG,ViG,otherwise,where tempG holds all the individuals who have been eliminated in the contemporary era. Some of the outstanding individuals in the tempG have a higher probability than the worst individuals of the current updated population. If the worst individual within the brand-new population is worse than the best individual within the temporary population, it is replaced. It is worth noting that if too many individuals are replaced, it will cause local convergence.On the basis of the analysis before, the pseudocode of CWDEPSO can be seen below (Algorithm1).Algorithm 1:Pseudocode of the CWDEPSO algorithm.
(1)
Step 1: initialization(2)
Parameter initialization:NP,D,Gmax,G=1,μF=μCR=0.5,γ=0(3)
Generate initial population:pop0(4)
Find the initialpbest and gbest of the population(5)
Step 2: update parameters(6)
Whileiter<itermax(7)
Update the inertia weightsω adopting equation (14)(8)
Update the social componentc2 and the cognitive component c1 using equations (15) and (16)(9)
CalculateFi and CRi of each particle using equations (17) and (20)(10)
Update the probabilityP using equation (26)(11)
Step 3: finding the optimal value through iteration(12)
Fori=1:NP do(13)
Update the velocityVi adopting equation (1)(14)
Using equation (2) to update the position of the particle Xi(15)
End For(16)
Ifrand0,1<P(17)
Fori=1:NP do(18)
Mutation operation using equation (23)(19)
Crossover and boundary processing using equations (10) and (11), respectively(20)
Using equations (12) and (28) to get Xi and tempi(21)
Update parametersμFi and μCRi using equations (18) and (21), respectively(22)
End For(23)
Select the better one between the worst oftempiand the best of Xi(24)
Updatepbest and gbest(25)
Else(26)
Calculate the fitness of particles in the population and updatepbest and gbest(27)
End If(28)
If failed to updategbestG(29)
flag bitγi=γi+1(30)
Else(31)
γi=0(32)
End If(33)
If flag bitγi> warning value θ(34)
Choose whether to initialize the particle using equation (27)(35)
End If(36)
If flag bits of all particlesγ>0(37)
number of failurescount=count+1;(38)
End If(39)
G=G+1(40)
Step 4: output result(41)
End While


## 4.1. Monitor Global OptimumgbestG Update

First, the global optimumgbestG of each generation is monitored. Once the i-th particle of G-th generation fails to update the global optimum, the flag bit γi corresponding to the particle is increased by one. When the flag bit γi of all particles is greater than one, that is, all particles of the G-th generation fail to search the optimal value, it is considered to be trapped within a local optimum, which might affect the effect of population convergence. We will use methods increasing the probability of mutation according to the change in the flag bit γi to aid the population jump out of local convergence.


## 4.2. Improvement of Mutation Operator

In addition, an appropriate mutation operator needs to be selected. The DE/current-to-best/1 mutation operator possesses great local development capabilities and fast convergence speed, which can reflect the current particle state, but in comparison, the global development ability is poor. The DE/rand/1 and DE/rand/2 mutation operators depend on other random individuals, which are conducive to improving the population diversity. The global convergence competence is strong, but the convergence speed is relatively slow. Even if PSO updates the global optimumgbestG unsuccessfully in the current population, the corresponding current particles still have a high development value. Considering that the algorithm is mostly at the end of evolution when it falls into local convergence, it should pay more attention to the local development ability; we thus take the DE/current-to-best/1 mutation operator as the basis and improve it. The new mutation operator DE/current-to-gbest/1 is as follows:(23)ViG=α⋅XiG+F⋅gbestG−XiG+K⋅Xr1G−Xr2G,where K is a variable independent of the scaling factor and α is a variable that changes with the number of iterations. Making the variable α gradually increase with the number of iterations can reduce the influence of local convergence of the PSO in the later stage and improve the ability to explore the surrounding area. Mathematically, the variable α is given as follows:(24)α=0.8+0.2⋅GGmax.In contrast, the population diversity decreases as the number of iterations increases, and the variableK affecting the population diversity should increase as the iterations increase. Otherwise, it will still fall into local convergence. K is defined as follows:(25)K=0.1+0.2⋅GGmax.By strengthening the exploration of the global situation in the early period and focusing on the exploration of the current local area in the later stage, the balance between local and global convergences is effectively maintained.


## 4.3. Processing of Monitoring Data

When all particle flagsγi>1, the count variable count increases by one. With the increase in count, it indicates that the number of convergence failures gradually increases, which means that the algorithm is more likely to fall into the state of local convergence. The initial increase in the variable count has contingency, but the more the count increases, the more likely it falls into premature convergence. Therefore, we define a probability p, which represents the probability of the algorithm quoting mutation ideas. The larger the count, the larger the probability p. Inspired by the exponential formula update probability in the literature [49], the paper uses an exponential formula to control the probability p of introducing mutation ideas. The probability p is set as follows:(26)p=e−Gmax−10⋅count/Gmax,where Gmax is the evolutions’ maximum number.If the flag bitγi corresponding to the i-th particle is greater than the warning value θ, it means that the individual has a high probability of falling into local convergence that is not easy to escape. As a result, the reference value of the particle would be low. This paper sets the warning value θ=Gmax/5 in this article and gives it a proper probability to reinitialize it. The specific operation is as follows:(27)xij=xlj+rand0,1×xuj−xlj,if rand0,1<0.01,xij,otherwise,where j=1,2,…,D.The complete monitoring mechanism is shown in Figure7.Figure 7
Process of monitoring mechanism.


## 4.4. Modification of Selection Method

After the mutation operation, the algorithm will proceed according to the crossover and selection operation of DE. For the select operation, the fundamental DE and a lot of DE variants adopt the greedy selection method, while greedy selection often leads to the abandonment of many good individuals falling into local convergence [63]. In order to fully mine the effective information of these excellent individuals, we have added a temporary population to save these abandoned individuals temporarily as follows:(28)tempiG=UiG,iffViG<fUiG,ViG,otherwise,where tempG holds all the individuals who have been eliminated in the contemporary era. Some of the outstanding individuals in the tempG have a higher probability than the worst individuals of the current updated population. If the worst individual within the brand-new population is worse than the best individual within the temporary population, it is replaced. It is worth noting that if too many individuals are replaced, it will cause local convergence.On the basis of the analysis before, the pseudocode of CWDEPSO can be seen below (Algorithm1).Algorithm 1:Pseudocode of the CWDEPSO algorithm.
(1)
Step 1: initialization(2)
Parameter initialization:NP,D,Gmax,G=1,μF=μCR=0.5,γ=0(3)
Generate initial population:pop0(4)
Find the initialpbest and gbest of the population(5)
Step 2: update parameters(6)
Whileiter<itermax(7)
Update the inertia weightsω adopting equation (14)(8)
Update the social componentc2 and the cognitive component c1 using equations (15) and (16)(9)
CalculateFi and CRi of each particle using equations (17) and (20)(10)
Update the probabilityP using equation (26)(11)
Step 3: finding the optimal value through iteration(12)
Fori=1:NP do(13)
Update the velocityVi adopting equation (1)(14)
Using equation (2) to update the position of the particle Xi(15)
End For(16)
Ifrand0,1<P(17)
Fori=1:NP do(18)
Mutation operation using equation (23)(19)
Crossover and boundary processing using equations (10) and (11), respectively(20)
Using equations (12) and (28) to get Xi and tempi(21)
Update parametersμFi and μCRi using equations (18) and (21), respectively(22)
End For(23)
Select the better one between the worst oftempiand the best of Xi(24)
Updatepbest and gbest(25)
Else(26)
Calculate the fitness of particles in the population and updatepbest and gbest(27)
End If(28)
If failed to updategbestG(29)
flag bitγi=γi+1(30)
Else(31)
γi=0(32)
End If(33)
If flag bitγi> warning value θ(34)
Choose whether to initialize the particle using equation (27)(35)
End If(36)
If flag bits of all particlesγ>0(37)
number of failurescount=count+1;(38)
End If(39)
G=G+1(40)
Step 4: output result(41)
End While


## 5. Experimental Results and Discussion

In this section, the performance of CWDEPSO is evaluated by 24 benchmark functions that have been adopted widely in the field of numerical optimization methods [58, 70, 71], most of which belong to CEC2017 [72, 73], as shown in Tables 1–3. The experiment can be classified into two parts. The first part compares CWDEPSO with PSO, DE, and their variants AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO. The second part compares CWDEPSO with several other well-known optimization algorithms (GSA, ABC, SCA, MFO, and BBO). All of the algorithms are coded in MATLAB R2018a and run on a PC with an Intel(R) Core(TM) i7-7700HQ CPU@2.80 GHz/8GB RAM.Table 1
Unimodal benchmark functions.
FunctionScopeDimNamef1x=∑i=1Dxi2[−100, 100]30Spheref2x=x12+106∑i=2Dxi2[−10, 10]30Bent Cigarf3x=∑i=1Dxii+1[−100, 100]30Sum of different powersf4x=∑i=1Dxi2+∑i=1D0.5xi2+∑i=1D0.5xi4[−5, 10]30Zakharovf5x=∑i=1Dixi4+random0,1[−1.28, 1.28]30NoiseTable 2
Multimodal benchmark functions.
FunctionScopeDimNamef6x=∑i=1D−1100xi+1−xi22+xi−12[−10, 10]30Rosenbrockf7x=∑i=1Dxi2−10cos2πxi+10[100, 100]30Rastriginf8x=−20exp−0.21/n∑i=1Dxi2−exp1/n∑i=1Dcos2πxi+20+e[−32, 30]30Ackleyf9x=sin2πw1+∑i=1D−1wi−121+10sin2πwi+1+wD−121+sin22πwDwi=1+xi−1/4[−10, 10]30Levyf10x=∑i=1D106i−1/D−1xi2[−10, 10]30High conditioned ellipticf11x=106xi2+∑i=2Dxi2[−10, 10]30Discusf12x=∑i=1Dxi22−∑i=1Dxi21/2+0.5∑i=1Dxi2+∑i=1Dxi/D+0.5[−10, 10]30HGBatf13x=1/4000∑i=1Dxi2−∏i=1Dcosxi/i+1[−600, 600]30Griewankf14x=∑i=1D∑k=1kmaxakcosxi+0.5−D∑k=1kmaxakcos2πbk⋅0.5a=0.25,b=3,kmax=20[−10, 10]30Weierstrassf15x=10/D2∏i=1D1+i∑j=1322jxi−round2jxi/2j10/D1.2−10/D2[−10, 10]30Katsuuraf16x=∑i=1Dxi2−D1/4+0.5∑i=1Dxi2+∑i=1Dxi/D+0.5[−10, 10]30HappyCatf17=1/D−1∑i=1D−1si⋅sin50.0si0.2+12,si=xi2+xi+12[−10, 10]30Schaffer’s F7f18x=∑i=1Dxi2−10cos2πxi+10+f13∗[100, 100]30Noncontinuous rotated Rastriginf19x=π/D10sin2πy1+∑i=1D−1yi−121+10sin2πyi+1+yD−12+∑i=1nuxi,10,100,4,yi=1+xi+1/4uxi,a,k,m=kxi−am,xi>a,0,−a≤xi≤a,k−xi−am,xi<−a,[−50, 50]30Penalized 1f20x=1/10sin23πx1+∑i=1D−1xi−12+sin23πxi+1+xD−121+sin22πxD+∑i=1nuxi,5,100,4[−50, 50]30Penalized 2f21x=∑i=1Dxisinxi+0.1xi[−10, 10]30AlpineTable 3
Multimodal benchmark functions with fixed dimensions.
FunctionScopeDimNamef22x=∑i=111ai−x1bi2+bix2/bi2+bix3+x42[−5, 5]4Kowalikf23x=−∑i=14ciexp−∑j=16aijxj−pij2[0, 1]6Hartman 6f24x=∑i=110X−aiX−aiT+ci−1[0, 10]4Shekel_10


### 5.1. Test Function

The benchmark functions adopted within the article are divided into three categories, andf1∼f5 are unimodal functions, where f5 contains noise interference; f6∼f22 are multimodal function. Among them, the local optimum of f7 is large, and the suboptimal value differs significantly from the global optimum. The characteristic of f8 is that it has a very narrow global basin, so it can be rather easy to fall into a local optimum. f23∼f25 are multimodal benchmark functions with fixed dimensions. The three types are listed in Tables 1–3. Dim and Scope, respectively, represent the solution space dimension and range of the solution, and type represents the type of the current function.


### 5.2. Comparison of CWDEPSO with PSO, DE, JADE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO

CWDEPSO is compared with PSO, DE, and their variants AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO in this part. To ensure a fair comparison, we set the parameters in both sets of experiments all according to the original paper, strictly following the steps in the literature [58, 59], and the population size is set to 500. It is worth noting that the algorithm CWDEPSO proposed in this paper has the same number of function evaluations as PSO and DE in each iteration, so it can ensure fairness in the case of the same number of iterations. Also, the initial populations of all algorithms are generated with random numbers, and each group is run twenty times independently. The specific parameters are set as follows:PSO setting:c1=c2=2,ω=0.9∼0.4,Vmax=0.2×Bound.AIWCPSO setting:c1=c2=2,ω=0.9∼0.4,Vmax=0.2×Bound.MPSPSO-ST setting:∂=0.2, θ=1.5, ϕ=0.9, τ=0, ρ=0.1, Vmax=0.2×BoundDE setting:F=0.5,CR=0.5.JADE setting:p=0.05,c=0.1.SinDE settings:freq=0.25.DEPSO settings:k=4.CWDEPSO setting:c1:2.5∼0.5,c2:0.5∼2.5,ω=0.924∼0.375,c=0.1,Vmax=0.2×Bound.The benchmark functions adopted in this section have been presented within Tables1–3. For the purpose of reducing statistical mistakes, all the test functions are independently evaluated 20 times. The obtained best value (Best), the worst value (Worst), the mean results (Mean), and the standard deviation (S.D.) by statistics are presented in Table 4, with the optimal values identified in bold. For the purpose of facilitating the comparison of the mean and the S.D., we represent the data with a radar chart, as shown in Figure 8. Figure 9 represents the trajectory of the average of the algorithm on the current test function.Table 4
Experiments were carried out on 24 classical test functions with CWDEPSO, PSO, DE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO.
fCriteriaCWDEPSOPSODEAIWCPSOMPSPSO-STJADESinDEDEPSOf1Best7.59E − 283.04E − 017.13E − 045.10E − 069.63E − 152.85E − 131.18E − 036.92E − 10Worst3.98E − 241.42E + 002.27E − 037.84E − 051.64E − 065.21E − 123.49E − 031.45E − 09Mean7.88E − 257.12E − 011.33E − 033.37E − 051.65E − 072.23E − 122.42E − 031.11E − 09S.D.4.03E − 241.40E + 001.92E − 038.74E − 051.56E − 064.75E − 122.42E − 039.27E − 10f2Best1.69E − 241.27E + 033.46E + 001.64E + 002.93E − 091.11E − 097.58E + 005.09E − 04Worst3.48E − 207.25E + 031.54E + 011.33E + 022.02E + 029.61E − 081.87E + 011.21E − 03Mean4.93E − 214.11E + 039.12E + 002.04E + 012.02E + 014.42E − 081.24E + 018.38E − 04S.D.3.33E − 205.15E + 031.20E + 011.20E + 021.92E + 021.01E − 071.13E + 015.89E − 04f3Best3.39E − 721.20E + 073.61E + 001.91E − 048.90E − 244.42E − 192.37E − 011.33E − 16Worst3.26E − 633.11E + 112.87E + 101.83E + 018.22E − 171.43E − 143.01E + 261.53E − 15Mean3.37E − 643.21E + 102.87E + 092.04E + 008.31E − 183.15E − 153.01E + 257.05E − 16S.D.3.08E − 632.94E + 112.73E + 101.73E + 017.79E − 171.53E − 142.85E + 261.47E − 15f4Best4.13E − 188.03E + 002.01E + 024.03E + 011.82E + 011.12E − 011.25E + 021.15E − 08Worst3.93E − 154.37E + 013.08E + 021.30E + 023.82E + 021.60E + 012.59E + 024.20E − 08Mean4.40E − 162.31E + 012.63E + 026.78E + 012.04E + 024.10E + 001.93E + 022.50E − 08S.D.3.68E − 153.20E + 011.05E + 028.17E + 013.07E + 021.74E + 011.17E + 022.63E − 08f5Best1.26E − 033.39E − 021.80E − 014.25E − 022.50E − 022.08E − 011.75E − 017.76E − 03Worst2.26E − 037.37E − 025.95E − 011.22E − 018.35E − 024.99E − 016.87E − 012.24E − 02Mean1.74E − 035.45E − 023.79E − 017.76E − 024.74E − 023.50E − 013.62E − 011.32E − 02S.D.1.12E − 034.55E − 024.23E − 018.31E − 025.41E − 022.88E − 014.54E − 011.56E − 02f6Best5.45E − 012.91E + 012.71E + 012.06E + 012.76E + 016.92E + 002.65E + 015.94E − 04Worst2.55E + 011.44E + 026.69E + 011.03E + 021.05E + 027.70E + 019.40E + 011.35E − 03Mean1.93E + 016.59E + 013.34E + 016.45E + 017.04E + 012.63E + 013.45E + 017.97E − 04S.D.2.97E + 011.16E + 023.62E + 018.90E + 019.01E + 015.61E + 016.28E + 016.40E − 04f7Best5.33E − 154.10E + 011.28E + 023.78E + 015.67E + 011.71E + 019.92E + 019.95E − 01Worst2.98E + 016.62E + 011.60E + 027.16E + 018.76E + 013.09E + 011.23E + 023.38E + 01Mean3.58E + 005.06E + 011.52E + 024.94E + 017.34E + 012.29E + 011.14E + 021.39E + 01S.D.2.81E + 012.84E + 012.78E + 013.29E + 013.15E + 011.44E + 012.43E + 013.11E + 01f8Best7.55E − 146.76E − 026.65E − 037.19E − 049.31E − 017.80E − 081.14E − 022.03E − 05Worst3.63E − 122.15E + 001.96E − 022.74E + 006.35E + 009.31E − 012.54E − 022.72E − 05Mean6.84E − 131.24E + 001.12E − 023.94E − 013.31E + 009.31E − 021.59E − 022.28E − 05S.D.3.60E − 122.17E + 001.27E − 022.70E + 004.85E + 008.84E − 011.15E − 027.19E − 06f9Best1.06E − 075.77E − 031.31E − 042.07E − 033.36E + 002.27E − 141.10E − 043.29E − 10Worst4.48E − 017.61E − 011.24E − 034.58E + 002.01E + 014.54E − 011.53E − 031.57E − 09Mean1.16E − 011.62E − 013.45E − 042.41E + 008.14E + 008.12E − 024.50E − 048.25E − 10S.D.4.57E − 017.53E − 019.90E − 045.26E + 001.45E + 014.15E − 011.24E − 031.03E − 09f10Best7.93E − 272.50E + 008.35E − 032.90E − 033.25E − 103.76E − 117.74E − 032.00E − 05Worst3.04E − 212.34E + 012.90E − 026.66E − 027.57E + 013.85E − 072.29E − 026.03E − 05Mean3.90E − 221.09E + 011.59E − 023.16E − 028.90E + 003.88E − 081.56E − 024.01E − 05S.D.2.85E − 211.94E + 012.11E − 026.61E − 027.09E + 013.65E − 071.41E − 023.89E − 05f11Best4.52E − 281.26E − 031.15E − 051.04E − 052.04E − 142.16E − 141.81E − 056.28E − 07Worst3.87E − 242.79E − 021.04E − 042.71E − 043.40E − 067.56E − 131.08E − 049.80E − 07Mean4.78E − 251.13E − 022.93E − 056.34E − 055.20E − 071.65E − 134.73E − 058.27E − 07S.D.3.62E − 242.75E − 028.45E − 052.29E − 043.48E − 066.75E − 138.58E − 053.83E − 07f12Best3.85E − 012.11E − 012.65E − 013.12E − 012.60E − 013.12E − 013.14E − 015.82E − 02Worst6.90E − 011.04E + 009.84E − 011.13E + 001.06E + 007.60E − 016.65E − 011.46E − 01Mean5.33E − 015.42E − 014.47E − 016.81E − 016.48E − 014.57E − 014.03E − 018.68E − 02S.D.3.87E − 011.00E + 00 6.61E − 011.06E + 009.56E − 015.38E − 012.91E − 018.62E − 02f13Best0.00E + 005.30E − 011.50E − 031.71E − 051.89E − 132.42E − 131.92E − 037.49E − 11Worst2.95E − 028.95E − 011.20E − 011.43E − 029.34E − 021.49E − 025.72E − 021.97E − 02Mean1.01E − 027.05E − 012.72E − 025.24E − 033.60E − 022.23E − 031.13E − 021.03E − 02S.D.3.55E − 023.78E − 011.42E − 011.19E − 021.14E − 011.49E − 025.00E − 022.05E − 02f14Best−8.70E + 02−8.02E + 02−8.70E + 02−8.69E + 02−8.68E + 02−7.21E + 02−8.70E + 02−8.70E + 02Worst−8.49E + 02−7.72E + 02−8.70E + 02−8.43E + 02−8.34E + 02−6.87E + 02−8.70E + 02−8.70E + 02Mean−8.66E + 02−7.87E + 02−8.70E + 02−8.62E + 02−8.52E + 02−7.08E + 02−8.70E + 02−8.70E + 02S.D.2.21E + 012.18E + 010.00E + 002.37E + 014.04E + 012.91E + 010.00E + 000.00E + 00f15Best0.00E + 004.30E − 110.00E + 001.98E − 111.40E − 115.49E − 120.00E + 000.00E + 00Worst5.87E − 135.13E − 110.00E + 005.15E − 114.20E − 118.24E − 120.00E + 004.95E − 11Mean9.69E − 144.71E − 110.00E + 004.64E − 112.16E − 117.15E − 120.00E + 002.47E − 11S.D.5.43E − 135.88E − 120.00E + 002.86E − 112.56E − 112.48E − 120.00E + 003.50E − 11f16Best1.31E − 012.83E − 014.74E − 012.69E − 012.17E − 012.83E − 014.42E − 011.46E − 01Worst5.26E − 015.68E − 016.24E − 016.56E − 014.44E − 014.69E − 016.00E − 011.87E − 01Mean3.41E − 014.26E − 015.69E − 014.32E − 013.26E − 013.47E − 015.38E − 013.66E − 01S.D.3.88E − 012.02E − 011.56E − 013.76E − 012.65E − 012.00E − 011.33E − 012.88E − 02f17Best0.00E + 002.96E − 010.00E + 001.12E − 023.21E − 012.31E − 010.00E + 004.08E − 02Worst0.00E + 003.16E − 011.67E − 087.92E − 025.76E − 012.84E − 017.46E − 081.96E − 01Mean0.00E + 003.06E − 013.55E − 093.06E − 024.22E − 012.55E − 017.67E − 091.17E − 01S.D.0.00E + 001.44E − 021.59E − 087.14E − 022.26E − 015.51E − 027.06E − 081.10E − 01f18Best0.00E + 004.24E + 019.99E + 012.50E + 011.60E + 012.26E + 016.94E + 016.71E − 05Worst7.81E + 007.96E + 011.30E + 026.31E + 017.00E + 012.81E + 018.65E + 013.59E − 04Mean8.48E − 016.10E + 011.13E + 024.71E + 013.41E + 012.49E + 017.58E + 012.27E − 04S.D.7.36E + 002.63E + 012.90E + 013.76E + 014.57E + 014.65E + 001.33E + 012.32E − 04f19Best1.84E − 122.11E − 041.22E − 021.23E − 104.09E − 196.65E − 177.19E − 035.00E − 09Worst6.01E − 112.10E − 013.75E − 021.04E − 016.23E − 016.56E − 114.84E − 026.69E − 09Mean1.81E − 111.05E − 012.19E − 022.07E − 021.87E − 011.58E − 112.28E − 025.82E − 09S.D.5.37E − 111.48E − 013.05E − 021.31E − 017.01E − 016.22E − 113.74E − 021.20E − 09f20Best0.00E + 003.49E + 011.18E + 022.38E + 013.70E + 012.04E + 016.89E + 016.71E − 05Worst3.60E + 009.91E + 011.33E + 026.62E + 018.90E + 012.61E + 019.04E + 013.59E − 04Mean7.17E − 016.55E + 011.24E + 023.87E + 015.88E + 012.35E + 017.67E + 012.27E − 04S.D.4.24E + 005.81E + 011.74E + 014.11E + 015.53E + 015.42E + 002.11E + 012.32E − 04f21Best4.81E − 105.44E − 032.21E − 011.89E − 054.66E − 111.96E − 021.63E − 011.88E − 02Worst1.12E − 058.17E − 033.49E + 001.86E − 041.72E − 023.12E − 023.07E + 006.25E − 02Mean2.81E − 066.81E − 031.36E + 004.94E − 051.73E − 032.53E − 021.44E + 004.67E − 02S.D.1.15E − 051.93E − 033.11E + 001.51E − 041.64E − 021.08E − 023.08E + 003.42E − 02f22Best3.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 04Worst3.07E − 043.08E − 041.22E − 031.11E − 031.03E − 033.07E − 043.07E − 043.07E − 04Mean3.07E − 043.08E − 043.99E − 046.77E − 045.89E − 043.07E − 043.07E − 043.07E − 04S.D.3.15E − 182.29E − 078.69E − 049.82E − 041.09E − 033.07E − 192.34E − 117.71E − 10f23Best−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00Worst−3.20E + 00−3.20E + 00−3.20E + 00−3.20E + 00−3.20E + 00−3.32E + 00−3.20E + 003.20E + 00Mean−3.31E + 00−3.30E + 00−3.25E + 00−3.25E + 00−3.29E + 00−3.32E + 00−3.29E + 00−3.26E + 00S.D.1.13E − 011.50E − 011.73E − 011.84E − 011.72E − 011.40E − 151.72E − 011.88E − 01f24Best−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01Worst−1.05E + 01−2.43E + 00−3.84E + 00−5.13E + 00−2.43E + 00−1.05E + 01−1.05E + 01−5.18E + 00Mean−1.05E + 01−8.19E + 00−9.20E + 00−8.92E + 00−7.07E + 00−1.05E + 01−1.05E + 01−1.00E + 01S.D.6.15E − 151.14E + 018.48E + 007.79E + 001.13E + 016.70E − 156.35E − 155.09E + 00Figure 8
Radar chart of eight algorithms, mean and S.D.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)Figure 9
Compare eight algorithms’ convergence curves for different benchmark functions: (a)f2; (b) f3; (c) f4; (d) f5; (e) f6; (f) f7; (g) f8; (h) f9; (i) f10; (j)f13; (k) f17; (l) f22.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)As shown in Table4, the single-peaked functions f1∼f5 are significantly more accurate for the optimization of CWDEPSO compared with the other seven algorithms, achieving the best results in each index. Among the multipeaked functions, as for f6, the best results are obtained by DEPSO, followed by CWDEPSO. For the f8 functions, CWDEPSO performs well and converges with the best accuracy. For the multimodal function f9, the best value is obtained by JADE, while DEPSO performs best among the worst, mean, and S.D., which obtains more accurate results than others. In the multimodal functions f10 and f11, CWDEPSO performs the best. For the f12 functions, DEPSO achieves the best performance. In f13, CWDEPSO succeeds in achieving the theoretical optimum, but WORST and S.D. are slightly worse than AIWCPSO, and the mean value is inferior to JADE. Forf16,f17,f19, and f21, CWDEPSO shows the highest convergence accuracy compared to other comparing algorithms, finding the optimal result and providing the best performance. For f14andf15, DE can search for the optimal value, and CWDEPSO performs the same as DE in terms of the best value. For f18 and f20, the search for the optimal solution is found by DEPSO and JADE, respectively, but for f18, CWDEPSO performs best in the best and successfully achieves the theoretical optimal solution of the function. For the fixed-dimensional multimodal benchmark functions f22,f23, and f24, CWDEPSO still has a good performance. It performs slightly worse than JADE on function f23 and achieves the best performance in f24.In accordance with [70], to make the comparison results statistically significant and reliable, Wilcoxon’s rank-sum test was used to test the results of different algorithms for significant differences at 5% significance level. If there is a significant difference, then it is 1; otherwise, it is 0. Table 5 shows the results of the Wilcoxon’s rank-sum test for each algorithm on each function. We can find that, inf1∼f11 and f14∼f22, CWDEPSO is significantly different from the other algorithms on most of the tested functions; however, there is no significant difference in some of the functions: DEf9, PSOf9,f16, JADEf6,f9,f16, SinDEf9,f17, AIWCPSOf16,f20, MPSPSO-STf16,f19,f22, and DEPSO f15∼f22. In f12, there is a significant difference only with SinDE and DEPSO, and in f13, there is a significant difference only with PSO. In f23andf24, there are less significant differences since all the algorithms converge around the theoretical optimum. But there are still significant differences in some functions: DEf23,f24, DEPSOf23,f24, JADEf23, and SinDEf24.Table 5
The results of Wilcoxon’s rank-sum test for the seven algorithms on different test functions.
PSODEAIWCPSOMPSPSO-STJADESinDEDEPSOf11111111f21111111f31111111f41111111f51111111f61111011f71111111f81111111f90011001f101111111f111111111f120000011f131000000f141111110f151111110f160100010f171111100f181111110f191110110f201101110f211111110f221110110f230100001f240100111Figure9 shows the convergence images of the eight algorithms in the 10 tested functions f2,f3,f4,f5,f6,f7,f8,f9,f10,f13,f17,f22. From Figure 9(a), it can be seen that CWDEPSO has the best performance in this function. In Figure 9(b), we can find that CWDEPSO has the largest convergence accuracy and convergence speed. As shown in Figure 9(c), CWDEPSO still has the best performance in terms of convergence accuracy and speed. In Figure 9(d), CWDEPSO can effectively overcome the noise interference of this function, and the convergence accuracy and speed are optimal. In terms of multimodal functions, DEPSO shows the best performance in Figures 9(e) and 9(h). In Figure 9(f), CWDEPSO has a higher convergence accuracy than the remaining seven algorithms. In Figure 9(g), CWDEPSO has excellent global and local search capability and can escape local extremes effectively. In Figure 9(i), CWDEPSO is clearly superior to the remaining seven algorithms. In Figure 9(j), JADE achieves the highest convergence accuracy, but CWDEPSO converges very close to it and converges faster. In Figures 9(k) and 9(l), CWDEPSO outperforms all other algorithms with the fastest convergence speed and the best search accuracy.In this paper, comparing algorithm CWDEPSO to PSO, DE adds some parameter operations. Among them, the scaling factor F and crossover probability CR in the DE algorithm account for most of them, which increases the running time a lot. It is known that the time complexity of both PSO and DE isOGmax⋅Np⋅D[41]. Compared with PSO, CWDEPSO adds the introduction of the DE algorithm, which has a time complexity of OGmax⋅Np⋅D, and also adds the parameter update process, which has a complexity of OGmax⋅Np, so the complexity of CWDEPSO is OGmax⋅Np⋅D. Table 6 shows the running time required for each algorithm until all iterations are completed. We can find that PSO requires the least amount of computing time, followed by AIWCPSO, but DEPSO takes a very long time. Also, the algorithms proposed in this paper, CWDEPSO and JADE, run in approximately the same time. It is worth noting that CWDEPSO takes less time than MPSPSO-ST in some complex test functions f10,f14,f15, etc., and the time is roughly similar to DE. The extra time is mainly spent on parameter update operations, similar to JADE. Therefore, as the difficulty in the test function increases, the running time does not vary as much as that of DEPSO and MPSPSO-ST.Table 6
The running time of the eight algorithms on different test functions.
CWDEPSOMPSPSO-ST (s)JADE (s)PSO (s)DEAIWCPSOSinDEDEPSOf11.0653s0.72870.97230.16510.3861s0.1721s0.3552s11.5504sf21.0995s0.95031.08110.17960.4291s0.2171s0.4515s21.9234sf31.3302s1.39541.31920.29400.6151s0.2938s0.6389s14.7475sf41.2175s1.07661.19020.24300.5144s0.2323s0.5097s22.8226sf51.1963s1.17251.17460.25790.5292s0.2528s0.5412s32.0585sf61.1079s0.95511.17440.20430.4396s0.2085s0.4317s23.2556sf71.0881s0.85671.11790.20910.4183s0.1911s0.4090s21.2581sf81.4138s1.10771.37640.26260.5914s0.2577s0.5376s28.5731sf91.2172s1.05321.22470.24000.4730s0.2285s0.4757s20.5048sf101.3385s1.52771.44690.31530.6731s0.3209s0.6608s41.6464sf111.1542s0.92171.19140.20100.4477s0.2228s0.4591s22.5763sf121.2787s1.12291.23660.24190.5173s0.2373s0.5246s28.8664sf131.2617s1.36551.30030.29500.6161s0.2943s0.6128s32.3458sf1433.2016s80.730134.847716.072533.4909s16.0757s33.8106s826.263sf1539.6449s96.068640.418618.772038.1136s18.8152s36.9709s989.603sf163.6889s4.21733.96640.77801.6266s0.8859s1.5547s74.861sf174.7480s6.94206.28731.49502.5856s1.4324s3.2057s209.717f185.0012s6.78745.41421.44102.8880s1.4071s2.9385s92.6985sf195.6041s2.68876.19481.62213.3629s1.5848s3.3518s126.543sf208.2152s11.01868.04532.17724.5801s2.2404s4.2489s227.856sf213.5906s2.70183.62650.60901.3123s0.5891s1.2948s62.803sf223.1939s1.87923.49710.27350.90100.35070.920851.538sf230.9269s0.61280.99960.10830.3092s0.1103s0.3138s4.9359sf241.4982s1.98531.49770.37960.8699s0.3763s0.8538s17.9298sIn general, as shown in Tables4 and 5 and Figure 9, CWDEPSO has better convergence speed and search accuracy than PSO, DE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO, so combining DE and PSO in this way can effectively improve the algorithm. The performance proves that CWDEPSO is a more efficient algorithm for numerical optimization.


### 5.3. Comparison of CWDEPSO with Other Algorithms

In this part, we compared CWDEPSO algorithm with the optimization algorithms put forward recently, including the BBO [5], SCA [6], MFO [7], ABC [11], and GSA [12]. To ensure a fair comparison, we set the parameters in both sets of experiments all according to the original paper, where the number of generations is set to 500 and the size of the population is set to 40. Each is conducted independently 20 times, and the details are listed as follows:GSA setting:G0=100,α=20.ABC setting:Limit=200.MFO setting:tis a random number in the range−2,1.SCA setting:r1,r2,r3,andr4are random number.BBO setting:mu=0.005,μ=0.8.CWDEPSO setting:c1:2.5∼0.5,c2:0.5∼2.5,ω=0.924∼0.375,c=0.1,Vmax=0.2×Bound.The test functions used in this section are shown in Tables1–3. The outcomes gained are presented in Table 7 and Figure 10. Table 7 contains the best results, worst results, mean, and S.D. The greatest values are presented in bold. Figure 11 shows the S.D. and the mean radar charts.Table 7
Experiments were carried out on 24 classical test functions with CWDEPSO, GSA, ABC, MFO, SCA, and BBO.
fCriteriaCWDEPSOGSAABCMFOSCABBOf1Best2.01E − 283.13E − 175.72E − 065.02E − 011.73E − 109.05E + 01Worst4.89E − 249.32E − 171.03E − 041.17E + 014.30E + 022.21E + 02Mean6.29E − 256.19E − 173.55E − 053.06E + 004.68E + 011.52E + 02S.D.4.59E − 245.49E − 179.97E − 059.75E + 004.05E + 021.38E + 02f2Best4.83E − 253.24E − 015.92E − 034.49E + 032.19E − 081.05E + 06Worst2.90E − 219.06E + 005.92E − 031.00E + 088.60E + 062.81E + 06Mean5.65E − 223.94E + 002.94E − 021.00E + 078.68E + 051.62E + 06S.D.3.02E − 219.70E + 004.89E − 029.49E + 078.15E + 061.77E + 06f3Best1.93E − 761.28E + 131.30E − 031.01E + 282.01E − 132.55E + 07Worst1.82E − 682.29E + 191.93E − 011.00E + 441.62E + 179.94E + 16Mean2.00E − 692.46E + 184.05E − 021.03E + 431.62E + 169.99E + 15S.D.1.71E − 682.16E + 191.75E − 019.46E + 431.54E + 179.43E + 16f4Best5.37E − 195.41E + 012.58E + 029.18E + 013.89E + 005.30E + 01Worst1.83E − 169.48E + 013.44E + 024.36E + 026.75E + 011.15E + 02Mean4.28E − 177.34E + 012.94E + 022.65E + 022.01E + 018.54E + 01S.D.2.00E − 163.94E + 018.12E + 013.02E + 026.06E + 016.00E + 01f5Best7.89E − 042.80E − 021.05E − 011.13E − 018.50E − 038.18E − 02Worst2.14E − 037.81E − 023.10E − 018.18E + 004.64E − 014.04E − 01Mean1.44E − 034.59E − 022.22E − 012.84E + 009.12E − 022.77E − 01S.D.1.31E − 034.95E − 02 205E − 011.07E + 014.18E − 012.83E − 01f6Best9.37E − 022.63E + 015.12E + 009.30E + 012.78E + 014.01E + 02Worst2.35E + 019.44E + 018.90E + 011.11E + 038.46E + 047.93E + 02Mean1.84E + 013.43E + 012.41E + 012.56E + 029.06E + 035.88E + 02S.D.2.49E + 016.34E + 018.00E + 019.29E + 027.97E + 044.19E + 02f7Best0.00E + 001.09E + 015.04E + 001.27E + 027.47E − 111.63E + 01Worst2.27E + 013.28E + 011.09E + 012.32E + 021.31E + 022.88E + 01Mean2.46E + 001.92E + 016.87E + 001.80E + 021.50E + 012.26E + 01S.D.2.13E + 011.74E + 016.17E + 008.05E + 011.23E + 021.30E + 01f8Best5.06E − 145.78E − 092.74E − 021.46E + 002.00E + 013.75E + 00Worst5.91E − 138.56E − 091.93E − 012.00E + 012.00E + 014.77E + 00Mean1.32E − 136.73E − 097.80E − 021.37E + 012.00E + 014.34E + 00S.D.4.88E − 132.68E − 091.65E − 012.52E + 014.96E − 021.04E + 00f9Best1.87E − 071.46E − 172.10E − 071.91E + 012.06E + 004.88E − 01Worst3.58E − 011.79E − 011.45E − 054.23E + 015.27E + 008.73E − 01Mean4.48E − 024.48E − 023.72E − 062.84E + 012.58E + 006.33E − 01S.D.3.41E − 012.28E − 011.52E − 052.47E + 012.91E + 004.30E − 01f10Best4.53E − 287.43E + 022.29E − 048.49E + 031.93E − 105.76E + 03Worst2.61E − 241.39E + 042.56E − 029.33E + 051.60E + 023.29E + 04Mean4.72E − 254.51E + 034.13E − 033.50E + 051.65E + 011.66E + 04S.D.2.64E − 241.26E + 042.34E − 029.61E + 051.51E + 022.32E + 04f11Best1.62E − 292.09E + 011.53E − 062.11E − 028.18E − 142.03E + 00Worst2.21E − 267.85E + 012.35E − 034.00E + 021.16E + 004.48E + 03Mean5.35E − 274.15E + 013.69E − 041.00E + 021.21E − 011.03E + 03S.D.2.15E − 266.37E + 012.27E − 033.74E + 021.10E + 004.46E + 03f12Best3.31E − 014.32E − 013.09E − 013.18E − 014.85E − 014.61E − 01Worst6.02E − 015.30E − 014.33E − 012.04E + 028.40E − 011.49E + 00Mean4.48E − 014.76E − 013.75E − 016.14E + 016.57E − 011.01E + 00S.D.2.78E − 018.61E − 021.03E − 012.13E + 024.74E − 011.19E + 00f13Best0.00E + 001.42E + 011.85E − 036.77E − 013.39E − 111.98E + 00Worst3.43E − 022.79E + 019.47E − 021.80E + 021.54E + 004.60E + 00Mean9.84E − 032.09E + 013.43E − 021.89E + 012.83E − 012.91E + 00S.D.3.29E − 021.26E + 018.84E − 021.70E + 021.58E + 002.20E + 00f14Best−8.70E + 02−8.58E + 02−8.70E + 02−8.70E + 02−8.70E + 02−7.90E + 02Worst−7.73E + 02−7.76E + 02−8.70E + 02−8.70E + 02−8.48E + 02−7.54E + 02Mean−8.33E + 02−8.27E + 02−8.70E + 02−8.70E + 02−8.57E + 02−7.74E + 02S.D.9.73E + 018.43E + 010.00E + 000.00E + 002.51E + 014.13E + 01f15Best0.00E + 004.15E − 110.00E + 000.00E + 002.47E − 132.13E − 12Worst1.86E − 125.78E − 114.12E − 140.00E + 002.96E − 123.31E − 12Mean5.09E − 135.37E − 114.12E − 150.00E + 001.26E − 122.58E − 12S.D.1.98E − 121.37E − 113.91E − 140.00E + 002.36E − 121.18E − 12f16Best3.04E − 021.39E − 012.53E − 015.00E − 018.52E − 016.06E − 01Worst6.29E − 012.52E − 014.00E − 014.42E + 001.26E + 001.02E + 00Mean4.02E − 011.96E − 013.32E − 011.03E + 001.02E + 008.33E − 01S.D.5.12E − 011.13E − 011.57E − 013.59E + 003.78E − 013.51E − 01f17Best0.00E + 006.04E − 010.00E + 000.00E + 000.00E + 001.90E − 01Worst0.00E + 007.46E − 014.06E − 023.69E − 020.00E + 002.93E − 01Mean0.00E + 006.70E − 011.21E − 023.69E − 030.00E + 002.39E − 01S.D.0.00E + 001.10E − 014.62E − 023.50E − 020.00E + 009.08E − 02f18Best1.78E − 151.50E + 016.04E + 007.90E + 018.17E + 002.02E + 01Worst2.80E + 013.70E + 011.21E + 012.63E + 021.30E + 023.08E + 01Mean5.71E + 002.56E + 018.84E + 001.58E + 025.18E + 012.47E + 01S.D.3.53E + 011.95E + 015.19E + 001.97E + 021.35E + 028.88E + 00f19Best4.67E − 111.05E − 011.26E − 061.91E + 005.20E − 019.28E − 01Worst2.55E − 072.56E + 002.73E − 048.47E + 001.31E + 042.76E + 00Mean6.55E − 081.12E + 003.23E − 054.88E + 001.31E + 031.43E + 00S.D.2.92E − 072.24E + 002.54E − 045.52E + 001.24E + 041.69E + 00f20Best6.14E − 091.06E − 173.31E − 063.91E + 002.20E + 002.16E + 00Worst1.10E − 021.55E + 011.43E − 033.32E + 012.06E + 051.47E + 01Mean1.10E − 036.58E + 002.15E − 041.26E + 012.06E + 047.32E + 00S.D.1.04E − 021.58E + 011.32E − 032.95E + 011.95E + 059.81E + 00f21Best6.02E − 093.36E − 095.81E − 031.53E − 029.98E − 074.11E − 01Worst1.85E − 037.46E − 031.07E − 011.09E + 015.55E + 001.13E + 00Mean2.04E − 042.05E − 035.51E − 024.66E + 008.07E − 017.24E − 01S.D.1.74E − 037.29E − 031.18E − 011.34E + 015.22E + 006.00E − 01f22Best3.07E − 049.95E − 045.25E − 045.35E − 046.27E − 041.33E − 03Worst4.24E − 046.45E − 031.85E − 038.33E − 031.77E − 032.09E − 02Mean3.19E − 043.29E − 031.08E − 031.75E − 031.38E − 035.86E − 03S.D.1.11E − 044.65E − 031.31E − 037.02E − 039.24E − 042.38E − 02f23Best−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.01E + 00−3.32E + 00Worst−3.20E + 00−3.32E + 00−3.32E + 00−3.14E + 00−2.98E + 00−3.20E + 00Mean−3.30E + E + 00−3.32E + 00−3.32E + 00−3.24E + 00−2.99E + 00−3.30E + 00S.D.1.50E − 011.33E − 151.83E − 152.31E − 013.38E − 021.49E − 01f24Best−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−5.08E + 00−1.02E + 01Worst−1.05E + 01−2.43E + 00−5.18E + 00−2.43E + 00−2.49E + 00−2.43E + 00Mean−1.05E + 01−9.73E + 00−1.00E + 01−8.24E + 00−4.36E + 00−5.48E + 00S.D.8.14E − 157.69E + 005.08E + 001.11E + 012.61E + 009.82E + 00Figure 10
Compare six algorithms’ convergence curves for different benchmark functions: (a)f2; (b) f3; (c) f5; (d) f6; (e) f7; (f) f9; (g) f11; (h) f12; (i) f13; (j) f17; (k) f22; (l) f24.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)Figure 11
Radar chart of six algorithms, mean and S.D.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)According to Table7, for the unimodal functions f1∼f5, the CWDEPSO algorithm performs well in terms of search stability and accuracy, and the convergence accuracy of CWDEPSO algorithm is higher compared with the other five optimization algorithms. For the multimodal functions f6,f7,f8,f10,f11,f13,andf24, CWDEPSO still has excellent search accuracy, search speed, and stability. For multimodal functions f9andf12, ABC shows better performance. In the search for f23, GSA and ABC have the best performance, but CWDEPSO’s convergence accuracy is very close to it. For f15,f17,f18,f19,f21, and f22, CWDEPSO shows outstanding accuracy and stability of search, and its convergence accuracy is higher than the other five comparing algorithms. For f14,f16,andf20, MFO, GSA, and ABC have the best convergence accuracy and stability, respectively. For f14, CWDEPSO also finds the same optimal solution as MFO but does not perform as stable as MFO.Table8 shows the results of Wilcoxon’s rank-sum test for each algorithm on each function. CWDEPSO differs significantly from the other algorithms on most of the tested functions and not significantly on a few functions: GSAf9,f12,f14,f21,f23, ABCf6,f9,f12,f16,f23, MFO f12,f17,f24, and SCAf7,f13,f17,f23.Table 8
The results of Wilcoxon’s rank-sum test for the five algorithms on different test functions.
GSAABCMFOSCABBOf111111f211111f31111f411111f511111f610111f711101f811111f900111f1011111f1111111f1200011f1311101f1401101f1511111f1610111f1711001f1811111f1911111f2011111f2101111f2211111f2300101f2411011Figure10 gives the convergence images for each algorithm on twelve test functions f2,f3,f5,f6,f7,f9,f11,f12,f13,f17,f22,f24. These data are averaged over 20 independent experiments. For unimodal functions, in Figures 10(a)–10(c), CWDEPSO outperforms the other compared algorithms by far in terms of both convergence speed and convergence accuracy, showing the optimal search performance. For the multimode function, in Figures 10(d) and 10(e), CWDEPSO demonstrates excellent convergence speed and the ability to avoid local convergence. In Figures 10(f) and 10(h), ABC shows better performance. In Figures 10(g), 10(i), 10(k), and 10(l), CWDEPSO outperforms all other algorithms with the fastest convergence speed and the best search accuracy. In Figure 10(j), CWDEPSO is able to search for the optimal value and provides the highest convergence accuracy.In conclusion, the work done in this paper is beneficial, which can improve the performance of the algorithms significantly. As an innovation in this paper, we introduce DE algorithm in the late stage of PSO, which improves the capability of algorithm development and exploration, enhances the population diversity, and effectively avoids premature convergence. Although the introduction of some parameters and other operations increase the runtime of the algorithm, it significantly improves the performance of the algorithm. In the improvement of inertia coefficientsω, through the introduction of nonlinear and chaotic mechanisms, the global search ability in the early stage is strengthened along with the local search ability in the later stage, and the inclusion of chaos theory can make the algorithm more diverse and avoid falling into local extremes. The nonlinear optimization for the learning factors c1 and c2 enhances the late local exploitation ability and makes the algorithm less likely to converge prematurely. The two parameters, DE deflation factor F and crossover probability CR, are adaptively processed through the Cauchy and Gaussian distributions, which can be automatically updated to a suitable value by the performance of previous generations, thus improving the robustness and accuracy of the algorithm. Finally, the value of the particles is more fully utilized through an improved selection strategy, which helps to improve the algorithm performance. In summary, CWDEPSO can deal with numerical optimization problems effectively.


## 5.1. Test Function

The benchmark functions adopted within the article are divided into three categories, andf1∼f5 are unimodal functions, where f5 contains noise interference; f6∼f22 are multimodal function. Among them, the local optimum of f7 is large, and the suboptimal value differs significantly from the global optimum. The characteristic of f8 is that it has a very narrow global basin, so it can be rather easy to fall into a local optimum. f23∼f25 are multimodal benchmark functions with fixed dimensions. The three types are listed in Tables 1–3. Dim and Scope, respectively, represent the solution space dimension and range of the solution, and type represents the type of the current function.


## 5.2. Comparison of CWDEPSO with PSO, DE, JADE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO

CWDEPSO is compared with PSO, DE, and their variants AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO in this part. To ensure a fair comparison, we set the parameters in both sets of experiments all according to the original paper, strictly following the steps in the literature [58, 59], and the population size is set to 500. It is worth noting that the algorithm CWDEPSO proposed in this paper has the same number of function evaluations as PSO and DE in each iteration, so it can ensure fairness in the case of the same number of iterations. Also, the initial populations of all algorithms are generated with random numbers, and each group is run twenty times independently. The specific parameters are set as follows:PSO setting:c1=c2=2,ω=0.9∼0.4,Vmax=0.2×Bound.AIWCPSO setting:c1=c2=2,ω=0.9∼0.4,Vmax=0.2×Bound.MPSPSO-ST setting:∂=0.2, θ=1.5, ϕ=0.9, τ=0, ρ=0.1, Vmax=0.2×BoundDE setting:F=0.5,CR=0.5.JADE setting:p=0.05,c=0.1.SinDE settings:freq=0.25.DEPSO settings:k=4.CWDEPSO setting:c1:2.5∼0.5,c2:0.5∼2.5,ω=0.924∼0.375,c=0.1,Vmax=0.2×Bound.The benchmark functions adopted in this section have been presented within Tables1–3. For the purpose of reducing statistical mistakes, all the test functions are independently evaluated 20 times. The obtained best value (Best), the worst value (Worst), the mean results (Mean), and the standard deviation (S.D.) by statistics are presented in Table 4, with the optimal values identified in bold. For the purpose of facilitating the comparison of the mean and the S.D., we represent the data with a radar chart, as shown in Figure 8. Figure 9 represents the trajectory of the average of the algorithm on the current test function.Table 4
Experiments were carried out on 24 classical test functions with CWDEPSO, PSO, DE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO.
fCriteriaCWDEPSOPSODEAIWCPSOMPSPSO-STJADESinDEDEPSOf1Best7.59E − 283.04E − 017.13E − 045.10E − 069.63E − 152.85E − 131.18E − 036.92E − 10Worst3.98E − 241.42E + 002.27E − 037.84E − 051.64E − 065.21E − 123.49E − 031.45E − 09Mean7.88E − 257.12E − 011.33E − 033.37E − 051.65E − 072.23E − 122.42E − 031.11E − 09S.D.4.03E − 241.40E + 001.92E − 038.74E − 051.56E − 064.75E − 122.42E − 039.27E − 10f2Best1.69E − 241.27E + 033.46E + 001.64E + 002.93E − 091.11E − 097.58E + 005.09E − 04Worst3.48E − 207.25E + 031.54E + 011.33E + 022.02E + 029.61E − 081.87E + 011.21E − 03Mean4.93E − 214.11E + 039.12E + 002.04E + 012.02E + 014.42E − 081.24E + 018.38E − 04S.D.3.33E − 205.15E + 031.20E + 011.20E + 021.92E + 021.01E − 071.13E + 015.89E − 04f3Best3.39E − 721.20E + 073.61E + 001.91E − 048.90E − 244.42E − 192.37E − 011.33E − 16Worst3.26E − 633.11E + 112.87E + 101.83E + 018.22E − 171.43E − 143.01E + 261.53E − 15Mean3.37E − 643.21E + 102.87E + 092.04E + 008.31E − 183.15E − 153.01E + 257.05E − 16S.D.3.08E − 632.94E + 112.73E + 101.73E + 017.79E − 171.53E − 142.85E + 261.47E − 15f4Best4.13E − 188.03E + 002.01E + 024.03E + 011.82E + 011.12E − 011.25E + 021.15E − 08Worst3.93E − 154.37E + 013.08E + 021.30E + 023.82E + 021.60E + 012.59E + 024.20E − 08Mean4.40E − 162.31E + 012.63E + 026.78E + 012.04E + 024.10E + 001.93E + 022.50E − 08S.D.3.68E − 153.20E + 011.05E + 028.17E + 013.07E + 021.74E + 011.17E + 022.63E − 08f5Best1.26E − 033.39E − 021.80E − 014.25E − 022.50E − 022.08E − 011.75E − 017.76E − 03Worst2.26E − 037.37E − 025.95E − 011.22E − 018.35E − 024.99E − 016.87E − 012.24E − 02Mean1.74E − 035.45E − 023.79E − 017.76E − 024.74E − 023.50E − 013.62E − 011.32E − 02S.D.1.12E − 034.55E − 024.23E − 018.31E − 025.41E − 022.88E − 014.54E − 011.56E − 02f6Best5.45E − 012.91E + 012.71E + 012.06E + 012.76E + 016.92E + 002.65E + 015.94E − 04Worst2.55E + 011.44E + 026.69E + 011.03E + 021.05E + 027.70E + 019.40E + 011.35E − 03Mean1.93E + 016.59E + 013.34E + 016.45E + 017.04E + 012.63E + 013.45E + 017.97E − 04S.D.2.97E + 011.16E + 023.62E + 018.90E + 019.01E + 015.61E + 016.28E + 016.40E − 04f7Best5.33E − 154.10E + 011.28E + 023.78E + 015.67E + 011.71E + 019.92E + 019.95E − 01Worst2.98E + 016.62E + 011.60E + 027.16E + 018.76E + 013.09E + 011.23E + 023.38E + 01Mean3.58E + 005.06E + 011.52E + 024.94E + 017.34E + 012.29E + 011.14E + 021.39E + 01S.D.2.81E + 012.84E + 012.78E + 013.29E + 013.15E + 011.44E + 012.43E + 013.11E + 01f8Best7.55E − 146.76E − 026.65E − 037.19E − 049.31E − 017.80E − 081.14E − 022.03E − 05Worst3.63E − 122.15E + 001.96E − 022.74E + 006.35E + 009.31E − 012.54E − 022.72E − 05Mean6.84E − 131.24E + 001.12E − 023.94E − 013.31E + 009.31E − 021.59E − 022.28E − 05S.D.3.60E − 122.17E + 001.27E − 022.70E + 004.85E + 008.84E − 011.15E − 027.19E − 06f9Best1.06E − 075.77E − 031.31E − 042.07E − 033.36E + 002.27E − 141.10E − 043.29E − 10Worst4.48E − 017.61E − 011.24E − 034.58E + 002.01E + 014.54E − 011.53E − 031.57E − 09Mean1.16E − 011.62E − 013.45E − 042.41E + 008.14E + 008.12E − 024.50E − 048.25E − 10S.D.4.57E − 017.53E − 019.90E − 045.26E + 001.45E + 014.15E − 011.24E − 031.03E − 09f10Best7.93E − 272.50E + 008.35E − 032.90E − 033.25E − 103.76E − 117.74E − 032.00E − 05Worst3.04E − 212.34E + 012.90E − 026.66E − 027.57E + 013.85E − 072.29E − 026.03E − 05Mean3.90E − 221.09E + 011.59E − 023.16E − 028.90E + 003.88E − 081.56E − 024.01E − 05S.D.2.85E − 211.94E + 012.11E − 026.61E − 027.09E + 013.65E − 071.41E − 023.89E − 05f11Best4.52E − 281.26E − 031.15E − 051.04E − 052.04E − 142.16E − 141.81E − 056.28E − 07Worst3.87E − 242.79E − 021.04E − 042.71E − 043.40E − 067.56E − 131.08E − 049.80E − 07Mean4.78E − 251.13E − 022.93E − 056.34E − 055.20E − 071.65E − 134.73E − 058.27E − 07S.D.3.62E − 242.75E − 028.45E − 052.29E − 043.48E − 066.75E − 138.58E − 053.83E − 07f12Best3.85E − 012.11E − 012.65E − 013.12E − 012.60E − 013.12E − 013.14E − 015.82E − 02Worst6.90E − 011.04E + 009.84E − 011.13E + 001.06E + 007.60E − 016.65E − 011.46E − 01Mean5.33E − 015.42E − 014.47E − 016.81E − 016.48E − 014.57E − 014.03E − 018.68E − 02S.D.3.87E − 011.00E + 00 6.61E − 011.06E + 009.56E − 015.38E − 012.91E − 018.62E − 02f13Best0.00E + 005.30E − 011.50E − 031.71E − 051.89E − 132.42E − 131.92E − 037.49E − 11Worst2.95E − 028.95E − 011.20E − 011.43E − 029.34E − 021.49E − 025.72E − 021.97E − 02Mean1.01E − 027.05E − 012.72E − 025.24E − 033.60E − 022.23E − 031.13E − 021.03E − 02S.D.3.55E − 023.78E − 011.42E − 011.19E − 021.14E − 011.49E − 025.00E − 022.05E − 02f14Best−8.70E + 02−8.02E + 02−8.70E + 02−8.69E + 02−8.68E + 02−7.21E + 02−8.70E + 02−8.70E + 02Worst−8.49E + 02−7.72E + 02−8.70E + 02−8.43E + 02−8.34E + 02−6.87E + 02−8.70E + 02−8.70E + 02Mean−8.66E + 02−7.87E + 02−8.70E + 02−8.62E + 02−8.52E + 02−7.08E + 02−8.70E + 02−8.70E + 02S.D.2.21E + 012.18E + 010.00E + 002.37E + 014.04E + 012.91E + 010.00E + 000.00E + 00f15Best0.00E + 004.30E − 110.00E + 001.98E − 111.40E − 115.49E − 120.00E + 000.00E + 00Worst5.87E − 135.13E − 110.00E + 005.15E − 114.20E − 118.24E − 120.00E + 004.95E − 11Mean9.69E − 144.71E − 110.00E + 004.64E − 112.16E − 117.15E − 120.00E + 002.47E − 11S.D.5.43E − 135.88E − 120.00E + 002.86E − 112.56E − 112.48E − 120.00E + 003.50E − 11f16Best1.31E − 012.83E − 014.74E − 012.69E − 012.17E − 012.83E − 014.42E − 011.46E − 01Worst5.26E − 015.68E − 016.24E − 016.56E − 014.44E − 014.69E − 016.00E − 011.87E − 01Mean3.41E − 014.26E − 015.69E − 014.32E − 013.26E − 013.47E − 015.38E − 013.66E − 01S.D.3.88E − 012.02E − 011.56E − 013.76E − 012.65E − 012.00E − 011.33E − 012.88E − 02f17Best0.00E + 002.96E − 010.00E + 001.12E − 023.21E − 012.31E − 010.00E + 004.08E − 02Worst0.00E + 003.16E − 011.67E − 087.92E − 025.76E − 012.84E − 017.46E − 081.96E − 01Mean0.00E + 003.06E − 013.55E − 093.06E − 024.22E − 012.55E − 017.67E − 091.17E − 01S.D.0.00E + 001.44E − 021.59E − 087.14E − 022.26E − 015.51E − 027.06E − 081.10E − 01f18Best0.00E + 004.24E + 019.99E + 012.50E + 011.60E + 012.26E + 016.94E + 016.71E − 05Worst7.81E + 007.96E + 011.30E + 026.31E + 017.00E + 012.81E + 018.65E + 013.59E − 04Mean8.48E − 016.10E + 011.13E + 024.71E + 013.41E + 012.49E + 017.58E + 012.27E − 04S.D.7.36E + 002.63E + 012.90E + 013.76E + 014.57E + 014.65E + 001.33E + 012.32E − 04f19Best1.84E − 122.11E − 041.22E − 021.23E − 104.09E − 196.65E − 177.19E − 035.00E − 09Worst6.01E − 112.10E − 013.75E − 021.04E − 016.23E − 016.56E − 114.84E − 026.69E − 09Mean1.81E − 111.05E − 012.19E − 022.07E − 021.87E − 011.58E − 112.28E − 025.82E − 09S.D.5.37E − 111.48E − 013.05E − 021.31E − 017.01E − 016.22E − 113.74E − 021.20E − 09f20Best0.00E + 003.49E + 011.18E + 022.38E + 013.70E + 012.04E + 016.89E + 016.71E − 05Worst3.60E + 009.91E + 011.33E + 026.62E + 018.90E + 012.61E + 019.04E + 013.59E − 04Mean7.17E − 016.55E + 011.24E + 023.87E + 015.88E + 012.35E + 017.67E + 012.27E − 04S.D.4.24E + 005.81E + 011.74E + 014.11E + 015.53E + 015.42E + 002.11E + 012.32E − 04f21Best4.81E − 105.44E − 032.21E − 011.89E − 054.66E − 111.96E − 021.63E − 011.88E − 02Worst1.12E − 058.17E − 033.49E + 001.86E − 041.72E − 023.12E − 023.07E + 006.25E − 02Mean2.81E − 066.81E − 031.36E + 004.94E − 051.73E − 032.53E − 021.44E + 004.67E − 02S.D.1.15E − 051.93E − 033.11E + 001.51E − 041.64E − 021.08E − 023.08E + 003.42E − 02f22Best3.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 043.07E − 04Worst3.07E − 043.08E − 041.22E − 031.11E − 031.03E − 033.07E − 043.07E − 043.07E − 04Mean3.07E − 043.08E − 043.99E − 046.77E − 045.89E − 043.07E − 043.07E − 043.07E − 04S.D.3.15E − 182.29E − 078.69E − 049.82E − 041.09E − 033.07E − 192.34E − 117.71E − 10f23Best−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00Worst−3.20E + 00−3.20E + 00−3.20E + 00−3.20E + 00−3.20E + 00−3.32E + 00−3.20E + 003.20E + 00Mean−3.31E + 00−3.30E + 00−3.25E + 00−3.25E + 00−3.29E + 00−3.32E + 00−3.29E + 00−3.26E + 00S.D.1.13E − 011.50E − 011.73E − 011.84E − 011.72E − 011.40E − 151.72E − 011.88E − 01f24Best−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01Worst−1.05E + 01−2.43E + 00−3.84E + 00−5.13E + 00−2.43E + 00−1.05E + 01−1.05E + 01−5.18E + 00Mean−1.05E + 01−8.19E + 00−9.20E + 00−8.92E + 00−7.07E + 00−1.05E + 01−1.05E + 01−1.00E + 01S.D.6.15E − 151.14E + 018.48E + 007.79E + 001.13E + 016.70E − 156.35E − 155.09E + 00Figure 8
Radar chart of eight algorithms, mean and S.D.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)Figure 9
Compare eight algorithms’ convergence curves for different benchmark functions: (a)f2; (b) f3; (c) f4; (d) f5; (e) f6; (f) f7; (g) f8; (h) f9; (i) f10; (j)f13; (k) f17; (l) f22.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)As shown in Table4, the single-peaked functions f1∼f5 are significantly more accurate for the optimization of CWDEPSO compared with the other seven algorithms, achieving the best results in each index. Among the multipeaked functions, as for f6, the best results are obtained by DEPSO, followed by CWDEPSO. For the f8 functions, CWDEPSO performs well and converges with the best accuracy. For the multimodal function f9, the best value is obtained by JADE, while DEPSO performs best among the worst, mean, and S.D., which obtains more accurate results than others. In the multimodal functions f10 and f11, CWDEPSO performs the best. For the f12 functions, DEPSO achieves the best performance. In f13, CWDEPSO succeeds in achieving the theoretical optimum, but WORST and S.D. are slightly worse than AIWCPSO, and the mean value is inferior to JADE. Forf16,f17,f19, and f21, CWDEPSO shows the highest convergence accuracy compared to other comparing algorithms, finding the optimal result and providing the best performance. For f14andf15, DE can search for the optimal value, and CWDEPSO performs the same as DE in terms of the best value. For f18 and f20, the search for the optimal solution is found by DEPSO and JADE, respectively, but for f18, CWDEPSO performs best in the best and successfully achieves the theoretical optimal solution of the function. For the fixed-dimensional multimodal benchmark functions f22,f23, and f24, CWDEPSO still has a good performance. It performs slightly worse than JADE on function f23 and achieves the best performance in f24.In accordance with [70], to make the comparison results statistically significant and reliable, Wilcoxon’s rank-sum test was used to test the results of different algorithms for significant differences at 5% significance level. If there is a significant difference, then it is 1; otherwise, it is 0. Table 5 shows the results of the Wilcoxon’s rank-sum test for each algorithm on each function. We can find that, inf1∼f11 and f14∼f22, CWDEPSO is significantly different from the other algorithms on most of the tested functions; however, there is no significant difference in some of the functions: DEf9, PSOf9,f16, JADEf6,f9,f16, SinDEf9,f17, AIWCPSOf16,f20, MPSPSO-STf16,f19,f22, and DEPSO f15∼f22. In f12, there is a significant difference only with SinDE and DEPSO, and in f13, there is a significant difference only with PSO. In f23andf24, there are less significant differences since all the algorithms converge around the theoretical optimum. But there are still significant differences in some functions: DEf23,f24, DEPSOf23,f24, JADEf23, and SinDEf24.Table 5
The results of Wilcoxon’s rank-sum test for the seven algorithms on different test functions.
PSODEAIWCPSOMPSPSO-STJADESinDEDEPSOf11111111f21111111f31111111f41111111f51111111f61111011f71111111f81111111f90011001f101111111f111111111f120000011f131000000f141111110f151111110f160100010f171111100f181111110f191110110f201101110f211111110f221110110f230100001f240100111Figure9 shows the convergence images of the eight algorithms in the 10 tested functions f2,f3,f4,f5,f6,f7,f8,f9,f10,f13,f17,f22. From Figure 9(a), it can be seen that CWDEPSO has the best performance in this function. In Figure 9(b), we can find that CWDEPSO has the largest convergence accuracy and convergence speed. As shown in Figure 9(c), CWDEPSO still has the best performance in terms of convergence accuracy and speed. In Figure 9(d), CWDEPSO can effectively overcome the noise interference of this function, and the convergence accuracy and speed are optimal. In terms of multimodal functions, DEPSO shows the best performance in Figures 9(e) and 9(h). In Figure 9(f), CWDEPSO has a higher convergence accuracy than the remaining seven algorithms. In Figure 9(g), CWDEPSO has excellent global and local search capability and can escape local extremes effectively. In Figure 9(i), CWDEPSO is clearly superior to the remaining seven algorithms. In Figure 9(j), JADE achieves the highest convergence accuracy, but CWDEPSO converges very close to it and converges faster. In Figures 9(k) and 9(l), CWDEPSO outperforms all other algorithms with the fastest convergence speed and the best search accuracy.In this paper, comparing algorithm CWDEPSO to PSO, DE adds some parameter operations. Among them, the scaling factor F and crossover probability CR in the DE algorithm account for most of them, which increases the running time a lot. It is known that the time complexity of both PSO and DE isOGmax⋅Np⋅D[41]. Compared with PSO, CWDEPSO adds the introduction of the DE algorithm, which has a time complexity of OGmax⋅Np⋅D, and also adds the parameter update process, which has a complexity of OGmax⋅Np, so the complexity of CWDEPSO is OGmax⋅Np⋅D. Table 6 shows the running time required for each algorithm until all iterations are completed. We can find that PSO requires the least amount of computing time, followed by AIWCPSO, but DEPSO takes a very long time. Also, the algorithms proposed in this paper, CWDEPSO and JADE, run in approximately the same time. It is worth noting that CWDEPSO takes less time than MPSPSO-ST in some complex test functions f10,f14,f15, etc., and the time is roughly similar to DE. The extra time is mainly spent on parameter update operations, similar to JADE. Therefore, as the difficulty in the test function increases, the running time does not vary as much as that of DEPSO and MPSPSO-ST.Table 6
The running time of the eight algorithms on different test functions.
CWDEPSOMPSPSO-ST (s)JADE (s)PSO (s)DEAIWCPSOSinDEDEPSOf11.0653s0.72870.97230.16510.3861s0.1721s0.3552s11.5504sf21.0995s0.95031.08110.17960.4291s0.2171s0.4515s21.9234sf31.3302s1.39541.31920.29400.6151s0.2938s0.6389s14.7475sf41.2175s1.07661.19020.24300.5144s0.2323s0.5097s22.8226sf51.1963s1.17251.17460.25790.5292s0.2528s0.5412s32.0585sf61.1079s0.95511.17440.20430.4396s0.2085s0.4317s23.2556sf71.0881s0.85671.11790.20910.4183s0.1911s0.4090s21.2581sf81.4138s1.10771.37640.26260.5914s0.2577s0.5376s28.5731sf91.2172s1.05321.22470.24000.4730s0.2285s0.4757s20.5048sf101.3385s1.52771.44690.31530.6731s0.3209s0.6608s41.6464sf111.1542s0.92171.19140.20100.4477s0.2228s0.4591s22.5763sf121.2787s1.12291.23660.24190.5173s0.2373s0.5246s28.8664sf131.2617s1.36551.30030.29500.6161s0.2943s0.6128s32.3458sf1433.2016s80.730134.847716.072533.4909s16.0757s33.8106s826.263sf1539.6449s96.068640.418618.772038.1136s18.8152s36.9709s989.603sf163.6889s4.21733.96640.77801.6266s0.8859s1.5547s74.861sf174.7480s6.94206.28731.49502.5856s1.4324s3.2057s209.717f185.0012s6.78745.41421.44102.8880s1.4071s2.9385s92.6985sf195.6041s2.68876.19481.62213.3629s1.5848s3.3518s126.543sf208.2152s11.01868.04532.17724.5801s2.2404s4.2489s227.856sf213.5906s2.70183.62650.60901.3123s0.5891s1.2948s62.803sf223.1939s1.87923.49710.27350.90100.35070.920851.538sf230.9269s0.61280.99960.10830.3092s0.1103s0.3138s4.9359sf241.4982s1.98531.49770.37960.8699s0.3763s0.8538s17.9298sIn general, as shown in Tables4 and 5 and Figure 9, CWDEPSO has better convergence speed and search accuracy than PSO, DE, AIWCPSO, MPSPSO-ST, JADE, SinDE, and DEPSO, so combining DE and PSO in this way can effectively improve the algorithm. The performance proves that CWDEPSO is a more efficient algorithm for numerical optimization.


## 5.3. Comparison of CWDEPSO with Other Algorithms

In this part, we compared CWDEPSO algorithm with the optimization algorithms put forward recently, including the BBO [5], SCA [6], MFO [7], ABC [11], and GSA [12]. To ensure a fair comparison, we set the parameters in both sets of experiments all according to the original paper, where the number of generations is set to 500 and the size of the population is set to 40. Each is conducted independently 20 times, and the details are listed as follows:GSA setting:G0=100,α=20.ABC setting:Limit=200.MFO setting:tis a random number in the range−2,1.SCA setting:r1,r2,r3,andr4are random number.BBO setting:mu=0.005,μ=0.8.CWDEPSO setting:c1:2.5∼0.5,c2:0.5∼2.5,ω=0.924∼0.375,c=0.1,Vmax=0.2×Bound.The test functions used in this section are shown in Tables1–3. The outcomes gained are presented in Table 7 and Figure 10. Table 7 contains the best results, worst results, mean, and S.D. The greatest values are presented in bold. Figure 11 shows the S.D. and the mean radar charts.Table 7
Experiments were carried out on 24 classical test functions with CWDEPSO, GSA, ABC, MFO, SCA, and BBO.
fCriteriaCWDEPSOGSAABCMFOSCABBOf1Best2.01E − 283.13E − 175.72E − 065.02E − 011.73E − 109.05E + 01Worst4.89E − 249.32E − 171.03E − 041.17E + 014.30E + 022.21E + 02Mean6.29E − 256.19E − 173.55E − 053.06E + 004.68E + 011.52E + 02S.D.4.59E − 245.49E − 179.97E − 059.75E + 004.05E + 021.38E + 02f2Best4.83E − 253.24E − 015.92E − 034.49E + 032.19E − 081.05E + 06Worst2.90E − 219.06E + 005.92E − 031.00E + 088.60E + 062.81E + 06Mean5.65E − 223.94E + 002.94E − 021.00E + 078.68E + 051.62E + 06S.D.3.02E − 219.70E + 004.89E − 029.49E + 078.15E + 061.77E + 06f3Best1.93E − 761.28E + 131.30E − 031.01E + 282.01E − 132.55E + 07Worst1.82E − 682.29E + 191.93E − 011.00E + 441.62E + 179.94E + 16Mean2.00E − 692.46E + 184.05E − 021.03E + 431.62E + 169.99E + 15S.D.1.71E − 682.16E + 191.75E − 019.46E + 431.54E + 179.43E + 16f4Best5.37E − 195.41E + 012.58E + 029.18E + 013.89E + 005.30E + 01Worst1.83E − 169.48E + 013.44E + 024.36E + 026.75E + 011.15E + 02Mean4.28E − 177.34E + 012.94E + 022.65E + 022.01E + 018.54E + 01S.D.2.00E − 163.94E + 018.12E + 013.02E + 026.06E + 016.00E + 01f5Best7.89E − 042.80E − 021.05E − 011.13E − 018.50E − 038.18E − 02Worst2.14E − 037.81E − 023.10E − 018.18E + 004.64E − 014.04E − 01Mean1.44E − 034.59E − 022.22E − 012.84E + 009.12E − 022.77E − 01S.D.1.31E − 034.95E − 02 205E − 011.07E + 014.18E − 012.83E − 01f6Best9.37E − 022.63E + 015.12E + 009.30E + 012.78E + 014.01E + 02Worst2.35E + 019.44E + 018.90E + 011.11E + 038.46E + 047.93E + 02Mean1.84E + 013.43E + 012.41E + 012.56E + 029.06E + 035.88E + 02S.D.2.49E + 016.34E + 018.00E + 019.29E + 027.97E + 044.19E + 02f7Best0.00E + 001.09E + 015.04E + 001.27E + 027.47E − 111.63E + 01Worst2.27E + 013.28E + 011.09E + 012.32E + 021.31E + 022.88E + 01Mean2.46E + 001.92E + 016.87E + 001.80E + 021.50E + 012.26E + 01S.D.2.13E + 011.74E + 016.17E + 008.05E + 011.23E + 021.30E + 01f8Best5.06E − 145.78E − 092.74E − 021.46E + 002.00E + 013.75E + 00Worst5.91E − 138.56E − 091.93E − 012.00E + 012.00E + 014.77E + 00Mean1.32E − 136.73E − 097.80E − 021.37E + 012.00E + 014.34E + 00S.D.4.88E − 132.68E − 091.65E − 012.52E + 014.96E − 021.04E + 00f9Best1.87E − 071.46E − 172.10E − 071.91E + 012.06E + 004.88E − 01Worst3.58E − 011.79E − 011.45E − 054.23E + 015.27E + 008.73E − 01Mean4.48E − 024.48E − 023.72E − 062.84E + 012.58E + 006.33E − 01S.D.3.41E − 012.28E − 011.52E − 052.47E + 012.91E + 004.30E − 01f10Best4.53E − 287.43E + 022.29E − 048.49E + 031.93E − 105.76E + 03Worst2.61E − 241.39E + 042.56E − 029.33E + 051.60E + 023.29E + 04Mean4.72E − 254.51E + 034.13E − 033.50E + 051.65E + 011.66E + 04S.D.2.64E − 241.26E + 042.34E − 029.61E + 051.51E + 022.32E + 04f11Best1.62E − 292.09E + 011.53E − 062.11E − 028.18E − 142.03E + 00Worst2.21E − 267.85E + 012.35E − 034.00E + 021.16E + 004.48E + 03Mean5.35E − 274.15E + 013.69E − 041.00E + 021.21E − 011.03E + 03S.D.2.15E − 266.37E + 012.27E − 033.74E + 021.10E + 004.46E + 03f12Best3.31E − 014.32E − 013.09E − 013.18E − 014.85E − 014.61E − 01Worst6.02E − 015.30E − 014.33E − 012.04E + 028.40E − 011.49E + 00Mean4.48E − 014.76E − 013.75E − 016.14E + 016.57E − 011.01E + 00S.D.2.78E − 018.61E − 021.03E − 012.13E + 024.74E − 011.19E + 00f13Best0.00E + 001.42E + 011.85E − 036.77E − 013.39E − 111.98E + 00Worst3.43E − 022.79E + 019.47E − 021.80E + 021.54E + 004.60E + 00Mean9.84E − 032.09E + 013.43E − 021.89E + 012.83E − 012.91E + 00S.D.3.29E − 021.26E + 018.84E − 021.70E + 021.58E + 002.20E + 00f14Best−8.70E + 02−8.58E + 02−8.70E + 02−8.70E + 02−8.70E + 02−7.90E + 02Worst−7.73E + 02−7.76E + 02−8.70E + 02−8.70E + 02−8.48E + 02−7.54E + 02Mean−8.33E + 02−8.27E + 02−8.70E + 02−8.70E + 02−8.57E + 02−7.74E + 02S.D.9.73E + 018.43E + 010.00E + 000.00E + 002.51E + 014.13E + 01f15Best0.00E + 004.15E − 110.00E + 000.00E + 002.47E − 132.13E − 12Worst1.86E − 125.78E − 114.12E − 140.00E + 002.96E − 123.31E − 12Mean5.09E − 135.37E − 114.12E − 150.00E + 001.26E − 122.58E − 12S.D.1.98E − 121.37E − 113.91E − 140.00E + 002.36E − 121.18E − 12f16Best3.04E − 021.39E − 012.53E − 015.00E − 018.52E − 016.06E − 01Worst6.29E − 012.52E − 014.00E − 014.42E + 001.26E + 001.02E + 00Mean4.02E − 011.96E − 013.32E − 011.03E + 001.02E + 008.33E − 01S.D.5.12E − 011.13E − 011.57E − 013.59E + 003.78E − 013.51E − 01f17Best0.00E + 006.04E − 010.00E + 000.00E + 000.00E + 001.90E − 01Worst0.00E + 007.46E − 014.06E − 023.69E − 020.00E + 002.93E − 01Mean0.00E + 006.70E − 011.21E − 023.69E − 030.00E + 002.39E − 01S.D.0.00E + 001.10E − 014.62E − 023.50E − 020.00E + 009.08E − 02f18Best1.78E − 151.50E + 016.04E + 007.90E + 018.17E + 002.02E + 01Worst2.80E + 013.70E + 011.21E + 012.63E + 021.30E + 023.08E + 01Mean5.71E + 002.56E + 018.84E + 001.58E + 025.18E + 012.47E + 01S.D.3.53E + 011.95E + 015.19E + 001.97E + 021.35E + 028.88E + 00f19Best4.67E − 111.05E − 011.26E − 061.91E + 005.20E − 019.28E − 01Worst2.55E − 072.56E + 002.73E − 048.47E + 001.31E + 042.76E + 00Mean6.55E − 081.12E + 003.23E − 054.88E + 001.31E + 031.43E + 00S.D.2.92E − 072.24E + 002.54E − 045.52E + 001.24E + 041.69E + 00f20Best6.14E − 091.06E − 173.31E − 063.91E + 002.20E + 002.16E + 00Worst1.10E − 021.55E + 011.43E − 033.32E + 012.06E + 051.47E + 01Mean1.10E − 036.58E + 002.15E − 041.26E + 012.06E + 047.32E + 00S.D.1.04E − 021.58E + 011.32E − 032.95E + 011.95E + 059.81E + 00f21Best6.02E − 093.36E − 095.81E − 031.53E − 029.98E − 074.11E − 01Worst1.85E − 037.46E − 031.07E − 011.09E + 015.55E + 001.13E + 00Mean2.04E − 042.05E − 035.51E − 024.66E + 008.07E − 017.24E − 01S.D.1.74E − 037.29E − 031.18E − 011.34E + 015.22E + 006.00E − 01f22Best3.07E − 049.95E − 045.25E − 045.35E − 046.27E − 041.33E − 03Worst4.24E − 046.45E − 031.85E − 038.33E − 031.77E − 032.09E − 02Mean3.19E − 043.29E − 031.08E − 031.75E − 031.38E − 035.86E − 03S.D.1.11E − 044.65E − 031.31E − 037.02E − 039.24E − 042.38E − 02f23Best−3.32E + 00−3.32E + 00−3.32E + 00−3.32E + 00−3.01E + 00−3.32E + 00Worst−3.20E + 00−3.32E + 00−3.32E + 00−3.14E + 00−2.98E + 00−3.20E + 00Mean−3.30E + E + 00−3.32E + 00−3.32E + 00−3.24E + 00−2.99E + 00−3.30E + 00S.D.1.50E − 011.33E − 151.83E − 152.31E − 013.38E − 021.49E − 01f24Best−1.05E + 01−1.05E + 01−1.05E + 01−1.05E + 01−5.08E + 00−1.02E + 01Worst−1.05E + 01−2.43E + 00−5.18E + 00−2.43E + 00−2.49E + 00−2.43E + 00Mean−1.05E + 01−9.73E + 00−1.00E + 01−8.24E + 00−4.36E + 00−5.48E + 00S.D.8.14E − 157.69E + 005.08E + 001.11E + 012.61E + 009.82E + 00Figure 10
Compare six algorithms’ convergence curves for different benchmark functions: (a)f2; (b) f3; (c) f5; (d) f6; (e) f7; (f) f9; (g) f11; (h) f12; (i) f13; (j) f17; (k) f22; (l) f24.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)Figure 11
Radar chart of six algorithms, mean and S.D.
(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)According to Table7, for the unimodal functions f1∼f5, the CWDEPSO algorithm performs well in terms of search stability and accuracy, and the convergence accuracy of CWDEPSO algorithm is higher compared with the other five optimization algorithms. For the multimodal functions f6,f7,f8,f10,f11,f13,andf24, CWDEPSO still has excellent search accuracy, search speed, and stability. For multimodal functions f9andf12, ABC shows better performance. In the search for f23, GSA and ABC have the best performance, but CWDEPSO’s convergence accuracy is very close to it. For f15,f17,f18,f19,f21, and f22, CWDEPSO shows outstanding accuracy and stability of search, and its convergence accuracy is higher than the other five comparing algorithms. For f14,f16,andf20, MFO, GSA, and ABC have the best convergence accuracy and stability, respectively. For f14, CWDEPSO also finds the same optimal solution as MFO but does not perform as stable as MFO.Table8 shows the results of Wilcoxon’s rank-sum test for each algorithm on each function. CWDEPSO differs significantly from the other algorithms on most of the tested functions and not significantly on a few functions: GSAf9,f12,f14,f21,f23, ABCf6,f9,f12,f16,f23, MFO f12,f17,f24, and SCAf7,f13,f17,f23.Table 8
The results of Wilcoxon’s rank-sum test for the five algorithms on different test functions.
GSAABCMFOSCABBOf111111f211111f31111f411111f511111f610111f711101f811111f900111f1011111f1111111f1200011f1311101f1401101f1511111f1610111f1711001f1811111f1911111f2011111f2101111f2211111f2300101f2411011Figure10 gives the convergence images for each algorithm on twelve test functions f2,f3,f5,f6,f7,f9,f11,f12,f13,f17,f22,f24. These data are averaged over 20 independent experiments. For unimodal functions, in Figures 10(a)–10(c), CWDEPSO outperforms the other compared algorithms by far in terms of both convergence speed and convergence accuracy, showing the optimal search performance. For the multimode function, in Figures 10(d) and 10(e), CWDEPSO demonstrates excellent convergence speed and the ability to avoid local convergence. In Figures 10(f) and 10(h), ABC shows better performance. In Figures 10(g), 10(i), 10(k), and 10(l), CWDEPSO outperforms all other algorithms with the fastest convergence speed and the best search accuracy. In Figure 10(j), CWDEPSO is able to search for the optimal value and provides the highest convergence accuracy.In conclusion, the work done in this paper is beneficial, which can improve the performance of the algorithms significantly. As an innovation in this paper, we introduce DE algorithm in the late stage of PSO, which improves the capability of algorithm development and exploration, enhances the population diversity, and effectively avoids premature convergence. Although the introduction of some parameters and other operations increase the runtime of the algorithm, it significantly improves the performance of the algorithm. In the improvement of inertia coefficientsω, through the introduction of nonlinear and chaotic mechanisms, the global search ability in the early stage is strengthened along with the local search ability in the later stage, and the inclusion of chaos theory can make the algorithm more diverse and avoid falling into local extremes. The nonlinear optimization for the learning factors c1 and c2 enhances the late local exploitation ability and makes the algorithm less likely to converge prematurely. The two parameters, DE deflation factor F and crossover probability CR, are adaptively processed through the Cauchy and Gaussian distributions, which can be automatically updated to a suitable value by the performance of previous generations, thus improving the robustness and accuracy of the algorithm. Finally, the value of the particles is more fully utilized through an improved selection strategy, which helps to improve the algorithm performance. In summary, CWDEPSO can deal with numerical optimization problems effectively.


## 6. Engineering Application and Analysis

In this section, we use the CWDEPSO algorithm to optimize the two sets of engineering structures for spring tension design and pressure vessel structure design.


### 6.1. Spring Tension Design

Spring tension design is a common engineering problem in practice, and many works [74, 75] have studied it. The problem is composed of three decision variables: coil diameter d, average coil diameter D, and coil winding number P, which are represented by x1, x2, and x3, respectively, in this paper. Figure 12 shows the spring tension structure diagram. Our goal is to make the spring as light as possible when the three decision variables meet the constraints. The constraint problem of spring tension design is shown as follows:Figure 12
Schematic diagram of spring tension design.(29)minfx=x12x22+x3subject tog1x=1−x23x37178x14≤0,g2x=4x22−x1x212566x13x2−x14+15108x12−1≤0,g3x=1−140.45x1x23x3≤0,0.05≤x1≤2,0.25≤x2≤1.3,2≤x3≤15.For this engineering design, we use the metaheuristic algorithm to solve it. We choose renewing the particles whenever the constraints are violated. CWDEPSO is used to solve the spring tension optimization problem, and the results are compared with those of other metaheuristic algorithms AIWCPSO [52], ABC [11], JADE [45], CPSO [25], and GSA [12]. The results of the comparison are shown in Table 9.Table 9
The best solution of six algorithms solving the spring tension design.
Algorithmx1x2x3fxAIWCPSO0.0587511181850160.34711357324780010.9805558891513080.015552ABC0.05003256374758100.2830395007837882.000089496487460.0028341JADE0.0719519691305010.4712287211403402.0659398212713340.0099192CPSO0.2070928431304271.145801546785207.649971039997270.0033512GSA0.05589932562714890.3241363597699324.862486626960000.0069506CWDEPSO0.05000000000000090.2820227217519022.000005420083470.0028202From the data in Table9, it can be seen that CWDEPSO performs best among the six algorithms and can successfully find excellent solutions under several constraints. CPSO and JADE got the second and third best solutions, respectively; and the value of the obtained decision variables differs significantly from that obtained by CWDEPSO, which indicates that CWDEPSO has a strong exploration ability and can effectively find the best value. Besides, AIWCPSO and ABC performed moderately, while GSA, which did well in the previous section, performed worst. It shows that these algorithms will fall into a local extremum when dealing with complex multiconstraint problems, and it is difficult to converge to the optimal value. Compared with them, CWDEPSO is less affected in dealing with the optimization of the spring tension structure.


### 6.2. Pressure Vessel Design

This part uses the experiment of pressure vessel design first proposed by Sandgren [76] to verify the performance of the CWDEPSO algorithm further. It contains four decision variables: cylindrical container thickness Ts, hemispherical cover thickness Th, cylindrical container inner diameter R, and cylindrical container length L, which are represented by x1, x2, x3, and x4, respectively. The mathematical model of the experiment is shown in Figure 13.Figure 13
Schematic diagram of pressure vessel design.(30)minfx=19.84x12x3+1.7781x2x32+3.1661x12x4+0.6224x1x3x4subject tog1x=−x1+0.0193x3≤0,g2x=−x2+0.00954x3≤0,g3x=−πx32x4−4πx333+1296000≤0g4x=x4−240≤0,x1≥0,x2≤10,x3≥10,x4≤200.,CWDEPSO and the recently proposed AIWCPSO [52], SCA [6], BBO [5], CLPSO [24], and MFO [7] algorithms are used to solve this engineering experiment. The comparison results are shown in Table 10.Table 10
The best solution of six algorithms solving the pressure vessel design.
Algorithmx1x2x3x4fxAIWCPSO0.8404213200199780.41542069393733743.5451461150248159.4980891218146000.48281SCA0.8633885022280.44895446170443.656747097939164.073200405156754.8157BBO1.5707073011060.55769018956357.52842383681348.0850761551747079.85636CLPSO0.9221884712640.45583823916347.781786075864116.979392448626179.8822MFO1.216653660596150.60139280418156763.039033802215319.75739578369167136.5180CWDEPSO0.8145964718688210.40265545811542542.2070710812561175.2951858421925950.5602We can see from Table10 that the CWDEPSO algorithm is the most accurate than the other five algorithms in the optimization of the pressure vessel design. MFO performed the second best, but there was a big gap between variable x4 and CWDEPSO, indicating that CWDEPSO had better exploration ability. AIWCPSO, SCA, and CLPSO have a general performance. Compared with CWDEPSO, there are some differences in the obtained decision variables and solution results, which shows that CWDEPSO has better search accuracy. Finally, the performance of BBO is unsatisfactory, and the convergence speed is slower than other algorithms.Through the above two experiments, we can find that CWDEPSO is feasible and effective in the treatment of engineering structure optimization. Besides, it performs well in the treatment of engineering structure optimization, and its application scope is relatively broad.


## 6.1. Spring Tension Design

Spring tension design is a common engineering problem in practice, and many works [74, 75] have studied it. The problem is composed of three decision variables: coil diameter d, average coil diameter D, and coil winding number P, which are represented by x1, x2, and x3, respectively, in this paper. Figure 12 shows the spring tension structure diagram. Our goal is to make the spring as light as possible when the three decision variables meet the constraints. The constraint problem of spring tension design is shown as follows:Figure 12
Schematic diagram of spring tension design.(29)minfx=x12x22+x3subject tog1x=1−x23x37178x14≤0,g2x=4x22−x1x212566x13x2−x14+15108x12−1≤0,g3x=1−140.45x1x23x3≤0,0.05≤x1≤2,0.25≤x2≤1.3,2≤x3≤15.For this engineering design, we use the metaheuristic algorithm to solve it. We choose renewing the particles whenever the constraints are violated. CWDEPSO is used to solve the spring tension optimization problem, and the results are compared with those of other metaheuristic algorithms AIWCPSO [52], ABC [11], JADE [45], CPSO [25], and GSA [12]. The results of the comparison are shown in Table 9.Table 9
The best solution of six algorithms solving the spring tension design.
Algorithmx1x2x3fxAIWCPSO0.0587511181850160.34711357324780010.9805558891513080.015552ABC0.05003256374758100.2830395007837882.000089496487460.0028341JADE0.0719519691305010.4712287211403402.0659398212713340.0099192CPSO0.2070928431304271.145801546785207.649971039997270.0033512GSA0.05589932562714890.3241363597699324.862486626960000.0069506CWDEPSO0.05000000000000090.2820227217519022.000005420083470.0028202From the data in Table9, it can be seen that CWDEPSO performs best among the six algorithms and can successfully find excellent solutions under several constraints. CPSO and JADE got the second and third best solutions, respectively; and the value of the obtained decision variables differs significantly from that obtained by CWDEPSO, which indicates that CWDEPSO has a strong exploration ability and can effectively find the best value. Besides, AIWCPSO and ABC performed moderately, while GSA, which did well in the previous section, performed worst. It shows that these algorithms will fall into a local extremum when dealing with complex multiconstraint problems, and it is difficult to converge to the optimal value. Compared with them, CWDEPSO is less affected in dealing with the optimization of the spring tension structure.


## 6.2. Pressure Vessel Design

This part uses the experiment of pressure vessel design first proposed by Sandgren [76] to verify the performance of the CWDEPSO algorithm further. It contains four decision variables: cylindrical container thickness Ts, hemispherical cover thickness Th, cylindrical container inner diameter R, and cylindrical container length L, which are represented by x1, x2, x3, and x4, respectively. The mathematical model of the experiment is shown in Figure 13.Figure 13
Schematic diagram of pressure vessel design.(30)minfx=19.84x12x3+1.7781x2x32+3.1661x12x4+0.6224x1x3x4subject tog1x=−x1+0.0193x3≤0,g2x=−x2+0.00954x3≤0,g3x=−πx32x4−4πx333+1296000≤0g4x=x4−240≤0,x1≥0,x2≤10,x3≥10,x4≤200.,CWDEPSO and the recently proposed AIWCPSO [52], SCA [6], BBO [5], CLPSO [24], and MFO [7] algorithms are used to solve this engineering experiment. The comparison results are shown in Table 10.Table 10
The best solution of six algorithms solving the pressure vessel design.
Algorithmx1x2x3x4fxAIWCPSO0.8404213200199780.41542069393733743.5451461150248159.4980891218146000.48281SCA0.8633885022280.44895446170443.656747097939164.073200405156754.8157BBO1.5707073011060.55769018956357.52842383681348.0850761551747079.85636CLPSO0.9221884712640.45583823916347.781786075864116.979392448626179.8822MFO1.216653660596150.60139280418156763.039033802215319.75739578369167136.5180CWDEPSO0.8145964718688210.40265545811542542.2070710812561175.2951858421925950.5602We can see from Table10 that the CWDEPSO algorithm is the most accurate than the other five algorithms in the optimization of the pressure vessel design. MFO performed the second best, but there was a big gap between variable x4 and CWDEPSO, indicating that CWDEPSO had better exploration ability. AIWCPSO, SCA, and CLPSO have a general performance. Compared with CWDEPSO, there are some differences in the obtained decision variables and solution results, which shows that CWDEPSO has better search accuracy. Finally, the performance of BBO is unsatisfactory, and the convergence speed is slower than other algorithms.Through the above two experiments, we can find that CWDEPSO is feasible and effective in the treatment of engineering structure optimization. Besides, it performs well in the treatment of engineering structure optimization, and its application scope is relatively broad.


## 7. Summary and Future Work

In this paper, for the purpose for overcoming the shortcomings of PSO and improving its performance of engineering structure design, the CWDEPSO algorithm is proposed. We introduce mutation operation and other methods according to the probability related to the current convergence failure time. This strengthens the communication between individuals within the population and improves the diversity of the population in the later iterations of the algorithm, effectively helping PSO get rid of premature convergence. In addition, nonlinear dynamic optimization and adaptive adjustment of PSO and DE parameters are performed, respectively, and chaotic processing is added to the inertia weight. By optimizing the parameters, the algorithm can strengthen the global search ability in the early stage of iteration and focus on local search in the late stage of iteration. Moreover, the randomness and ergodicity brought by chaos make the algorithm more powerful in exploration. CWDEPSO can be used to solve numerical optimization and practical problems as well as swarm intelligence algorithms such as MBO, EWA, EHO, MS, SMA, and HHO. In this paper, 24 benchmark functions and two groups of engineering optimization experiments have been adopted for verifying the efficiency of the strategy put forward in the paper. In the primary stage of the tests, CWDEPSO is compared with PSO and DE and their classical variants. The tentative outcomes present that CWDEPSO has better results for almost all benchmark functions and has excellent robustness and stability. In the second set of experiments, CWDEPSO is compared with five common metaheuristic algorithms. The results suggest that CWDEPSO outperforms other algorithms in most benchmark functions. Finally, CWDEPSO and some metaheuristic algorithms are applied to solve the engineering structure optimization experiment in the last set of experiments. Compared with other algorithms, CWDEPSO obtained the best solution in both spring tension structure optimization and pressure vessel structure optimization. In addition, compared with other metaheuristic algorithms, CWDEPSO has the advantages of low time complexity and simple parameter setting, enhanced local search capability, is less likely to fall into local optima, and has faster convergence speed. To sum up, the CWDEPSO algorithm proposed in this article is successful and suitable for optimization problems in the field of numerical and engineering structure optimization.In addition to optimizing engineering structures, it can also be widely used in many fields such as national defense, transportation, agriculture, chemical industry, materials, and communications. For example, making a phone call in life includes the process of finding the lowest cost and least congested route; in the design of mechanical structures, the cost will be minimized while meeting the stress requirements; in the field of robotics, it can be applied to path planning in the dynamic environment of mobile robots. However, for some functions, the effect of CWDEPSO is not ideal, and it is not easy to find the optimal value. Therefore, improving the stability of the CWDEPSO algorithm is still worth investigating further. In future work, we will try to learn from APSO [61] to further improve the performance of CWDEPSO algorithm, and CWDEPSO will be used to resolve more practical application problems.



---

*Source: 6648650-2021-02-25.xml*