Abstract
Through the researches on various item improvements of particle swarm optimization algorithm, the improved particle swarm optimization algorithm is proposed for the insufficient global searching ability. This paper has improved the parameters of velocity formula and introduced new distance calculation formula to modify various parameters in the velocity formula. The improved particle swarm optimization algorithm has been tested by adopting standard test function, and the result has been compared with other particle swarm optimization algorithms. The experimental result indicated that the proposed improved particle swarm optimization algorithm in this paper got the better result for function optimization problems.
Keywords
Introduction
Particle swarm optimization algorithm is one of evolutionary computations which was put forward by Kennedy and Eberhart in 1995 [1]. This algorithm imitates the group behaviors of fishes and birds when they forage for foods. Their similarities are that the whole group shares information in the process of searching for foods and the whole motor process of group is guided by the optimal direction of the group until they search for the optimal position. Particle swarm optimization algorithm is the same as other evolutionary algorithms. Starting from random solutions to find the optimal solution by iteration, then according to different problems, particle swarm optimization algorithm designs corresponding fitness function to evaluate the quality of the solution. Comparing with other evolutionary algorithms, the advantages of particle swarm optimization algorithm are easy to realize and understand, high solution precision and convergence speed, etc.. At present, it has been extensively applied in various research fields and practical application fields. Since particle swarm algorithm has been proposed, PSO algorithm presents a lot of merits in the practical application, but as a new algorithm, there are many imperfect places. For the defects of particle swarm algorithm, many scholars at home and abroad began to make improved researches on particle swarm algorithm. So in a short time, it has been a hot research issue in the field of evolutionary computation. For the improvement of particle swarm algorithm, the following points are generally made.
Parameter improvements for the velocity formula. The parameter improvements in PSO algorithm has three main forms, namely, improvement for inertia weight value in the speed formula, introduction of new parameter in the speed formula and improvement for two learning factors. In the parameter improvement method, as the key factor of PSO algorithm balancing global searching ability and local development capability, inertia weight value has been improved by many methods. The concept of inertia weight was firstly proposed by Shi and Eberhart [2]. The purpose is to improve the opportunities that population can search for the optimal solution within the scope of reasonable iterations. Besides, the experiment indicated that the property is better when the inertia weight value is between [0.9, 1.2]. And then linearly decreasing weight particle swarm optimization (LDWPSO) was put forward [3]. Most early improved PSO algorithm is quite effective for the static optimization problems. However, many problems in the practical application are nonlinear. On this basis Chen [4] constructed three nonlinear strategies for decreasing inertia weight values through the studies and researches on inertia weight so as to enhance the global searching ability of algorithm. To make up the defects of PSO algorithm in the dynamic tracking system, Clerc and Kennedy [5] introduced new parameter constriction factor K to traditional PSO algorithm for replacing inertia weight. Compared with inertia weight, the addition of constriction factor improves local searching ability of PSO algorithm. In the early researches on PSO algorithm, learning factors c1 and c2 were usually set to constant value. With the further researches, Ratnaweera et al. were enlightened by the constriction factor concept from Clerc and proposed time-varying acceleration coefficients particle swarm optimization (PSO-TVAC) [6]. Improvements for group topological structure. In the earlier improvements, Kennedy firstly put forward wheel topological structure [7]. In the same year, Suganthan proposed one topological structure which is different from wheel topological structure [8]. In recent years, based on the characteristic that inertia weight is used for balancing global and local searching abilities, Parsopoulos and Michael [9] integrated global and local topological structures by randomly transforming inertia weight value, and put forward unified particle swarm optimization (UPSO). Zhang and Yi proposed scale-free fully informed particle swarm optimizer (SFIPSO) [10] on the basis of former studies. Montes de Oca et al. combined a variety of algorithms to show the various advantages. Then according to the structure adaptive thought, Frankenstein’s PSO algorithm was put forward [11]. In addition, Janson and Middendorf [12] dynamically stored particle by the tree architecture in data structure, and combined the characteristic of tree storage structure that each particle has father node. While according to the various specialties of population, Clerc [13] adjusted its structure dynamically and proposed improved particle swarm algorithm based on tribe for improving the searching ability of the population. Researches on hybrid algorithm. There are many classifications for evolutionary algorithms, and each evolutionary algorithm has its own advantage. A lot of scholars derived several hybrid particle swarm optimization algorithms by learning from each evolutionary algorithm. Angeline firstly applied selection operator of genetic algorithm to particle swarm. And the experimental result highlighted its validity. Later the ways like evolution strategy, crossover operator, mutation operator and evolutionary programming, etc. were applied to improve the searching ability of particle swarm. Meanwhile many specific heuristic algorithms were also applied to particle swarm such as particle swarm optimization with simulated annealing [14] by Wang and Li, Newton local searching method [15] by Li et al., genetic particle swarm algorithm [16] by Settles and Soule, ant colony particle swarm algorithm [17] by Taher and Amiri. In 2004, Jiang and Ji put forward hybrid particle swarm optimization and gravitational search algorithm (HPSO-GSA) [19] on the basis of gravitational search algorithm (GSA) [18] proposed by Rashedi et al. Through the experiment of test function, the result demonstrated that this algorithm had good performance.
With the development of the technology, the study of particle swarm optimization algorithm is also growing widely, PSO algorithm with the characteristics just like: the implementation is simple, high efficiency and fast convergence speed, and its widely used in various fields [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49].
PSO algorithm is one of evolutionary algorithms. It is the same as all evolutionary algorithms, and the first step is to randomly initialize one population. But the difference from other evolutionary algorithms is that each individual of PSO algorithm is a particle with its own velocity and position. The basic thought of algorithm is: a group of particles are randomly initialized in the feasible solution space, and each particle represents one feasible solution for optimization problem. Through the actual problem, the fitness function is set to evaluate particles. And each particle in the population updates its own position according to velocity variables. Each particle in the population usually moves toward the direction of current optimal particle and retains its historical optimal position in the process of motion. Finally the optimal solution is gained through generational searching.
It is assumed that the population size of particle swarm is
Where the position of particle
The steps of original PSO algorithm are as follows:
Initialize. Set all involved parameters in PSO algorithm: lower limit and upper limit of searching space Evaluate each particle. Calculate the fitness value of each particle and record current optimal position and global optimal position of each particle according to the fitness value. Update the state of particle. Adopt Eqs (1) and (2) to update the velocity and position of each particle. If Verify the ending condition is reached or not. If the current number of iterations reaches preset maximum times
As the original PSO algorithm was put forward, standard PSO algorithm is based on the original one and coordinates the global and local searching abilities of PSO algorithm through a inertia weight. The Eq. (1) is modified as:
PSO algorithm has many characteristics. For example, it is easy to implement and has rapid convergence speed. But the optimization handling ability for the discrete problems is poor and it is easy to be trapped in the local optimization. The existing improved methods focus on parameter improvement, improvement of topological structure and hybrid algorithm improvement. Through the researches on particle swarm algorithm, this paper aims at the disadvantage that PSO algorithm is easy to be trapped in local optimization. By improving particle swarm parameters, the new improved PSO algorithm is proposed to improve global searching ability of particle.
Parameter improvements
In the PSO algorithm, each particle updates its own position according to individual current optimal value, global optimal value and random velocity value. Inertia weight value reflects the effect of history velocity to the whole process or the dependence between history velocity and current motion of population. While learning factors c1 and c2 influence the motion track of particle. For these parameters, the corresponding parameter improvement methods are put forward in this paper:
Import new distance calculation formula. To improve the global searching ability of particle swarm, the particle is introduced to move toward the global optimal position. Increasing the leading-force of “social knowledge” factor c2 and calculating the distance between each particle and global optimal particle are to modify inertia weight w and learning factor c2. The following is distance calculation formula:
When a particle is close to the current global optimal position, inertia weight value is increased and c2 is reduced. The specific way is as follows [50]:
Where Dynamically modify learning factor c1. This paper allocates the value of c1 for each particle in the light of evolutionary algebra dynamics. The value of c1 depends on “social knowledge” factor c2 and updates its “cognitive knowledge” on the basis of “social knowledge”. When “social knowledge” factor c2 is bigger, the population is significantly influenced by the current “social knowledge”; when “cognitive knowledge” factor c1 is bigger, the individual in the population has a great influence on the whole. The way of mutual restriction and mutual learning can make better adaptability to society for each particle and influence the development of the whole population, which is conducive to modifying the motion trail of population. And the following is specific alter mode:
The flowchart of new improved PSO algorithm is shown in Fig. 1.
Flowchart of improved PSO algorithm.
Experimental environment and test function
This paper uses standard function to test standard particle swarm optimization algorithm (SPSO), reference algorithm [20] and the proposed improved algorithm. And 9 representative functions are selected in the experimental test. All experiments are conducted in the same environment and the experimental parameters are the same.
Experimental environment: the processor is Intel(R) Pentium(R) CPU G850 @ 2.90 GHz. Installing memory is 8.0 GB. Operating system is 64-bit Windows 8 operating system and processor is based on x64. The programming language is C
This paper uses 9 functions from standard Benchmark functions to make experimental verification, and the specific functions are illustrated as follows:
Rastrigrin function:
Rosenbrock function:
Sphere Model function:
Camel function:
Unimodal function:
Shubert function:
Hansen function:
Goldstein-Price’s function:
In this paper, the theoretical optimal values of experimental test functions f1, f2, f3 and f5 are 0.0. In addition, the theoretical optimal values of functions f4, f6, f7, f8 and f9 are
Experimental results and analysis
The experiments of all functions in this paper are conducted in the same environment and the experimental parameters are the same. The population size of particle swarm is
Experimental result comparisons of mean
Experimental result comparisons of mean
Experimental result comparisons of the best results
Experimental result comparisons of the worst results
Function f1 running result contrast curve. Function f2 running result contrast curve.

Function f3 running result contrast curve. Function f4 running result contrast curve.

The black and bold parts in the tables indicate that the improved algorithm in this paper is more optimal than SPSO algorithm and reference [50] algorithm. It can be seen from Tables 1–3 that the improved algorithm in this paper can solve the optimal solution or approximate solution of each test function. For functions f1, f4, f6, f7 and f8, every time the proposed algorithm can search for optimal solution values of these test functions, which illustrates that the proposed algorithm has extremely obvious effect on the problem of solving optimal function and strong stability; For functions f1, f2, f3 and f5, the optimal solutions cannot be solved absolutely, but no matter the optimal result is Mean, Best or Worst, it has already been close to theoretical optimal value. In a certain sense, the actual result can be considered to be equal to theoretical optimal value and is more optimal to the former two algorithms; although Mean and Worst values of function f9 are inferior to those of the reference [50] algorithm, it can be seen form Best value that the proposed algorithm in this paper still can search for the optimal solution and the result is more optimal than standard particle swarm algorithm.
Function f5 running result contrast curve. Function f6 running result contrast curve.

Function f7 running result contrast curve. Function f8 running result contrast curve.

Function f9 running result contrast curve.
From Figs 3–10, it is very stable that the proposed improved PSO algorithm in this paper solves the optimal results of former 8 test functions, which verifies the stability of the algorithm; it can be found through optimal curve that for the former 8 functions, the optimal value optimized by this algorithm can be considered to be equal to theoretical optimal value, which verifies effectiveness of this algorithm; function f9 is one with higher complexity for proving the actual effect of the algorithm. From the graphs, it can be seen that the result of each optimization algorithm fluctuates greatly and is not stable, but the optimization algorithm still can optimize the optimal result. Comparing with the traditional algorithms which are incapable of optimizing the optimal result, PSO algorithm embodies its advantages.
This paper has described the source, theory, implement mechanism and research status of PSO algorithm. Through the researches on various improved items of PSO algorithm, the methods based on parameter improvements are changing inertia weight and learning factor, etc. and importing new parameters into traditional velocity formula. Besides, the improvements based on topological structure include static topology improvement and dynamic topology improvement. The research of hybrid algorithm is mainly blending some heuristic searching algorithms and PSO algorithm to improve the properties of PSO algorithm including the blend of various algorithms such as selection operator, evolutionary strategy, crossover operator, chaotic motion, immunization, difference and ant colony, etc., For the insufficient global searching ability of PSO algorithm, the PSO algorithm based on parameter improvement was proposed. The improved algorithm has been tested by adopting standard test function and the result has been compared with other PSO algorithms. The experimental results indicated that the proposed improved algorithm obtained better result for function problems.
Footnotes
Acknowledgments
This paper is supported by Natural Science Foundation of China. (No. 41404076, 61673354), supported by Open Research Project of The Hubei Key Laboratory of Intelligent Geo-Information Processing (KLIGIP201603, KLIGIP201607, KLIGIP201611) and supported by the Fundamental Research Funds for the Central Universities, China University of Geosciences (Wuhan).
