Path Tracking Method Based on Model Predictive Control and Genetic Algorithm for Autonomous Vehicle

Model predictive control (MPC) is often used for controlling the autonomous vehicle tracking the target path. But to apply MPC schemes, the nonlinear model of vehicle kinematics needs to be approximately converted to a linear format, and the path tracking problem has to be converted into certain formats in order to implement the solver of convex quadratic programming. To solve these issues, a control strategy combining MPC and genetic algorithm (GA) is put forward. e nonlinear predictive model is adopted to predict the future movement of a controlled vehicle. e objective function is established according to the future movement and target path. Instead of using a convex quadratic programming solver, GA is applied to solve the optimization problem. e proposed MPC-GA method can handle the arbitrary nonlinear problem and make the objective function more comprehensible and exible. is method is applied in solving the path tracking problem of an autonomous vehicle. Both simulations and on-eld tests are conducted.e results validate the eciency of the proposed MPC-GA path tracking method in comparison with traditional methods. With the MPC-GA controller, the automatic driving on the park road is basically realized. e control strategy can be considered as an alternative method to solve the path tracking problem for an autonomous vehicle.


Introduction
With the rapid development of arti cial intelligence, autonomous vehicle arouses more and more scholars' interest [1]. Generally speaking, the autonomous vehicle can be divided into three modules: perception, decision and planning, and trajectory control. e trajectory control contains lateral control (path tracking) and longitudinal control. e aim of path tracking is to track the target trajectory in a fast and exact way under the limit of operation conditions and restrictions [2,3]. As one of the most important parts, path tracking control has been a signi cant research topic.
Traditional control methods, such as PID [4] and fuzzy control [5], are widely used in path tracking control or steering control. ey have the characteristic of simple structure and quick response. Because PID control and fuzzy control generate the steering actions exclusively based on the tracking errors without requiring the vehicle information, it is unnecessary to set up an explicit mathematical model of the controlled vehicle. Single PID controller or single fuzzy controller is poor of precision, so some scholars propose neural network PID control method [6,7] and fuzzy-PID control method [8,9]. e type of composite control system improves the tracking precision to some extent. However, traditional control methods fail to consider the actuator saturation and physical limit [10] and only take into account the current deviation between the actual state and ideal state, instead of future deviation. What is more, traditional methods generally require a labor-intensive tuning task to achieve acceptable path tracking performance.
Pure Pursuit (PP) algorithm is another simple approach for path tracking. Due to the simplicity of its math model, the PP algorithm is chosen as the main algorithm for path controlling of Ackermann steering vehicles [11,12]. PP, as a geometric control algorithm, determines the look-ahead point according to the look-ahead distance, then obtains the vehicle steering angle control input according to the current heading angle and the distance between the current position and the look-ahead point position, so that the vehicle follows an arc trajectory passing through the look-ahead point [13]. PP control method is also applied for the path tracking problem of four-wheel independent steering robot [14]. e path tracking control is realized considering the correlation between the look-ahead distance and velocity, as well as the lateral error between the robot and the reference path.
In recent years, some new control theories and applications have been extensively developed, such as model predictive control [15], model-free control (MFC) [16], and static output feedback control (SOF) [17]. More and more scholars put forward the MPC into autonomous vehicle [18,19]. MPC controller design is based on an identified model from experimental data in open loop. e model is represented in state-space form, and the future values of the state trajectory and output variables are used as optimization objective with respect to the future values of the control signal [20]. e MPC objective is a finite time quadratic cost function accounting for output error and control amplitude. e goal of MPC is to compute a future control sequence in a defined horizon that can drive the vehicle close to the reference path. is is accomplished by minimizing a multistage cost function with respect to the future control actions, considering a set of constraints both in the control actions and the plant outputs [21]. Different methods, such as PP, Stanley, Linear Quadratic Regulator (LQR), and MPC with Ackermann steering model are investigated [22], and these methods are tested on different shape paths in simulation experiments. It is demonstrated that the performance of the MPC controller is better than those using Pure Pursuit and Stanley controllers.
In fact, vehicle motion is a kind of nonlinear timevarying system. In most academic studies [23,24], the nonlinear time-varying model is approximately transformed into a linear time-invariant model. e purpose of this approximate treatment is to facilitate calculations. However, those ignored nonlinear factor and time variation factor will induce unacceptable errors. At the same time, the solving process of MPC with restrictions is often changed into a constrained quadratic programming problem. Solving this quadratic programming problem remains a difficult task, and only a few results have been presented in the literature [25,26]. Taking into account the above facts, this study proposes an approach for introducing GA into the MPC process. On one hand, the nonlinear time-varying model of vehicle motion is used directly to predict future values of the state trajectory and output variables, instead of approximate treatment. With accurately predicting future values, the objective function value is obtained by comparing the predicted values and reference values. On the other hand, GA is introduced to search for the optimal solution. GA is an adaptive global optimization probabilistic search algorithm that is inspired by referring to natural selection and evolution mechanisms in the biological world. Using a genetic algorithm, the global optimal control signal can be obtained, instead of solving the quadratic programming problem. e scheme to implement GA is much simpler than traditional MPC. To implement the proposed MPC-GA, random solutions are generated according to the encoding principle of GA first. With the given solutions, a nonlinear timevarying model is used to forecast future travel paths. en, the forecast paths are evaluated according to their deviation from the reference path. After the evolution processing including selection, mutation, and crossover operations, the optimal solution will be obtained. Lastly, the optimal solution is converted to an executable control quantity. e remainder of this study is organized as follows: Section 2 describes the basic mathematical models about vehicle motion and traditional MPC. Section 3 introduces the proposed MPC-GA method. e specific application scheme of MPC-GA is described in Section 4. At last, Section 5 displays the simulation and experiment results. is study ends with the conclusions of this work in Section 6.

Basic Mathematical Model
e mathematical model of vehicle motion involves a kinematics aspect and a dynamic aspect. Generally, the kinematic model is suitable for control law design at a low speed [27]. In this study, we focus on autonomous technology in defined areas, such as the industrial park, tourism areas, and campus roads. So, the allowed vehicle speed is usually limited within 40 km/h, and only the kinematic model is taken into account. In fact, the vehicle kinematics model is a nonlinear system. e mathematical model has to be transformed into a linear format. en, linear MPC can be chosen for implementation.

Vehicle Kinematics Model.
A simplified bicycle kinematics model is used to describe vehicle motion at low speed. For the sake of simplified analysis, it is assumed that the machine moves at a low constant speed over a flat surface with no wheel slippage and the wheels are considered rigid wheels [28]. Usually, the automotive rear axle center is regarded as the reference point, and the control task is to make the center point follow the target path. According to the kinematics analysis, the vehicle's motion equation is given as [29,30]: where (x, y) is displacement in the global reference frame coordinates as illustrated in Figure 1, θ is the heading angle of the vehicle, v is the longitudinal velocity at the middle of the rear axis, L is the wheel base, and δ is the steering angle of the front wheel. e vehicle kinematics model can be expressed as a nonlinear equation shown in (2). e state variable is X(t) = [x(t) y(t) θ(t)] T , and the control amount is In practical application, as the vehicle speed changes slightly 2 Mathematical Problems in Engineering in a short period of time, the speed control variable v is considered approximately constant.

Linear Predictive Model.
Because the discrete state-space model is generally adopted for the controlled system in MPC, the nonlinear continuous state model of the vehicle should be linearized and discretized [31]. Ignoring higherorder derivatives, Taylor expansion is performed at an arbitrary reference point (X r (t), U r (t)) with a nonlinear state equation: where zf/zX| X�X r U�U r and zf/zU| X�X r U�U r represent the Jacobian matrix of the path tracking system with respect to the state quantity X(t) and the control quantity U(t) respectively, X r (t) represents the reference state with X r (t) = [x r (t) y r (t) θ r (t)] T , and U r (t) represents the reference control amount with U r = [v r (t) δ r (t)] T . Combining (2) and (3), the linear model (4), namely the error equation of the vehicle, can be obtained. e linear model (4) describes the dynamic characteristics of error signals. ΔX represents the error signal with ΔX = X(t)-X r (t), and ΔU(t) denotes the control input error with ΔU(t) = U(t)-U r (t). At the same time, matrices A(t) and B(t) are the Jacobians of system in relation to X(t) and U(t) respectively.
Using Euler's method, a time-variant discrete linear model is obtained as (5), and equation (6) is the corresponding output function.
e prediction horizon and control horizon of the controller based on MPC are set to N P and N C , then the outputs over the prediction horizon N P can be derived according to (9): In (9), we make an approximation that uses time-invariant model to replace the time-varying model, in order to facilitate the analysis and calculation. By the above process, the state variables and output variables can be predicted at each future time step, which will be compared with the corresponding reference variables.

Objective Function and Optimization Problem.
e optimization problem can be understood as follows: to find the control inputs in a bounded group of possible values that drive the state variables from an initial position to the origin. erefore, an objective function is designed, which regards the control quantity U δ as the variable. To ensure tracking the target signal quickly and smoothly, the objective function is always designed as (10). e first term of the formula represents weighting error between the predicted value and the target signal. It reflects the path tracking performance. e second term considers the volatility of control quantities, which is to ensure the control quantities change smoothly. Coefficients q i and r i represent the weight respectively. At the same time, some constraint conditions are given as (11): With some transformation, the above problem is transformed into solving the following single objective optimization problem with upper and lower bounds: e above optimization problem is a typical convex quadratic programming problem with linear constraints. Some previous works [32,33] have provided the methods to solve this kind of problem, and we will not repeat them here.
When applying MPC schemes, the nonlinear model of vehicle kinematics needs to be converted to a linear format, and the path tracking problem has to be converted into certain formats in order to implement the solver of convex quadratic programming. However, those ignored nonlinear factor and time variation factor will induce unacceptable errors. Also, solving this quadratic programming problem remains a difficult task.

Control Method Based on MPC-GA
Considering that GA is an adaptive heuristic search technique inspired by the evolutionary ideas of natural selection and genetics [34,35], this section constructs a new control method that combines MPC and GA. Compared with traditional MPC, it is no need to convert the nonlinear model to a linear format or implement the solver of convex quadratic programming.
MPC-GA uses a population of points at a time in contrast to the single-point approach by traditional MPC methods. e convergence is monotonic and a global solution is obtained. e solving process of the MPC-GA method can be generally divided into three steps. First of all, a group of random solutions are initialized complying with GA encoding rules. e solution group is considered as the initial population and each solution is considered as an individual. Next, MPC provides the prediction model, and the predictive model is utilized to predict the state variables and output variables at each time step.
e predictive variables will be compared with the corresponding reference variables, which is to construct the objective function. e objective function will be used for calculating the fitness value that is used in the selection process of GA. Lastly, selection, mutation, and crossover operations on the genes of individuals are conducted based on the principles of GA, and iterative operation is implemented in order to search optimal individual or solution.

Control Structure of MPC-GA.
e control system diagram is shown in Figure 2. Vehicle sensors provide all measured variables that contain the current vehicle position. According to the current position displayed on the global map, the local reference input is generated. e reference input Y r is in fact a path segment that starts from the current position and ends at a certain distance ahead. e sensors also provide the measured variables that constitute initial state X 0 . With the MPC-GA controller, a control quantity will be calculated and output to the controlled object. e working principle of MPC-GA controller: in each control cycle, initial solutions {U i } are generated randomly. Given the initial candidate solutions and the current state of controlled object, the corresponding predicted outputs {Y p } are obtained according to the nonlinear predictive model. rough the iterative optimization of GA, the final solution U(t) that minimizes the deviation between the reference signal Y r and predicted output {Y p } is searched. Lastly, the optimal solution is applied to the controlled object, and the control task of the current control cycle is finished. With the passage of time, the output of controlled object gradually approximates the desired signal. Figure 3 shows the difference between MPC-GA and traditional MPC.
According to Figure 3, MPC-GA is based on the principle and implementation steps of traditional MPC. e main improvements are: (1) MPC-GA directly uses the nonlinear time-varying model of vehicle as the predictive model to predict the states and outputs, instead of using an approximate predictive model. erefore, the predicted states and outputs are more accurate. (2) MPC-GA is able to deal with the free-form objective function, including the quadratic objective function. (3) Given the objective function, MPC-GA utilizes the genetic algorithm to solve the optimization goal, instead of using other quadratic programming solvers. Based on MPC and classical GA schemes, the specific steps are described in detail in the following:

Initial Solution.
First of all, it is need to determine the solution space of the problem based on the description of the optimization problem [36]. e design of the initial solution is an important aspect, since the initial solution relates to the convergence speed to find an optimal solution. Meanwhile, the initial solution must be feasible, so as to satisfy the constraints. Aiming at these requirements, each candidate solution U is defined as a sequence of N C discrete values as: For each control variable u i , the physical limit is a basic constraint, which means the control quantity of each cycle should not exceed the maximum output of the actuator (maximum wheel angle, for instance). GA provides a random way to generate the initial solutions. Here, binary coding is adopted to initialize the variable u i taking into account that |u i |≤u max . Supposing that each variable u i is encoded as an 8 bits binary string (A 1 A 2 . . .A k . . .A 7 A 8 , A k = 0 or 1), the range of u i can be limited in [−u max u max ] through a simple transformation relation. For example, equation (14) provides one form of the transformation relation.
All bits of solution U are assigned a random value 0 or 1, which is to generate a chromosome. By repeating this operation, the initial population is produced. With decoding operation, they are converted to real values of candidate solutions. Figure 4 gives the generation process of the initial population.

Nonlinear Prediction and Solution Evaluation.
With the given initial solutions and state-space equation of the system, state variables and output variables can be predicted at every future cycle. Traditionally, a linear predictive model is used to make this prediction. By applying GA, both linear model and nonlinear model are feasible, since GA is a forward way to heuristically search for the optimal solution.

Mathematical Problems in Engineering
Supposing that U(k), U(k+1), . . ., U(k + Nc-1) are the control variables and g is the arbitrary nonlinear function, the future states are predicted as: Correspondingly, the predicted outputs of future cycles are: In traditional MPC, a trade-off between control quantity and tracking performance is considered. e objective function has to meet certain formats in order to implement the solver of convex quadratic programming. By introducing GA, all the control variables and outputs are obtained. So, the objective function can be free-format equations. We can define the objective function of MPC-GA as: GA provides an efficient means to solve the optimization problem, even if discontinuities in the objective function or constraints are present [37]. Obviously, one format of the objective function can be the same as an objective function that traditional MPC adopts, namely: Similarly, the first term of the objective function represents the error between the predicted value and the target signal. e second term reflects the volatility of control quantities.

Iterative Optimization.
After the candidate solutions are evaluated, the next step is to implement iterative optimization. Firstly, the best members are selected according to their fitness. Subsequently, the next generation is generated through crossover operation. en, a mutation operation is conducted in order to avoid trapping in local minimums [38].
e selection process has the main purpose to select the best candidates among the population. Fitness calculation is defined depending on the objective function for each solution candidate in the current population. In detail, fitness calculation is defined as the reciprocal of objective function because minimization of the objective function corresponds to maximum coincidence. e fitness of ith individual is defined as (19). e selection is usually driven by fitness-ranking evaluation by means of a specific mathematical method.
ere exist many different approaches in the literature, and in this study "Roulette Wheel Selection" method [39] is adopted. According to the method, the probability of being selected is defined as (20), where N represents the population size of the genetic algorithm. In crossover operation, two parent individuals and an intersection point are selected randomly, and the two individuals exchange corresponding segments with each other.
Mutation is implemented as a random change of an optimization variable after the crossover task is completed.
is task allows to better explore the entire search space. By means of selection, crossover, and mutation of genetic operators in natural genetics, a population is generated on behalf of the new solution set. is process is the same as the natural evolution of the population. e young generation population adapts to the environment more than the previous generation. e best individual in the population after decoding has become the approximate optimal solution [40]. After a limited number of iterations, the optimal solution that is satisfactory results is achieved.

Path Tracking by MPC-GA
is section introduces the proposed MPC-GA method to solve the path tracking problem. In the design, the path tracking problem is transformed into an optimization problem, and the MPC-GA method is applied to search for the desired steering angle.

Increment Encoding.
In the initialization stage, each candidate solution of the optimization problem is defined as a sequence of N C discrete values of input variables as: U � u 1 , u 2 , · · · , u i , · · · , u Nc � δ 1 , δ 2 , · · · , δ i , · · · , δ Nc , (21) where Nc is the number of control variables. As the vehicle speed changes slightly in a short period of time, the speed control variable v is considered approximately constant, and only steering angle δ is considered as the control variable.
For every control variable δ i , binary encoding takes a cumulative approach. Specifically, the increment Δδ is considered as the variation from ith control variable to i + 1th control variable, and Δδ is encoded as an 8 bits binary string. Consequently, each individual of GA is expressed as (22).
Correspondingly, the value of each candidate solution is calculated as (23): e increment Δδ reflects the variation of steering angle, and the variation has to satisfy steering angle limitation for safe driving. at is to say, Δδ should be assigned with a small value if the vehicle speed is high, while a larger value can be assigned to Δδ if the vehicle speed is low. By limiting the steering angle according to vehicle speed, the controller not only provides safe driving but also guarantees high model accuracy with the dynamic vehicle model [41]. On the other hand, the physical limitations of the steering system are also considered. If the control quantity δ exceeds the limitation (max steering angle), the decoder will output the max steering angle.
Comparing traditional encoding method that encodes the solution δ i into binary string directly, this increment encoding method removes the possibility that the independent variables can freely vary from −u max to u max . So, the computational complexity of the optimization problem is obviously reduced. On the other hand, this encoding method enables the variations of control variables to satisfy constraint conditions easily.

Nonlinear Prediction.
Each individual is converted to real values of control variables. ey are used to predict the future trajectory of a vehicle. Different from the traditional linear model prediction, MPC-GA is able to deal with both linear model and nonlinear model, since GA is a forward way to heuristically search for the optimal solution. With the given current states and control variables, the vehicle trajectory of every future cycle can be predicted based on the vehicle kinematics model. Considering the nonlinear kinematics model of vehicle after discretization: (1) begin (2) initialization (3) obtain current speed v, current position (x, y), current heading θ, and steering angle δ 0 of last cycle (4) decode the binary coding, and obtain future control variables δ(k|k), δ(k + 1|k), . . ., δ(k + Nc-1|k) ( Mathematical Problems in Engineering 7

5) Assign current state X(k|k) � [x(k|k), y(k|k), θ(k|k)] T � [x, y, θ] T , and define
x(k + 1) � x(k) + Tv cos θ(k), where T is the control cycle. Because the change of speed is small during the predicted period, we regard speed v as a constant that is equal to the current speed. Meanwhile, the less control variables facilitate to reduce the time consumption of the algorithm. Supposing that U(k|k), U(k + 1| k), . . ., U(k + Nc-1|k) represent the control variables, the future states can be obtained using the predictive model as shown in (25). Correspondingly, the predicted vehicle trajectory can be expressed as (26): Output : select the individual whose fitness is the biggest, and output the first control quantity Max generation? or |Y r -Y p |α 0?
Initial solutions : randomly generate initial individuals that are corresponding to the control quantities (δ 1 , δ 2 , ę ę, δ Nc ) Nonlinear prediction : the predicted path Y p is obtained with the current states and given control quantities according to the nonlinear predictive model Fitness calculation : for every individual, fitness is obtained according to the target path and predicted path To summarize, the predicted vehicle trajectory can be obtained with the following steps:

Objective Function.
In order to balance the performance between position deviation and heading deviation, the objective function of MPC-GA is defined as the form of a quadratic equation as follows: where a, b, and c are weighting factors; Δδ(k + i|k) � δ(k + i + 1| k)-δ(k + i|k) is the control increment that represents the change of desired steering angle. e selection of weighting factors is important, and reliance on practical test is often needed. In

Progress of MPC-GA for Path Tracking.
e progress of the MPC-GA-based path tracking control method is shown in Figure 5.
Reference path is input from path planning module. With the given current position, the system chooses the nearest segment of reference path as the target path Y r . rough increment encoding method, the initial generation population is generated randomly, and each individual represents the control increment. e population can be converted to candidate solutions {U i } after the decoding operation. Next, the predicted trajectory Y p of each solution is obtained by substituting the control sequence into the nonlinear predictive model. According to the fitness function, the fitness of each candidate solution is calculated by comparing the predicted path and target path. en, the algorithm enters into iterative optimization, and the iteration will stop within finite steps or when the deviation between the predicted trajectory and target path is less than a small value. After iteration, the best individual is selected, and the individual is decoded. Lastly, the first control quantity δ 1 is output to the actuator.

Simulation and Experiment
is section presents the simulations and on-field test of the proposed control method. In order to evaluate the control method, some different simulation scenarios are demonstrated: (1) tracking ability in straightway road is analyzed when the vehicle departs from the target path; (2) curve road with sinusoidal variation is then applied to test the adaptability of tracking path; (3) effectiveness of the proposed control method is further validated in complex situations such as curve road and circle road. In the experiment, the on-field test is conducted based on Kotei 2.0 autonomous platform.

Simulations.
e first simulation is aimed to validate the deflection rectifying ability. e reference path is set as a straight line, and the initial position of the vehicle is set 2 meters apart from the path, while the heading is the same as reference path. e vehicle speed is set from low speed (20 km/h) to high speed (60 km/h) separately and is assumed to be constant. Simulation results are shown in Figure 6. According to the results, the MPC-GA controller can direct the vehicle to reach the reference path with initial departure. e adjustment process is smooth and safe. After the system is stabilized, the track deviation is less than 0.1 m.
Next, the road is set as a curve that the variation conforms to sinusoidal functions (y � 3.5sin (x/30), y � 3.5sin (x/ 10)), which simulates the lane changing path or obstacle avoidance path. e initial position is set to be near the path. Also, different vehicle speeds are tested in this driving scene. e tracking performance is shown in Figure 7. According to the results, the vehicle perfectly responds to the continuous change of road path. e track deviation is less than 0.1 m most of the time. en, we simulate two complex situations.
e first situation gives a reference path with variation that conforms to function y � x sin (x/30)/10 as shown in Figure 8. In this situation, an autonomous vehicle needs to respond to changing consecutive curves and sharp turns. e initial position of the vehicle is set 2 meters apart from the path. e initial speed of a vehicle is zero, and the target speed is set as 15 km/h. e second situation adopts circles as the reference path as shown in Figure 9. e center coordinates are at the origin coordinates (0 m, 0 m), and the radius is set as 25 m, 50 m, and 100 m respectively. e initial speed of vehicle is zero and runs at target constant speeds according to the circle radius. e vehicle starts at the points 2 meters apart from the circles. e simulation results in Figures 8 and 9 reveal that the MPC-GA-based path tracking control strategy realizes the path tracking for the two complex situations. e displacement error keeps small all the time after a beginning's chattering, and   Lastly, the performance of the MPC-GA method is compared with that of the traditional MPC method and PP control method in similar conditions. e reference path is set as a curve, and the variation conforms to the sinusoidal function (y � 3.5sin (x/30)). e original position is set 0.1 m apart from the reference path. e vehicle speed is set as 40 km/h. e executed paths and desired paths are shown in Figure 10. e tracking error and control quantities of the three methods are shown in Figures 11 and 12.
From the results, we can see that all three methods can drive the vehicle following the reference path. At the beginning, MPC method causes a larger overshoot than MPC-GA method and PP method. After entering the stable stage, the tracking error of MPC-GA method and MPC method is less than that of PP method, and tracking precision of MPC-GA method is no less than that of MPC method.
According to the simulation results, the MPC-GA is able to deal with both simple situations and complex situations. Even in the sharp turn situation, the controller generates a corresponding steering angle and drives the vehicle to follow the preset path. e tracking deviation is less than 0.15 m. Compared with the MPC method and PP control method, the path executed with the MPC-GA method is the closest to the desired path.

Experiment.
In order to examine the feasibility and effectiveness of the proposed MPC-GA method, the on-field test is conducted based on Kotei 2.0 platform that is developed by Wuhan Goyu Intelligent Technology Corporation as shown in Figure 13(a). On-field test is conducted on park road of Wuhan Goyu Intelligent Technology Corporation. e satellite map image of the test field is shown in Figure 13(b), with a total area of about 200 m × 200 m. e park road consists of corners with different turning radius. e road width is 3.6 m approximately. First, we drive the car around the park road to collect GPS data (position in the XY plane) to get the global reference path. en, we start the autonomous system, and the vehicle moves automatically from the start point to the end point with the autonomous system. e travel path is recorded. Figure 14 shows the road map and travel path in the XY plane. e vehicle passes by corner A, corner B, corner C, and corner D successively, and the local enlarged images of the four corners and two straight roads are shown in Figures 15  and 16. e tracking error of the entire process is depicted in Figure 17. Figures 15-17 illustrate the vehicle's performance when it travels from start point to end point. On the straight road, the travel path is almost perfectly consistent with the reference path. When encountering the corners, the vehicle will deviate from the reference path. With the self-adjusting ability of MPC-GA, the vehicle rapidly tracks the reference path again. For the straight road, the average tracking error is less than 0.05 m, while the maximum error is 0.1 m. For the curve road, the average tracking error is less than 0.2 m, while the maximum error is about 0.3 m. e above simulations and experiment indicate that the MPC-GA method has realized the path tracking control for autonomous vehicle with straight road scene and curve road scene. It also shows a good self-adjusting performance when there is a sharp turn. e controller eliminates the tracking error and directs the vehicle to reach the reference path with a small deviation. Meanwhile, the MPC-GA method demonstrates better performance than traditional methods. erefore, the proposed path tracking control method can ensure the vehicle driving in accordance with the reference path.

Conclusion
is study puts forward a path tracking control method for autonomous vehicle. e method combines the traditional MPC and GA to obtain the optimal solution. e proposed MPC-GA method can solve the nonlinear optimization problem without any compromise, and effectively deal with the objective function of any free-format equations. e control strategy is applied in the path tracking problem to implement the steering control. Simulations and on-field tests illustrate the performance of the proposed method. By the MPC-GA method, the autonomous vehicle can track the preset path both on straightway road and curve road at different speed. Compared with traditional MPC method and PP method, the proposed MPC-GA method is of higher accuracy. e control strategy can be considered as an alternative method to solve the path tracking problem of autonomous vehicle. is work needs to be further carried out. Subsequent research will focus on reducing algorithm complexity, in order to improve real-time performance. Currently, the time consumption of the proposed MPC-GA algorithm is almost similar to MPC. Reducing the GA population or decreasing evolution generations can further reduce the time complexity of MPC-GA, but at the same time leads to poor control performance. erefore, trying new attempt and approach to reduce algorithm complexity without decreasing control performance will be our future work.

Data Availability
e data used to support the findings of this study are included within the article.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this study.