You are on page 1of 7

IPASJ International Journal of Computer Science (IIJCS)

Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm


Email: editoriijcs@ipasj.org
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: editoriijcs@ipasj.org
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 posses 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 xU 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 users 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: editoriijcs@ipasj.org
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 controllers 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: editoriijcs@ipasj.org
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 divideand-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 others 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: editoriijcs@ipasj.org
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 vehicles 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: editoriijcs@ipasj.org
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) 113.
[8.] Kazuo Tanaka, Design of Model-based Fuzzy Controller Using Lyapunovs 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: editoriijcs@ipasj.org
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. Gonzlez, R. Garca, T. de Pedro, and R. E. Haber, Power-steering control architecture for
automatic driving, IEEE Trans. Intell. Transp. Syst., vol. 6, no. 4, pp. 406415, 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. 500512, 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. 22952308, Nov. 2000.
[18.] T. Shamir, How should an autonomous vehicle overtake a slower moving vehicle? IEEE Trans. Autom.
Control,
vol. 49, no. 4, pp. 607610, 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

You might also like