Article Automatic Longitudinal Regenerative Control of EVs Based on a Driver Characteristics-Oriented Deceleration Model

Gyubin Sim 1 , Seongju Ahn 2 , Inseok Park 3, Jeamyoung Youn 3, Seungjae Yoo 3 and Kyunghan Min 2,*

1 Department of Automotive Electronics and Controls, Hanyang University, Seoul 04763, Korea; [email protected] 2 Department of Automotive Engineering, Hanyang University, Seoul 04763, Korea; [email protected] 3 Research & Development Division, , Hwaseong 18280, Korea; [email protected] (I.P.); [email protected] (J.Y.); [email protected] (S.Y.) * Correspondence: [email protected]; Tel.: +82-2-2220-0453

 Received: 31 July 2019; Accepted: 11 September 2019; Published: 20 September 2019 

Abstract: To preserve the fun of driving and enhance driving convenience, a smart regenerative braking system (SRS) is developed. The SRS provides automatic regeneration that is appropriate for the driving conditions, but the existing technology has a low level of acceptability and comfort. To solve this problem, this paper presents an automatic regenerative control system based on a deceleration model that reflects the driver’s characteristics. The deceleration model is designed as a parametric model that mimics the driver’s behavior. In addition, it consists of parameters that represent the driver’s characteristics. These parameters are updated online by a learning algorithm. The validation results of the testing show that the vehicle maintained a safe distance from the leading while simulating a driver’s behavior. Of all the deceleration that occurred during the testing, 92% was conducted by the automatic regeneration system. In addition, the results of the online learning algorithm are different based on the driver’s deceleration pattern. The presented automatic regenerative control system can be safely used in diverse car-following situations. Moreover, the system’s acceptability is improved by updating the driver characteristics. In the future, the algorithm will be extended for use in more diverse deceleration situations by using intelligent transportation system information.

Keywords: smart regenerative braking system (SRS); advanced driver assistance system (ADAS); driver characteristics; driver behavior; automatic regeneration

1. Introduction Various advanced driving assistance systems (ADASs) are being applied to production as vehicle control technology is improved and the prices of sensors continue to decrease. Advanced cruise control (ACC) is widely provided as a trim option by many original equipment manufacturer (OEM) companies such as Hyundai, , Volkswagen, etc. However, the fun of driving is decreased as ACC minimizes the driver’s control of the vehicle. Some drivers want to accelerate themselves even while ACC is operating, because most of the fun of driving comes from acceleration. To satisfy both convenience and the fun of driving, a system of automatic regenerative control called the smart regenerative braking system (SRS) was developed [1]. The SRS generates adequate regeneration according to the specific car-following situation, which means the driver does not use the pedal. Therefore, it preserves the fun of driving while increasing the convenience. In addition,

World Journal 2019, 10, 58; doi:10.3390/wevj10040058 www.mdpi.com/journal/wevj World Electric Vehicle Journal 2019, 10, 58 2 of 23 the vehicle’s energy efficiency can be improved by from the automatic regenerative braking system. The SRS is a type of intelligent braking system that controls regenerative braking according to the driving conditions. There have been various studies regarding intelligent braking systems. Lin et al. proposed an active regenerative control system that uses an energy boost mechanism to improve the braking performance [2]. In another paper [3], a fuzzy logic–based regenerative braking strategy that determines the distribution between the brake and regeneration was proposed to maximize the driving range of electric vehicles (EVs). In addition, another study [4] suggested an anti-disturbance controller to shorten the braking distance and time. While these papers had different objectives, they all presented an intelligent braking system. However, the existing SRS applied in production vehicles has some limitations. First, it utilizes map-based control, which has only three discrete levels [1]. This can cause driver discomfort during level transitions [5,6]. Second, the deceleration profile of an SRS is different from human driving, generating heterogeneity [7–9]. Third, the SRS cannot stop the vehicle, so it is difficult to use in situations with heavy traffic. Considering these limitations, the deceleration used in automatic regenerative braking should meet certain requirements. First, it is necessary to simulate human deceleration behavior and reflect driver characteristics in order to reduce the discomfort and heterogeneity of the system [10–13]. Second, the SRS should generate a smooth deceleration profile while maintaining a safe distance from the leading car. Third, it should be able to be applied in diverse car-following situations, including traffic jams, to extend its usability. There have been various studies attempting to represent vehicle motion in car-following conditions. The intelligent driver model (IDM) is a representative parametric car-following model [14]. The parameters of the IDM reflect the driver’s driving characteristics, so it is possible to reflect each driver’s acceleration and deceleration patterns to some extent. However, it cannot mimic human deceleration because it does not consider reaction delay. In addition to the parametric modeling method, artificial neural networks (ANNs) are actively used in car-following models. In [15], Khodayari et al. suggested a modified car-following model based on a neural network model that considers the human driver effect. Another study [16] showed that an ANN model developed using data of one driver has low accuracy when used by other drivers. The car-following model based on the ANN has strengths, in that it can mimic human behavior by learning the driving data and consider the nonlinear characteristics between multiple inputs and acceleration with little processing time. However, it is difficult to reflect driver characteristics online because the ANN model is trained with a huge amount of data, which requires a relatively long time. To overcome the limitations of the existing SRS and previous studies, this paper suggests a method of automatic regenerative control based on a deceleration model that reflects driver characteristics. First, the state recognition algorithm was developed to recognize the necessity of automatic regenerative braking and determine the details of car-following situations. Second, a parametric deceleration model was designed with parameters that represent the driver’s deceleration pattern. Especially, the deceleration model was designed to mimic a human driver’s behavior when decelerating. Third, learning vectors were defined to manage the driver’s deceleration pattern and calculate the driver parameters. Last, an online learning algorithm was designed to update the learning vectors. The rest of the paper is organized as follows. Section2 describes the overall structure of the algorithm. Section3 describes the state recognition algorithm, which recognizes the necessity of deceleration and its cause. In Section4, the deceleration model, which consists of driver parameters, is explained. Section5 describes the online learning algorithm, which updates the learning vector that represents the driver characteristics. Section6 shows the validation results when the designed algorithm was applied to the test vehicle. Section7 concludes the paper. World Electric Vehicle Journal 2019, 10, 58 3 of 22 the reference deceleration of the next time step, and the acceleration controller determines an adequate value of torque to follow the reference deceleration. WorldThe Electric deceleration Vehicle Journal 2019planning, 10, 58 algorithm contains three smaller algorithms: state recognition3 of 23 algorithm, deceleration model, and online learning algorithm. First, the state recognition algorithm recognizes2. System Overviewthe state of vehicle motion and determines the deceleration condition as either car- following, traffic jam, or cut-in. Second, the deceleration model calculates the reference deceleration usingThe the systemdesigned configuration parametric ofmodel. automatic Third, regenerative the online controllearning based algorithm on the proposedupdates the algorithm driver characteristics.is shown in Figure The 1online. Automatic learning regenerative algorithm only control operates is conducted when the by acceleration the deceleration controller planning is not operating,algorithm because and acceleration it compares controller. the planning The deceleration results and planningthe driving algorithm data of the has human the role driver. of calculating Lastly, thethe acceleration reference deceleration controller ofcontrols the next the time vehicle step, to and follow the acceleration the reference controller deceleration determines calculated an adequate by the planningvalue of torquealgorithm. to follow the reference deceleration.

Figure 1. Overall structure of the algorithm. Figure 1. Overall structure of the algorithm. The deceleration planning algorithm contains three smaller algorithms: state recognition algorithm, 3. State Recognition Algorithm deceleration model, and online learning algorithm. First, the state recognition algorithm recognizes the stateIn this of vehiclesection, motion the state and recognition determines algorithm the deceleration is proposed condition to highlight as either the car-following, necessity of tra theffic decelerationjam, or cut-in. and Second, determine the deceleration the detailed modelsituation calculates of the car-following. the reference decelerationFor this purpose, using the the algorithm designed consistsparametric of two model. recognition Third, the algorithms: online learning driving algorithm state and updates deceleration the driver condition. characteristics. Each algorithm The online was designedlearning algorithmwith the state only flowch operatesart when and is the described acceleration in Sections controller 3.1 isand not 3.2 operating, individually. because it compares the planning results and the driving data of the human driver. Lastly, the acceleration controller 3.1.controls Driving the State vehicle Recognition to follow the reference deceleration calculated by the planning algorithm.

3. StateAutomatic Recognition regenerative Algorithm braking can operate only when the driver does not accelerate the vehicle. Therefore, driving condition was defined in order to monitor the vehicle’s motion based on the stateIn this of the section, accelerator the state and recognition brake pedal. algorithm The driving is proposed condition to highlightincludes four the necessitystates: driving, of the coasting,deceleration braking, and determine and stopping. the detailed Driving situation is when of the the car-following. driver pushes For thisthe purpose,accelerator the pedal, algorithm so automaticconsists of regenerative two recognition control algorithms: cannot operate. driving Coasti state andng is deceleration when the driver condition. does Eachnot push algorithm either wasthe acceleratordesigned with or the the statebrake flowchart pedal, and and the is describedvehicle can in Sectionsbe controlled 3.1 and by 3.2 the individually. automatic regenerative control. Braking is when the driver pushes the brake pedal. In this state, the deceleration model can 3.1. Driving State Recognition generate the reference deceleration, but acceleration control is not possible. Stopping is when the vehicleAutomatic speed is regenerativezero. Automatic braking regenerative can operate contro onlyl whendoes not the operate, driver does because not accelerate there is no the need vehicle. to decelerateTherefore, in driving this state. condition The changes was defined of driving in order stat are monitor shown the in vehicle’sFigure 2. motionIn addition, based the on operability the state of ofthe each accelerator algorithm and and brake automatic pedal. The regenerative driving condition control includesaccording four to the states: driving driving, conditions coasting, is braking,shown inand Table stopping. 1. The Drivingonline learning is when thealgorithm driver pushesonly operates the accelerator when the pedal, driver so decelerates automatic regenerativethe vehicle, becausecontrol cannotit needs operate. the driving Coasting data. is when the driver does not push either the accelerator or the brake pedal, and the vehicle can be controlled by the automatic regenerative control. Braking is when the driver pushes the brake pedal. In this state, the deceleration model can generate the reference deceleration, but acceleration control is not possible. Stopping is when the vehicle speed is zero. Automatic regenerative control does not operate, because there is no need to decelerate in this state. World Electric Vehicle Journal 2019, 10, 58 4 of 23

The changes of driving state are shown in Figure2. In addition, the operability of each algorithm and automatic regenerative control according to the driving conditions is shown in Table1. The online learning algorithm only operates when the driver decelerates the vehicle, because it needs the Worlddriving Electric data. Vehicle Journal 2019, 10, 58 4 of 22

Figure 2. Flowchart of driving states. Figure 2. Flowchart of driving states. Table 1. Operability of each algorithm according to the driving state. Table 1. Operability of each algorithm according to the driving state. Driving State Deceleration Model Online Learning Algorithm Acceleration Control Deceleration Online Learning Acceleration DrivingDriving State X X X Model Algorithm Control Coasting O X O DeceleratingDriving OX O X X X StoppingCoasting XO X X O X Decelerating OO, possible; X, impossible. O X Stopping X X X O, possible; X, impossible. 3.2. Deceleration Condition Recognition 3.2. DecelerationThe deceleration Condition model Recognition was designed to use different equations according to the vehicle speed, becauseThe deceleration keeping appropriate model was distance designed is crucial to use when differ theent relative equations distance according is small to andthe vehicle speedspeed, is becauselow. Therefore, keeping theappropriate deceleration distance condition is crucial was when defined the to relative represent distance the current is small deceleration and vehicle situation. speed isThe low. deceleration Therefore, conditionthe deceleration includes condition four states: wa none,s defined car-following, to represent tra ffithec jam,current and deceleration cut-in. None situation.means deceleration The deceleration because condition of the preceding includes car four is notstates: necessary. none, car-following, In this case, the traffic deceleration jam, and planning cut-in. Nonealgorithm means does deceleration not calculate because the reference of the preceding deceleration. car is Car-followingnot necessary. meansIn this decelerationcase, the deceleration because of planningthe leading algorithm car when does the not vehicle calculate speed the is overrefere 10nce m/ s.deceleration. Traffic jam meansCar-following deceleration means by deceleration the preceding becausevehicle of with the a leading velocity car under when 10 the m/s. vehicle Cut-in speed means is deceleration over 10 m/s. is Traffic needed jam because means a vehicledeceleration suddenly by thegot preceding into the same vehicle lane. with It is a recognizedvelocity under when 10 the m/s. di ffCut-inerence means of relative deceleration distance betweenis needed the because previous a vehicleand current suddenly time got steps into is morethe same than 4lane. m, which It is re iscognized the usual when overall the vehicle differenc length.e of relative distance between the previous and current time steps is more than 4 m, which is the usual overall vehicle length. 4. Parametric Deceleration Model 4. ParametricIn this section, Deceleration we propose Model a parametric deceleration model that is specialized for deceleration andIn has this some section, driver we parameters. propose a parametric First, the driving deceler dataation acquiredmodel that from is specialized the vehicle experimentfor deceleration were andanalyzed. has some Then, driver the decelerationparameters. First, profile the was driving split into data braking acquired sections. from the Based vehicle on the experiment braking sections, were analyzed.the driver Then, parameters the deceleration were defined, profile which was aresplit needed into braking to generate sections. a deceleration Based on the profile braking and sections, represent thethe driver driver’s parameters deceleration were pattern. defined, Using which the driver are needed parameters, to generate the deceleration a deceleration model wasprofile designed and representwith diff erentthe driver’s parametric deceleration equations pattern. according Using to the driver braking parameters, sections. the deceleration model was designed with different parametric equations according to the braking sections. 4.1. Split of Braking Section 4.1. SplitThe of generalBraking decelerationSection profiles in the car-following situation are shown in Figure3. With the deceleration profile and pedal sensor data, the human driver’s behavior in the car-following condition The general deceleration profiles in the car-following situation are shown in Figure 3. With the can be divided into four steps: deceleration profile and pedal sensor data, the human driver’s behavior in the car-following condition can be divided into four steps: 1. Release the accelerator pedal; 2. Push the brake pedal to some extent with a similar ratio; 3. Continuously push the brake pedal to keep a safe distance from the leading car; 4. Gradually release the brake pedal. World Electric Vehicle Journal 2019, 10, 58 5 of 23

1. Release the accelerator pedal; 2. Push the brake pedal to some extent with a similar ratio; 3. Continuously push the brake pedal to keep a safe distance from the leading car;

4.World ElectricGradually Vehicle release Journal 2019 the, brake10, 58 pedal. 6 of 22

Figure 3. Deceleration profile in general car-following. Figure 3. Deceleration profile in general car-following. With this procedure, the deceleration profile is split into four braking sections: coasting, initial, adjustment, and termination. Each braking point shown in Figure3 represents the start of each braking section. The deceleration profile shown in Figure3 was acquired through the vehicle test. The test driver drove a electric vehicle in a situation with a leading car. The deceleration profile is the sliced one when the ego vehicle decelerates to reduce its speed because of the preceding vehicle’s deceleration. The coasting point refers to the time when the driver releases the accelerator pedal, so it is determined by the accelerator pedal sensor (APS) value. The initial point is the time when the driver pushes the brake pedal, which is found by the brake pedal sensor (BPS) value. After the initial point, the driver pushes the brake pedal with a similar ratio of acceleration. Then, the driver continuously pushes the brake pedal to maintain deceleration after the adjustment point. The adjustment point is determined as the time when vdiFigure f f _re f ,4. calculated Profiles of by𝑣_ Equation and (1), 𝑣, is maximum.. The vre f ,adj in Equation (1) is calculated with Equation (2), which is a modified equation of the basic intelligent driver model (IDM),4.2. Driver a representative Parameters car-following model developed in 2000 by Treiber [14]. The basic equation of the IDM is shown in Equation (3), where a , v , and s represent acceleration, Based on the four braking sections, the deceleration modelα wasα designed.α The deceleration velocity, and relative distance of the ego vehicle; T is the minimum distance; amax is the maximum model uses some parameters to generate the deceleration profile. These are the driver parameters, acceleration; b is comfortable braking deceleration; v refers to relative velocity; and v is the desired which are determined based on the car-following situationrel and the driver’s deceleration0 pattern. The velocity on free roads. It represents the motion of the vehicle in a car-following situation with the types of driver parameters and their descriptions are shown in Table 2. The four driver parameters velocity and distance term, which are the second and third terms in Equation (3). The velocity term described in Table 2 were selected because their values depend on both driving conditions and driver means that the driver controls the vehicle speed considering v on a free road where there is no leading characteristics. Each driver parameter is explained in detail in0 the next part. car. The distance term refers to the driver controlling the relative distance adequately to maintain a safe distance. Its numerator can be considered as the desired distance in a car-following situation. Table 2. Types and descriptions of driver parameters.

Driver Parameter v = vα v Description (1) di f f _re f − re f ,adj Initial distance (𝑠) Relative distance at initial point v v Adjustment distance (𝑠) =Relativeα distancemin at adjustment point vre f ,adj − 1 (2) Initial jerk (𝜙) Slope of acceleration 4 in initial section 1 aα Velocity difference (𝑣) Velocity difference withmax( aleadingα ) car speed at end of deceleration − | |

4.3. Deceleration Model Based on Braking Sections The deceleration model was designed as different parametric equations according to the braking sections to reflect the features of the deceleration profile. In this part, the conditions of each section start and parametric equation are described. When the braking points in the driving data are determined (explained in Section 4.1), BPS, minimum velocity, and maximum absolute acceleration are used. In the deceleration model, however, BPS cannot be used because the driver does not push the brake pedal, and the minimum velocity and maximum absolute acceleration cannot be known World Electric Vehicle Journal 2019, 10, 58 6 of 23 World Electric Vehicle Journal 2019, 10, 58 6 of 22

   2  v v   !4  s + v T + α rel     0 α 2 √a b    vα  max   aα = amax1   . (3)  − v0 −  sα      

The termination point is determined as the point where vre f ,term, calculated by Equation (4), is minimum. It is also a modified version of basic IDM equation shown in Equation (3). Equations (2) and (4) were modified from the basic IDM equation to find the adjustment and termination points individually. They are the value of v0 calculated from the IDM equation, which eliminates the distance term. The way of modifying the equation was found experimentally, and vdi f f _re f and vre f ,term are shown in Figure4. As shown in Figure4, vdi f f _re f is maximized at the end of the initial section, and vre f ,term is minimized at the end of the adjustment section. v = α vre f ,term 1 . (4)   4 1 aα max( aα ) Figure 3. Deceleration profile− in general| | car-following.

FigureFigure 4. 4. ProfilesProfiles of of 𝑣v_di f f _re f andandv re𝑣, f ,term. .

4.2.4.2. DriverDriver ParametersParameters BasedBased on on the the four four braking braking sections, sections, the decelerationthe deceleration model model was designed. was designed. The deceleration The deceleration model usesmodel some uses parameters some parameters to generate to generate the deceleration the decele profile.ration These profile. are These the driver are the parameters, driver parameters, which are determinedwhich are determined based on the based car-following on the car-following situation and situation the driver’s and the deceleration driver’s deceleration pattern. The pattern. types The of drivertypes parametersof driver parameters and their descriptionsand their descriptions are shown inare Table shown2. The in Table four driver 2. The parameters four driver described parameters in Tabledescribed2 were in selected Table 2 becausewere selected their values because depend their values on both depend driving on conditions both driving and driverconditions characteristics. and driver Eachcharacteristics. driver parameter Each driver is explained parameter in detail is explained in the next in detail part. in the next part.

TableTable 2. 2.Types Types and and descriptions descriptions of of driver driver parameters. parameters.

DriverDriver ParameterParameter Description Description

InitialInitial distancedistance ((s𝑠init)) RelativeRelative distance distance at initial at initial point point Adjustment distance (s𝑠adj)) RelativeRelative distance distance at adjustment at adjustment point point InitialInitial jerkjerk ((φ𝜙init)) SlopeSlope of acceleration of acceleration in initial in initial section section Velocity didifferencefference ((v𝑣di f f )) VelocityVelocity difference difference with with leading leading car carspeed speed at end at end of deceleration of deceleration

4.3.4.3. DecelerationDeceleration ModelModel BasedBased onon BrakingBraking SectionsSections TheThe decelerationdeceleration modelmodel waswas designeddesigned asas didifferenfferenttparametric parametricequations equationsaccording according to tothe the brakingbraking sectionssections to to reflect reflect the the features features of of the the deceleration deceleration profile. profile. In this In this part, part, the conditionsthe conditions of each of sectioneach section start andstart parametric and parametric equation equation are described. are described. When the When braking the points braking in thepoints driving in the data driving are determined data are (explaineddetermined in (explained Section 4.1 ),in BPS, Section minimum 4.1), BPS, velocity, mini andmum maximum velocity, absoluteand maximum acceleration absolute are used.acceleration In the decelerationare used. In model,the deceleration however, model, BPS cannot however, be used BPS because cannot thebe used driver because does not the push driver the does brake not pedal, push the brake pedal, and the minimum velocity and maximum absolute acceleration cannot be known World Electric Vehicle Journal 2019, 10, 58 7 of 23 and the minimum velocity and maximum absolute acceleration cannot be known until the deceleration ends. Therefore, a new algorithm to find each braking point was designed. Then, the deceleration model was designed depending on the braking section.

4.3.1. Coasting Section In the coasting section, neither the accelerator nor the brake pedal is pushed, so deceleration stays at a very small value. To mimic the shape of deceleration in the coasting section, the deceleration model in the coasting section is designed as a constant function, as shown in Equation (5). In Equation (5), acoast means coasting acceleration, and its value was determined as the average value of acceleration in the coasting section from the vehicle experimental data.

a(k) = acoast. (5)

4.3.2. Initial Section Unlike when the driver decelerates, the brake pedal is not used when SRS is in operation. Therefore, the relative distance was used to find the start of the initial section. The initial distance is calculated by the coasting distance based on their correlation, which is shown in Figure5. The details of its calculation are described in Section5.

Figure 5. Correlation of coast distance and initial distance.

In the initial section, the driver pushes the brake pedal with a similar ratio of acceleration. Therefore, the slope of acceleration is in a similar range, as shown in Figure3. Because of the features in the initial section, the parametric equation was designed as a first-degree polynomial function, as shown in Equation (6), where φinit is the initial jerk and Ts is the sampling rate of the deceleration model. The initial jerk depends on the car-following conditions, so its value is large when the leading

1

World Electric Vehicle Journal 2019, 10, 58 8 of 23 car gets close very quickly or the relative distance is small. In addition, it is determined based on the driver’s characteristics, which is explained in Section5.

a(k) = a(k 1) + φ Ts. (6) − init 4.3.3. Adjustment Section Similar to determining the start point of the initial section, the start of the adjustment section is set using the relative distance. The adjustment distance is highly correlated with the initial distance as shown in Figure6. Therefore, the adjustment distance is calculated using the initial distance, and the adjustment section starts when the relative distance reaches the adjustment distance.

Figure 6. Correlation of initial distance and adjustment distance.

In the adjustment section, the driver continuously pushes the brake pedal to keep a safe distance. To simulate the driver’s behavior in the adjustment section, the deceleration model needs the reference value to follow. To find the appropriate equation to be used as reference acceleration, the constant acceleration (CA) model, which is widely used in speed trajectory prediction, was used [17–21]. The CA model is a parametric equation to calculate the acceleration in order to reach a desirable velocity at a specific location, as shown in Equation (7), where v2 is the desirable velocity, v1 is the current vehicle speed, and d is the distance to the specific location.

v2 v2 a = 2 − 1 . (7) CA 2d Most drivers tend to decelerate to follow the leading vehicle’s speed in car-following situations. However, some people decelerate more than the leading car speed, and others decelerate less. To reflect this type of deceleration pattern, Equation (7) was modified as Equation (8), which replaces v2 as v v , so it can consider different deceleration patterns. For example, if v is 1 m/s, it means 2 − di f f di f f the driver has a tendency to decelerate 1 m/s less than the leading vehicle.

2   2 v2 vdi f f v1 a = − − . (8) CA 2d

2 World Electric Vehicle Journal 2019, 10, 58 8 of 22 Adjustment distance [m] distance Adjustment

Figure 6. Correlation of initial distance and adjustment distance.

In the adjustment section, the driver continuously pushes the brake pedal to keep a safe distance. To simulate the driver’s behavior in the adjustment section, the deceleration model needs the reference value to follow. To find the appropriate equation to be used as reference acceleration, the constant acceleration (CA) model, which is widely used in speed trajectory prediction, was used [17– 21]. The CA model is a parametric equation to calculate the acceleration in order to reach a desirable velocity at a specific location, as shown in Equation (7), where 𝑣 is the desirable velocity, 𝑣 is the current vehicle speed, and 𝑑 is the distance to the specific location.

𝑎 = . (7) Most drivers tend to decelerate to follow the leading vehicle’s speed in car-following situations. However, some people decelerate more than the leading car speed, and others decelerate less. To reflect this type of deceleration pattern, Equation (7) was modified as Equation (8), which replaces

𝑣 as 𝑣 −𝑣, so it can consider different deceleration patterns. For example, if 𝑣 is 1 m/s, it

Worldmeans Electric the driver Vehicle Journal has a2019 tendency, 10, 58 to decelerate 1 m/s less than the leading vehicle. 9 of 23 𝑎 = . (8) Figure7 shows the measured deceleration from the vehicle experiment and the modified CA Figure 7 shows the measured deceleration from the vehicle experiment and the modified CA model when the desirable velocity is the leading vehicle speed and d is the relative distance. In the model when the desirable velocity is the leading vehicle speed and d is the relative distance. In the adjustment section, the deceleration slowly follows the CA model. adjustment section, the deceleration slowly follows the CA model.

Figure 7. Comparison of measured deceleration and constant acceleration model.model. However, in traffic jam situations, where the relative distance is small and vehicle speed is low, the value calculated by the CA model is not enough to maintain a safe distance from the preceding car. Therefore, the constant time gap (CTG) policy was added to calculate the reference acceleration in these situations [22–26]. The acceleration for CTG is calculated with Equations (9)–(12), where smin is the minimum relative distance, li 1 is the length of the preceding car, xi and xi 1 are the positions of − − the ego and leading , and tttc and λ are control parameters.

. Ldes = smin + tttcxi (9)

i = xi xi 1 + li 1 (10) − − − . δi = i + tttcxi (11) 1  .  aCTG = i + λδi . (12) −tttc If the equation for reference acceleration is converted to CTG policy discretely, the level transition of reference acceleration can be generated. To prevent the level transition, the equation of reference acceleration is designed to mix the weighted values of the CA model and CTG, as shown in Equation (13). The value of wCA is 1 when the velocity is 10 m/s and becomes smaller as the velocity decreases. The value of wCTG is 0 when the vehicle speed is 10 m/s and increases as the velocity decreases. ( aCA (v > 10 m/s) are f = . (13) wCAaCA + wCTGaCTG (v < 10 m/s)

To represent the pattern that deceleration follows the reference acceleration, the parametric equation was designed as Equation (14). As a result, deceleration follows the reference acceleration by I-control with the gain kadj. The gain is set as a small value to simulate slow follow-up.

k 1 X−   a(k) = a(k 1) + k a (i) a(i) Ts. (14) − adj re f − i=adj World Electric Vehicle Journal 2019, 10, 58 10 of 23

4.3.4. Termination Section As shown in Figure7, deceleration follows the reference acceleration strongly after the two values meet at a specific point. Therefore, the point where the two values intersect was defined as the termination point. In the termination section, the same parametric equation was used as the equation of the adjustment section, as shown in Equation (15), but the gain was determined as a larger value than the adjustment section to represent fast follow-up.

k 1 X−   a(k) = a(k 1) + kterm a (i) a(i) Ts. (15) − re f − i=term

5. Online Learning Algorithm In this section, the learning vectors are defined to manage the driver characteristics effectively. In addition, the learning vectors are updated online by the online learning algorithm, which changes their values by comparing the values of parameters from driving data and planning results. The online learning algorithm operates when the driver finishes decelerating. The designed algorithm reflects the driver characteristics with the learning vector, which has only eight values, so it is computationally light and suitable to implement in the vehicle.

5.1. Learning Vectors

5.1.1. Driver Parameters and Correlated Indices The four driver parameters, whose values change according to the car-following situation and driver characteristics, are defined in Section4. Among them, the initial jerk is used in explaining the overall online learning algorithm. As mentioned in Section 4.2, the values of driver parameters are dependentWorld Electric onVehicle the Journal driving 2019 situation,, 10, 58 so they were matched to the correlated indices that represent10 of the 22 driving situation, as shown in Table3. dependent on the driving situation, so they were matched to the correlated indices that represent the driving situation, as shownTable in Table 3. Driver 3. parameters and correlated indices. The initial jerk is correlated with the initial index. The initial index means the difference between deceleration andDriver reference Parameter acceleration, which is mentioned in Section Correlated 4.3.3. IndexAs shown in Figure 8, the bigger the valueInitial of distance the initial (sinit )index, the bigger the absolute valueCoasting of the distanceinitial jerk. Although the correlation ofAdjustment the initial jerk’s distance absolute (sadj) value and the initial index is proportional,Initial distance it differs depending on the driver. ForInitial example, jerk (φ initdriver) 3 has a smaller absolute value thanInitial driver index 2 in the same initial Velocity difference (v ) Initial index index, which means that driver 2di fis f a moderate driver.

The initial jerk is correlatedTable with 3. Driver the initial parameters index. an Thed correlated initial index indices. means the difference between deceleration and reference acceleration, which is mentioned in Section 4.3.3. As shown in Figure8, Driver Parameter Correlated Index the bigger the value of the initial index, the bigger the absolute value of the initial jerk. Although the Initial distance (𝑠) Coasting distance correlation of the initial jerk’s absolute value and the initial index is proportional, it differs depending Adjustment distance (𝑠) Initial distance on the driver. For example, driver 3 has a smaller absolute value than driver 2 in the same initial index, Initial jerk (𝜙) Initial index which means that driver 2 is aVelocity moderate difference driver. (𝑣) Initial index

FigureFigure 8.8. CorrelationCorrelation analysisanalysis ofof thethe initialinitial jerk.jerk.

5.1.2. Learning and Effective Probability Vectors To manage the different correlations of driver parameters and correlated indices depending on the driver, the learning vector was defined. It has eight values of driver parameters according to the predetermined index vector, as shown in Equations (16) and (17), where 𝑉 is the learning vector and 𝑉(𝑖) is ith element of the learning vector. Figure 9 shows an example of the learning vector after being updated by the online learning algorithm. The index vector is fixed as eight values considering the range of each index’s value. An example of the learning vector for the initial jerk is shown in Table 4, representing the value of the initial jerk according to each initial index’s value. The basic learning vector was defined based on the average value of the driver parameters, then it is updated by the online learning algorithm, which is illustrated in the next part.

𝑉 =𝑃,,𝑃,,⋯,𝑃,,𝑃, (16)

𝑉(𝑖) =𝑃, , 𝑖 ∈ {1,2, ⋯ ,7,8}. (17) The major role of the learning vector is managing driver characteristics, but there is also one more important thing that it performs. The values of driver parameters used in the deceleration model are calculated based on the learning vector. The learning vector only has eight values of driver parameters according to the predetermined eight values of the correlated indices. Therefore, it is impossible to calculate the values of the driver parameters with only a single index value and the learning vector. World Electric Vehicle Journal 2019, 10, 58 11 of 23

5.1.2. Learning and Effective Probability Vectors To manage the different correlations of driver parameters and correlated indices depending on the driver, the learning vector was defined. It has eight values of driver parameters according to the predetermined index vector, as shown in Equations (16) and (17), where Vθ is the learning vector and Vθ(i) is ith element of the learning vector. Figure9 shows an example of the learning vector after being updated by the online learning algorithm. The index vector is fixed as eight values considering the range of each index’s value. An example of the learning vector for the initial jerk is shown in Table4, representing the value of the initial jerk according to each initial index’s value. The basic learning vector was defined based on the average value of the driver parameters, then it is updated by the online learning algorithm, which is illustrated in the next part. h i V = P , P , , P , P (16) θ drv,1 drv,2 ··· drv,7 drv,8

World Electric Vehicle Journal 2019, 10, 58 V (i) = P , i 1, 2, , 7, 8 .11 of (17) 22 θ drv,i ∈ { ··· }

Figure 9. Learning vector of initial jerk. Figure 9. Learning vector of initial jerk. Table 4. Example of learning vector for initial jerk. Table 4. Example of learning vector for initial jerk. Index Number 1 2 3 4 5 6 7 8 Index Numbe r 1 2 3 4 5 6 7 8 Initial index m/s2 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 Initial index (m/s) 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 LearningLearning vector vector for for initial initial jerk (m/s) −0.6 −0.76 −0.86 −0.96 −1.16 −1.45 −1.77 −2.09   0.6 0.76 0.86 0.96 1.16 1.45 1.77 2.09 jerk m/s3 − − − − − − − − To solve this problem, the effective probability vector was defined. It has eight values for how muchThe each major value role is of used the learning in calculating vector is the managing driver driverparameters. characteristics, The procedure but there of iscalculating also one more the importanteffective probability thing that itvector performs. of the Theinitial values index of is driver described parameters as follows: used in the deceleration model are calculated1. Calculate based the initial on the index learning from vector. the driving The learning data; vector only has eight values of driver parameters according2. Generate to the the Gaussian predetermined distribution, eight valueswhich has of the the correlatedmean value indices. of the initial Therefore, index it calculated is impossible at step to calculate1, as shown the in values Figure of 10, the using driver Equation parameters (18), with where only 𝑎a is single the value index and value 𝜎 andis the the standard learning deviation vector. of theTo initial solve index; this problem, the effective probability vector was defined. It has eight values for how much each value is used in calculating the driver parameters. The procedure of calculating the effective 1 () probability vector of the initial index is described𝑓(𝑥) = as follows:𝑒 . (18) √2𝜋𝜎 1. Calculate the initial index from the driving data;

Figure 10. Gaussian distribution using value of initial index. World Electric Vehicle Journal 2019, 10, 58 11 of 22

World Electric Vehicle Journal 2019, 10, 58 Figure 9. Learning vector of initial jerk. 12 of 23

Table 4. Example of learning vector for initial jerk. 2. Generate the Gaussian distribution, which has the mean value of the initial index calculated at Index Number 1 2 3 4 5 6 7 8 step 1, as shown in Figure 10, using Equation (18), where a is the value and σ is the standard Initial index (m/s) 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 deviation of the initial index; Learning vector for initial jerk (m/s ) −0.6 −0.76 −0.86(x a)2−0.96 −1.16 −1.45 −1.77 −2.09 1 − 2 fg(x) = e− 2σ . (18) √ 2 To solve this problem, the effective probability2 πσvector was defined. It has eight values for how 3.muchExtract each eachvalue value is used matching in calculating to the predetermined the driver parameters. vector of the The initial procedure index, whichof calculating is shown the as effectiveblue probability squares in Figurevector 10of; the initial index is described as follows: 4.1. CalculateNormalize the theinitial eight index values from extracted the driving in step data; 3 to make the sum of the eight values equal to 1, as 2. Generateshown inthe Equation Gaussian (19), distribution, where Idx which(i) is the hasi -ththe value mean of value the indexof the vectorsinitial index shown calculated in Table4 at. step 1, as shown in Figure 10, using Equation (18), where 𝑎 is the value and 𝜎 is the standard deviation (Idx(i) a)2 ! 1 2− of the initial index; Pe f f (i) = Norm e− 2σ . (19) √2πσ2 1 () 𝑓(𝑥) = 𝑒 . (18) √2𝜋𝜎

FigureFigure 10. 10.Gaussian Gaussian distributiondistribution usingusing valuevalue ofof initialinitial index. index.

After the procedure described above, the effective probability vector of the initial index that has eight values can be acquired. Effective probability vectors of the other correlated indices are calculated with the same procedure.

5.1.3. Calculation of the Driver Parameters As mentioned in Section4, the driver parameters are used in the deceleration model, so these values should be pre-calculated to generate the reference deceleration. To calculate the driver parameters, the learning and effective probability vectors are used. As mentioned in the previous part, the learning vector contains the eight values of the driver parameters according to the predetermined value of the correlated index. In addition, the effective probability vector has eight values of probability according to the predetermined value of the correlated index. If an element has high values in the effective probability vector, that means the deceleration situation is close to the predetermined value of the correlated index matched to the element. Therefore, the driver parameters are calculated by dot production of the learning and effective probability vectors, as shown in Equation (20), where θact is the driver parameter calculated by the equation and Vθ is the learning vector.

θact = P V . (20) e f f · θ World Electric Vehicle Journal 2019, 10, 58 13 of 23

5.2. Online Update of Learning Vectors In the deceleration model, the driver parameters are calculated by the dot product of the learning and effective probability vectors, as described in Section 5.1.3. When the driver decelerates the vehicle not by using the SRS but by pushing the brake pedal, the driver parameters can also be calculated from the driving data. To avoid confusing these two values, driver parameters calculated by the two vectors were defined as active parameters, and those calculated from the driving data were defined as reference parameters. If the learning vector does not reflect the driver characteristics perfectly, the values of the active and reference parameters are not the same. Therefore, to reflect the driver characteristics, the learning vectors have to be updated. The online learning algorithm that updates the learning vector consists of two steps. First, the target value, which indicates how much the learning vector is updated overall, is calculated by Equation (21), where δθ is the target value, α is the learning rate, and θre f and θact refer to the reference and active parameters, respectively. The learning rate α was determined as the adequate value differently by the developer according to the types of learning vector. The learning rate values are shown in Table5. Then, the learning vector is updated with Equation (22) using the target value. In Equation (22), ψ(i) is the learning degree, which is how much each element of the learning vector is updated. It is calculated by Equation (23) to update an element that has a bigger value of more effective probability. The entire procedure of online updating is employed whenever the driver finishes decelerating in a car-following situation.   δ = α θ θact (21) θ re f −

Vθ(i) = Vθ(i) + ψ(i)δθ (22) !! 1 X X Pe f f (i) − ψ(i) = P ( i) (23) e f f ∼ ∗ P ( i) e f f ∼ X P ( 1) = P (2) + P (3) + ... + P (8). (24) e f f ∼ e f f e f f e f f

Table 5. Values of learning rate according to the driver parameters.

Type of Learning Adjustment Velocity Initial Distance Initial Jerk Vector Distance Difference Learning rate 0.1 0.1 0.2 0.1

The learning vector updated by the online learning algorithm should converge when the same situation is repeated, where the values of the correlated index and the reference parameter are the same. The learning vector of the kth learning iteration is calculated by Equation (25). Likewise, the learning vector of the (k–1)th learning iteration is calculated by Equation (26). The change of the learning vector is defined as Equation (27). For the learning vector to converge, Ek(i) should go to zero when the learning is repeated sufficiently. For this, the absolute proportion of Ek(i) to Ek 1(i) shown in − Equation (28) should be smaller than 1. To satisfy the criteria shown in Equation (28), the learning rate should be in a specific range. When the learning rate is set as 2, the proportion of Ek(i) to Ek 1(i) is 1. In this case, each component of − − the learning vector is oscillated. Therefore, to guarantee convergence, the learning rate should be smaller than 2. The learning rate was determined according to its parametric characteristics, as shown in Table5. For example, the rate for the initial jerk is larger than the rate for the other learning vectors. This is because the difference of the value depending on the driver is larger in the initial jerk than the other learning vectors. The learning vectors converge in about 20 iterations when the learning rate is World Electric Vehicle Journal 2019, 10, 58 13 of 22

∑𝑃(~1) =𝑃(2) +𝑃(3) +⋯+𝑃(8). (24) The learning vector updated by the online learning algorithm should converge when the same situation is repeated, where the values of the correlated index and the reference parameter are the same. The learning vector of the kth learning iteration is calculated by Equation (25). Likewise, the learning vector of the (k–1)th learning iteration is calculated by Equation (26). The change of the learning vector is defined as Equation (27). For the learning vector to converge, 𝐸(𝑖) should go to zero when the learning is repeated sufficiently. For this, the absolute proportion of 𝐸(𝑖) to 𝐸(𝑖) shown in Equation (28) should be smaller than 1. To satisfy the criteria shown in Equation (28), the learning rate should be in a specific range.

When the learning rate is set as 2, the proportion of 𝐸(𝑖) 𝑡𝑜 𝐸 (𝑖) is −1. In this case, each component of the learning vector is oscillated. Therefore, to guarantee convergence, the learning rate should be smaller than 2. The learning rate was determined according to its parametric characteristics, Worldas shown Electric in Vehicle Table Journal 5. For2019 ,example,10, 58 the rate for the initial jerk is larger than the rate for the 14other of 23 learning vectors. This is because the difference of the value depending on the driver is larger in the initial jerk than the other learning vectors. The learning vectors converge in about 20 iterations when 0.2 and about 40 when the learning rate is 0.1. The convergence of components of the learning vector the learning rate is 0.2 and about 40 when the learning rate is 0.1. The convergence of components of for the initial jerk when the learning rate is 0.2 is shown in Figure 11. the learning vector for the initial jerk when the learning rate is 0.2 is shown in Figure 11.   V𝑉θ,,k((i)𝑖)==𝑉Vθ,,k 1((i𝑖))++𝜓ψ((i𝑖))α𝛼(𝜃θre f −𝜃θact,,k ) (25) − −   V𝑉θ,,k 1((i)𝑖)==𝑉Vθ,,k 2((i𝑖))++𝜓ψ((i𝑖))α𝛼(𝜃θre f −𝜃θact,,k 1 ) (26) − − − − Ek(i) = Vθ,k(i) Vθ,k 1(i) (27) 𝐸(𝑖) =𝑉,(𝑖)−−𝑉,− (𝑖) (27)

E (i) θre f θact,k k = − () , < 1 (28) Ek 1(i) = θre f θact,k 1<1 . (28) −() −,−

Figure 11. Convergence of learning vector when learning rate is 0.2.

An example of onlineTable 5. updating Values of of learning the learning rate according vector for to the the driver initial parameters. jerk is as follows. The learning vector of the initial jerk before update is shown as a green line in Figure 12. When the driver finishes Type of decelerating in a car-followingInitial Distance situation, theAdjustment algorithm Distance calculates Initial the values Jerk ofVelocity the initial Difference index and the Learning Vector 2 referenceLearning parameter rate of the initial 0.1 jerk from the driving 0.1 data; in this example,0.2 the values 0.1 are 1.91 m/s and 2.72 m/s3, respectively, shown as the red dot in Figure 12. Then, the algorithm calculates the − effectiveAn probabilityexample of vectoronline using updating Equation of the (19) learning based on vector the value for ofthe the initial initial jerk index. is as Next, follows. the active The parameterlearning vector of the ofinitial the initial jerk jerk is calculated before update with theis shown learning as a and green eff ectiveline in probabilityFigure 12. When vectors. the Indriver this case, the calculated active parameter value is 2.07 m/s3. Using the values of the reference and active finishes decelerating in a car-following situation,− the algorithm calculates the values of the initial parameters, the target value is determined by Equation (21), which is 0.13 m/s3. Then, the learning index and the reference parameter of the initial jerk from the driving data;− in this example, the values degree is calculated using the initial index value to update the learning vector. Its value when the initial index is 1.91 m/s3 is shown in Table6. The value of the learning degree close to the value of the initial index is high. The last step is to update the learning vector using the target value and the learning degree based on Equation (22). The result of the updated learning vector is shown as a yellow line in Figure 12, and the values of the learning vector before and after the online update are shown in Table6. World Electric Vehicle Journal 2019, 10, 58 14 of 22 are 1.91 m/s and −2.72 m/s, respectively, shown as the red dot in Figure 12. Then, the algorithm calculates the effective probability vector using Equation (19) based on the value of the initial index. Next, the active parameter of the initial jerk is calculated with the learning and effective probability vectors. In this case, the calculated active parameter value is −2.07 m/s. Using the values of the reference and active parameters, the target value is determined by Equation (21), which is −0.13 m/s . Then, the learning degree is calculated using the initial index value to update the learning vector. Its value when the initial index is 1.91 m/s is shown in Table 6. The value of the learning degree close to the value of the initial index is high. The last step is to update the learning vector using the target value and the learning degree based on Equation (22). The result of the Worldupdated Electric learning Vehicle Journal vector2019 is, 10shown, 58 as a yellow line in Figure 12, and the values of the learning 15vector of 23 before and after the online update are shown in Table 6.

FigureFigure 12.12. LearningLearning vectorvector ofof initialinitial jerkjerk beforebefore update.update.

Table 6. Example of learning vectors for initial jerk. Table 6. Example of learning vectors for initial jerk. Index Number 1 2 3 4 5 6 7 8 Index Number 1 2 3 4 5 6 7 8 InitialInitial index index 0 0 0.3 0.3 0.60.6 0.90.9 1.21.2 1.51.5 1.81.8 2.1 2.1 LearningLearning degree degree 0.70 0.70 0.700.70 0.700.70 0.700.70 0.760.76 0.890.89 1.091.09 1.05 1.05 LearningLearning vectorvector before before update update (m/s3 ) 0.91 1.04 1.19 1.37 1.57 1.80 2.08 2.38 −−0.91 −−1.04 −−1.19 − −1.37 − −1.57− −1.80− −2.08− −2.38 Learning vector(m/s after) update (m/s3) 0.99 1.13 1.28 1.46 1.67 1.92 2.22 2.52 − − − − − − − − Learning vector after update (m/s) −0.99 −1.13 −1.28 −1.46 −1.67 −1.92 −2.22 −2.52 The online learning algorithm is summarized as follows; it operates whenever the driver is finishedThe decelerating: online learning algorithm is summarized as follows; it operates whenever the driver is finished decelerating: 1. Calculate the effective probability vector using the value of the correlated index; 2.1. CalculateCalculate the the effective active parameterprobability by vector the dot using product the value of the of eff theective correlated probability index; and learning vectors; 3.2. CalculateCalculate the the active reference parameter parameter by the from dot product the driving of the data; effective probability and learning vectors; 4.3. CalculateUpdate the the reference learning vectorparameter based from on thethe activedriving and data; reference parameters. 4. Update the learning vector based on the active and reference parameters. 6. Validation 6. Validation 6.1. Acceleration Controller 6.1. Acceleration Controller For the vehicle to follow the reference deceleration, the acceleration controller is necessary. The accelerationFor the controllervehicle to wasfollow designed the reference as a feedforward deceleration and, the feedback acceleration controller, controller as shown is necessary. in Figure The 13. TheWorldacceleration feedforward Electric Vehicle controller Journal controller 2019 was, 10 determinesdesigned, 58 as adequate a feedforw torqueard basedand feedback on a predefined controller, equation as shown according in15 Figure of to22 the13. vehicleThe feedforward speed and controller reference determines deceleration, adequate and the feedbacktorque based controller on a predefined calculates equation the value according of torque usingtorqueto thea vehicleusing proportional-integral a speedproportional-integral and reference (PI) controller. deceleration, (PI) controller. Then, and the Then, the sum feedback the of sum these ofcontroller two these values two calculates isvalues sent tois the thesent value vehicle to the of controlvehicle unitcontrol (VCU) unit through(VCU) through the controller the controller area network area network (CAN). (CAN).

Figure 13. Acceleration controller. Figure 13. Acceleration controller.

6.2. Test Vehicle Configuration For the algorithm validation, a Hyundai Kona electric vehicle was used. It is equipped with the radar sensor described in Table 7. The designed algorithm was implemented on the target board, MPC 5674F of NXP semiconductors, specs of which are shown in Table 8. It acquires data such as velocity, relative distance, and relative velocity through the CAN communication. The torque calculated by the algorithm is sent to the VCU of the vehicle through CAN. In MPC 5674F, the deceleration planning algorithm is conducted every 100 ms and the acceleration control is performed every 10 ms.

Table 7. Specifications of radar sensor.

Index Value Maximum range 150 m +/−10° over 60 m Field of view (FOV) +/−45° under 60 m Update rate 50 ms

Table 8. Specifications of the central processing unit (CPU), random access memory (RAM), and flash memory of MPC5674F.

Component Specification CPU Power architecture 200z7 core 265 MHz RAM 256 KB data RAM with error correcting codes (ECC) Flash 4 MB flash memory with ECC

6.3. Vehicle Test Environment To validate the operation of automatic regenerative braking in general urban driving situations, a test driver drove the vehicle for about an hour on a specific route in Seoul, Korea, as shown in Figure 14. It includes urban roads where the speed limit is 50 km/h, but also highway where the maximum speed range is from 90 km/h to 110 km/h. In addition, there was a traffic jam on the highway, because the test time was 15:00, when there are many vehicles on the road. In conclusion, the test route contains both urban and highway situations, so that it is suitable to validate the algorithm in diverse car-following situations. In most of the car-following situations, the test driver did not push the brake pedal and used the automatic regenerative braking. The brake pedal was used in other deceleration situations besides car-following such as speed humps, curves, and merges where there was no preceding vehicle. World Electric Vehicle Journal 2019, 10, 58 16 of 23

6.2. Test Vehicle Configuration For the algorithm validation, a Hyundai Kona electric vehicle was used. It is equipped with the radar sensor described in Table7. The designed algorithm was implemented on the target board, MPC 5674F of NXP semiconductors, specs of which are shown in Table8. It acquires data such as velocity, relative distance, and relative velocity through the CAN communication. The torque calculated by the algorithm is sent to the VCU of the vehicle through CAN. In MPC 5674F, the deceleration planning algorithm is conducted every 100 ms and the acceleration control is performed every 10 ms.

Table 7. Specifications of radar sensor.

Index Value Maximum range 150 m +/ 10 over 60 m Field of view (FOV) − ◦ +/ 45 under 60 m − ◦ Update rate 50 ms

Table 8. Specifications of the central processing unit (CPU), random access memory (RAM), and flash memory of MPC5674F.

Component Specification CPU Power architecture 200z7 core 265 MHz RAM 256 KB data RAM with error correcting codes (ECC) Flash 4 MB flash memory with ECC

6.3. Vehicle Test Environment To validate the operation of automatic regenerative braking in general urban driving situations, a test driver drove the vehicle for about an hour on a specific route in Seoul, Korea, as shown in Figure 14. It includes urban roads where the speed limit is 50 km/h, but also highway where the maximum speed range is from 90 km/h to 110 km/h. In addition, there was a traffic jam on the highway, because the test time was 15:00, when there are many vehicles on the road. In conclusion, the test route contains both urban and highway situations, so that it is suitable to validate the algorithm in diverse car-followingWorld Electric Vehicle situations. Journal 2019, 10, 58 16 of 22

Figure 14. Route for vehicle test.

6.4. Vehicle Test Results The test results have a time length of 50 min, and the divided test results on urban roads are shown in Figure 15. The first subplot of Figure 14 shows the measured acceleration. The range where automatic regeneration was operated is in blue. The third subplot of Figure 15 shows the positions of the pedals. The driver pushed the brake pedal only twice to keep the vehicle stopped, as shown by the gray line of the third graph. Except for these two braking situations, all deceleration was conducted by automatic regeneration.

Figure 15. Vehicle test results on urban roads.

Figure 16 shows a deceleration profile where automatic regenerative braking operates in a general car-following situation. As shown in the fifth subplot, the driving state changes from driving to coasting when the driver releases the accelerator pedal. In addition, the deceleration condition transitions from none to car-following because the relative distance is decreasing. When the driving state is recognized as coasting, automatic regeneration begins. According to the braking section shown in the eighth subplot, the deceleration model generates adequate deceleration as shown in the World Electric Vehicle Journal 2019, 10, 58 16 of 22

World Electric Vehicle Journal 2019, 10, 58 17 of 23

In most of the car-following situations, the test driver did not push the brake pedal and used the automatic regenerative braking. The brake pedal was used in other deceleration situations besides car-following such as speed humps, curves, and merges where there was no preceding vehicle. Figure 14. Route for vehicle test. 6.4. Vehicle Test Results 6.4. Vehicle Test Results The test results have a time length of 50 min, and the divided test results on urban roads are shownThe in test Figure results 15. The have first a time subplot leng ofth Figure of 50 14min, shows and thethe measureddivided test acceleration. results on Theurban range roads where are automaticshown in Figure regeneration 15. The was first operated subplot of is inFigure blue. 14 The shows third the subplot measured of Figure acceleration. 15 shows The the range positions where of theautomatic pedals. regeneration The driver pushed was operated the brake is pedalin blue. only The twice third to subplot keep the of vehicleFigure stopped,15 shows as the shown positions by the of graythe pedals. line of theThe third driver graph. pushed Except the forbrake these pedal two only braking twice situations, to keep the all decelerationvehicle stopped, wasconducted as shown by automaticthe gray line regeneration. of the third graph. Except for these two braking situations, all deceleration was conducted by automatic regeneration.

Figure 15. Vehicle testtest resultsresults onon urbanurban roads.roads.

FigureFigure 1616 shows shows a decelerationa deceleration profile profile where where automatic automatic regenerative regenerative braking braking operates operates in a general in a car-followinggeneral car-following situation. situation. As shown As in shown the fifth in subplot, the fifth the subplot, driving the state driving changes state from changes driving from to coasting driving whento coasting the driver when releases the driver the accelerator releases the pedal. accelerator In addition, pedal. the In deceleration addition, the condition deceleration transitions condition from nonetransitions to car-following from none because to car-following the relative because distance the is relative decreasing. distance When is thedecreasing. driving stateWhen is the recognized driving asstate coasting, is recognized automatic as regenerationcoasting, automatic begins. regeneration According to begins. the braking According section to shownthe braking in the section eighth subplot,shown in the the deceleration eighth subplot, model the generatesdeceleration adequate model decelerationgenerates adequate as shown deceleration in the first as subplot. shown in After the the automatic regeneration finishes, the ego vehicle speed is nearly the same as the preceding vehicle speed. Moreover, the generated deceleration profile shows a similar shape to human driving. It shows coasting behavior from 1363.8 s to 1364.3 s, and deceleration increases with a specific acceleration slope. Then, deceleration finishes gradually as the ego vehicle speed reaches the preceding vehicle speed. These are the driver behaviors in deceleration mentioned in Section 4.1. World Electric Vehicle Journal 2019, 10, 58 17 of 22 first subplot. After the automatic regeneration finishes, the ego vehicle speed is nearly the same as the preceding vehicle speed. Moreover, the generated deceleration profile shows a similar shape to human driving. It shows coasting behavior from 1363.8 s to 1364.3 s, and deceleration increases with a specific acceleration slope. Then, deceleration finishes gradually as the ego vehicle speed reaches World Electric Vehicle Journal 2019, 10, 58 18 of 23 the preceding vehicle speed. These are the driver behaviors in deceleration mentioned in Section 4.1.

FigureFigure 16. 16. TestTest results results in in general car-following situations.

Figure 17 showsshows thethe resultsresults of of automatic automatic regeneration regeneration in in tra trafficffic jam jam situations. situations. The The velocity velocity in this in thisprofile profile is under is under 6 m/s, 6 and m/s, the and relative the relative distance dist is underance 10is m.under Therefore, 10 m. theTherefore, deceleration the deceleration condition is conditiondetermined is asdetermined “traffic jam.” as When“traffic the jam.” relative When distance the relative is under distance 10 m, keeping is under a safe10 m, distance keeping from a safe the distanceleading carfrom is mostthe leading important, car sois most the braking important, section so entersthe braking into the section adjustment enters section into the directly. adjustment Then, sectionthe deceleration directly. modelThen, the generates deceleration deceleration, model whichgenerates is very deceleration, similar to thewhich reference is very acceleration. similar to the As referenceshown in theacceleration. fourth subplot, As shown the driver in the does fourth not subpl pushot, the the brake driver pedal does at all,not but push the the vehicle brake speed pedal and at all,relative but the distance vehicle are speed controlled and relative appropriately. distance are controlled appropriately. World Electric Vehicle Journal 2019, 10, 58 19 of 23 World Electric Vehicle Journal 2019, 10, 58 18 of 22

Figure 17. Test results in traffic jam situations. Figure 17. Test results in traffic jam situations. During the vehicle test, there were 251 deceleration situations. Among them, the driver pushed During the vehicle test, there were 251 deceleration situations. Among them, the driver pushed the brake pedal to decelerate in 30 situations, and deceleration was by automatic regeneration in the brake pedal to decelerate in 30 situations, and deceleration was by automatic regeneration in 231 231 situations. That is, automatic regeneration reduced the amount of braking by 92% in the test situations. That is, automatic regeneration reduced the amount of braking by 92% in the test driving driving route. route. 6.5. Learning Results 6.5. Learning Results To check the tendency of the updated learning vector depending on the driver, three test drivers droveTo the check test the vehicle tendency on the of routethe updated shown learning in Figure vector 18. Alldepending drivers deceleratedon the driver, the three vehicle test drivers not by usingdrove thethe SRS,test vehicle but by on pushing the route the shown brake pedalin Figure themselves. 18. All drivers The drivingdecelerated situation the vehicle was car-following not by using withthe SRS, a leading but by car. pushing The preceding the brakevehicle pedal themselves. decelerated The while driving changing situation speed was variously car-following from 70 with km/ ha toleading complete car. stop.The preceding To keep avehicle safe distance, decelerated the threewhile test changing drivers speed decelerated variously the vehiclefrom 70 based km/h onto theircomplete own stop. driver To characteristics. keep a safe distance, The learning the three vectors test drivers were updateddecelerated online the whenevervehicle based the on drivers their finishedown driver decelerating. characteristics. The learning vectors were updated online whenever the drivers finished decelerating. World Electric Vehicle Journal 2019, 10, 58 20 of 23 World Electric Vehicle Journal 2019, 10, 58 19 of 22 World Electric Vehicle Journal 2019, 10, 58 19 of 22

Figure 18. Test route for validation of online learning algorithm.algorithm. Figure 18. Test route for validation of online learning algorithm. Figure 19 showsshows the learninglearning results ofof thethe learninglearning vectorvector forfor thethe initialinitial jerk.jerk. The values of the Figure 19 shows the learning results of the learning vector for the initial jerk. The values of the referenceFigure parameter,parameter, 19 shows which whichthe learning isis fromfrom results thethe driver’sdriver’s of the driving,driving, learning areare vector alsoalso shownshownfor the inininitial thethe graph. graph.jerk. The As values shown of in the reference parameter, which is from the driver’s driving, are also shown in the graph. As shown in the referencefirstfirst subplot,subplot, parameter, driverdriver 33 which showsshows is a a from tendency tendency the driver’s to to have have driving, a a bigger bigger are absolute absolute also shown value value ofin ofthe the graph. initial initial jerkAs jerk shown compared compared in the to first subplot, driver 3 shows a tendency to have a bigger absolute value of the initial jerk compared firsttheto the other subplot, other drivers driversdriver overall. 3overall. shows This aThis meanstendency means that to that driver have driv a 3 bigger iser a3 moreis absolutea more aggressive aggressive value driver of the driver who initial pusheswho jerk pushes compared the brake the to the other drivers overall. This means that driver 3 is a more aggressive driver who pushes the topedalbrake the morepedalother rapidlymoredrivers rapidlyin overall. the initialin theThis section.initial means section. that driv er 3 is a more aggressive driver who pushes the brake pedal more rapidly in the initial section.

Figure 19. Learning results of learning vector for initial jerk. Figure 19. Learning results of learning vector for initial jerk. Figures 20 and 21 showshow thethe resultsresults ofof thethe onlineonline learninglearning algorithmalgorithm inin thethe learninglearning vectorsvectors for Figures 20 and 21 show the results of the online learning algorithm in the learning vectors for initialinitial andand adjustment distance.distance. Commonly inin both figures,figures, thethe learninglearning vectorsvectors ofof driverdriver 33 are located initial and adjustment distance. Commonly in both figures, the learning vectors of driver 3 are located lowerlower thanthan thosethose ofof thethe otherother drivers,drivers, whichwhich meansmeans thatthat driverdriver 33 startedstarted thethe initialinitial andand adjustmentadjustment lower than those of the other drivers, which means that driver 3 started the initial and adjustment section when thethe relativerelative distancedistance waswas reducedreduced enough.enough. section when the relative distance was reduced enough.

Figure 20. Learning results of learning vector for initial distance. Figure 20. Learning results of learning vector for initial distance. World Electric Vehicle Journal 2019, 10, 58 21 of 23 World Electric Vehicle Journal 20192019,, 1010,, 5858 2020 ofof 2222

Figure 21. Learning results of learning vector for adjustment distance. Figure 21. Learning results of learning vector for adjustment distance. Figure 22 shows the learning results of the velocity difference. Although the velocity difference Figure 22 shows the learning results of the velocityty difference.difference. AlthoughAlthough thethe velocityvelocity differencedifference does not have a correlation with the initial index, its learning vector is based on the initial index to does not have a correlation with the initial index, its learning vector is based on the initial index to manage the learning vector with the same method as the other learning vectors. As shown in the first manage the learning vector with the same method as the other learning vectors. As shown in the first subplot of the figure, the learning vector of driver 2 has a bigger value than that of the other drivers, subplotsubplot ofof thethe figure,figure, thethe learninglearning vectorvector ofof driverdriver 2 has a bigger value than that of the other drivers, which means that driver 2 tends to decelerate to much slower than the preceding vehicle. which means that driver 2 tends to decelerate to much slower than the preceding vehicle.

Figure 22. LearningLearning results results of of learning learning ve vectorctorctor forfor velocity velocity difference. didifference.fference. 7. Conclusions 7. Conclusions This study proposes automatic regeneration based on the parametric deceleration model reflecting This study proposes automatic regenerationregeneration basedbased onon thethe parametricparametric decelerationdeceleration modelmodel driver characteristics online. Based on an analysis of the deceleration profile, we split it into four reflectingreflecting driverdriver characteristicscharacteristics online.online. BasedBased onon anan ananalysis of the deceleration profile, we split it into braking sections: coast, initial, adjustment, and termination. Then, the parametric deceleration model fourfour brakingbraking sections:sections: coast,coast, initial,initial, adjustment,adjustment, and termination. Then, the parametric deceleration was designed considering the features of each braking section. In addition, it can reflect the driver’s model was designed considering the features of each braking section. In addition, it can reflect the characteristics because it consists of driver parameters calculated based on the learning vector. To driver’s characteristics because it consists of driver parameters calculated based on the learning update the driver characteristics online, the online learning algorithm was designed. It updates the vector. To update the driver characteristics online, the online learning algorithm was designed. It learning vector, which manages the driver characteristics by comparing the planning results and updates the learning vector, which manages the driver characteristics by comparing the planning driving data. resultsresults andand drivingdriving data.data. The automatic regenerative braking based on the proposed algorithm was validated through The automatic regenerative braking based on the proposed algorithm was validated through vehicle tests on urban and highway roads. The planning results show a similar shape to human vehicle tests on urban and highway roads. The planning results show a similar shape to human driving, such as coasting behavior, and the results of automatic regeneration show that a safe distance driving, such as coasting behavior, and the results of automatic regeneration show that a safe distance is maintained in car-following and traffic jam situations. Moreover, the learning results show that the isis maintainedmaintained inin car-followingcar-following andand traffictraffic jamjam situatsituations.ions. Moreover,Moreover, thethe learninglearning resultsresults showshow thatthat thethe learning vectors are updated differently according to the driver’s deceleration pattern. learninglearning vectorsvectors areare updatedupdated differentlydifferently accordaccordinging toto thethe driver’sdriver’s decelerationdeceleration pattern.pattern. By the suggested automatic regeneration, the amount of braking decreased by 92% on the test By the suggested automatic regeneration, the amount of braking decreased by 92% on the test driving route. Most of the range that the suggested algorithm did not cover was decelerating for a static driving route. Most of the range that the suggested algorithm did not cover was decelerating for a object such as a speed hump, cornering at intersections, and following speed limits. This information staticstatic objectobject suchsuch asas aa speedspeed hump,hump, corneringcornering atat intersections,intersections, andand followingfollowing speedspeed limits.limits. ThisThis can be acquired through the navigation device of the test vehicle. Therefore, automatic regeneration informationinformation cancan bebe acquiredacquired throughthrough thethe navigationnavigation devicedevice ofof thethe testtest vehicle.vehicle. Therefore,Therefore, automaticautomatic will be extended using the information from navigation devices in the future. regenerationregeneration willwill bebe extendedextended usingusing thethe informationinformation fromfrom navigationnavigation devicesdevices inin thethe future.future.

Author Contributions: G.S.,G.S., K.M., K.M., I.P., I.P., J.Y. andand S.Y. conceptualizedconceptualized thethe study. G.S., S.Y. andand K.M.K.M. developed the deceleration model and the online learning algorithm. S.A. designed the acceleration controller and integrated it deceleration model and the online learning algorithm. S.A. designed the acceleration controller and integrated to the embedded system. G.S., K.M. and S.A. edited and reviewed the paper. itit toto thethe embeddedembedded system.system. G.S.,G.S., K.M.K.M. anand S.A. edited and reviewed the paper. Funding: This research has been supported by Hyundai Motor Company. Funding: This research has been supported by Hyundai Motor Company. Conflicts of Interest: The authors declare no conflict of interest. Conflicts of Interest: TheThe authorsauthors declaredeclare nono conflictconflict ofof interest.interest. World Electric Vehicle Journal 2019, 10, 58 22 of 23

References

1. Lee, J.; Kim, H. Control Apparatus and Method for Regenerative Braking of Eco-Friendly Vehicle. KR Patent 101558772, 7 Octember 2015. 2. Lin, C.L.; Hung, H.C.; Li, J.C. Active control of regenerative brake for electric vehicles. Actuators 2018, 7, 84. [CrossRef] 3. Xu, G.; Li, W.; Xu, K.; Song, Z. An intelligent regenerative braking strategy for electric vehicles. Energies 2011, 4, 1461–1477. [CrossRef] 4. Gong, X.; Qian, L.; Ge, W.; Wang, L.F. Research on the Anti-Disturbance Control Method of Brake-by-Wire Unit for Electric Vehicles. World Electr. Veh. J. 2019, 10, 44. [CrossRef] 5. He, R.; Tian, X.; Ni, Y.; Xu, Y. Mode transition coordination control for parallel based on switched system. Adv. Mech. Eng. 2017, 9, 1–12. [CrossRef] 6. Lv, C.; Zhang, J.; Li, Y.; Yuan, Y. Mode-switching-based active control of a powertrain system with non-linear backlash and flexibility for an electric vehicle during regenerative deceleration. Proc. Inst. Mech. Eng. Part. D J. Automob. Eng. 2015, 229, 1429–1442. [CrossRef] 7. Liu, H.; Wei, H.; Zuo, T.; Li, Z.; Yang, Y.J. Fine-tuning ADAS algorithm parameters for optimizing traffic safety and mobility in connected vehicle environment. Transp. Res. Part. C Emerg. Technol. 2017, 76, 132–149. [CrossRef][PubMed] 8. Gu, Y.; Hashimoto, Y.; Hsu, L.T.; Iryo-Asano, M.; Kamijo, S. Human-like motion planning model for driving in signalized intersections. IATSS Res. 2017, 41, 129–139. [CrossRef] 9. Gu, T.; Dolan, J.M. Toward human-like motion planning in urban environments. IEEE Intell. Veh. Symp. Proc. 2014, 350–355. 10. Hasenjager, M.; Wersing, H. Personalization in advanced driver assistance systems and autonomous vehicles: A review. In Proceedings of the 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC), Yokohama, Japan, 16–19 Octember 2017. 11. Bifulco, G.N.; Simonelli, F.; Di Pace, R. Experiments toward an human-like Adaptive Cruise Control. IEEE Intell. Veh. Symp. Proc. 2008, 919–924. 12. Bifulco, G.N.; Pariota, L.; Simonelli, F.; Pace, R. Di Development and testing of a fully adaptive cruise control system. Transp. Res. Part. C Emerg. Technol. 2013, 29, 156–170. [CrossRef] 13. Lefèvre, S.; Carvalho, A.; Gao, Y.; Tseng, H.E.; Borrelli, F. Driver models for personalised driving assistance. Veh. Syst. Dyn. 2015, 53, 1705–1720. [CrossRef] 14. Treiber, M.; Hennecke, A.; Helbing, D. Congested traffic states in empirical observations and microsopic simulations. Phys. Rev. E 2000, 62, 1805–1824. [CrossRef][PubMed] 15. Khodayari, A.; Ghaffari, A.; Kazemi, R.; Braunstingl, R. A Modified Car-Following Model Based on a Neural Network Model of the Human Driver Effects. IEEE Trans. Syst. Man Cybern. Part. A Syst. Hum. 2012, 42, 1440–1449. [CrossRef] 16. Chong, L.; Abbas, M.M.; Medina Flintsch, A.; Higgs, B. A rule-based neural network approach to model driver naturalistic behavior in traffic. Transp. Res. Part. C Emerg. Technol. 2013, 32, 207–223. [CrossRef] 17. Mehar, A.; Chandra, S.; Velmurugan, S. Speed and acceleration characteristics of different types of vehicles on multi-lane highways. Eur. Transp. Trasp. Eur. 2013, 1–12. 18. Yang, G.; Xu, H.; Wang, Z.; Tian, Z. Truck acceleration behavior study and acceleration lane length recommendations for metered on-ramps. Int. J. Transp. Sci. Technol. 2016, 5, 93–102. [CrossRef] 19. Yang, G.; Xu, H.; Tian, Z.; Wang, Z. Vehicle Speed and Acceleration Profile Study for Metered On-Ramps in California. J. Transp. Eng. 2015, 142, 04015046. [CrossRef] 20. Bham, G.H.; Benerkohal, R.F. Acceleration Behavior of Drivers in a Platoon. In Proceedings of the First International Driving Symposium on Human Factors in Driver Assesment, Training and Vehicle Design, Aspen, CO, USA, 14–17 August 2001. 21. Zhang, Y.; Lv, J.; Wang, W. Evaluation of vehicle acceleration models for emission estimation at an intersection. Transp. Res. Part. D Transp. Environ. 2013, 18, 46–50. [CrossRef] 22. Milanes, V.; Shladover, S.E.; Spring, J.; Nowakowski, C.; Kawazoe, H.; Nakamura, M. Cooperative adaptive cruise control in real traffic situations. IEEE Trans. Intell. Transp. Syst. 2014, 15, 296–305. [CrossRef] 23. Milanés, V.; Shladover, S.E. Modeling cooperative and autonomous adaptive cruise control dynamic responses using experimental data. Transp. Res. Part. C Emerg. Technol. 2014, 48, 285–300. [CrossRef] World Electric Vehicle Journal 2019, 10, 58 23 of 23

24. McClamroch, N.H. Space vehicle dynamics and control. Automatica 2001, 37, 2077–2078. [CrossRef] 25. Rajamani, R.; Zhu, C. Semi-autonomous adaptive cruise control systems. IEEE Trans. Veh. Technol. 2002, 51, 1186–1192. [CrossRef] 26. Ploeg, J.; Serrarens, A.F.A.; Heijenk, G.J. Connect Drive: Design and evaluation of cooperative adaptive cruise control for congestion reduction. J. Mod. Transp. 2011, 19, 207–213. [CrossRef]

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).