The realisation method of the curvature optimisation system (shown in
Figure 1) analyses the body stability under different working conditions on the basis of the completed path tracking control system. This method also determines the stability constraint boundary conditions in the optimisation process with the help of the vehicle yaw rate, lateral acceleration, and roll angle. Then, the optimisation algorithm finds the actual driving path
closest to the original desired path within the constraint range according to the known expected path curvature
and
under this working condition. Moreover, the algorithm inputs the corresponding optimised expected path
into the path tracking controller. The controller uses the path as the tracking path to retrack the control. The tracking error at this time is reduced from
to
to improve tracking accuracy. The stability constraint also ensures that the body stability changes within a reasonable range to achieve a comprehensive improvement of the tracking effect.
3.2.1. Determination of Stability Boundary Conditions
In this study, the stability boundary conditions are determined from the three angles of yaw rate, lateral acceleration, and roll angle [
20,
21]. In studying the vehicle stability region boundary, the range of yaw rate in the stability boundary condition is [−1.05, 1.05] [
22]. Lateral acceleration is an important index in the stability evaluation system [
23]. In particular, it can be used as a separate rollover threshold to analyse the rollover problem under vehicle instability. The limit value of lateral acceleration in the stability boundary condition is set as 0.4 g to reasonably ensure the smooth running of the vehicle [
24]. The roll angle is an important factor for judging the vehicle’s body stability. The most appropriate roll angle is 3° when the lateral acceleration is 0.4 g. Moreover, the maximum roll angle should not exceed 5°. In this study, the stability limit value considered in the curvature optimisation process is 5° [
25].
Figure 4 shows that the yaw rate change surface intersects the stability boundary surface within the range of high speed and large curvature. The yaw rate may exceed the set of 1.05 rad/s when the vehicle speed exceeds 13.08 m/s. Thus, body stability is affected. The critical value of curvature is 0.162 m
−1. Therefore, the curvature optimisation algorithm limited by yaw rate should set the boundary value of curvature only as 0.162 m
−1 in the speed range [
5,
15] set in this study.
Figure 5 shows that the boundary values of the intersection line between the lateral acceleration response surface and the stability boundary surface are 0.124 m
−1 and 9.262 m/s. This finding indicates that if the speed is lower than 9.262 m/s or the curvature is less than 0.124 m
−1, the lateral acceleration of the vehicle cannot be greater than the set of 0.4 g, no matter how the curvature is adjusted. The optimal boundary value under the lateral acceleration limit should be 0.124 m
−1 to ensure the stable driving of the vehicle.
Figure 6 shows that the roll angle of the vehicle is stable at low speed and does not exceed the critical value of 5°. Once the vehicle speed reaches the boundary value of 12.15 m/s, the curvature optimisation is suddenly limited by the roll angle. The curvature must be lower than 0.127 m
−1 when the vehicle speed reaches the limit of 15 m/s to ensure that the vehicle roll angle is within the acceptable range. Therefore, the curvature optimisation boundary condition of the proposed model is 0.127 m
−1 to ensure the stability of the vehicle body under the limitation of roll angle.
3.2.2. Algorithm Optimisation
The curvature optimisation method based on a genetic algorithm is adopted in this study. The basic idea of the genetic algorithm [
26,
27] is derived from the viewpoint of Darwinian evolution, that is, the survival of the fittest. Crossover and mutation make the gene close to the optimal solution in the inheritance process through selection. Then, the optimisation process is realised. The genetic algorithm has the advantages of strong robustness, minimal conditions required for optimisation, and easy implementation. Thus, it is widely used in various fields [
28,
29]. The optimisation steps of the genetic algorithm in this study are as follows:
The genetic algorithm cannot directly deal with the parameters to be optimised in the actual control model. Therefore, coding must be used to transform data into strings composed of specific symbols in a certain order, like how chromosomes are synthesised from genomes. The coding method affects the operation of subsequent operators. The effect largely determines the final optimisation efficiency. Common coding methods include the binary coding method, the Gray coding method, the floating point coding method, and the symbolic coding method; the commonly used binary coding is selected here [
30]. Binary encoding transforms the optimisation parameters into 0, 1 for representation. The optimisation parameter in the present study is the curvature of the desired path
ρ. The length
of the binary string is calculated by the following formula:
where
a (0.07) and
b (0.2) are the ranges of the optimisation parameters;
eps is the required accuracy of optimisation, and 0.01 is chosen here. After being obtained, the final optimisation parameters must be decoded and output. The formula is as follows:
In the above formula, X is the binary expression of optimisation parameters, and is the final decimal expression.
- 2.
Initializing the Population and Fitness Function
In general, the initial population of genetic algorithms is randomly generated. Only a certain number of individuals are randomly generated within the range of the optimal solution for iteration.
The fitness function of the genetic algorithm determines that the probability of an individual can be inherited. The larger the value of the fitness function, the more suitable the individual is to the elimination process, and the greater the probability of producing subindividuals is. Therefore, the fitness function is a kind of evaluation index of individual merits. The design of the fitness function also affects the optimisation speed and efficiency of the genetic algorithm.
The optimisation process in this study finds the target path closest to the desired path for tracking, which is the problem of finding the minimum value. Thus, it needs to be scaled:
where
is the fitness function, and the design process of evaluation index F is as follows:
where
ρ2 and
ρ1 are the curvature of the optimised path and the expected tracking path, respectively, and
is the transverse deviation of the corresponding path. In the fitness function, the optimised curvature should also meet the boundary condition requirements of the body stability:
- 3.
Selecting Operator
In the genetic algorithm, the superior individual must be selected from the parent generation for inheritance. The judgment of an individual’s merits and demerits is determined by its fitness. Thus, the selection operation is equivalent to the survival of the fittest in the evolutionary process, which affects the final convergence of the algorithm. According to the roulette selection method for operator selection, we can obtain the selection probability
of individual
as follows:
The calculation formula of chromosome
is as follows:
- 4.
Crossover Operator
The crossover operation process is used to generate new individuals. This process is also a key step different from other evolutionary algorithms. It is realised by the random exchange of gene information between individuals. Some new dominant individuals are generated because the original dominant individuals are retained, thereby improving the search speed of the whole population of genetic algorithms.
- 5.
Mutation Operator
The mutation operator in the genetic algorithm can avoid the elimination of some dominant gene codes in advance. It can prevent prematureness, ensure population diversity, and make the genetic algorithm obtain local random search ability to accelerate the search speed.
In this study, the basic bit mutation operator is used to mutate the random one-bit or multibit gene code of an individual according to the set mutation probability. In particular, the binary coding in this study converts the 0 and 1 of the mutation bit.
After the basic steps of the genetic algorithm, the optimisation is determined, and the working condition of ρ1 = 0.1 m−1 and vx = 10 m/s is selected for curvature optimisation simulation. The schematic diagram of the optimisation process is as follows:
Figure 7 shows the number of offspring generated under different genetic generations. The iteration progress makes the number of offspring gradually stabilise and tend to 1, indicating the end of the optimisation process.