A comparison between evolutionary algorithm, genetic algorithm and particle swarm algorithm __ algorithm

Source: Internet
Author: User
Tags constant terminates





Genetic Algorithm (GA), as a classical evolutionary algorithm, has formed a more active research field in the world since Holland was put forward. A lot of researches on GA are presented, and various improved algorithms are proposed to improve the convergence speed and accuracy of the algorithm. Genetic algorithm adopts selection, crossover, mutation operation, Search for the optimal solution in the problem space. The classical genetic algorithm first encodes the parameters, generates a certain number of individuals, and forms an initial population where each individual can be a one-dimensional or multidimensional vector, denoted by a binary number string, called a chromosome. Every binary number of chromosomes is called a gene. According to the choice of the natural biological fittest, the design fitness function To judge the performance of each individual, the performance of the individual with a certain probability is selected as a parent to participate in the subsequent genetic operation to generate a new generation of population. The basic genetic operators in the algorithm are chromosome selection, chromosome hybridization and gene mutation. After generating a new generation of population, the algorithm cycle is used to evaluate the fitness, The genetic operation, etc., is optimized on a generational basis until the end condition is met.



The flow of the standard genetic algorithm is as follows:



STEPL: Initializes a group of people.



STEP2: Calculates the fitness value of each individual on a group.



STEP3: The selection of a rule determined by individual fitness values will enter the next generation of individuals.



STEP4: Hybrid operation by the probability CP.



STEP5: Mutation operation by probability MP.



STEP6: If some stop condition is met, execute STEP7, otherwise execute Step2.



STEP7: A satisfactory solution to the problem of chromosome with optimal fitness value in the output population.



In general, the termination conditions of the algorithm include: 1, the completion of the pre-given evolutionary algebra, 2, the population of the optimal individual in successive generations of no improvement or average fitness in successive generations of basic no improvement; 3. The optimal value of the problem is less than the given threshold value.



Particle swarm (PSO) algorithm is the most popular evolutionary algorithm in recent years, which was first proposed by Kenned and Eberhart in 1995. The PSO algorithm is similar to other evolutionary algorithms, and uses the concept of "group" and "evolution" to realize the search of the optimal solution in complex space through collaboration and competition among individuals. Mr PSO is the initial population, that is, random initialization of a group of particles in the feasible solution space, each particle is a feasible solution to the optimization problem, and an adaptive value (fitness value) is determined by the objective function. Instead of using evolutionary operators for individuals, like other evolutionary algorithms, PSO sees each individual as a particle with no volume and weight in the n-dimensional search space, where each particle moves in the solution space, and the direction and distance are determined by a speed. Usually the particles will follow the current optimal particle movement, and finally get the optimal solution by generation-wise search. In each generation, the particles will track two extrema, one of the best solution pbest the particle has found so far, and the best solution gbest the whole population has found so far. In recognition of the broad application prospect of PSO in the field of function optimization, many scholars have carried out this research after kenned and Eberhart. A variety of PSO improved algorithms have been proposed and widely used in many fields.



The first international Evolutionary Optimization Computing Competition (ICEO), held in Japan in 1997, has become an important branch of evolutionary algorithms (EA), and many scholars have begun to study the DE algorithm and have achieved a lot of results. 2006 International Conference as a thematic discussion, this shows that DE algorithm has become a research hotspot of scholars, has a great space for development.



The merits and demerits of each individual are evaluated according to the defined fitness function, which is related to the problem solved. The basic differential evolutionary algorithm implementation process is as follows:



STEP1: To determine the de control parameters and the specific strategy adopted, the de control parameters include: population number, mutation operator, crossover operator, maximum evolutionary algebra, termination conditions, and so on.



STEP2: Random generation of the initial population, evolutionary algebra t = 1.



STEP3: The initial population is evaluated, i.e. the fitness value of each individual in the initial population is calculated.



STEP4: Determines whether the termination condition is reached or the evolutionary algebra is maximized. If so, then evolution terminates, the best individual at this time as the solution output; if not, continue.



STEP5: The mutation and the cross operation, the boundary condition processing, obtains the temporary population.



STEP6: Evaluate the temporary population and calculate the fitness value of each individual in the temporary population.



STEP7: Select operation to obtain a new population. STEP8: Evolutionary Algebra t = t+ 1, go to step 4.



Figure 2.1 shows the specific flow of the algorithm:



The influence of control parameters on a global optimization algorithm is very large, and the control variable selection of de has some empirical rules.



(1) Population number. According to experience, the reasonable selection of the NP of population is between 5 D 10D and must satisfy the np≥4 to ensure that the de has enough different mutation vectors.



(2) Mutation operator. Mutation operator f∈[0,2] is a real constant factor, which determines the magnification of the deviation vector. So far, studies have shown that f values less than 0.4 and greater than 1 are only occasionally valid, and F = 0.5 is usually a good initial choice. If the population converges prematurely, then f or NP should be increased.



(3) crossover operator. The crossover operator CR is a real number in the range [0,1], and it is a parameter that controls the probability of a test vector from a randomly selected mutation vector rather than the original vector. A good choice for CR is 0.1, but the larger CR usually accelerates convergence, in order to see if it is possible to obtain a quick solution, you can first try CR = 0.9 or CR = 1.0.



(4) Maximum evolutionary algebra. It means that the de algorithm runs to the specified evolutionary algebra and stops, and the best individual in the current population is the optimal solution for the problem. The general value range is 100-200, of course, according to the need of the problem, the maximum evolutionary algebra can be increased to improve the accuracy of the algorithm, but this often makes the algorithm run time Too long.



(5) Termination conditions. In addition to the maximum evolutionary algebra can be used as the termination condition of the DE, other criteria are also required. Generally, when the fitness value is less than the threshold value, the program terminates, and the threshold value is often selected as 610.



In the above parameters, F, CR and NP, in the search process is constant, general F and CR affect the convergence speed and robustness of the search process, their optimization values not only depend on the characteristics of the target function, but also related to NP. It is usually possible to find F, CR, and NP by using test and result errors after doing some experiments on different values. Appropriate value.



Genetic algorithm, particle swarm algorithm, differential evolutionary algorithm are the branches of evolutionary algorithms, many scholars have studied these algorithms, through continuous improvement, improve the performance of the algorithm, expand the field of application therefore it is necessary to discuss the characteristics of these algorithms, for different application areas and algorithm adaptability, Recommending different algorithms for use will be a very meaningful task. In the literature, the author has carried on the series experiment analysis to the DE,EA,PSO for the widely used 34 datum function, and has discussed the problem of solving the optimal solution of various algorithms. Through experimental analysis, the DE algorithm obtains the optimal performance, and the algorithm is stable, and the iterative operation can converge to the same solution; PSO The convergence speed of the algorithm is the second, but the algorithm is not stable, the final convergence result is easy to be affected by the parameter size and the initial population; The EA algorithm converges relatively slowly, but in dealing with the noise problem, the EA can solve it very well and the DE algorithm is difficult to deal with the noise problem.



Through the experiment and literature analysis, we analyze some indexes of genetic algorithm, particle swarm algorithm and difference evolutionary algorithm respectively, which are summarized as follows:



(1) Coding standard GA using binary coding, PSO, DE are real-coded, many scholars in recent years through the GA algorithm, PSO algorithm application and solve discrete problem, especially 0-1 nonlinear optimization, integer programming problem, mixed integer programming problem, and the discrete DE algorithm studies the ratio Less, while the DE algorithm with hybrid coding techniques is less studied.



(2) Parameter setting problem the DE algorithm mainly has two parameters to be adjusted, and the parameter setting has less obvious effect on the result, so it is easier to use. Compared with the parameters of GA and PSO algorithm, the influence of different parameter setting on the final result is also relatively large, so in practice, it is necessary to adjust and increase the difficulty of using the algorithm. In the real problem, high dimensional problem, because the vector dimension is very high, it is very important to deal with the high dimension problem. Only good processing of high-dimensional problems, the algorithm can be well applied to practical problems.



(3) High-dimensional problem GA is very slow and difficult to converge on high-dimensional problems, but PSO and de can be solved very well. In particular, the de algorithm converges fast and results very accurately.



(4) Convergence performance for optimization problems, the relative ga,de and PSO algorithm converge faster, but PSO is prone to local optimal solution, and the algorithm is unstable.



(5) Application of universality since the invention of GA is relatively early, so the field of application is relatively extensive, since the invention of PSO algorithm, has become a hot topic of research, this aspect of application is more, and DE algorithm in recent years has attracted people's attention and algorithm performance is good, so the application field will increase.



Original URL: http://hanwangwang1989.blog.163.com/blog/static/168259017201431103649613/


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.