Motion Control of a Mobile Robot Using the Hedge – Algebras-Based Controller

,


Introduction
Mobile robot systems have increasing applications in industry in general and in the field of automation in particular.Studies on these systems are attracting considerable attention from scientists to different types of mobile robots, such as walking robots, wheeled robots, or mobile robots equipped with manipulators [1][2][3][4].
Motion control of mobile robot systems is often based on artificial intelligence (AI) algorithms in which controllers based on the fuzzy set theory (FC) of Zahde play an essential role in this research direction.In a study by Zhao et al. [5], the research model was a three-wheel robot with nine sensors that use two FCs to control obstacle avoidance motion based on the distance from around the robot to the obstacles.The fuzzy controller in a study by Yen and Cheng [6] was optimized using the ant colony algorithm to find the shortest path and avoid obstacles for a mobile robot.In a study by Sun et al. [7], the motion of a three-dimensional autonomous underwater vehicle was controlled by an optimized FC using particle swarm optimization.A Mamdani fuzzy control was used in a study by Chiu and Lin [8] to control the motion of an omnidirectional spherical mobile robot.An adaptive fuzzy neural controller was developed in a study by Kong et al. [9] to control a multirobot system with robots' unknown dynamics and environment.Investigations in a study by Wu et al. [10] focus on developing a backstepping algorithm based on the fuzzy sliding technique to control a mobile robot with uncertainty and noise.Aouf et al. [11] have developed the optimal fuzzy controller for navigating a mobile robot in strange environments.In a study by Guo et al. [12], a path planning algorithm was optimized based on fuzzy control to navigate for a mobile robot, where the robot environment was unknown.The fuzzy controller was investigated in a study by Hacene and Mendil [13] for a three-wheeled robot in an environment of static and dynamic targets and obstacles.The robot performs the tasks of approaching the target, avoiding obstacles, and following the wall.The problem of controlling the speed of a mobile robot using a fuzzy controller was presented in a study by Hartono and Nizar [14], with the state variables being speed and the change in the robot's speed.A type 2 fuzzy controller was introduced in a study by Humaidi et al. [15] for the trajectory tracking of a 3-Revolute-Revolute-Revolute planar parallel robot.The PD fuzzy controller was proposed in a study by Jabeur and Seddik [16] to control the motion of a two-wheeled robot and avoid damaging its motor.The adaptive type 2 fuzzy controller proposed in a study by Ha et al. [17] was for motion control of a wheeled mobile robot with external disturbances, including wheel slip.The fuzzy controller in a study by Kumar et al. [18] was optimized to control multiple mobile robots in static and dynamic environments.The above publications show the popularity and efficiency of fuzzy control for mobile robot models with their different environmental conditions.
The hedge-algebras (HA) theory has been developed since 1990 with different approaches from fuzzy set theory in modeling linguistic values of linguistic variables [19].In HA, linguistic values can be represented as real numbers with magnitudes consistent with linguistic values' natural semantics [20].This representation allows simplifying the computational steps in HA.Therefore, HA has been effectively applied to problems in information technology and process control fields, especially in the control of mechanical models, for example, underactuated systems [21], earthquake-resistant building models [22,23], car suspension systems [24], and industrial robot models [25,26].Research results in the above publications show that HA-based controller (HAC) has many advantages compared to FC, such as a more explicit setup, more straightforward optimization, more efficient operation, and significantly faster computation time.
Balancing composite motion optimization (BCMO) is a recently published swarm-based optimization method.The advantages of BCMO are no need for algorithm parameters, fast convergence, and high optimal performance [27].
With the potential of HA in the field of control of mechanical models proven through the above publication, in this paper, HAC is applied for the first time to the motion control problem of mobile robots in which a simple model of an obstacle avoidance mobile robot is referenced.The proposed control rule system of HAC is suitable for mobile robot behavior.The HAC is optimized using BCMO to help the robot find the shortest path while avoiding obstacles.The main contributions of the present study include: (1) a novel development in motion control of an autonomous robot using the HAC, in which the HAC is optimized using the BCMO to return the optimal path; (2) the controller is designed to achieve two objectives simultaneously: minimizing the traveling distance of the mobile robot and enabling obstacle avoidance.The controller has been established and optimized to balance these two goals effectively; (3) the comparison of the proposed method with FC in terms of traveling distance and computation time (CPU time) has shown the outstanding efficiency of HAC; (4) in some scenarios, when using FC, the robot encounters a stuck phenomenon when approaching an obstacle, and HA still controls the robot reach the target successfully.
The remaining part of this paper has the following structure: Section 2 introduces the robot model.Section 3 presents the proposed controller based on HA and the BCMO.The numerical simulations are presented and discussed in Section 4. Finally, a conclusion to sum up the paper and future works is given in Section 5.

Investigated Model
In this study, the mobile robot model [28] is used (see Figure 1).The model includes a square moving environment with a size of each side of 25 m.The obstacle, target, and differential robot are circular with a radius of 0.5 m.The robot's movement is made by two unit force vectors Ft (directed from the robot's current position to the target's position) and Fo (directed from the robot's current position to the obstacle's position), as shown in Figure 1.
Combining the above forces through a weight w will produce a general control force F, as shown in Equation (1), to bring the robot to the target position and help it to avoid obstacles simultaneously.
The sharp changes in the direction of the mobile robot are limited to [−π/4, π/4] for each control loop.Therefore, the robot's direction θ r (k + 1) in the (k + 1)th control loop is where θ is the angle between the control force F and the x-axis and Δθ is the robot's direction variation between the kth and (k + 1)th iterations.Let s be the robot's speed and Δt be the sample period.The change in position of the robot (x r , y r ) in the (k + 1)th control loop compared to the kth loop is given as follows: Let α = d o /d t be the ratio between the distance from the robot to the obstacle (d o ) and the distance from the robot to the target (d t ) and θ t,o is the angle between the directions from the robot to the target and to the obstacle (see Figure 1).In order for the robot to move to the target and avoid obstacles, the weight w must follow the following observation: weight w has a high value when α and θ t,o are low to avoid obstacles, and it has a low value for the remaining cases, so that the robot quickly moves to the target.The weight w will be determined through the proposed rule base of the HAC controller, as shown in Section 3.
It is assumed that the robot has a constant velocity, no dynamic constraints, and knows its current position and the position of the obstacle to simplify the investigated problem.

Control Design
In HA, a HA structure of a linguistic variable X usually consists of primary terms, hedges, and constants.For example, C = (low, high) = (c − , c + ), denoted by (L, H), are negative and positive primary terms; H = (little, very) = (h − , h + ), represented by (l, v), are negative and positive hedges; and (absolutely low, neutral, absolutely high) = (0, W, 1) are constants.Linguistic values will be formed based on a combination of primary terms and hedges following the natural semantic order of these linguistic values, for example, absolutely L, vvL, vL, lvL, L, llL, lL, vlL, W, vlH, lH, llH, H, lvH, vH, vvH, and absolutely H [29].
The notations fm(c − ) and v(h − ) are fuzziness measures of the negative primary term and the negative hedge, respectively, and their values range from 0 to 1.The theorems in HA allow determining fuzzy measures φ (between 0 and 1) of all linguistic values of a linguistic variable based on the value of fm(c − ) and v(h − ) [29].The basic formulas in HA theory are expressed in Appendix A. In the case of fm(c − ) and v(h − ) changing between 0.2 and 0.8, the variation range of fuzziness measure values of several typical linguistic values is shown in Figure 2.
As shown in Figure 2, the values have quite wide ranges when fm(c − ) and v(h − ) change.Furthermore, the semantic order of linguistic values is always strictly guaranteed.These ranges are the basis for performing the HAC optimization problem, as will be presented below.
The block diagram of the mobile robot control process is shown in Figure 3.Because the robot knows its current position and the position of the obstacle, the position and posture of the robot and the position of the obstacle are determined at any given time.These parameters allow easy determining α and θ t,o .The parameters α and θ t,o are the inputs of the HAC controller, as shown in Figure 4.The weight w from the output of the HAC determines the general control force F through Equation (1).Under the action of this force, the robot will change direction (see Equations ( 2) and ( 3)) and position (see Equation ( 4)).This process is repeated until the robot meets the target or collides with the obstacles.
The control flowchart of HAC is shown in Figure 4(a) in which the normalization and denormalization blocks have the same role as the fuzzification and defuzzification steps of a traditional fuzzy controller.
It is assumed that the variables α and θ t,o have linguistics values L, W, and H and the variable w has linguistics values vvL, vL, L, W, lH, H, and vH.Hence, the variation ranges of the fuzziness measure S of the variables α, θ t,o , and w are [S (L), S(H)], [S(L), S(H)], and [S(vvL), S(vH)], respectively.
The normalization step to convert the real values of the variables α and θ t,o to their fuzziness measure values S is shown in Figure 4(b)-4(c) in which α s and θ s are representations of α and θ t,o in the fuzziness measure domain, and a and b represent reference intervals in the real domain of the variables α and θ t,o .The HA's rule base to determine the weight w is proposed, as shown in Figure 4(d).This rule base satisfies the analysis of the behavior of the weight w, as described in Section 2. The geometrical representation of this rule base is shown in Figure 4(e).From the data, as shown in Figure 4(e), the value of w s (the notation of w in the fuzziness measure domain) can be easily determined Journal of Robotics through a simple interpolation (using Matlab's interp2 command).This interpolation scheme can be considered as the inference step of HAC.Finally, the denormalization step, as shown in Figure 4(f ), converts the value of w from the fuzziness measure domain to the real one.Hence, it can be seen that the operating principle of HAC is similar to a traditional fuzzy controller (FC).Function blocks of HAC only use linear interpolation.In addition, when optimizing fuzzy parameters of HAC, only two design variables ( fm(c − ) and v(h − )) are needed for each linguistic variable.The constraint on the semantic order of the linguistic values is ignored because this order is always guaranteed (see Figure 2).Therefore, it can be concluded that HAC is more explicit, easier to optimize, and more straightforward to operate than FC.
The HAC controller will be optimized to improve the mobile robot's performance.The optimization problem is expressed as follows: (1) Objective function [28]: (2) Design variables: fm(c − ) and v(h − ) of α, θ t,o , and w and a and b.Hence, the total number of design variables is 8.
(3) Constraints [28]: Collision between robot and obstacle ¼ 0: Contact between robot and target ¼ 1: ð7Þ (4) Training data [28]: The initial position and direction of the robot are [13 2] and π/2, the position of the target is [13 22], and the positions of the obstacle are [3 12] and [ 13 18].(5) Optimization tool: BCMO algorithm is used with population size (denoted by NP) and number of generations (represented by maxGen) equal to 200.The optimal algorithm flowchart is shown in Figure 5.
Hence, it can be seen that the controller's parameters include the following: (1) As analyzed in Section 2, the number of input state variables is 2 (α and θ t,o ), and the number of output control variables (u) is 1.
(2) In HA-based controllers, the number of linguistic values of input state variables is usually odd (3, 5, or 7), representing the symmetry between the linguistic values on both sides of the neutral element (W).Therefore, the minimum number of linguistic values of two state variables to be selected is 3.For the control variable, the number and arrangement of linguistic values in the rule base are determined by the trial and error method in which a low value of w is prioritized, and, therefore, the robot quickly moves to the target.(3) In addition, the reference ranges of variables are also essential parameters and significantly affect the controller's performance.The reference range of the control variable is normalized in the range [0, 1] [28].The reference ranges of state variables are determined from the optimization problem.(4) Finally, the fuzzy parameters of the variables ( fm(c − ) and v(h − )) are also optimized to improve the control efficiency of the HAC.

Numerical Simulation
4.1.Comparative Study with One Obstacle.This section presents the numerical simulation results in which the robot's speed s is 0.5 m/s and the sample period Δt is 0.1 s.Simulation results between HAC and FC [28] will be compared for some typical scenarios.The parameters of the controller FC [28] are presented in Appendix B. The optimal values of the design variables of HAC are shown in Table 1.From these values, the fuzziness measure of the linguistic values of the variables is calculated and shown in Table 2.The values, as shown in Table 2, are brought into the rule base, as shown inFigure 4(d), to obtain the optimal HA's inference schema, as shown in Figure 4(e).The simulated scenarios are given in Table 3.

4
Journal of Robotics Simulation results for the above cases in this comparative study are shown in Figures 6-9.Table 4 shows the traveling distance of the robot when using the HAC and FC controllers.
As shown in Figures 6-9, the proposed HAC is implemented and compared to FC through several test cases, assuming that the robot is performing a respective mission in a 25 × 25 square meter working space.In each scenario, the obstacles are generated with different positions, and the robot has a similar start (magenta circle) and destination point.
The results, as shown in Figures 6-9, also show that the control goal is always achieved.That is, the robot reaches the target and avoids obstacles.The movement trajectory of the robot when using HAC and FC is quite similar.However, the robot's trajectory in scenarios 2 and 4 in the case of using FC encounters a stuck phenomenon when the robot approaches an obstacle.In general, the trajectories of the robot in the cases of using HAC are smoother than in the cases of using FC.The traveling distance of the robot when using HAC is slightly smaller than when using FC (more than a 3% decrease on the average of all four scenarios).In addition, the controllers' computation time (CPU time) is also measured and listed, as shown in Table 5.It can be seen from Table 5 that the CPU time of HAC is significantly reduced compared to FC (about 44%).The CPU time proves that HAC is improved considerably, resulting in a reduced computational factor.In various real-time applications, the computation of the robot controller is restricted, so a control method with a lower computational cost, like HAC, is a better option.Therefore, this approach has the potential for many real-life robotic applications, such as autonomous cars, military robots, agricultural robots, exploration robots, and rescue robots in real-time control applications [30] in which CPU time results are measured on the computer with the configuration: CPU E5-1650 v3 @ 3.50 GHz, 32.0 GB RAM, using Matlab software and Windows 10 operating system.The result, as shown in Figures 10-13, shows that, in the case of the environment with two obstacles, the robot still meets the control objectives, including avoiding obstacles and reaching the target.The robot's trajectory is smooth, and the robot's traveling distance is quite optimal.Journal of Robotics

Conclusion
In this study, the motion control problem of a mobile robot to avoid obstacles and reach the target using the HAC is performed.This work is the first time the HA theory using the BCMO optimization algorithm has been developed for a mobile robot application.In order to prove the effectiveness of the proposed method, two numerical simulations are implemented, and the simulation results between HAC and FC [28] are compared.These observations highlight differences between the HAC and FC approaches regarding trajectory smoothness, obstacle handling, and traveling efficiency.The smoother trajectories and reduced traveling distance with HAC can indicate more efficient and optimized robot movements such as a 3% reduction in traveling distance in case the environment has one obstacle, and especially the CPU time of HAC is much faster than that of FC, reducing the computation time by 44% compared with the FC controller by using BCMO optimization algorithm for HAC.When changing the simulation environment (switching from one to two obstacles), the HAC still gives good control performance with a minor additional condition.Especially in some scenarios, when using FC, the robot encounters a stuck phenomenon when approaching an obstacle, HA still controls the robot to reach the target successfully.These advantages of HAC allow developing and applying HAC in more complex navigation problems of mobile robot systems with many applications in life, such as agricultural, exploration, or military robots.This study's limitations include as follows: the robot model is simple, the number of obstacles is small, complex shapes of obstacles have not been considered, ignoring the robot's dynamic model and unknown and dynamic obstacles, and many simplified assumptions of the robot's velocity and sensor and dynamic constraints of the model are used.Simulations under different conditions, such as the effect of different dimensions on throughput and navigation time, have not been evaluated.In addition, experimental studies on a real mobile robot in a real-time environment have not been performed to verify the simulation results.These limitations, as well as the disturbance and model verification, are the issues that need to be addressed in future investigations of this research direction.Moreover, it is also necessary to evaluate the proposed control algorithm's computational complexity and compare it with other control algorithms, such as the type 2 fuzzy controller.In addition, the proposed method can be integrated with a machine learning algorithm to increase the robot system's intelligence to solve robot navigation in complex environments with different conditions.In this sense, other optimization techniques, for example, the whale optimization algorithm (WOA) [31] or the particle swarm optimization (PSO) [32], should also be considered in the optimization design of controllers based on HA theory.

A. The Basic Formulas in HA Theory
This section presents the basic formulas in HA theory for the case that the HA structure of the linguistic variable X consists of two hedges h − and h + .
The fuzziness measure of primary terms fm 2 [0, 1] is given as follows: ðA:1Þ For the constants 0; W and 1; fm The notation v(h) is called the fuzziness measure of the hedge h.From Equation (A.3), we have: ðA:7Þ The function Sign: X → − f 1; 0; 1g is defined as follows: The fuzziness measure S: X → [0,1] of linguistic values is defined as follows: reviewing and editing.Thi-Thoa Mac: data curation, software, investigation, and writing-original draft preparation.Hai-Le Bui: conceptualization, methodology, software, validation, writing-original draft preparation, and writingreviewing and editing.

FIGURE 3 :
FIGURE 3: The block diagram of the mobile robot control process.

FIGURE 4 :
FIGURE 4: Hedge-algebras-based controller.(a) Control flowchart of HAC, (b and c) normalization step of the input variables, (d) HA's rule base, (e) rule base's geometrical representation, and (f ) de-normalization step of the output variable.

4. 2 .
Study in the Case of Two Obstacles.Next, an obstacle is added to the investigated model to validate the effectiveness of the proposed HAC.It is noted that the parameters of the HAC are kept the same as in Subsection 4.1.To suit the new environment, the HAC just adds one condition as follows: the obstacle to be concerned about (avoid) is the obstacle whose distance to the robot is smaller.The simulation scenarios in this subsection are shown in Table 6.The simulation results are shown in Figures 10-13 .

TABLE 1 :
Optimal values of design variables.

TABLE 2 :
Fuzziness measure of linguistic values.

TABLE 3 :
The simulated scenarios in the comparative study.

TABLE 4 :
The traveling distance (m) of the robot.

TABLE 6 :
The simulated scenarios with two obstacles.