{'fraction_non_alphanumeric': 0.030722779057461246, 'fraction_numerical': 0.010987984809811368, 'mean_word_length': 4.638294138294138, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 9, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Tracking error learning control for precise mobile robot path tracking in outdoor environment

This paper presents a Tracking-Error Learning Control (TELC) algorithm for precise mobile robot path tracking in off-road terrain. In traditional tracking error-based control approaches, feedback and feedforward controllers are designed based on the nominal model which cannot capture the uncertainties, disturbances and changing working conditions so that they cannot ensure precise path tracking performance in the outdoor environment. In TELC algorithm, the feedforward control actions are updated by using the tracking error dynamics and the plant-model mismatch problem is thus discarded. Therefore, the feedforward controller gradually eliminates the feedback controller from the control of the system once the mobile robot has been on-track. In addition to the proof of the stability, it is proven that the cost functions do not have local minima so that the coefficients in TELC algorithm guarantee that the global minimum is reached. The experimental results show that the TELC algorithm results in better path tracking performance than the traditional tracking error-based control method. The mobile robot controlled by TELC algorithm can track a target path precisely with less than $10$ cm error in off-road terrain.


Introduction
Mobile robots in off-road terrain are increasingly used in wide range of nonindustrial applications such as agriculture, search and rescue, military, forestry, mining and security [12,17]. However, guidance, navigation, and control of mobile robots require advanced control methods to alleviate the effects of unmodeled surface and soil conditions (e.g., snow, sand, grass), terrain topography (e.g., side-slopes, inclines), and complex robot dynamics. In the outdoor environment, it is sometimes arduous and/or almost impossible to obtain a priori model for such effects (i) modeling of robot-terrain interactions is challenging, (ii) the soil condition is often not known ahead of time, and (iii) the identification of system parameters is a cumbersome process and must be re-carried out for different terrains [3,8,10,15,22].
The initial studies on autonomous mobile robots used traditional controllers, e.g., proportional-integral-derivative, optimal, and model predictive controllers (MPCs) [1,5,6,21]. Proportional-integral-derivative controllers are convenient only for single-input-single-output systems; however, mobile robots are multi-input-multi-output systems. As alternative methods, linear quadratic regulators and linear MPCs, which can be designed readily for multi-input-multi-output systems, were proposed for autonomous navigation of mobile robots in literatur [18,23,26]. Since these methods require a linear system model to be designed, tracking errorbased control algorithms were developed [16,24] in which the system model is linearized around the target path, and the total control input is obtained by the sum of feedback and feedforward control inputs [2]. The feedback control law is designed based on a nominal model, which is a pri-ori model and cannot capture all the effects of uncertainties that are summarized in the previous paragraph. Moreover, the feedforward control law is derived taking the target path and nominal model into account so that it also cannot contain the effects of uncertainties. Since tracking error-based models might not represent real-time systems behavior accurately, the traditional tracking error-based control methods cannot ensure precise path tracking performance in the outdoor environment. Therefore, it can be concluded that a prerequisite for accurate tracking performance of modelbased controllers is the achievement of a precise mathematical model of the system to be controlled [13]. This shows that traditional approaches are not always inherently robust. Moreover, an amplitude-saturated output feedback control approach was proposed in [25]. In this approach, the output of the control input is limited by upper and lower bounds; however, the input rate cannot be limited. Furthermore, this approach requires to know the direct relation between the input and output, which is known in tracking error-based control methods. In this paper, since traditional tracking errorbased controllers use an MPC as a feedback controller, we also use an MPC controller for a fair comparison with the previous works in literature.
To cope up with restrictions on traditional controllers, adaptive control approaches and MPC scheme with friction compensation were respectively proposed in [19,20], and successful results were reported for indoor applications. However, there is no evidence that these methods work well for outdoor applications where the uncertainty is so high, and soil conditions are changing. Robust trajectory tracking error model-based predictive controller was designed for unmanned ground vehicles to overcome the limitations of the tracking error-based controllers [14]. Although it exhibited robust control performance, it could not ensure precise path tracking performance, e.g., the tracking error was more than 20 cm. Moreover, learning-based nonlinear MPC algorithms were proposed in which online parameters estimators were used to update the system parameters in the system model for an articulated unmanned ground vehicle [7,9,11]. Although precise path tracking performance was reported in these studies, the required computation times is large, especially for embedded applications. Therefore, the purpose of this paper is to develop a high precision control algorithm for mobile robots, which must be computationally efficient and can learn the mobile robot dynamics by utilizing longitudinal and lateral error dynamics. Thus, the feedforward control action will be in charge of the overall control of the mobile robot in steady-state behavior.
The main contribution of this study beyond state of the art is that a novel Tracking Error Learning Control (TELC) scheme is developed and implemented in real-time for the first time in literature. The first contribution of this paper is that the cost functions consisting of tracking error dynam-ics of the mobile robot are used to update the coefficients in the feedforward control law. Hence, TELC can learn mobile robot dynamics, and the feedback control action is removed from the overall control signal when the robot is ontrack. Therefore, the model-plant mismatch problem for outdoor applications cannot deteriorate the path tracking performance in the TELC scheme. The second contribution is that the stability of the TELC algorithm is proven that the TELC algorithm is asymptotically stable. The stability analysis shows the longitudinal and lateral error dynamics converge to zero if the learning coefficients are large enough. The third contribution is that it is proven that the TELC algorithm does not have any local minima so that it can reach the global minima. Moreover, it is shown that the feedforward control actions are bounded for a finite value for the coefficients in steady-state. Along with the theoretical results, this paper also presents path tracking-test results of the presented TELC algorithm on a mobile robot. TELC algorithm results in precise mobile robot path tracking performance when compared to the traditional tracking error-based control method.
This paper is organized as follows: The tracking errorbased model is derived in Section 2. The traditional tracking error-based control method is given in Section 3. The TELC algorithm is formulated in Section 4 while the update rules for the linear and angular velocity references are respectively derived in Sections 4.1 and 4.2, and the stability analysis is given in Section 4.3. Experimental results on a mobile robot are presented in Section 5. Finally, a brief conclusion of the study is given in Section 6.

Tracking Error-Based System Model
In this paper, the mobile robot is illustrated in Fig. 1. The velocities of two driven wheels result in linear velocity ν = (ν l + ν r )/2 and angular velocity ω = (ν l − ν r )/L with the distance between wheels L, which are two control inputs of the mobile robot, u = [ν, ω]. The traditional unicycle model is written for a mobile robot as follows: where x and y are the position, θ is the heading angle, ν is the linear velocity, ω is the angular velocity of the mobile robot.
The target path with respect to the inertial reference frame fixed to the motion ground is defined by a reference state vector q r = (x r , y r , θ r ) T and a reference control vector u r = (ν r , ω r ) T . The error state e = [e 1 , e 2 , e 3 ] T expressed in the frames on the mobile robot is written as: where T(θ ) is the transformation matrix formulated as below: The tracking error-based model is derived by taking the time-derivative of the error state in (2) and the unicycle model in (1) into account as follows: where e 1 is the longitudinal error, e 2 is the lateral error and e 3 is the heading angle error. The tracking error-based model (3) is linearized around the target path (e 1 = e 2 = e 3 = 0 ) as follows: Finally, it can be written in the state-space form as follows: where the state and control vectors are written as e = e 1 e 2 e 3 T (6) where ν e = ν − ν r and ω e = ω − ω r .

Remark 1
The tracking error-based system model is fully controllable when either the linear velocity reference ν r or the angular velocity reference ω r is nonzero, which is a sufficient condition.

Traditional Tracking Error-Based Control
The traditional tracking-error-based control algorithm for a mobile robot is formulated in this section. The total control input applied to the mobile robot is calculated as the summation of the feedback control action u b and the feedforward control action u f as follows: The feedback controller generates the differences between the actual and reference control inputs while the feedforward control actions are the reference control inputs. The traditional feedback and feedforward control actions are formulated in following subsections.

Feedback Control Action: Model Predictive Control
A mobile robot can be described by a linear continuous-time model: where e ∈ R 3 is the state vector and u e (k) ∈ R 2 is the control input vector. The matrices A and B are found from the tracking error-based system model in (5). The input constraints for the mobile robot are defined for all t ≥ 0 as follows: The cost function is written as follows: where N p = 20 and N c = 5 represent the prediction and control horizons, u e is the input change, and T is the matrix of the input vectors from sampling instant t k to sampling instant t k+N c . Since the sampling time of the experiments is equal to 200 millisecond, the prediction and control horizons are respectively equal to 4 second and 1 second. The positive-definite weighting matrices Q 3×3 and R 2×2 are defined as follows: The following plant objective function is solved at each sampling time for the MPC: The convex optimization problem in (14) is solved for the current error state informationê(t k ) in a receding horizon fashion. The steps for the implementation of the MPC algorithm are summarized as below: 1. Measure or estimate the current error statesê(t).

Obtain
The MPC problem is thereafter solved for the next sampling instant over shifted prediction and control horizons. The control input generated by the MPC u * e is the feedback control action u b : In tracking error control scheme, the designed MPC minimizes the tracking error between the target path and the measured position of the mobile robot, and finds the differences between the actual and reference control inputs. Therefore, the feedback control inputs generated by the MPC are not the actual control inputs, which are sent to the mobile robot. We will formulate traditional feedforward control actions in the next subsection 3.2.

Feedforward Control Action
In open-loop control, the feedforward control laws can only drive a mobile robot on a target path if there exist no uncertainties and initial state errors. Feedforward control inputs ν r and ω r are derived for a given target path (x r , y r ) by using the unicycle model (1).
The linear velocity reference, i.e., ν r , for a mobile robot is derived for a target path (x r , y r ) defined in a time interval t ∈ [0, T ] as follows: where the sign ± is the desired driving direction of the mobile robot (+ for forward, − for reverse). The heading angle reference is derived from (1) as follows: where γ = 0, 1 is the desired driving direction of the mobile robot (0 for forward, 1 for reverse) and the function arctan 2 is a four-quadrant inverse tangent function. The angular velocity reference, ω r , for a mobile robot is derived by taking the time-derivative of (17) for a given target path (x r , y r ) defined in a time interval t ∈ [0, T ] as follows: Remark 2 The necessary condition in the path generation is that the target path must be twice-differentiable, and the linear velocity reference must be nonzero, i.e., ν r = 0.

Tracking Error Learning Control
The tracking error-based model is linearized around a target path by assuming that the longitudinal, lateral and heading angle errors are around zero. Therefore, the mismatch between the tracking error-based model and real system might result in unsatisfactory control performance when the mobile robot is not on-track. Moreover, there always exist uncertainties and unmodeled dynamics, which cannot be modeled, in outdoor applications.
In the TELC, the longitudinal and lateral error dynamics are used to train the learning algorithm, which is required to learn the uncertainties and unmodelled dynamics and to keep the system on track. The learning algorithm generates the references for the control inputs. In other words, it learns the dynamics of the real system.
Like (8), the control inputs consisting of the feedback and feedforward control actions are written as follows: where ν b and ω b are the traditional feedback control actions formulated in Section 3.1, while ν f and ω f are new feedforward control actions that are updated by the tracking error learning algorithm. The new feedforward control actions are formulated as follows: where ν r and ω r are the traditional feedforward control actions formulated in (16) and (18), respectively. k ν,1 and k ν,0 are the coefficients to update the linear velocity reference and k ω,1 and k ω,0 are the coefficients to update the angular velocity reference. TELC structure for a mobile robot is shown in Fig. 2. In the next subsection, we will formulate the update rules for these coefficients.

Linear Velocity
The requirement for the Lyapunov stability, i.e., e 1 = 0, is satisfied for the selection of the coefficients for the linear velocity in (21). As can be seen from (5), the linear velocity appears in the channel of the longitudinal error e 1 . Therefore, we use the following squared first-order longitudinal error dynamics as the cost function:  where λ ν is a positive constant, i.e., λ ν > 0. It is implied that if the cost function converges to zero, i.e., E ν = 0, then the robust control performance conditionė 1 + λ v e 1 = 0 is satisfied so that the longitudinal error converges to zero.
Gradient descent, which is a first-order iterative optimization algorithm for finding the minimum of a function, is used to minimize the cost function E ν . In this approach, steps are taken proportional to the negative of the gradient of the closed-loop error function, i.e., E ν , to find the minimum of the cost function. The cost function is minimized to decide the coefficients in (21) as follows: where α ν is the learning coefficient and positive, i.e., α ν > 0. It is re-written by using the chain rulė Equation (23) is inserted into the equation above, it is then obtained aṡ Considering (4), ∂ (ė 1 +λ ν e 1 ) ∂ ν = −1 is obtained and inserted into the equation above, it is obtained aṡ If total control input for the linear velocity applied to the mobile robot (19) and the feedforward control action for the linear velocity (21) are inserted into (27), the adaptation of the coefficient for the linear velocity is written as follows: The bias term k ν,0 for the linear velocity is computed by using the same procedure and found as:

Angular Velocity
First we take the time-derivative of the lateral error e 2 so that the angular velocity ω can appear in the same channel with the lateral error e 2 . It is obtained considering (4) as follows: The requirement for the Lyapunov stability, i.e., e 2 = 0, is satisfied for the selection of the coefficients for the angular velocity in (22). Therefore, we use the following squared second-order lateral error dynamics as the same cost function as follows: where λ ω is a positive constant, i.e., λ ω > 0. It is implied that if the cost function converges to zero, i.e., E ω = 0, then the robust control performance conditionë 2 +2λ ωė2 +λ 2 ω e 2 = 0 is satisfied so that the lateral error converges to zero.
As explained in Section 4.1, the gradient descent method is used to find the minimum of the cost function E ω and to decide the coefficients in (22) as follows: where α ω is the learning coefficient and positive, i.e., α ω > 0. It is re-written by using the chain rulė Equation (31) is inserted into the equation above, it is then obtained aṡ Considering (4) and (30), ∂ (ë 2 +2λ ωė2 +λ 2 ω e 2 ) ∂ ω = −ν r is obtained and inserted into the equation above, it is obtained aṡ If total control input for the angular velocity applied to the mobile robot (20) is inserted into (35) considering the feedforward control action for the angular velocity (22), the adaptation of the coefficient for the angular velocity is written as follows: The bias termk ω,0 for the angular velocity is computed by using the same procedure and found as:

Stability Analysis
The summation of the cost functions used for the linear and angular velocities is used to formulate the Lyapunov function as follows: The Lyapunov function is positive semi-definite, i.e., V ≥ 0.
To check the stability of the tracking-error learning algorithm, the time-derivative of the Lyapunov function above is taken as follows: It is re-written by using the chain rule as follows: where, g(γ) represents the derivative of the Lyapunov function V with respect to the variables other than the coefficients in the formulations of the linear and angular velocities.
The time-derivatives of the coefficienting terms in (24), (29), (32) and (37) are inserted into the aforementioned equation, then the time-derivative of the Lyapunov function is obtained as follows: If the learning coefficients for the linear and angular velocity references are large enough, the time-derivative of the Lyapunov function is negative, i.e.,V < 0. This implies asymptotically stability of the learning algorithm.

Global Minima
The most important concern in the tracking error learning algorithm is that the system might reach some local minima and stay in these local minima. In this section, we will show that there are no local minima for the formulation of the tracking-error learning algorithm. If the second derivatives of the cost functions with respect to variables have the same sign, then the cost functions do not have a change in the curvature sign through the variables. This implies that the cost functions do not have local minima through these variables.

Linear Velocity
If we take the second derivative of the cost function E ν for the linear velocity with respect to k ν,1 , it is obtained as follows: The chain rule is applied to the equation above First ∂ (ė 1 +λ ν e 1 ) ∂ ν = −1 is obtained considering (4) and inserted into the equation above. Also, total control input for the linear velocity applied to the mobile robot (19) and the feedforward control action for the linear velocity (21) are inserted into the equation above. Then, (43) is obtained as follows: The second derivative of the cost function with respect to the bias coefficient k ν,0 is computed by using the same procedure as follows: Equations (44) and (45) show that the sign of the curvature of the cost function for the linear velocity (23) is always positive; therefore, there are no local minima, which indicate that the system reaches to the global minimum. After reaching the global minimum, since α v is a constant and v r is bounded, the coefficient update algorithms (28) and (29) show that coefficients converge to a finite value. A finite value for the coefficients in steady-state results in a bounded feedforward control action (21).

Angular Velocity
If we take the second derivative of the cost function E ω for the angular velocity with respect to k ω,1 , it is obtained as follows: The chain rule is applied to the equation above First ∂ (ë 2 +2λ ωė2 +λ 2 ω e 2 ) ∂ ω = −ν r is obtained considering (4) and (30) and inserted into the equation above. Then, total control input for the angular velocity applied to the mobile robot (20) and the feedforward control action for the angular velocity (22) are inserted into the equation above. Then, (47) is obtained as follows: The second derivative of the cost function E ω with respect to the bias coefficient k ω,0 is computed by using the same procedure as follows: Equations (48) and (49) show that the sign of the curvature of the cost function for the angular velocity (31) is always positive; therefore, there are no local minima, which indicate that the system reaches to the global minimum. After reaching the global minimum, since α ω is a constant, v r and ω r are bounded, the coefficient update algorithms (36) and (37) show that coefficients converge to a finite value. A finite value for the coefficients in steady-state results in a bounded feedforward control action (22).

Mobile Robot
The mobile robot, termed TerraSentia, is constructed entirely out of 3D printed construction as shown in Figs. 3 and  4, which leads to an extremely light-weight robot (14.5 lbs) and has been proven to be structurally resilient to field conditions during an entire season of heavy operation in Corn, Sorghum, and Soybean farms in Illinois [15]. We posit that this robot is an example of the potential of additive manufacturing (3D printing) in creating a new class of agricultural equipment that works in teams to replace, minimize, or augment traditional heavy farm equipment. In addition, lightweight equipment has several benefits, it is easier to manage, has better endurance, safer to operate in general, and leads to lower ownership cost. On the other hand, the ultralight robot described here mitigates many of these challenges, yet, it leads to a uniquely challenging control problem in uneven and soil terrain in crop fields. The difficulties in control arise from complex and unknown wheel-terrain interaction and wheel slip.
The placement of hardware is illustrated in Fig. 5. One Global Navigation Satellite System (GNSS) antenna has been mounted straight up the center of TerraSentia, and the dualfrequency GPS-capable real-time kinematic differential GNSS module (Piksi Multi, Swift Navigation, USA) has been used to acquire centimeter-level accurate positional information at a rate of 5 Hz. Another antenna and module have been used as a portable base station and has transmitted differential corrections. There are four brushed 12V DC motors with a 131.25:1 metal gearbox (Pololu Corporation, USA), which are capable of driving an attached wheel at 80 revolutions per minute. A two-channel Hall-effect encoder (Pololu Corporation, USA) for each DC motor is attached to measure velocities of the wheels. The Sabertooth motor driver (Dimension engineering, USA) is a two-channel motor driver that uses digital control signals to drive two motors per channel (left and right channel) and has a nominal supply current of 12 A per channel. An onboard computer (1.2GHz, 64bit, quad-core Raspberry Pi 3 Model B CPU) acquires measurements from all available sensors and sends control signals to the Sabertooth motor driver in the form of two Pulse-width modulation signals.
All available measurements from all its onboard sensors (GNSS and encoders) are fed to a state estimator, i.e., extended Kalman filter, to estimate heading angle of the mobile robot. In every time instant, estimates are fed to calcu-  late the errors with respect to the inertial reference frame fixed to the motion ground and the estimated heading angle is fed to the transformation matrix to calculate the tracking errors in the frame on the mobile robot. Then, tracking errors are fed to the TELC algorithm, which generates the linear and angular velocity references to track the target path. Then, the linear and angular velocity references are controlled by a proportional-integral-derivative type motion controller -in other words, the robot's low-level controller -by using feedback from encoders attached to the motors to determine the required control signals in the form of the Pulse-width modulation signal. Thus, the tracking of given reference command signals ensures that the robot's desired velocities are maintained. The motion controller outputs the modified command signals to the Sabertooth Motor Driver which correlates the given control signals to the necessary output voltages needed by the DC motors.

State Estimation
An Extended Kalman Filter (EKF) is used for the state estimation in real-time because one GNSS antenna is not enough to obtain the heading angle of the mobile robot. We require heading angle information to calculate the heading angle error and also the rotation matrix. The inputs of the EKF are position information coming from the GNSS, and linear and angular velocities coming from the encoders and gyro. The outputs of the EKF are the position of the mobile robot on xand y-coordinate system and the heading angle of the mobile robot.
The discrete-time unicycle model used for the implementation of the EKF is written as follows: where T s is the sampling interval. The general form of the estimated system model is written: where f ( q k , u k ) is the system model (50), h( q k ) is the measurement function and z k = [x k , y k , ν k , ω k ] T is the measurements. The difference between the system model and realtime system is the process noise w k and observation noise v k in the measurement model. These noises are assumed to be independent and zero mean multivariate Gaussian noises with covariance matrices W k and V k , respectively [4]: where the weighting matrices are defined ad follows:

Experimental Results
The experiment was carried out in off-road terrain and the GNSS is used as the ground truth measurements. The learning rate for the linear velocity α ν is set to 0.15 and 0.05 for the coefficients k ν,1 and k ν,0 , respectively, while the learning rate for the angular velocity α ω is set to 0.1 and 0.05 for the coefficients k ω,1 and k ω,0 , respectively. The positive constants λ ν and λ ω are set to 3. The sampling time of the experiment is equal to 200 milliseconds. An 8-shaped path is used as the reference path for the mobile robot to evaluate the path tracking performance of the TELC algorithm. The 8-shaped path consists of two straight lines and two smooth curves as illustrated in Fig. 6. The linear velocity reference is set to 0.3 m/s throughout the path generation. The angular velocity reference is zero for straight lines while it is set to ± 0.05 rad/s for curved lines. Thus, the desired reference trajectory x r , y r and θ r is generated by considering the unicycle model in (1) in the paper. The target and actual paths are shown in Fig. 6. The mobile robot controlled by the developed TELC algorithm can track the target path precisely.
The Euclidean errors for the traditional tracking error control and TELC algorithms are shown in Fig. 7. The mean values of the Euclidean errors for the traditional tracking error control formulated in Section 3 and TELC algorithms are respectively 20.31 cm and 9.11 cm. The TELC results in more precise mobile robot path tracking performance when compared to the traditional tracking error control method. This demonstrates the learning capability of the TELC algorithm in the outdoor environment.
The total linear velocity applied to the mobile robot is shown in Fig. 8. It is observed from the reference and measurements for the linear velocity that the low-level controller provides accurate tracking of the linear velocity reference despite the high noisy measurements. Moreover, the feedback control action generated by the MPC and the feedforward control action generated by the TELC algorithm are shown in Fig. 9. The feedback control action for the linear velocity is around zero as expected and the feedforward control action for the linear velocity takes the overall control action of the linear velocity of the mobile robot. Furthermore, the coefficients in the feedforward control action for the linear velocity are shown in Fig. 10. The nominal values for the coefficients k ν,1 and k ν,0 must be respectively 1 and 0 in the absence of uncertainties. These coefficients are different than the nominal values throughout experiments and varying due to the varying soil conditions in the outdoor environment.
The total angular velocity applied to the mobile robot is shown in Fig. 11. It is observed from the reference and measurements for the angular velocity that the low-level controller provides accurate tracking of the angular velocity reference despite the high noisy measurements. Moreover, the feedback control action generated by the MPC and the feedforward control action generated by the TELC algorithm are shown in Fig. 12. The feedback control action for the angular velocity is around zero as expected and the feedforward control action for the angular velocity takes the overall control action of the angular velocity of the mobile robot. Furthermore, the coefficients in the feedforward control action  Fig. 7 Euclidean error calculated using raw GNSS data. The mean values of Euclidean errors for the traditonal tracking error-based controller formulated in Section 3 and TELC algorithm are respectively around 20.31 cm and 9.11 cm. This shows significant reduction on tracking error. for the angular velocity are shown in Fig. 13. The nominal values for the coefficients k ω,1 and k ω,0 must be respectively 1 and 0 in the absence of uncertainties. These coefficients are different than the nominal values throughout experiments and varying due to the varying soil conditions in the outdoor environment. The angular velocity reference is equal to zero while the mobile robot is tracking straight lines. Therefore, the coefficient k ω,1 is constant, which can be seen from the update rule in (36). As a result, the only coefficient k ω,0 is updated to decrease the unmodeled effects in real-time.  Fig. 9 Control signals for the linear velocity. TELC algorithm learns the mobile robot dynamics so that the feedback control action is around zero while feedforward control action is updated and different than zero throughout the experiment.   Fig. 12 Control signals for the angular velocity. TELC algorithm learns the mobile robot dynamics so that the feedback control action is around zero while feedforward control action is updated and different than zero throughout the experiment.

Conclusions
In this paper, a novel TELC algorithm has been developed for precise path tracking and experimentally validated on a mobile robot in the outdoor environment. In case of the plant-model mismatch, the TELC algorithm learns mobile robot dynamics by using the tracking error dynamics and updates the feedforward control actions. Therefore, the feedforward controller gradually eliminates the feedback controller from the control of the system once the mobile robot has been on-track. The experimental results on the mobile robot show that the TELC algorithm ensures precise path tracking performance as compared to the traditional tracking error-based control algorithm. The mean value of the Euclidean errors for TELC is 9 cm approximately in offroad terrain.