Mobile robot controller using novel hybrid system

ABSTRACT


INTRODUCTION
Among all the soft-computing methods suggested for mobile robot reactive navigation, fuzzy logic systems have been found to be the most attractive. They are tolerant to noise and error in the sense of information coming from the sensory system, and most importantly they are factual reflection of the behavior of human expertise [1]. In general, there are two approaches to the application of fuzzy logic in mobile robot navigation, namely, behavior-based approach [2,3] and classical fuzzy rule-base approach [4,5]. The design of fuzzy logic rules is often reliant on heuristic experience and it lacks systematic methodology. Therefore this rules might not be correct and consistent, do not possess complete domain knowledge, and/or could have a proportion of redundant rules [6]. Furthermore, when a better precision is needed the number of input variables and their fuzzy values need to be increased, for example, when using four input variables each mapped by seven fuzzy values besides 2401 if-then rules maybe required to define the rule-base of the inference system. Such huge expansion in a multi-dimensional fuzzy rule-based system adds further ad hoc to the design of the system [7].
Several successful reactive navigation approaches based on neural networks have been suggested in the literature [8,9]. In spite of various suggested network topologies and learning methods, neural reactive navigators still perceive their knowledge and skills from demonstrating actions [10]. Therefore, they suffer from a very slow convergence, lack of generalization due to limited patterns to represent complicated environments, and finally information encapsulated within the network can not be interpreted into physical knowledge [11,12]. Consequently, the utilization of neural networks in reactive mobile robot navigation is limited when compared to fuzzy logic. However, the role of neural networks has been found to be very useful and effective when integrated with fuzzy systems [13]. The birth of this integration between these two soft-computing paradigms is the neuro-fuzzy systems. Neuro-fuzzy systems provide an urgent synergy that can be found between the two paradigms, especially the capability to mimic human experts as in fuzzy logic, and learning from previous experience capability as in neural networks.
In general, neuro-fuzzy systems can be classified into three categories, neurally adaptive fuzzy inference system, neurally performed FIS, and combinatorial, or hybrid, neuro-fuzzy systems. The neurally adaptive fuzzy inference system is the most widely used neuro-fuzzy systems, and they are designed to combine the learning capabilities of neural networks and reasoning properties of fuzzy logic [14,15]. In this paper, a new novel approach is proposed using the hybrid neuro-fuzzy controller as a mobile navigation system. The proposed system has apparent advantage in structures that simplify and reduce the processing time and improve the performance. This archived by using an artificial neural network instead of fuzzification engine. With such a technique, the required time needed to infer the decision for the robot movement is greatly reduced.

LITERATURE REVIEW
Previous authors have applied various types of techniques to control the mobile robot using different intelligent techniques. Singh et al [16] developed and successfully implemented a pattern recognition approach to reactive navigation based on real time sensory information. A heuristic fuzzy neuro network is developed for patternmapping between quantized ultrasonic sensory data and the velocity commands to the robot. The design goal was to enable an autonomous mobile robot to navigate safely and efficiently to target position in a previously unknown environment. To build the desired mapping between perception and motion, usefully heuristic rules were combined with the Fuzzy Kohonen Clustering Network (FKCN). In Yung and Ye [17] paper, an alternative training approach to the EEM based training method is presented and fuzzy reactive navigation architecture is described. Using the rule base learned from the new method, the proposed fuzzy reactive navigator fuses the obstacle avoidance behavior and goal seeking behavior to determine its control actions The new training method is 270 times faster in learning speed; and is only 4% of the learning cost of the EEM method, where adaptability is achieved with the aid of an environment evaluator. Hagras and Sobh (1998) discussed the control of autonomous intelligent robotic agent operating in unstructured changing environments. Online learning as a useful method producing intelligent machines for inaccessible environments was introduced. In these environments it is required to perform online learning through interaction with the real environment and performing any adaptation within short time intervals. Under such conditions, robotic agents have to be adaptive. Cao et al. [18] describe a Neuro-fuzzy control method for the navigation of an AGV robot. An overall system design and development was presented. The Neuro-Fuzzy computation and its application for mobile robot navigation were discussed. The system that was to be controlled is an electrically propelled mobile vehicle named Bearcat II, which is a computer controlled intelligent system. As autonomous navigation requires a number of heterogeneous capabilities, including the ability to execute elementary goal-achieving actions, like reaching a given location; to reach in real time to unexpected events, like the sudden appearance of an obstacle; to determine the robot's position; and to adapt to changes in the environment, the paper introduces a Neuro-fuzzy control method for navigation of an Autonomous Guided Vehicle (AGV) robot. Ng and Carpenter et al. [19] introduce a neural integrated Fuzzy controller (NiF-T), which integrates the fuzzy logic representation of human knowledge with the learning capability of neural networks, is developed for nonlinear dynamic control problems. It covers integrated sensing, control, actuator modules, real-time performance, ability to successfully handle noisy sensor signals, reactive controller design which captures high-level, linguistically based human expertise in a set of fuzzy rules, training of neural networks directly with fuzzy rules instead of numerical sample data, as well as learning capabilities and general applicability. NiF-T architecture comprises "of three distinct parts: 1) Fuzzy logic Membership Functions (FMF), 2) a Rule Neural Network (RNN), and 3) and Output-Refinement Neural Network (ORNN). FMF are utilized to fuzzify sensory inputs. RNN interpolates the fuzzy rule set; after defuzzification, the output is used to train ORNN. The weights of the ORNN can be adjusted on-line to fine-tune the controller". Only five rules were used to train the wall following behavior, while nine were used for the hall centering. Also, a robot convoying behavior was realized with only nine rules. For all of the described behaviors-wall following, hall centering, and convoying, their RNN's were trained only for a few hundred iterations and so are their ORNN's trained for only less than one hundred iterations to learn their parent rule sets.

RESEARCH METHOD
The mobile robot is required to explore several paths in a maze, of a pattern of successive combinations of left and right turns. Its task is to reach a desired position at the end of one channel. The mobile robot uses a kind process, sequentially adopting cyclic pattern of the left and right turns. Eventually, it ends up with the desired position, at which time a signal is injected, causing the robot to record the correct pattern. The mobile robot is assumed to be equipped with three physical ultrasonic sensors and one virtual sensor as shown in Figure 1. The physical sensors are used to detect obstacles in front of the robot, the right side, and the left side, respectively. The maximum distance that can be sensed by these sensors is assumed to be 8 meters. The virtual sensor is used to guide the robot towards the target. This sensor is especially needed when the target direction of movement is totally blocked by an obstacle. The virtual sensor will guide the robot back towards the target once the obstacle is avoided as in [20,21]. Henceforth, the robot travels quickly and accurately along the track to accomplish any job that has been assigned. It is assumed that the robot will not face any traps (or get into a situation where it is required to backtrack or turn around). Such a problem is out of this paper scope.
The four sensors provide the path planning system (in our case a neuro-fuzzy logic system) of the robot with three distances front (dc), right (dr), left (dl), and target orientation (theta), respectively. From these inputs, the neuro-fuzzy logic controller will make up a decision in which direction should the robot move in order to reach the target. The neuro-fuzzy controller should pass through three stages, i.e., ANN fuzzification, inference, and defuzzification as shown in Figure 2.

Fourty rules fuzzy navigator system
The fuzzy logic controller (FLC40) was analyzed and tested for different cases based on the same parameters and rules used by [22]. The robot motion results have been considered with relation to different cases. Problems were recorded and investigated and the reasons behind the failure of this robot, in these cases, were related to the limited number of the sets used (FAR, NEAR), and the limited angle of orientation (turning angle), which are five sets. Due to this limitation, the robot touches the obstacles slightly in all cases considered as shown in Figure 3. To avoid these problems, a relaxation of the rules was done by increasing the number of sets for the input distances from two to three sets; accordingly, the number of rules was increased to 135 activation rules which will be discussed in the next section.

Development of the improved fuzzy navigator system
As it has been already noted, that the FLC40 is not capable to avoid collision with the edges of the obstacles in all cases. An improvement to the system can be easily made by slightly increasing the number of fuzzy sets in order to achieve better resolution. In this paper, it is proposed to increase the fuzzy sets to three linguistic labels (L, M, S) as shown in Figure 4 (a, b, c). The fuzzy sets in this case become shorter than before, so the accuracy and the performance of the controller are improved. As the number of sets is increased the fuzzy rules are increased as well up to 135 activation rules (3335=135 activation rules). As an example, a sample is presented where the activation rules are:

IF dr is L and dc is L and dl is L and tr is LB THEN Sa is TLB IF dr is S and dc is M and dl is L and tr is RB THEN Sa is TZ IF dr is L and dc is M and dl is S and tr is RS THEN Sa is TRS
The results obtained from this improved fuzzy logic controller have been improved. The robot avoids collision with the obstacles as shown in Figure 5. Also, the processing time for this small number of rules is very short which increased the response time of the robot comparing with using 625 activation rules as in reference [23]. Furthermore, this paper focused on evaluating the performance of this fuzzy controller by comparing the results with other approaches such as [24]. These comparisons are presented in the next section. Figure 5. Improvement FLC135 success cases

Hybrid neuro-fuzzy technique
The main problem in the fuzzy logic controller is the Fuzzification block, which need a long processing time. To solve this problem of processing time, the artificial neural network (ANN) is proposed instead of the Fuzzification engine to reduce the computational time. The system is investigated by considering the results of the integration between both systems (Fuzzy logic and neural networks) as shown in Figure 2.

Creating the Input and the Output Data
The neural network training in the feedforward method, the inputs, and the outputs data must be known. The inputs data are crisp value for the three distance sensors and the physical orientation sensor. As shown in Figure 4, the distance range is [0 -8] meters, but the interval from 2 to 6 is considered since the distance interval [0,2] has the linguistic label as 1 meter (S) and the distance interval [5,6] has also the linguistic label 5 meters (M). The same thing is for the angle orientation in which the interval that considered is [-65, 65] degrees since the sided sets have the linguistic labels as -65 and 65 respectively. The distance is divided into seventeen points with step of 0.25 meter between each point and step of 8.125 degree for the orientation angle input. Therefore, we have four dedicated vectors (left, center, right and orientation) that include 17 values. Therefore, there will be four parallel fuzzification neural network. Each fuzzification neural network has five output nodes which are the probability value for each linguistic label (S, M, L for distance sensors and LB, LS, Z,RS,RB for orientation sensor). The seventeen crisp values for each input vector are processed in a real fuzzification engine in order to compute the linguistic value for each input. This linguistic value is considered as an output for the fuzzification neural network. As a result, the output matrix is design to be 17×3 for each fuzzification neural network, where number 3 represent the fuzzy sets for input sensors

Training and learning the neural network
As has been shown in the previous section, the input and output data to train the feed-forward neural network are generated. Then the values of the input matrices are arranged in training vectors in a manner similar to the Jackknife technique, where 70% of the data were used for the NN training phases and the remaining 30% were used for the NN testing phases. The fuzzification neural network is design using four parallel neural network. The topology of the each of the fuzzification neural network consists of one input nodes, hidden layer and five output nodes. To find the optimum topology (i.e., the optimum number of hidden nodes in the hidden layer), several feedforward NN structures were trained using the training data to find the minimum training error. As a result, it is found that the feedforward NN with two hidden layers (9 nodes in the first layer and 3 in the second layer) and five nodes for output layer produce the minimum errors, as shown in Figure 6.

RESULTS AND ANALYSIS
The main problem in the fuzzy logic controller presented in reference [25] is the inference block, which consists of a large number of rules that need a long processing time. To solve this problem of processing time, the fuzzification engine was replaced with an ANN. Therefore, the real processing time is reduce and the mobile robot response is increased as shown in Figure 7. The main advantage gained by utilizing hybrid neuro-fuzzy controller to reduce the real processing time. The proposed technique can successfully reduce the processing time 728s comparing with 1189s using FLC135. Practically, simulation-using PC doesn't show the differences in the CPU time for the three controllers since the PC is very fast and the response of the hardware is slow. The CPU time for the three controllers is noticed when using micro controller chip to control the robot motion and download the program to the implemented robot. In the FLC40, the controller response time will be faster than both controllers, but the performance is limited. On the other hand, the FLC135 worked out well but with low response, which introduced a deficiency in the robot motion (create a dead point in the robot controller). The NNFLC135 increased the response of the whole controller and improves the performance of the robot motion. The performance evaluation of FLC40, FLC135, and NNFL135 as shown in Table 1.  Avoid collision with the obstacles with low response time 1189 NNF135 Avoid collision with the obstacles with high response time 728

CONCLUSION
The performance of the FLC135 is good and slightly improved the performance of the robot compared to the FLC40 since the robot doesn't touch any obstacle and the robot avoids collision with any obstacles as shown in the above cases. But the inference time is much more than the FLC40. However, the proposed neuro-fuzzy approach that is used ANN instead of fuzzification engine show a good results comparing with FLC135. The mobile robot response is increase since the real processing tine is decrease by 40% for FLC135 processing time.