Interval Type-2 Fuzzy Logic Control of Mobile Robots

Navigation of autonomous mobile robots in dynamic and unknown environments needs to take into account different kinds of uncertainties. Type-1 fuzzy logic research has been largely used in the control of mobile robots. However, type-1 fuzzy control presents limitations in handling those uncertainties as it uses precise fuzzy sets. Indeed type-1 fuzzy sets cannot deal with linguistic and numerical uncertainties associated with either the mechanical aspect of robots, or with dynamic changing environment or with knowledge used in the phase of conception of a fuzzy system. Recently many researchers have applied type-2 fuzzy logic to improve performance. As control using type-2 fuzzy sets represents a new generation of fuzzy controllers in mobile robotic issue, it is interesting to present the performances that can offer type-2 fuzzy sets by regards to type-1 fuzzy sets. The paper presented deep and new comparisons between the two sides of fuzzy logic and demonstrated the great interest in controlling mobile robot using type-2 fuzzy logic. We deal with the design of new controllers for mobile robots using type-2 fuzzy logic in the navigation process in unknown and dynamic environments. The dynamicity of the environment is depicted by the presence of other dynamic robots. The performances of the proposed controllers are represented by both simulations and experimental results, and discussed over graphical paths and numerical analysis.


Introduction
Mobile robotic navigation in a dynamic and unknown environment is a local path planning problem based on sensory information with no knowledge about the form and location of obstacles.Precise end-effector and positioning accuracy are required in the navigation process.Due to their mechanic conception, Robots, by their very nature, have significant uncertainties in their readings and movements.These errors can be summarized as follows:  Sensor measurements are usually noisy due to the instruments.Generally a robot is equipped with internal sensors like encoder sensors and coupling sensors and external sensors as laser sensors, infrared sensors and cameras.Readings extracted from those sensors are generally noisy [1],  There are assembly errors that include linear and angular errors produced during the assembly of the various robot mechanical components,  Indeed, there are uncertainties provoked from a variation in the coupling of actuators characteristics with environmental conditions.Measurement and actuator create end-effector positioning errors.The resolution of encoders and stepper motors are examples of such errors.Although these errors are in the most cases very small, they can be amplified to cause many errors that can affect the accuracy of the system [1],  Real environments are not ideal, so they can produce random errors that change unpredictably.Those errors are called non-systematic errors and are generally caused by irregularities or roughness of the floor.In order to overcome those uncertainties and to develop a robust, flexible and on-line planner, type-1 fuzzy logic has been used [2][3][4][5].However type-1 fuzzy logic cannot fully handle the stated uncertainties because it uses precise type-1 fuzzy sets which don't necessarily cope well with all sources of vagueness and uncertainty.There are at least three sources of uncertainty in type-1 fuzzy logic control:  According to Mendel [6] "words mean different things to different people", so while designing a fuzzy controller experts are unlikely to agree on the membership functions,  Consequents in the rules can be uncertain,  And the database used in the conception of a fuzzy controller is generally not ideal and contains errors, even if the database has been constructed by an expert.
Then in mobile robot control by fuzzy logic, all the cited forms of uncertainties will be multiplied over fuzzification, inference and defuzzification.Those errors can degrade the performance of the whole robot controller.Type-2 fuzzy logic has been used by researchers to try and overcome some of these difficulties [6][7][8].And since many researchers have explored the use of type-2 fuzzy logic controllers in various applications [9][10][11][12][13][14][15][16].In fact, type-2 fuzzy sets were initially introduced by Zadeh [17].Firstly a general type-2 fuzzy set was defined, where it represents a 3D set in which each membership grade is a type-1 fuzzy set bounded in [0,1].Due to the complexity of the join (OR) and meet (AND) operations performing the inference part [18] and type-reduction in the defuzzification part [19], the application of general type-2 fuzzy sets has been limited.Hence, a simplified version of general type-2 set called interval type-2 fuzzy set is used more widely [6,20].This kind of set has membership grades that are crisp interval sets bounded in [0,1].The uncertainty here is represented as a 2D bounded region that is called the Footprint of Uncertainty.Various researchers have explored the advantages of interval type-2 fuzzy sets [21,22].Moreover, a geometric approach has been introduced by Coupland and John [23] distinguishing between fuzzy logic over discrete and continuous domain.But this approach is not fast enough in control applications [24].In the rest of this paper we treat only interval type-2 fuzzy sets over discrete domains.
In mobile robotics, some researchers have explored the control of mobile robots using interval type-2 fuzzy logic [21,[24][25][26][27][28][29].As Hagras states in [21] control using type-2 fuzzy sets represents a new generation of fuzzy controllers.In [25] Hagras presented an interval type-2 fuzzy logic controller to command a robot in indoor and outdoor unstructured environment.A robot was tested under different sources of non-systematic errors.The results showed that type-2 fuzzy logic outperforms its type-1 counterpart.This was shown through robot paths and control surfaces.In [27], an interval type-2 fuzzy logic was proposed for the control of a robot tracking a mobile object in the context of robot soccer games.In this game the robot has to track a ball.To evaluate the performance of the type-2 fuzzy logic against its type-1 counterpart, graphical paths analysis were presented showing the way the player reaches the position of the ball.Also, an additional test was made presenting the ability of type-2 controller to track the ball with less standard deviation error than its type-1 counterpart.
In this paper we propose specific aspects of control of mobile robots in unknown and dynamic environments using type-2 fuzzy logic.The dynamicity of the environment is depicted by the presence of other dynamic robots.The performances of the proposed controllers are represented by both simulations and experimental results, and discussed over graphical paths and numerical analysis.This paper has essentially two parts: In the first part we designed an IT2TSK fuzzy logic controller for avoiding obstacles using simulations.In the second part we designed a Mamdani interval type-2 (IT2) fuzzy logic controller for wall following behavior using the robot Khepera II from LAMI [30].The remainder of the paper is organized as follows: Section II introduces type-2 fuzzy logic.Sections III presents the proposed Interval type-2 fuzzy logic controller for obstacle avoidance behavior.Next section presents the conception of an Interval type-2 fuzzy logic for a wall following behavior.Simulations and experimental results in both applications are presented and are discussed.Finally, some conclusions are pointed out in Section VI.

Overview on Type-2 Fuzzy Sets
Type-1 fuzzy sets are certain and crisp, whereas type-2 fuzzy sets are themselves fuzzy.Type-2 fuzzy sets were first introduced by Zadeh [17].An Interval T2 fuzzy set A  is described as in the following definition, where in (1) all where  denotes the union of all admissible x and  .An IT2 FS is represented by a bounded region limited by two membership functions, where corresponding to each primary MF (which is in [0,1]), a secondary MF is used to the primary one.The Uncertainty in the primary membership function consists of the union of all membership functions.This Uncertainty represents a bounded region that we call the Footprint of Uncertainty   The   For an IT2 FS, , x X   .In the rest of this paper, we will use only the IT2 fuzzy sets in the design of our work.

Interval Type-2 Fuzzy Logic Controller
In fact, a type-2 fuzzy logic system or controller uses the same familiar notions as used in a type-1 fuzzy logic controller as membership functions, rules, t-norms operations, fuzzification, inference, defuzzification.A type-1 fuzzy logic system consists basically of three blocs; fuzzification, inference and defuzzification as presented in Figure 1.A type-2 fuzzy logic system is very similar to type-1, where it follows the same methodology, but the only difference is in the third block where we no longer speak of only defuzzification but we speak about a type reducer and defuzzification parts that constitute both the output processing block.This difference is mainly associated with the nature of the membership functions, where type-reducer is needed due to the added degree in the kind of fuzzy sets.Figure 2 presents a type-2 fuzzy logic system.
Today, the two most popular fuzzy logic systems used by engineers in control are the Mamdani and TSK systems.

Fuzzification
In this part, we must first define the fuzzy sets of all inputs' system.Those memberships can contain one or several type-2 fuzzy sets.Second, the fuzzifier maps inputs into the associated fuzzy sets to determine the degree of membership of each input variable.We consider only singleton fuzzification for which the inputs are crisp values.

Inference
This block expresses the relationship that exists between the input variables (expressed as linguistic variables) and the output variables (also expressed as linguistic variables).As in type-1 fuzzy logic, in the design of a type-2 fuzzy logic we generally have IF-THEN rules.The for-  mulation of rules is the same.The only distinction between type-1 and type-2 is associated with the nature of the membership functions.The inference engine combines rules and makes a combination between input type-2 fuzzy sets and output type-2 fuzzy sets.This is ensured by searching unions and intersections of type-2 sets, as well as compositions of type-2 relations.
For a type-2 fuzzy logic with inputs and and one output y Y  , and with M rules.The th rule has the following form:  : IF is and and is THEN is 1 The firing strength of the ith rule is as in ( 4).The result of the input and antecedent operations is an interval type-1 set. , where designed respectively upper and lower membership grades of Since generally we use the meet operation under product or minimum t-norm.So, at each value of x the intersection and union operations are referred to as the meet and join operations, respectively.

Type Reducer and Defuzzification
In a type-1 fuzzy logic system the output of the inference engine corresponding to each fired rule is a type-1 set.The defuzzifier combines those output sets to obtain a single output set.Using one of the existing methods of defuzzification, for example the centroid of sets, the defuzzifier searches the centroid of the obtained set to obtain finally a crisp output.In a type-2 fuzzy logic, since this kind of system deal with type-2 sets, then it is necessary to have a type reducer block to map a T2 FS into a T1 FS, and then defuzzification, as usual, maps that T1 FS into a crisp number.We can consider that the defuzzification block of a T1 fuzzy logic is replaced by the output processing block in a T2 fuzzy logic.That block consists of type-reducer followed by defuzzification.In fact, type Reducer was proposed by Karnik and Mendel [7].For now, there are five different type-reduction methods.Karnik and Mendel [19] defined the centroid of an IT2 FS which is an IT1 FS that is ensured using the Extension Principle.This IT1 FS is characterized by its left and right end points l y and r y , which can be written in the following equation: This equation is derived from the consequent centroid sets .,

Interval Type-2 TSK Fuzzy Logic Controller
The differences between a type-1 TSK fuzzy logic controller [31] and a Mamdani T1 fuzzy logic consist essentially of the definition of outputs and then on the consequent part of rules.Consider we have a first order type-1 TSK fuzzy logic with inputs 1  , and with M rules.The th rule can be expressed as: : IF is and and is THEN A type-2 TSK fuzzy logic controller or system (T2 TSK fuzzy logic) was firstly introduced by Liang and Mendel [32].Although TSK type-1 fuzzy systems have received a lot attention, the literature on TSK type 2 fuzzy systems is few.Liang and Mendel applied type-2 TSK systems in channel equalization of channels [12].Where, according to them, there are three models of T2 TSK fuzzy logics depending on the kind of the antecedent and consequent part of rules, to have: T2 TSK-Model I, T2 TSK-Model II and T2 TSK-Model III.We can see in Tables 1 and 2 the difference between those models.where are the consequent parameters, , The final output is also an interval type-1 set and is calculated as follows:

TSK FLS Rules
IF is and and IF and and is IF is and and is IF is and and is where i i y Y  , and , thus for each rule we will obtain l and .Since all sets are crisp, the Equation ( 9) results to: ; And the defuzzified output is:

Conception of Type-1 Behavior
We designed a zero-order TSK type-1 fuzzy logic controller for the navigation of a mobile robot in dynamic and unknown environment for obstacle avoidance behavior.The purpose of the controller is to perform the navigation in unknown and dynamic environments for polygonal mobile robot.In this behavior we defined six sensor measurements inputs ,as are shown in Figure 3 where those distances represent respectively the zones: central, left, right, lateral left, lateral right and back.Each input expressed the distance to the nearest obstacle in the zone of vision of its correspondent sensor and is defined by two MFs Near and Far, which are represented by trapezoidal membership functions as in Figure 4.

, , , , and c l r l l r l a d d d d d d
The outputs of the behavior are the left and right wheels' rotational velocities noted respectively l V and r .We defined 64 TSK rules deduced by authors' human expertise.For obstacles near the robot, we have widely used the rotation without translation to avoid obstacles instantly.An example of rules is expressed in Equation ( 11), where we defined the case of robot finding obstacles in his whole left side, so to guarantee avoiding static or dynamic obstacles the robot turn little to his right.

Conception of Type-2 Behavior
In the conception of type-2 fuzzy logic for obstacle avoidance behavior, we extended the proposed type-1 controller to a type-2 one by adding uncertainties in both the antecedent and the consequent parts of each rule.The main idea here consists in spreading the membership functions' values of the antecedent part by ± A%, and the consequent part by ± C%.Therefore by this, our type-2 fuzzy logic is an IT2 TSK fuzzy logic Model I. So, the six inputs of the behavior were extended by ± A%.The following figures, Figures 5-7, show those inputs for ± A% = ± 5%.
The outputs of the controller are the same as in type-1 fuzzy logic r V and l V .We have chosen to fix the spread of the consequent parameter "C" equal to 1 rad/s.We have defined thus 64 TSK T2 rules that are represented in Table 3 and are as the following form:    , In the inference engine, we use the meet operation under the product t-norm.

Simulation Results
Several simulations were tested while varying the spread of the antecedent parameters ± A%.The results were implemented in Matlab 6.5 under the operating system Windows XP.We used an environment with dimensions of 189 × 190 containing arbitrary complex obstacles, using the SIMROBOT toolbox software [33].A wheeled mobile robot is considered under the assumptions of non-slipping and pure rolling.Its kinematics can be derived using Figure 8.
This robot has two degrees of freedom: y-translation and either x-translation or z-rotation.Its dimensions are taken into account when it navigates in an arbitrary complex environment.The actuated inverse velocity solution of this robot is as the following equation Table 3. Rules of the T2 FLC. .More details about the robot used kinematics can be found in [33].

R m , a b l l m
To prove the efficiency of T2 fuzzy sets, we firstly choose to test the robot navigation in a complex place, like a narrow passageway.And, as we have not made any learning study on the adequate footprint of uncertainty (FOU) to our T2 fuzzy logic, we make simulations as follows: We tested T1 fuzzy logic and T2 fuzzy logic for different spread or (FOU), from the same initial position and for the same number of steps, which were respectively chosen to "[105 179]" and "110 steps".Results are presented in the following part; Figure 9 represents the initial robot position.Figure 10 shows the trajectory generated by the robot using T1 fuzzy logic controller.From this figure, we notice that while passing through the narrow passage, the robot makes several oscillations to attempt finally, at the end of 110 steps, the position [140 178].Sure our T1 fuzzy logic controller is not perfect and may contains some issues of errors.This explains well the obtained oscillations in the resulted trajectory where several rules give opposite and acute outputs reflecting an unstable navigation.Figures 11(a)-(f) represent the simulation results of the T2 TSK fuzzy logic for different deviations of the antecedent part ± A%, which correspond respectively to 5, 10, 15, 20, 30 and 40.It is clear from those figures the ability of T2 fuzzy logics in avoiding obstacles or walls as T1 fuzzy logic, but the most important things to highlight are that all the generated trajectories by T2 fuzzy logics are clearly smoother and contain less oscillations and deviations than the one generated by type-1 fuzzy logic in Figure 10.Thus T2 fuzzy sets can reduce uncertainties coming from not perfect tuning or noisy database.Besides, we remark that for the same number of steps, the robot in all T2 fuzzy logics browsed more land than in T1 fuzzy logic.So T2 controllers are more rapid and allow the robot to arrive faster to a given destination point.
To have a quantitative comparison, and to demonstrate well the smoothness of the obtained T2 trajectories, we choose to concentrate only on the narrow passageway; we propose to visualize the angular velocities generated by all T1 and T2 controllers, all from the same initial position [105 179] to almost the same final one [140 178] which represents the end of the passage way as shown in Figure 12, while the number of steps is varying depending on the adopted controller to arrive quickly or slowly to the final position.Thus, we obtain those results;    and 14, that all T2 generated trajectories contain less peaks and oscillations than the T1 generated trajectory.
From those figures we extracted in Table 4 some results; we calculated first number of steps taken by each simulation.We can remark that navigating from the same initial position to the same final one takes from T1 fuzzy logic the biggest number of steps which is 110 steps than all the other T2 fuzzy logics that takes 93 steps for A = 5 to only 19 steps for A = 40.So, T2 fuzzy logics are faster than T1 fuzzy logic.
Besides, in the table we extracted a smoothness measurement: the angular velocity smoothness Index (AVSI).AVSI represents the average accumulative angular velocities made by the robot simulation during k steps.Moreover, we calculate the Mean Square Error (MSE) expressing the error between the actual generated output  from the controller and the expected desired output in the passage that normally might be a straight line path.The equations of these measurements are given as follows:   It can be seen also from Table 4 that: while the parameter "A" is increasing, the navigator becomes smoother and with less oscillations.This is expressed mainly with a degradation in AVSI and MSE measurements (A = 40, AVSI = 0.3242˚/s; MSE = 2.0678).Sure there is a limit of this decrease, but this point is not discussed in this paper.Nevertheless, this remark is very interesting as an optimization point in future work.The most important thing to highlight from the table is that all the T2 generated trajectories represent better results than the T1 one in terms of AVSI or MSE.
Secondly, to prove the efficiency of type-2 fuzzy sets in the setting of local avoiding obstacles, we tested the controllers towards moving obstacles in dynamic and unknown environment.For T2 controller, we choose to test only an example of a T2 controller with a spread equal to A = 20.The dynamicity of the environment is manifested by the presence of several robots.We can see in Figures 15(a) and (b) the ability of robots in both T1 and T2 controllers in avoiding obstacles and also in avoiding themselves.Although we tested in both figures the robots from same initial positions and for the same number of steps, we can see that we have not the same robots trajectories and this since the controllers did not give the same instant outputs.Also, it is clear from both figures the smoothness, the rapidity of T2 controller in relation to T1 one, where robots in T2 figure browse more land with smooth turnings.
To enhance the found result, we presented another simulation in a different restricted complex place, where the robot is supposed to be front with a corner as in Where T2 robot turns slowly towards the corner in a way it seems following the wall.Whereas T1 robot presents sharp turns in a way it turns back in other direction.

Interval Type-2 Fuzzy Logic for a Wall Following Behavior
In this section we presented a type-2 mamdani fuzzy logic for a wall following behavior for the miniature mobile robot kheperaII from K-Team [30].In reality, this robot presents a good example of existing uncertainties, where it is faced to a large amount of vagueness.The kheperaII robot has 8 infrared proximity sensors.Each of them has a maximum range of measurement of about 5cm with accuracy and resolution depending on the measured distance.Those sensors are imprecise and present several kinds of errors like ambient light, color, shape and intensity of the detected obstacle.It was proved in [34] that the total error in the distance estimation by an infrared sensor depends on the uncertainty in the readings and the uncertainty in the angle of incidence of the sensor.In our type-2 fuzzy controller we have three inputs, two outputs and eight rules, that is deduced from its corresponding type-1 fuzzy logic by spreading the antecedent and consequence parts by a footprint of uncertainty.The robot have to navigate forward in the environment until it detects an unexpected obstacle or a wall, follows its contour on the right side with little turns.To detect the wall, the robot used its six frontal proximity sensors which are grouped two by two to constitute the three inputs.Each of them is defined by two fuzzy sets that are presented in Figure 17.The outputs are the left and right wheels' rotational velocities of khepera V r and V l .The both are defined with two fuzzy sets and are presented in Figure 18.
Whereas, in the inference part we conceived eight rules which are deduced from human expertise.Concerning the implementation part, we used the kMatlab routines [30] to interact with Khepera robot over a serial connection.
The two controllers are compared in same conditions, where robots are fixed approximately at the same initial position and then tested during the same number of steps chosen equal to 130 steps.Figure 19 shows the robot in the worked environment.As presented in previous simulations, we extracted the angular velocities generated by T1 fuzzy logic and T2 fuzzy logic illustrated respectively in Figures 20 and 21.
We remark from these trajectories that type-2 path presents less deviation with a smoothness measurement index AVSI equal to 1.0934 than type-1 path that presents an AVSI equal to 0.5554.Figure 22 presents paths generated by both controllers.We noted that in a part of T1 trajectory, the robot touched the wall and did not keep enough distance to it.Whereas T2 robot has kept approximately 8 cm to the wall.Besides, the T2 controller has traveled 22.8 cm more in land than its equivalent T1 controller.Thus, type-1 fuzzy sets may not be robust enough to handle uncertainties caused by infrared measures.

Conclusion
In this paper we presented T2 controllers for mobile robot navigation.We can highlight from above results that type-2 fuzzy sets are very interesting in control of mobile      robots.We have shown deeply that the proposed T2 controllers are more efficient in terms of saving time, smooth trajectories and optimal distance than their counterpart T1s.This was demonstrated through several paths of robots and smoothness and error measures.So, Interval type-2 fuzzy sets help to overcome uncertainties that can exist in real environments.
sets.The firing strength of the ith rule   i W x with meet operation under product or minimum t-norm is an interval type-1 set expressed as follows :

Fig- ure 13 Figure 11 .
Figures11(a)-(f) represent the simulation results of the T2 TSK fuzzy logic for different deviations of the antecedent part ± A%, which correspond respectively to 5, 10, 15, 20, 30 and 40.It is clear from those figures the ability of T2 fuzzy logics in avoiding obstacles or walls as T1 fuzzy logic, but the most important things to highlight are that all the generated trajectories by T2 fuzzy logics are clearly smoother and contain less oscillations and deviations than the one generated by type-1 fuzzy logic in Figure10.Thus T2 fuzzy sets can reduce uncertainties coming from not perfect tuning or noisy database.Besides, we remark that for the same number of steps, the robot in all T2 fuzzy logics browsed more land than in T1 fuzzy logic.So T2 controllers are more rapid and allow the robot to arrive faster to a given destination point.To have a quantitative comparison, and to demonstrate well the smoothness of the obtained T2 trajectories, we choose to concentrate only on the narrow passageway; we propose to visualize the angular velocities generated by all T1 and T2 controllers, all from the same initial position [105 179] to almost the same final one [140 178] which represents the end of the passage way as shown in Figure 12, while the number of steps is varying depending on the adopted controller to arrive quickly or slowly to the final position.Thus, we obtain those results; Fig- ure 13 represents the generated angular velocity by T1 fuzzy logic, where the positive values represent the left robot turnings and negative ones represent the right turn-

Figure 12 .
Figure 12.Initial and final chosen robot positions.

Figure 13 .
Figure 13.Simulation generated by TSK T1 FLC.ings.We notice from the figure that the robot continuously oscillates right and left along the whole passage, reflecting by thus the lack of stability and smoothness of T1 fuzzy logic.Whereas Figures14(a)-(f) denote the generated angular velocity by T2 fuzzy logics for different deviations A, which correspond respectively to 5, 10, 15, 20, 30 and 40.We remark clearly from those Figures13 and 14, that all T2 generated trajectories contain less peaks and oscillations than the T1 generated trajectory.From those figures we extracted in Table4some results; we calculated first number of steps taken by each simulation.We can remark that navigating from the same initial position to the same final one takes from T1 fuzzy logic the biggest number of steps which is 110 steps than all the other T2 fuzzy logics that takes 93 steps for A = 5 to only 19 steps for A = 40.So, T2 fuzzy logics are faster than T1 fuzzy logic.Besides, in the table we extracted a smoothness measurement: the angular velocity smoothness Index (AVSI).AVSI represents the average accumulative angular velocities made by the robot simulation during k steps.Moreover, we calculate the Mean Square Error (MSE) expressing the error between the actual generated output
Fig- ures 16(a) and (b).We can see from the different generated trajectories that the T2 fuzzy logic with A = 20 presents the smoothest path essentially in the corner part.

Figure 17 .
Figure 17.Inputs MFs of the wall following behavior.

Figure 18 .
Figure 18.Outputs' MF of the wall following behavior.

Figure 19 .
Figure 19.The robot in the worked environment.