FUZZY LOGIC VISION AND CONTROL OF AUTONOMOUS VEHICLES

IPASJ International Journal of Computer Science (IIJCS) Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 A ...
1 downloads 0 Views 193KB Size
IPASJ International Journal of Computer Science (IIJCS) Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

FUZZY LOGIC VISION AND CONTROL OF AUTONOMOUS VEHICLES Uma Anand Student M.Tech (3rd sem) Department of Computer Science Engineering Dronacharya College of Engineering, Gurgaon-123506, India

ABSTRACT The context of this paper is the control of autonomous vehicles using fuzzy logic. The automation of the automated vehicles using fuzzy logic is considered to be one of the toughest challenges in the development of autonomous vehicles. In this paper, we present the opportunities offered by the fuzzy logic to control the autonomous vehicles. Characteristics of points of the space (occupied, free, or uncertain, etc.) are easily expressed through set theoretical operations. Real world experiments will validate the approach. In building the fuzzy hierarchical control of Autonomous Vehicles we use the language known as FDTL (Fuzzy Decision Tree Language).

KEYWORDS: Fuzzy associative memory, Fuzzy Controller, Fuzzy Logic Controller, Fuzzy Decision Tree Language, Route Tracking, Lane Changing

1. INTRODUCTION Autonomous vehicles have potential applications in many fields. They can replace humans in hazardous environments can be used in conducting military missions and in performing routine tasks for industry. Human performance has proven to be reliable in driving ground vehicles. Drivers driving the car seem to respond more quickly to the environment. For example while overtaking the vehicles need to make changes in the lane it is driving. This can be easily performed by the driver which responds more quickly and applies human knowledge. This is the toughest challenge in the development of autonomous vehicles. While the other control techniques may be used to control a vehicle, fuzzy logic has certain advantages in this area. The chief among them is the ability to incorporate human knowledge and experience via language into relationships among the given quantities. Such cited systems have prototypes of a new controller results. The first result seems to come from the expression of a controller as a database of rules each of which maps the current state, at each iteration of the controller to desired control outputs. Fuzziness is a notion that makes the form of the rules closer to the institutions of expert operations to whom the system developer must turn. The cases often to develop the dynamic predictive model which is very difficult. Several researchers combined fuzzy logic controls with various learning techniques such as  Supervised learning techniques  Evolutionary method  Reinforcement learning  Optimization Method The Objective of this paper is to develop the fuzzy logic controller for autonomous wheeled vehicles. The proposed controller comprises of the steering controller and the speed controller. Encouraging results are obtained from both the simulator and a real autonomous vehicle.

2. Proposed Model An Autonomous vehicle always needs a navigation system to determine the suitable paths to its target and a sensory system to acquire knowledge about the crossed environment. To accomplish most tasks of a automated vehicle the controller must be able to adjust the steering angle and the velocity of the vehicle simultaneously. Traditional fuzzy systems allow output only the fuzzy variables thereby restricting their context to low level systems. To increase their complexity to high level systems, a more recursive approach is being followed that makes the systems to be expressed in hierarchies thereby decomposing complex behaviour into simple behaviour that can be designed independently. The works presented here consider two or more aspects of the problem. For example [ Rosa & Garcia-Alegra, 1990] proposed a fuzzy logic controller which could modify the speed and steering of a mobile robot to steer it a fixed distance along a wall. The [Meada, et al.

Volume 4 Issue 1 January 2016

Page 1

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

1991] implemented a kinematic model using a fuzzy logic for steering and the speed control of a two wheel drive robot. So in this paper we are going to design a controller which has a goal to direct the vehicle safely, continuously and smoothly across natural terrain to reach a goal. The Proposed navigator consisted of two fuzzy controllers, the steering controller and the speed controller. They are designed separately by minimising human performance. This paper has a clear objective to describe a fuzzy logic controller for steering and controlling the velocity of and automobile.

3. Computation Model The computation model of a fuzzy controller involves various steps. They can be designed in a hierarchal manner. It comprises of the following stages.  Fuzzy controller computation  Steering controller  Velocity controller  Fuzzy Controller Decision Tree Architecture 3.1. Fuzzy Controller Computation Fuzzy set theory was first proposed by Zadeh to represent and manipulate data and information that posse’s non-statistical uncertainty. Fuzzy set theory is primarily concerned with quantifying and reasoning using natural language in which words can have ambiguous meanings. This can be thought of as an extension of traditional crisp sets, in which each element must either be in or not in a set. Fuzzy sets are defined on a non-fuzzy universe of discourse, which is an ordinary sets. A fuzzy sets F of a universe of discourse U is characterized by a membership function (x) µ F which assigns to every element x ∈ U ,a membership degree (x)∈[0,1] µ F . An element x∈U is said to be in a fuzzy sets F if and only if (x) > 0 µ A and to be a full member if and only if (x) =1 µ F [5]. Membership functions can either be chosen by the user arbitrarily, based on the user’s experience, or they can be designed by using optimization procedures[1][2]. The fuzzy controller computation can be chiefly categorised into following stages:  Fuzzyfication  Fuzzy Interferency  Rule Combination  Defuzzification  Output Fuzzy logic can be defined as a system that creates mathematical logics using values between 0&1.Fuzzy logic has been widely employed in controlling of machines. Fuzzy Inference System: It is the process which formulates and maps a input to an output with the help of fuzzy logic. A fuzzy logic system is shown in figure 2 [3] Fuzzy Rules: In fuzzy logic rules are set up to take control of the output. The rules in fuzzy logic are simple with an if-else condition having a condition and the target [4]. Rule Block: The fuzzified input variables are continuously controlled by fuzzy controller. The fuzzy controller keeps on taking decisions to keep the track to a set point value. The Rule block help in making the fuzzy control system work with certain limitations [5]. Defuzzification: The defuzzification output should define the PWM that has been forced to the vehicle. Defuzzification can be best obtained by taking the average value of defuzzification, to get the crisp values.

Figure 1 : Fuzzy Controller Architecture Jointly the fuzzy interference and rule combination are often referred to as fuzzy interference. Weights are associated with the stages of the computational model often referred to as FAM [ Fuzzy Associative Memory]. Fuzzy associative memories

Volume 4 Issue 1 January 2016

Page 2

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

(FAMs) belong to the class of fuzzy neural networks (FNNs). A FNN is an artificial neural network (ANN) whose input patterns, output patterns, and/or connection weights are fuzzy-valued [6, 7]. The linguistic rules, and the fuzzy sets they contain, are defined by a human "expert" (presumably, you). That is to say, the rules codify intelligence and map this knowledge from the human domain to the digital. After the rules are defined, a FAM is consulted to help your AI make a decision. The effects or the outputs of the weights are stored in the form of sets and these sets help in building fuzzy decision trees. With respect to autonomous vehicle the leaf nodes are the behaviours [Brooks, 1986] of the autonomous vehicle fuzzy decision making take place in the internal nodes. Activation propagates from the roots to all leaf nodes activating all behaviours. In a fuzzy set Y, the result is given by

where Wij is the set of rule of weights. The resulting Fuzzy Set Y in the domain of X [ All leaf nodes operate on the same output X ] from the inter rule based combination is given by the weighted sum of the individual rule contribution Y where i indexes the rule base and j the particular rule of the ith rule base. 3.2. Steering Controller Controller design for any system needs some knowledge about the system. Usually this involves a mathematical description of the relation among inputs to the process, its state variables, and its Output. This description is called the model of the system. The model can be represented as a set of transfer functions for linear time invariant systems or other relationships for non-linear or time variant systems. The fuzzy logic Controller may give a good command signal; moreover we can find a highly accurate plant model to design the controller taking into account. The unknown factors like friction and dynamic environment .This design, in its modularity, creates a portable autonomous fuzzy logic controller applicable to any mobile vehicle with only minor adaptations. Controller to the steering of an autonomous controller has the following objectives.  Steering the vehicle towards the target  Steering the vehicle around any obstacle in order to avoid collision  Avoid traffic Jams i.e getting trapped in a maze  Steering the vehicles to stop at the desired location Overall fuzzy logic approaches for modeling control systems for vehicles have been studied in the past. A fuzzy logic controller [8] that guarantees stability of a control system for a computer simulated model car and advanced fuzzy logic application for automobiles application has been discussed in Altrock et. al. [9]. 3.3. Velocity Controller The Velocity controller’s goal was to direct the vehicle safely, continuously and smoothly across natural terrain to reach a goal. Observation indicates that drivers tend to separate the various driving tasks. For example, most drivers conceptualize velocity and direction separately. This separation of objectives is the basis of the proposed distributed fuzzy logic controller for the vehicle. The Velocity Controller should depict the following human behaviour  Starting a vehicle from a start point, stopping at a required point  Slowing down the vehicle when it approaches the vehicle

Volume 4 Issue 1 January 2016

Page 3

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

 Speeding the vehicle when it over comes the vehicle  Slowing the Vehicle in case of Traffic 3.4. Fuzzy Controller Decision Tree Architecture Decision tree induction is one of common approaches for extracting knowledge from sets of feature based examples. In real world, many data occurred in a fuzzy and uncertain form. The decision tree must able to deal with such fuzzy data. Decision trees have been widely and successfully used in machine learning. More recently, fuzzy representations have been combined with decision trees. Many methods have been proposed to construct decision trees from collection of data. Due to observation error, uncertainty, and so on, many data collecting in real world are obtained in fuzzy forms. Fuzzy decision trees treat features as fuzzy variables and also yield simple decision trees. Moreover, the use of fuzzy sets is expected to deal with uncertainty due to noise and imprecision. The researches on fuzzy decision tree induction for fuzzy data have not yet sufficiently performed. This paper is concerned with a fuzzy decision tree induction method for such fuzzy data. It proposes a tree-building procedure to construct fuzzy decision tree from a collection of fuzzy data. A decision tree[10][11] is a formalism for expressing mapping from attribute values to classes and consists of tests or attribute nodes linked to two or more sub trees and leafs or decision nodes labelled with a class which indicates the decision. The main advantage of decision-tree approach is it visualizes the solution; it is easy to follow any path through the tree. Relationships discovered by a decision tree can be expressed as a set of rules, which can then be used in developing an expert system. A decision tree model employs a recursive divide–and-conquer strategy to divide the data set into partitions so that all of the records in a partition have the same class label [12]. In classical decision trees, nodes make a data follow down only one branch since data satisfies a branch condition, and the data finally arrives at only a leaf node. In treestructured representations, a set of data is represented by a node, and the entire data set is represented as a root node. When a split is made, several child nodes, which correspond to partitioned data subsets, are formed. If a node is not to be split any further, it is called a leaf; otherwise, it is an internal node. Decision trees classify data by sorting them down the tree from the root to leaf nodes. Fuzzy Controller Decision Tree Architecture is a feed forward system. All the information from the root nodes are spread to the leaf nodes of the tree.

Figure 3: Fuzzy Decision Tree Architecture Figure 3 represents the architecture of the fuzzy decision tree. Internal variables fed to the root nodes of the tree comprise of Goal or Target decision, Battery level of the vehicle, damage Detectors, and state variables. The Internal variables when fed to root nodes spread activation to the root nodes.

4. Vehicle Model A vehicle model is developed for waypoint following guidance on a small autonomous vehicle. The Vehicle is a prototype vehicle developed to design to perform autonomous movement by route tracking, lane changing, speed controller and overtaking. The fuzzy controller for the vehicle is programmed in C and down-loaded to a small onboard computer for execution. Navigation data is found in real-time using a differentially corrected GPS receiver. The fuzzy controller was found to be relatively easy to develop, simple to tune, and robust to external disturbances. Field test results are presented and show that the guidance controller performed well on complex paths. 4.1 Route Tracking The route tracking system is a system that is installed in the automated vehicles is based on the information supplied by the GPS. The system digitally maps the driving zone around which the vehicles circulate like commercial navigators do. As all the vehicles carry a GPS receiver, they all know each other’s positions and any trajectory error from the reference map defining the route to be followed. As soon as the system knows the GPS route that is to be followed, you can calculate the deviations of the vehicle.

Volume 4 Issue 1 January 2016

Page 4

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

The deviation so calculated from this route from the GPS positions that are supplied by the onboard receiver can be used for Route Tracking of the Autonomous Vehicle. The system is also used to locate and map all the other vehicles that are circulating around the driving zone. The actions can be taken accordingly, depending on whether these vehicles are in our way or not.

Figure 4: Route Tracking through GPS 4.2 Steering Controller There are several approaches for performing the control of the actuators in a vehicle. The conventional methods of control produce good results but with a high computational and design cost due to the nonlinear characteristic of a vehicle. Indeed, its mathematical representation becomes extremely costly. Another way of coming closer to the human behavior for the steering control is the use of technologies based on artificial intelligence, e.g., neural networks [13], but fuzzy logic gives a good approximation to the human reasoning and is an intuitive control technique. The fuzzy controller developed will be responsible for managing the steering wheel (i.e., the lateral control) in making a decision about modifying the autonomous vehicle’s steering. This controller consists of a rule base that contains expert knowledge and a set of variables that represent the linguistic values considered.

Figure 5: Control Surface of Pedestrian Steering Controller 4.3 Speed Controller A fuzzy controller for speed controller consists of 24 rules, for managing the speed wheel of an autonomous vehicle in lane-change maneuvers is presented in [14]. A new longitudinal controller for lanechange tracking within platoon operations along with speed controller is proposed in [15]. The longitudinal controller is combined with lateral controllers to minimize the length of the maneuver. In [16], an autonomous navigation system that performs speeding and lane-change maneuvers following magnetic markers that are placed in each lane of the road has been developed. The lane-change maneuver is defined as the movement from one lane to the adjacent lane whereas Speed controller maneuvers try to change the lane under control speed in order to prevent accidents. During this process, the navigation is performed by dead reckoning until the vehicle locates the new lane magnetic sensor sequence. An exhaustive analysis for calculating the lane-change trajectory is conducted[17]. 4.4 Automated Overtaking An overtaking maneuver can be defined as a sequence of a lane-change maneuver, a path tracking along the new lane, and a return to the original lane. The optimal trajectory for executing this complex maneuver was first proposed in [18]. A fuzzy-controlbased automatic lane-change system that mimics human behavior and reactions during overtaking is presented. The navigational information that is needed for the overtaking operation is supplied by a differential GPS (DGPS). Recently, a conflict-probability-estimationbased overtaking control method has been proposed to enhance safety during an overtaking maneuver. The conflict probability is used as the safety indicator.

Volume 4 Issue 1 January 2016

Page 5

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

If all these constraints are met, then the overtaking maneuver can start. We define the sequence of operations that must be executed to undertake the maneuver. 1) Compute the time when the first lane change starts. 2) Perform the first lane change to the left lane. 3) Circulate in the left lane until the lead vehicle has been passed. 4) Return to the right lane. 5) Continue to normally circulate.

Figure 6: Overtaking Vehicle by avoiding Collision

5. Conclusion The Fuzzy rule based controller for the automated vehicles has been successfully demonstrated. An extension can be made to extend this to practical systems for programming medium to low level controllers. In this paper we have presented an evolution of the simple automatic vehicle with steering controller and speed controller and an overview of lane changing or overtaking operations. Each fuzzy controller is explained differently with various modules. The automatic driving system presented here is capable of performing automatic driving on straight roads and overtaking operations on the straight roads. The system implements based automatic lane change system. The Lane change system i.e. overtaking of vehicle is just performed by GPS mapping. Two fuzzy modules in the steering controller are designed to meet the basic driving requirement: Target Steering Fuzzy module and Collision Avoidance Steering Fuzzy module. The first module steers the vehicle toward the target by monitoring the steering angle and the angle to the target. The objective of the second module is to avoid collisions with static and dynamic obstacles. Its inputs are the distance and angle to the nearest obstacle. When the vehicle is near an obstacle, the output of this module is given a higher weight than that of the first module, so that it will be able to significantly affect the behaviour of the vehicle.

REFERENCES [1.] Jang, J.S. R., Self-Learning Fuzzy Controllers Based on Temporal Back-Propagation, IEEE Trans. On Neural Network, Vol. 3, September, 1992, pp. 714-723. [2.] Horikowa, S., T. Furahashi and Y. Uchikawa, On Fuzzy Modeling Using Fuzzy Neural Networks with BackPropagation Algorithm, IEEE Trans. on Neural Networks, Vol.3, Sept., 1992, pp. 801-806 [3.] http://www.intechopen.com/source/html/39428/media/image1.jpeg. [4.] D.N.Shah,B.Patel P.Singhla, "Temperature control using Fuzzy logic," International Journal of instrumentation and control systems, vol. 4, no. 1, january 2014. [5.] Gavish Bhatia Vaibhav Bhatia, Room temp. based fan speed control using pulse width modulation, 2013 [6.] R. Fuller. Introduction to Neuro-Fuzzy Systems. Springer-Verlag New York, March 2000. [7.] J.J. Buckley, Y. Hayashi. Fuzzy neural networks: A survey. Fuzzy Sets and Systems, 66 (1994) 1–13. [8.] Kazuo Tanaka, “Design of Model-based Fuzzy Controller Using Lyapunov’s Stability Approach and Its application to Trajectory Stabilization of a Model Car,” Theoretical Aspects of Fuzzy Control, John Wiley & sons, 1995. 2nd

Volume 4 Issue 1 January 2016

Page 6

IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........

Volume 4, Issue 1, January 2016

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992

IEEE Conference on fuzzy system, San Francisco, CA, 1993, Inc, pp.31-50. [9.] C. V. Altrock et al., “Advanced fuzzy logic control technologies in automotive applications”, Proceedings of 1st IEEE international Conference on Fuzzy Systems, 1992, pp. 835-842. [10.] Stuart J. Russel, Peter Norvig, et al: Artificial Intelligence: a Modern Approach, Englewood Cliffs, PrenticeHall,1995. [11.] J.R. Quinlan: C4.5: Programs for Machine Learning, Morgan Kaufmann Publishers, San Mateo, CA, 1993 [12.] J. E. Naranjo, C. González, R. García, T. de Pedro, and R. E. Haber, “Power-steering control architecture for automatic driving,” IEEE Trans. Intell. Transp. Syst., vol. 6, no. 4, pp. 406–415, Dec. 2005 [13.] S. Kumarawadu and T. T. Lee, “Neuroadaptive combined lateral and longitudinal control of highway vehicles using RBF networks,” IEEE Trans. Intell. Transp. Syst., vol. 7, no. 4, pp. 500–512, Dec. 2006 [14.] T. Hessburg and M. Tomizuka, “Fuzzy logic control for lane change maneuvers in lateral vehicle guidance,” Univ. Calif., Berkeley, CA, Calif PATH Working Paper UCB-ITS-PWP-95-13, 1995 [15.] R. Horowitz, C. W. Tan, and X. Sun, “An efficient lane change maneuver for platoons of vehicles in an automated highway system,” Univ. California, Berkeley, CA, Calif PATH Working Paper UCB-ITS-PRR- 2004-16, 2004 [16.] C. Hatipoglu, U. Ozguner, and K. A. Redmill, “Automated lane change controller design,” IEEE Trans. Intell. Transp. Syst., vol. 4, no. 1, pp. 13– 22, Mar. 2003. [17.] H. Jula, E. B. Kosmatopoulos, and P. Ioannou, “Collision avoidance analysis for lane changing and merging,” IEEE Trans. Veh. Technol., vol. 49, no. 6, pp. 2295–2308, Nov. 2000. [18.] T. Shamir, “How should an autonomous vehicle overtake a slower moving vehicle?” IEEE Trans. Autom. Control, vol. 49, no. 4, pp. 607–610, Apr. 2004.

AUTHOR Uma Anand received the B.Tech. and M.Tech. degrees in Computer Science and Engineering from Dronacharya College Of Engineering in 2013 and 2016, respectively. She has done various researches in the same field.

Volume 4 Issue 1 January 2016

Page 7

Suggest Documents