Neural-Network-Based Fuzzy Logic Navigation Control for Intelligent Vehicles

This paper proposes a Neural-Network-Based Fuzzy logic system for navigation control of intelligent vehicles. First, the use of Neural Networks and Fuzzy Logic to provide intelligent vehicles with more autonomy and intelligence is discussed. Second, the system for the obstacle avoidance behavior is developed. Fuzzy Logic improves Neural Networks (NN) obstacle avoidance approach by handling imprecision and rule-based approximate reasoning. This system must make the vehicle able, after supervised learning, to achieve two tasks: 1to make one’s way towards its target by a NN, and 2to avoid static or dynamic obstacles by a Fuzzy NN capturing the behavior of a human expert. Afterwards, two association phases between each task and the appropriate actions are carried out by Trial and Error learning and their coordination allows to decide the appropriate action. Finally, the simulation results display the generalization and adaptation abilities of the system by testing it in new unexplored environments.


Introduction
I t is advantageous to use Neurocomputing and Fuzzy Logic(FL) in combination rather than exclusively to bring the behavior of intelligent vehicles (IV) near the human one in recognition, decision-making, and action.The intelligent vehicle designers search to create dynamic systems that able to navigate like humans in hostile environments.These environments can be imprecise, vast, dynamical and partially or fully not structured.To reach their targets without collisions, these vehicles must be endowed with perception, data processing, recognition, learning, reasoning, interpreting, decision-making, and action capacities.The ability to acquire these faculties to treat and transmit knowledge constitutes the key to a certain kind of intelligence.
In this paper, a neural-network-based fuzzy logic is proposed for navigation control of autonomous vehicles in partially structured environments.The principal navigation problems are recognition, learning, decision-making, and action.Three phases are required to recognition: inaccurate sensor data processing, construction of knowledge base, and establishment of an environment map.The approaches are based on the Fuzzy Logic, Neural Networks (NN), or combination of them: Neuro-Fuzzy systems (Chohra et al.1996(Chohra et al. ,1998)).Indeed, this combination has been recognized as a facter in improving the learning and adaptation capacities when information is qualitative, inaccurate, uncertain, or incomplete.: 1) to make one's way towards its target by a NN, and 2) to avoid static or dynamic obstacles by a Fuzzy NN capturing the behavior of a human expert.First, the necessity of NN and FL systems to control intelligent vehicles is discussed.Second, a Fuzzy NN, in the form of feed forward multilayer net, combines the idea of fuzzy logic decision system and neural-network structure into an integrated neural-network-based fuzzy logic decision system.A NN is used to make one's way towards the target, and to avoid static or dynamic obstacles a Fuzzy NN captures the behavior of a human expert.Afterwards, two association phases between each task and the appropriate actions are carried out by Trial and Error learning.

Neuro-Fuzzy Navigation Systems
The use of the NN to process imprecise or very noisy data is more efficient than the classical techniques because of their high tolerance to noises (Anderson, 1995;Berns,1991).Also, it was shown that the use of the FL to handle imprecise data issued from the environment and sensors was more efficient than the previous deterministic techniques (Chuen,1990).This is due to the representation of the FL by fuzzy membership functions and to the state space discretization into linguistic variables.For the navigation in a dynamic environment, it is more advantageous to use an implicit representation rather than explicit one, (Hung,1993).This is particularly important for the navigation since the imprecise data are processed to recognize the environment.In reality, the difficulty in the establishment of an environment map resides in the knowledge representation.Thus, the approach of NN theory is appropriated as well as the one of FL to inaccurate data processing and construction of knowledge base.To solve navigation problems, NN are indispensable if the classification criteria or generalization rules are unknown since they are able to learn and generalize from examples without knowledge of rules.The use of FL theory to solve the same problems improves the efficiency if the classification criteria or generalization rules are known (given by an expert), ( Chuen,1990;Glorennec,1991).In effect, human reasoning is not based on the classical two-valued logic because this process involves fuzzy truths, fuzzy deduction rules, etc, (Zadeh,1992).Thus, several NN-based approaches are oriented to design and achieve intelligent systems, which simulate the human decision-making in imprecise environments (Bosacchi and Masaki,1993;Hung,1993).By another way, a particularity of the fuzzy rule-based approach is given by its ability to classify fuzzy IV situations, according to the degree of collision risk (Chohra et al,1999) (Maeda,1990).

The Proposed Navigation Approach
During the navigation the IV must recognize both the location of its target to make one's way towards it, and spatial situation to avoid possible obstacles.The target localization is based on a NN recognition acquired by learning from data obtained by computing distance and orientation of the vehicle-target using a temperature field strategy.The obstacle avoidance is done by Fuzzy NN from a fuzzy linguistic formulation of a human expert.

Intelligent Vehicle Movements
The movements of the vehicle are supposed possible only in three directions and consequently three actions A i (i = 1, 2, 3) are defined as action to move Ahead, action to turn to the Left, and action to turn to the Right A = [A A , A L , A R ] as illustrated in Figure1.

Partially Structured Environments
The interest in the mobile robotics especially in indoor environments such as: factories, passenger stations, harbors, and airports leads to effect partial structuring of these environments (Chohra and Farah,1996;Pignon,1994).A partial spatial structuring consists of a description of obstacles in the environment other partial topological structuring in 'rooms, corridors, doors, etc' allows the transition from the spatial structuring to its comprehension, which brings the manner to solve the navigation problems near the human one.The possible movements of our intelligent vehicle (the robot) lead us to effect the following partial topological structure resulting in corridors, turns to the right, turns to the left, and three situations in 'T' (as shown in Figure 1).The static obstacles are represented in Two dimensions (2D) by different shapes such as rectangular, squared, circular or triangular.The vehicles are controlled by the same navigation approach where each one considers the other as a dynamic obstacle.

Target Localization and Obstacle Avoidance
The situations of the target localization are defined by T = [T 1 , ..., T 6 ] (see Figure 2

Global System Structure
Three phases are necessary to develop the proposed system as shown in Figure 3.During the phase 1 the System learns to recognize the situations T j while it learns to recognize the other situations O j during the phase 2. The phase 3 decides an action A j from the association and coordination stages.The used networks are multi-layer ones where information is transmitted only from one layer to the following one.

Phase 1: Neural Network Target Localization
A temperature field is defined in the vehicle environment and the task of the control system is therefore to detect the unique maximum temperature of this field.The input vector to the network has three components representing the temperature in the neighborhood of the vehicle in Ahead, at the Left, and at the Right: X T =[T A , T L , T R ].These components are computed according to the orientation of the target with regard to the vehicle.After learning, for each input vector the NN system must recognize in which situation it finds its target.Note that the X T vector is normalized.
Neural Network: Three layers constitute the proposed NN as shown in Figure 4. Layer 1: This layer represents the input layer with three (03) input nodes receiving the components of the input vector X T .This layer transmits the inputs to all nodes of the next layer.
Layer 2: This layer represents the hidden layer with seven (07) nodes.The output of each node is obtained as follows where f is the output sigmoid function.Layer 3: This layer represents the output layer with six (06) output nodes which are obtained by: (2)

Phase 2: Obstacle Avoidance by a Fuzzy Neural Network
A Fuzzy NN is trained to capture the behavior of a human expert while controlling the obstacle avoidance operation.To mimic this control, the fuzzy linguistic formulation is used and a set of rules is then established.The input vector of the network has three components the distance to obstacles in Ahead, at the Left and at the Right: After learning, for each input vector the system must recognize which situation it finds itself.The input distance variables variable D A , we obtain { µ N (D A ), µ M (D A ), µ F (D A )} with µ N (D A ), µ M (D A ), and µ F (D A ) the membership degrees of fuzzy sets N, M, and F respectively.This layer is not fully connected with the layer 1.The connections exist only between the input nodes in the first layer and their corresponding membership nodes in the second layer.The weights of these connections are set to 1.
Layer 3: This layer represents the fuzzy rule base with twenty five (25) nodes where each node represents one fuzzy rule.The activation of nodes is achieved by the MIN operation, then f the output sigmoid function is applied (see equation 3), as shown in Figure 7.The rule association is done between membership functions of different inputs.The output of each node represents the strength of firing the rule defined by that node.This layer is not fully connected with the layer 2. Each node receives only three connections, from the corresponding nodes (N, M, or F) of the first, second, and third inputs.The links in this layer are used to perform precondition matching of fuzzy rules.The weights W2 pk of these connections are to be trained.
Layer 4: This layer with six (06) nodes performs the MAX operation between rules that produce the same consequences.The nodes in this layer correspond to output membership functions.The activation of nodes is achieved by the MAX operation, then the output sigmoid function is applied (see equation 4), as shown in Figure 8.This layer is fully connected to layer 3. The weights Wl jp , of these connections are to be trained to indicate which rules have more or less influences over the output membership functions.Layer 5: This output layer with one (01) node is the defuzzification process.This layer performs the defuzzification operation using the MAX.This layer is fully connected to layer 4 and the weights of these connections are set to 1.Note that this layer is used after learning i.e., during the application.

Learning Algorithm and Learning Environment
The learning of the two proposed networks are based on the supervised Gradient Back-Propagation algorithm as detailed in (Chohra , et al., 1999).The training is performed in a learning environment where all the situations T j and O j arc represented and only free-collision action is permitted in each situation.

Phase 3: Action
Both situations of T j and O j are associated by Trial and Error learning mechanism with the appropriate actions separately.Afterwards, the coordination of the two associated phases allows the decision-making of the appropriate action.

• Association: Learning by Trial and Error
This learning is guided only by a feedback process, i.e., guided by a signal P provided by the environment.This signal causes a reinforcement of the association between a given situation and an action if this latter leads to a favorable consequence to the vehicle; if not, the signal P provokes dissociation.Each neuron A i is connected to all neurons T j and O j through connections weighted by the coefficients U ij , and V ij respectively.The updating of these coefficients is achieved by: W ij =-α exp(-A i situation j * t/τ ) +(α -P) (5) Target Localization: Situation j = T j , and P = P 1 if Z=0, P= 0 if Z=1 (6) Note that for each situation T j , Z is determined with regard to each action i.e., Z A , Z L , and Z R (see Figure 2).For example, for the situation T 3, Z A =1, Z L =1 and Z R = 0.

• Target Localization
This association is carried out in a free-obstacle environment (0 = 0) and for each situation only one action is permitted, then the connection weights are adjusted to obtain this reinforced action represented by a full arrow in Figure 2.

• Obstacle Avoidance
This association is carried out without temperature informations (T = 0) and the connection weights are adjusted to obtain this reinforced action represented by a full arrow in Figure 2.

• Coordination
In each step, the robot receives information about temperatures in the neighborhood and distances to the obstacles and must make a decision concerning the direction of its next movement.The search of the maximum temperature can be interpreted as the goal of the system.The generated actions by the presence of obstacles must be interpreted as the reflex of the robot (IV) and must have precedence over those generated by the target localization.Also, to ensure the coordination, the A i are computed by equation ( 8), where N 1 is a random variable.

Simulation and Results
To reflect vehicle behaviors acquired by learning, and to demonstrate the generalization, adaptation and decision-making capabilities of the Neuro-fuzzy System, vehicles are simulated in different static and dynamic environments.

Static obstacles
To reflect the intelligent vehicle behaviour acquired by learning, navigation is simulated in the explored environment and in new unvisited environments.Testing in an environment with static obstacles is illustrated in Figure 9 (where Veh=Vehicle and Tar=Target), the vehicle succeeds in avoiding obstacles and reaches its target.

Intelligent Dynamic Obstacles
Intelligent dynamic obstacles represent vehicles controlled by the same avoidance approach where each one considers others as obstacles.In the case illustrated in Figure 10, three vehicles Vehl, Veh2, and Veh3 try to reach their respective targets while avoiding themselves.In the case illustrated in Figure 11 the vehicle avoids an obstacle oscillating vertically and reaches its target successfully.These kinds of non-intelligent obstacles are in reality preprogrammed, remote-guided or guided vehicles.

Complex environments
In a complex environment illustrated in Figure 12, three vehicles intelligently avoid static and dynamic obstacles.

Conclusion
The trained NN, and Fuzzy NN constitute the knowledge bases of the control system.Indeed, its main feature is the use of these networks in the task of fuzzy reasoning and inference to decide static and dynamic obstacle danger degrees, and avoidance direction.Tested in new unvisited environments, the intelligent vehicle avoids not only the static obstacles of different shapes but also the dynamic ones, illustrating then the generalization and adaptation capabilities of the proposed Neuro-Fuzzy approach.
An interesting alternative for future research is the generalization of the proposed approach by increasing the number of the possible intelligent vehicle movements.

Figure 3 .
Figure 3. Synoptic of the global system.