Poster Paper Proc. of Int. Conf. on Advances in Robotic, Mechanical Engineering and Design 2011
Neuro-Fuzzy Approach for Obstacle Avoidance in Autonomous Mobile Robot Sagar B. Bhokre1, Kathika Roy2, and S. D. Naik2 1
Department of Electrical Engineering, Indian Institute of Technology Bombay, Mumbai-400076, India E-mail: sagarbhokre@iitb.ac.in 2 Department of Electronics Engineering, Defence Institute of Advanced Technology Girinagar, Pune-411025, India E-mail: kathikaroy@gmail.com more methodical and intelligent implementation of a given system. Adaptive Neuro Fuzzy Inference System (ANFIS) is an improvement over conventional FIS and NN which exploits the salient features of both [3]. The system works on noncrisp sets and can be trained as well. This paper talks about both Fuzzy and Neuro-Fuzzy implementation for an autonomous mobile robot system. The hardware details of the robot and the experimental result is discussed and analyzed for both the system. The paper is structured as follows. In Sect. II, the implementation of FIS based AMR is detailed. The implementation of ANFIS based AMR is discussed in section III. In Sect. IV, the results of the analysis and comparison are mentioned.
Abstract— This paper details the implementation of Fuzzy Interference Systems and Adaptive Neuro-Fuzzy Inference Systems on an Autonomous Mobile Robot. The goal is to avoid obstacle in an unknown environment without human intervention. Challenges lie in designing appropriate membership function for the Fuzzy Inference System and training the system with appropriate data in case of Adaptive Neuro-Fuzzy Inference System. Both the methods are explored and different hardware units are designed with added sensor interfaces. Comparison has been made between the two methods for their applicability and performance Index Terms— Autonomous Mobile Robot, Fuzzy Logic Controller, Neuro-Fuzzy, Fuzzy Membership Function, ARM7TDMI microcontroller, ANFIS, Neural Network, FIS.
II. FUZZY INFERENCE SYSTEM
I. INTRODUCTION
The human approach can be best represented with the help of linguistic variables, sets, and rules. Fuzzy inference system eases the understanding and implementation of a nonlinear system using these linguistic variables, sets, and rules. It matches the most to the human reasoning and decision making capabilities. This Fuzzy Logic was originally proposed by Sade [4] and Mamdani and Assailant [5] to deal with uncertainties in control application. Later on it found tremendous applications in consumer products, industrial systems for automation, robotics. This paper deals with one such common application; designing the inference system for an Autonomous Mobile Robot meant to explore unknown environment.
An Autonomous Mobile Robot (AMR) is an unmanned machine used for exploring an unknown environment. The mobile robot is required to maneuver and perform surveillance of the unknown area without guidance, avoiding obstacles in the path. This requires a close association of the external environment with the Robot interface. The association can be in the form of images of the surrounding, distance of an obstacle or a depth map. The complete system model can be designed on the basis of complex mathematical algorithms with many assumptions. These models are hard to design. The other options are non-analytical method of computations such as fuzzy logic and neural network for intelligent control of complex system. Fuzzy Inference System (FIS) converts the analog input data into a set with a conûdence level associated with each member of the set (membership value). Fuzzy systems are the ones which mimic human expertise by dealing with ambiguities [1]. The advantage of such a system is that it closely resembles human reasoning. It is easy to understand, implement and it operates with less computations. Complex piecewise mathematical expressions are reduced to simple rules. It involves minimum hardware complexity and the execution is fast. On the other hand Neural Network (NN) uses the network of neurons to decide the output. The NN is trained until it responds similar to the input-output pair samples provided during the training phase [2]. The advantage of such a system is that it can be trained. Disadvantage being that the rules and logic remains hidden within the network. It works on crisp input values. The combination of these two above methods result in a much © 2011 AMAE DOI: 02.ARMED.2011.01. 6
A. Hardware Implementation: The hardware assembly consisted of two Infra-red (IR) range sensors, one sensing the distance of the nearest object on the right and the other sensor sensing the distance of the nearest object on the left of the robot [6]. These IR sensors are capable of detecting an object anywhere between 30 cm to 150 cm. The analog data output of the sensors are processed by an onboard micro-controller which is the brain of the robot. (32 bit ARM7TDMI micro-controller) The hardware selection is based on various factors like availability, expandability, cost, ease of operation and the scope of overall system design. In order to keep the weight of the robot to bare minimum, only the basic structure of the robot body was made (Fig. 1). The actuators are two stepper motors used to maneuver the robot, namely the left motor and the right motor. 37
Poster Paper Proc. of Int. Conf. on Advances in Robotic, Mechanical Engineering and Design 2011 B. Software Implementation: The FIS system considers the input values to lie within five linguistic variables (Very Small Distance (VSD), Small Distance (SD), Medium Distance (MD), Big Distance BD) and Very Big Distance (VBD)). Left and
Figure 2. ANFIS block diagram
Figure 1. FIS implementation on AMR
The parameters of this layer, also called as premise parameters for the bell function where i = 1, 2, 3) are tuned during the training phase. The nodes in this layer are adjustable nodes. Here µx1 gives membership values for nearness, µx2 gives membership values for medium distances and µx3 gives membership values for far objects. Similar
right range sensors give analog values as the distance of the nearest object in the line of sight. Both the inputs are assigned a membership value pertaining to each of the linguistic variables membership function. All the input membership functions are bell shaped; the parameters of which are set manually. The FIS system uses a “Rule Base” to calculate the output. The membership value of the output linguistic variable is considered to be the multiplication of the membership values of the input linguistic variables for the rule under consideration. The output membership values from each rule are calculated and are fused together to generate one crisp value. The strength of the output depends on the “Defuzzification” of the output membership values. The Middle of Maximum (MOM) method is used for defuzzification in this implementation. e.g.: if (left input near && right input far) then {left motor fast; right motor slow}. This rule evaluates the membership values for left sensors near membership function and right sensors ‘far’ membership function, multiplies the membership values and uses the result with left motors fast membership function and right motors slow membership function separately. This example depicts the case when both the right motor and left motor are identical. In cases when this condition does not hold true, separate rule base is used for the control of each motor.
conditions are applicable toµyi. The second layer combines the degree of membership values from each membership function and computes the firing strength of each rule (Q). The operations are fixed and the parameters need not be tuned. Nodes in this layer are fixed nodes.
Where i = (no. of mem. functns) j + k and j; k = 1, 2, 3. The third layer represents the consequent parameters that are adjustable. The consequent parameters are the coefficients of the function for i= 1 to 9).
While training the system, the consequent parameters are calculated using the Least Squares Fit method. The fourth layer is again fixed and combines the firing strengths.
III. ADAPTIVE NEURO-FUZZY INFERENCE SYSTEM A. Introduction Adaptive Neuro-Fuzzy Inference System (ANFIS) was introduced by Jang [2]. The model used in this implementation is a Sugeno type model. Consider the ANFIS network represented in Fig. 2. ANFIS is an enhancement over FIS in which the Fuzzification and rule base are maintained. The ANFIS architecture is a feed forward structure consisting of both the adjustable nodes and the fixed nodes. The left and right sensor input values (x, y) are fed to the layer 1 nodes that represent the bell shaped membership functions.
© 2011 AMAE DOI: 02.ARMED.2011.01. 6
The fifth layer normalizes the firing strength
It can be considered as the aggregation of outputs performed by weighed summation followed by normalization. This entire structure responds to the input values and generates the ûring strength for a single motor (say right motor). Similar structure with different premise and consequent parameters is implemented to generate the ûring strength for the other motor (say left motor). 38
Poster Paper Proc. of Int. Conf. on Advances in Robotic, Mechanical Engineering and Design 2011 B. Hardware Implementation:
IV. QUALITATIVE ANALYSIS
In ANFIS approach, one infrared distance sensor mounted on a servo motor is used to measure the range values at different angles (0 to 180 degree). The servo motor can be controlled in steps as low as one degree. This mechanism allows measurement of the distance of various obstacles from the robot using minimum number of sensors. If the step angle is small enough, this mechanism provides a depth map along a horizontal line. Two DC motors are used to drive the robot in a differential manner. The main processing unit of the robot is an 8 bit Atmega16 processor running at a 12MHz clock. Fig. 3 shows the robot used for ANFIS network implementation.
The applicability of both the approaches was tested and the findings are as follows: The maneuvering of the robot is smoother in case of ANFIS based algorithm. ANFIS algorithm handles the imperfections and bias in the sensors to some extent. As the onus of adjusting the premise parameters is left to the system rather than the user, the imperfections are already considered. Tuning the performance was easier in case of ANFIS. The input stage needs information about the type of membership function and the number of linguistic variables per input, rest of the details are handled by the system. The rule base is not transparent to the programmer as compared to the FIS system, which is easy to handle.
V. CONCLUSION Fuzzy Inference System implementation is easy to understand and implement but is associated with cumbersome job of finding the ‘nearly perfect’ parameters of the membership functions where expertise of the designer is needed for better performance. Whereas Adaptive Neuro Fuzzy Inference System works on the principle of training the system using the input-output pair set which makes continuous correction easier. Performance of the robot can be further improved by selecting I/O pairs at runtime and using subtractive clustering. Further quantitative study can be conducted in future to evaluate and compare the performance matrices.
Figure 3. ANFIS implementation on AMR
C.
Software Implementation:
This ANFIS system implementation senses the distance of an object using a servo motor and distance sensor combination. The servo motor sweeps from left to right (0 to 180 degrees) and records the readings at steps. A step size of 180 degrees would mean the left and right distance measurements whereas the step size of 90 degrees would mean measurement on the left, front and right side of the robot. For the current implementation, the input is recorded with the step size of 90 degrees. The orientation of the sensor in the figure indicates positioning for left side reading. The left and right distance measured is assigned a membership value similar to the implementation of a FIS using five linguistic variables. Here the membership functions are bell shaped too but the difference is that the membership functions need not have accurate parameters. The system tunes the parameters while it is being trained. The output of the system is the linear combination of the input values, and the rule base evaluation. The system can be trained using various training algorithms. For the present implementation, Hybrid Training Algorithm is used to train the robot. During the training procedure, the membership function parameters are calibrated using back propagation. The consequent coefficients which linearly combine the input values and the rule base evaluation values are calculated using Least Squares Fit.
© 2011 AMAE DOI: 02.ARMED.2011.01. 6
REFERENCES [1] C. C. Lee. “Fuzzy logic in control systems: fuzzy logic controller.” I, IEEE Transactions on Systems, Man, and Cybernetics 20, 404 - 418 (1990) [2] Moufid Harb, Rami Abielmona and Emil Petriu, “Speed Control of a Mobile Robot Using Neural Networks and Fuzzy Logic”, Proceedings of International Joint Conference on Neural Networks, Atlanta, Georgia, USA, June 14-19 (2009) [3] Jyh-shing Roger Jang. “ANFIS: Adaptive-Network-Based Fuzzy Inference System”, IEEE Transactions on Systems, Man, and Cybernetics 23, 665 -685 (1993) [4] L.A. Zadeh. “Fuzzy sets, Information and Control”, Volume 8, Issue3, June 1965, Pages 338-353, ISSN 0019-9958, DOI: 10.1016/S0019-9958(65)90241-XJ. [5] E.H. Mamdani, S. Assilian, “An experiment in linguistic synthesis with a fuzzy logic controller”, International Journal of Man-Machine Studies, Volume 7, Issue 1, January 1975, Pages 113, ISSN 0020-7373, DOI: 10.1016/S0020-7373(75)80002-2. [6] Wg Cdr S.Bharadwaj, Kathika Roy and S.D.Naik, “Design of a Fuzzy Logic Controller for an Autonomous Mobile Robot”, IEEE Conference on Applications of Intelligent System (AIS-2008), March13 -15 2008, Sonepat, Haryana
39