A Novel Simple Particle Swarm Optimization Algorithm for Global Optimization

: In order to overcome the several shortcomings of Particle Swarm Optimization (PSO) e.g., premature convergence, low accuracy and poor global searching ability, a novel Simple Particle Swarm Optimization based on Random weight and Conﬁdence term (SPSORC) is proposed in this paper. The original two improvements of the algorithm are called Simple Particle Swarm Optimization (SPSO) and Simple Particle Swarm Optimization with Conﬁdence term (SPSOC), respectively. The former has the characteristics of more simple structure and faster convergence speed, and the latter increases particle diversity. SPSORC takes into account the advantages of both and enhances exploitation capability of algorithm. Twenty-two benchmark functions and four state-of-the-art improvement strategies are introduced so as to facilitate more fair comparison. In addition, a t -test is used to analyze the differences in large amounts of data. The stability and the search efﬁciency of algorithms are evaluated by comparing the success rates and the average iteration times obtained from 50-dimensional benchmark functions. The results show that the SPSO and its improved algorithms perform well comparing with several kinds of improved PSO algorithms according to both search time and computing accuracy. SPSORC, in particular, is more competent for the optimization of complex problems. In all, it has more desirable convergence, stronger stability and higher accuracy.

The Particle Swarm Optimization (PSO) algorithm proposed by Kennedy and Eberhart [21,22] in 1995 is also a member of the heuristic algorithm.Unlike other EAs, PSO does not require such steps as crossover, mutation, and selection, and it has fewer parameters.Its optimization process relies entirely on formula iteration, hence its calculation burden is low.The efficiency is very high, especially for continuous unimodal function model optimization.Due to these advantages, it has been widely used in various theoretical and practical problems such as function optimization [23], Non-Deterministic Polynomial(NP) problem [24], and multi-objective optimization [25].
PSO is a typical algorithm that relies on swarm intelligence [26][27][28][29][30][31] to optimize complex problems, and it is inspired by the foraging behavior of birds.It can be imagined that a group of gold rushers find gold in a region.They all have instruments that can detect gold mines under the stratum, and they can communicate with their nearest gold rushers.Through communication, they can know whether the person next to them finds gold.At the beginning, in order to explore this area more comprehensively, they randomly select a location to explore and maintain a certain distance.As the exploration begins, if someone finds some gold, the neighboring gold rushers can choose whether to change his position based on his own experience and whether he trusts him.This constant search may make it easier to find more gold than to be alone.In this example, a group of gold rushers and the gold are, respectively, equivalent to the particles of PSO and the optima that needs to be searched.
In actual operation, it is observed that PSO is very prone to premature convergence and falls into the local optima when faced with multimodal functions, especially some ones with traps or discontinuities.Based on this observation, a huge amount of particle swarm optimization variants have been proposed to deal with these issues.From the literature, it can be clearly observed that most of the existing PSO algorithms can be roughly divided into six categories: principle study, parameter setting, topology improvement, updating formula improvement, hybrid mechanism, practical application.
1. Principle study: The inertia weight factor, which adjusts the ability of PSO algorithm in local and global search was introduced by Shi and Eberhart [32], effectively avoiding falling into local optimum for PSO.Shi and Eberhart provided a way of thinking for future improvement.In 2001, Parsopoulos and Vrahatis [33]'s research showed that basic PSO can work effectively and stably in noisy environments, and in many cases, the presence of noise can also help PSO avoid falling into local optimum.The basic PSO was introduced for continuous nonlinear function [21,22].However, because the basic PSO is easy to fall into the local optima, local PSO(LPSO) [34] was introduced in 2002.Clerc and Kennedy [35] proposed a constriction factor to enhance the explosion, stability, and convergence in a multidimensional complex space.Xu and Yu [36] used the super-martingale convergence theorem to analyze the convergence of the particle swarm optimization algorithm.
The results showed that the particle swarm optimization algorithm achieves the global optima in probability and the quantum-behaved particle swarm optimization (QPSO) [37] has also been proved to have global convergence.2. Parameter setting: A particle swarm optimization with fitness adjustment parameters (PSOFAB) [38], based on the fitness performance, was proposed in order to converge to an approximate optimal solution.The experimental results were analyzed by the Wilcoxon signed rank test, and its analysis showed that PSOFAP [38] is effective in increasing the convergence speed and the solution quality.It accurately adapts the parameter value without performing parametric sensitivity analysis.The inertia weight of the hybrid particle swarm optimization incorporating fuzzy reasoning and weighted particle (HPSOFW) [39] is changed based on defuzzification output.The chaotic binary PSO with time-varying acceleration coefficients (CBPSOTVAC) [40] using 116 benchmark problems from the OR-Library to test has time-varying acceleration coefficients for the multidimensional knapsack problem.A self-organizing hierarchical PSO [41] also uses time-varying acceleration coefficients.3. Topology improvement: In 2006, Kennedy and Mendes [42] explained the neighborhood topologies in fully informed and best-of-neighborhood particle swarms in detail.A dynamic multiswarm particle swarm optimizer (DMSPSO) [43] was proposed, and it adopts a neighborhood topology including a random selection of small swarms with small neighborhood.Moreover, the regrouped group is dynamic and randomly assigned.In 2014, FNNPSO [44] use Fluid Neural Networks (FNNs) to create a dynamic neighborhood mechanism.The results showed that FNNPSO can outperform both the standard PSO algorithm and PCGT-PSO.Sun and Li proposed a two-swarm cooperation particle swarm optimization (TCPSO) [45] that used the slave swarm and the master swarm to exchange the information, which is beneficial for enhancing the convergence speed and maintaining the swarm diversity in TCPSO, and particles update the next particle with information from its neighboring particles, rather than its own history best solution and current velocity.This strategy makes the particles of the subordinate group more inclined to local optimization, thus accelerating convergence.Inspired by the cluster reaction of the starlings, Netjinda et al. [46] used the collective response mechanism to influence the velocity and position of the current particle by seven adjacent ones, thereby increasing the diversity of the particles.
A nonparametric particle swarm optimization (NP-PSO) [47] combines local and global topologies with two quadratic interpolation operations to enhance the PSO capability without tuning any algorithmic parameter.4. Updating formula improvement: Mendes [48] changed the PSO's velocity and personal best solution updating formula and proposed a fully informed particle swarm (FIPS) algorithm to make good use of the whole entire swarm.Mendes [49] proposed a Comprehensive learning particle swarm optimizer (CLPSO) whose velocity updating formula eliminates the influence from global best solution to to suit the multimodal functions, and CLPSO uses two tournament-selected particles to help particles study better case during iteration.The results showed that CLPSO performs better than other PSO variants for multimodal problems.A learning particle swarm optimization (*LPSO) algorithm [50] was proposed with a new framework that changed the velocity updating formula so as to organically hybridize PSO with another optimization technique.*LPSO is composed of two cascading layers: exemplar generation and a basic PSO algorithm updating method.A new global particle swarm optimization (NGPSO) algorithm [51] uses a new position updating equation that relies on the global best particle to guide the searching activities of all particles.In the latter part of the NGPSO search, the random distribution based on uniform distribution is used to increase the particle swarm diversity and avoid premature convergence.Kiran proposed a PSO with a distribution-based position update rule (PSOd) [52] whose position updating formula is combined with three variables.5. Hybrid mechanism: In 2014, Wang et al. [53] proposed a series of chaotic particle-swarm krill herd (CPKH) algorithms for global numerical optimization.The CPKH is a hybird Krill herd (KH) [54] algorithm with APSO [55] which has a mutation operator and chaotic theory.This hybrid algorithm, which with an appropriate chaotic map performs superiorly to the standard KH and other population-based optimization, has quick exploitation for solution.DPSO [56] is a accelerated PSO (APSO) [55] algorithm hybridized with a DE algorithm mutation operator.It has a superior performance due to combining the advantages from both APSO and DE.Wang et al., finally, studied and analyzed the effect of the DPSO parameters on convergence and performance by detailed parameter sensitivity studies.In he hybrid learning particle swarm optimizer with genetic disturbance (HLPSO-GD) [57], the genetic disturbance is used to cross the corresponding particle in the external archive, and new individuals are generated, which will improve the swarm's ability to escape from the local optima.Gong et al. proposed a genetic learning particle swarm optimization (GLPSO) algorithm that uses genetic evolution to breed promising exemplars based on *LPSO [50] enhancing the global search ability and search efficiency of PSO.PSOTD [58] namely a particle swarm optimization algorithm with two differential mutation, which has a novel structure with two swarms and two layers including bottom layer and top layer, was proposed for 44 benchmark functions.HNPPSO [59] is a novel particle swarm optimization combined with a multi-crossover operation, a vertical crossover, and an exemplar-based learning strategy.To deal with production scheduling optimization in foundry, a hybrid PSO combined the SA [7] algorithm [60] was proposed.6. Practical application: Zou et al. used NGPSO [51] to solve the economic emission dispatch (EED) problems and the results showed that NGPSO is the most efficient approach for solving the economic emission dispatch (EED) problems.PS-CTPSO [61] based on the predatory search strategy was proposed to do with web service combinatorial optimization, which is an NP problem, and it improves overall ergodicity.To improve the changeability of ship inner shell, IPSO [62] was proposed for a 50,000 DWT product oil tanker.MBPSO [63] was proposed for sensor management of LEO constellation to the problem of utilizing a low Earth orbit (LEO) infrared constellation in order to track the midcourse ballistic missile.GLNPSO [64] is for a capacitated Location-Routing Problem.The particle swarm algorithm is also applied to many other practical problems e.g., PID (Proportion Integration Differentiation) controller [65], optimal strategies of energy management integrated with transmission control for a hybrid electric vehicle [66], production scheduling optimization in foundry [60], etc.
In view of the shortcomings of PSO [21,22], three improvements are proposed in this paper.The first is Simple Particle Swarm Algorithm (SPSO).It does not use the velocity updating formula, and abandons the use of self-cognitive term.Although the speed of the algorithm has been greatly improved, some deficiencies have been found in actual tests.It is observed that the particles' difference is too small to jump out of the local optimal solution, which is not suitable for searching for multimodal problems.For this purpose, a second improvement named Simple Particle Swarm Optimization with Confidence Term (SPSOC) is proposed in this paper.That is, the confidence term is introduced in the SPSO's position updating formula.Although having a slight increase in time compared to SPSO, the results show that SPSOC is better for multi-peak function optimization.On the basis of this, the inertia weight is improved by introducing the difference between the stochastic objective function value and the worst one, and the final improvement is called Simple Particle Swarm Optimization based on Random weight and Confidence term (SPSORC).The inertial weight not only has a crucial effect on its convergence, but also plays an important role in balancing exploration and exploitation during the evolution.The strategy in this paper makes particle position movements more random.A large number of experiments suggest that all three improvements are very effective, and the combination of the three improvements has greatly improved the search efficiency of the particle swarm algorithm.
The rest of this paper is organized as follows: Section 2 introduces the basic PSO [21,22] and three recently improved PSO methods.In Section 3, three improvements are presented in detail.In Section 4, some analysis of PSO is further discussed.The experimental results are discussed and analyzed between four state-of-the-art PSOs and three improved ones proposed in this paper.Finally, this paper presents some important conclusions and the outlook of future work in Section 5.

The Basic PSO
In general, the particle swarm optimization algorithm is composed of the position updating formula and the velocity updating formula.Each particle iterates with reference to its own history best solution p best and the global best value g best to change position and velocity information.The basic particle swarm optimization (bPSO) [21,22] algorithm iteration formula is as follows: As shown in the above formula, Equations ( 1) and ( 2) are the velocity updating formula and the position updating formula, respectively.The particles whose population is m search for the optima in the -dimensional space.In that process, the i-th particle's position in the n-dimensional space is x in and the current velocity is v in .p best is the individual history best solution and g best is the global one.t is the current iteration numbers.c 1 and c 2 are cognitive and social factors, and r 1 and r 2 are random numbers belonging to [0,1).Figure 1 is an optimization procedure of PSO.
From Figure 1, the area U is the solution space of a function.O is the theoretical optima that needs to be found.x t i is the position of the initial particle.The velocity v t i is the current particle velocity.v t+1 i is the velocity after being affected by various aspects.Particle memory influence and swarm influence are parallel to the connecting lines from x t i to g best and p best , respectively, indicating the influence from g best and p best .In this generation, the particle i is affected by v t i first.After particle memory influence and swarm influence, i arrives at x t+1 i from x t i at velocity v t+1 i .From the next iteration, the particle will move from x t+1 i towards the new position.It keeps iterating as the step above and moves to the theoretical optima more and more close.The velocity updating formula had changed to Equation (3), when Shi and Eberhart put the inertia weight ω into it, and the position updating formula remained unchanged: The introduction of inertia weight effectively keeps a balance between the local and global search capability.The larger the inertia weight, the stronger the global search capability of the algorithm.On the contrary, the local search capability is more prominent.This particle swarm optimization model is the most commonly used nowadays, and many scholars have improved it.
The steps to achieve it are as follows: Step 1: Initialize the population randomly.Set the maximum number of iterations, population size, inertia weight, cognitive factors, social factors, position limits and the maximum velocity limit.
Step 2: Calculate the fitness of each particle according to fitness function or models.
Step 3: Compare the fitness of each particle with its own history best solution p best .If the fitness is smaller than p best , the smaller value is assigned to p best , otherwise, p best is reserved.Then, the fitness is compared with the global best solution g best , and the method is the same as selecting p best .
Step 4: Use Equations ( 2) and (3) to update the particle position and velocity.In addition, we must make sure that its velocity and position are, respectively, within the maximum velocity limit and position limits.
Step 5: Check if the theoretical optimum is reached, output the value and stop the operation; otherwise, return to Step 2 (Section 2.1) until it reaches the theoretical optima or peaks the maximum number of iterations.
In this paper, a basic particle swarm optimization with decreasing linear inertia weight is used.The weight formula is as Equation (4): In Equation ( 4), ω max is starting weight.ω min is final weight.t max is the maximum number of iterations.PSO needs to set a still more larger starting weight ω max according to the influence of inertia weight on the search capability of PSO, so as to pay more attention to the global optima.As the number of iterations increases, the weight will be decreased.The search process would be more inclined to explore the local optima, which is more conducive to the final convergence.

The PSO with a Distribution-Based Position Update Rule
In 2017, a distribution-based update rule for PSO (PSOd) [52] algorithm was proposed by Kiran.This improved strategy changed PSO's iteration formula.
Those three variables in Equation ( 5) work by Equations ( 6)-( 8): It works as follows: Step 1: The population is initialized randomly.
Step 2: The fitness is calculated and compared to get the best individual history solution and the best global one.
Step 3: Equation ( 5) is used to update the particle position that is limited in the upper and lower limits.
Step 4: If the termination condition is met, the best solution is reported.

A Hybrid PSO with Sine Cosine Acceleration Coefficients
In order to make better use of parameters on PSO algorithm, such as inertia weight, learning factors, etc., Chen et al. proposed a hybrid PSO algorithm with the sine cosine acceleration coefficients (HPSOscac) [67].
Step 1: The population is initialized randomly.
Step 2: The reverse population of the initial population is calculated by Equation ( 9) In this equation, x in and x in are initial population and reverse population, respectively.x max and x min are combined the upper and lower limits of particles position i.e., the solution space boundary.
Step 3: Fitness values of those two populations are sorted, and the best half is used as the initial population.Then, the p best and g best are obtained by comparing.
Step 4: Equations ( 10) and (11) are used to update the inertia weight and learning factors, respectively: Among them, c is a constant among 0 and 4. c 1 and c 2 are cognitive and social factors, respectively.
Step 5: Updating the particle velocity and position, use Equations ( 1) and (12).The particle position updating formula is as follows: W t in and W t in are the dynamic weights that control position and velocity terms.Its formula is like Equation (13).ρ is a random value between 0 and l: In this formula, f i is the particle fitness value, and f avg is the average one.
Step 6: The iteration is ended if end condition is reached.Otherwise, it comes back to Step 2 (Section 2.3).

A Two-Swarm Cooperative PSO
A two-swarm cooperative particle swarm optimization (TCPSO) [45] was proposed who uses two particle swarms, the slave swarm and the master swarm with the clear division of their works to overcome the shortcomings such as lack of diversity, slow convergence in the later period, etc.It works like the following: Step 1: Initialization.Initialize the slave swarm and the master swarm's velocity and position randomly.
Step 2: Calculate the fitness of these two swarms and get the g S best , p S best , g best and p M best .The first two come from the slave swarm and the last two come from the master swarm.
Step 3: Reproduction and updating.
Step 3.1: Update the slave swarm by Equations ( 14) and (15).Ensure that velocity and position are within the limits: x S,t+1 in S in these two formulas means that this variable from the slave swarm, except g best in Equation ( 14) from the master swarm.Finally, we will get the g S best .
x k is randomly chosen from the neighberhood of the x i according to Equation (16) [42]: l is the size of neighborhood.Sun and Li found that the size of neighborhood equal to 2 is best in their experiments.Step 3.2: Update the master swarm by Equations ( 17) and (18).Ensure that velocity and position are within the limits: x M,t+1 in M here means that this variable is from the master swarm.In the end of Step 3.2 (Section 2.4), g best wil be obtained for the next iteration.
Step 4: Get the optima if it meets the termination condition; otherwise, go to Step 2 (Section 2.4).

Simple PSO
Zou et al. proposed a novel harmony search algorithm [68] that used the optimal harmony and worst harmony in the harmony memory to guide the configuration of the harmony vector.It obtained very suitable results.Inspired by its thoughts, we try to round off the velocity formula and cognitive term of PSO and directly use the social term to control the algorithm optimization, so that the formula Equation ( 21) is the most simplified, namely the Simple Particle Swarm Optimization (SPSO) algorithm.According to the results of the literature [69], the influence of the velocity term on the performance of the particle swarm algorithm can be neglected.Drawing on literature [69], we can simply do the following derivation.Before abandoning the velocity updating formula, SPSO velocity updating formula is shown as follows.Particles' positions are updated according to Equation(2): According to Equations ( 19) and ( 2), we make the following assumptions: Hypothesis 1.The update of particles per dimension is independent from each other, except that g best is the one that connects the information to the other dimensions.Hypothesis 2. When particle i is updated, the other particles' velocities and positions are not changed.
Hypothesis 3. The particles' positions are moving continuously.
According to the above assumptions, it is only necessary to prove a certain dimension of a certain particle search process that can be universal.Iterating over Equations ( 19) and ( 2) yields a second-order differential equation: We can observe that there is no velocity updating in Equation (20).This result can be applied to each dimension update of other particles.Now, we get SPSO's updating formula: SPSO only uses this formula to iterate.The experimental results show that this strategy improves the search efficiency and stability of the bPSO.
It works like the following: Step 1: The maximum generation, population number, inertia weight, learning factor are set up.Population is initialized.
Step 2: Fitness is calculated according to the function.
Step 3: Every particle compares with its history best solution to get the p best and compares with the global best one to get the g best .
Step 5: If the theoretical optimal value is not found, the program returns to Step 2 (Section 3.1); otherwise, the program stops.
After changing, the particle direction is only affected by the global optima.Graphical display of one of the particle optimization process is shown in Figure 2. As shown in the figure, compared with the bPSO optimization process diagram in Section 2.1, in the optimization of SPSO, the particles are only affected by g best and the direction of the particles always faces g best .This feature also brings some drawbacks.For example, whether the algorithm can or cannot search for the theoretical optima depends entirely on the selection position of the global optima, which makes it likely for particles develop in a certain local optimal direction.It is possible to reach the current g best value directly if the movement is fast enough.This is a search trajectory of one, while when all particles are only optimized in one direction, it obviously reduces the difference between the population.The lack of diversity directly leads to the fact that SPSO are easily trapped in local optimal solutions.
What is gratifying is that SPSO is very fast because of the simplification.This is very suitable for single-peak problems.This advantage can be clearly reflected in the experimental results in Section 4.However, the unconstrained functions, especially single-peak problems, are a minority after all.In order to make this improvement apply into more functions or environment, we propose adding a confidence term so that some part of the particles can determine the distance to advance based on its own level of trust to g best , so as to get rid of the defects that all particles are looking for at one point.

SPSO with Confidence Term
In order to better solve the multimodal problem and make the improvement universal, we decided to add a confidence item(SPSOC) that rewrites Equation (21) into Equation ( 22): Compared with SPSO, the algorithm formula adds one item, namely the confidence term.ω 2 is the inertia weight of the confidence term.r 2 is the random value between [0, 1].
Referring to Figure 3, the principle of the item can be understood as: at a certain iteration, the position calculated by the SPSO moves a distance suffered from confidence influence.The effect is equivalent to the particle being optimized from x t i to x t+1 i .Then, the particle retreats a distance from the beginning in the opposite direction to the g best direction.Finally, this particle reaches the position of x t+1 i .Using the inertia weight ω 2 and the random number r 2 , the distance of the particles retreating in the opposite direction would be uncertain.It can be imagined that the degree of particles trust at different generation is different, that is, the influence of g best is different.This improvement can effectively slow the convergence of particles, so that the particles are not too dense, thus maintaining particle diversity.A discussion of the impact of this improved algorithm using a combination of different weights will be explained in the experiment of Section 4.4.In order to minimize the program running time and ensure that the program structure is simple and the effect is optimal, this paper makes ω 1 = ω 2 .SPSOC's iteration process is the same as SPSO.

SPSOC Based on Random Weight
Adding a confidence item to the SPSO does significantly enhance the search ability of the algorithm, but it does not achieve theoretical optimization when searching for most of the benchmark functions.Compared with many improved PSOs proposed recently, SPSOC has no big advantage except for the short amount of time.Therefore, we think about randomization improvement of inertia weight named SPSOC based on random weight (SPSORC).The improved inertia weight formula is shown in Equation ( 23): In this formula, if we set the minimum as the target we want to find, f best is the minimum fitness in the current iteration, f worst is the worst fitness target value in the current iteration, and p r best is one of the most p best that a random particle has searched for from total swarm.The use of Equation ( 23) allows the weights to be generated randomly, which effectively reduces the possibility that the algorithm falls into a local solution and enhance the exploitation capability.This strategy will at least make algorithms better for some multimodel problems.The random weight, however, also increases the risk of finding non-optimal solutions.This will be reflected in the large amount of experimental data in Section 4, but the experimental results show that the overall search ability of SPSOC has been very significantly improved.
It is more concise that the flow of SPSORC is similar to that of the bPSO, which just calculates the random weight.Its procedure is shown in Table 1.Initialize and reserve matrix space: x min = lower limits of position, x max = upper limits; 3 For i = 1:m 4 For j = 1:N

Benchmark Functions
The aim of this improved strategy is to solve the problem of unconstrained optimization better.In order to demonstrate the effectiveness of the algorithm more fully, this experiment will use 22 commonly used benchmark functions to simulate and contrast, including the unimodal benchmark functions represented by Sphere Function, the complex multimodel solution functions such as Rastrigrin Problem, the ill-conditioned quadratic Rosenbrock function, Xin-She Yang 3 with discontinuity and trap near the optimal solution, noise-containing functions like Quartic Function and other functions which is hard to find the best solution.Of course, these 22 functions also contain four test functions ( f 7 , f 15 , f 20 and f 21 ) with negative optima.
These 22 benchmark functions arranged in alphabetical order are shown in Table A1.The following test functions may change slightly in form for consistency or convenience because of the large number of types for test function versions, but the test results will not be affected.The last column, 'Accuracy (50)', is the convergence accuracy we want to reach for the test function in the 50-dimensional case, which will be used in Section 4.5.3,'Success Rate and Average Iteration Times'.

Parameters Setting and Simulation Environment
One of the reasons why particle swarm optimization algorithm was proposed late but had a relatively wide range of use is that it needs fewer parameters and is set up simply.When dealing with general problems, its requirements on population numbers, the maximum iteration numbers and other parameters are not high, which also determines that the algorithm has the advantages of small size and fast searching speed when it is implemented.Under normal circumstances, the population set at 40 can get a good solution for most problems.More complex problems can be solved by increasing the population number and the maximum iteration times.
Table 2 is about the specific parameter settings.NR is the number of times each algorithm searches for the benchmark functions.m is population number.T is the maximum iteration times per search.ω max and ω min are the maximum weight and the minimum weight.c 1 and c 2 are the acceleration factors.Simulation environment is shown in Table 3.

Discussion on Improvement Necessity For SPSO
The search speed is a great advantage of SPSO because of a simple structure.However, its advantages are its disadvantages.The over-simplified structure makes the SPSO's population lack of diversity, which makes it converge to local optima quickly, so the further improvement of SPSO becomes indispensable.Therefore, in Section 3, we present two improvements to SPSO.In this section, we will let SPSO, SPSOC and SPSORC solve the high dimension benchmark functions.Then, we discuss the necessity of those two improvement steps in Section 3 by analyzing its results.
In this experiment, the function dimension is set to 200 dimensions.The other parameters are consistent with the parameter setting table in Table 2 of Section 4.2.Table 4 shows the optimal results of the experiment.The minimum number in each set of data (min and mean) is represented in bold in the following table.
From the experimental results for the 200-dimensional benchmark functions in Table 4, we can see that SPSORC can search the other 21 functions for the theoretical optimal solution or a better solution than SPSO and SPSOC except for searching Quartic Function with noises.The optimization results of SPSO and SPSOC, however, are in straitened circumstances compared to SPSORC.SPSO gets better solutions four times, while SPSOC gets better solutions six times.Compared with the 30 search average solutions of SPSO and SPSOC, the optima of SPSOC is also smaller. it is indicated that the solution searched by SPSO after adding the confidence item can be kept smaller and its performance is greatly improved and the optimization capability is more enhanced after using random inertia weight.Thus, it can be seen that the two improvements to the SPSO are very necessary.SPSO is more inclined to exploration, which is more conducive to the local search of particles.Confidence term change the trajectory of some particles, which increases particle diversity.Meanwhile, the random inertia weight balances the exploitation capabilities of the algorithm so that it improves the search range and robustness of the algorithm significantly.The proposed SPSOC has two inertia weights.The first inertia weight balances the search ability to global optima and the local one, while the second weight determines the degree to which the particle converges to the global optima in current generation.Obviously, whether these two weights are set properly or not has a significant impact on the performance of the algorithm.Then, the discussion of how these two inertia weights should be selected becomes quite necessary.The experiment comparing the optimal solution and the average solution found by the algorithm with different weights introduces three kinds of inertia weight strategies, which are divided into six kinds of situations.Those three kinds of inertia weights used in the experiment are as follows: 1. Linear decreasing inertia weight, i.e., Equation (4); 2. Classic nonlinear dynamic inertia weight, i.e., Equation (24); 3. Random inertia weight proposed in this paper, i.e., Equation (23).
Table 5 reports the results of this experiment.Taking ω 2,1 for example, the first subscript 2 indicates that ω 1 in Equation ( 22) uses the second kind of weight formula i.e., Equation (24), and the second subscript 1 indicates that ω 2 uses the first kind of weight formula i.e., Equation (4).The others are similar.Experimental benchmark functions' upper dimensions are set at 100.We represnt the minimum value for min and mean in bold in the following table.As can be seen from the experimental data in Table 5, when the ω 1 and ω 2 take the random weights proposed in this paper, the obtained optima are satisfactory.It has 19 times to find the best solution, but only dominated by other algorithms when searching for the three functions ( f 9 , f 11 and f 15 )-followed by ω 1 using the second kind of weight improvement strategy and ω 2 using the first strategy with the way.This method has six times to search for smaller results.The conclusion of this discussion is that the optimization of the algorithm is better when ω 1 is equal to ω 2 .If they all use the randomized weights proposed in this paper at the same time, the capability of the SPSOC will be the best and it can easily do this with most of the benchmark functions.Comparing with the 30-times average values, we can find that, when the weight ω 1 is equal to ω 2 , the average value is smaller and the randomization strategy proposed in this paper is the best among them.If they use the same weight equation, the algorithm will be simpler and faster because only one weight needs to be calculated.However, this paper uses only six kinds of collocation ways which are combined into three kinds of improvement strategies to carry on the simulation experiment.Whether there is a better weight improvement strategy to make SPSOC have a better performance needs to be further developed and improved.

Comparison and Analysis with Other PSOs
The most commonly used method which better reflects that the improved algorithm is excellent is bound to be compared with other classical improvement methods.In this section, we have a comparative test between three improved strategies proposed in this paper and bPSO and its three representative improved ones namely, bPSO, PSOd, HPSO-SCAC and TCPSO.The experiment consists of three parts mainy.The first part is to test the seven kinds of particle swarm algorithms separately for 0-dimensional, 50-dimensional and 100-dimensional functions.Each function is searched for 30 times.A t-test is used to analyze the large amount of experimental data obtained.Twenty-two distinct evolution curves of fitness from optimizng 100-dimensional functions will be analyzed briefly.Here, all the experiments were conducted on the same conditions as Zhang et al. [70,71].The second part is to analyze the complexity by the Big O notation [72] and the actual running time for search for the optima in 50-dimensional problems.The third part is to calculate the success rate and the average iteration times of seven algorithms in solving twenty-two 50-dimensional problems, respectively.The stability and effectiveness of the algorithm will be analyzed by these two indices.More details of those three parts will be elaborated in sequence in the following subsections.

Different Dimensional Experiments and t-Test Analysis
Students' t-test (t-test) is a frequently used method of data analysis in statistics to compare whether two sets of data is in one solution space or not, that is, the comparasion for data differences.In this paper, a two-independent-samples t-test as the following formulas is used to analyze the difference between the 30 optima searched by SPSORC and the 30 ones by others: where X1 and X2 are, respectively, the average of two sets of data; S 2 c is the combined variance; The sample size is 30; the two-tailed test level is taken as 0.05.The Matlab R2014a test2 function (MathWorks, Natick, MA, USA) instruction is used to calculate directly so as to avoid unnecessary calculation error in the paper.Table 6 shows the optima of the seven improved algorithms for the 10-dimensional, 50-dimensional and 100-dimensional benchmark functions from Table A1, respectively.In Table 6, each algorithm solves the specified function 30 times separately and minimum value(min), average values(mean) and standard deviation values(std) of them are calculated.The minimum one of this three sets of data are highlighted in boldface.'+', '−' and '=' respectively indicate that the SPSORC results are 'better' than, 'worse' than and 'same' as the improved algorithm.To calculate the SPSORC's net score for convenience, '1', '−1', and '0' corresponding to the three symbols here indicate the score of the SPSORC.The search results of the heuristic algorithm are random, so the average value (mean) of the results after multiple searches is the most valuable data.Observing the mean values in Table 6, when searching for 10-dimensional functions, we can see that SPSORC outperforms the other six PSO on 16 functions ( f 1 , f 2 , f 3 , f 4 , f 6 , f 7 , f 10 , f 12 , f 13 , f 14 , f 16 , f 17 , f 18 , f 20 , f 21 and f 22 ) in terms of the criteria 'mean', and 15 out of 16 were theoretical optimal solutions.Secondly, the number of that SPSOC find the minimum mean solutions for 10-dimensional functions is 6 times ( f 1 , f 5 , f 7 , f 8 , f 9 , f 10 ).PSOd, TCPSO and SPSO only find the minimum mean once.bPSO and HPSOscac are unable to search for the minimum mean at one time.Regarding the three functions ( f 1 , f 7 , f 10 ), SPSOC and SPSORC can obtain the same mean.
On the other hand, both SPSORC and HPSOscac can find the same values in many functions including f 2 , f 3 , f 4 , f 6 , f 12 , f 13 , f 14 , f 16 , f 17 , f 21 and f 22 .In addition, SPSORC has achieved the best results for ninth, indicating that SPSORC and HPSOscac have the opportunity to yield a better solution than the average one, but the results are volatility, especially for HPSOscac.
The use of standard deviation (std) can observe the volatility of the algorithm results.The standard deviation is a measure of the degree to which a set of data averages is dispersed.A larger standard deviation represents a larger difference between most of the values and their average values; a smaller standard deviation means that these values are closer to the average.It is clear that the standard deviation of SPSORC is almost the smallest of all algorithms.
The comparison of 'min', 'mean' and 'std' from 50-dimensional and 100-dimensional dimensional functions between SPSORC and other six PSO variants is also illustrated in Table 6.It is clearly seen that, for both 50-dimensional and 100-dimensional functions except for f 9 , f 11 , f 15 , f 19 , SPSORC is able to obtain better 'mean' than the most of the other improved strategies.In 50-dimensional optima values, SPSORC outperforms the other six PSOs on 17 functions ( f 1 , f 2 , f 3 , f 4 , f 5 , f 6 , f 7 , f 10 , f 12 , f 13 , f 14 , f 16 , f 17 , f 18 , f 20 , f 21 and f 22 ), in which, 14 out of 17 were searched for theoretical optima.SPSOC has searched for the best solution five times ( f 1 , f 5 , f 7 , f 8 , f 10 ).Then, PSOd and SPSO has two times ( f 15 , f 19 ) and once ( f 9 ), respectively.Regrettably, other algorithms have no chance.Almost the same situation also appears in 100-dimensional results.In addition, as for 'std' of SPSORC, it should be noted that the 'std' without any fluctuations many times is markedly superior to that of the others.Second, with regard to the experimental results comparison in 100-dimensional results of Table 6, SPSOC is also able to achieve good performance with smaller mean value such as for f 1 , f 5 , f 7 , f 9 and f 10 out of the twenty-two 100-dimensional test functions.
To sum up, from Table 6, it has been identified experimentally that SPSORC is superior or highly competitive with several improved PSO variants, and this improving strategy is shown to be able to find fairly good solutions for most of the well-known benchmark functions.
Table 7 is a summary of the scores based on the t-test analysis of search results in three kinds of dimensions.Score is the net score of SPSORC, which is better than the score obtained by the comparison function minus the number of comparison functions.Take the comparison result of SPSOC and RSMPSOc in Table 7 as an example, that is, the A6 algorithm in 100-dimensional in Table 7.The SPSORC result is seven times better than SPSOC and three times worse than SPSOC.Therefore, the net score of SPSORC is: Score = 7 − 3 = 4, and the calculation process of other net scores is the same.
Observed from Table 7, SPSORC has a stable net score for these six algorithms, all greater than 0. Careful observation can show us that the performance is slightly higher in the 50-dimensional scores compared to 10-and-100 dimensions.It is again proven that the capability of SPSORC is better than bPSO, PSOd, HPSOscac, TCPSO, SPSO and SPSOC, especially when solving the 50-dimensional problem.The convergence curves of seven improved PSO algorithms on twenty-two benchmark functions with 100 dimensions are plotted in Section 4.5.1 Figure 4, respectively.Figure 4a is the legend for the other twenty-two convergence curves.Figure 4b indicates that, on f 1 , PSPSOC converges the fastest in the early stage among the seven improvements.HPSOscac converges relatively slowly compared to SPSORC.The order of performance on f 1 is SPSORC, HPSOscac, SPSOC, SPSO, bPSO, PSOd, TCPSO.Almost the same situation occurs simultaneously on the other 11 function convergence curves.This should be the effect of algorithm simplifying so that the algorithm can converge very quickly in the early stage.On f 3 , f 4 , f 5 , et al., RSPSO has found the best solution within the maximum generation.Figure 4 l,m, on f 11 and f 12 , show that SPSORC converges relatively slowly compared to HPSOscac in the beginning, but it surpasses HPSOscac in about 20th generation.
Next, it is further analyzed by the box diagram in Figure 5. Box diagram is mainly used to reflect the characteristics of the original data distribution, and can also compare the distribution characteristics of multiple sets of data.On the same number of axes, the box plots of several sets of data are arranged in parallel.Shape information such as median, tail length, outliers, and distribution intervals of several batches of data can be seen at a glance.+ indicates an abnormal point.
From Figure 5a, the order of these boxes from high to low is bPSO, TCPSO, PSOd, HPSOscac, SPSO, SPSORC and SPSOC, respectively.The upper quartile and median values of bPSO and TCPSO are closer to the upper edge, which indicates that the data of the two algorithms are more biased toward larger values.In comparison, the box of PSOd is more symmetrical and the data distribution is relatively uniform.Unfortunately, the distribution of the boxes of these three algorithms is too high, and the search results are not good.The box of HPSOscac is at the bottom of the coordinate system.However, we can clearly see that there are many outliers in its data.Some even have exceeded the median of PSOd.Its skewed nature tends to be smaller, but the distribution of data is more scattered.Compared with the above four algorithms, the distribution of the boxes of the three algorithms proposed in this paper is obviously more optimistic.The optimization results of the three algorithms are almost neat, concentrated and smaller.The situation of other box diagrams is not much different from that of Figure 5a.Throughout the 22 box diagrams in Figure 5, the bPSO, PSOd, HPSOscac and TCPSO seem to have more difficulty locating the solution than the SPSORC for from the box diagrams.The boxes of PSOd are mostly too top, followed by TCPSO.HPSOscac has a lot of outliers.Its maximum and minimum span is large, and distribution is extremely non-uniform and decentral.It is observed that the results of HPSOscac are highly volatile and the improvement of the algorithm is unstable.This may be related to its weight mixed with the trigonometric function.For the above reasons, the results of SPSORC and SPSOC are not obvious in the box diagram, almost all posted at the bottom.Combining the results of Table 6, we can roughly know that SPSORC has better performance, and the more oblate box can show that the 30 search results have little differences and the performance is very stable.
To sum up, the test results indicate that : Both confidence term and random weight can enhance diversity.The former can yield a significant improvement in performance, while the latter can preserve much more diversity.The aforementioned two methods are compatible.Combining both of them with SPSO can preserve the highest diversity and achieve the best overall performance among the six improved strategies.

Algorithm Complexity Analysis
Comparing the steps of the bPSO algorithm, the time complexity of SPSO's two improvements mainly depends on two aspects: (1) random initialization, and (2) particle velocity and position updating.These two parts can all be expressed as O(m × N) by the Big O notation [72], in that, m is the population and N is the problem dimensions.In this paper, we haven't changed the algorithm's initialization method, so we only compare the time complexity from particle velocity and position updating.The SPSO, which does not consider the inertia weight updating and confidence term calculating, has a reduced computational complexity compared to the basic particle swarm optimization algorithm, but the Big O notation can also be represented by O(m × N).Compared with the bPSO and the SPSO, the most complex algorithm we proposed is named SPSORC, which has increased weight, and the confidence term has surely increased in computational complexity, but we can see from Table 1 that its loop body has not changed.According to the Big O notation, its time complexity is still O(m × N).Overall, the complexity of SPSO and its two improved ones are not increased by orders of magnitude.
Then, we analyze the real computational time from Table 8.In Table 8, we show the computational time for three kinds of dimension functions.The time in Table 8 is the average time required to run 30 times independently.The average length of time varies slightly depending on the problem.Observing the running time of the seven algorithms, it is certain that the running time of SPSORC is similar to the computational time of other algorithms.It is clear that the lowest running time is obtained by SPSO, since it greatly simplifies bPSO.SPSOC has increased slightly over time due to confidence term.HPSOscac's trigonometric function improvement strategy makes the algorithm better applicable to multimodal problems.However, because the regularity distribution of the trigonometric function increases the particle diversity, the particle is difficult to converge at the later stage, and the actual calculation time is longer.TCPSO uses the dual population to optimize problems through information exchange.Thus, SPSO and its improved strategies do not simply consume runtime to improve algorithm performance.The real computational time is basically distributed as Figure 6.A1-A7 are namely bPSO, PSOd, HPSOscac, TCPSO, SPSO, SPSOC and SPSORC.

Success Rate and Average Iteration Times
The success rate (SR) is the percentage between the times that each algorithm can successfully achieve convergence accuracy for function optimization and the total number of times.The average iterations times (AIT) is the average iteration numbers required by the algorithm to find the convergence accuracy.The former can examine the stability and accuracy of the algorithm, while the latter mainly examines the efficiency of the algorithm.The convergence accuracy used for the success rate and the average iteration times in this paper is the accuracy of the 50-dimensional test functions we want to meet.The specific values can refer to the last column of Table A1.The other parameters are set according to Table 2. Figure 7 shows the Radar charts with average iteration times of eight functions.We can surely, in Figure 7, find that the point of SPSORC is always close to the center origin.Specific data for the average iteration times and the success rate of the seven algorithms in solving 50-dimensional problems are referred to in Table 'AIT' is the average iteration times.'SR' represents the success rate.In order to facilitate the use of differentials, 'SR' is expressed in percentage form.The results round off to retain two digits after the decimal point.'−' means that the algorithm fails to search this function when convergence accuracy is reached within the maximum generations.For the convenience of observation, we will show the minimum AIT and the maximum SR for each function in the bold format.
The results can be analyzed from Table 9. bPSO, PSOd, TCPSO and SPSO have higher success rates three times.SPSOC and HPSOscac gets six and seven times, respectively.SPSORC, surprisingly, has 15 times, and seven of them ( f 12 , f 13 , f 14 , f 17 , f 18 , f 20 , f 21 ) have the best success rate that none of the other six algorithms have achieved.One can see that the SPSORC strategy has a wider range of types, high precision and stability.Comparing the average iteration times, it is clearly shown that TCPSO, SPSO and SPSOC do not get the lowest average iteration times.
The above two data comparisons reveal that SPSORC has a large advantage compared with the other six algorithms.Not only is it more stable, but the search efficiency is also faster.When faced with a unimodal function, SPSORC can converge to effective precision more quickly.For other multi-peak complex problems, it is not to be outdone, except for the extremely difficult functions such as Rosenbrock Function and Schwefel's Problem 2.26, which show weak stability.It can be stated that the improved method can be adapted to a variety of test environments, and the results are quite excellent.

Conclusions
Due to the effect on particle swarm optimization, in this paper, a Simple Particle Swarm Optimization based on Confidence term and Random inertia weight namely SPSORC has been proposed.SPSORC adopts three different improving strategies-first, particle updating formulas only use positional items and social items to enhance the exploration capability; second, the confidence term is introduced to increase particle diversity and avoid excessive particle convergence.Finally, a random inertia weight is formulated to keep the balance between exploration and exploitation.Extensive experiments in Section 4 on twenty-two benchmark functions validate and discuss SPSO and its further improvements' effectiveness, efficiency, robustness and scalability.It has been demonstrated that, in most cases, SPSORC performs a better capability of exploitation and exploration than, or at least highly competitively with, basic PSO and its state-of-the-art improved ones introduced in this paper.
In our future work, we intend to incorporate different initialization strategies, multi-swarm and hybrid algorithms into SPSORC.This may result in very competitive algorithms.Obviously, many adaptive methods for PSO have been proposed.In order to improve the performance of the proposed approach and its application, the research on particle swarm optimization algorithm and its improvements is a promising research direction.Furthermore, we will apply the proposed approach to solve some other practical existing engineering optimization problems, e.g., machine-tool spindle design, logistics distribution region partitioning problem, economic load dispatch problem, etc.With these evolutionary algorithms, it is unnecessary to know the computing environment and to calculate the gradient and other information.Thus, it is helpful to save on the cost of computing.Even better, we can calculate the problem with more dimensions and goals at once, including some discontinuous problems.

Figure 4 .
Figure 4. Average convergence curves of seven improved PSO algorithms for twenty-two functions in 10 dimensions.

f 22 Figure 5 .
Figure 5. Box diagram of thirty results, each function with 100 dimensions.

Figure 6 .
Figure 6.Real computational time of f 11 in 50 dimensions.

Figure 7 .
Figure 7. Radar charts of average iteration times.

Table 1 .
The procedure of SPSORC.
Line Procedure of SPSORC 1 Initialize parameters: dimension N, population size m, iteration number T, weight ω, learing factors c 1 , c 2 , etc; % Step 1 2 12ile the optima is not found or the termination condition is not met12Calculate the f best and f worst .Then, get the ω by Equation (23); % Step 3 13 22 Substitute the current particle into the fitness formula to calculate the fitness value of the current particle; 23 Compare to get the p best and g best ; 24 End For 25 End While 26 Return Results.% Step 5

Table 2 .
Parameters for candidates.

Table 4 .
Discussion on the necessity of improving SPSO.

Table 6 .
Optimization results for the function in 3 kinds of dimension.

Table 8 .
Real computational time.

Table 9 .
Success rate and average iteration times.