Improvement of Adaptive Cruise Control Performance by Considering Initialization States

Design of the controller in an adaptive cruise control (ACC) system is a critical part which prevents the collision between the host vehicle and the front vehicle. In ACC, system starts to work from an initialization state to a stable state after a short time. Passing from the initialization state to the stable state has not been considered in the previous designs. However for a suitable design, the initialization states that can cause a collision and also the unstable states should be considered. Therefore in this paper first by improving the reference signal and then by using a PID controller and optimizing its gains with BFO optimization algorithm, the system will consider the unstable initialization states. Simulation results show that by improving the reference signal and optimizing the gains of PID controller, not only the collision before the stable state is prevented, but also the performance of the controller is improved 74.2% in safety constraint and 15% in comfort constraint in the specific profile of the front vehicle speed that has several driving situations like hard stop and stop & go.


Introduction
In recent years by evolution of advanced driver assistant systems (ADAS), the intervention of driver in controlling the vehicle has been decreased extremely. One of the major reasons for this evolution is large number of accidents that cause injuries and deaths. It is estimated that 90% of accidents occur due to human error, potentially induced by distraction, poor judgment or lack of situation awareness [1]. Adaptive cruise control (ACC) is one of the best ADAS systems that can prevent the accident by controlling the distance between the vehicles. This system first used in luxury vehicles as an optional system to influence traffic flow and also to increase the safety of passengers. However nowadays most automakers have a tendency to extend this feature from high value vehicles to the mid-range value vehicles [2][3]. The Previous version of ACC system is cruise control (CC) which regulates the speed of the vehicle at a specific velocity chosen by driver. In this system if the host vehicle approaches the front vehicle, the driver has to decrease the speed manually to prevent from collision. The CC system cannot detect the obstacles in order to automatically decrease the speed of the host vehicle. Therefore the driver should always watch out the road. So due to lack of intelligence, this system cannot provide enough safety for the passengers and it cannot be trusted. ACC system eliminates this deficiency by using a sensor in front of the host vehicle to detect the obstacles approaching it.
There are several technologies that were used in this part of ACC system, but two types of them are popular than the others, millimeter-wave radar and light detection and ranging [4]. These sensors should be designed accurately in order to work in different weather conditions properly. First design of ACC has a limitation when the speed of host vehicle drops under 30km/h. It cannot work appropriately because it can only control the throttle mechanism and there is not any control on brake mechanism. This limitation causes this system not to be useful in the urban driving and traffic jams [5]. Considering the researches done on brake pedal automation this limitation has been eliminated by the capability of Stop&go [6]. Two important metrics exist for evaluating the ACC system including safety and comfort. Safety means, the host vehicle keeps a relative distance called safety distance especially in emergency situations like hard-stop. In other words the difference between reference signal and real speed of host vehicle does not exceed a specific value. Comfort means the host vehicle had small value in magnitude of deceleration and its derivative.
ACC system consists of many parts which the first part is the sensor signal that provides some information about the distance of the obstacles and their velocity. The second part is the reference signal that determines the velocity and the 54 Improvement of Adaptive Cruise Control Performance by Considering Initialization States relative distance of the host vehicle. By the third part, necessary acceleration and deceleration will be taken to obtain desired relative distance and velocity. The majority of the previous researches done on designing the controller of the ACC system have not considered the initialization states of the system in determining desired acceleration and deceleration [7][8]. They assume that in the start time of the system the real speed of vehicle is near the reference speed signal. So the error of the system is negligible and the system is in the stable state. But there is a probability that a collision happen when the error of the system is high. This situation happens more in the initialization states. In this research we show that some situations exist in the initialization states that lead to collision. First by investigating this situations, the reference signal will be improved and then the gains of the feedback controller that considered PID (Proportional-Integral-Derivative) in this research will be optimized by BFO algorithm to prevent the collision between host vehicle and leader vehicle.
The rest of the paper is organized as follow: in the section 2 related works are represented, the model of the vehicle is discussed in the section 3, in section 4 effect of initialization states on the stability of the ACC system is investigated, in the section 5 reference signal is improved and gains of PID controller are optimized by BFO algorithm for performance improvement and finally the conclusion is presented in the section 6.   Figure 1 shows the block diagram of an ACC system. This system consists of three main parts, sensor, reference signal and desired acceleration and deceleration. Main core of the ACC system determines the safe distance between the host vehicle and the front vehicle based on the information that comes from the sensor. Major challenge in designing of the ACC system is related to this part. Several approaches exist for doing this. Some approaches try to model the driver behavior to achieve actions in several situations [9][10], so the ACC system adjust its speed to maintain a preset distance from the vehicle in front of it based on the driver's preferences. This is a good approach but because of some of the dangerous behaviors of drivers, this approach is not always the safest one.

Related Works
Time-headway is another approach to design this part of the ACC system. The main idea of this approach is to regulate the vehicle around the well-known 2-s headway rule, which attempts to maintain a distance proportional to the human reaction time (approximately 2 s) [11]. This approach considers the relationship between two vehicles as a linear equation (Eq.1). d safe = T headway *V host + d min (1) In equation (1) T headway is the time headway variable that is chosen by driver, V host is the real speed of host vehicle and d min is the minimum relative distance between vehicles when front vehicle stops. By comparing the real relative distance between vehicles with calculated safe distance continuously, if difference between these values are high then by controlling the speed (throttle and brake signal) of host vehicle, a safe distance can be achieved. When there is no front vehicle, the host vehicle can continue with the preset speed chosen by the driver.
Because of simplicity and easy implementation of time headway design, this approach is very popular and has been used for many cases. However this approach have several significant problems. Time headway design does not consider constraints of system like comfort of passengers in its relationship, nor does it consider some other parameters like maximum braking forces. In time headway design approach, time headway parameter is the only parameter that can be tuned for several situations happens during driving. In the most of the previous researches this parameter is considered as a constant value.
Martinez and Canudas-de-Wit [12] introduced a novel approach for this part of system called reference model. They investigated the real relationship between the host vehicle speed and the relative distance based on the time headway approach. They show that in low speeds the real values of host velocity are approximately equal to the values of time headway method design. However in high speeds, the real values are far from the values of time headway method design. Therefore a non-linear relationship between host vehicle speed and relative distance has been considered to satisfy some constraints of this system. In the proposed reference model three different zones between the host vehicle and the front vehicle has been considered including safe, critical and stop zones. These zones are shown in figure  2. These zones are used as a boundary conditions for solving the relative acceleration equation with non-linear relationship of reference signal. In the safe zone the host vehicle maintains its speed on the specific preset speed which is chosen by the driver. As the host vehicle approaches the critical zone (when relative distance is d 0 ) then its speed should be decrease based on a significant function. When the host vehicle is in the stop zone then the speed will be equal to zero and the host vehicle will be stopped. For considering the safety and comfort constraints another unknown parameter should be solved in the acceleration equation.
To solve the acceleration equation by these constraints, the reference model considers the maximum possible deceleration in the critical zone as a constant value. This value can be obtained from physical deceleration force of the host vehicle. It is depended on the type of the vehicle. So these boundary conditions can be categorized as below: 1. Speed of the host vehicle when entering the warning zone equals to preset velocity V set that is chosen by driver. 2. Host vehicle will be stopped when the relative distance equals to minimum safe distance d c . 3. Maximum deceleration of the host vehicle cannot be larger than maximum physical deceleration B max .
Equation (2) indicates the relative acceleration in the reference model. In this equation d r is the relative distance between the host and the front vehicle and x p is the situation of front vehicle. There are two unknown parameters in this equation including d 0 and c that should be solved with above boundary conditions. As it can be seen the non-linear function used in this equation is a polynomial function that derives a second order polynomial sentence in the speed of host vehicle.
This equation can be solved analytically [12] and unknown parameters will be achieved like equation (3) which shows the relationship between the host vehicle speed and the relative distance.
One of the disadvantages of reference model is that the setting parameters are considered as constant and they cannot be adapted to the several external conditions like road conditions or traffic loads. However the major advantage of this model is obtaining the policy distance by a dynamical equation instead of stationary time headway. This approach allows to calculate the bounds of the model from suitable integral curves.
The reference signal cannot be applied to the host vehicle instantly due to the nonlinearity in the engine and the brake of the host vehicle and real urban situations. To cope with this problem an advanced controller should be assigned to produce appropriate engine and brake signals. There are several controllers that can be used in this part of ACC system. Fuzzy controller is one of the main approaches. According to fuzzy controller and based on a set of rules, a decision has been taken to produce relative output [13]. In this controller first the real inputs that are usually deviation of distance and speed from their reference signals, are converted to the fuzzy value inputs. This can be done by a specific membership function that have triangular or Gaussian shapes. Design rules of the fuzzy controller are similar to human decision making and they have a form of If-Then sentences. These rules determine the action of ACC controller, throttle or brake signal based on the fuzzy values of real inputs. After obtaining the relative fuzzy values in the output based on a function, the relative value of the controller can be achieved. Much efforts has been done to obtain suitable fuzzy rules, membership functions types and interval of membership function of inputs or outputs. For example in [14] a genetic algorithm has been used to optimize nine constant values of the output of the fuzzy controller based on a specific cost function to produce a suitable controller for coping with the important constraints of the system like safety and comfort. In one another research [15] an optimized fuzzy controller is designed based on the comfort goal to reduce the disturbance due to the transitions in cruise control and ACC. Also in [16] by using a speed sign detection in the fuzzy controller, safety of the vehicle and speeding violations has been improved and therefore smoother acceleration and deceleration has been achieved.
Some other controllers like neural networks [17] or supervised [18] can be mentioned that were used in design of this feedback controller. Neural network designing tries to train the network based on deviation of speeds between real speed of vehicle and reference speed in order to produce desired acceleration and braking corresponding to this deviation speed. Several networks like back propagation network (BPN), radial basis network (RBN), and generalized regression neural network (GRNN) has been investigated to satisfy constraints of the system and like other works these constraints considered safety and comfort. This research shows that BPN has better behavior in satisfying safety constraint but RBN network was better in comfort constraint.
PID controller is another controller to use for this system. PID controllers was widely used in this system because of its low cost and simple design. This controller has some advantages than others like low sensitivity, low noise and attenuation of disturbance. So in many cases PID controllers was one of the choices and many works like [19] has been done for optimizing its gains. In this research the PID controller is considered to evaluate the initialization states as well.

Vehicle Model
Equation (4) shows the longitudinal axis forces when the vehicle is moving. The equation is based on the total forces of vehicle in second newton law [20].
Where M is the mass of the vehicle, a is the acceleration of the vehicle, F xf and F xr are longitudinal engine forces 56 Improvement of Adaptive Cruise Control Performance by Considering Initialization States produced in front and rear tires of the vehicle, R xf and R xr are rolling resistance of vehicle tires in front and rear that have a linear relationship with vertical load of vehicle [21], F a is the aerodynamic force and is the angle of inclination of the road. In this research all parameters of the vehicle are derived from Benz V8 vehicle [22]. The producible torque of this vehicle has been shown in equation (5).
Where R is the Revolutions per minute (RPM) of the vehicle and has a linear relationship with the current gear ratio. The current gear ratio equation has been shown in equation (6): In that equation (6), N a and N b are the output and the input number of teeth of gear respectively. If it is assumed that conversion of the engine forces lag and actuation of throttle lag can be lumped together then the transmission of forces to the tires of vehicle can be expressed as a first order equation (7).
Where T e is the producible torque in the tires, K e is the coefficient factor of the gear ration, T es is the single equivalent lag time of the throttle model and u th is the amount of opening valve of the throttle as a controllable signal on the speed of the vehicle. The amount of the producible torque in the tires is depended on the fraction of total torque in the engine of the vehicle. This fraction will be controlled by the amount of throttle opening valve. Throttle opening valve is a signal which is constrained to a value between 0% and 100%. 0% means that the throttle valve is closed and therefore the vehicle has no acceleration. On the other hand 100% means the throttle valve is already open and therefore the vehicle has its maximum amount of acceleration.
The brake system can also be modelled like the throttle. In the brake system also the lags of dynamics of the servo valve and the hydraulic systems can be modelled as an entire lag. Therefore it leads to a first order equation between the pressure applied to the brake disk and the pressure applied to the brake pedal. This relationship has been shown in equation (8).
Where K b is the deceleration coefficient, u b is the controllable signal of the amount of pressure in the brake pedal, T bs is the entire lag time of the brake model, is the rolling speed of the tires and equals to the minimum speed of the tires. As it can be seen from equation (8) when the speed of the vehicle approaches zero then the amount of the deceleration force approaches zero too by using the minimum function in the model. This makes the model to prevent producing negative velocity and the vehicle will be stopped at that moment. Like throttle model, u b is the control signal and its value is constrained between 0% and 100%.

Investigations of Initialization States
The advantages of PID controller, like its simplicity, have made it an excellent controller to be used for designing the feedback controllers [7][8]. It has been shown that this controller can track the reference signal in the stable state well. However in the previous works, it has not been considered that the real speed of the host vehicle may be far from the reference signal and therefore it takes some time for the system to be in its stable state. So it is important to consider the initialization states of the system in designing of the system controller. So by using the designed gains of PID controller of [8], the effectiveness of initialization states will be investigated. These Gains of PID controller has been shown in table 1.
Where V f is the speed of the front vehicle, V h is the real speed of the host vehicle, d 0i is the relative distance between the host and the front vehicle in the initialization state, d 0 is the critical zone of reference model for producing reference signal and V set is the preset cruise speed which is chosen by the driver. According to the reference signal equation, the speed of host vehicle is a second order polynomial function of the relative distance. In this state the host vehicle is near the safe zone of reference model, therefore the ACC system of the host vehicle will be started at a speed approximately near the preset cruise speed. So it is obvious that in this state the initialization speed or the real speed of the host vehicle is near the reference signal and it can be considered that the system starts to work in a stable state. Fig 3a shows the curves of the speed and the relative distance with their reference signal in this initialization state. It can be seen that tracking of the reference signal has been done appropriately. This is demonstrate that the gains of PID controller work appropriately in the stable state. Now the initialization state will be changed as below.
Like previous state the reference speed of host vehicle is determined based on the relative distance of the vehicles. So the reference speed is near the preset cruise speed. However as can be seen from figure 3 real speed of the host vehicle is far from the reference signal. Therefore it takes long times for the system to be in the stable system. The reason is that the gains of the controller has not been optimized for this state. This situation can lead to a collision. Figure 3b shows this initialization state and it can be concluded that the performance of the system will be dropped by increasing the difference between initialization speed of the host vehicle and the reference signal. It can be seen that in this state the fluctuation of the real speed and the relative distance is too high for tracking the reference signal. Finally in time t 0 the relative distance between vehicles becomes zero and a collision happens. For preventing this situation, an optimization algorithm will be assigned to sustain the controller for these states and their appropriate gains will be achieved. By investigating the initialization states, another state that can cause a collision has been found. This state has been shown below. This collision happens when the value of the reference signal is greater than the speed of the front vehicle and the real speed of the host vehicle is among them. So an unnecessary increasing in the speed of the host vehicle will be occurred to track the reference signal. Then the speed of the host vehicle should be dropped fast because the reference signal is decreasing to arrive to the value of the front vehicle speed. Figure 3c shows this state and it can be seen that the reference signal starts from approximately 30 m/s and the front vehicle speed is 5 m/s. The real speed of the host vehicle is 25 m/s and because this value is smaller than the reference signal the speed of the host vehicle will be increased. This increment causes a lag between the real values and the reference values. So at time t 0 a collision will happen. This situation will be worse when the difference between the reference signal and the speed of the front vehicle is large. For preventing the collision of this state the reference signal will be corrected until it starts from an appropriate point.

Designing by Considering Initialization States and Discussions
By considering the investigations of the initialization states in the previous section, an unnecessary increasing in the speed of the host vehicle can lead to a lag between the real speed and the reference signal and finally leads to a collision. As it is obvious, this state happens when the difference between the reference signal and the stable state is high. For solving this problem one term of the difference of the real speed of two vehicles should be added to the reference signal. After moving from the initialization state to the stable state this term should be eliminated till the function between the host vehicle speed and the relative distance comes back to its original function. Adding this term to the reference signal leads to selecting the initialization point of the reference signal based on the difference between the real speeds of the vehicles. It will decrease the reference signal magnitude if this difference is large. Equation (12) shows the correction of the reference signal.
58 Improvement of Adaptive Cruise Control Performance by Considering Initialization States In equation (12), the b coefficient is a constant value which is determined based on the cruise speed V set . The exponential term in the reference signal is a forget factor to eliminates the added term with a specific rate which is determined by a coefficient. a and b values in this research by considering the determined V set , is set as 0.005 and 0.5 respectively. The equation (12) shows that in the initialization state, for the small values of time, if the speed of the host vehicle is larger than the speed front vehicle then the forget factor term will be a negative term that will decrease the reference signal. So the host vehicle speed can track the reference signal easily. On the other hand if the speed of the host vehicle is smaller than the speed front vehicle speed then reference signal will be increased in a short time and that will not lead to any problem like collision. Figure 4a shows operation of the corrected reference signal in the same initialization state, it can be seen that the real speed of the host vehicle tracks the reference signal well and therefore prevents the collision. In this situation the reference signal starts from 20 m/s, not 30 m/s in the previous state. So it avoids any increase in the real speed of the initialization state. It is essential that the controller of the ACC system be designed considering the initialization states, because in these states the system is not in the stable state and there is a probability of happening collision before arriving to the stable state. So the gains of the controller should be optimized for these situations. In this research BFO (Bacterial Foraging Optimization) algorithm is used for optimization.
BFO algorithm has been used widely as an optimization algorithm for controlling systems. The operation of this algorithm inspires from the social behavioral of the bacterial. Providing good performance in solving the optimization problems, this algorithm has taken the attention of the researchers in many different fields. In other algorithms such as particle swarm optimization (PSO) algorithm, the particles move to the best experiences of particles with a specific velocity vector and therefore the algorithm converges to one of the local minimum points. While BFO convergence to the local minimum points is less than these algorithms because in this method each bacterial moves to the several random directions by specific steps. If the results of the movement in this direction is better than previous answer then this position of bacterial will be accepted as a new position, else bacterial moves back to its previous position. So all of the bacterials will move to the all local minimum answers in the problem. But by producing new generations of the bacterial and elimination of the bacterial with less value in answers, finally one answer will be remained as the best answer for the optimization problem. In this algorithm the process of obtaining the answer can be categorized in four steps as below: 1. Searching: Each bacterial moves in random directions to find better answers. 2. Swarming: Among bacterials there is a repellent and attract that avoid aggregation of bacterial in a region and also causes movement of far bacterial to the bacterial that have better cost function. This method leading convergence to the optimum points. 3. Reproduction: in this step weaker bacterial will be eliminated and stronger bacterial will be duplicated based on a specific cost function 4. Elimination and dispersal: after the convergence of bacterials to several optimum points, some bacterials randomly will be eliminated and produce in some other places of searching area In this research there are four optimization variables and they are the gains of PID controller for both throttle and brake. So there are four directions for bacterial in searching step to finding the answers. There is a cost function for evaluating the answers that will be found by bacterials.
Equation (13) shows the cost function which is used in this research.
In above equation T is the total simulation time for each iteration in the BFO algorithm. In the cost function, square function has been used to avoid the negative values of the variables. Two errors of the speed and the relative distance respect to their reference values are considered as a safety factor. The magnitude of the acceleration of the host vehicle is considered in the cost function as comfort factor. For scaling safety and comfort factors in the cost function, β variable is used. Its value is depended to the total simulation time T. After optimizing process with BFO, the optimized variables can be achieved according to the table 2.    Figure 4b shows the performance of the controller in the initialization state. As shown in the figure 4b the difference between the real speed of the host vehicle and the front vehicle is high. It can be seen that in this state the system has not lost the stability besides tracking the reference signal appropriately. While for this initialization state in the figure 3b a collision will be happened. The reason is that the controller is designed by considering the initialization states which is neglected in the previous works. Now it should be investigated that the designed and optimized controller in the initialization states has the capability of tracking the reference signal in different driving situations like hard stop and stop and go or not. Therefore the speed of the front vehicle will not be considered as constant. Therefore a profile of the front vehicle speed like figure 5a will be considered that several driving situations exist in it. Also an unstable initialization state like equation (10) has been used in the system for evaluating the performance of it. The profile of the speed of the front vehicle shows besides of an unstable initialization state for the system, after a short time that system starts to work, a hard stop situation happens for front vehicle and variations of the speed is very high. Curves of figure 5 shows that by considering both unstable initialization states and the hard stop situations in the front vehicle speed profile, the controller can avoid the collision and tracks the reference signal appropriately. The speed curve of the figure 5 shows that at time=30 second approximately, after an accelerating in the host vehicle from speed 5 m/s to the reference signal 25 m/s, a hard decelerating happened and the speed of host vehicle should be dropped from 30 m/s to 0 m/s in a short time. While the relative distance curve shows that the relative distance between vehicles has not been exceeded from 0 m and a collision will not happen. The error of the real speed and the reference signal curve also shows that the designed controller has good performance in tracking the reference signal in the stable state. For the total evaluation of the performance of the corrected reference signal and the optimized controller, some metrics has been introduced as shown in table 3. First metric is the collision which happens when the relative distance is negative. The second metric is the integral of the absolute error of the velocity which shows the total error of the host velocity and the reference signal. If it has a large value then the performance of the system will be degraded and safety of passengers is not considered. The third metric is integral of the absolute acceleration which is used for evaluating the comfort behavior of the system. The more values of this metric show less comfortable behavior.
From the values of table 3 it can be obtained that the safety constraint of the system in our approach has been improved 74.2% for the considered profile of figure 5. The comfort metric also has been improved 15% in the considered profile.

Conclusions
In the previous works on the ACC system, the designing has been done for the stable states. However the previous researches have not considered the initialization states which have important effect on the stability, in the designing of the system in the stable state. In this research by investigating the effects of initialization states on the stability and tracking the reference signal, it has been shown that these states can lead to a collision between vehicles. Two important reason for poor performance of the controller of ACC system in this research has been demonstrated. The first reason is the unnecessary increasing in the speed of the vehicle in the initialization state based on the reference signal when the speed of front vehicle is low. By correcting the reference signal with a forget factor this problem has been eliminated.
The Second reason is the high difference value between the speed of the host vehicle and the speed of the front vehicle. This difference leads to large amounts of acceleration and deceleration which causes an unstable state for the host vehicle in the initialization state. To solve this problem, an optimization algorithm has been used. It is demonstrated that by optimizing the gains of PID controller for the specific initialization state, collision can be avoided.
In future works by optimizing gains of the controller for several initialization states, the ACC systems will choose their gains of controller based on the nearest initialization state that has been optimized before. So any changes in the system can be considered as an initialization state. Therefore the system behavior can be more intelligent. Furthermore by using different functions for reference signal, considering safety and comfort constraints, the performance of the ACC Universal Journal of Control and Automation 3(3): 53-61, 2015 61 system can be improved.