Backstepping Controller for Mobile Robot in Presence of Disturbances and Uncertainties

The objective of this work is to devise an effective control system for addressing the trajectory tracking challenge in nonholonomic mobile robots. Two primary control approaches, namely kinematic and dynamic strategies, are explored to achieve this goal. In the kinematic control domain, a backstepping controller (BSC) is introduced as the core element of the control system. The BSC is utilized to guide the mobile robot along the desired trajectory, leveraging the robot’s kinematic model. To address the limitations of the kinematic control approach, a dynamic control strategy is proposed, incorporating the dynamic parameters of the robot. This dynamic control ensures real-time control of the mobile robot. To ensure the stability of the control system, the Lyapunov stability theory is employed, providing a rigorous framework for analyzing and proving stability. Additionally, to optimize the performance of the control system, a genetic algorithm is employed to design an optimal control law. The effectiveness of the developed control approach is demonstrated through simulation results. These results showcase the enhanced performance and efficiency achieved by the proposed control strategies. Overall, this study presents a comprehensive and robust approach for trajectory tracking in nonholonomic mobile robots, combining kinematic and dynamic control strategies while ensuring stability and performance optimization


Introduction
Effective path tracking is a fundamental challenge in robotics, with wide-ranging applications across industrial and service sectors, including inspection, security, cleaning, and transportation.The precise and stable execution of desired trajectories by mobile robots is paramount for ensuring efficient and successful task completion [1].
Numerous research efforts have been devoted to developing control solutions for mobile robots.Some approaches have focused on the kinematic model of wheeled mobile robots [2]- [5].However, kinematic control methods often overlook dynamic effects such as mass and inertia, leading to vulnerabilities in the presence of uncertainties and external disturbances.To address these challenges, dynamic control approaches have emerged, aiming to incorporate the robot's dynamic parameters to enhance real-time control [6]- [8].and accurate trajectory tracking.Building upon previous research, we propose the integration of a backstepping control approach with genetic algorithm optimization.In [9], a strategy of control that integrates both the kinematic and dynamic models of the mobile robot are used for solving the path tracking system.For the kinematic control, the backstepping approach is used.However, the dynamic control approach is based on the fuzzy logic controller.The aim advantages of this control system is its insurance the stability by solving the problem of the nonlinearity and uncertainty problem caused by the perturbation and disturbance effects, robustness and fast response [10].However, the architecture of this approach is complex because there is difficulties in the determining of the fuzzy rules and the membership functions for the fuzzy logic controller [10].
Kinematic and dynamic control laws are adopted in [11] for controlling a wheeled mobile robot.The kinematic approach is based on the backstepping controller.Then, the dynamic control strategy is based on the neural network control.This is to reduce the effect of disturbances and perturbations.The aim advantages of this approach is that the stability of the system is achieved and the mobile robot follows its desired trajectory safely.Also, the architecture of the present control system is simple.
An adaptive neural networks is designed in [12] to ameliorate the tracking performance in the presence of unknown dynamics and external perturbations.By using this control system, the mobile robot achieves its trajectory with minimum errors.However, neural networks have many drawbacks like the choosing of the appropriate network and the slow convergence for the goal [13].
Others works such as [14,15,16] are interested by the sliding mode controller to control the mobile robot.The sliding mode controller has many advantages like fast response, good transient and the robustness against system uncertainties and external disturbances [17,18].However, the using of this controller generates the chattering phenomenon and the instability of the system [19].For this reason, some works are interested to overcome this phenomenon.A sliding mode integrated with the fuzzy logic controller is presented in [20,21].In [22,23,24], the higher order sliding mode controller is used to reduce the effect of the chattering phenomenon.This control system aims to reject the discontinuities at the level of the upper derivatives of the system input.The backstepping control system is used in many several works such as [25,26,27,28] in order to control the mobile robot.The basic idea of the backstepping method is to analyze the system and to design the controller which makes the error dynamics stable.Specially, it is applied to the globally stable and asymptotically adaptive tracking control of a strict feedback nonlinear system [29].In [29], a backstepping controller is adopted to control a manipulator robot.The simulation results prove the efficiency and the robustness of the backstepping control law.Also, The present control system is adopted in [30] for controlling the wheeled mobile robot in order to follow the desired trajectory.The stability of the system is achieved using the Lyapunov stability theory.In addition to this, the backstepping controller is adopted to solve the problem of tracking photovoltaic systems [31].The aim advantages of the backstepping control system that it guarantees the convergence of the tracking errors to zero.In addition to this, this control system aims to ensure a robust continuing stability of the robot.For this raison, we consider a nonholonomic mobile robot which takes as input the angular velocity.Also, this controller aims to guarantee the system stability and achieves the output voltage.Generally, the backstepping controller handles to improve the system performance and its robustness [32].
The research contribution is is to design an effective control system for solving the trajectory tracking problem in nonholonomic mobile robots.Two principal control approaches are tackled in this work which are the kinematic and dynamic strategies.In the kinematic control domain, a backstepping controller (BSC) is introduced as the core element of the control system.In this work, a backstepping controller is adopted for controlling the wheeled mobile robot.The backstepping technique is designed with the consideration of the kinematic model of the mobile robot [30].First, the kinematic model of the backstepping system aims to produce the angular velocity outputs in order Our contributions lie in the integration of kinematic and dynamic control strategies, the application of genetic algorithm optimization, and the rigorous demonstration of stability using Lyapunov theory.The subsequent sections of this paper delve into the details of our proposed approach, encompassing the mobile robot model Section 2, kinematic control analysis Section 3, dynamic control strategy Section 4, genetic algorithm optimization Section 5, simulation results Section 6, and concluding remarks Section 7.

Mobile Robot Model
The present section aims to describe the kinematic system of the nonholonomic mobile robot see Fig. 2. The nonholonomic mobile robot under consideration features two independent driving wheels, each with a radius denoted by r.The separation distance between the wheels is 2b.The robot's origin is represented as P 0 =(x 0 , y 0 ), and the center of mass is marked as P c .The distance between P 0 and P c , is noted as d and the robot's orientation is noted φ.
Furthermore, the kinematic model of the wheeled mobile robot is given as follows: The kinematic model is expressed through the equation q = S(q) * z equation ( 1), where S(q) and z are defined in equations ( 2) and (3), respectively.The meaning of symbols using in this part are presented in the Table .1.

Symbols Signification r
The radius of each wheel of the mobile robot 2b The distance that separates the two robot wheels P 0 =(x 0 , y 0 ) The origin position of the mobile robot P =(x, y) The actual position of the mobile robot P c The center of mass of the robot d The distance between P 0 and P c φ The orientation angle of the robot v The linear velocity of the mobile robot w The angular velocity of the mobile robot

Kinematic Control Design
This section is devoted to explain the architecture of the backstepping controller.The proposed control law guarantees the convergence of the tracking errors to zero.Furthermore, it aims to ensure a robust continuing stability of the robot.For this raison, we consider a nonholonomic mobile robot which takes as input the angular velocity.The principal idea of this approach is indicated in the Fig. 3.The kinematic model of the wheeled mobile robot is expressed in the equation ( 4): In order to analyze the stability of the system, two postures are needed to be known which are the reference robot posture q r = [x r , y r , φ r ] T and the current robot position q = [x, y, φ] T .The posture tracking error p e is defined as the difference between the reference posture of the mobile robot q r and its current posture q.The expression of the posture tracking error p e is given as follows (5) [25]: Furthermore, the derivative of the posture tracking error is determined in order to prove the stability of the control system see equation (6).
Based on the approach which is developed in [28], the kinematic control law is adopted as follows (7): Where k 1 , k 2 and k 3 are positive constants.
In order to guarantee the stability of the kinematic controller, the lyapunov candidate function is choosen as follows (8) [25].
By differentiating the equation ( 8) and substituting the values from the equations ( 6) and ( 7), we obtain: Based on the result obtained in the equation ( 9), it is clearly that the derivative of the lyapunov function V is negative definite because the reference linear velocity is positive definite (v r ≥ 0).

Dynamic Control Design
The present section is introduced to describe the dynamic control strategy for controlling the wheeled mobile robot.In this situation, the dynamic parameters of the robot are known and the external disturbances are not taken into account.
This approach handles to make the robot reaches the velocity output of the backstepping control law and ensures the stability of the system.Fig. 4 shows the schematic bloc diagram of this approach.This section outlines the dynamic control strategies, catering to scenarios both without and with external disturbances.The goal is to address real-world challenges such as uncertainties and disturbances affecting the robot's performance.In this scenario, the dynamic control system is designed considering the dynamic model of the robot.The dynamic control system is obtained by using the Euler Lagrange Formulation as given in the following equation (10) [30].
Where M v is the inertia matrix which is given in the equation (11).
With m is the robot weigh and I is the robot inertia.
The centripetal-Coriolis matrix, which is noted C(q, q), is presented in the equation (12).q and q denote the velocity and the acceleration vectors, respectively.
With m c is the wheel weigh, B v is the input transformation matrix and τ is the vector of input torque (13).
With r is the wheel radius.
The aim objective of this section is to allow the error velocity converges to zero in order to the mobile robot follows its trajectory with minimum errors.Hence, the velocity tracking error e v is defined as the difference between the velocity produced by the kinematic model z c and the actual velocity z.The mathematical expression of the velocity tracking error is given as follows ( 14): In order to achieve the stability of the control system, the derivative of the velocity tracking error is determined as follows (15): By substituting ( 14) into (10), we obtain: Where K p is a positive definite matrix.Furthermore, the stability of the dynamic controller design is achieved by choosing the lyapunov candidate function as follows ( 17) [25].
The time derivative of V 2 is: Substituting ( 10) into (18), we find: Based on the obtained results, it is noted that V2 ≤ 0. By applying the Barbalats Lemma [13], it is obvious that V2 → 0 as t → ∞.As result, the velocity z c converges to z.

Dynamic Control Design with External Disturbances
The basic idea of the dynamic control is to solve the problem of trajectory tracking when the mobile robot navigate in a real environment.This due to the huge used of the mobile robot in different areas of life.For this reason, the mobile robot is affected by disturbances and uncertainties.Generally, disturbances are generated by a collision with an obstacle, with a wall or with a bump on the path.In addition, the parametric uncertainties are caused by a variation of the dynamic parameters of the system such as variation in mass, inertia, etc.
The basic idea of this section is to solve the problem of the path tracking when the mobile robot system is affected by external disturbances and uncertainties (τ d ̸ = 0).In this case, the dynamic model adopted is (20): To ensure stability, the control law is derived as τ v see equation (21), where K p is a positive definite matrix.
Furthermore, the vector of external disturbance is chosen as given in the equation ( 22) [10]: Where k d is positive constant.
The dynamic model obtained by substituting the equation ( 21) in ( 20) is expressed as follows: To guarantee the stability of the system, the Lyapunov function is defined as shown in the equation ( 24) [10].
The time derivative of V 2 is: By substituting the equation ( 23) in the equation ( 25), we obtain: Based on the obtained result, it is clearly that the time derivative of V 2 is negative and definite and the stability of the control system is achieved.

Genetic Algorithm
The present approach is introduced by Holland in 1960 [34] in order to solve the optimization problems.In the literature, many several research works have been used the genetic algorithm (GA) as a suitable solution for the optimization problems [35], [36], [37].Furthermore, researches have been proved the superiority of the GA over the other optimization methods [36], [37], [38].For this reason, the genetic algorithm method is adopted in the present work.
The main operators used to the genetic algorithm are: selection, crossover and mutation.Even, the selection operation is achieved, we pass to the crossing and mutation operators in order to discover new individuals with a better performance than their parents.This step is repeated iteratively until obtaining the best solution.In the present work, the genetic algorithm is adopted in order to extract the optimized consequences of the backstepping controller.

Principle of the Genetic Algorithm
The genetic algorithm GA is adopted in order to ameliorate the performance of the backstepping controller by optimizing its parameters.The parameters to be optimized are the values of the gains k 1 , k 2 and k 3 .The remainder of this algorithm is illustrated in the Fig. 5.This algorithm starts by creating randomly initial population P op formed by m chromosomes (m = 10).The structure of this population is given as follows (27):  (28) with i = 1, ..., m.

Selection Operation
The selection operation takes into consideration the fitness of every individual.The fitness function J is adopted in this algorithm in order to select the best individuals k 1 , k 2 and k 3 that give the minimum error e v and to build the next population.The mathematical expression of the fitness function is given as follows ( 29): This operation is repeated iteratively until obtaining the best individual.

Crossing Operation
The crossing operation aims to obtain the best individual of the population by allowing the information exchange.It combines several substrings from different good individuals in order to obtain better individuals in the next generations.First, the crossover place within a string is randomly chosen.Then, information exchanges between individuals occur from here to the end of the strings.

Mutation Operation
The basic idea of the mutation operation is to allow a random change of a value within the string of each individual.This operation handles at preventing important loss of the information contained in an individual.

Simulation Results
The present section is devoted to prove the applicability of the proposed controller.The kinematic and dynamic parameters of the robot are chosen as follows: b=0.75 m, r=0.15 m, d=0.3m, m c =30kg, m w =1 kg, I c =15.625 kg m, I m =0.0025kg m, k1 = 6.8, k2 = 2.34, k3 = 1.56.
Same simulation results are performed to show the tracking performance and effectiveness of the proposed approach.The Fig. 6 presents a sinusoidal trajectory which is defined as (30): In order to demonstrate the performance of the kinematic controller, the error positions are introduced in the Fig. 7.It is obvious that all errors tend to zero.Also, the linear and the angular velocities are presented in the Fig. 8 and Fig. 9, respectively.Based on the recent results, it is clearly that the real and the desired velocities are confused.
In the Fig. 10, the mobile robot should track the ellipsoidal path which is described as (31):    From the Fig. 10, it is clearly that the robot follows the desired path successfully.Furthermore, Fig. 11 demonstrates that the error positions tend to zero.It is clearly that the actual and the desired linear velocities are the same see Fig. 12.Also, the Fig. 13 shows that the actual and the desired angular velocities are conformed.From all simulation results, it is obvious to see that the mobile robot is able to follow all reference trajectories and all error positions tend to zero.
The other type of simulation results is focused to show the tracking performance and effectiveness of the proposed controller in the presence of perturbations and external disturbances.
The first case shows the influence of the external disturbances on the dynamic system.The type of perturbation is sinusoidal which is defined as follows (33): Another example is presented in the Fig. 14 in order to prove the goodness of the kinematic controller.It is clearly that the mobile robot is able to track the desired path which is presented as follows (32): From the Fig. 15, it can be seen that all error positions tend to zero.Fig. 16 and Fig. 17 show that the actual and the desired velocities are confused.
The sinusoidal perturbation affects the system at t = 0.3s.As shown in the Fig. 18 (a), it is clearly that the mobile robot is unable to reach its reference path perfectly.Also, Fig. 18 (b) indicates that the sinusoidal disturbance causes amplification of the error position values.Furthermore, it is clearly in the Fig. 19 that the real speeds (v et w) doesn't converge to the desired speeds (v c et w c ).The Fig. 20 shows the evolution of the disturbance on the right and left wheels.As shown in the Fig.21, it is clearly that the evolution of the engine torque related to the right and left wheels is mediocre.From these simulation results, it is noted that the applied perturbation cause the instability of the control system.
The other case of simulation aims to show the performance of the developed controller in presence of a variation in the robot parameters (mass and inertia).This variation affects the system at t = 7s      From the results obtained from the Fig. 22, it is noted that the parametric variation has a great effect on the precision of the trajectory tracking.The Fig. 22 (a) shows that the obtained trajectory is not perfect.For this reason, the mobile robot can not follow the desired path safely.Also, tracking errors are disturbed see Fig. 22 (b).From the Fig. 23, it is obvious that the real speeds and the desired speeds are not confused.Consequently, the dynamic control performance is damaged.In addition, disturbances on the right            In order to ameliorate the performance of the developed control law, the best parameters obtained by the application of the genetic algorithm are given as follows: k 1 =6.58, k 2 =2.09, k 3 =1.3.According to the results presented in the Table.2, it is obvious that the gain values after optimization are lower than that the gain values before optimization.As result, the optimization by the genetic algorithm improves the performance of the backstepping controller.This improvement can reach the 7.93 %.

Conclusion
In this paper, we have addressed the trajectory tracking problem for wheeled mobile robots through a comprehensive control framework.Our contributions encompassed the development of a robust backstepping controller to achieve precise velocity control, coupled with a dynamic control law for real-time maneuvering.The analysis of stability using Lyapunov function theory established the robustness of our control system against uncertain dynamics and external disturbances.The culmination of our work was the optimization of control performance using the genetic algorithm, resulting in enhanced trajectory tracking and robustness.The simulation results presented affirm the efficacy of our proposed control law in achieving these objectives.
As we look ahead, our future research will focus on extending our control strategy to incorporate estimators.These estimators will play a pivotal role in estimating and compensating for unknown dynamics and disturbances encountered by mobile robots.By integrating these estimators, we anticipate even greater control precision and resilience in real-world scenarios.

Fig. 4 .
Fig. 4. Block diagram of the dynamic control strategy.
27) Imen Hassani (Backstepping Controller for Mobile Robot in Presence of Disturbances and Uncertainties) Vol. 3, No. 4, 2023, pp.934-954 ISSN 2775-2658 Each chromosome of population Chrom i represents a solution to the tracking problem.The structure of each chromosome Chrom i is (28):

Fig. 7 .
Fig. 7. Error positions related to the first scenario.

Fig. 8 .
Fig. 8. Linear velocity related to the first scenario.

Fig. 11 .
Fig. 11.Error positions related to the second scenario.

Fig. 15 .
Fig. 15.Error positions related to the third scenario.

Fig. 16 .
Fig. 16.Linear velocity related to the third scenario.

Fig. 17
Fig. 17.Angular velocity related to the third scenario.

.
Fig. 17.Angular velocity related to the third scenario.
Perturbation in the right wheel.
Perturbation in the left wheel.

Fig. 20 .
Fig. 20.Perturbation in the right and left wheels.
Error positions.

Fig. 22 .
Fig. 22. Tracking trajectories in the presence of external disturbances.
Perturbation in the right wheel.
Perturbation in the left wheel.

Fig. 24 .
Fig. 24.Perturbation in the left and right wheels.

Fig. 28 .
Fig. 28.Error positions optimized related to the third scenario.

Table 1 .
List of symbols.

Table 2 .
Comparison between the gains obtained before and after the optimization.