# Neuro-fuzzy controller to navigate an unmanned vehicle

- Boumediene Selma
^{1}Email author and - Samira Chouraqui
^{1}Email author

**2**:188

https://doi.org/10.1186/2193-1801-2-188

© Selma and Chouraqui; licensee Springer. 2013

**Received: **19 February 2013

**Accepted: **11 April 2013

**Published: **27 April 2013

## Abstract

A Neuro-fuzzy control method for an Unmanned Vehicle (UV) simulation is described. The objective is guiding an autonomous vehicle to a desired destination along a desired path in an environment characterized by a terrain and a set of distinct objects, such as obstacles like donkey traffic lights and cars circulating in the trajectory. The autonomous navigate ability and road following precision are mainly influenced by its control strategy and real-time control performance. Fuzzy Logic Controller can very well describe the desired system behavior with simple “if-then” relations owing the designer to derive “if-then” rules manually by trial and error. On the other hand, Neural Networks perform function approximation of a system but cannot interpret the solution obtained neither check if its solution is plausible. The two approaches are complementary. Combining them, Neural Networks will allow learning capability while Fuzzy-Logic will bring knowledge representation (Neuro-Fuzzy). In this paper, an artificial neural network fuzzy inference system (ANFIS) controller is described and implemented to navigate the autonomous vehicle. Results show several improvements in the control system adjusted by neuro-fuzzy techniques in comparison to the previous methods like Artificial Neural Network (ANN).

### Keywords

Unmanned vehicle Neural network Fuzzy logic ANFIS Control## Introduction

Traditional control of non-linear dynamical systems has been done by using Classical Linear Control Theory and assuming simple linear mathematical models for the systems. However, it is now well known that non-linear dynamical systems can exhibit complex behavior (and as a consequence are difficult to control) and the most appropriate mathematical models for them are the non-linear ones. Since the complexity of mathematical models for real dynamical systems is very high it becomes necessary to use more advanced control techniques. This is precisely the fact that motivated researchers in the area of Artificial Intelligence (AI) to apply techniques that mimic human experts in the domain of dynamical systems control. More recently, techniques like neural networks and fuzzy logic have been applied with some success to the control of non-linear dynamical systems for several domains of application.

In literature, there can be found many different approaches related to the autonomous control of Unmanned vehicles UVs; some of the techniques proposed include fuzzy control (Banks & Hayward,2001; Doitsidis, Valavanis, & Tsourveloudis, Doitsidis, Valavanis, & Tsourveloudis, ; Doitsidis, Valavanis, & Tsourveloudis,2004; Verbruggen, Zimmerman, & Babuska, Verbruggen, Zimmerman, & Babuska, ; Verbruggen, Zimmerman, & Babuska,1999), adaptive control (Andrievsky & Fradkov,2002; Aström & Wittenmark,1989; Schumacher & Kumar,2000), neural networks (Sundararajan, Li, & Sratchandran,2001), genetic algorithms (Cordon, Gamide, Herrera, & Magdelen,2004) and Lyapunov theory (Ren & Beard,2003).

However, there have been some limitations and problems with these approaches when applied to real systems. For this reason, we proposed in this paper the application of a hybrid approach for the problem of control, combining neural and fuzzy technologies called Adaptive neuro fuzzy inference system (ANFIS).

The ANFIS model was trained with the back propagation gradient descent method. We used the data described in (Andrzejak et al.2001), which is publicly available. After learning of ANFIS in several iterations there is an error between the calculated position and the position of the reference which is minimal.

The correct training rates and convergence rates of the proposed ANFIS model were examined and then performance of the ANFIS model was reported in the results obtained.

The paper is organized as follows. Section 2 starts with a basic introduction of ANFIS and then explains the design of the controllers used for the autonomous control of the UAV. The inputs and the outputs of each controller are described and the membership functions used are given. The hybrid learning algorithm adopted in this work is described in Section 3 and a representative simulation study and its results are presented in Section 4. In the final sections of the paper some concluding remarks and suggestions for future work are made.

## Overview of the ANFIS

Adaptive Neural Fuzzy Inference System (ANFIS) is fuzzy Sugeno model put in the framework to facilitate learning and adaptation procedure. Such network makes fuzzy logic more systematic and less relying on expert knowledge. The objective of ANFIS is to adjust the parameters of a fuzzy system by applying a learning procedure using input–output training data.

A combination technique of least square algorithm and back propagation are used for training fuzzy inference system (Jang & Sun,1997).

Rule 1: If *x* is *A*
_{
l
} and *y* is *B*
_{
1
}, then *f*
_{
l
} *= p*
_{
l
}
*x + q*
_{
l
}
*y + r*
_{
l,
}

Rule 2: If *x* is *A*
_{
2
} and *y* is *B*
_{
2
}, then *f*
_{
2
} *= p*
_{
2
}
*x + q*
_{
2
}
*y + r*
_{
2
}
*,*

ANFIS has five layers as shown in Figure 1, square nodes are named adaptive nodes, to demonstrate that the parameters in these nodes are adjustable., while circle nodes, named fixed nodes, are to demonstrate that the Parameters are fixed. Then the node function in each layer is described below:

*i*in this layer is an adjustable node with node function:

Where *a*
_{
i
}, *b*
_{
i
} and *c*
_{
i
} are the parameters of the membership function, governing the bell shaped functions accordingly.

Layer 2: in the second layer, the nodes are fixed nodes. They indicate that they perform as a simple multiplier.

Which are the so-called firing strengths of the rules.

Layer 3: in the third layer, the nodes are also fixed nodes. They indicating that they play a normalization role to the firing strengths from the previous layer.

Which are the so-called normalized firing strengths?

It can be observed that there are two adaptive layers in this ANFIS architecture, namely the first layer and the fourth layer. In the first layer, there are three modifiable parameters {*a*
_{
i
}, *b*
_{
i
}, *c*
_{
i
}}, which are related to the input membership functions. These parameters are the so-called premise parameters. In the fourth layer, there are also three modifiable parameters {*pi*, *qi*, *r*
_{
i
}}, pertaining to the first order polynomial. These parameters are so-called consequent parameters (Jang,1993).

## System design

The efficacy of the ANFIS controllers is evaluated by demanding the UV to execute some steering maneuvers autonomously.

Road reference also contains bumps and traffic lights, it should here be noted that while the UV is in front of a bumps must slow up, and if there is a traffic lights, the nose of the UV is placed at line of traffic lights if it is red, if not it will finish without stopping and with the same speed.

The rules of the neuro-fuzzy inference subsystem are formulated so that all possible potential situations that may occur to the vehicle on the route are taken into consideration.

**ANFIS situations**

Situation | Antecedent | Consequent |
---|---|---|

Case 1: donkey | ||

Distance donkey “D” | D = 10 m | Decrease the speed |

D > 10 m |
| |

Case2: existence of a vehicle on the road | ||

Distance from another vehicle on the road “D-V” | D_V =3 m | Change of position and Exceeding |

D_V >3 m |
| |

Case 3: traffic lights | ||

Color traffic lights “C” | C = Green | Move |

C = Red | Stop |

## The neuro-fuzzy architecture

The input layer passes the data to the second layer, which calculates the fuzzy membership degrees to which the input values belong to predefined fuzzy membership functions. The third layer contains fuzzy rule nodes representing prototypes of input–output data as an association of hyper-spheres from the fuzzy input and fuzzy output spaces. Each rule node is defined by 2 vectors of connection weights, which are adjusted through the hybrid learning technique. The fourth layer calculates the degrees to which output membership functions are matched by the input data, and the fifth layer does defuzzification and calculates exact values for the output variables.

*(X, Y)*, the velocity

*V*, back to donkey

*D, F*red light, vehicle

*O*which shows the state of overshoot) and three outputs (new positions

*(X, Y)*, and the velocity

*V*).

According to the calculations of the network (fuzzification, inference, defuzzification) the control action is applied to the input of the process that lets you know the state of the system to calculate the error which has the input of the network controller.

Rule 1: IF Position *X* is *X*
^{
’
} and *X-ϵ <X < X+ϵ* THEN the Position is *X*

Rule 2: IF Position *Y* is *Y*
^{
’
} and *Y-ϵ <Y < Y+ϵ* and THEN the Position is *Y*

Where *ϵ* defined the membership interval of the output calculated relative to the desired output and it is empirically determined by the user.

Rule 3: IF Position is *X, Y* and Obstacle is Null THEN the Position is *X, Y*

Rule 4: IF Velocity MAX and Obstacle is Null THEN the Velocity is MAX

Rule 5: IF Obstacle is Vehicle and Velocity is MAX THEN the Position is LEFT and exceed

Rule 6: IF Obstacle is donkey and Velocity is max THEN the Velocity is MIN

Rule 7: IF Obstacle is traffic lights and Color is RED THEN the Velocity is ZERO

Rule 8: IF Offset is traffic lights and Color is GREEN THEN the Velocity is MAX

The value at the end of each rule represents the initial weight of the rule, and will be adjusted to its appropriate level at the end of training. All the rules lead to three different subjects, which is the steer direction for the mobile robot and velocity. Then three output nodes are needed. They are Positions *X, Y* and Velocity correspondingly.

The Figure 5 illustrates the ANFIS rules configuration.

## Training for neuro-fuzzy system

The weight for each neural node is configured with an initial value specified by system experts, and then further tuned by using a training algorithm. A back propagation algorithm is employed in this research as follows:

Step 1: Present an input data sample, compute the corresponding output

Step 2: Compute the error between the output(s) and the actual target(s)

Step 3: The connection weights and membership functions are adjusted

Step 4: At a fixed number of epochs, delete useless rule and membership function nodes, and add in new ones

Step 5: IF Error > Tolerance THEN goto Step 1 ELSE stop.

When the error level drops to below the user-specified tolerance, the final interconnection weight reflects the changes in the initial fuzzy rules and membership functions. If the resulting weight of a rule is close to zero, the rule can be safely removed from the rule base, since it is insignificant compared to others. Also, the shape and position of the membership functions in the Fuzzification and Defuzzification Layers can be fine tuned by adjusting the parameters of the neurons in these layers, during the training process.

## Simulation results

To show the contribution of the control by ANFIS and its improvements compared to the Neural Network method, simulation was approved on an unmanned vehicle.

**ANFIS-ANN results**

Method | Error | Success |
---|---|---|

ANFIS | 0.79% | 99,21% |

ANN | 1.95% | 98.05% |

### Comparison of the anfis results with other techniques

To show the performance of the results obtained by our approach, an artificial neural networks ANN have been selected for comparison because of its high capacity of prediction and control in non linear dynamical systems.

From Table 2 it is seen the precision of the results of both methods are more or less the same. Therefore, it can be concluded that the ANFIS controller have a good potential to effect fast response to obstacles and reduce errors.

## Conclusion

ANFIS architecture has demonstrated a good performance in modeling the trajectory of an Unmanned Vehicle. The best feature of ANFIS is that it pre-processes all the data into several membership functions before mapping the data into an adaptive neuro structure. This pre processing feature allows ANFIS to converge faster and better. In order to be able to have a basis for comparison, an ANN type controller is also designed.

Through experimental tests and comparisons with existing algorithms, it is found that the proposed system is a powerful tool for controlling non linear dynamical systems.

## Declarations

## Authors’ Affiliations

## References

- Andrievsky B, Fradkov A International conference on control applications Glasgow. In
*Combined adaptive autopilot for an UAV flight control*. Glasgow; 2002:290-291.Google Scholar - Andrzejak RG, Lehnertz K, Mormann F, Rieke C, David P, Elger CE: Indications of nonlinear deterministic and finite-dimensional structures in time series of brain electrical activity: dependence on recording region and brain state.
*Phys Rev E*2001, 6: 061907.View ArticleGoogle Scholar - Aström KJ, Wittenmark B:
*Adaptive control*. Lund Institute of Technology: Addison Wesley Publishing Company; 1989.Google Scholar - Banks W, Hayward G:
*Fuzzy logic in embedded microcomputers and control systems, A2-490 Dutton drive waterloo*. Ontario, Canada: Byte Craft Limited; 2001.Google Scholar - Cordon O, Gomide F, Herrera F, Magdalena L: Ten years of genetic fuzzy systems current framework and new trends.
*Fuzzy Set Syst*2004, 141(Issue 1):5-31.View ArticleGoogle Scholar - Doitsidis L, Valavanis KP, Tsourveloudis NC, Kontitsis M Proceedings of the IEEE international conference on robotics and automation. In
*Framework for fuzzy logic based UAV navigation and control*. New Orleans, LA; 2004.View ArticleGoogle Scholar - Jang J-SR: ANFIS: Adaptive-network-based fuzzy inference system.
*IEEE Trans Syst Man Cybern*1993, 23(3):665-685. 10.1109/21.256541View ArticleGoogle Scholar - Jang JSR, Sun CT:
*Neuro-fuzzy and soft computing: a computational approach to learning and machine intelligence*. Upper Saddle River, NJ, USA: Prentice Hall; 1997.Google Scholar - Ren W, Beard RW 42nd IEEE conference on decision and control. In
*CLF-based tracking control for UAV kinematic models with saturation constraints*. Maui, Hawaii; 2003:3924-3929.Google Scholar - Schumacher CJ, Kumar R American control conference. In
*Adaptive control of UAVs in close-coupled formation flight*. American; 2000.View ArticleGoogle Scholar - Sundararajan Y, Li N, Sratchandran P: Neuro-controller design for nonlinear fighter aircraft maneuver using fully tuned RBF networks.
*Automatica*2001, 37(8):1293-1301. 10.1016/S0005-1098(01)00090-5View ArticleGoogle Scholar - Verbruggen HB, Zimmerman HJ, Babuska R:
*Fuzzy algorithms for control*. USA: Kluwer Academic Publishers; 1999.View ArticleGoogle Scholar

## Copyright

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.