# Hybrid Type-2 Fuzzy-Sliding Mode Controller for Navigation of Mobile Robot in an Environment Containing a Dynamic Target

Authors: Dorra Ayedi; Maïssa Boujelben; Chokri Rekik
Journal: Journal of Robotics
 (2018)

---

## Abstract

We are interested in developing a new control architecture to command a mobile robot in a partially known environment. For that purpose, a hybrid control architecture is adopted, combining the reactive and the deliberative method. The reactive method consists of the hierarchical fuzzy controllers based on Type-2 Fuzzy Logic System (T2-FLS), dedicated to commanding the robot towards a mobile target while avoiding unexpected obstacles. A comparative study is made to show the efficiency of T2-FLS against Type-1 Fuzzy Logic System (T1-FLS). Additionally, the used deliberative method is the sliding mode, allowing the robot to track the mobile goal trajectory. Simulation results are given finally to test the proposed architecture.


---

## Body

## 1. Introduction

Controlling a mobile robot in an unknown environment is an attractive aspect in the field of robotic, as it is used in many applications. Therefore, researchers have developed several methods of controlling non-holonomic robot in a real environment. Those methods can be classified into three groups: reactive approaches, deliberative approaches, and hybrid approach, which is a combination between both of them [1]. The choice between those classes depends on the robot’s knowledge of the environment [2].The reactive approach does not require a prior knowledge about the environment. The robot receives at each instant information about its local environment and then moves autonomously to reach a desired point [2, 3]. This approach is adaptable to the dynamic or unexpected environment, but may have some problems such as nonconvergence or local minima [4]. Neural networks [5], potential field [6], and fuzzy logic [7] are among the methods which illustrate the reactive approach.Unlike the reactive category, the deliberative method is based on trajectory planning, which needs to consider a complete knowledge about the environment [2]. Although it is considered as a fast and stable navigation method, it can not be adapted in a completely unknown environment [4]. Many control methods were proposed in the domain of deliberative approach. Among those methods, we cite the PID controllers [8] and the sliding mode control [9].As it was explained, many limitations can be faced while applying only reactive or deliberative methods [10]. They can not solve individually the problems faced in the navigation domain [11]. Therefore, those two methods are combined to form the hybrid approach. The favor of this mix is to benefit from the advantages of the two approaches [2] and provides the possibility of using the reactive behavior as well as global vision of the environment.In the literature, Arkin and Murphy were the first who have made a combination between the reactive and the deliberative methods, which leads to the hybrid approach [1]. Zhu has used this combination in his work [12], letting the reactive approach playing a dominant role in case of conflict. Tian has designed in [13] a hybrid navigation control strategy for rescue robot. In this paper, the idea of developing a hybrid control architecture is adopted, as it suits with the environment in which the robot moves.The used robot must have a considerable number of sensors distributed on its circumference. At first, the robot moves from an initial point to reach a dynamic target, which the trajectory is predefined. The use of the reactive method becomes necessary for avoiding unexpected obstacles. Fuzzy logic system was adopted for this task, as it is able to conceive robust controllers [14, 15]. The main problem which faces us is the huge number of obtained rules, due to the big number of information received by each sensor. In [16], the authors have proposed the hierarchical fuzzy controller in order to solve this problem.On the other hand, the robot can face perturbations due to several sources. Among those sources, we mention the linguistic uncertainties, imprecise sensor information, and uncertainties in inputs or outputs [17, 18]. T1-FLS can not really handle all those uncertainties [15]. An extension of the T1-FLS have been introduced by Zadeh [19]. This new type is characterized by a third dimension which makes it able to handle all the perturbations mentioned [17].Once the robot becomes close enough from the dynamic goal, it follows the trajectory of the target, which is a predefined safe path. In this case, the deliberative method copes better with this situation. Therefore, the sliding mode was adopted for trajectory tracking, for his fast response, and his robustness against the variation of parameters [3, 20].The main contribution of this paper is to construct a suitable control architecture based on the association of deliberative and reactive method. Hierarchical T2-FLS and T1-FLS were implemented in the reactive controllers method and tested on the robot. A comparative study is made to show the outperformance of type 2 against type 1. For the deliberative controller, the sliding mode is proposed as a local method, to track the dynamic target until reaching a desired point.This paper is organized as follows: Section2 presents the robot control approach. On Section 3, reactive navigation controllers are detailed. Path planning is described on Section 4. At least, conclusion is given.


## 2. Robot Control Approach

The mobile robot is requested to navigate from an initial point to reach a dynamic target while avoiding obstacles. In this context, the Khepera II robot is used. Our robot is a non-holonomic robot, equipped with two independent driving wheels located on the same axis. Eight sensors are distributed on the circumference of the robot in a way that permits the detection of obstacles, regardless of their positions in the environment. A schematic model of this robot is presented in Figure1.Figure 1
The schematic model of the Khepera II robot.


### 2.1. Robot Kinematic Model

Our purpose is to control the wheels speed to command the robot. For that, the kinematic model of the used robot is given by the following system:(1)x˙=VR+VL2cos⁡αy˙=VR+VL2sin⁡αα˙=VR-VLLwhere(i)
VL and VR are, respectively, the left and right wheels velocities.(ii)
α is the angle which separates the robot direction from the X-axis.(iii)
L is the distance between the left and the right wheels.


### 2.2. The Proposed Control Architecture

In this paper, a hybrid control is proposed. This approach combines reactive and deliberative methods. It permits benefiting from the advantages of the two methods [21]. Firstly, the robot moves in an unknown environment towards the mobile target, which needs the application of the reactive method. When the robot is close enough from the mobile target, path planning is sufficient, since the trajectory of the goal is known. Figure 2 presents the proposed strategy of control.Figure 2
The proposed architecture of the mobile robot navigation.Figure2 shows the presence of three controllers: the attraction to dynamic target controller allowing the robot to reach the mobile goal, the obstacle avoidance controller which enables it to get away from obstacles, and the path planning controller devoted for trajectory tracking.According to the information given in each step by the environment (position of the robot, the goal, and the obstacles) and sent to the robot through the sensors, the action selection block chooses the suitable controller to command the robot. If the robot is far away from the target, the reactive method [15] is activated. In this case, the distance which separates the robot from the obstacle defines the choice between the attraction to dynamic target controller and the obstacle avoidance controller. Both of them work in a similar way and give as outputs the right and left wheels velocities VR and VL, except that the velocities obtained by the obstacle avoidance controller are inverted.At each instant, the goal and robot positions are compared. When the robot becomes close to the goal position, it should follow it until reaching the desired point. In consequence, the deliberative method (path planning controller) is activated.As a result, we obtain the right and left wheels velocitiesVR and VL, which control the robot.


## 2.1. Robot Kinematic Model

Our purpose is to control the wheels speed to command the robot. For that, the kinematic model of the used robot is given by the following system:(1)x˙=VR+VL2cos⁡αy˙=VR+VL2sin⁡αα˙=VR-VLLwhere(i)
VL and VR are, respectively, the left and right wheels velocities.(ii)
α is the angle which separates the robot direction from the X-axis.(iii)
L is the distance between the left and the right wheels.


## 2.2. The Proposed Control Architecture

In this paper, a hybrid control is proposed. This approach combines reactive and deliberative methods. It permits benefiting from the advantages of the two methods [21]. Firstly, the robot moves in an unknown environment towards the mobile target, which needs the application of the reactive method. When the robot is close enough from the mobile target, path planning is sufficient, since the trajectory of the goal is known. Figure 2 presents the proposed strategy of control.Figure 2
The proposed architecture of the mobile robot navigation.Figure2 shows the presence of three controllers: the attraction to dynamic target controller allowing the robot to reach the mobile goal, the obstacle avoidance controller which enables it to get away from obstacles, and the path planning controller devoted for trajectory tracking.According to the information given in each step by the environment (position of the robot, the goal, and the obstacles) and sent to the robot through the sensors, the action selection block chooses the suitable controller to command the robot. If the robot is far away from the target, the reactive method [15] is activated. In this case, the distance which separates the robot from the obstacle defines the choice between the attraction to dynamic target controller and the obstacle avoidance controller. Both of them work in a similar way and give as outputs the right and left wheels velocities VR and VL, except that the velocities obtained by the obstacle avoidance controller are inverted.At each instant, the goal and robot positions are compared. When the robot becomes close to the goal position, it should follow it until reaching the desired point. In consequence, the deliberative method (path planning controller) is activated.As a result, we obtain the right and left wheels velocitiesVR and VL, which control the robot.


## 3. Reactive Navigation

The environment in which the robot moves is an unknown area of navigation. Based on its sensor information, the robot must go towards the target, following a secure path by avoiding the obstacles.The adopted approach to conceive the controllers which are dedicated for the reactive method is Type-2 Fuzzy Logic System (Type-2 FLS). This approach has become very well known in the field of control and automation, as it permits realizing robust controllers [15].


### 3.1. Type-2 Fuzzy Logic System

Based on Zadeh’s theory, the T2-FLS is an extension of the T1-FLS. The membership function of a T2-FLS is a fuzzy set, unlike the T1-FLS which the membership function is a crisp number [22].The T2-FLS is characterized by the following:(i)
A footprint of uncertainty as is shown in Figure3, bounded by a lower and an upper membership function μ_A~(x) and μ¯A~(x) [23].(ii)
A third dimension presented in Figure4. Indeed, each variable x is associated with a primary membership function and a secondary membership function.Figure 3
Gaussian type-2 fuzzy system.Figure 4
The third dimension of a triangular T2-FLS.Those particularities guarantee additional degree of freedom [17], which push us to opt for the T2-FLS, to handle the maximum of uncertainties that the robot can face while moving towards the goal.Mathematically speaking, the definition of a generalized T2-FLS is(2)A~=x,u,μA~x,u∣∀x∈X,∀u∈Jx⊆0,1where X and Jx are, respectively, the primary and the secondary domain [24, 25].Due to the complexity of the generalized T2-FLS, the interval T2-FLS is adopted, where allμA~(x,u) are equal to 1 [25]. A simple illustration of the third dimension of the T1-FLS, the generalized T2-FLS, and the interval T2-FLS are presented in Figure 5.Figure 5
A clear view of the third dimension. (a) Type-1 fuzzy set. (b) Interval type-2 fuzzy set. (c) General type-2 fuzzy set.
(a) (b) (c)


#### 3.1.1. Inference System

Figure6 shows the structure of a T2-FLS. Comparing to the model of a T1-FLS, the difference lies on the output processor. In addition to the defuzzifer block which exists on the T1-FLS structure, the block of type reducer is joined. Indeed, this block is dedicated to reducing the type of type-2 set to generate type-1 set [25].Figure 6
The structure of type-2 fuzzy inference system.Similarly to the T1-FLS, the interval T2-FLS is also based on the IF-THEN rules, except the category of the antecedents and the consequences which differs from type-1. For the case of the proposed architecture to command the Khepera II robot, theith rule is given as follows:If (d is A~i) and (φ is B~i) then (VR=[yi_,yi¯]) and (VL=[zi_,zi¯]),wherei=1,2…,N, A~i and B~i are the interval type-2 fuzzy systems, yi¯, yi_, zi¯, and zi_ are, respectively, the upper and lower values of VR and VL.The inference engine has as role to link rules and form firing interval setWi(3)Wi=w_i,w¯iwithw_i=[μ_A~i(d)×μ_B~i(φ)]andw¯i=[μ¯A~i(d)×μ¯B~i(φ)]where× represents the t-norm used, which can be the minimum or the product operation [26].


#### 3.1.2. Output Processing

In this step, a fuzzy type-2 set goes through a type reducer to become a fuzzy type-1 set, then through a defuzzifier to obtain a crisp value.According to [27, 28], different methods of type reduction have been mentioned and detailed. The center of sets (COS) method was adopted in this paper. The type 1 fuzzy set expression is given in the following equation.(4)Ycos=yl,yrwhere Ycos is an interval set bounded by two limits: yl and yr.To compute those two values, Karnik and Mendel have proposed an algorithm [23, 29], explained in the following steps:KM for Computing y l (1)
Sort rule consequencey_i(i=1,2…,M) in increasing order then match each wi with his respective y_i, so their index corresponds to the renumbered y_i. (2)
Initializewi as the following equation:(5)wi=w_i+w¯i2,i=1,2,…,M then compute(6)y=∑i=1My_iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(7)y_i≤y≤y_i+1 (4)
Set(8)yi=w¯i,i≤kw_i,i≻k then compute(9)y′=∑i=1My_iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yl=y and K=L. If no, set y=y′ and go to step (3)KM for Computing y r (1)
Sort rule consequencey¯i(i=1,2…,M) in increasing order then match each wi with his respective y¯i, so their index corresponds to the renumbered y¯i. (2)
Initializewi as the following equation:(10)wi=w_i+w¯i2,i=1,2,…,M then compute(11)y=∑i=1My¯iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(12)y¯i≤y≤y¯i+1 (4)
Set(13)yi=w_i,i≤kw¯i,i≻k then compute(14)y′=∑i=1My¯iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yr=y and K=R. If no, set y=y′ and go to step (3)At last, the values calculated in this algorithm pass through the defuzzification block to obtain the final defuzzified output:(15)Y=yl+yr2Type-2 FLS is used in the development of the attraction to dynamic target controller and the obstacle avoidance controller.


### 3.2. Design of the Proposed Type-2 Fuzzy Logic Controllers

The robot should find a safe path to reach the mobile goal. For this task, the attraction to dynamic target controller and the obstacle avoidance controller are activated.The first controller has as inputs(i)
d: the distance between the robot and the mobile target,(ii)
φ: the angle separating the robot orientation and the mobile target.For the second controller, the inputs are(i)
do: the distance between the robot and the obstacle,(ii)
φo: the angle separating the robot orientation and the obstacle.Those parameters are presented in Figure7.Figure 7
Representation of the parameters.For the attraction to dynamic target controller, five membership functions are chosen for the distanced, while seven membership functions define the angle, as is detailed in [14].If the action selection block chooses the second controller dedicated for obstacle avoidance, the use of the eight sensors of the Khepera II mobile robot is requested. It permits detecting the obstacles in different directions. However, a disadvantage occurs if we use one standard fuzzy controller: the number of obtained rules is huge, which increases the simulation time. To solve this problem, the hierarchical fuzzy system is used.


### 3.3. Hierarchical Type-2 Fuzzy Logic System

The hierarchical fuzzy system consists of attributing each sensor information to a controller, then regrouping them as is shown in Figure8.Figure 8
Block diagram of the hierarchical system.The choice of this structure is based on gathering the robot sensors according to angle measurement (Figure9).Figure 9
Decomposition of the eight sensors of the robot.The first layer of the hierarchical fuzzy system contains eight controllers associated with the sensors measurements. Each controller gives the left and right wheels velocities, and another index denotedIoi. This index is dedicated to providing a collision degree between the robot and the obstacle. According to Figure 9, those indexes are regrouped into three groups (according to sensor’s positions in the robot) and are considered as inputs to three other controllers which form the second layer. As a consequence, we obtain three indexes: Ileft, Iright, and Iback, which have the same meaning of the other indexes. The third and last layer provides as outputs ItR and ItL. Those indicators help for the robot guidance as they illustrate the absence degree of obstacles. More details and inference tables are given in [16, 30].


## 3.1. Type-2 Fuzzy Logic System

Based on Zadeh’s theory, the T2-FLS is an extension of the T1-FLS. The membership function of a T2-FLS is a fuzzy set, unlike the T1-FLS which the membership function is a crisp number [22].The T2-FLS is characterized by the following:(i)
A footprint of uncertainty as is shown in Figure3, bounded by a lower and an upper membership function μ_A~(x) and μ¯A~(x) [23].(ii)
A third dimension presented in Figure4. Indeed, each variable x is associated with a primary membership function and a secondary membership function.Figure 3
Gaussian type-2 fuzzy system.Figure 4
The third dimension of a triangular T2-FLS.Those particularities guarantee additional degree of freedom [17], which push us to opt for the T2-FLS, to handle the maximum of uncertainties that the robot can face while moving towards the goal.Mathematically speaking, the definition of a generalized T2-FLS is(2)A~=x,u,μA~x,u∣∀x∈X,∀u∈Jx⊆0,1where X and Jx are, respectively, the primary and the secondary domain [24, 25].Due to the complexity of the generalized T2-FLS, the interval T2-FLS is adopted, where allμA~(x,u) are equal to 1 [25]. A simple illustration of the third dimension of the T1-FLS, the generalized T2-FLS, and the interval T2-FLS are presented in Figure 5.Figure 5
A clear view of the third dimension. (a) Type-1 fuzzy set. (b) Interval type-2 fuzzy set. (c) General type-2 fuzzy set.
(a) (b) (c)


### 3.1.1. Inference System

Figure6 shows the structure of a T2-FLS. Comparing to the model of a T1-FLS, the difference lies on the output processor. In addition to the defuzzifer block which exists on the T1-FLS structure, the block of type reducer is joined. Indeed, this block is dedicated to reducing the type of type-2 set to generate type-1 set [25].Figure 6
The structure of type-2 fuzzy inference system.Similarly to the T1-FLS, the interval T2-FLS is also based on the IF-THEN rules, except the category of the antecedents and the consequences which differs from type-1. For the case of the proposed architecture to command the Khepera II robot, theith rule is given as follows:If (d is A~i) and (φ is B~i) then (VR=[yi_,yi¯]) and (VL=[zi_,zi¯]),wherei=1,2…,N, A~i and B~i are the interval type-2 fuzzy systems, yi¯, yi_, zi¯, and zi_ are, respectively, the upper and lower values of VR and VL.The inference engine has as role to link rules and form firing interval setWi(3)Wi=w_i,w¯iwithw_i=[μ_A~i(d)×μ_B~i(φ)]andw¯i=[μ¯A~i(d)×μ¯B~i(φ)]where× represents the t-norm used, which can be the minimum or the product operation [26].


### 3.1.2. Output Processing

In this step, a fuzzy type-2 set goes through a type reducer to become a fuzzy type-1 set, then through a defuzzifier to obtain a crisp value.According to [27, 28], different methods of type reduction have been mentioned and detailed. The center of sets (COS) method was adopted in this paper. The type 1 fuzzy set expression is given in the following equation.(4)Ycos=yl,yrwhere Ycos is an interval set bounded by two limits: yl and yr.To compute those two values, Karnik and Mendel have proposed an algorithm [23, 29], explained in the following steps:KM for Computing y l (1)
Sort rule consequencey_i(i=1,2…,M) in increasing order then match each wi with his respective y_i, so their index corresponds to the renumbered y_i. (2)
Initializewi as the following equation:(5)wi=w_i+w¯i2,i=1,2,…,M then compute(6)y=∑i=1My_iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(7)y_i≤y≤y_i+1 (4)
Set(8)yi=w¯i,i≤kw_i,i≻k then compute(9)y′=∑i=1My_iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yl=y and K=L. If no, set y=y′ and go to step (3)KM for Computing y r (1)
Sort rule consequencey¯i(i=1,2…,M) in increasing order then match each wi with his respective y¯i, so their index corresponds to the renumbered y¯i. (2)
Initializewi as the following equation:(10)wi=w_i+w¯i2,i=1,2,…,M then compute(11)y=∑i=1My¯iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(12)y¯i≤y≤y¯i+1 (4)
Set(13)yi=w_i,i≤kw¯i,i≻k then compute(14)y′=∑i=1My¯iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yr=y and K=R. If no, set y=y′ and go to step (3)At last, the values calculated in this algorithm pass through the defuzzification block to obtain the final defuzzified output:(15)Y=yl+yr2Type-2 FLS is used in the development of the attraction to dynamic target controller and the obstacle avoidance controller.


## 3.1.1. Inference System

Figure6 shows the structure of a T2-FLS. Comparing to the model of a T1-FLS, the difference lies on the output processor. In addition to the defuzzifer block which exists on the T1-FLS structure, the block of type reducer is joined. Indeed, this block is dedicated to reducing the type of type-2 set to generate type-1 set [25].Figure 6
The structure of type-2 fuzzy inference system.Similarly to the T1-FLS, the interval T2-FLS is also based on the IF-THEN rules, except the category of the antecedents and the consequences which differs from type-1. For the case of the proposed architecture to command the Khepera II robot, theith rule is given as follows:If (d is A~i) and (φ is B~i) then (VR=[yi_,yi¯]) and (VL=[zi_,zi¯]),wherei=1,2…,N, A~i and B~i are the interval type-2 fuzzy systems, yi¯, yi_, zi¯, and zi_ are, respectively, the upper and lower values of VR and VL.The inference engine has as role to link rules and form firing interval setWi(3)Wi=w_i,w¯iwithw_i=[μ_A~i(d)×μ_B~i(φ)]andw¯i=[μ¯A~i(d)×μ¯B~i(φ)]where× represents the t-norm used, which can be the minimum or the product operation [26].


## 3.1.2. Output Processing

In this step, a fuzzy type-2 set goes through a type reducer to become a fuzzy type-1 set, then through a defuzzifier to obtain a crisp value.According to [27, 28], different methods of type reduction have been mentioned and detailed. The center of sets (COS) method was adopted in this paper. The type 1 fuzzy set expression is given in the following equation.(4)Ycos=yl,yrwhere Ycos is an interval set bounded by two limits: yl and yr.To compute those two values, Karnik and Mendel have proposed an algorithm [23, 29], explained in the following steps:KM for Computing y l (1)
Sort rule consequencey_i(i=1,2…,M) in increasing order then match each wi with his respective y_i, so their index corresponds to the renumbered y_i. (2)
Initializewi as the following equation:(5)wi=w_i+w¯i2,i=1,2,…,M then compute(6)y=∑i=1My_iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(7)y_i≤y≤y_i+1 (4)
Set(8)yi=w¯i,i≤kw_i,i≻k then compute(9)y′=∑i=1My_iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yl=y and K=L. If no, set y=y′ and go to step (3)KM for Computing y r (1)
Sort rule consequencey¯i(i=1,2…,M) in increasing order then match each wi with his respective y¯i, so their index corresponds to the renumbered y¯i. (2)
Initializewi as the following equation:(10)wi=w_i+w¯i2,i=1,2,…,M then compute(11)y=∑i=1My¯iwi∑i=1Mwi (3)
Find the switch pointk(1≤k≤M-1) such that(12)y¯i≤y≤y¯i+1 (4)
Set(13)yi=w_i,i≤kw¯i,i≻k then compute(14)y′=∑i=1My¯iwi∑i=1Mwi (5)
Check ify′=y. If yes, stop and set yr=y and K=R. If no, set y=y′ and go to step (3)At last, the values calculated in this algorithm pass through the defuzzification block to obtain the final defuzzified output:(15)Y=yl+yr2Type-2 FLS is used in the development of the attraction to dynamic target controller and the obstacle avoidance controller.


## 3.2. Design of the Proposed Type-2 Fuzzy Logic Controllers

The robot should find a safe path to reach the mobile goal. For this task, the attraction to dynamic target controller and the obstacle avoidance controller are activated.The first controller has as inputs(i)
d: the distance between the robot and the mobile target,(ii)
φ: the angle separating the robot orientation and the mobile target.For the second controller, the inputs are(i)
do: the distance between the robot and the obstacle,(ii)
φo: the angle separating the robot orientation and the obstacle.Those parameters are presented in Figure7.Figure 7
Representation of the parameters.For the attraction to dynamic target controller, five membership functions are chosen for the distanced, while seven membership functions define the angle, as is detailed in [14].If the action selection block chooses the second controller dedicated for obstacle avoidance, the use of the eight sensors of the Khepera II mobile robot is requested. It permits detecting the obstacles in different directions. However, a disadvantage occurs if we use one standard fuzzy controller: the number of obtained rules is huge, which increases the simulation time. To solve this problem, the hierarchical fuzzy system is used.


## 3.3. Hierarchical Type-2 Fuzzy Logic System

The hierarchical fuzzy system consists of attributing each sensor information to a controller, then regrouping them as is shown in Figure8.Figure 8
Block diagram of the hierarchical system.The choice of this structure is based on gathering the robot sensors according to angle measurement (Figure9).Figure 9
Decomposition of the eight sensors of the robot.The first layer of the hierarchical fuzzy system contains eight controllers associated with the sensors measurements. Each controller gives the left and right wheels velocities, and another index denotedIoi. This index is dedicated to providing a collision degree between the robot and the obstacle. According to Figure 9, those indexes are regrouped into three groups (according to sensor’s positions in the robot) and are considered as inputs to three other controllers which form the second layer. As a consequence, we obtain three indexes: Ileft, Iright, and Iback, which have the same meaning of the other indexes. The third and last layer provides as outputs ItR and ItL. Those indicators help for the robot guidance as they illustrate the absence degree of obstacles. More details and inference tables are given in [16, 30].


## 4. Path Planning

Once the robot is close enough from the mobile goal, the action selection block passes from the reactive approach to the deliberative approach. The trajectory of the goal is determined, and the robot should just follow the path of the target until reaching the desired point. For that, we have proposed the sliding mode method to conceive the path planning controller [9, 20].The purpose of the sliding mode controller is to compute the appropriate linear and angular velocities so that the robot can follow exactly the target [3] by converging the tracking error to zero [31].For that we consider the reference positionpr=(xr,yr,αr)T and the current position p=(x,y,α)T. The position error between pr and p is denoted as pe=(xe,ye,αe)T, and it is expressed as(16)xeyeαe=cos⁡αsin⁡α0-sin⁡αcos⁡α0001×xr-xyr-yαr-αThis tracking error is illustrated in Figure10.Figure 10
Tracking error.The velocity error is then obtained by deriving the error trackingpe [20], which gives(17)xe˙ye˙αe˙=yew-v+vrcos⁡αe-xew+vrsin⁡αewr-wwherevr and wr are, respectively, the linear and the angular velocities of the mobile target.Equation (1), which represents the adopted Khepera II mobile robot model, is a multiple-input nonlinear system. According to [3, 20], xe is chosen equal to zero at the first switching surface to simplify the problem. Therefore, the Lyapunov candidate function proposed in [3, 20] and adopted in this paper is(18)V=12ye2where the time derivative is expressed by(19)V˙=yeye˙=ye-xew+vrsin⁡αe=-xeyew-vryesin⁡arctan⁡vryeThe switching function condition is defined as αe=-arctan⁡vrye. We ensure that vryesin⁡arctan⁡vrye≥0 which always satisfies the global condition V˙≤0. The proof is detailed in [20]. Consequently, the vector of the switching surface is expressed in the following equation. (20)s=s1s2=xeαe+arctan⁡vryes1 converges to 0 when xe converges to 0. In a similar way, s2 converges to 0 when αe+arctan⁡vrye converges to 0, which means that αe converges to -arctan⁡vrye. Consequently, we obtain the convergence of αe and ye to 0.To design a control law, the switching surface is expressed as a saturation function [32], supposing that γ=arctan⁡vrye: (21)s˙=s1˙s2˙=-k1sats1-k2sats2=xe˙αe˙+∂γ∂vrvr˙+∂γ∂yeye˙=yew-v+vrcos⁡αewr-w+∂γ∂vrvr˙+∂γ∂ye-xew+vrsin⁡αeThe obtained control law is (22)vw=yew+vrcos⁡αe+k1sats1wr+∂γ∂vrvr˙+∂γ∂yevrsin⁡αe+k2sats2where ∂γ/∂vr=ye/1+(vrye)2 and ∂γ/∂ye=vr/1+(vrye)2.


## 5. Simulation Results

In this part, we present the inputs simulation and some simulations results to test the validity of the control architecture proposed and to compare the performance of T1-FLS and T2-FLS.


### 5.1. Inputs Simulations

As was explained previously, we have two inputs: the distanced and the angle of direction φ. d varies between 0 and 700 mm and is divided into five fuzzy subsets: VS (very small), S (small), M (medium), L (large), and VL (very large). φ is defined in the interval [-π/2,π/2], and seven fuzzy subsets are associated with it which are NL (negative large), NM (negative medium), NS (negative small), Z (zero), PS (positive small), PM (positive medium), and PL (positive large) [3]. Figures 11 and 12 illustrate the simulations of those two inputs.Figure 11
Type-2 membership function of the inputd (in mm).Figure 12
Type-2 membership function of the inputφ (in rad).


### 5.2. Trajectory Simulation

The objective in this part is to test the efficiency of the proposed architecture. For that purpose, we consider a robot which starts from an initial point(X,Y)=(0,0) and tries to get closer to a dynamic target until reaching the desired final point. Firstly, we have considered a safe environment, using T1-FLS as a reactive approach. Figure 13 illustrates clearly the steps of progress of the robot.Figure 13
Path planning for the mobile robot using T1-FLS. (a)The robot tries to reach the target using the reactive approach. (b) The transition between the reactive and the deliberative approach. (c) Trajectory tracking applying the deliberative approach.
(a) (b) (c)It is obvious that the robot can move towards the target and tracks the goal’s trajectory until reaching the final point, which proves the validity of the proposed control architecture.In the next simulations (Figures14 and 15), the robot moves in environments containing obstacles and tries to reach a moving target using the T1-FLS and the T2-FLS.Figure 14
Simulation result with circular trajectory of the dynamic target using T1-FLS (a) and T2-FLS (b).
(a) (b)Figure 15
Simulation result with sinusoidal trajectory of the dynamic target using T1-FLS (a) and T2-FLS (b).
(a) (b)In Figure14, the robot starts from the initial point (X,Y)=(0,0). It succeeds to avoid the obstacles and to reach the circular trajectory of the target using the FLS (type 1 and type 2). Then, the sliding mode is applied for path tracking, until attaining the final point. Figure 15 treated the case of sinusoidal trajectory of the dynamic target, with changing the obstacles position and number. The robot adapts with those changes and achieves the navigation and the tracking task properly.The comparison between the distances covered by the robot after implanting T1-FLS and T2-FLS is presented as numerical values in Table1. This table shows that T2-FLS always provides better results comparing to type 1, giving optimized distances.Table 1
Comparison between distances covered with T1-FLS and T2-FLS.
Figure14 Figure15 T1-FLS 459.1522 527.1141 T2-FLS 447.8955 515.9508 Relative errors (%) 2.5 2.2


## 5.1. Inputs Simulations

As was explained previously, we have two inputs: the distanced and the angle of direction φ. d varies between 0 and 700 mm and is divided into five fuzzy subsets: VS (very small), S (small), M (medium), L (large), and VL (very large). φ is defined in the interval [-π/2,π/2], and seven fuzzy subsets are associated with it which are NL (negative large), NM (negative medium), NS (negative small), Z (zero), PS (positive small), PM (positive medium), and PL (positive large) [3]. Figures 11 and 12 illustrate the simulations of those two inputs.Figure 11
Type-2 membership function of the inputd (in mm).Figure 12
Type-2 membership function of the inputφ (in rad).


## 5.2. Trajectory Simulation

The objective in this part is to test the efficiency of the proposed architecture. For that purpose, we consider a robot which starts from an initial point(X,Y)=(0,0) and tries to get closer to a dynamic target until reaching the desired final point. Firstly, we have considered a safe environment, using T1-FLS as a reactive approach. Figure 13 illustrates clearly the steps of progress of the robot.Figure 13
Path planning for the mobile robot using T1-FLS. (a)The robot tries to reach the target using the reactive approach. (b) The transition between the reactive and the deliberative approach. (c) Trajectory tracking applying the deliberative approach.
(a) (b) (c)It is obvious that the robot can move towards the target and tracks the goal’s trajectory until reaching the final point, which proves the validity of the proposed control architecture.In the next simulations (Figures14 and 15), the robot moves in environments containing obstacles and tries to reach a moving target using the T1-FLS and the T2-FLS.Figure 14
Simulation result with circular trajectory of the dynamic target using T1-FLS (a) and T2-FLS (b).
(a) (b)Figure 15
Simulation result with sinusoidal trajectory of the dynamic target using T1-FLS (a) and T2-FLS (b).
(a) (b)In Figure14, the robot starts from the initial point (X,Y)=(0,0). It succeeds to avoid the obstacles and to reach the circular trajectory of the target using the FLS (type 1 and type 2). Then, the sliding mode is applied for path tracking, until attaining the final point. Figure 15 treated the case of sinusoidal trajectory of the dynamic target, with changing the obstacles position and number. The robot adapts with those changes and achieves the navigation and the tracking task properly.The comparison between the distances covered by the robot after implanting T1-FLS and T2-FLS is presented as numerical values in Table1. This table shows that T2-FLS always provides better results comparing to type 1, giving optimized distances.Table 1
Comparison between distances covered with T1-FLS and T2-FLS.
Figure14 Figure15 T1-FLS 459.1522 527.1141 T2-FLS 447.8955 515.9508 Relative errors (%) 2.5 2.2


## 6. Conclusion

In this paper, we have proposed a hybrid control law to command a mobile robot in a real environment containing static obstacles and dynamic target. The control architecture adopted combines reactive approach and deliberative approach. Indeed, the hierarchical fuzzy logic system is applied to bring the robot from an initial portion to become close to the trajectory of the goal. The robot goes after the dynamic target using the sliding mode. Simulations results are presented to test the validity of this algorithm and to prove the outperformance of the T2-FLS comparing to the T1-FLS in the reactive controllers.



---

*Source: 8421848-2018-08-01.xml*