# A New Hybrid Model Predictive Controller Design for Adaptive Cruise of Autonomous Electric Vehicles

Authors: Yuanhang Chen; Guodong Feng; Shaofang Wu; Xiaojun Tan
Journal: Journal of Advanced Transportation
 (2021)

---

## Abstract

Autonomous driving is an appealing research topic for integrating advanced intelligent algorithms to transform automotive industries and human commuting. This paper focuses on a hybrid model predictive controller (MPC) design for an adaptive cruise. The driving modes are divided into following and cruising, and the MPC algorithm based on simplified dual neural network (SDNN) and proportional-integral-derivative (PID) based on single neuron (SN) are applied to the following mode and the cruising mode, respectively. SDNN is used to accelerate the solution of the quadratic programming (QP) problem of the proposed MPC algorithm to improve the computation efficiency, while PID based on SN performs well in the nonlinear and time-varying conditions in the ACC system. Moreover, lateral dynamics control is integrated into the designed system to fulfill cruise control in the curved road conditions. Furthermore, to improve the energy efficiency of the electric vehicle, an energy feedback strategy is proposed. The simulation results show that the proposed ACC system is effective on both straight roads and curved roads.


---

## Body

## 1. Introduction

Nowadays, to enhance traffic efficiency, improve driving comfort and energy economy, and ensure driving safety, various advanced automotive electronic control systems have been applied to vehicles on sale. For example, antilock brake system (ABS) and electronic stability program (ESP) have been widely used in passenger vehicles which gradually become standard configuration [1]. In this context, the concept of an advanced driving assistance system (ADAS) is proposed and gradually becomes a hot topic. As a significant component of ADAS, adaptive cruise control (ACC) owns the ability to execute acceleration and brake operations automatically, which can reduce driver’s workloads, prevent traffic accidents, and increase economy efficiency.ACC systems were widely investigated in the literature. Fancher [2] divided driving conditions of the ACC system into six types. In view of the differences of control modes at various working conditions, the author sets different switching rules in different working conditions based on the real vehicle experiments. Behnam [3] proposed to improve the performance of the ACC system by adopting the sliding mode controller. Swarm optimization theory was used to define the self-tuning parameters of the controller, and the sliding mode control was applied to the design of the feedback controller. In the sliding mode control, the sliding variable converged to zero, then the designed ACC controller was applied to the nonlinear vehicle model. The simulation results showed that the proposed control method worked well. Melanes [4] proposed the cooperative adaptive cruise system (CACC). By adding vehicle-mounted wireless communication to provide additional information to expand the range of sensor data and yield better performance, the approach could not only help to reduce traffic accidents, but also improve traffic flow. Bichi [5] proposed the stochastic model predictive control (SMPC). The serial hybrid electric vehicle was taken as the research object and the deterministic dynamic power system model was established. The driver behavior was seen as a dynamic random system that influenced the performance of the vehicle, and the driver behavior model was established to predict the dynamics of the leading vehicle and the power of future request, which improved the performance of powertrain control algorithm.To achieve the prediction of the expected speed and the expected distance, based on the theory of the nonlinear model predictive control (NMPC), Shakouri [6] built the NMPC equation on a linear model corresponding to the operation mode, and ACC switched to cruise control (CC) smoothly. In order to verify the actual effect, specific tests were set up according to different driving scenarios, and, finally, the proposed system was proved to have good adaptability and reliability. Martinez [7] proposed a longitudinal motion control method of an automobile based on the reference model. An external reference model was designed independently for collaborative control of comfort and safety, and a closed-loop control system was designed independently for matching the actual system with the external reference model. Although this method provided consideration to both comfort and safety, the accuracy of the reference model was not satisfactory; the control system was complex; and the real-time control could not be guaranteed. Kim [8] proposed a method of virtual information of the following vehicle and the leading vehicle. Furthermore, he used the linear quadratic algorithm with the weight-varying coefficient to enable the following vehicle to track the leading vehicle smoothly, which had obvious effects on improving the comfort and fuel economy of the ACC system. Clement [9] proposed to design the optimal controller based on the multiobjective Pareto optimization strategy to solve the contradiction between economy and speed. Kim [10] built a driver model and used the real driver data to identify the model parameters through a self-learning algorithm while automatically adjusting the parameters of the controller.On the basis of the second-order kinematics model, adopting the relative speed, the relative distance, and the relative acceleration between the following vehicle and the leading vehicle, Li derived the third-order longitudinal motion model and the performance function in [11]. Compared with the second-order model, the control precision of the third-order model was higher in the control of the relative distance between vehicles. Zhao [12] built an optimized neural network model and trained it on the basis of supervised adaptive dynamic programming (SADP) algorithm. The result showed the proposed ACC system could limit the human behavior closely. Hu [13] constructed the vehicle-following model based on the Markov process and designed a supervised reinforcement learning controller based on the shaping method to realize adaptive cruise control considering the driving habits of different drivers. And the system showed a good control effect in the scene simulation test of following the leading vehicle, starting and stopping, and changing the driver.Pointing at the ACC system in the low-speed range, Milanes [14] presented a comparative study between robust control method and other methods including classic PI control, a new control method called i-PI, fuzzy control, and neural fuzzy control based on expert knowledge to solve the problem of automatic operation of the accelerator pedal and brake pedal under low-speed condition. Kural [15] proposed the ACC system prediction model based on a multiobjective control strategy and applied the hierarchical control structure to conduct real-time optimization considering the minimum tracking error for vehicle control. Kanjee [16] proposed a method to divide the control of cruising and braking into three different parts, namely, cruise control, adaptive cruise control, and braking control in cruising on the basis of the time headway. And in the research model, the operating characteristics of the individual driver could be defaulted, respectively, according to different drivers which made cruise control safer. Vajedi and Azad [17] applied the NMPC technology to the speed control of the ACC system and adopted Pontryagin minimum theory optimization to improve traffic safety and fuel economy.In addition, advanced techniques such as light autobody lightweight design have been applied to reduce the fuel consumption over the past few decades for fuel vehicles, which were advantageous for ACC strategies in fuel vehicles [18–23]. Generally, most available ACC systems are based on fuel vehicles. However, intelligent vehicles can be adapted from electric vehicles (EV) easily as they tend to have better control characteristics and higher economy efficiency. Therefore, it is necessary to do more research on the ACC designed for full-electric vehicles.Conventional ACC systems based on proportional-integral-derivative (PID) are widely used in practice. However, they cannot meet the demand of incorporating the performances of safety, comfort, tracking, and energy economy. Though lots of researchers have studied energy management of fuel vehicles and hybrid vehicles [24], a few conventional ACC systems take battery energy management into consideration in the design of control strategies. In this paper, a neural-network based hybrid MPC is proposed for the adaptive cruise of autonomous electric vehicles. Simplified dual neural network (SDNN) technique is adopted to improve the following control, and PID based on single neuron (SN) is used to optimize cruising process. The proposed control takes the above-mentioned four key factors into a unified performance optimization framework and further formulates the optimization procedure into a quadratic programming (QP) solution with spatiotemporal constraints in the following process.Considering the high real-time requirements for the proposed ACC system in actual application, the computation complexity of the conventional MPC is unsatisfactory due to its rolling optimization. SDNN owns the advantage of occupying fewer resources and the algorithm is convenient to implement, so the SDNN algorithm is used to accelerate the computation of the quadratic programming routine of the Incremental MPC computation, which is helpful for vehicular embedded systems. Moreover, the vehicle dynamics is nonlinear and time-varying, conventional PID controllers cannot achieve the desired control effect in the cruising mode. Theoretically, single neuron can approach any nonlinear function infinitely, which ensures robustness and better performance while cruising, so the PID controller based on SN is designed for the cruising mode in this paper. Meanwhile, regenerative braking is taken into consideration by presenting an energy feedback strategy. Lateral dynamics control is also considered, which is often ignored by conventional ACC systems, so the proposed ACC system can work on the curved road.The remaining parts of this paper are organized as follows: Section2 presents the vehicle dynamical model and the braking strategy. Section 3 focuses on the Incremental MPC controller based on SDNN in the following mode, the PID controller based on SN in the cruising mode, and lateral dynamics control. Illustrative examples are given in Section 4. Finally, Section 5 concludes this paper.


## 2. Model for Vehicle Longitudinal Dynamics and Braking Strategy

### 2.1. Model for Vehicle Longitudinal Dynamics

This paper considers a passenger EV equipped with the ACC system. For the sake of the controller design, assume that (1) there is no lateral movement of the vehicle; (2) the vehicle runs on a straight road and the ground adhesion is sufficient to satisfy the movement of the vehicle; (3) the influence of tire inertia and tire rolling resistance moment is ignored; and (4) vehicle road slope angle isα.The forces exerted on the vehicle while driving is presented in Figure1. Parameters in the vehicle longitudinal dynamics and braking strategy are given in Table 1.Figure 1
Schematic diagram of the forces exerted on the vehicle while driving.Table 1
Parameters in the vehicle longitudinal dynamics and braking strategy.
mWeight of the vehicleadesDesired accelerationCDAerodynamic drag coefficientAAutomotive frontal areagGravity coefficientfCoefficient of rolling resistanceαRoad slope angleδRotational mass conversion coefficientRWheel radiusitTotal transmission ratioηMechanical efficiencyFtMotor driving forceTtdDesired driving torqueTbdDesired braking torqueFbdDesired braking forceTrdDesired regenerative braking torqueTmMaximum braking torque of driving wheelzBraking strengthSOCState of chargev1Speed of the following vehiclepRegenerative braking proportional coefficientThe vehicle longitudinal dynamic model can be expressed as(1)maexp=Ft−121.15CDAv2−mgfcosα−mgsinα−δmdvdt.According to (1), the desired driving torque based on the simplified vehicle longitudinal dynamic model is(2)Ttd=Ritη121.15CDAv2+mgfcosα+sinα+mδaexp.In the situation of braking, the desired braking torque is(3)Tbd=Ritη−maexp−121.15CDAv2−mgf.The ground deceleration of the following vehicle in a range of normal driving speed is shown in Figure2. aexp is the expected acceleration of the following vehicle; av1 is the natural deceleration of the following vehicle at v1. If aexp>av1, the following vehicle accelerates, else it decelerates.Figure 2
Ground deceleration of the following vehicle in a range of normal driving speed.For the electric vehicle model, its powertrain consists of a permanent magnet synchronous motor (PMSM), fixed ratio transmission, differential mechanism, and so on. Moreover, the vehicle is driven by the front wheel. The vehicle powertrain system is presented in Figure3.Figure 3
Schematic diagram of the vehicle powertrain system.


### 2.2. Braking Strategy

There are three kinds of electric vehicle braking in the ACC system: mechanical braking, regenerative braking, and hybrid braking. The ideal braking process of an electric vehicle is the linear change of braking force and the relation between the expected braking force and the braking strength is as(4)Fbd=mzg.Then, whenSOC>0.8, in order to avoid battery overcharge, both front and rear wheels adopt mechanical braking; if SOC≤0.8, the form of braking depends on z [25]. More precisely, given that SOC≤0.8, z<0.1, regenerative braking works only, desired regenerative braking torque can be computed as(5)Trd=Tbd.WhenSOC≤0.8 and 0.1<z<0.7, the hybrid braking works, on the premise of ensuring safety, to increase the braking efficiency and recover braking energy as much as possible, Mamdani fuzzy control algorithm is used for the braking control considering the time variability and nonlinearity of the vehicle. In the hybrid braking, for the fuzzy logic controller, z, SOC, and v1 are chosen as the inputs while p is chosen as the output. The membership function curves of the inputs and output are presented in Figure 4 and parameters of the fuzzy logic controller are presented in Table 2 [26, 27].Figure 4
(a) The braking strength membership function curve. (b) The following-vehicle-speed membership function curve. (c) The membership function curve. (d) The driving wheel regenerative braking proportional coefficient membership function curve.
(a)(b)(c)(d)Table 2
Parameters of the fuzzy logic controller.
ParameterTheoretical domainFuzzy subsetv1Ez = [L, M, H][0, 100]zEz = [L, M, H][0, 1]SOCEsoc = [L, M, H][0, 1]pEp = [L, M, H][0, 1]L, M, H represent low, medium, and high, respectively, in the fuzzy subsets.The basic rules of regenerative braking are presented in Table3 and detailed explanations are as follows:(1)
WhenSOC is large, p is supposed to be small to prevent the battery from overcharging.(2)
WhenSOC is medium (or small), if z is small, p should be large to recycle the braking energy as much as possible; if z is large, there should be a decrease in p to provide sufficient braking force to ensure safety.(3)
When the safety is guaranteed, under the same condition, the largerv1 is, the larger p is, so as to recover braking energy fully; while the safety cannot be guaranteed, the larger v1 is, the smaller the p is to provide sufficient braking force.Table 3
Basic rules of regenerative braking.
v1zSOCp–↑–↓↑––↑Then, the desired regenerative braking torque is expressed as(6)Trd=minpTbd,Tm,where Tm is the maximum braking torque of the driving wheel limited by the motor characteristics and the road adhesion coefficient.The fuzzy rules for the proportional coefficient of regenerative braking are presented in Table4.Table 4
Fuzzy rules for the proportional coefficient of regenerative braking.
SOCzv1pHLMLHLHLHLLLHMMLHMHLHMLLHHMLHHHLHHLLMLHHMLMHMLLLMMMMMMLLMMHMMHHLMHLLMHMLLLMHLLHHLLLLLMMMLMHMLMLLLHMLLHHLLHLLWhenSOC≤0.8, z>0.7, mechanical braking works only to provide enough braking torque [28]. The braking torque distribution method when the front and rear wheels are locked simultaneously under ideal condition is adopted.


## 2.1. Model for Vehicle Longitudinal Dynamics

This paper considers a passenger EV equipped with the ACC system. For the sake of the controller design, assume that (1) there is no lateral movement of the vehicle; (2) the vehicle runs on a straight road and the ground adhesion is sufficient to satisfy the movement of the vehicle; (3) the influence of tire inertia and tire rolling resistance moment is ignored; and (4) vehicle road slope angle isα.The forces exerted on the vehicle while driving is presented in Figure1. Parameters in the vehicle longitudinal dynamics and braking strategy are given in Table 1.Figure 1
Schematic diagram of the forces exerted on the vehicle while driving.Table 1
Parameters in the vehicle longitudinal dynamics and braking strategy.
mWeight of the vehicleadesDesired accelerationCDAerodynamic drag coefficientAAutomotive frontal areagGravity coefficientfCoefficient of rolling resistanceαRoad slope angleδRotational mass conversion coefficientRWheel radiusitTotal transmission ratioηMechanical efficiencyFtMotor driving forceTtdDesired driving torqueTbdDesired braking torqueFbdDesired braking forceTrdDesired regenerative braking torqueTmMaximum braking torque of driving wheelzBraking strengthSOCState of chargev1Speed of the following vehiclepRegenerative braking proportional coefficientThe vehicle longitudinal dynamic model can be expressed as(1)maexp=Ft−121.15CDAv2−mgfcosα−mgsinα−δmdvdt.According to (1), the desired driving torque based on the simplified vehicle longitudinal dynamic model is(2)Ttd=Ritη121.15CDAv2+mgfcosα+sinα+mδaexp.In the situation of braking, the desired braking torque is(3)Tbd=Ritη−maexp−121.15CDAv2−mgf.The ground deceleration of the following vehicle in a range of normal driving speed is shown in Figure2. aexp is the expected acceleration of the following vehicle; av1 is the natural deceleration of the following vehicle at v1. If aexp>av1, the following vehicle accelerates, else it decelerates.Figure 2
Ground deceleration of the following vehicle in a range of normal driving speed.For the electric vehicle model, its powertrain consists of a permanent magnet synchronous motor (PMSM), fixed ratio transmission, differential mechanism, and so on. Moreover, the vehicle is driven by the front wheel. The vehicle powertrain system is presented in Figure3.Figure 3
Schematic diagram of the vehicle powertrain system.


## 2.2. Braking Strategy

There are three kinds of electric vehicle braking in the ACC system: mechanical braking, regenerative braking, and hybrid braking. The ideal braking process of an electric vehicle is the linear change of braking force and the relation between the expected braking force and the braking strength is as(4)Fbd=mzg.Then, whenSOC>0.8, in order to avoid battery overcharge, both front and rear wheels adopt mechanical braking; if SOC≤0.8, the form of braking depends on z [25]. More precisely, given that SOC≤0.8, z<0.1, regenerative braking works only, desired regenerative braking torque can be computed as(5)Trd=Tbd.WhenSOC≤0.8 and 0.1<z<0.7, the hybrid braking works, on the premise of ensuring safety, to increase the braking efficiency and recover braking energy as much as possible, Mamdani fuzzy control algorithm is used for the braking control considering the time variability and nonlinearity of the vehicle. In the hybrid braking, for the fuzzy logic controller, z, SOC, and v1 are chosen as the inputs while p is chosen as the output. The membership function curves of the inputs and output are presented in Figure 4 and parameters of the fuzzy logic controller are presented in Table 2 [26, 27].Figure 4
(a) The braking strength membership function curve. (b) The following-vehicle-speed membership function curve. (c) The membership function curve. (d) The driving wheel regenerative braking proportional coefficient membership function curve.
(a)(b)(c)(d)Table 2
Parameters of the fuzzy logic controller.
ParameterTheoretical domainFuzzy subsetv1Ez = [L, M, H][0, 100]zEz = [L, M, H][0, 1]SOCEsoc = [L, M, H][0, 1]pEp = [L, M, H][0, 1]L, M, H represent low, medium, and high, respectively, in the fuzzy subsets.The basic rules of regenerative braking are presented in Table3 and detailed explanations are as follows:(1)
WhenSOC is large, p is supposed to be small to prevent the battery from overcharging.(2)
WhenSOC is medium (or small), if z is small, p should be large to recycle the braking energy as much as possible; if z is large, there should be a decrease in p to provide sufficient braking force to ensure safety.(3)
When the safety is guaranteed, under the same condition, the largerv1 is, the larger p is, so as to recover braking energy fully; while the safety cannot be guaranteed, the larger v1 is, the smaller the p is to provide sufficient braking force.Table 3
Basic rules of regenerative braking.
v1zSOCp–↑–↓↑––↑Then, the desired regenerative braking torque is expressed as(6)Trd=minpTbd,Tm,where Tm is the maximum braking torque of the driving wheel limited by the motor characteristics and the road adhesion coefficient.The fuzzy rules for the proportional coefficient of regenerative braking are presented in Table4.Table 4
Fuzzy rules for the proportional coefficient of regenerative braking.
SOCzv1pHLMLHLHLHLLLHMMLHMHLHMLLHHMLHHHLHHLLMLHHMLMHMLLLMMMMMMLLMMHMMHHLMHLLMHMLLLMHLLHHLLLLLMMMLMHMLMLLLHMLLHHLLHLLWhenSOC≤0.8, z>0.7, mechanical braking works only to provide enough braking torque [28]. The braking torque distribution method when the front and rear wheels are locked simultaneously under ideal condition is adopted.


## 3. Design of the Hybrid Controller in Longitudinal Dynamics Control and Lateral Dynamics Control

In order to improve driving safety, this paper comprehensively considers the influence of the relative speed, the relative distance between the two vehicles, and the expected distance on the switching strategy. WhenΔd>Δdswitch, vr>vr_switch, the ACC system switches to the cruising mode; otherwise, it switches to the following mode. Δd=d−ddes is the distance error; ddes is the expected distance calculated by the safety distance model; vr=v2−v1.The kinematic relations between the leading vehicle (LV) and the following vehicle (FV) are presented in Figure5. Parameters in the longitudinal dynamics control are given in Table 5. The MPC algorithm based on SDNN and the PID controller based on SN are applied to the following mode and the cruising mode in the longitudinal dynamics control, respectively.Figure 5
Scheme of the kinematic relations between the LV and the FV.Table 5
Parameters in the longitudinal dynamics controller design.
dRelative longitudinal distanceddesDesired longitudinal distancedsafeLongitudinal safety distanceΔdswCritical longitudinal distance errorvrRelative longitudinal speedvr,swCritical relative longitudinal speedv2Longitudinal speed of the following vehiclea1Longitudinal acceleration of the following vehiclea2Longitudinal acceleration of the leading vehiclearRelative longitudinal accelerationΔrminLow bound of longitudinal distance errorΔrmaxUpper bound of longitudinal distance errorvrminLow bound of relative longitudinal speed errorvrmaxUpper bound of relative longitudinal speed errorarminLow bound of longitudinal accelerationarmaxUpper bound of longitudinal accelerationvcdDesired cruising speedTsSampling timeNpPrediction time domainNcControl time domainεRelaxation factorρUndetermined coefficientNxNumber of the state variablesNuNumber of the control variablesΔrminLow bound of difference of longitudinal acceleration between two adjacent sampling instantsΔrmaxUpper bound of difference of longitudinal acceleration between two adjacent sampling instants


### 3.1. Incremental MPC Controller Based on SDNN in the Following Mode in Longitudinal Dynamics Control

When the ACC system switches into the following mode, the Incremental MPC controller based on SDNN works. The MPC model is derived from the kinematic relation. In order to establish a real-time system,a1 is selected as the control variable, while d, vr, and v1 are selected as the state variables. The control variable and the state variable vector are as follows:(7)uk=a1k,xk=dk,vrk,v1kT,where uk is the control variable and xk represents the state variables.To simplify the prediction model, the acceleration of the LV is assumed to be 0 [29, 30]. Then,(8)ark=−a1k.Then, the simplified kinematics model is expressed as(9)v1k+1=v1k+a1kTs,dk+1=dk+vrkTs−12a1kTs2,vrk+1=vrk−a1kTs.To prevent the acceleration from changing dramatically and improve the stability of the ACC system,Δa1, the difference of acceleration between two adjacent sampling instants is selected as the nominal control variable of the system instead of the raw acceleration of the FV. It is expressed by the difference between the acceleration at the current sampling instant and the acceleration at the previous sampling instant as(10)Δuk=uk−uk−1.Then, (7) is rewritten as(11)u′k=uk−uk−1,x′k=dk,vrk,v1k,uk−1.The Incremental predictive equation of the state is(12)x′k+1|k=Ax′k+Bu′k+Week,y′k=Cx′k,where(13)A=1Ts0−12Ts2010−Ts001Ts0001;B=−12Ts2−TsTs1;C=diag1,1,1,1.We=diag0.025,0.025,0.025,0.025 and ek=x′k−x′k|k−1 is the prediction error.Then, the predicted state equation of the system can be expressed as(14)Y′k=ψx′k+θΔUk+Wreek,where(15)Y′k=y′k+1|k⋮y′k+Np|k;ψ=CA⋮CANp;θ=CB⋯00⋮⋱0⋮CANc−1B⋯⋯CB⋮⋮CANp−1B⋯⋯∑i=1Nc−Np+1CAi−1B;ΔUk=Δuk⋮Δuk+Nc−1;Wre=CWe⋮CANp−1We.In practical application, overall performances of tracking, safety, comfort, and energy economy should be taken into account to design an effective control strategy. Furthermore, the input, state, and output variables of the system should be constrained in a proper range to ensure that the ACC system normally runs. In the following mode, the ACC system should realize the function of following the LV on the premise of ensuring safety, improving comfort, and achieving better performances of energy economy and tracking. Therefore, the specific optimization goal is to reduce the tracking error, constrain the amplitude ofa1 and Δa1, and restrain excessive oscillation. Hence, the following factors should be taken into account.


#### 3.1.1. Energy Economy

The rapid acceleration and deceleration of the vehicle would increase the energy consumption, so it is necessary to limit the amplitude ofa1 and Δa1. Therefore, this paper takes a1 and Δa1 as quantitative characteristic parameters of the economic indicator.Define the economic indicator as(16)JEk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2,where wa1 is the weight coefficient of a1 and wΔa1 is the weight coefficient of Δa1, i=1,2,…,Np.


#### 3.1.2. Tracking

The ACC system is supposed to be able to control the FV to track the LV steadily in the following mode. On the one hand, the ACC system would control the relative distance between the two vehicles to approach the expected distance calculated by the safety distance model. On the other hand, it would also control the speed of the FV to approach the speed of the LV. While the LV and the FV are in a relatively stable driving state, the relative speed approaches 0. This paper takesΔd and vr between two vehicles as quantitative characteristic parameters of the tracking indicator.Define the tracking indicator as(17)JFk+i|k=wΔddk+i|k−ddesk+i|k2+wvrvrk+i|k2,and the constraints are(18)Δdmin≤dk+i|k−ddesk+i|k≤Δdmax,vrmin≤vrk+i|k≤vrmax,where wΔd is the weight coefficient of Δd and wvr is the weight coefficient of vr, i=1,2,…,Np.


#### 3.1.3. Safety

To ensure safety of driving, the ACC system is expected to prevent rear-end collisions, so it is necessary to keep the relative longitudinal distance between the LV and the FV larger than the minimum longitudinal safety distance calculated by the safety distance model. Hence,Δd between the LV and the FV is used as the quantitative characteristic parameter of the safety indicator.The safety indicator is expressed as(19)dk+i|k>dsafek+i|k,where i=1,2,…,Np.


#### 3.1.4. Comfort

The comfort requirements of the ACC system can be summarized as follows:(1)
In order to avoid the frequent insertion of vehicles in adjacent lanes into the driving lane of the FV and keep enough safety distance from the LV to prevent discomfort to the driver, the relative distance and relative speed between the LV and the FV are supposed to meet the driver’s expectation.(2)
The FV should keep the uniform speed as long as possible to avoid overlarge acceleration or deceleration.(3)
a1 and Δa1 of the FV should be within an appropriate range, so as to avoid causing discomfort to the occupants.(1) and (2) have been reflected in the tracking indicator and the economic indicator, respectively. So, this paper takesa1 and Δa1 as quantitative characteristic parameters of the comfort indicator and limits the range of them.The comfort indicator is formulated as(20)amin≤a1k+i|k≤amax,Δamin≤Δa1k+i|k≤Δamax,where i=1,2,…,Np.


#### 3.1.5. Comprehensive Performance Function

The above indicators only consider a single factor respectively, and a comprehensive performance function is needed to evaluate the overall performance of the ACC system. Therefore, the combinations of the economic indicator, the tracking indicator, the safety indicator, and the comfort indicator are taken as the comprehensive performance function. And each constraint in the individual indicator is taken as the constraint of the comprehensive performance function. Then, the comprehensive performance function is expressed as(21)Jk+i|k=JEk+i|k+JFk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2+wddk+i|k−ddesk+i|k2+wvrvrk+i|k2.Puty′k+i|k=dk+i|k,vrk+i|k,v1k+i|k,uk+i−1T into (21) and replace a1, Δa1 with u and Δu. Considering the prediction time domain is Np, (21) is transferred into(22)Jk+i|k=y′k+i|k−y′refk+i|kTwyy′k+i|k−y′refk+i|k+wΔahΔuk+i−12,where(23)wy=wd0000wvr000000000wa1;y′refk+i|k=ddesk+i|k0v2k+i|k0;i=1,2,…,Np.In the prediction time domain, the prediction equation of the comprehensive performance function is as follows:(24)J=∑i=1NpJk+i|k=∑i=1NpJEk+i|k+∑i=1NpJFk+i|k=∑i=1Npy′k+i|k−yref′k+i|kTwyy′k+i|k−yref′k+i|k+wΔa1Δuk+i−12=∑y′−yref′Q2+∑ΔuR2=Y′−Yref′TQY′−Yref′+ΔUTRΔU,where(25)Q=INp⊗wy;R=INp⊗wΔa1;Y′=y′k+1⋮y′k+Np;Yref′=yref′k+1⋮yref′k+Np;ΔU=Δuk⋮Δuk+Nc−1.The predictive optimization problem can be summarized as(26)minJY,ΔUs.t.maxdsafe,Δdmin+ddes≤dk+i|k≤Δdmax+ddes,vrmin≤vrk+i|k≤vrmax,umin≤uk+i|k≤umax,Δumin≤Δuk+j|k≤Δumax,where i=1,2,…,Np and j=0,1,2,…,Nc.Transform (26) into a QP problem for solving as(27)J′=∑y′−yref′Q2+∑ΔuR2+ρε2=ψx′k−Yref′+θΔU+WreekTQψx′k−Yref′+θΔU+Wreek+ΔUTRΔU+ρε2=⋯=ΔUTεθTQθ+R00ρΔUε+2E1T0ΔUε=12ζTHζ+fTζ,where(28)E1=ψx′k−Yref′+WReek;H=2θTQθ+2R002ρ;fT=2E1T0;ζ=ΔUε.The feasibility of MPC is enhanced by softening nonsafety related hard constraints. The predictive optimization problem is transformed to the standard quadratic form for the solution by the Quadprog function. However, its real-time performance is poor and not applicable to the actual embedded system. So, this paper uses SDNN to accelerate the solution of the QP problem which is an innovation compared to other research studies.The state equation of SDNN is(29)ξdzdt=−EDz+ED−Igz−Es.The principle of SDNN is presented in Figure6. zi is the neuron, gz is a nonlinear activation function, ED−I is the symmetric weight matrix, and SDNN can be seen as a monolayer periodic neural network model. gz=gz1,gz2,gz3,…,gzpT is a piecewise linear function, which is expressed as(30)gzi=lizi≤li,zili<zi<li,hizi≥hi,z=ExQP−v,xQP=Dv−s,where v is the state variable and ξ (>0) is the scaling factor that regulates the convergence rate of the SDNN model.Figure 6
Principle block diagram of SDNN [31].Compared with the conventional numerical solution, the calculation in SDNN does not involve matrix inversion, decomposition, and other complex operations. So, the computational complexity to solve QP by SDNN is lower. Furthermore, SDNN occupies fewer resources and the algorithm is more convenient to implement. And Liu [31] has proved that SDNN globally convergences to the optimal solution of the QP problem in the form of (27). In order to solve the QP problem by computer, SDNN has to be discretized. This paper uses the Euler method to discrete (29); then,(31)zk+1=1ξTstep−EDzk+ED−Igzk−Es+zk.Considering the QP problem in (27), the corresponding relationship between the discrete SDNN parameters and quadratic programming parameters can be expressed as(32)s.t.xQPi=ΔUik,W=H,E=A_INc×Nu×Nc×NuONu×Nc×1θNx×Np×Nc×NuONx×Np×1INc×Nu×Nc×NuONu×Nc×1O1×Nu×Nc1,c=f,l=UminT−Uk−1TYmin′−ψxk−WreekTΔUminT0T,h=UmaxT−Uk−1TYmax′−ψxk−WreekTΔUmaxTεT,where(33)A_INc×Nu×Nc×Nu=00⋯010⋱01⋮⋮01111Nc×Nu×Nc×Nu;ymin′=maxdsafe,Δdmin+ddesvrminv2−vrmaxumin;ymax′=Δdmax+ddesvrmaxv2−vrminumax;Uk−1=uk−1⋮uk−1Nc×1;Umin=umin⋮uminNc×1;Umax=umax⋮umaxNc×1;ΔUmin=Δumin⋮ΔuminNc×1;ΔUmax=Δumax⋮ΔumaxNc×1;Ymin′=ymin′⋮ymin′Np×1;Ymax′=ymax′⋮ymax′Np×1;D=W−1ET;s=W−1c.The implementation of the SDNN algorithm is given in Algorithm1.Algorithm 1:Algorithm implementation of SDNN.
(1)
k=0. Determine whether to initialize; if yes, step to 3; if no, step 2;(2)
Update the status variables and the output variables, feedback correction;(3)
Set the iteration instanti=1 of discrete SDNN iteration to solve QP;(4)
Discrete SDNN iterates to solve the QP problem;(a)
CalculateΔUik of the current iteration instant according to discrete SDNN model;(b)
Calculate the relative error;error=ΔUik−ΔUi−1k/ΔUi−1k,ΔUi−1k≠0,ΔUik−ΔUi−1k,ΔUi−1k=0WhereΔU0k=Dv0−s;(c)
Determine whethererror≤εQP, if yes, step to 5; if no, step to d);(d)
i=i+1, step to a);(5)
Get instant control incrementΔuk, calculate the actual control variable uk.(6)
k=k+1, step to 2


### 3.2. PID Controller Based on Single Neuron in the Cruising Mode in Longitudinal Dynamics Control

When the ACC system switches into the cruising mode, the PID controller based on SN takes effect. Theoretically, single neuron can approach any nonlinear function infinitely, which ensures robustness and better performance while cruising, so the PID controller based on SN is designed for the cruising mode in this paper.Desired cruising speedsvcd and v1 are seen as yrk and yk in Figure 7, and they are taken as the inputs, while uk is set to be a1; x1, x2, x3 are the state variables required for neuronal learning control and taken as outputs of the converter; the vehicle model is seen as the plant. The adaptive PID controller based on SN designed in this paper is based on the Incremental PID, and the equations are(34)x1=yrk−yk=ek,x2=ek−ek−1,x3=ek−2ek−1+ek−2.Figure 7
Structure block diagram of the PID controller based on SN.The structure of the PID controller based on SN is presented in Figure7. zk=yrk−yk=ek is the performance index; K>0 is the proportional coefficient of neurons. The equation of control signal uk is(35)uk=uk−1+K∑i=13wikxik,where wik is the corresponding weight coefficient of xik.Then, the single-neuron-based PID control algorithm is as follows:(36)Δek=ek−ek−1,w1k=w1k−1+ηIzkukek+Δek,w2k=w2k−1+ηPzkukek+Δek,w3k=w3k−1+ηDzkukek+Δek,wik=wjk∑j=13wjk,uk=uk−1+K∑i=13wikxik,where ηI, ηP, and ηD are the learning rates of the integration, proportion, and differentiation, respectively.


### 3.3. Lateral Dynamics Control

Most ACC systems in the literature are designed for longitudinal dynamics control and ignore lateral dynamics control; therefore, they cannot work on the curved road. In contrast, one contribution of this paper is taking lateral dynamics control into consideration; hence, the proposed ACC system can work on the curved road.On the basis of (9) of the longitudinal kinematic model, we combine it with lateral dynamics control in 3-DoF vehicle model as shown in Figure 8. Parameters in the lateral dynamics control are given in Table 6.Figure 8
3-DoF vehicle model.Table 6
Parameters in the lateral dynamics controller design.
y˙Lateral velocity of vehicle in the body-fixed coordinate systemφ˙Yaw rate of vehicleXAbscissa ofC.G. of vehicleIzMoment of inertia around the vertical axis throughC.G.lrDistance from point B to pointC.G.CcrLateral stiffness coefficients of rear tiresClrLateral stiffness coefficients of front tiresΔumax′Upper bound of difference of steering angle between two adjacent sampling instantsYmaxUpper bound of lateral motionφmaxUpper bound of lateral motionumin′Lower bound of steering angleψAngle fromx-axis to longitudinal axis of vehicle bodyYOrdinate ofC.G. of vehicleδfFront steering anglelfDistance from point A to pointC.G.CcfLateral stiffness coefficients of front tiresClfLongitudinal stiffness coefficients of front tiresΔumin′Low bound of difference of steering angle between two adjacent sampling instantsYminLow bound of lateral motionφminLow bound of lateral motionumax′Upper bound of steering angleIn the lateral dynamics control, the nonlinear dynamics model is formed asξ˙dynt=fdynξ˙dyn,u˙dyn. The state vector is ξdyn=y˙,x˙,φ,φ˙,Y,XT;udyn=δf is chosen as the control variable [32]. y˙,x˙ are vy and vx in Figure 8, respectively, and vx is computed in the longitudinal dynamics control. Then, the nonlinear dynamic model can be linearized as(37)ξ˙dynt=Adyntξdynt+Bdyntudynt,where(38)Βdynt=∂fdyn∂udynt|ξt,ut=2Ccfm,2Ccf2δf,t−1−y˙t+lfφ˙t/x˙tm,0,2lfCcfm,0,0;Αdynt=∂fdyn∂ξdyn|ξt,ut=−2Ccf+Ccrmx˙t∂fy˙∂x˙0−x˙t+2lrCcr−lfCcfmx˙t00φ˙−2Ccfδf,t−1mx˙t∂fx˙∂x˙0y˙t−2lrCcfδf,t−1mx˙t000001002lrCcr−lfCcfIzx˙t∂fφ∂x˙0−2lf2Ccf+lr2CcrIzx˙t00cosφtsinφtx˙tcosφt−y˙tsinφt000−sinφtcosφt−y˙tcosφt−x˙tsinφt000;∂fy˙∂x˙=2Ccfy˙t+lfφ˙t+2Ccry˙t−lrφ˙tmx˙t2−φ˙t;∂fx˙∂x˙=2Ccfδf,t−1y˙t+lfφ˙tmx˙t2;∂fφ˙∂x˙=2Ccflfy˙t+lfφ˙t−2Ccrlry˙t−lrφ˙tIzx˙t2.Then, (37) is discretized by the first-order Euler difference method, and the discrete state space is expressed as(39)ξdynk+1=A˜dynkξdynk+B˜dynkudynk,where A˜dynk=I+TsAdynt and B˜dynk=TsB˜dynt.Then, the constraints of lateral motion are as follows:(40)φmin≤φ≤φmax,Ymin≤Y≤Ymax.In the prediction time domain, the prediction equation of the performance function of lateral motion is(41)J=∑i=1Npηdynk+i|k−ηdyn,refk+i|kQ12+∑i=1Ncudynk+i|kR12+ρε2,where ηdyn=0,0,1,0,1,0⋅ξdyn=φ,Y.The predictive optimization problem can be summarized as(42)min∑i=1Npηdynk+i|k−ηdyn,refk+i|kQ12+∑i=1Ncudynk+i|kR12+ρε2,s.t.umin≤Δuk+i|k≤umax,Δumin′≤uk+i|k−uk+i−1|k≤Δumin′,Ymin≤Yk+i|k≤Ymax,φmin≤φk+i|k≤φmax,where Q1=INp⊗20000010000,R1=5×105×INc, andηdyn,ref is the reference of ηdyn, i=0,1,2,…,Np.Finally, by solving problem (42) with SDNN, obtain the control variable δf at the current moment and send it to the vehicle model.The detailed flowchart of the proposed ACC system is presented in Figure9.Figure 9
Flowchart of the proposed ACC system.


## 3.1. Incremental MPC Controller Based on SDNN in the Following Mode in Longitudinal Dynamics Control

When the ACC system switches into the following mode, the Incremental MPC controller based on SDNN works. The MPC model is derived from the kinematic relation. In order to establish a real-time system,a1 is selected as the control variable, while d, vr, and v1 are selected as the state variables. The control variable and the state variable vector are as follows:(7)uk=a1k,xk=dk,vrk,v1kT,where uk is the control variable and xk represents the state variables.To simplify the prediction model, the acceleration of the LV is assumed to be 0 [29, 30]. Then,(8)ark=−a1k.Then, the simplified kinematics model is expressed as(9)v1k+1=v1k+a1kTs,dk+1=dk+vrkTs−12a1kTs2,vrk+1=vrk−a1kTs.To prevent the acceleration from changing dramatically and improve the stability of the ACC system,Δa1, the difference of acceleration between two adjacent sampling instants is selected as the nominal control variable of the system instead of the raw acceleration of the FV. It is expressed by the difference between the acceleration at the current sampling instant and the acceleration at the previous sampling instant as(10)Δuk=uk−uk−1.Then, (7) is rewritten as(11)u′k=uk−uk−1,x′k=dk,vrk,v1k,uk−1.The Incremental predictive equation of the state is(12)x′k+1|k=Ax′k+Bu′k+Week,y′k=Cx′k,where(13)A=1Ts0−12Ts2010−Ts001Ts0001;B=−12Ts2−TsTs1;C=diag1,1,1,1.We=diag0.025,0.025,0.025,0.025 and ek=x′k−x′k|k−1 is the prediction error.Then, the predicted state equation of the system can be expressed as(14)Y′k=ψx′k+θΔUk+Wreek,where(15)Y′k=y′k+1|k⋮y′k+Np|k;ψ=CA⋮CANp;θ=CB⋯00⋮⋱0⋮CANc−1B⋯⋯CB⋮⋮CANp−1B⋯⋯∑i=1Nc−Np+1CAi−1B;ΔUk=Δuk⋮Δuk+Nc−1;Wre=CWe⋮CANp−1We.In practical application, overall performances of tracking, safety, comfort, and energy economy should be taken into account to design an effective control strategy. Furthermore, the input, state, and output variables of the system should be constrained in a proper range to ensure that the ACC system normally runs. In the following mode, the ACC system should realize the function of following the LV on the premise of ensuring safety, improving comfort, and achieving better performances of energy economy and tracking. Therefore, the specific optimization goal is to reduce the tracking error, constrain the amplitude ofa1 and Δa1, and restrain excessive oscillation. Hence, the following factors should be taken into account.


### 3.1.1. Energy Economy

The rapid acceleration and deceleration of the vehicle would increase the energy consumption, so it is necessary to limit the amplitude ofa1 and Δa1. Therefore, this paper takes a1 and Δa1 as quantitative characteristic parameters of the economic indicator.Define the economic indicator as(16)JEk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2,where wa1 is the weight coefficient of a1 and wΔa1 is the weight coefficient of Δa1, i=1,2,…,Np.


### 3.1.2. Tracking

The ACC system is supposed to be able to control the FV to track the LV steadily in the following mode. On the one hand, the ACC system would control the relative distance between the two vehicles to approach the expected distance calculated by the safety distance model. On the other hand, it would also control the speed of the FV to approach the speed of the LV. While the LV and the FV are in a relatively stable driving state, the relative speed approaches 0. This paper takesΔd and vr between two vehicles as quantitative characteristic parameters of the tracking indicator.Define the tracking indicator as(17)JFk+i|k=wΔddk+i|k−ddesk+i|k2+wvrvrk+i|k2,and the constraints are(18)Δdmin≤dk+i|k−ddesk+i|k≤Δdmax,vrmin≤vrk+i|k≤vrmax,where wΔd is the weight coefficient of Δd and wvr is the weight coefficient of vr, i=1,2,…,Np.


### 3.1.3. Safety

To ensure safety of driving, the ACC system is expected to prevent rear-end collisions, so it is necessary to keep the relative longitudinal distance between the LV and the FV larger than the minimum longitudinal safety distance calculated by the safety distance model. Hence,Δd between the LV and the FV is used as the quantitative characteristic parameter of the safety indicator.The safety indicator is expressed as(19)dk+i|k>dsafek+i|k,where i=1,2,…,Np.


### 3.1.4. Comfort

The comfort requirements of the ACC system can be summarized as follows:(1)
In order to avoid the frequent insertion of vehicles in adjacent lanes into the driving lane of the FV and keep enough safety distance from the LV to prevent discomfort to the driver, the relative distance and relative speed between the LV and the FV are supposed to meet the driver’s expectation.(2)
The FV should keep the uniform speed as long as possible to avoid overlarge acceleration or deceleration.(3)
a1 and Δa1 of the FV should be within an appropriate range, so as to avoid causing discomfort to the occupants.(1) and (2) have been reflected in the tracking indicator and the economic indicator, respectively. So, this paper takesa1 and Δa1 as quantitative characteristic parameters of the comfort indicator and limits the range of them.The comfort indicator is formulated as(20)amin≤a1k+i|k≤amax,Δamin≤Δa1k+i|k≤Δamax,where i=1,2,…,Np.


### 3.1.5. Comprehensive Performance Function

The above indicators only consider a single factor respectively, and a comprehensive performance function is needed to evaluate the overall performance of the ACC system. Therefore, the combinations of the economic indicator, the tracking indicator, the safety indicator, and the comfort indicator are taken as the comprehensive performance function. And each constraint in the individual indicator is taken as the constraint of the comprehensive performance function. Then, the comprehensive performance function is expressed as(21)Jk+i|k=JEk+i|k+JFk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2+wddk+i|k−ddesk+i|k2+wvrvrk+i|k2.Puty′k+i|k=dk+i|k,vrk+i|k,v1k+i|k,uk+i−1T into (21) and replace a1, Δa1 with u and Δu. Considering the prediction time domain is Np, (21) is transferred into(22)Jk+i|k=y′k+i|k−y′refk+i|kTwyy′k+i|k−y′refk+i|k+wΔahΔuk+i−12,where(23)wy=wd0000wvr000000000wa1;y′refk+i|k=ddesk+i|k0v2k+i|k0;i=1,2,…,Np.In the prediction time domain, the prediction equation of the comprehensive performance function is as follows:(24)J=∑i=1NpJk+i|k=∑i=1NpJEk+i|k+∑i=1NpJFk+i|k=∑i=1Npy′k+i|k−yref′k+i|kTwyy′k+i|k−yref′k+i|k+wΔa1Δuk+i−12=∑y′−yref′Q2+∑ΔuR2=Y′−Yref′TQY′−Yref′+ΔUTRΔU,where(25)Q=INp⊗wy;R=INp⊗wΔa1;Y′=y′k+1⋮y′k+Np;Yref′=yref′k+1⋮yref′k+Np;ΔU=Δuk⋮Δuk+Nc−1.The predictive optimization problem can be summarized as(26)minJY,ΔUs.t.maxdsafe,Δdmin+ddes≤dk+i|k≤Δdmax+ddes,vrmin≤vrk+i|k≤vrmax,umin≤uk+i|k≤umax,Δumin≤Δuk+j|k≤Δumax,where i=1,2,…,Np and j=0,1,2,…,Nc.Transform (26) into a QP problem for solving as(27)J′=∑y′−yref′Q2+∑ΔuR2+ρε2=ψx′k−Yref′+θΔU+WreekTQψx′k−Yref′+θΔU+Wreek+ΔUTRΔU+ρε2=⋯=ΔUTεθTQθ+R00ρΔUε+2E1T0ΔUε=12ζTHζ+fTζ,where(28)E1=ψx′k−Yref′+WReek;H=2θTQθ+2R002ρ;fT=2E1T0;ζ=ΔUε.The feasibility of MPC is enhanced by softening nonsafety related hard constraints. The predictive optimization problem is transformed to the standard quadratic form for the solution by the Quadprog function. However, its real-time performance is poor and not applicable to the actual embedded system. So, this paper uses SDNN to accelerate the solution of the QP problem which is an innovation compared to other research studies.The state equation of SDNN is(29)ξdzdt=−EDz+ED−Igz−Es.The principle of SDNN is presented in Figure6. zi is the neuron, gz is a nonlinear activation function, ED−I is the symmetric weight matrix, and SDNN can be seen as a monolayer periodic neural network model. gz=gz1,gz2,gz3,…,gzpT is a piecewise linear function, which is expressed as(30)gzi=lizi≤li,zili<zi<li,hizi≥hi,z=ExQP−v,xQP=Dv−s,where v is the state variable and ξ (>0) is the scaling factor that regulates the convergence rate of the SDNN model.Figure 6
Principle block diagram of SDNN [31].Compared with the conventional numerical solution, the calculation in SDNN does not involve matrix inversion, decomposition, and other complex operations. So, the computational complexity to solve QP by SDNN is lower. Furthermore, SDNN occupies fewer resources and the algorithm is more convenient to implement. And Liu [31] has proved that SDNN globally convergences to the optimal solution of the QP problem in the form of (27). In order to solve the QP problem by computer, SDNN has to be discretized. This paper uses the Euler method to discrete (29); then,(31)zk+1=1ξTstep−EDzk+ED−Igzk−Es+zk.Considering the QP problem in (27), the corresponding relationship between the discrete SDNN parameters and quadratic programming parameters can be expressed as(32)s.t.xQPi=ΔUik,W=H,E=A_INc×Nu×Nc×NuONu×Nc×1θNx×Np×Nc×NuONx×Np×1INc×Nu×Nc×NuONu×Nc×1O1×Nu×Nc1,c=f,l=UminT−Uk−1TYmin′−ψxk−WreekTΔUminT0T,h=UmaxT−Uk−1TYmax′−ψxk−WreekTΔUmaxTεT,where(33)A_INc×Nu×Nc×Nu=00⋯010⋱01⋮⋮01111Nc×Nu×Nc×Nu;ymin′=maxdsafe,Δdmin+ddesvrminv2−vrmaxumin;ymax′=Δdmax+ddesvrmaxv2−vrminumax;Uk−1=uk−1⋮uk−1Nc×1;Umin=umin⋮uminNc×1;Umax=umax⋮umaxNc×1;ΔUmin=Δumin⋮ΔuminNc×1;ΔUmax=Δumax⋮ΔumaxNc×1;Ymin′=ymin′⋮ymin′Np×1;Ymax′=ymax′⋮ymax′Np×1;D=W−1ET;s=W−1c.The implementation of the SDNN algorithm is given in Algorithm1.Algorithm 1:Algorithm implementation of SDNN.
(1)
k=0. Determine whether to initialize; if yes, step to 3; if no, step 2;(2)
Update the status variables and the output variables, feedback correction;(3)
Set the iteration instanti=1 of discrete SDNN iteration to solve QP;(4)
Discrete SDNN iterates to solve the QP problem;(a)
CalculateΔUik of the current iteration instant according to discrete SDNN model;(b)
Calculate the relative error;error=ΔUik−ΔUi−1k/ΔUi−1k,ΔUi−1k≠0,ΔUik−ΔUi−1k,ΔUi−1k=0WhereΔU0k=Dv0−s;(c)
Determine whethererror≤εQP, if yes, step to 5; if no, step to d);(d)
i=i+1, step to a);(5)
Get instant control incrementΔuk, calculate the actual control variable uk.(6)
k=k+1, step to 2


## 3.1.1. Energy Economy

The rapid acceleration and deceleration of the vehicle would increase the energy consumption, so it is necessary to limit the amplitude ofa1 and Δa1. Therefore, this paper takes a1 and Δa1 as quantitative characteristic parameters of the economic indicator.Define the economic indicator as(16)JEk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2,where wa1 is the weight coefficient of a1 and wΔa1 is the weight coefficient of Δa1, i=1,2,…,Np.


## 3.1.2. Tracking

The ACC system is supposed to be able to control the FV to track the LV steadily in the following mode. On the one hand, the ACC system would control the relative distance between the two vehicles to approach the expected distance calculated by the safety distance model. On the other hand, it would also control the speed of the FV to approach the speed of the LV. While the LV and the FV are in a relatively stable driving state, the relative speed approaches 0. This paper takesΔd and vr between two vehicles as quantitative characteristic parameters of the tracking indicator.Define the tracking indicator as(17)JFk+i|k=wΔddk+i|k−ddesk+i|k2+wvrvrk+i|k2,and the constraints are(18)Δdmin≤dk+i|k−ddesk+i|k≤Δdmax,vrmin≤vrk+i|k≤vrmax,where wΔd is the weight coefficient of Δd and wvr is the weight coefficient of vr, i=1,2,…,Np.


## 3.1.3. Safety

To ensure safety of driving, the ACC system is expected to prevent rear-end collisions, so it is necessary to keep the relative longitudinal distance between the LV and the FV larger than the minimum longitudinal safety distance calculated by the safety distance model. Hence,Δd between the LV and the FV is used as the quantitative characteristic parameter of the safety indicator.The safety indicator is expressed as(19)dk+i|k>dsafek+i|k,where i=1,2,…,Np.


## 3.1.4. Comfort

The comfort requirements of the ACC system can be summarized as follows:(1)
In order to avoid the frequent insertion of vehicles in adjacent lanes into the driving lane of the FV and keep enough safety distance from the LV to prevent discomfort to the driver, the relative distance and relative speed between the LV and the FV are supposed to meet the driver’s expectation.(2)
The FV should keep the uniform speed as long as possible to avoid overlarge acceleration or deceleration.(3)
a1 and Δa1 of the FV should be within an appropriate range, so as to avoid causing discomfort to the occupants.(1) and (2) have been reflected in the tracking indicator and the economic indicator, respectively. So, this paper takesa1 and Δa1 as quantitative characteristic parameters of the comfort indicator and limits the range of them.The comfort indicator is formulated as(20)amin≤a1k+i|k≤amax,Δamin≤Δa1k+i|k≤Δamax,where i=1,2,…,Np.


## 3.1.5. Comprehensive Performance Function

The above indicators only consider a single factor respectively, and a comprehensive performance function is needed to evaluate the overall performance of the ACC system. Therefore, the combinations of the economic indicator, the tracking indicator, the safety indicator, and the comfort indicator are taken as the comprehensive performance function. And each constraint in the individual indicator is taken as the constraint of the comprehensive performance function. Then, the comprehensive performance function is expressed as(21)Jk+i|k=JEk+i|k+JFk+i|k=wa1a1k+i|k2+wΔa1Δa1k+i|k2+wddk+i|k−ddesk+i|k2+wvrvrk+i|k2.Puty′k+i|k=dk+i|k,vrk+i|k,v1k+i|k,uk+i−1T into (21) and replace a1, Δa1 with u and Δu. Considering the prediction time domain is Np, (21) is transferred into(22)Jk+i|k=y′k+i|k−y′refk+i|kTwyy′k+i|k−y′refk+i|k+wΔahΔuk+i−12,where(23)wy=wd0000wvr000000000wa1;y′refk+i|k=ddesk+i|k0v2k+i|k0;i=1,2,…,Np.In the prediction time domain, the prediction equation of the comprehensive performance function is as follows:(24)J=∑i=1NpJk+i|k=∑i=1NpJEk+i|k+∑i=1NpJFk+i|k=∑i=1Npy′k+i|k−yref′k+i|kTwyy′k+i|k−yref′k+i|k+wΔa1Δuk+i−12=∑y′−yref′Q2+∑ΔuR2=Y′−Yref′TQY′−Yref′+ΔUTRΔU,where(25)Q=INp⊗wy;R=INp⊗wΔa1;Y′=y′k+1⋮y′k+Np;Yref′=yref′k+1⋮yref′k+Np;ΔU=Δuk⋮Δuk+Nc−1.The predictive optimization problem can be summarized as(26)minJY,ΔUs.t.maxdsafe,Δdmin+ddes≤dk+i|k≤Δdmax+ddes,vrmin≤vrk+i|k≤vrmax,umin≤uk+i|k≤umax,Δumin≤Δuk+j|k≤Δumax,where i=1,2,…,Np and j=0,1,2,…,Nc.Transform (26) into a QP problem for solving as(27)J′=∑y′−yref′Q2+∑ΔuR2+ρε2=ψx′k−Yref′+θΔU+WreekTQψx′k−Yref′+θΔU+Wreek+ΔUTRΔU+ρε2=⋯=ΔUTεθTQθ+R00ρΔUε+2E1T0ΔUε=12ζTHζ+fTζ,where(28)E1=ψx′k−Yref′+WReek;H=2θTQθ+2R002ρ;fT=2E1T0;ζ=ΔUε.The feasibility of MPC is enhanced by softening nonsafety related hard constraints. The predictive optimization problem is transformed to the standard quadratic form for the solution by the Quadprog function. However, its real-time performance is poor and not applicable to the actual embedded system. So, this paper uses SDNN to accelerate the solution of the QP problem which is an innovation compared to other research studies.The state equation of SDNN is(29)ξdzdt=−EDz+ED−Igz−Es.The principle of SDNN is presented in Figure6. zi is the neuron, gz is a nonlinear activation function, ED−I is the symmetric weight matrix, and SDNN can be seen as a monolayer periodic neural network model. gz=gz1,gz2,gz3,…,gzpT is a piecewise linear function, which is expressed as(30)gzi=lizi≤li,zili<zi<li,hizi≥hi,z=ExQP−v,xQP=Dv−s,where v is the state variable and ξ (>0) is the scaling factor that regulates the convergence rate of the SDNN model.Figure 6
Principle block diagram of SDNN [31].Compared with the conventional numerical solution, the calculation in SDNN does not involve matrix inversion, decomposition, and other complex operations. So, the computational complexity to solve QP by SDNN is lower. Furthermore, SDNN occupies fewer resources and the algorithm is more convenient to implement. And Liu [31] has proved that SDNN globally convergences to the optimal solution of the QP problem in the form of (27). In order to solve the QP problem by computer, SDNN has to be discretized. This paper uses the Euler method to discrete (29); then,(31)zk+1=1ξTstep−EDzk+ED−Igzk−Es+zk.Considering the QP problem in (27), the corresponding relationship between the discrete SDNN parameters and quadratic programming parameters can be expressed as(32)s.t.xQPi=ΔUik,W=H,E=A_INc×Nu×Nc×NuONu×Nc×1θNx×Np×Nc×NuONx×Np×1INc×Nu×Nc×NuONu×Nc×1O1×Nu×Nc1,c=f,l=UminT−Uk−1TYmin′−ψxk−WreekTΔUminT0T,h=UmaxT−Uk−1TYmax′−ψxk−WreekTΔUmaxTεT,where(33)A_INc×Nu×Nc×Nu=00⋯010⋱01⋮⋮01111Nc×Nu×Nc×Nu;ymin′=maxdsafe,Δdmin+ddesvrminv2−vrmaxumin;ymax′=Δdmax+ddesvrmaxv2−vrminumax;Uk−1=uk−1⋮uk−1Nc×1;Umin=umin⋮uminNc×1;Umax=umax⋮umaxNc×1;ΔUmin=Δumin⋮ΔuminNc×1;ΔUmax=Δumax⋮ΔumaxNc×1;Ymin′=ymin′⋮ymin′Np×1;Ymax′=ymax′⋮ymax′Np×1;D=W−1ET;s=W−1c.The implementation of the SDNN algorithm is given in Algorithm1.Algorithm 1:Algorithm implementation of SDNN.
(1)
k=0. Determine whether to initialize; if yes, step to 3; if no, step 2;(2)
Update the status variables and the output variables, feedback correction;(3)
Set the iteration instanti=1 of discrete SDNN iteration to solve QP;(4)
Discrete SDNN iterates to solve the QP problem;(a)
CalculateΔUik of the current iteration instant according to discrete SDNN model;(b)
Calculate the relative error;error=ΔUik−ΔUi−1k/ΔUi−1k,ΔUi−1k≠0,ΔUik−ΔUi−1k,ΔUi−1k=0WhereΔU0k=Dv0−s;(c)
Determine whethererror≤εQP, if yes, step to 5; if no, step to d);(d)
i=i+1, step to a);(5)
Get instant control incrementΔuk, calculate the actual control variable uk.(6)
k=k+1, step to 2


## 3.2. PID Controller Based on Single Neuron in the Cruising Mode in Longitudinal Dynamics Control

When the ACC system switches into the cruising mode, the PID controller based on SN takes effect. Theoretically, single neuron can approach any nonlinear function infinitely, which ensures robustness and better performance while cruising, so the PID controller based on SN is designed for the cruising mode in this paper.Desired cruising speedsvcd and v1 are seen as yrk and yk in Figure 7, and they are taken as the inputs, while uk is set to be a1; x1, x2, x3 are the state variables required for neuronal learning control and taken as outputs of the converter; the vehicle model is seen as the plant. The adaptive PID controller based on SN designed in this paper is based on the Incremental PID, and the equations are(34)x1=yrk−yk=ek,x2=ek−ek−1,x3=ek−2ek−1+ek−2.Figure 7
Structure block diagram of the PID controller based on SN.The structure of the PID controller based on SN is presented in Figure7. zk=yrk−yk=ek is the performance index; K>0 is the proportional coefficient of neurons. The equation of control signal uk is(35)uk=uk−1+K∑i=13wikxik,where wik is the corresponding weight coefficient of xik.Then, the single-neuron-based PID control algorithm is as follows:(36)Δek=ek−ek−1,w1k=w1k−1+ηIzkukek+Δek,w2k=w2k−1+ηPzkukek+Δek,w3k=w3k−1+ηDzkukek+Δek,wik=wjk∑j=13wjk,uk=uk−1+K∑i=13wikxik,where ηI, ηP, and ηD are the learning rates of the integration, proportion, and differentiation, respectively.


## 3.3. Lateral Dynamics Control

Most ACC systems in the literature are designed for longitudinal dynamics control and ignore lateral dynamics control; therefore, they cannot work on the curved road. In contrast, one contribution of this paper is taking lateral dynamics control into consideration; hence, the proposed ACC system can work on the curved road.On the basis of (9) of the longitudinal kinematic model, we combine it with lateral dynamics control in 3-DoF vehicle model as shown in Figure 8. Parameters in the lateral dynamics control are given in Table 6.Figure 8
3-DoF vehicle model.Table 6
Parameters in the lateral dynamics controller design.
y˙Lateral velocity of vehicle in the body-fixed coordinate systemφ˙Yaw rate of vehicleXAbscissa ofC.G. of vehicleIzMoment of inertia around the vertical axis throughC.G.lrDistance from point B to pointC.G.CcrLateral stiffness coefficients of rear tiresClrLateral stiffness coefficients of front tiresΔumax′Upper bound of difference of steering angle between two adjacent sampling instantsYmaxUpper bound of lateral motionφmaxUpper bound of lateral motionumin′Lower bound of steering angleψAngle fromx-axis to longitudinal axis of vehicle bodyYOrdinate ofC.G. of vehicleδfFront steering anglelfDistance from point A to pointC.G.CcfLateral stiffness coefficients of front tiresClfLongitudinal stiffness coefficients of front tiresΔumin′Low bound of difference of steering angle between two adjacent sampling instantsYminLow bound of lateral motionφminLow bound of lateral motionumax′Upper bound of steering angleIn the lateral dynamics control, the nonlinear dynamics model is formed asξ˙dynt=fdynξ˙dyn,u˙dyn. The state vector is ξdyn=y˙,x˙,φ,φ˙,Y,XT;udyn=δf is chosen as the control variable [32]. y˙,x˙ are vy and vx in Figure 8, respectively, and vx is computed in the longitudinal dynamics control. Then, the nonlinear dynamic model can be linearized as(37)ξ˙dynt=Adyntξdynt+Bdyntudynt,where(38)Βdynt=∂fdyn∂udynt|ξt,ut=2Ccfm,2Ccf2δf,t−1−y˙t+lfφ˙t/x˙tm,0,2lfCcfm,0,0;Αdynt=∂fdyn∂ξdyn|ξt,ut=−2Ccf+Ccrmx˙t∂fy˙∂x˙0−x˙t+2lrCcr−lfCcfmx˙t00φ˙−2Ccfδf,t−1mx˙t∂fx˙∂x˙0y˙t−2lrCcfδf,t−1mx˙t000001002lrCcr−lfCcfIzx˙t∂fφ∂x˙0−2lf2Ccf+lr2CcrIzx˙t00cosφtsinφtx˙tcosφt−y˙tsinφt000−sinφtcosφt−y˙tcosφt−x˙tsinφt000;∂fy˙∂x˙=2Ccfy˙t+lfφ˙t+2Ccry˙t−lrφ˙tmx˙t2−φ˙t;∂fx˙∂x˙=2Ccfδf,t−1y˙t+lfφ˙tmx˙t2;∂fφ˙∂x˙=2Ccflfy˙t+lfφ˙t−2Ccrlry˙t−lrφ˙tIzx˙t2.Then, (37) is discretized by the first-order Euler difference method, and the discrete state space is expressed as(39)ξdynk+1=A˜dynkξdynk+B˜dynkudynk,where A˜dynk=I+TsAdynt and B˜dynk=TsB˜dynt.Then, the constraints of lateral motion are as follows:(40)φmin≤φ≤φmax,Ymin≤Y≤Ymax.In the prediction time domain, the prediction equation of the performance function of lateral motion is(41)J=∑i=1Npηdynk+i|k−ηdyn,refk+i|kQ12+∑i=1Ncudynk+i|kR12+ρε2,where ηdyn=0,0,1,0,1,0⋅ξdyn=φ,Y.The predictive optimization problem can be summarized as(42)min∑i=1Npηdynk+i|k−ηdyn,refk+i|kQ12+∑i=1Ncudynk+i|kR12+ρε2,s.t.umin≤Δuk+i|k≤umax,Δumin′≤uk+i|k−uk+i−1|k≤Δumin′,Ymin≤Yk+i|k≤Ymax,φmin≤φk+i|k≤φmax,where Q1=INp⊗20000010000,R1=5×105×INc, andηdyn,ref is the reference of ηdyn, i=0,1,2,…,Np.Finally, by solving problem (42) with SDNN, obtain the control variable δf at the current moment and send it to the vehicle model.The detailed flowchart of the proposed ACC system is presented in Figure9.Figure 9
Flowchart of the proposed ACC system.


## 4. Simulations and Analyses

To verify the capability of the proposed hybrid MPC algorithm for ACC, simulations have been carried out in Simulink. Its performance has been compared with an ACC system based on the Switch controller and an ACC system based on the Incremental PID controller under various working conditions. More precisely, the following mode is tested on straight roads in the following condition and go-stop condition; cruising mode is tested on a straight road in the cruising condition; finally, the following mode is tested on a curved road in the curved-road condition to verify that the proposed ACC system has the ability to work on the curved roads. Parameters of the proposed ACC system, the vehicle, and the motor are listed in Tables7–9, respectively.Table 7
Values of the parameters in the vehicle longitudinal dynamics and longitudinal dynamics controller design.
ParameterValuewdu100Ts/s0.001Δdsw/m6ξ1εQP0.01ε10Δdmax+ddes50vrmin/(km/h)−15umin/m/s2−5Δumin/m/s20.005vcd/km/h90wyDiag (5000, 500, 0, 5)initial SOC0.5vr,sw/km/h15Tstep/s0.5ρ10Δdmax/m10Δdmin/m3.6vrmax/(km/h)15umax/(m/s2)3Δumax/m/s2−0.005Table 8
Values of the parameters of the vehicle model.
ParameterValuem/kg1270.000f0.0196R/m0.325CD0.300A/m22.200η0.900it1.400Table 9
Values of the parameters of PMSM.
ParameterValueRated power/kW50Rated speed/rpm4000Rated current/A365Number of phases3q-axis inductance/mH0.357Stator resistor/mΩ6.66Rated voltage/V350Rated torque/Nm120Number of pole-pairs4d-axis inductance/mH0.135Permanent flux/Wb0.062Rotational inertia/kgm20.044


### 4.1. Switch Controller in the Simulation

A Switch controller [33] has been used in the simulation for comparative analysis, which is divided into six working modes; the acceleration range of these six modes is listed in Table 10.(1)
Cruising mode:(43)aexp=2,v1<vcd−1,d≥50m,vcd−v1,vc−1≤v1<vcd+1,d≥50m,−2,v1≥vcd+1,d≥50m.(2)
Approaching mode:(44)aexp=−vr22d−ddes,3+ddes≤d<50m,vr<−0.2km/h.(3)
Accelerating mode:(45)aexp=1v1+1vr,ddes+3≤d<50m,vr>0.(4)
Following mode:(46)aexp=1v1d−ddes+11vr,ddes−3≤d<ddes+3.(5)
Decelerating mode:(47)aexp=vr2d−ddes,dsafe≤d<ddes−3.(6)
Collision avoidance mode:(48)aexp=−8m/s2,R<dsafe.Table 10
Values of the acceleration range in six modes.
ModeAcceleration rangem/s2Cruising mode(−2, 2)Approach mode(−3, 0)Accelerating mode(0,3)Following mode(−1, 1)Decelerating mode(−6, 0)Collision avoidance mode−8


### 4.2. Simulation in Four Conditions

The proposed ACC system is modelled in Simulink, and four simulations have been carried out in the following condition, go-stop condition, cruising condition for the straight roads, and curved-road condition for the curved road to test its performances.


#### 4.2.1. Following Condition

Firstly, in the following condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. There are no build-in braking strategies in the Switch controller and the Incremental PID controller; for comparison, they are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 10 shows the speed profiles of the LV and the FV of the four controllers mentioned above, while Figure 11 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 12 and 13, respectively.Figure 10
Speeds of the LV and the FV of four controllers.Figure 11
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 12
Speed errors of the LV and the FV of four controllers.Figure 13
Distance errors of the LV and the FV of four controllers.Figure12 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 13 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. To further evaluate the tracking performance, the absolute average errors and the root-mean-square of errors are listed in Table 11. In the following condition, the average distance error of the MPC controller based on SDNN is 29.98% lower than that of the MPC controller based on Quadprog while the average speed errors are essentially equal.Table 11
Performance in the following condition.
Following conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.44510.44520.44520.0395Root-mean-square of speed error1.50531.72383.17190.3022Average distance error (absolute value) (m)0.55360.38760.37814.2940Root-mean-square of distance error1.82861.47061.07006.0736Simulation time (s)4101.56223125.16532960.19802741.1237Total braking energy and regenerative braking energy of four controllers are shown in Figures14 and 15, respectively. Table 12 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is the highest among the four controllers. In addition, the computation of QP by SDNN is 23.81% faster than the Quadprog function as shown in Table 11. SDNN used to accelerate the computation of the QP problem of MPC is confirmed to be effective.Figure 14
Total braking energy of four controllers.Figure 15
Regenerative braking energy of four controllers.Table 12
Performance of energy recovery in braking in the following condition.
Following conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy/(104J)5.71267.21345.29615.5202Regenerative braking energy/(104J)1.46531.58161.08101.4921Energy recovery efficiency (%)25.621.920.427.0Though the speed error of the Incremental PID controller is the smallest, considering all the factors including energy economy and computation efficiency, the MPC controller based on SDNN is the best controller in the following condition, which has achieved better tracking performance than other controllers.


#### 4.2.2. Go-Stop Condition

In the go-stop condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. For the same reason, the Switch controller and the Incremental PID controller are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 16 shows the speeds of the LV and the FV of four controllers mentioned above, while Figure 17 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 18 and 19, respectively. Figure 18 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 19 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. The absolute average errors and the root-mean-square of errors are listed in Table 13. In the go-stop condition, the average distance error of the MPC controller based on SDNN is 55.37% lower than that of the MPC controller based on Quadprog while the average speed error of the MPC controller based on SDNN is 64.16% lower than that of the MPC controller based on Quadprog.Figure 16
Speeds of the LV and the FV of four controllers.Figure 17
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 18
Speed errors of the LV and the FV of four controllers.Figure 19
Distance errors of the LV and the FV of four controllers.Table 13
Performance in the go-stop condition.
Go-stop conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.02420.01080.01210.0003Root-mean-square of speed error1.57971.71402.54910.3703Average distance error (absolute value) (m)0.03990.01430.52074.3696Root-mean-square of distance error1.78111.35501.29636.1211Simulation time (s)4112.48133150.57712971.61212753.1442The total braking energy and regenerative braking energy of four controllers are shown in Figures20 and 21, respectively. Table 14 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is highest among the four controllers the same as in the following condition. In addition, the computation of QP by SDNN is 23.39% faster than the Quadprog function as shown in Table 13. SDNN used to accelerate the computation of the QP problem of MPC takes effects.Figure 20
Total braking energy of four controllers.Figure 21
Regenerative braking energy of four controllers.Table 14
Performance of energy recovery in braking in the go-stop condition.
Go-stop conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy104J4.43005.46414.30564.5876Regenerative braking energy104J1.19481.40960.77551.2869Energy recovery efficiency (%)27.025.818.028.1Despite the fact that the speed error of the Incremental PID controller is the smallest, considering all the factors, the MPC controller based on SDNN is the best controller in the go-stop condition. Similar to the following condition, the MPC controller based on SDNN has achieved better tracking performance than other controllers.


#### 4.2.3. Cruising Condition

In the cruising condition, the PID controller based on SN, the Switch controller, and the Incremental PID controller have been simulated.KP, KI, and KD in the Incremental PID controller are set to 800, 0, and 0, respectively. Figure 22 shows the LV and the FV of the three controllers mentioned above. The tracking errors of speed and distance are shown in Figure 23.Figure 22
Speeds of the LV and the FV of three controllers.Figure 23
Speed errors of the LV and the FV of three controllers.As shown in Table15, the average speed error of the PID controller based on SN is 32.89% lower than that of the Switch controller and 7.93% lower than that of the Incremental PID controller while the speed error (RMS vr) of the PID controller based on SN is 18.15% lower than that of the Switch controller. The PID controller based on SN has achieved better tracking performance than other controllers.Table 15
Performance in the cruising condition.
Cruising conditionPID based on SNSwitchIncremental PIDAverage speed error (absolute value) (km/h)1.35032.01221.4666Root-mean-square of speed error6.35497.76426.3947


#### 4.2.4. Curved-Road Condition

The curved-road condition is set to verify that the proposed ACC system has the ability to work on the curved roads [34]. In this condition, the Switch controller and the Incremental PID controller cannot work on the curved road, so only the MPC controller based on Quadprog and the MPC controller based on SDNN are tested. The reference trajectory is set as follows:(49)YrefX=dy121+tanhz1−dy221+tanhz2,arctandy11coshz121.2dx1−dy21coshz221.2dx2,where z1=2.4/25X−27.19−1.2; z2=2.4/21.95X−56.46−1.2; dx1=25; dx2=21.95; dy1=4.05; and dy2=5.7.Figure24 shows the trajectories on the curved road while Figure 25 shows the lateral motion errors of the two controllers mentioned above. It is apparent that the lateral motion error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog.Figure 24
Trajectories on the curved road.Figure 25
Lateral motion errors of two controllers.Yaw angles and errors of yaw angle are presented in Figures26 and 27, respectively.Figure 26
Yaw angles of two controllers.Figure 27
Errors of yaw angle of two controllers.The error of yaw angle of the MPC controller based on SDNN is also smaller than the MPC controller based on Quadprog, so the longitudinal speeds and errors of longitudinal speed are presented in Figures28 and 29. The absolute average errors and the root-mean-square of errors are listed in Table 16. In the curved-road condition, the average error of lateral motion of the MPC controller based on SDNN is 59.64% lower than that of the MPC controller based on Quadprog while the average error of yaw angle of the MPC controller based on SDNN is 70.49% lower than that of the MPC controller based on Quadprog.Figure 28
Longitudinal speeds of the LV and the FV of two controllers.Figure 29
Longitudinal speed errors of the LV and the FV of two controllers.Table 16
Values of the parameters in the lateral dynamics controller design.
ParameterValueIz/kg·m24175.000lr/m1.468Ccr/N/rad62700.000Clr/N/rad62700.000Δumax′/rad0.0148umin′/rad−0.1744Ymax/m−1φmin/rad5lf/m1.232Ccf/N/rad66900.000Clf/N/rad66900.000Δumax′/rad0.0148umax′/rad0.1744Ymax/m5φmax/rad0.21Total braking energy and regenerative braking energy of two controllers are shown in Figure30. Table 17 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is higher. In addition, the computation of QP by SDNN is 16.69% faster than the Quadprog function as shown in Table 18 which shows that the SDNN is effective as expected. In conclusion, the proposed ACC system can work for the curved road.Figure 30
Braking energies of two controllers.Table 17
Performance of energy recovery in braking in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNTotal braking energy (J)226.8117229.3997Regenerative braking energy (J)207.6067211.0447Energy recovery efficiency (%)91.592.0Table 18
Performance in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNAverage longitudinal speed error (absolute value) (km/h)0.64770.5728Root-mean-square of longitudinal speed error0.66050.5841Average error of lateral motion (absolute value) (m)0.06740.0272Root-mean-square of error of lateral motion0.08000.0382Average error of yaw angle (absolute value) (rad)0.00610.0018Root-mean-square of error of yaw angle0.00690.0025Simulation time (s)365.2265304.2355


## 4.1. Switch Controller in the Simulation

A Switch controller [33] has been used in the simulation for comparative analysis, which is divided into six working modes; the acceleration range of these six modes is listed in Table 10.(1)
Cruising mode:(43)aexp=2,v1<vcd−1,d≥50m,vcd−v1,vc−1≤v1<vcd+1,d≥50m,−2,v1≥vcd+1,d≥50m.(2)
Approaching mode:(44)aexp=−vr22d−ddes,3+ddes≤d<50m,vr<−0.2km/h.(3)
Accelerating mode:(45)aexp=1v1+1vr,ddes+3≤d<50m,vr>0.(4)
Following mode:(46)aexp=1v1d−ddes+11vr,ddes−3≤d<ddes+3.(5)
Decelerating mode:(47)aexp=vr2d−ddes,dsafe≤d<ddes−3.(6)
Collision avoidance mode:(48)aexp=−8m/s2,R<dsafe.Table 10
Values of the acceleration range in six modes.
ModeAcceleration rangem/s2Cruising mode(−2, 2)Approach mode(−3, 0)Accelerating mode(0,3)Following mode(−1, 1)Decelerating mode(−6, 0)Collision avoidance mode−8


## 4.2. Simulation in Four Conditions

The proposed ACC system is modelled in Simulink, and four simulations have been carried out in the following condition, go-stop condition, cruising condition for the straight roads, and curved-road condition for the curved road to test its performances.


### 4.2.1. Following Condition

Firstly, in the following condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. There are no build-in braking strategies in the Switch controller and the Incremental PID controller; for comparison, they are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 10 shows the speed profiles of the LV and the FV of the four controllers mentioned above, while Figure 11 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 12 and 13, respectively.Figure 10
Speeds of the LV and the FV of four controllers.Figure 11
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 12
Speed errors of the LV and the FV of four controllers.Figure 13
Distance errors of the LV and the FV of four controllers.Figure12 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 13 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. To further evaluate the tracking performance, the absolute average errors and the root-mean-square of errors are listed in Table 11. In the following condition, the average distance error of the MPC controller based on SDNN is 29.98% lower than that of the MPC controller based on Quadprog while the average speed errors are essentially equal.Table 11
Performance in the following condition.
Following conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.44510.44520.44520.0395Root-mean-square of speed error1.50531.72383.17190.3022Average distance error (absolute value) (m)0.55360.38760.37814.2940Root-mean-square of distance error1.82861.47061.07006.0736Simulation time (s)4101.56223125.16532960.19802741.1237Total braking energy and regenerative braking energy of four controllers are shown in Figures14 and 15, respectively. Table 12 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is the highest among the four controllers. In addition, the computation of QP by SDNN is 23.81% faster than the Quadprog function as shown in Table 11. SDNN used to accelerate the computation of the QP problem of MPC is confirmed to be effective.Figure 14
Total braking energy of four controllers.Figure 15
Regenerative braking energy of four controllers.Table 12
Performance of energy recovery in braking in the following condition.
Following conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy/(104J)5.71267.21345.29615.5202Regenerative braking energy/(104J)1.46531.58161.08101.4921Energy recovery efficiency (%)25.621.920.427.0Though the speed error of the Incremental PID controller is the smallest, considering all the factors including energy economy and computation efficiency, the MPC controller based on SDNN is the best controller in the following condition, which has achieved better tracking performance than other controllers.


### 4.2.2. Go-Stop Condition

In the go-stop condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. For the same reason, the Switch controller and the Incremental PID controller are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 16 shows the speeds of the LV and the FV of four controllers mentioned above, while Figure 17 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 18 and 19, respectively. Figure 18 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 19 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. The absolute average errors and the root-mean-square of errors are listed in Table 13. In the go-stop condition, the average distance error of the MPC controller based on SDNN is 55.37% lower than that of the MPC controller based on Quadprog while the average speed error of the MPC controller based on SDNN is 64.16% lower than that of the MPC controller based on Quadprog.Figure 16
Speeds of the LV and the FV of four controllers.Figure 17
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 18
Speed errors of the LV and the FV of four controllers.Figure 19
Distance errors of the LV and the FV of four controllers.Table 13
Performance in the go-stop condition.
Go-stop conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.02420.01080.01210.0003Root-mean-square of speed error1.57971.71402.54910.3703Average distance error (absolute value) (m)0.03990.01430.52074.3696Root-mean-square of distance error1.78111.35501.29636.1211Simulation time (s)4112.48133150.57712971.61212753.1442The total braking energy and regenerative braking energy of four controllers are shown in Figures20 and 21, respectively. Table 14 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is highest among the four controllers the same as in the following condition. In addition, the computation of QP by SDNN is 23.39% faster than the Quadprog function as shown in Table 13. SDNN used to accelerate the computation of the QP problem of MPC takes effects.Figure 20
Total braking energy of four controllers.Figure 21
Regenerative braking energy of four controllers.Table 14
Performance of energy recovery in braking in the go-stop condition.
Go-stop conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy104J4.43005.46414.30564.5876Regenerative braking energy104J1.19481.40960.77551.2869Energy recovery efficiency (%)27.025.818.028.1Despite the fact that the speed error of the Incremental PID controller is the smallest, considering all the factors, the MPC controller based on SDNN is the best controller in the go-stop condition. Similar to the following condition, the MPC controller based on SDNN has achieved better tracking performance than other controllers.


### 4.2.3. Cruising Condition

In the cruising condition, the PID controller based on SN, the Switch controller, and the Incremental PID controller have been simulated.KP, KI, and KD in the Incremental PID controller are set to 800, 0, and 0, respectively. Figure 22 shows the LV and the FV of the three controllers mentioned above. The tracking errors of speed and distance are shown in Figure 23.Figure 22
Speeds of the LV and the FV of three controllers.Figure 23
Speed errors of the LV and the FV of three controllers.As shown in Table15, the average speed error of the PID controller based on SN is 32.89% lower than that of the Switch controller and 7.93% lower than that of the Incremental PID controller while the speed error (RMS vr) of the PID controller based on SN is 18.15% lower than that of the Switch controller. The PID controller based on SN has achieved better tracking performance than other controllers.Table 15
Performance in the cruising condition.
Cruising conditionPID based on SNSwitchIncremental PIDAverage speed error (absolute value) (km/h)1.35032.01221.4666Root-mean-square of speed error6.35497.76426.3947


### 4.2.4. Curved-Road Condition

The curved-road condition is set to verify that the proposed ACC system has the ability to work on the curved roads [34]. In this condition, the Switch controller and the Incremental PID controller cannot work on the curved road, so only the MPC controller based on Quadprog and the MPC controller based on SDNN are tested. The reference trajectory is set as follows:(49)YrefX=dy121+tanhz1−dy221+tanhz2,arctandy11coshz121.2dx1−dy21coshz221.2dx2,where z1=2.4/25X−27.19−1.2; z2=2.4/21.95X−56.46−1.2; dx1=25; dx2=21.95; dy1=4.05; and dy2=5.7.Figure24 shows the trajectories on the curved road while Figure 25 shows the lateral motion errors of the two controllers mentioned above. It is apparent that the lateral motion error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog.Figure 24
Trajectories on the curved road.Figure 25
Lateral motion errors of two controllers.Yaw angles and errors of yaw angle are presented in Figures26 and 27, respectively.Figure 26
Yaw angles of two controllers.Figure 27
Errors of yaw angle of two controllers.The error of yaw angle of the MPC controller based on SDNN is also smaller than the MPC controller based on Quadprog, so the longitudinal speeds and errors of longitudinal speed are presented in Figures28 and 29. The absolute average errors and the root-mean-square of errors are listed in Table 16. In the curved-road condition, the average error of lateral motion of the MPC controller based on SDNN is 59.64% lower than that of the MPC controller based on Quadprog while the average error of yaw angle of the MPC controller based on SDNN is 70.49% lower than that of the MPC controller based on Quadprog.Figure 28
Longitudinal speeds of the LV and the FV of two controllers.Figure 29
Longitudinal speed errors of the LV and the FV of two controllers.Table 16
Values of the parameters in the lateral dynamics controller design.
ParameterValueIz/kg·m24175.000lr/m1.468Ccr/N/rad62700.000Clr/N/rad62700.000Δumax′/rad0.0148umin′/rad−0.1744Ymax/m−1φmin/rad5lf/m1.232Ccf/N/rad66900.000Clf/N/rad66900.000Δumax′/rad0.0148umax′/rad0.1744Ymax/m5φmax/rad0.21Total braking energy and regenerative braking energy of two controllers are shown in Figure30. Table 17 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is higher. In addition, the computation of QP by SDNN is 16.69% faster than the Quadprog function as shown in Table 18 which shows that the SDNN is effective as expected. In conclusion, the proposed ACC system can work for the curved road.Figure 30
Braking energies of two controllers.Table 17
Performance of energy recovery in braking in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNTotal braking energy (J)226.8117229.3997Regenerative braking energy (J)207.6067211.0447Energy recovery efficiency (%)91.592.0Table 18
Performance in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNAverage longitudinal speed error (absolute value) (km/h)0.64770.5728Root-mean-square of longitudinal speed error0.66050.5841Average error of lateral motion (absolute value) (m)0.06740.0272Root-mean-square of error of lateral motion0.08000.0382Average error of yaw angle (absolute value) (rad)0.00610.0018Root-mean-square of error of yaw angle0.00690.0025Simulation time (s)365.2265304.2355


## 4.2.1. Following Condition

Firstly, in the following condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. There are no build-in braking strategies in the Switch controller and the Incremental PID controller; for comparison, they are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 10 shows the speed profiles of the LV and the FV of the four controllers mentioned above, while Figure 11 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 12 and 13, respectively.Figure 10
Speeds of the LV and the FV of four controllers.Figure 11
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 12
Speed errors of the LV and the FV of four controllers.Figure 13
Distance errors of the LV and the FV of four controllers.Figure12 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 13 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. To further evaluate the tracking performance, the absolute average errors and the root-mean-square of errors are listed in Table 11. In the following condition, the average distance error of the MPC controller based on SDNN is 29.98% lower than that of the MPC controller based on Quadprog while the average speed errors are essentially equal.Table 11
Performance in the following condition.
Following conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.44510.44520.44520.0395Root-mean-square of speed error1.50531.72383.17190.3022Average distance error (absolute value) (m)0.55360.38760.37814.2940Root-mean-square of distance error1.82861.47061.07006.0736Simulation time (s)4101.56223125.16532960.19802741.1237Total braking energy and regenerative braking energy of four controllers are shown in Figures14 and 15, respectively. Table 12 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is the highest among the four controllers. In addition, the computation of QP by SDNN is 23.81% faster than the Quadprog function as shown in Table 11. SDNN used to accelerate the computation of the QP problem of MPC is confirmed to be effective.Figure 14
Total braking energy of four controllers.Figure 15
Regenerative braking energy of four controllers.Table 12
Performance of energy recovery in braking in the following condition.
Following conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy/(104J)5.71267.21345.29615.5202Regenerative braking energy/(104J)1.46531.58161.08101.4921Energy recovery efficiency (%)25.621.920.427.0Though the speed error of the Incremental PID controller is the smallest, considering all the factors including energy economy and computation efficiency, the MPC controller based on SDNN is the best controller in the following condition, which has achieved better tracking performance than other controllers.


## 4.2.2. Go-Stop Condition

In the go-stop condition, the MPC controller based on Quadprog, the MPC controller based on SDNN, the Switch controller, and the Incremental PID controller have been simulated. For the same reason, the Switch controller and the Incremental PID controller are equipped with the braking strategy this paper proposed.KP, KI, and KD in the Incremental PID controller are set to 5000, 0, and 0, respectively. Figure 16 shows the speeds of the LV and the FV of four controllers mentioned above, while Figure 17 shows three distances in the proposed ACC system. The tracking errors of speed and distance are shown in Figures 18 and 19, respectively. Figure 18 demonstrates that the speed error of the MPC controller based on SDNN is nearly the same as the MPC controller based on Quadprog, while the speed error of the Incremental PID controller is the smallest. On the other hand, Figure 19 demonstrates that the distance error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog, and the distance error of the Incremental PID controller is the biggest of all controllers in the test. The absolute average errors and the root-mean-square of errors are listed in Table 13. In the go-stop condition, the average distance error of the MPC controller based on SDNN is 55.37% lower than that of the MPC controller based on Quadprog while the average speed error of the MPC controller based on SDNN is 64.16% lower than that of the MPC controller based on Quadprog.Figure 16
Speeds of the LV and the FV of four controllers.Figure 17
Distances of the LV and the FV of four controllers. (a) The MPC controller based on Quadprog. (b) The Incremental PID controller. (c) The Switch controller. (d) The MPC controller based on SDNN.
(a)(b)(c)(d)Figure 18
Speed errors of the LV and the FV of four controllers.Figure 19
Distance errors of the LV and the FV of four controllers.Table 13
Performance in the go-stop condition.
Go-stop conditionMPC_QuadprogMPC_SDNNSwitchIncremental PIDAverage speed error (absolute value) (km/h)0.02420.01080.01210.0003Root-mean-square of speed error1.57971.71402.54910.3703Average distance error (absolute value) (m)0.03990.01430.52074.3696Root-mean-square of distance error1.78111.35501.29636.1211Simulation time (s)4112.48133150.57712971.61212753.1442The total braking energy and regenerative braking energy of four controllers are shown in Figures20 and 21, respectively. Table 14 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is highest among the four controllers the same as in the following condition. In addition, the computation of QP by SDNN is 23.39% faster than the Quadprog function as shown in Table 13. SDNN used to accelerate the computation of the QP problem of MPC takes effects.Figure 20
Total braking energy of four controllers.Figure 21
Regenerative braking energy of four controllers.Table 14
Performance of energy recovery in braking in the go-stop condition.
Go-stop conditionMPC_QuadprogIncremental PIDSwitchMPC_SDNNTotal braking energy104J4.43005.46414.30564.5876Regenerative braking energy104J1.19481.40960.77551.2869Energy recovery efficiency (%)27.025.818.028.1Despite the fact that the speed error of the Incremental PID controller is the smallest, considering all the factors, the MPC controller based on SDNN is the best controller in the go-stop condition. Similar to the following condition, the MPC controller based on SDNN has achieved better tracking performance than other controllers.


## 4.2.3. Cruising Condition

In the cruising condition, the PID controller based on SN, the Switch controller, and the Incremental PID controller have been simulated.KP, KI, and KD in the Incremental PID controller are set to 800, 0, and 0, respectively. Figure 22 shows the LV and the FV of the three controllers mentioned above. The tracking errors of speed and distance are shown in Figure 23.Figure 22
Speeds of the LV and the FV of three controllers.Figure 23
Speed errors of the LV and the FV of three controllers.As shown in Table15, the average speed error of the PID controller based on SN is 32.89% lower than that of the Switch controller and 7.93% lower than that of the Incremental PID controller while the speed error (RMS vr) of the PID controller based on SN is 18.15% lower than that of the Switch controller. The PID controller based on SN has achieved better tracking performance than other controllers.Table 15
Performance in the cruising condition.
Cruising conditionPID based on SNSwitchIncremental PIDAverage speed error (absolute value) (km/h)1.35032.01221.4666Root-mean-square of speed error6.35497.76426.3947


## 4.2.4. Curved-Road Condition

The curved-road condition is set to verify that the proposed ACC system has the ability to work on the curved roads [34]. In this condition, the Switch controller and the Incremental PID controller cannot work on the curved road, so only the MPC controller based on Quadprog and the MPC controller based on SDNN are tested. The reference trajectory is set as follows:(49)YrefX=dy121+tanhz1−dy221+tanhz2,arctandy11coshz121.2dx1−dy21coshz221.2dx2,where z1=2.4/25X−27.19−1.2; z2=2.4/21.95X−56.46−1.2; dx1=25; dx2=21.95; dy1=4.05; and dy2=5.7.Figure24 shows the trajectories on the curved road while Figure 25 shows the lateral motion errors of the two controllers mentioned above. It is apparent that the lateral motion error of the MPC controller based on SDNN is smaller than the MPC controller based on Quadprog.Figure 24
Trajectories on the curved road.Figure 25
Lateral motion errors of two controllers.Yaw angles and errors of yaw angle are presented in Figures26 and 27, respectively.Figure 26
Yaw angles of two controllers.Figure 27
Errors of yaw angle of two controllers.The error of yaw angle of the MPC controller based on SDNN is also smaller than the MPC controller based on Quadprog, so the longitudinal speeds and errors of longitudinal speed are presented in Figures28 and 29. The absolute average errors and the root-mean-square of errors are listed in Table 16. In the curved-road condition, the average error of lateral motion of the MPC controller based on SDNN is 59.64% lower than that of the MPC controller based on Quadprog while the average error of yaw angle of the MPC controller based on SDNN is 70.49% lower than that of the MPC controller based on Quadprog.Figure 28
Longitudinal speeds of the LV and the FV of two controllers.Figure 29
Longitudinal speed errors of the LV and the FV of two controllers.Table 16
Values of the parameters in the lateral dynamics controller design.
ParameterValueIz/kg·m24175.000lr/m1.468Ccr/N/rad62700.000Clr/N/rad62700.000Δumax′/rad0.0148umin′/rad−0.1744Ymax/m−1φmin/rad5lf/m1.232Ccf/N/rad66900.000Clf/N/rad66900.000Δumax′/rad0.0148umax′/rad0.1744Ymax/m5φmax/rad0.21Total braking energy and regenerative braking energy of two controllers are shown in Figure30. Table 17 demonstrates that the energy recovery efficiency of the SDNN based MPC controller is higher. In addition, the computation of QP by SDNN is 16.69% faster than the Quadprog function as shown in Table 18 which shows that the SDNN is effective as expected. In conclusion, the proposed ACC system can work for the curved road.Figure 30
Braking energies of two controllers.Table 17
Performance of energy recovery in braking in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNTotal braking energy (J)226.8117229.3997Regenerative braking energy (J)207.6067211.0447Energy recovery efficiency (%)91.592.0Table 18
Performance in the curved-road condition.
Curved-road conditionMPC_QuadprogMPC_SDNNAverage longitudinal speed error (absolute value) (km/h)0.64770.5728Root-mean-square of longitudinal speed error0.66050.5841Average error of lateral motion (absolute value) (m)0.06740.0272Root-mean-square of error of lateral motion0.08000.0382Average error of yaw angle (absolute value) (rad)0.00610.0018Root-mean-square of error of yaw angle0.00690.0025Simulation time (s)365.2265304.2355


## 5. Conclusion

This paper presented a hybrid MPC controller based on a simplified dual neural network (SDNN) and PID based on single neuron (SN) for adaptive cruise control of autonomous electric vehicles to incorporate the performances of tracking, comfort, safety, and energy economy by considering spatiotemporal constraints between the leading vehicle and the following vehicle. The driving modes were divided into following and cruising, and the MPC algorithm based on SDNN and the PID controller based on SN were applied to the following mode and the cruising mode, respectively. Moreover, lateral dynamics control was taken into consideration which is often ignored by conventional ACC systems, so the proposed ACC system could work on the curved road. In addition, the braking strategy was also verified to be effective in the simulations.Simulation results have shown that the average distance error of the MPC controller in the following condition based on SDNN was 29.98% lower than that of the MPC controller based on Quadprog while the average speed errors were essentially equal. In addition, the computation of QP by SDNN was 24.01% faster than the Quadprog function. And the MPC controller based on SDNN outperformed other controllers in the go-stop condition, the average distance error of the MPC controller based on SDNN was 55.37% lower than that of the MPC controller based on Quadprog while the average speed error of the MPC controller based on SDNN was 64.16% lower than that of the MPC controller based on Quadprog. Furthermore, the computation of QP by SDNN was 23.39% faster than Quadprog function. Compared with the conventional numerical solution as Quadprog function, the calculation in SDNN did not involve matrix inversion, decomposition, and other operations. So, the computational complexity to solve QP of SDNN was lower.In the cruising condition, the PID controller based on SN achieved better tracking performance than other controllers. The average speed error of the PID controller based on SN was 32.89% lower than that of the Switch controller and 7.93% lower than that of the Incremental PID controller while the speed error (RMSvr) of the PID controller based on SN was 18.15% lower than that of the Switch controller. All of this was due to the strong adaptive capability of the PID controller based on SN. Additionally, the curved-road condition verified that the proposed ACC system had the ability to work on the curved roads which was as expected.In general, results validated that the proposed strategy is effective for adaptive cruise control of autonomous electric vehicles.



---

*Source: 6626243-2021-03-15.xml*