You are on page 1of 5

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No.

2, February 2011

Optimization of ACC using Soft Computing Technique
S.Paul Sathiyan
EEE Department Karunya University Coimbatore, India Dr. S. Suresh Kumar EEE Department Karunya University Coimbatore, India Abstract— The important feature of the Adaptive Cruise Control (ACC) system is the ability to maintain a proper inter-vehicle gap based on the speed of leading vehicle and the desired distance. Adaptive Cruise Control operates in two modes (i) Velocity Control mode, (ii) Distance Control mode. ACC acts like a conventional Cruise Controller (CC) under velocity control mode. In the case of the distance control mode, the speed of the host vehicle is reduced according to the surrounding environment to maintain the safe distance between the leading vehicle and the host vehicle. 25 rules have been used in Fuzzy logic Controller (FLC) with the knowledge base of the system. The inputs of the FLC are distance error and the speed error. The host vehicle adapts to the lead vehicle speed changes and tries to maintain a proper distance between them. The performance of the FLC based ACC is improved by Genetic Algorithm to tune the fuzzy rule base. Genetic Programming is used to select the best rule out of the 25 for a corresponding input. The result showed a better improvement over the Fuzzy Controlled System.
Keywords - Adaptive Cruise Control; Genetic Algorithm; Fuzzy Logic Control

A.Wisemin Lins
EEE Department Karunya University Coimbatore, India



Researches on Intelligent Vehicle (IV) Systems have been devoted to solve problem such as driver burden reduction, accident prevention, traffic flow smoothing. Mentally, driving is a highly demanding activity - a driver must maintain a high level of concentration for long periods and be ready to react within a split second to changing situations. In particular, drivers must constantly assess the distance and relative speed of vehicles in front and adjust their own speed accordingly. A Cruise Control (CC) system has been developed to assist the driver for driving in long distance on highway when there is no vehicle present before the host vehicle. Adaptive Cruise Control (ACC) supports the driver in longitudinal control of vehicles by operating in two modes of control, (i.e.,) Velocity

Control mode and Distance Control mode. In Velocity Control mode ACC maintains the vehicle’s preset velocity set by the driver. The stability of the ACC system is disturbed when a lead vehicle or an obstacle is present in the way of the vehicle fitted with ACC. Such a drawback is rectified by switching over to Distance Control. In this mode ACC automatically adjusts the host vehicle velocity in order to maintain a safe distance between the two vehicles. These systems are characterized by a moderately low level of throttle and brake authority. The limitation of conventional ACC systems is that they do not manage speeds under 30 km/h and, consequently, are not useful in traffic jams or urban driving, situation. At congested traffic, the ACC system becomes less useful. Now, ACC systems are made capable of maintaining controlled vehicle’s position relative to the leading vehicle even in congested traffic by using stop and go features while maintaining a safe distance between leading and following vehicles autonomously. The conventional CC system operates only in one mode of control i.e., velocity control mode, on the other hand, ACC has two both velocity and distance control modes. In this paper the different inter vehicle distances and speed levels have been considered. Simulation results obtained from ACC system using Fuzzy Logic Controller (FLC) and genetically tuned FLC have been compared to validate the objective of this paper. II. FLC BASED ACC

Fuzzy Logic Controller is designed on the basis of fuzzy logic, which does not require any mathematical models but mainly depends on the experience. Fuzziness describes event ambiguity. It measures the degree to which an event occurs, not whether it occurs. Fuzzy theory is a powerful tool in the exploration of complex problems because of its ability to determine outputs for a given set of inputs without using a conventional, mathematical model. Fuzzy theory becomes easily understood because it can be made to resemble a high level language instead of a mathematical language. To

150 ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 2, February 2011

describe a universe of discourse, fuzzy sets with names such as “hot” and “cold” are used to create a membership function. By determining the degree of membership of an input in the fuzzy sets of this membership function, the role of membership functions play in decoding the linguistic terminology to the values a computer can use [7]. Fuzzy Logic controller is represented by a set of rules represented in the form of if-then rules [3]. The fuzzy rule consists of antecedent and consequent. Antecedent is a condition in its application domain and consequent is a control action for the system under control. The fuzzy inference engine employs the fuzzy knowledge base to simulate human decision making and infer fuzzy control actions. Finally, the defuzzifier module is used to translate the processed fuzzy data into the crisp data suited to real world applications [4]. A. Frame work of the Fuzzy Logic Controller


(b) Figure. 1. Framework of Fuzzy Logic Controller

Fuzzify the inputs according to the input membership Functions. The rule strength is found out by combining the fuzzified inputs according to the Fuzzy rules. The consequence of the rule is found out by combining the rule strength and the output membership function. The Fuzzified output has to defuzzified to convert the Fuzzified value to a crisp value. Defuzzifying method is the weighted average of all rule outputs[8]. B. Inputs of the Fuzzy logic controller Two input and a single output Fuzzy logic controller is used. The inputs of the Fuzzy Logic Controller are distance error (Xerror) and the speed error (Serror). The distance error (1) is the difference between the actual distance (Inter-vehicle Distance, Xactual) and the desired distance (Xdesired). Three different distance levels are considered for simulation purpose which is shown in Fig.2. (Fig 2 (a) – distance varies from 7 to 13.3m, Fig 2 (b) – distance varies from 5 to 6m, Fig 2 (c) – distance varies from 2 to 4.4m) The actual distance can be measured using an ultrasonic sensor. The desired distance is the distance which required to be maintained between the vehicles to avoid the rear end collision. Desired distance changes in direct proportion to the vehicle speed.

(c) Figure 2. Actual Distance

The Speed error is obtained by the difference between the leading vehicle speed (Slead) and the host vehicle speed (Shost) according to (4).

The velocity of the leading vehicle is found out by sum of the host vehicle and the distance error according to (5).

151 ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 2, February 2011

D. Output of FLC Based ACC

The output of the Fuzzy Controller determines acceleration or braking which drives the vehicle. C. Fuzzification of Inputs Mamdani Fuzzy inference method is used in this case. The Fuzzy sets are represented by using the linguistic variables namely (i) Negative Medium (NM) (ii) Negative Small (NS) (iii) Zero Error (iv) Positive Small (v) Positive Medium [10]. Xerror and Serror are the two inputs for the Fuzzy Logic Controller. The output is the firing on ACC which gives the desired braking and acceleration. The input and output of the Fuzzy Logic Controller are represented triangular membership functions. The output is the acceleration or Braking command according to the current input. The positive side of the output represents the acceleration command and the negative side represents the braking command. 25 rules have been generated with the knowledge base of the system. Table 1 gives the relation between the input and the fuzzy output
TABLE.1. FUZZY RULE BASE Speed error NM NM Distance error NS ZE PS PM PM PS PM PM PS NS PM PM ZE PS NS ZE PM PS ZE NS NS PS PS ZE NS NS NM PM PS PS NM NS NS (c) Figure 3. Output of the fuzzy controlled ACC for the given conditions (b)


This system is modeled based upon the equations. The value of X desired depends on the Speed of the host vehicle. The desired distance varies proportional to the speed of the host vehicle. The value of X error is negative when X actual is less than the X desired, therefore the Speed of the host vehicle has to be reduced. The value of X error is positive when the X actual is greater than the X desired; therefore the speed of the host vehicle has to be increased. Thus this controls the output of the ACC vehicle. The host vehicle is adapted to the lead vehicle with minimum error.

The host vehicle is getting adapted to the lead vehicle for various inter-vehicle distances considered and shown in Fig 2. For the third case the level of adaptation was very poor. III. GA BASED FUZZY CONTROLLED ACC

Genetic Algorithms are computing algorithms to solve optimization problems by making use of evolutionary principles as known from biology. Evolution is a process that operates on chromosomes (organic devices for encoding the structure of living beings) rather than on living beings. The processes of natural selection cause those chromosomes that encode successful structures to reproduce more often than those that do not. Recombination processes create different chromosomes in offspring by combining genes from the chromosomes of the two parents. Mutation may cause the

152 ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 2, February 2011

chromosomes of children to be different from those of their parents [7]. Genetic algorithms are used to maximize the performance of a fuzzy logic controller through the search of a rule from a given knowledge base to achieve the goal of minimizing the number of rules required.GA will eliminate all the unnecessary rules which have no significant contribution to improve the system performance [5]. A. Optimization of Fuzzy rule base X actual is the difference between the leading vehicle and the host vehicle for which the simulation is done. Xerror and S error are the two inputs for the GA based fuzzy controlled ACC. Fuzzification is a process which converts the crisp value into a fuzzy value. X error and Serror are the two inputs given.25 rules have been generated with the knowledge base of the system. The membership function of the linguistic statement is converted to a binary string by assigning a binary number [12]. Negative medium Negative small Zero error Positive small Positive medium :000 :001 :010 :011 :100

D. Simulation output The new generation has been formed after crossover and mutation. The generated 25 rules have been reduced to 2 rules using the Genetic Algorithm. The surface view of the optimized rule is shown in Fig.4

Figure. 4. Surface view of optimized rules


10 random rules are obtained from the fuzzy rule base. The rule strength is calculated with respect to the antecedent and consequent of the fuzzy rule. The selection of the chromosome is done and the GA operators such as Crossover and Mutation take place and the next generation is formed B. Crossover Crossover is a process by which the systematic information exchanges between two chromosomes and is implemented by using probabilistic decisions. Cross over is done with crossover probability. Two parents are randomly selected and let the parents be 1 & 3. A random number is generated to split the chromosome and to form the next generation. If the generated random number is less than the crossover probability Crossover has to be done by selecting the crossover site randomly by Interchange the bits Parent=10000010 00110100 Crossover offspring= 10000100 00110010 C. Mutation Mutation is a process in which the occasional alteration of a value at a randomly selected bit position.Mutation is done with mutation probability (pc=0.6).Two parents are randomly selected and let the parent be 3. A random number is generated and if the generated random number is less than the mutation probability mutation has to be done by selecting the mutation site randomly by flipping the bit[11]. Parent=10000100 offspring=10000110

20 Km/hr 15 10

Lead Vehicle Host vehicle






20 time(sec)








153 ISSN 1947-5500

(IJCSIS) International Journal of Computer Science and Information Security, Vol. 9, No. 2, February 2011
Figure. 5. GA based Fuzzy Controller Output for the given scenarios [6]

IV.CONCLUSION Adaptive Cruise Control has been designed using Fuzzy Logic Control. 25 rules have been generated with the knowledge base of the system. The host vehicle tried to maintain the distance so that the Xerror remains almost zero. FLC based ACC system developed much error when the distance was less than 5m. In order to reduce this error, Genetic Algorithm is used to optimize the Fuzzy rule base. Host Vehicle adapts to the change in lead vehicle speed more efficiently.
REFERENCES [10] [1] Nassaree Benalie, Worrawut Pananurak, Somphong Thanok, and Manukid Parnichkun “Improvement of Adaptive Cruise Control System based on Speed Characteristics and Time Headway” IEEE/RSJ Int. Conf on Intelligent Robots and Systems, pp.2403-2408 ,October. 2009. Kyongsu Yi, Ilki Moon and Young Do Kwon “A Vehicle-to-Vehicle Distance Control Algorithm for Stop-and-Go Control”, IEEE .Conf. Intelligent Transportation Systems, pp 478-482 ,2001 15 Christopher M. Kumile, Nkgatho S. Tlale(2005),” Intelligent Distributed Fuzzy Logic Control System (IDFLCS) of a Mecanum Wheeled Autonomous Guided Vehicle”Proceedings of the IEEE International Conf. Mechatronics & Automation Niagara Falls, Canada 35 Worrawut Pananurak, Somphong Thanok, Manukid Parnichkun “Adaptive Cruise Control for an Intelligent Vehicle” Proceedings of the 2008 IEEE Int..Conf. Robotics and Biomimetics, pp.1794-1799 February, 2009. T.C.Chin,X.M.Qui,”Genetic Algorithm for learning the Rule Base of the Fuzzy Logic Controller”Elsevier.Fuzzy sets and systems,pp.1-7,1988. [11] [7]









Bin-Da Liu,Chuen-Yau Chen, and Ju-Ying Tsao,” Design of Adaptive Fuzzy Logic Controller Based on Linguistic-Hedge Concepts and Genetic Algorithms” IEEE Trans. Systems, Man, And Cybernetics—Part B: Cybernetics, VOL. 31, NO. 1, pp.32-52, February 2001 Abdollah Homaifar ,Ed McCormick,” Simultaneous Design of Membership Functions and Rule Sets for Fuzzy Controllers Using Genetic Algorithms” IEEE Trans .Fuzzy systems, Vol. 3, No. 2,pp.129138, May 1995. José E. Naranjo, Carlos González, Member, IEEE, Ricardo García, and Teresa de Pedro “ACC+Stop&Go Maneuvers With Throttle and Brake Fuzzy Control”, IEEE Trans.Intelligent Transportation Systems, vol. 7, no. 2,pp 213-225 June 2006. Shuqing Zeng, Yongbao He(1994),”Learning and Tuning Fuzzy Logic Controllers Through Genetic Algorithm”,Department of Computer Science Philip Thrift,”Fuzzy Logic Synthesis”Central Resarch Laboratries,Texas Instruments,pp.509-513 Ahmet Arslan, Mehmet Kaya(2001),” Determination of fuzzy logic membership functions using genetic algorithms”Elsevier, Fuzzy Sets and Systems 118 ,pp. 297-306 Rubén Lagunas-Jiménez and Nun Pitalúa-Díaz,” Tuning Fuzzy Control Rules via Genetic Algorithms”,Fourth Congress of Electronics, Robotics and Automotive Mechanics,pp.364-369. P. Venhovens*, K. Naab and B. Adiprasito(2000) “Stop and Go Cruise Control”, International Journal of Automotive Technology, Vol. 1, No. 2, pp. 61-69.-16 Vincenzo Murdocco, Domenico Albero, Paola Carrea “Control of Longitudinal Vehicle Motion for Adaptive Cruise Control and Stop&Go applications”

[15] http.//


154 ISSN 1947-5500