# Improvement Analysis and Application of Real-Coded Genetic Algorithm for Solving Constrained Optimization Problems

Authors: Jiquan Wang; Zhiwen Cheng; Okan K. Ersoy; Panli Zhang; Weiting Dai; Zhigui Dong
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

An improved real-coded genetic algorithm (IRCGA) is proposed to solve constrained optimization problems. First, a sorting grouping selection method is given with the advantage of easy realization and not needing to calculate the fitness value. Secondly, a heuristic normal distribution crossover (HNDX) operator is proposed. It can guarantee the cross-generated offsprings to locate closer to the better one among the two parents and the crossover direction to be very close to the optimal crossover direction or to be consistent with the optimal crossover direction. In this way, HNDX can ensure that there is a great chance of generating better offsprings. Thirdly, since the GA in the existing literature has many iterations, the same individuals are likely to appear in the population, thereby making the diversity of the population worse. In IRCGA, substitution operation is added after the crossover operation so that the population does not have the same individuals, and the diversity of the population is rich, thereby helping avoid premature convergence. Finally, aiming at the shortcoming of a single mutation operator which cannot simultaneously take into account local search and global search, this paper proposes a combinational mutation method, which makes the mutation operation take into account both local search and global search. The computational results with nine examples show that the IRCGA has fast convergence speed. As an example application, the optimization model of the steering mechanism of vehicles is formulated and the IRCGA is used to optimize the parameters of the steering trapezoidal mechanism of three vehicle types, with better results than the other methods used.


---

## Body

## 1. Introduction

The genetic algorithm (abbreviated as GA or GAs) was proposed by Professor John H. Holland and his students at University of Michigan at the end of the 1960s and in the early 1970s [1–4]. In 1975, Professor Holland published the first monograph devoted to the elaboration of the basic theories and methods of genetic algorithms [1] and put forward the most important schema theorem of the genetic algorithm theory research and development. In the same year, De Hong KA proposed the evolutionary strategy of elitism preservation in his doctoral thesis. Several evolutionary strategies by elitism preservation and selective substitution and duplication were subsequently proposed [5–8]. At present, the GA is basically computed mostly by these evolutionary strategies. In 1989, Goldberg [9] made a comprehensive and systematic summary and discussion of the genetic algorithm and laid the foundation of the modern genetic algorithm.The encoding schemes in GA are either binary coding or real coding. The shortcomings of binary coding of GA are [10] as follows: (1) for some high dimensional and high precision continuous function optimization problems, the randomness of the binary genetic algorithm makes the local search ability poor, and the binary coding of adjacent integers may have a large Hamming distance, thus reducing search efficiency and influencing the computational accuracy of the genetic operator; (2) binary coding needs to be encoded and decoded frequently, thus increasing the calculation time, with potential conversion errors; (3) with a finite discrete lattice, an individual approaching the extreme value may be omitted, causing the algorithm to reach premature convergence or optimization speed to be very slow; (4) algorithm efficiency decreases sharply with the increase of variables and the improvement of computational accuracy; (5) as the accuracy of the solution is controlled by the encoding length, binary coding may need too long codes, resulting in excessive computing and memory space as well as reduced computational speed. In 1992, Michalewicz proposed a real-coded genetic algorithm (RCGA) which is more efficient in these regards [11]. RCGA has many attractive properties such as high precision, no coding and decoding required, effective large space search, simple computing, fast convergence, and resistance against falling into a local extreme value [6, 7]. It has been widely applied in areas such as automatic control, combinatorial optimization, machine learning, image processing, self-adaptation control, planning and design, industrial engineering, intelligent manufacturing systems, bioengineering, system engineering, artificial intelligence, intelligent machine system, and artificial life [6–8, 12–16]. It is especially suitable to deal with complex and nonlinear problems that cannot be solved by traditional search methods [6]. Thus, it is one of the key technologies of intelligent computing in the 21st century.Research on RCGA algorithms can be grouped into the following categories:(1) the determination of an optimal population size [17–20]; (2) generation of the initial population [21–23]; (3) improvement of the existing crossover operator [24–27]; (4) improvement of the existing mutation operator [28–30]; (5) improvement of the evolutionary strategy [31–33]; (6) automatic adjustment of the operator parameters [34–37]. The progress with these algorithms has improved the computational speed and promoted the development of GA theory with new applications.Crossover operators play a crucial role in expanding the solution space and obtaining the globally optimal solution. Mutations are also important to increase the population diversity, helping GA to expand the search scope and to avoid falling into local optima. As a result, many scholars have focused their attention on the improvement of crossover and mutation operators. In 2016, Chuang et al. [24] proposed a direction-based crossover operator (DBX), but the possible crossover directions of DBX are limited. Although it may generate a crossover direction capable of guiding the chromosomes to move towards the optimal solution, this is not highly probable. Meanwhile, when the dimensionalities of the population are few, the null vector solution is likely to be generated, resulting in no crossover direction. In addition, as some better chromosomes in the population are used to replace the worse chromosomes in the course of ranking selection, the population diversity may become worse after multiple iterations, eventually leading to lost diversity, and thus cannot converge to the global optimal solution. In 1996, D.W. Wang et al. proposed a mutation operator which mutated towards the gradient direction of the objective function [38]. When the objective function is not differentiable, mutation operation cannot be performed. In 2008, Peltokangas et al. summarized the uniform mutation operator, the nonuniform mutation operator, the power mutation operator, and the boundary mutation operator [39–44]. The computation times of the nonuniform mutation operator and the power mutation operator are larger. The boundary mutation is only suitable for the optimization problem when the optimal solution is on the boundary of the feasible region and the offsprings of uniform mutation operator have no connection with the individuals of other mutations. In 2016, Chuang et al. proposed a mutation operator for dynamic random mutation [24], whose step size computational formula had some conflicts with the interpretation of the formula. In addition, the mutation operator needs to give the maximum number of iterations in advance, which is difficult to estimate in advance.In summary, a good crossover operator and mutation operator should fulfill four conditions:(1) the crossover generated offspring individuals should be in the vicinity of the better individual among the two-parent individuals of participation crossover, thus generating better offsprings; (2) the calculations should be as few as possible; (3) the mutation operator should take into account global as well as local search so that the algorithm can quickly converge to the global optimal solution rather than falling into local optima; (4) the loop statement should be avoided in programming to increase speed of computation. Aiming at these four conditions, this paper proposes a new IRCGA to solve constrained optimization problems. The results with nine test functions show that the IRCGA is effective and feasible in solving constrained optimization problems. As an example application, the optimization model of the steering mechanism of vehicles is formulated, and the IRCGA is used to optimize the parameters of the steering trapezoidal mechanism of three vehicle types, and the better results are obtained as compared to other methods used.


## 2. Penalty Function Method for Constrained Optimization Problems

The mathematic model of a constrained optimization problem can be generally expressed as follows:(1)minfX,X=X1,X2,⋯,Xk,⋯,Xn∈Rs.t.hiX=0,i=1,2,⋯,pgjX≥0,j=1,2,⋯,qwheren is the population size, hi(X)=0 is theith equation constraint,p is the number of equation constraints, gj(X)≥0 is thejth inequality constraint,q is the number of inequality constraints, and Xk is am-dimensional vector Xk=(xk1,xk2,…,xkm).Equation (1) can also be expressed as(2)minfX,X=X1,X2,⋯,Xk,⋯Xn∈RR=X∣hiX=0,i=1,2,⋯,p;gjX≥0,j=1,2,⋯,qLettingX∗ be the optimal solution to the constrained optimization problem means that  ∀X∈R: f(X∗)≤f(X). In addition, if gj(X∗)=0, the constraint is referred to as active constraint. Under this concept, all the equation constraints hi(X)=0 (i=1,2,…p) are active at X∗.The penalty function method can be converted to an unconstrained optimization problem by constructing two constrained functions; meanwhile, the penalty factors are introduced and added to the objective function, thus constructing the penalty function given by [45](3)PX,M=fX+M1∑i=1phiX2+M2∑j=1qmin⁡0,gjX2whereM1 andM2 are the penalty factors, generally chosen as large enough positive constants; the second and third terms on the right are the penalty terms, and P(X,M) is the penalty function.In (3), when X∈R,there should be no penalty to the feasible points, thusP(X,M)=f(X); when X∉R, for the nonfeasible points,M1 andM2 should be very big; therefore, the values of the second and third terms in (3) are large, which is equivalent to the ‘penalty’ for the infeasible point. Moreover, whenX gets farther away from the feasible region, the penalty should be larger. It is conceivable that whenM1 andM2 become sufficiently large, the minimal pointX(M) of the unconstrained optimization problem of (3) is close enough to the minimum point of the original constrained optimization problem. And when X(M)∈R, it becomes the minimal point of the original constraint problem.The minimum value of (3) is(4)min⁡PX,Mwhich is equivalent to the minimum value of (1).


## 3. New Real-Coded Genetic Algorithm

### 3.1. Sorting Grouping Selection (SGS)

We assume the following:(1) the maximum of the objective function is sought, (2) the population sizenis an even number, and (3) the individuals in the population are sorted with respect to their objective function valueP(X,M) in descending order. If the minimum of the objective function is sought, the objective functionP(X,M) is negated so that we still seek the maximum. The population before sorting is X=(X1,X2,⋯,Xn), and, after sorting, it becomes X′=(X1′,X2′,⋯,Xn′) and satisfies P(X1′,M)≥P(X2′,M)≥⋯≥P(Xn′,M).First, the chromosomes in the population are arranged into two groups. Group 1 includes the firstn/2 chromosomes and Group 2 includes the secondn/2 chromosomes. The 1st individual in Group 1 is matched with the 1st individual in Group 2, the 2nd individual in Group 1 is matched with the 2nd individual in Group 2, and so on. In this way, we can obtainn/2 pairs of individuals. See Table 1 for the specific operation of the sorting grouping selection.Table 1
Sorting grouping selection.
Before Sorting After Sorting Grouping pairing The first group Pairing The second group X P(Xi,M) X ′ P ( X i ′ , M ) P ( X i ′ , M ) X A ↔ X B P ( X i ′ , M ) X 1 P(X1,M) X 1 ′ P ( X 1 ′ , M ) P ( X 1 ′ , M ) X 1 ′ ↔ X 6 ′ P ( X 6 ′ , M ) X 2 P(X2,M) X 2 ′ P ( X 2 ′ , M ) P ( X 2 ′ , M ) X 2 ′ ↔ X 7 ′ P ( X 7 ′ , M ) X 3 P(X3,M) X 3 ′ P ( X 3 ′ , M ) P ( X 3 ′ , M ) X 3 ′ ↔ X 8 ′ P ( X 8 ′ , M ) X 4 P(X4,M) X 4 ′ P ( X 4 ′ , M ) P ( X 4 ′ , M ) X 4 ′ ↔ X 9 ′ P ( X 9 ′ , M ) X 5 P(X5,M) X 5 ′ P ( X 5 ′ , M ) P ( X 5 ′ , M ) X 5 ′ ↔ X 10 ′ P ( X 10 ′ , M ) X 6 f(X6,M) X 6 ′ P ( X 6 ′ , M ) X 7 P(X7,M) X 7 ′ P ( X 7 ′ , M ) X 8 P(X8,M) X 8 ′ P ( X 8 ′ , M ) X 9 P(X9,M) X 9 ′ P ( X 9 ′ , M ) X 10 P(X10,M) X 10 ′ P ( X 10 ′ , M )In Table1, we carry out crossover of X1′ in Group 1 with X6′ in Group 2, X2′ in Group 1 with X7′ in Group 2, and so on.As compared with the roulette wheel selection and the tournament selection, the SGS method can enlarge the distance in every pair of the parent individuals and magnify the difference between the parent individuals under matching; in addition, the SGS is a direct operation based on the ranking of objective function values without computing the individual fitness values. The computation is simple and rapid in selecting the chromosomes for crossover.


### 3.2. Heuristic Normal Distribution Crossover (HNDX)

If the objective function is to solve the optimization problem of maximum value, as the individual of bigger objective function value has higher probability of approaching the optimal solution, it is believed that the optimal solution is likely to be near the individual with a bigger objective function value [46]. Inspired by this, this paper proposes a heuristic normal distribution crossover (HNDX) operator which emphasizes the parent which has a bigger objective function value. With the resulting better crossover direction, two potential offsprings are generated, thus improving the convergence speed of IRCGA.The key to HNDX is how to make the crossover generated offsprings in the vicinity of the superior parent or in the superior crossover direction. We note that a generated random number according to the normal distribution has a large probability near its meanμ. In the process of crossover, if the better one among the two parents is served as the mean μ of the normal distribution, then it is guaranteed that the generating offspring according to normal distribution is in the vicinity of the better parent. Therefore, an offspring is generated by normal distribution and the normal distribution is denoted asN(μ,σ2). The density function of the normal distribution is shown in Figure 1.Figure 1
Density function of normal distribution.It can be seen from Figure1 that the probability of the random numberX generated byN(μ,σ2) in the interval (μ-σ,μ+σ) is 68.26%, the probability ofX in the interval (μ-2σ,μ+2σ) is 95.44%, and the probability of X in the interval (μ-3σ,μ+3σ) is 99.74%. It can be seen that the probability thatX falls outside (μ-3σ,μ+3σ) is less than 0.3%, and it is often considered that the corresponding event does not occur in practice. Thus, the interval (μ-3σ,μ+3σ) can be regarded as the actual possible interval of the random variableX, which is called the 6σ principle of the normal distribution. Based on the above analysis, as long as we control the size ofσ value, we can basically guarantee that the random number X generated byN(μ,σ2) is near the meanμ.Let the two parents of participation crossover beXi′ (i=1,2,⋯,n/2) and Xj′ (j=n/2+1,n/2+2,⋯,n). Assuming that Xi′ is superior to Xj′, the two offspringsYi (i=1,2,⋯,n/2) andYj(j=n/2+1,n/2+2,⋯,n) are generated by(5)Yi=NXi′,ε+Xi′-Xj′6•2∧i=1,2,⋯,n2;j=n2+1,n2+2,⋯,nYj=λD→j=n2+1,n2+2,⋯,nD→=Yi-Xj′i=1,2,⋯,n2;j=n2+1,n2+2,⋯,nwhere Xi′ is the mean of the normal distribution, Xi′-Xj′/6•2∧ is the variance of the normal distribution, .2∧ is the square of each element in vector Xi′-Xj′/6,ε is a small positive number to avoid that the variance of the normal distribution is 0, D→ is the crossover direction, andλis a uniformly distributed random number in [0.5,1.5].Let the two-parent individuals of participation crossover beX1′ and X2′ and X1′ be superior to X2′. To illustrate the principle of HNDX, letting the variable dimensionm be 2, the principle of HNDX is shown in Figure 2.Figure 2
Schematic diagram of HNDX.In Figure1,DY1=Y1C, AE=EB.Equation (5) shows that Y1 is an offspring randomly generated according toN(X1′,ε+((X1′-X2′)/6).2∧), with its mean equal to the mean of X1′ and its variance equal to ε+((X1′ - X2′)/6).2∧. In addition, it can be seen from Figure 1 that the random number generated according to N(X1′,ε+((X1′-X2′)/6).2∧) has high probability of being in the vicinity of the mean X1′ of the normal distribution. According to the above analysis, an offspringY1 is generated by the crossover of the two parents X1′ and X2′ andY1 has a high probability of being within the shadow region of Figure 2; that is to say,Y1 is within a circle whose center is X1′, which can basically guarantee thatY1 is in the vicinity of the better parent X1′.The second offspringY2 is generated by the crossover of the two parents X1′ and X2′ as Y2=λD→, where the crossover direction is given by D→=Y1-X1′. Therefore,Y2 might be at any point on the line CD. In addition, sinceY1 is likely to be at any point within the circle that takes the line segment X1′Y1 as radius and X1′ as center of the circle, there are numerous possible cross directions D→. Let X∗ be the optimal solution of the problem to be solved. For the parent X1′ of participation crossover, the optimal crossover direction is Z→=X∗-X1′; and for X2′, the optimal crossover direction is Y→=X∗-X2′. The crossover direction D→ generated by HNDX is likely to be completely consistent with the optimal crossover direction, even if it is not completely consistent with the optimal crossover direction Y→ and Z→. Hence, it has high probability of generating a direction that is very close to the optimal crossover direction Y→ and Z→. In summary, HNDX has high probability of generating better offsprings, thereby significantly improving the convergence speed of the algorithm.Compared with the DBX in [24], HNDX can generate numerous crossover directions while DBX can only generate 2m-1 crossover directions; moreover, the probability that the offsprings generated by HNDX are close to the optimal solution is much higher than that of DBX. In addition, HNDX can avoid use of loop statements in programming, and the program is relatively simple.Lety be the individuals in the population after sorting according to the objective function values andx be the cross-generated offsprings. We adopt the evolutionary strategy of Section 3.5 and choose the crossover probability equal to 1. The corresponding Matlab program code of HNDX can be as follows:x(1:n/2,:)=normrnd(y(1:n/2,:),0.001+((y(1:n/2,:)-y(n/2+1:n,:))/6).2∧);x(n/2+1:n,:)=unifrnd(0.5,1.5)∗(x(1:n/2,:)-y(n/2+1:n,:));It is observed that HNDX Matlab program has neither loop statement nor conditional statement, while DBX has both. As a result, HNDX program is simpler and takes less time to accomplish the corresponding statements.As an example, in terms of 2D search space, for the spatial positions of two parentsX1′ and X2′ participating in crossover, there are three possible cases: (a) both parents are in the infeasible region; (b) one parent is in the feasible region while the other is not; (c) both parent are in the feasible region. Of these three cases, the HNDX operation in a two-dimensional space is shown in Figure 3.Figure 3
Schematic diagrams of HNDX operation in three cases in a two-dimensional space.
(a)
Both parents are in the infeasible region (b)
One parent is in the feasible region and the other one is in the infeasible region (c)
Both parents are in the feasible region.In Figure3, the schematic of case (a) shows that the HNDX operator can effectively guide the movement of two parents from an infeasible region to a feasible region. In the case of (b), HNDX crossover enables the individuals in the infeasible region to move into the feasible region. When the individuals are already in the feasible region as in the case of (c), HNDX searches in the neighborhood of the two parents and generates a direction to guide them to move towards the optimal solution.


### 3.3. Substitution Operation

In the global optimization problem with many local optima, when the algorithm finds a region with an extreme value (whether it is a local extremum or a global extremum), individuals in the population constantly move closer to the region and there may be the same or similar individuals in the population. With the increase of the number of iterations, the same individuals in the population will gradually increase and may even make all the individuals in the population be the same, which will make the diversity of the population worse; thus the convergence speed of GA and the ability of exploring other extreme value regions are affected. In the case of the IRCGA proposed in the literature for the optimization problem with many local optima [24], it is possible that the vast majority of individuals in the population become the same or all individuals become the same such that the algorithm cannot converge to the global optimal solution. In order to avoid the occurrence of the above phenomena and to maintain the diversity of the population during the iteration process, substitution operation is added to the IRCGA proposed herein. Substitution operation is as follows.If there are the same two or more individuals in a population after crossover, only one of them shall be reserved while eliminating the others. If the current population size isn1,n-n1 individuals are generated at random to maintain the population size unchanged asn. Since the n-n1 individuals in the substitution operation are randomly generated, the substitution operation has the function of jumping out of the local optimum.


### 3.4. Combinational Mutation

In the cases of the mutation operator given in the existing literature, some local search abilities are strong [47, 48] and some global search abilities are strong [48]. For the optimization problems with less extreme points, a mutation operator with stronger local search ability should be adopted. For the optimization problems with more extreme points, if a mutation operator with stronger local search ability is adopted, it is easy to converge to a local optimum; if a mutation operator with stronger global search ability is adopted and the accuracy requirement of the optimal solution for the problem to be optimized is higher, the convergence speed of the algorithm slows down. With some of the mutation operators given in the literature, there is strong global search capability at the beginning of the iterations, and with the increase of the number of iterations, local search capabilities are enhanced. However, this requires the maximum number of iterations to be given, which is difficult to do in advance. Although this method is theoretically feasible, it is usually worse in practice [24]. In summary, a single mutation operator is difficult to take into account both global and local search capabilities. For this reason, this paper proposes a method of combinatorial mutation which uses three-mutation operators. The first mutation operator enhances the local search ability with the increase of the number of iterations; the second mutation operator has strong global search capability; the third mutation operator has strong local search capability. The specific approach of combinational mutation is as follows.We divide the number of iterations by 3. When the remainder is 1, the second mutation operator is used; when the remainder is 2, the first mutation operator is used; when the remainder is 0, the third mutation operator is used.The advantage of combinatorial mutation is that the local search ability of mutation operator is taken into account in the iterative process and the global searching ability of mutation operator is also taken into account. The three-mutation operators are as follows:(6)X-i′=X-i+λ1∗bT-aTgenwheregen is the number of iteration, X-i is the offspring from crossover, X-i′ is the offspring from mutation, vectorsa andb are the lower and upper limits of variables, andλ1∗(bT-aT) is the product by multiplyingλ1with the corresponding element ofbT-aT at the same position, λ1=(λ11,λ12,…,λ1m), in whichλ11,λ12,⋯,λ1m are uniformly distributed random numbers in [-1,1].(7)X-i′=X-i+X-i∗Cauchy0,1where Cauchy (0,1) is standard Cauchy distribution, X-i is an individual to mutate, and X-i′ is an individual after mutation.(8)X-i′=NX-i,δ2where X-i is the mean of the normal distribution andδ2 is the variance of the normal distribution.δ 2 of (8) is given by(9)δ2=Xbest-X-i6whereXbest is the optimal individual in population.The global search ability of the first mutation operator at the beginning of the iterations is strong, but when the number of iterations increases above a certain value, the first mutation operator almost loses mutation ability. The second mutation operator is Cauchy mutation, which can generate a larger mutation step compared to the normal mutation operator, giving the algorithm better global search ability. The third mutation operator is normal mutation, which focuses on searching for a local region near the mean with better local search ability, but the ability to guide the individual to jump out of the local optimal solution is weak, which is not conducive to global convergence. Therefore, the combination mutation operator takes into account both global exploration and local search, which makes GA converge quickly to the global optimal solution.


### 3.5. Evolutionary Strategy (ES)

The evolutionary strategy of the IRCGA proposed in this paper is as follows:(1)
The initial population is randomly generated as parents, the population size isn, and the mutation probability ispm.(2)
Sorting operation is performed; that is to say, all individuals in the population are sorted in descending order according to their objective function values ands elitist individuals are selected with best ranking amongn parents.(3)
Selection and crossover operations are carried out according to the sorting results with crossover probability equal to 1.(4)
Substitution operation is performed with cross-generatedn offsprings ands elitist individuals.(5)
All individuals in the population are sorted in descending order according to their objective function values after substitution operation.(6)
If the population size isn1less than n+s now, randomly generate n+s-n1 individuals.(7)
Repeat the above sorting operation, get new population, and selects elitist individuals andn individuals with best ranking in the new population.(8)
Using the mutation operator, modify then individuals.(9)
Regenerate the new population consisting of thenpm mutated individuals, n(1-pm) unmutated individuals ands elitist individuals chosen in Step (7).(10)
Sort the individuals of the regenerated new population in descending order according to their objective function values.(11)
If the stop condition is met, output the optimal solution and optimal value;(12)
Otherwise select s elitist individuals and n individuals with best ranking within the last population. Go to Step(3) to start the next loop.The evolutionary strategy flow diagram for IRCGA is shown in Figure4.Figure 4
The evolutionary strategy flow diagram of IRCGA.


## 3.1. Sorting Grouping Selection (SGS)

We assume the following:(1) the maximum of the objective function is sought, (2) the population sizenis an even number, and (3) the individuals in the population are sorted with respect to their objective function valueP(X,M) in descending order. If the minimum of the objective function is sought, the objective functionP(X,M) is negated so that we still seek the maximum. The population before sorting is X=(X1,X2,⋯,Xn), and, after sorting, it becomes X′=(X1′,X2′,⋯,Xn′) and satisfies P(X1′,M)≥P(X2′,M)≥⋯≥P(Xn′,M).First, the chromosomes in the population are arranged into two groups. Group 1 includes the firstn/2 chromosomes and Group 2 includes the secondn/2 chromosomes. The 1st individual in Group 1 is matched with the 1st individual in Group 2, the 2nd individual in Group 1 is matched with the 2nd individual in Group 2, and so on. In this way, we can obtainn/2 pairs of individuals. See Table 1 for the specific operation of the sorting grouping selection.Table 1
Sorting grouping selection.
Before Sorting After Sorting Grouping pairing The first group Pairing The second group X P(Xi,M) X ′ P ( X i ′ , M ) P ( X i ′ , M ) X A ↔ X B P ( X i ′ , M ) X 1 P(X1,M) X 1 ′ P ( X 1 ′ , M ) P ( X 1 ′ , M ) X 1 ′ ↔ X 6 ′ P ( X 6 ′ , M ) X 2 P(X2,M) X 2 ′ P ( X 2 ′ , M ) P ( X 2 ′ , M ) X 2 ′ ↔ X 7 ′ P ( X 7 ′ , M ) X 3 P(X3,M) X 3 ′ P ( X 3 ′ , M ) P ( X 3 ′ , M ) X 3 ′ ↔ X 8 ′ P ( X 8 ′ , M ) X 4 P(X4,M) X 4 ′ P ( X 4 ′ , M ) P ( X 4 ′ , M ) X 4 ′ ↔ X 9 ′ P ( X 9 ′ , M ) X 5 P(X5,M) X 5 ′ P ( X 5 ′ , M ) P ( X 5 ′ , M ) X 5 ′ ↔ X 10 ′ P ( X 10 ′ , M ) X 6 f(X6,M) X 6 ′ P ( X 6 ′ , M ) X 7 P(X7,M) X 7 ′ P ( X 7 ′ , M ) X 8 P(X8,M) X 8 ′ P ( X 8 ′ , M ) X 9 P(X9,M) X 9 ′ P ( X 9 ′ , M ) X 10 P(X10,M) X 10 ′ P ( X 10 ′ , M )In Table1, we carry out crossover of X1′ in Group 1 with X6′ in Group 2, X2′ in Group 1 with X7′ in Group 2, and so on.As compared with the roulette wheel selection and the tournament selection, the SGS method can enlarge the distance in every pair of the parent individuals and magnify the difference between the parent individuals under matching; in addition, the SGS is a direct operation based on the ranking of objective function values without computing the individual fitness values. The computation is simple and rapid in selecting the chromosomes for crossover.


## 3.2. Heuristic Normal Distribution Crossover (HNDX)

If the objective function is to solve the optimization problem of maximum value, as the individual of bigger objective function value has higher probability of approaching the optimal solution, it is believed that the optimal solution is likely to be near the individual with a bigger objective function value [46]. Inspired by this, this paper proposes a heuristic normal distribution crossover (HNDX) operator which emphasizes the parent which has a bigger objective function value. With the resulting better crossover direction, two potential offsprings are generated, thus improving the convergence speed of IRCGA.The key to HNDX is how to make the crossover generated offsprings in the vicinity of the superior parent or in the superior crossover direction. We note that a generated random number according to the normal distribution has a large probability near its meanμ. In the process of crossover, if the better one among the two parents is served as the mean μ of the normal distribution, then it is guaranteed that the generating offspring according to normal distribution is in the vicinity of the better parent. Therefore, an offspring is generated by normal distribution and the normal distribution is denoted asN(μ,σ2). The density function of the normal distribution is shown in Figure 1.Figure 1
Density function of normal distribution.It can be seen from Figure1 that the probability of the random numberX generated byN(μ,σ2) in the interval (μ-σ,μ+σ) is 68.26%, the probability ofX in the interval (μ-2σ,μ+2σ) is 95.44%, and the probability of X in the interval (μ-3σ,μ+3σ) is 99.74%. It can be seen that the probability thatX falls outside (μ-3σ,μ+3σ) is less than 0.3%, and it is often considered that the corresponding event does not occur in practice. Thus, the interval (μ-3σ,μ+3σ) can be regarded as the actual possible interval of the random variableX, which is called the 6σ principle of the normal distribution. Based on the above analysis, as long as we control the size ofσ value, we can basically guarantee that the random number X generated byN(μ,σ2) is near the meanμ.Let the two parents of participation crossover beXi′ (i=1,2,⋯,n/2) and Xj′ (j=n/2+1,n/2+2,⋯,n). Assuming that Xi′ is superior to Xj′, the two offspringsYi (i=1,2,⋯,n/2) andYj(j=n/2+1,n/2+2,⋯,n) are generated by(5)Yi=NXi′,ε+Xi′-Xj′6•2∧i=1,2,⋯,n2;j=n2+1,n2+2,⋯,nYj=λD→j=n2+1,n2+2,⋯,nD→=Yi-Xj′i=1,2,⋯,n2;j=n2+1,n2+2,⋯,nwhere Xi′ is the mean of the normal distribution, Xi′-Xj′/6•2∧ is the variance of the normal distribution, .2∧ is the square of each element in vector Xi′-Xj′/6,ε is a small positive number to avoid that the variance of the normal distribution is 0, D→ is the crossover direction, andλis a uniformly distributed random number in [0.5,1.5].Let the two-parent individuals of participation crossover beX1′ and X2′ and X1′ be superior to X2′. To illustrate the principle of HNDX, letting the variable dimensionm be 2, the principle of HNDX is shown in Figure 2.Figure 2
Schematic diagram of HNDX.In Figure1,DY1=Y1C, AE=EB.Equation (5) shows that Y1 is an offspring randomly generated according toN(X1′,ε+((X1′-X2′)/6).2∧), with its mean equal to the mean of X1′ and its variance equal to ε+((X1′ - X2′)/6).2∧. In addition, it can be seen from Figure 1 that the random number generated according to N(X1′,ε+((X1′-X2′)/6).2∧) has high probability of being in the vicinity of the mean X1′ of the normal distribution. According to the above analysis, an offspringY1 is generated by the crossover of the two parents X1′ and X2′ andY1 has a high probability of being within the shadow region of Figure 2; that is to say,Y1 is within a circle whose center is X1′, which can basically guarantee thatY1 is in the vicinity of the better parent X1′.The second offspringY2 is generated by the crossover of the two parents X1′ and X2′ as Y2=λD→, where the crossover direction is given by D→=Y1-X1′. Therefore,Y2 might be at any point on the line CD. In addition, sinceY1 is likely to be at any point within the circle that takes the line segment X1′Y1 as radius and X1′ as center of the circle, there are numerous possible cross directions D→. Let X∗ be the optimal solution of the problem to be solved. For the parent X1′ of participation crossover, the optimal crossover direction is Z→=X∗-X1′; and for X2′, the optimal crossover direction is Y→=X∗-X2′. The crossover direction D→ generated by HNDX is likely to be completely consistent with the optimal crossover direction, even if it is not completely consistent with the optimal crossover direction Y→ and Z→. Hence, it has high probability of generating a direction that is very close to the optimal crossover direction Y→ and Z→. In summary, HNDX has high probability of generating better offsprings, thereby significantly improving the convergence speed of the algorithm.Compared with the DBX in [24], HNDX can generate numerous crossover directions while DBX can only generate 2m-1 crossover directions; moreover, the probability that the offsprings generated by HNDX are close to the optimal solution is much higher than that of DBX. In addition, HNDX can avoid use of loop statements in programming, and the program is relatively simple.Lety be the individuals in the population after sorting according to the objective function values andx be the cross-generated offsprings. We adopt the evolutionary strategy of Section 3.5 and choose the crossover probability equal to 1. The corresponding Matlab program code of HNDX can be as follows:x(1:n/2,:)=normrnd(y(1:n/2,:),0.001+((y(1:n/2,:)-y(n/2+1:n,:))/6).2∧);x(n/2+1:n,:)=unifrnd(0.5,1.5)∗(x(1:n/2,:)-y(n/2+1:n,:));It is observed that HNDX Matlab program has neither loop statement nor conditional statement, while DBX has both. As a result, HNDX program is simpler and takes less time to accomplish the corresponding statements.As an example, in terms of 2D search space, for the spatial positions of two parentsX1′ and X2′ participating in crossover, there are three possible cases: (a) both parents are in the infeasible region; (b) one parent is in the feasible region while the other is not; (c) both parent are in the feasible region. Of these three cases, the HNDX operation in a two-dimensional space is shown in Figure 3.Figure 3
Schematic diagrams of HNDX operation in three cases in a two-dimensional space.
(a)
Both parents are in the infeasible region (b)
One parent is in the feasible region and the other one is in the infeasible region (c)
Both parents are in the feasible region.In Figure3, the schematic of case (a) shows that the HNDX operator can effectively guide the movement of two parents from an infeasible region to a feasible region. In the case of (b), HNDX crossover enables the individuals in the infeasible region to move into the feasible region. When the individuals are already in the feasible region as in the case of (c), HNDX searches in the neighborhood of the two parents and generates a direction to guide them to move towards the optimal solution.


## 3.3. Substitution Operation

In the global optimization problem with many local optima, when the algorithm finds a region with an extreme value (whether it is a local extremum or a global extremum), individuals in the population constantly move closer to the region and there may be the same or similar individuals in the population. With the increase of the number of iterations, the same individuals in the population will gradually increase and may even make all the individuals in the population be the same, which will make the diversity of the population worse; thus the convergence speed of GA and the ability of exploring other extreme value regions are affected. In the case of the IRCGA proposed in the literature for the optimization problem with many local optima [24], it is possible that the vast majority of individuals in the population become the same or all individuals become the same such that the algorithm cannot converge to the global optimal solution. In order to avoid the occurrence of the above phenomena and to maintain the diversity of the population during the iteration process, substitution operation is added to the IRCGA proposed herein. Substitution operation is as follows.If there are the same two or more individuals in a population after crossover, only one of them shall be reserved while eliminating the others. If the current population size isn1,n-n1 individuals are generated at random to maintain the population size unchanged asn. Since the n-n1 individuals in the substitution operation are randomly generated, the substitution operation has the function of jumping out of the local optimum.


## 3.4. Combinational Mutation

In the cases of the mutation operator given in the existing literature, some local search abilities are strong [47, 48] and some global search abilities are strong [48]. For the optimization problems with less extreme points, a mutation operator with stronger local search ability should be adopted. For the optimization problems with more extreme points, if a mutation operator with stronger local search ability is adopted, it is easy to converge to a local optimum; if a mutation operator with stronger global search ability is adopted and the accuracy requirement of the optimal solution for the problem to be optimized is higher, the convergence speed of the algorithm slows down. With some of the mutation operators given in the literature, there is strong global search capability at the beginning of the iterations, and with the increase of the number of iterations, local search capabilities are enhanced. However, this requires the maximum number of iterations to be given, which is difficult to do in advance. Although this method is theoretically feasible, it is usually worse in practice [24]. In summary, a single mutation operator is difficult to take into account both global and local search capabilities. For this reason, this paper proposes a method of combinatorial mutation which uses three-mutation operators. The first mutation operator enhances the local search ability with the increase of the number of iterations; the second mutation operator has strong global search capability; the third mutation operator has strong local search capability. The specific approach of combinational mutation is as follows.We divide the number of iterations by 3. When the remainder is 1, the second mutation operator is used; when the remainder is 2, the first mutation operator is used; when the remainder is 0, the third mutation operator is used.The advantage of combinatorial mutation is that the local search ability of mutation operator is taken into account in the iterative process and the global searching ability of mutation operator is also taken into account. The three-mutation operators are as follows:(6)X-i′=X-i+λ1∗bT-aTgenwheregen is the number of iteration, X-i is the offspring from crossover, X-i′ is the offspring from mutation, vectorsa andb are the lower and upper limits of variables, andλ1∗(bT-aT) is the product by multiplyingλ1with the corresponding element ofbT-aT at the same position, λ1=(λ11,λ12,…,λ1m), in whichλ11,λ12,⋯,λ1m are uniformly distributed random numbers in [-1,1].(7)X-i′=X-i+X-i∗Cauchy0,1where Cauchy (0,1) is standard Cauchy distribution, X-i is an individual to mutate, and X-i′ is an individual after mutation.(8)X-i′=NX-i,δ2where X-i is the mean of the normal distribution andδ2 is the variance of the normal distribution.δ 2 of (8) is given by(9)δ2=Xbest-X-i6whereXbest is the optimal individual in population.The global search ability of the first mutation operator at the beginning of the iterations is strong, but when the number of iterations increases above a certain value, the first mutation operator almost loses mutation ability. The second mutation operator is Cauchy mutation, which can generate a larger mutation step compared to the normal mutation operator, giving the algorithm better global search ability. The third mutation operator is normal mutation, which focuses on searching for a local region near the mean with better local search ability, but the ability to guide the individual to jump out of the local optimal solution is weak, which is not conducive to global convergence. Therefore, the combination mutation operator takes into account both global exploration and local search, which makes GA converge quickly to the global optimal solution.


## 3.5. Evolutionary Strategy (ES)

The evolutionary strategy of the IRCGA proposed in this paper is as follows:(1)
The initial population is randomly generated as parents, the population size isn, and the mutation probability ispm.(2)
Sorting operation is performed; that is to say, all individuals in the population are sorted in descending order according to their objective function values ands elitist individuals are selected with best ranking amongn parents.(3)
Selection and crossover operations are carried out according to the sorting results with crossover probability equal to 1.(4)
Substitution operation is performed with cross-generatedn offsprings ands elitist individuals.(5)
All individuals in the population are sorted in descending order according to their objective function values after substitution operation.(6)
If the population size isn1less than n+s now, randomly generate n+s-n1 individuals.(7)
Repeat the above sorting operation, get new population, and selects elitist individuals andn individuals with best ranking in the new population.(8)
Using the mutation operator, modify then individuals.(9)
Regenerate the new population consisting of thenpm mutated individuals, n(1-pm) unmutated individuals ands elitist individuals chosen in Step (7).(10)
Sort the individuals of the regenerated new population in descending order according to their objective function values.(11)
If the stop condition is met, output the optimal solution and optimal value;(12)
Otherwise select s elitist individuals and n individuals with best ranking within the last population. Go to Step(3) to start the next loop.The evolutionary strategy flow diagram for IRCGA is shown in Figure4.Figure 4
The evolutionary strategy flow diagram of IRCGA.


## 4. Algorithmic Testing and Analysis

Below RCGA proposed in [24] is abbreviated as IRCGA-1, and IRCGA proposed in this paper is abbreviated as IRCGA-2; IRCGA-2 that removes the substitution operation is abbreviated as IRCGA-3; RCGA proposed in [49, 50] is abbreviated, respectively, as IRCGA-4 and IRCGA-5.In order to verify the validity and feasibility of IRCGA-2, it is to be compared with the existing RCGA. Among the existing references of RCGA, ‎[24] was published in 2016 with a great amount of comparative studies of the RCGA; therefore, IRCGA-2 will be compared with IRCGA-1. In addition, the IRCGA-2 will also be compared with IRCGA-4 and IRCGA-5.


### 4.1. Iteration Termination Condition

The iteration termination condition for the RCGA can be defined as(10)fi-fi∗≤εi,i=1,2,⋯,pwhere fi∗is the globally optimal value of theith test function in theory,fi is the optimal value of theith test function obtained by RCGA, andεi is the precision for theith test function.


### 4.2. Diversity of Population

If the individuals in thetth populationX(t) areX1(t),X2(t),⋯,Xn(t), respectively and theith individual isXi(t)=(xi1(t),xi2(t),…,xim(t)), the population center X-(t)=(x-1(t),x-2(t),⋯,x-m(t)) is calculated as follows:(11)X-t=x-1t,x-2t,⋯,x-mt=X1t+X2t+⋯+Xntn=∑i=1nxi1,∑i=1nxi2,⋯,∑i=1nximnThe average value of the sum of the variance of each individual to the population center in a population isD(t) calculated by(12)Dt=1n∑i=1n∑j=1mxij-x-j2TheD value can reflect the degree of dispersion of the individual in the population. The larger the D value, the better the diversity of the population; the smaller the D value, the poorer the diversity of the population; whenDvalue is equal to 0, the population diversity is completely lost. That is, all individuals in the population are the same.


### 4.3. Test Functions

In order to verify the validity and feasibility of IRCGA-2, nine frequently used test functions of certain complexity are selected. They are discussed below:(1)
Needle-in-a-haystack function to be maximized(13)f1x=30.05+x12+x222+x12+x222-5.12≤x1,x2≤5.12The optimal solution off1 is located at x∗ = (0,0) withf1(x∗) =3600.(2)
Schaffer function to be maximized(14)f2x=0.5-sin2x12+x22-0.51+0.001x12+x222-10<x1,x2<10The optimal solution off2 is located at x∗ = (0,0) withf2(x∗) =1.(3)
Six-hump Camel Back function to be minimized(15)f3x=4-2.1x12+x143x12+x1x2+-4+4x22x22-10<x1,x2<10The optimal solution off3 is located at x∗ = (-0.0898,0.7126) and (0.0898,-0.7126) with f3(x∗) =-1.031628.(4)
Shubert function to be minimized(16)f4x=∑i=15icos⁡i+1x1+i∑i=15icos⁡i+1x2+i-10≤xi≤10The optimal solution off4 is located at x∗ = (-1.42513, 0.80032) with f4(x∗) =-186.7309.(5)
Rosenbrock function to be minimized(17)f5x=100x2-x122+x1-12-10<x1,x2<10The optimal solution off5 is located at x∗ = (1,1) withf5(x∗) =0.(6)
Michalewiczs function to be minimized(18)f6x=-sin⁡x1sinx12π20-sin⁡x2sin2x22π200≤x1,x2≤πThe optimal solution off6 is located at x∗ = (2.0230,2.0230) withf6(x∗) =-1.80130.(7)
G08 function to be minimized(19)f7x=-sin32πx1sin⁡2πx2x13x1+x2s.t.g1x=x12-x2+1≤0g2x=1-x1+x2-42≤00≤x1,x2≤10The optimal solution off7 is located at x∗ = (1.2279723,4.2453733) withf7(x∗) =-0.095825.(8)
Easom function to be minimized(20)f8x=-cosx1cosx2exp-x1-π2-x2-π2-100≤x1,x2≤100The optimal solution off8 is located at x∗ = (π,π) withf8(x∗) =-1.(9)
Generalized Rastrigin function to be minimized(21)f9x=x12-10cos⁡2πx1+x22-10cos⁡2πx2+200≤x1,x2≤πThe optimal solution off8 is located at x∗ = (0,0) withf8(x∗) =0.


### 4.4. Parameter Settings

In order to obtain a fair performance comparison, the parameters related to IRCGA proposed in this paper are set as follows:( 1 ) The computing precision of various test functionsε1=ε2=ε3=ε4=ε5=ε6=ε7=ε8=ε9=10−4; (2) the population sizen=100; (3)M1=107 andM2=107 in the penalty function; (4) in IRCGA-2, the mutation probabilitypm=0.5 and the crossover probabilitypc=1. In IRCGA-1, the mutation probabilitypm=0.05 and the crossover probabilitypc=0.9; (5) Reserve 50 elite individuals; (6) in IRCGA-4 and IRCGA-5, the population sizen=100 and the remaining parameters are the same as in [50, 51].


### 4.5. Limitations of IRCGA-1

Definition 1.
When all the individuals in the population are the same, the individuals in population are called the losing population diversity.For the optimization problem with more local extreme points, ICRGA-1 has great possibility of falling into local extreme points. For example, consider that the first test function in Section4.3. With IRCGA-1, the evolution of population as a function of number of iterations is shown in Figure 5. The corresponding results with IRCGA-2 are shown in Figure 6.Figure 5
The evolution of population in IRCGA-1 as a function of the number of iterations.
(a)
Initial population (b)
After 40 iterations (c)
After 80 iterations (d)
After 120 iterations (e)
After 160 iterationsFigure 6
The evolution of population in IRCGA-2 as a function of the number of iterations.
(a)
Initial population (b)
After 5 iterations (c)
After 10 iterations (d)
After 15 iterationsIt can be seen from Figure5 that the diversity of the population tends to become poor with the increase of the number of iterations. When the number of iterations is 160, all the individuals in the population are the same and the value of the objective function is 2978.2275. The population has lost its diversity, and the global optimal solution cannot be obtained. It can be seen from Figure 6 that the population diversity of IRCGA-2 tends to become poor with the increase of the number of iterations but the diversity of the population is significantly superior to that of IRCGA-1. In order to compare the population diversities of IRCGA-1 and IRCGA-2 further, consider the needle-in-a-haystack function discussed in Section 4.2. The IRCGA-1 and IRCGA-2 programs were run 1000 times, respectively. With IRCGA-1, the number of loss of population diversity was 697 times and the probability of losing population diversity was 69.7%; with IRCGA-2, the number of loss of population diversity was 0 times and the probability of losing population diversity was 0%. These results indicate that IRCGA-1 is more likely to lose population diversity for the problem of optimizing with many local optima.In summary, IRCGA-1 has great limitations in solving the optimization problem with many local optima. In many cases, the global optimal solution cannot be obtained.


### 4.6. Test Results

In order to obtain a fair performance comparison, the 9 test functions were used as examples and each test function was run on the same computer for 1000 times. The computational results of IRCGA-1, IRCGA-2, IRCGA-3, IRCGA-4, and IRCGA-5 are shown in Table2.Table 2
The computational results of five ICRGAs.
function Algorithm Average running time (s) Average number of iterations (times) The average value of population diversity when converging to the optimal solution f 1 IRCGA-1 0.6397 205.3840 28.6652 IRCGA-2 0.0209 24.1420 50.2294 IRCGA-3 0.0253 30.2560 30.6849 IRCGA-4 0.6936 233.2300 11.2693 IRCGA-5 0.5863 196.5600 27.2.46  f 2 IRCGA-1 0.4193 115.0780 5.9865 IRCGA-2 0.0133 13.0770 10.2328 IRCGA-3 0.0265 25.6320 6.9731 IRCGA-4 0.6255 206.9300 1.7962 IRCGA-5 0.0493 85.4500 7.3493  f 3 IRCGA-1 0.0643 18.9930 3.4109 IRCGA-2 0.0144 14.3210 5.8449 IRCGA-3 0.0273 16.2350 4.7633 IRCGA-4 0.1313 54.7800 1.4526 IRCGA-5 0.0317 21.5400 2.8277  f 4 IRCGA-1 15.7263 4630.9300 3.2163 IRCGA-2 0.2275 219.1660 11.0648 IRCGA-3 0.2510 272.0670 3.4109 IRCGA-4 13.1359 4413.9000 2.0108 IRCGA-5 0.8392 1264.6400 4.4617  f 5 IRCGA-1 0.1137 36.1090 3.9642 IRCGA-2 0.0316 30.9790 6.2602 IRCGA-3 0.0405 32.5230 4.0683 IRCGA-4 0.4617 157.1000 2.1785 IRCGA-5 0.1300 145.4000 3.5308  f 6 IRCGA-1 0.0547 22.0830 3.6838 IRCGA-2 0.0208 19.6450 5.2457 IRCGA-3 0.0312 21.0560 4.0133 IRCGA-4 0.1831 309.6000 2.1494 IRCGA-5 0.1280 245.7800 3.4931  f 7 IRCGA-1 0.0574 18.3590 5.8063 IRCGA-2 0.0200 15.4550 10.0381 IRCGA-3 0.0320 16.4680 7.8151 IRCGA-4 0.0479 26.2000 5.1667 IRCGA-5 0.0368 29.5020 6.4071 f 8 IRCGA-1 0.1381 42.6790 78.8050  IRCGA-2 0.0262 27.7540 127.9265 IRCGA-3 0.0328 31.2600 86.3403 IRCGA-4 0.1464 46.9900 75.9938 IRCGA-5 0.1458 48.5800 74.1084  f 9 IRCGA-1 0.1959 60.9510 7.2904 IRCGA-2 0.0157 16.3440 13.5928 IRCGA-3 0.0320 21.2640 10.6016 IRCGA-4 0.0560 26.7850 4.2582 IRCGA-5 0.0396 23.5600 7.5200The average running time, the average number of iterations, and the average value of population diversity when converging to the optimal solution in Table2 were calculated as follows: when the iteration termination condition is satisfied, the numbers of iterations, time, and population diversity of processing at theith run are, respectively,niter(i),t(i), anddiv(i),i = 1, 2,⋯,k, wherek is the number of runs used in each experiment. Then, the average running time, average number of iterations, and average value of population diversity are computed by (22)tav=1k∑i=1kti(23)niterav=1k∑i=1kniteri(24)divav=1k∑i=1kdiviwheretav is the average running time,niterav is the average number of iterations, anddivav is the average value of population diversity.When the average running time of ICRGA-1 ist1, the average running time of ICRGA-2 ist2, IRCGA-2 reduces the average running time byx% forith test functionfi in comparison to IRCGA-1, and, then,x% is computed by(25)t11-x%=t2(26)x=1001-t2t1The computational method ofx% is the same as (25) and (26) for IRCGA-2, IRCGA-3, IRCGA-4, and IRCGA-5.As can be observed in Table2, the average running time, average number of iterations, and average value of population diversity of IRCGA-2 are significantly superior to those of IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5. IRCGA-2 reduces the average running time by 96.7328%, 17.3913%, 96.9867%, and 96.4353% forf1, 96.8280%, 49.8113%, 97.8737%, and 73.0223% forf2, 77.6050%, 47.2527%, 89.0327%, and 54.5731% forf3, 98.5534%, 9.3625%, 98.2681%, and 72.8908% forf4, 72.2076%, 21.9753%, 93.1557%, and 75.6923%f5, 61.9744%, 33.3333%, 88.6401%, and 83.7500% forf6, 65.1568%, 37.5000%, 58.2463%, and 45.6522% forf7, 81.0282%, 20.1220%, 82.1038%, and 82.0320% forf8, 91.9857%, and 50.9375%, 71.9643%, and 60.3535 forf9in comparison to IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5. Similarly, the numbers of iterations are reduced by 88.2454%, 20.2076%, 89.6488%, and 87.7177% forf1, 88.6364%, 48.9817%, 93.6805%, and 84.6963% forf2, 24.5985%, 11.7893%, 73.8572%, and 33.5144% forf3, 95.2673%, 19.4441%, 95.0346%, and 82.6697% forf4, 14.2070%, 4.7474%, 80.2807%, and 78.6939% forf5, 11.0402%, 6.7012%, 93.6547%, and 92.0071% forf6, 15.8179%, 6.1513%, 41.0115%, and 47.6137% forf7, 34.9704%, 11.2156%, 40.9364%, and 42.8695% forf8, and 73.1850%, 23.1377%, 38.9808%, and 30.6282% forf9. Thus, IRCGA-2 is observed to be superior to IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5 in terms of all the measures utilized.


## 4.1. Iteration Termination Condition

The iteration termination condition for the RCGA can be defined as(10)fi-fi∗≤εi,i=1,2,⋯,pwhere fi∗is the globally optimal value of theith test function in theory,fi is the optimal value of theith test function obtained by RCGA, andεi is the precision for theith test function.


## 4.2. Diversity of Population

If the individuals in thetth populationX(t) areX1(t),X2(t),⋯,Xn(t), respectively and theith individual isXi(t)=(xi1(t),xi2(t),…,xim(t)), the population center X-(t)=(x-1(t),x-2(t),⋯,x-m(t)) is calculated as follows:(11)X-t=x-1t,x-2t,⋯,x-mt=X1t+X2t+⋯+Xntn=∑i=1nxi1,∑i=1nxi2,⋯,∑i=1nximnThe average value of the sum of the variance of each individual to the population center in a population isD(t) calculated by(12)Dt=1n∑i=1n∑j=1mxij-x-j2TheD value can reflect the degree of dispersion of the individual in the population. The larger the D value, the better the diversity of the population; the smaller the D value, the poorer the diversity of the population; whenDvalue is equal to 0, the population diversity is completely lost. That is, all individuals in the population are the same.


## 4.3. Test Functions

In order to verify the validity and feasibility of IRCGA-2, nine frequently used test functions of certain complexity are selected. They are discussed below:(1)
Needle-in-a-haystack function to be maximized(13)f1x=30.05+x12+x222+x12+x222-5.12≤x1,x2≤5.12The optimal solution off1 is located at x∗ = (0,0) withf1(x∗) =3600.(2)
Schaffer function to be maximized(14)f2x=0.5-sin2x12+x22-0.51+0.001x12+x222-10<x1,x2<10The optimal solution off2 is located at x∗ = (0,0) withf2(x∗) =1.(3)
Six-hump Camel Back function to be minimized(15)f3x=4-2.1x12+x143x12+x1x2+-4+4x22x22-10<x1,x2<10The optimal solution off3 is located at x∗ = (-0.0898,0.7126) and (0.0898,-0.7126) with f3(x∗) =-1.031628.(4)
Shubert function to be minimized(16)f4x=∑i=15icos⁡i+1x1+i∑i=15icos⁡i+1x2+i-10≤xi≤10The optimal solution off4 is located at x∗ = (-1.42513, 0.80032) with f4(x∗) =-186.7309.(5)
Rosenbrock function to be minimized(17)f5x=100x2-x122+x1-12-10<x1,x2<10The optimal solution off5 is located at x∗ = (1,1) withf5(x∗) =0.(6)
Michalewiczs function to be minimized(18)f6x=-sin⁡x1sinx12π20-sin⁡x2sin2x22π200≤x1,x2≤πThe optimal solution off6 is located at x∗ = (2.0230,2.0230) withf6(x∗) =-1.80130.(7)
G08 function to be minimized(19)f7x=-sin32πx1sin⁡2πx2x13x1+x2s.t.g1x=x12-x2+1≤0g2x=1-x1+x2-42≤00≤x1,x2≤10The optimal solution off7 is located at x∗ = (1.2279723,4.2453733) withf7(x∗) =-0.095825.(8)
Easom function to be minimized(20)f8x=-cosx1cosx2exp-x1-π2-x2-π2-100≤x1,x2≤100The optimal solution off8 is located at x∗ = (π,π) withf8(x∗) =-1.(9)
Generalized Rastrigin function to be minimized(21)f9x=x12-10cos⁡2πx1+x22-10cos⁡2πx2+200≤x1,x2≤πThe optimal solution off8 is located at x∗ = (0,0) withf8(x∗) =0.


## 4.4. Parameter Settings

In order to obtain a fair performance comparison, the parameters related to IRCGA proposed in this paper are set as follows:( 1 ) The computing precision of various test functionsε1=ε2=ε3=ε4=ε5=ε6=ε7=ε8=ε9=10−4; (2) the population sizen=100; (3)M1=107 andM2=107 in the penalty function; (4) in IRCGA-2, the mutation probabilitypm=0.5 and the crossover probabilitypc=1. In IRCGA-1, the mutation probabilitypm=0.05 and the crossover probabilitypc=0.9; (5) Reserve 50 elite individuals; (6) in IRCGA-4 and IRCGA-5, the population sizen=100 and the remaining parameters are the same as in [50, 51].


## 4.5. Limitations of IRCGA-1

Definition 1.
When all the individuals in the population are the same, the individuals in population are called the losing population diversity.For the optimization problem with more local extreme points, ICRGA-1 has great possibility of falling into local extreme points. For example, consider that the first test function in Section4.3. With IRCGA-1, the evolution of population as a function of number of iterations is shown in Figure 5. The corresponding results with IRCGA-2 are shown in Figure 6.Figure 5
The evolution of population in IRCGA-1 as a function of the number of iterations.
(a)
Initial population (b)
After 40 iterations (c)
After 80 iterations (d)
After 120 iterations (e)
After 160 iterationsFigure 6
The evolution of population in IRCGA-2 as a function of the number of iterations.
(a)
Initial population (b)
After 5 iterations (c)
After 10 iterations (d)
After 15 iterationsIt can be seen from Figure5 that the diversity of the population tends to become poor with the increase of the number of iterations. When the number of iterations is 160, all the individuals in the population are the same and the value of the objective function is 2978.2275. The population has lost its diversity, and the global optimal solution cannot be obtained. It can be seen from Figure 6 that the population diversity of IRCGA-2 tends to become poor with the increase of the number of iterations but the diversity of the population is significantly superior to that of IRCGA-1. In order to compare the population diversities of IRCGA-1 and IRCGA-2 further, consider the needle-in-a-haystack function discussed in Section 4.2. The IRCGA-1 and IRCGA-2 programs were run 1000 times, respectively. With IRCGA-1, the number of loss of population diversity was 697 times and the probability of losing population diversity was 69.7%; with IRCGA-2, the number of loss of population diversity was 0 times and the probability of losing population diversity was 0%. These results indicate that IRCGA-1 is more likely to lose population diversity for the problem of optimizing with many local optima.In summary, IRCGA-1 has great limitations in solving the optimization problem with many local optima. In many cases, the global optimal solution cannot be obtained.


## 4.6. Test Results

In order to obtain a fair performance comparison, the 9 test functions were used as examples and each test function was run on the same computer for 1000 times. The computational results of IRCGA-1, IRCGA-2, IRCGA-3, IRCGA-4, and IRCGA-5 are shown in Table2.Table 2
The computational results of five ICRGAs.
function Algorithm Average running time (s) Average number of iterations (times) The average value of population diversity when converging to the optimal solution f 1 IRCGA-1 0.6397 205.3840 28.6652 IRCGA-2 0.0209 24.1420 50.2294 IRCGA-3 0.0253 30.2560 30.6849 IRCGA-4 0.6936 233.2300 11.2693 IRCGA-5 0.5863 196.5600 27.2.46  f 2 IRCGA-1 0.4193 115.0780 5.9865 IRCGA-2 0.0133 13.0770 10.2328 IRCGA-3 0.0265 25.6320 6.9731 IRCGA-4 0.6255 206.9300 1.7962 IRCGA-5 0.0493 85.4500 7.3493  f 3 IRCGA-1 0.0643 18.9930 3.4109 IRCGA-2 0.0144 14.3210 5.8449 IRCGA-3 0.0273 16.2350 4.7633 IRCGA-4 0.1313 54.7800 1.4526 IRCGA-5 0.0317 21.5400 2.8277  f 4 IRCGA-1 15.7263 4630.9300 3.2163 IRCGA-2 0.2275 219.1660 11.0648 IRCGA-3 0.2510 272.0670 3.4109 IRCGA-4 13.1359 4413.9000 2.0108 IRCGA-5 0.8392 1264.6400 4.4617  f 5 IRCGA-1 0.1137 36.1090 3.9642 IRCGA-2 0.0316 30.9790 6.2602 IRCGA-3 0.0405 32.5230 4.0683 IRCGA-4 0.4617 157.1000 2.1785 IRCGA-5 0.1300 145.4000 3.5308  f 6 IRCGA-1 0.0547 22.0830 3.6838 IRCGA-2 0.0208 19.6450 5.2457 IRCGA-3 0.0312 21.0560 4.0133 IRCGA-4 0.1831 309.6000 2.1494 IRCGA-5 0.1280 245.7800 3.4931  f 7 IRCGA-1 0.0574 18.3590 5.8063 IRCGA-2 0.0200 15.4550 10.0381 IRCGA-3 0.0320 16.4680 7.8151 IRCGA-4 0.0479 26.2000 5.1667 IRCGA-5 0.0368 29.5020 6.4071 f 8 IRCGA-1 0.1381 42.6790 78.8050  IRCGA-2 0.0262 27.7540 127.9265 IRCGA-3 0.0328 31.2600 86.3403 IRCGA-4 0.1464 46.9900 75.9938 IRCGA-5 0.1458 48.5800 74.1084  f 9 IRCGA-1 0.1959 60.9510 7.2904 IRCGA-2 0.0157 16.3440 13.5928 IRCGA-3 0.0320 21.2640 10.6016 IRCGA-4 0.0560 26.7850 4.2582 IRCGA-5 0.0396 23.5600 7.5200The average running time, the average number of iterations, and the average value of population diversity when converging to the optimal solution in Table2 were calculated as follows: when the iteration termination condition is satisfied, the numbers of iterations, time, and population diversity of processing at theith run are, respectively,niter(i),t(i), anddiv(i),i = 1, 2,⋯,k, wherek is the number of runs used in each experiment. Then, the average running time, average number of iterations, and average value of population diversity are computed by (22)tav=1k∑i=1kti(23)niterav=1k∑i=1kniteri(24)divav=1k∑i=1kdiviwheretav is the average running time,niterav is the average number of iterations, anddivav is the average value of population diversity.When the average running time of ICRGA-1 ist1, the average running time of ICRGA-2 ist2, IRCGA-2 reduces the average running time byx% forith test functionfi in comparison to IRCGA-1, and, then,x% is computed by(25)t11-x%=t2(26)x=1001-t2t1The computational method ofx% is the same as (25) and (26) for IRCGA-2, IRCGA-3, IRCGA-4, and IRCGA-5.As can be observed in Table2, the average running time, average number of iterations, and average value of population diversity of IRCGA-2 are significantly superior to those of IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5. IRCGA-2 reduces the average running time by 96.7328%, 17.3913%, 96.9867%, and 96.4353% forf1, 96.8280%, 49.8113%, 97.8737%, and 73.0223% forf2, 77.6050%, 47.2527%, 89.0327%, and 54.5731% forf3, 98.5534%, 9.3625%, 98.2681%, and 72.8908% forf4, 72.2076%, 21.9753%, 93.1557%, and 75.6923%f5, 61.9744%, 33.3333%, 88.6401%, and 83.7500% forf6, 65.1568%, 37.5000%, 58.2463%, and 45.6522% forf7, 81.0282%, 20.1220%, 82.1038%, and 82.0320% forf8, 91.9857%, and 50.9375%, 71.9643%, and 60.3535 forf9in comparison to IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5. Similarly, the numbers of iterations are reduced by 88.2454%, 20.2076%, 89.6488%, and 87.7177% forf1, 88.6364%, 48.9817%, 93.6805%, and 84.6963% forf2, 24.5985%, 11.7893%, 73.8572%, and 33.5144% forf3, 95.2673%, 19.4441%, 95.0346%, and 82.6697% forf4, 14.2070%, 4.7474%, 80.2807%, and 78.6939% forf5, 11.0402%, 6.7012%, 93.6547%, and 92.0071% forf6, 15.8179%, 6.1513%, 41.0115%, and 47.6137% forf7, 34.9704%, 11.2156%, 40.9364%, and 42.8695% forf8, and 73.1850%, 23.1377%, 38.9808%, and 30.6282% forf9. Thus, IRCGA-2 is observed to be superior to IRCGA-1, IRCGA-3, IRCGA-4, and IRCGA-5 in terms of all the measures utilized.


## 5. Parameter Optimization of Vehicle Steering Trapezoid Mechanism

In the autosteering process, the difference between the actual movement trajectory and the theoretical movement trajectory of the vehicle steering mechanism results in the motion error, which increases the tire wear and destroys the safety and stability of steering. Through the optimization of the size and positioning parameters of the steering mechanism, the error can be effectively reduced, thereby improving the vehicle handling performance and improving the steering safety. Here the weighted sum of the relative error of the theoretical rotation angle and the actual rotation angle of the external front steering wheel is chosen as the objective function to be minimized. When the inside front wheel turning angle of the vehicle isα, the schematic diagram of the vehicle ideal steering process and the actual steering process are shown in Figures 7 and 8.Figure 7
Theoretical steering process schematic.Figure 8
Schematic of vehicle actual steering process when the rotational angle of the inside steering wheel isα.Note thatα is actual rotational angle of inside front steering wheel, β is theoretical rotational angle of external front steering wheel,M is the distance between the left and right vertical shafts,L is the distance of rear and front axle of vehicle wheel,R is the steering radius of external front steering wheel,θ is the bottom angle of steering trapezoid mechanism, anda is the distance of wheel and steering pin.Note thatα is the actual rotational angle of inside front steering wheel, β is the theoretical rotational angle of external front steering wheel,M is the distance between the left and right vertical shafts,L is the distance of rear and front axles of the vehicle wheel,θ is the bottom angle of the steering trapezoid mechanism, β′ is the ideal rotational angle of the external front steering wheel,m is the steering arm length of the steering trapezoid mechanism,N is the length of the auxiliary line, andδ1 andδ2are the interior angles of auxiliary calculation.


### 5.1. Optimization Model of the Vehicle Steering Trapezoid Mechanism

Using the geometry in Figure6, we get(27)β=arccot⁡ML+cot⁡αwhere α is the rotational angle of inside front steering wheel, β is the theoretical rotational angle of the external front steering wheel,M is the distance between the left and right vertical shafts, andL is the distance of rear and front axles of the vehicle wheel.In the process of vehicle swerve, when the turning radius reaches the minimum, the rotational angle of inside front steering wheel reaches the maximum; that is,(28)αmax=arctanLRmin-a2-L2-MwhereRmin is the minimum turning radius and αmax is the maximum rotational angle of the inside front steering wheel.Figure7 shows that schematic of the vehicle actual steering process when the rotational angle of the inside steering wheel is α. The dotted line represents the positional relationship of the steering trapezium mechanism when the steering is not started. Using the geometry in Figure 7, we get(29)N2=M2+m2-2mMcos⁡θ-αwhere α is the rotational angle of the inside front steering wheel,M is the distance between the left and right vertical shafts,m is the steering arm length of the steering trapezoid mechanism,θ is the bottom angle of the steering trapezoid mechanism, andN is the length of the auxiliary line. We also have(30)S2=N2+m2-2mNcos⁡δ1whereS is the length of the tie rod andδ1 andδ2 are the interior angles of auxiliary calculation.Using (29), (30), and Figure 5, we get(31)β′=δ1-θ-δ2=δ1+δ2-θ(32)δ2=arcsinGE3N=arcsinmsin⁡θ-αNwhere β is the theoretical rotational angle of the external front steering wheel and β′ is the ideal rotational angle of the external front steering wheel.We find(33)β′=arccosM2+2m2-M-2mcos⁡θ2-2Mmcos⁡θ-α2mm2+M2-2Mmcos⁡θ-α+arcsinmsin⁡θ-αm2+M2-2Mmcos⁡θ-α-θIn order to ensure the steering performance of the vehicle, the actual rotational angle function of external front steering wheel should be as close as possible to the ideal rotational angle in the process of vehicle swerve. Hence, the optimization problem of vehicle steering trapezoidal structure can be written as(34)minFX=min∑αi=1αmaxβ-β′ωαiwhere α is the rotational angle of the inside front steering wheel, αmax is the maximum rotational angle of the inside front steering wheel, αI is the angle number corresponding to the rotational angle of the inside front steering wheel, and is a natural number between 1 and αmax, which is dimensionless;ω(αi) is a weighting function.The computational method is as follows:(35)ωαi=1.25,0.90,0.45,1≤αi≤1010<αi≤20αi>20The design variables selected by the objective function are the steering trapezoidal bottom angleθand the trapezoidal arm lengthm, to be represented byX=[m,θ]. According to the design information in the literature [51, 52], the constraint condition of vehicle steering trapezium mechanism is given by(36)0.11M≤m≤0.15M(37)arctan⁡1.2LM≤θ≤4π9(38)M-2m·cos⁡θ2-M2+2Mmcos⁡θ+arcsin⁡L/Rmin-a2m·M-2m·cos⁡θ-cos7π9≤0


### 5.2. Optimization Results

We experimented with Patrol GRX, Patrol GL, and Nissan Duke data. The parameters of the vehicles are shown in Table3. IRCGA-2 is used to optimize the parameters of the steering trapezium mechanism.Table 3
Parameters of the vehicles.
Models Distance of rear and front axle/m Center distance of two main axles/m Distance of wheel and steering pin/m Min radius of vehicles steering/m Patrol GRX 2.9 1.605 0.4 6.1 Patrol GL 2.9 1.555 0.4 6.1 Nissan Duke 2.9 1.500 0.5 5.5The population size and the maximum number of iterations were chosen as 100 and 5000, respectively. The optimization results are shown in Table4.Table 4
Optimization results with the three vehicles.
Models Optimal value of Steering arm length (m) Ideal value of Steering arm length (m) Optimal value of trapezoid bottom angle (rad) Ideal value of trapezoid bottom angle (rad) Optimal value of objective function (rad) Ideal value of objective function (rad) Patrol GRX 0.1770 0.1771 1.2781 1.2780 0.1873 0.1872 Patrol GL 0.1712 0.1711 1.2911 1.2900 0.1866 0.1864 Nissan Duke 0.1711 0.1713 1.2903 1.2902 0.1868 0.1867It can be seen from Table4 that the absolute error between the optimal value of the trapezoidal arm length and the ideal value is within 0.0001 m, the relative error being within 0.1%. The absolute error value of the steering trapezoidal bottom angle is within 0.0005 rad, the relative error being within 0.1%. The errors between the optimal and ideal values of the objective function are thus within 0.1%.


## 5.1. Optimization Model of the Vehicle Steering Trapezoid Mechanism

Using the geometry in Figure6, we get(27)β=arccot⁡ML+cot⁡αwhere α is the rotational angle of inside front steering wheel, β is the theoretical rotational angle of the external front steering wheel,M is the distance between the left and right vertical shafts, andL is the distance of rear and front axles of the vehicle wheel.In the process of vehicle swerve, when the turning radius reaches the minimum, the rotational angle of inside front steering wheel reaches the maximum; that is,(28)αmax=arctanLRmin-a2-L2-MwhereRmin is the minimum turning radius and αmax is the maximum rotational angle of the inside front steering wheel.Figure7 shows that schematic of the vehicle actual steering process when the rotational angle of the inside steering wheel is α. The dotted line represents the positional relationship of the steering trapezium mechanism when the steering is not started. Using the geometry in Figure 7, we get(29)N2=M2+m2-2mMcos⁡θ-αwhere α is the rotational angle of the inside front steering wheel,M is the distance between the left and right vertical shafts,m is the steering arm length of the steering trapezoid mechanism,θ is the bottom angle of the steering trapezoid mechanism, andN is the length of the auxiliary line. We also have(30)S2=N2+m2-2mNcos⁡δ1whereS is the length of the tie rod andδ1 andδ2 are the interior angles of auxiliary calculation.Using (29), (30), and Figure 5, we get(31)β′=δ1-θ-δ2=δ1+δ2-θ(32)δ2=arcsinGE3N=arcsinmsin⁡θ-αNwhere β is the theoretical rotational angle of the external front steering wheel and β′ is the ideal rotational angle of the external front steering wheel.We find(33)β′=arccosM2+2m2-M-2mcos⁡θ2-2Mmcos⁡θ-α2mm2+M2-2Mmcos⁡θ-α+arcsinmsin⁡θ-αm2+M2-2Mmcos⁡θ-α-θIn order to ensure the steering performance of the vehicle, the actual rotational angle function of external front steering wheel should be as close as possible to the ideal rotational angle in the process of vehicle swerve. Hence, the optimization problem of vehicle steering trapezoidal structure can be written as(34)minFX=min∑αi=1αmaxβ-β′ωαiwhere α is the rotational angle of the inside front steering wheel, αmax is the maximum rotational angle of the inside front steering wheel, αI is the angle number corresponding to the rotational angle of the inside front steering wheel, and is a natural number between 1 and αmax, which is dimensionless;ω(αi) is a weighting function.The computational method is as follows:(35)ωαi=1.25,0.90,0.45,1≤αi≤1010<αi≤20αi>20The design variables selected by the objective function are the steering trapezoidal bottom angleθand the trapezoidal arm lengthm, to be represented byX=[m,θ]. According to the design information in the literature [51, 52], the constraint condition of vehicle steering trapezium mechanism is given by(36)0.11M≤m≤0.15M(37)arctan⁡1.2LM≤θ≤4π9(38)M-2m·cos⁡θ2-M2+2Mmcos⁡θ+arcsin⁡L/Rmin-a2m·M-2m·cos⁡θ-cos7π9≤0


## 5.2. Optimization Results

We experimented with Patrol GRX, Patrol GL, and Nissan Duke data. The parameters of the vehicles are shown in Table3. IRCGA-2 is used to optimize the parameters of the steering trapezium mechanism.Table 3
Parameters of the vehicles.
Models Distance of rear and front axle/m Center distance of two main axles/m Distance of wheel and steering pin/m Min radius of vehicles steering/m Patrol GRX 2.9 1.605 0.4 6.1 Patrol GL 2.9 1.555 0.4 6.1 Nissan Duke 2.9 1.500 0.5 5.5The population size and the maximum number of iterations were chosen as 100 and 5000, respectively. The optimization results are shown in Table4.Table 4
Optimization results with the three vehicles.
Models Optimal value of Steering arm length (m) Ideal value of Steering arm length (m) Optimal value of trapezoid bottom angle (rad) Ideal value of trapezoid bottom angle (rad) Optimal value of objective function (rad) Ideal value of objective function (rad) Patrol GRX 0.1770 0.1771 1.2781 1.2780 0.1873 0.1872 Patrol GL 0.1712 0.1711 1.2911 1.2900 0.1866 0.1864 Nissan Duke 0.1711 0.1713 1.2903 1.2902 0.1868 0.1867It can be seen from Table4 that the absolute error between the optimal value of the trapezoidal arm length and the ideal value is within 0.0001 m, the relative error being within 0.1%. The absolute error value of the steering trapezoidal bottom angle is within 0.0005 rad, the relative error being within 0.1%. The errors between the optimal and ideal values of the objective function are thus within 0.1%.


## 6. Conclusions

ICRGA-2 to solve constrained global optimization problems is proposed. The improvements of IRCGA-2 are mainly in four categories: the selection operator, the crossover operator, the substitution operator, and the mutation operator.When methods such as roulette wheel selection, tournament selection, and local selection are used to compute the individual’s fitness function, inferior population diversity is developed at later stages of iterations. ICRGA-2 improves performance by incorporating a number of novelties as summarized below.ICRGA-2 uses the SGS method, which does not need compute the fitness value, achieves superior population diversity, and is easy to realize.A HNDX operator is developed. Compared with the DBX operator in [24], the HNDX operator can guarantee that the cross-generated offsprings are located near the better one among the two parents and that crossover direction is very close to the optimal crossover direction or consistent with the optimal crossover direction. Thus, HNDX can ensure that there is a great chance of generating better offsprings and thereby improving the convergence speed of IRCGA-2.In most previous GA algorithms, as iterations increase, the same individuals are likely to appear in the population, making the population diversity worse. To avoid this problem, the substitution operation is added after the crossover so that there is no duplication of the same individual in the population.The local search ability and the global search ability of different mutation operators are different. Some mutation operators have strong local search ability, and some have strong global search ability. A single mutation operator is difficult to take into account both local search and global search. This paper proposes a combined mutation method which makes the mutation operation not only take into account the local search ability but also the global search ability.In the optimization problems with many local optima, ICRGA-1 is likely to lose population diversity after many iterations and converges thereby to a local optimum instead of the global optimum. In such problems, the population diversity of IRCGA-2 remains superior to that of IRCGA-1.The computational results with nine examples show that IRCGA-2 has better performance than the other IRCGA methods with respect to all the measures of performance considered.As an example application, the optimization model of the steering mechanism of vehicles is formulated and IRCGA-2 is used to optimize the parameters of the steering trapezoidal mechanism of three kind of vehicle types. Better results are obtained with IRCGA-2 as compared to other methods.



---

*Source: 5760841-2018-06-06.xml*