Enhanced MPC for Omnidirectional Robot Motion Tracking Using Laguerre Functions and Non-Iterative Linearization

To cope with the computational complexity of the traditional model predictive control, and to reduce the error of the linearization and prediction processes, this paper presents an improved model predictive control algorithm, based on Laguerre functions, for the motion tracking of an omnidirectional mobile robot with non-iterative linearization. To design the controller, the kinematic modeling of the three-wheeled omnidirectional robot was first performed. Next, the model predictive algorithm was developed using Laguerre functions to parametrize the control signals. At each sampling instant of the online optimization, a linearization along the predicted trajectory, based on the duality principle between optimal control and stochastic filtering, was carried out to deal with the nonlinearities of the system. This non-iterative linearization provides better approximation of the nonlinear behavior which improves the prediction process and the tracking performance, with lower computational burden due to the use of the Laguerre functions. The new controller is applied to solve the trajectory-tracking problem of an omnidirectional robot. A comparative study between the proposed controller, the conventional model predictive control, and the nonlinear model predictive approach is made. Simulation results confirm that the new controller outperform the latter ones regarding tracking accuracy with considerably low computational effort. The feasibility of the controller is demonstrated by real-time experiment on the Robotino-Festo omnidirectional mobile robot.


I. INTRODUCTION
Nowadays, wheeled mobile robot (WMR), the fruit of combination of the latest sensing technology with advanced control strategies, becomes an important player in modern society [1], [2]. Due to their abilities to increase productivity, and improve work environments safety, WMRs are increasingly entrusted to occupy significant roles in variant sectors such as agriculture, space, surveillance, and mining [3], [4], [5], [6]. In an intelligent mining industry, these robots are expected to act autonomously while completing complex tasks such as automated transportation, automatic inspection and exploring The associate editor coordinating the review of this manuscript and approving it for publication was Ton Duc Do . hazardous unsafe areas [7], [8]. One of the key operating conditions of WMR is trajectory tracking which aims to converge the robot's actual position toward a predefined path which can be uploaded as an offline map or generated online by path-planning methods [9]. An omnidirectional mobile robot (OMR) is a special type of WMR with the abilities to move instantly in all directions without any reorientation, which gives it a great advantage to complete the tracking task in such unpredictable dynamic environments [10], [11]. Tracking accuracy and constraints handling are two main criteria in developing the control algorithms along with the ability to deal with nonlinear and multivariable characteristics of the systems. In recent years, many control strategies have been proposed to solve the trajectory-tracking problem of the WMR [12], [13]. In [14], a PI controller tuned by an adaptative fuzzy logic was used as a high-level controller for an OMR. The fuzzy-PI, which corrects the kinematic errors, was paired with a linear quadratic regulator (LQR) as a low-level control of the velocities and accelerations. This combination showed significant improvement over a PI control alone; however, the use of an LQR for low-level control caused a deviation between the desired and the actual paths which greatly increased in the real-time application and led to unsatisfactory results. A control scheme taking into consideration the kinematic and dynamic uncertainties of the OMR was proposed in [15]. A sliding-mode-based observer was used to estimate these uncertainties, then a feedback linearization controller was used to handle such uncertainties. The controller showed a good trajectory-tracking performance. Nonetheless, since these methods cannot handle constraints directly, saturation was used to limit the control signals, which is not acceptable in practice. Another controller for the OMR was presented in [16], which uses a linearizing adaptative algorithm for the kinematic control. This causes some singularities in the control signals. Such singularities are dealt with by switching to a sliding mode controller around them. Indeed, the resulting approach helps to reduce the control effort and eliminate the singularities; however, the risk of chattering appears which may harm the actuators. In [17], a bioinspired backstepping controller was proposed. It performs the tracking task while reducing the large velocity jumps that occur in the traditional backstepping control; however only constant reference speeds were considered. Model-free control schemes were used in [18] and [19]. Using a visual serving strategy in [19] provides a unified algorithm for tracking and regulation. However, these model-free methods ignore useful information from the system model, and they are less adequate compared to systematic methods. In addition, when it comes to harsh environments, physical and operational constraints are expected, and need to be taken into consideration in which the previous methods are limited.
To overcome the above-mentioned problems, one can consider the model-based predictive control (MPC). It is one of the advanced techniques that now has a huge impact on the development of control systems and on research in feedback control areas and has achieved remarkable success in the practical field [20], [21]. This success of the MPC is attributed to many reasons. First, due to the finite control horizon, nonlinear systems dynamics, and process inputs, state and output constraints can be handled directly by the MPC algorithms. Moreover, the prediction aspect of this method over a future time horizon makes it possible to anticipate and remove the effect of disturbances, which leads to better tracking of the future trajectory. Finally, MPC principles and algorithms are relatively easy to understand and to extend to multi-input multi-output systems [22], [23]. The general idea of MPC is to solve an online open-loop optimization problem at each sampling time, and to find a trajectory of future manipulated variables that optimize the future behavior of the system outputs within a limited time window. Traditionally, MPC was only applied to sufficiently slow systems due to the high computational cost required to perform the online optimization, but thanks to increased hardware efficiency, MPC is now applicable to systems with faster dynamics.
The MPC can explicitly handle nonlinearities, and since most systems are inherently nonlinear, many nonlinear model predictive control (NMPC) algorithms have been developed using iterative solutions to solve the optimization problem [24]. In [25], a basic NMPC algorithm that uses the gradient descent method was applied to solve an OMR trajectory tracking with obstacle avoidance. The algorithm gave effective results in both simulation and real-time experiments; however, in the experiments, due to the high computational load, the movement direction and speed were fixed and only the orientation was controlled by NMPC. Using nonlinear systems directly in the NMPC algorithm often leads to undesired complexity and high computational demand. Therefore, studies have been conducted to overcome these problems. In [26], the nonlinear system was modeled in the Weiner model structure, which divides the system into two parts, a linear time invariant system followed by a static nonlinear element. Then, linear MPC was used for the linear part and polynomial representation for the nonlinear part; however, for the Weiner model to properly describe the nonlinear aspects of the system, prior knowledge of these nonlinearities should be available, which is not the case for most systems, and a simple polynomial representation does not give an accurate description of these nonlinearities. Similarly, in [27], a NARMA-Volterra model was selected to represent the brain and used to predict neural activity. In addition, Laguerre functions were introduced to reduce the number of estimation parameters in the Volterra model, and then linear MPC was applied to solve the optimization problem. Nonetheless, Volterra models exhibit high level of complexity, which makes it impractical in modeling strong nonlinearities, and in order to reduce it, prior knowledge of the nonlinear aspect is required. Another popular way to deal with nonlinearities is to linearize the system at each time instant, along the desired trajectory, and to use this linear approximation to compute the predicted future trajectory and then apply the well-known linear MPC [28]; however, when using an approximation at the current time instant to predict the whole future trajectory, the error of the linearization will accumulate, which leads to a poor prediction process. In [29], a duality-based control algorithm has been developed to control a two-wheeled differential robot. The approach uses the duality between optimal control and stochastic filtering to approximate the manipulated variables, and to linearize the nonlinear systems. The linearization and prediction processes were based on the duality without dependence on the future control signals. The algorithm led to better approximation of the nonlinear plants compared to other linearization-based methods; however, the algorithm consists of two passes, forward for linearization and prediction, and backward for smoothing and control signals approximation, which double the computation time. In addition, it cannot explicitly handle constraints.
Even with today's advanced computing technology, reducing the computational cost in both MPC and NMPC remains a challenge, especially when dealing with systems of fast complex dynamics. To cope with this issue, many studies have been carried out in the last few years [30], [31], [32]. A fast NPMC algorithm was presented in [33] for aerial vehicles. The 1-norm was used in the cost function along with the Resilient Propagation to solve the optimization where only the sign of the partial derivative is used. The optimized approach was validated on small aerial vehicles with limited computation capability. Nonetheless, using a simple 1-norm in the evaluation function reduces the tracking performance. Deep-learning-based methods are powerful tools to reduce optimization's time [34], [35]. In [36] Neuraldynamic optimization was considered where the MPC was iteratively transformed to a quadratic programing problem, which is solved using primal-dual neural network. The proposed algorithm was applied to solve the trajectory tracking of a mobile robot and significantly reduced the computation complexity; however, when using a nonconvex cost function, the algorithm can easily get trapped in a local minimum, hence the global solution is hard to obtain. In [37], a learning-by-imitation scheme for mobile medical robot was presented. NMPC was used with the optimization solved by a one-layer projection neural network. Although these methods can reduce the computational cost, a large data set is needed to train and optimize the network, which is hard to get from an unpredicted environment like underground mines. Another method in literature is to introduce a set of discrete orthonormal basis functions, called the Laguerre functions, to parametrize the control signals. This allows the realization of a longer control horizon with fewer optimization parameters, which consequently reduces the computational time [38], [39]. In [40], Laguerre functions were used to parametrize both linear MPC and NMPC. The resulting algorithms were compared to other approaches and showed significant improvement regarding the computational cost and the number of optimization variables; however, only simulation results were given without real-time implementation.
In [41], the effect of the parametrization using Laguerre functions on the feasibility and performance of the MPC was analyzed, and it showed great improvement on the feasibility while maintaining a good performance; however, only dual mode MPC, which uses an infinite horizon for prediction, was considered. Recently in [42], an MPC controller parametrized by Laguerre functions was used to control a fast-switching electronic DC-DC converter allowing the use of a significantly short sampling time. Laguerre functions were first used with MPC in [43], which later has been expanded in [44] where a comprehensive study on the use of Laguerre functions with MPC is given, and which all the above-mentioned studies refer to; however, only linear systems that are supposed to remain constant during the entire prediction process are considered.
Inspired by these ideas and motivated to find a more practical tracking algorithm that deals with nonlinearities accurately while maintaining good performance and low computational demand, this paper proposes an enhanced MPC algorithm, based on Laguerre functions (LMPC), for trajectory tracking of OMR. To ensure a good tracking performance and reduce the linearization's error, this controller deals with nonlinearities by noniteratively linearizing the system along the predicted trajectory, which, to the best of our knowledge, has never been done before. The duality between optimal control and stochastic filtering is used to compute the linearization points, which allows the linearization of the system without dependence on the to be computed control variables. Contrary to existing approaches, the duality is used only for the prediction, then it is combined with an optimizer to compute the optimal solution. This will enhance the prediction process, but also increase the computation cost. To compensate for this increase, Laguerre functions will be used to parametrize the control variables, which will reduce the number of optimization variables and consequently the computational burden. This makes it suitable for real-time implementation allowing the robot to make fast decisions and swiftly adapt to sudden changes in complex environments. The existing Laguerre parametrization method is further developed to consider the change of the linear system at each prediction instant. The performance of the proposed algorithm is evaluated by simulation and by experiment on the Robotino-Festo OMR and a comparative study of accuracy and computational efficiency is carried out with the traditional MPC and NMPC. The main contributions of this paper are summarized as follows: 1. The non-iterative linearization along the future optimal state trajectory prevents the accumulation of the linearization's error, which gives a better approximation of the nonlinear behavior and improves the prediction process and consequently the tracking performance. 2. Parametrization using Laguerre functions reduces the computational cost of the online optimization allowing real-time implementation with longer prediction horizon for better performance.
This paper is organized as follows. In Section II, the kinematic model of the OMR is presented along with the statespace representation and the transition matrix of linearization. An introduction to Laguerre's functions and the LMPC development is done in Section III. In Section IV, a comparison with the NPMC and the traditional linear MPC approaches is illustrated with simulation and experimental results. A conclusion is given in Section V.

II. MODELING OF THE OMNIDIRECTIONAL MOBILE ROBOT
For this study, a three-wheels OMR is considered. This robot has three degrees of freedom and can achieve any translational and rotational movements regardless of its initial orientation. The three omni-wheels, placed at 120 • from each other, allow the robot to turn on the spot and to move in any direction (Fig. 1). The method developed in this paper is a model-based algorithm, hence an accurate kinematic model is essential to accurately perform the trajectory tracking tasks. Fig. 2 illustrates the location of the robot using global and local (moving) coordinates. Let (x, y, θ) denote the position and orientation of the robot in the global frame, and (x r , y r , θ r ) denote the position and orientation in the local frame. The local coordinates can be transposed into the global coordinates by  where T is the transformation matrix that maps the local coordinates into the global coordinates Let q = x y θ ν x ν y ω T be the state vector of the vehicle with position (x, y), orientation (θ), the components of translational velocity (v x , v y ) and rotational velocity (ω). The state evolves through translational accelerations (a x , a y ) and rotational acceleration (a θ ) which represent the manipulated variables, then the kinematic equations can be written aṡ Remark 1: The relation between the wheels' velocities and the translational and rotational velocities of the OMR is as follows: Local and global coordinates.
where wheel i is the rotational speed of the ith wheel, r is the wheel's radius, and R is the distance from the center of the robot to the wheel. However, since the translational and rotational accelerations of the center of gravity of the robot are our control variables, this relation is not used. By using the forward differences method to approximate the state and input variables, we obtain the following discretetime state-space representation of the kinematic model which in compact form becomes: with t is the simulation step, f (q k ) is a nonlinear function of the state, B is the input matrix, z k is the output vector which contains the position, orientation, and velocities of the OMR, and C is the output matrix. The proposed controller is based on linearization, thus the transition matrix to the linearized system, i.e. the Jacobian matrix, is needed and can be obtained by (5), as shown at the bottom of the next page, which will be used to compute the linear approximation of the system at each prediction step.

III. CONTROL SYSTEM ARCHITECTURE
The main objective of robot control is to reach the desired trajectory with the desired orientation and to stay on it for all VOLUME 10, 2022 future time. To achieve this goal, an MPC algorithm based on Laguerre functions denoted as LMPC, is proposed. The LMPC controller consists of two major parts, a non-iterative linearization and a parametrization using Laguerre functions.

A. NON-ITERATIVE LINEARIZATION
Since nonlinear optimal control problems are hard to solve and computationally demanding, linearization is often used.
Choosing the linearization points is the main problem of linearization approaches. Using the optimal trajectory as linearization points would be the best solution but since they depend on the control to be computed and the control depends on them, iterative methods are required [29]. Iterative Linear Quadratic Regulator (iLQR) is one of the approaches that uses iterative linearization. It uses the standard linear quadratic regulator to compute the optimal increments of the manipulated variables, re-linearizes the system around the obtained optimal trajectory, and then repeats this process until convergence is reached [45]. Another method based on iterative linearization is NMPC. It can deal with nonlinear cost functions and outputs functions by solving an open loop optimization using a nonlinear optimization algorithm that, in most cases, computes gradients of the cost function which depends on model's gradients [23]. These methods can give high performance; however, they require a high number of iterations and are highly computationally demanding which make them unfeasible in practice. To avoid applying iterative algorithms, we are going to use the duality between stochastic filtering and optimal control to achieve noniterative linearization by approximating the future optimal trajectory. To use such duality, we first consider the stochastic dynamics for the control problem as: where w k and σ k are fictitious Gaussian noise with covariances V k and W k , respectively. The cost function to be minimized at each simulation step is considered quadratic with no final cost and is given by: with e k = s k − Cq k where s k are the desired set points, which act as the observation in the duality problem, N p is the length of the prediction horizon, and Q k , R k are known symmetric positive definite matrices. The stochastic dynamics for the dual estimation problem is considered as:q The duality between the optimal control problem (6) and (7), and the estimation dynamics (8) is established by choosing . The computation of the optimal linearization points can be done using the following Kalman filter equations: with K k is the Kalman gain matrix, P k is the estimation error covariance matrix [29], [46] and A k is the transition matrix (5).

B. CONSTRAINTS
The key advantage of MPC is the capability to handle inequality constraints explicitly. Also, OMR exhibits numerous physical and operational constraints that need to be satisfied by the control algorithm. First, there are limits on the acceleration of the OMR, which in this case represent the control variables and can be expressed as follows: where u min and u max are vectors of the same size as u k that contain the lower and upper acceleration limits respectively. Furthermore, when tracking a reference trajectory, the robot velocities must not exceed the velocity constraints. In this study, v x and v y have the same maximum value denoted v max , and the maximum rotational speed is denoted ω max , then the speeds constraints can be written as: Finally, using (4), the operational constraints of the OMR can be written together as follows

C. MPC WITH LAGUERRE FUNCTIONS
The second part of the LMPC algorithm is to compute the optimal control action by minimizing the quadratic cost function (7) using the MPC method with Laguerre functions. Although linearizing the system at each prediction step will give more accurate approximation, it is more demanding computationally. Therefore, we introduce the Laguerre functions in the problem formulation to solve the open-loop optimization.

1) INTRODUCTION TO LAGUERRE FUNCTIONS
To reduce the computational complexity of the standard MPC, we approximate the future control trajectory by combining a set of orthonormal functions (Laguerre Functions) linearly with few coefficients, which helps to cover the entire control horizon without the need for massive optimization parameters [38]. The Laguerre orthonormal sequence is described by the following z-transforms: where a is the scaling factor of the Laguerre sequence, and 0 ≤ a < 1 for the stability of the sequence [44]. Let l i (k) be the inverse z-transform of i (z, a), then the set of discretetime Laguerre functions can be written in vector form as: Taking advantage of the sequence realization We can describe the sequence by the following state space representation: with A l (N × N ) and the initial condition L(0) given by: where β = 1 − a 2 . The orthonormality of Laguerre functions can be expressed in the time domain by: Finally, this set of Laguerre functions can be used to capture the response H (k) of an arbitrary system by: where c 1 , c 2 , . . . , c N are the coefficients to be determined using the system data, and N is the number of terms used to capture the response [44].

2) LAGUERRE-BASED MPC
The linear approximation of the kinematic model (4) at a random time instant k is given as: Since the OMR has three motors, i.e., three control inputs, let the matrix B be partitioned into and define where A k,i is the transition matrix computed at the ith future instant, and m is the current prediction instant. Here, the linearization at every prediction sample is considered, and A k,i is computed using the duality principle. Using (17), each control variable can be approximated at an arbitrary future instant with where k is the initial time of the moving horizon, m is the future instant where k ≤ m ≤ k + N p − 1, i = 1, 2, 3 implies the ith control variable, c i j are the coefficients, which are functions of the initial time of the moving horizon, N i is the number of parameters used to capture the ith control variable, VOLUME 10, 2022 η i is a vector containing the coefficients, and N p is length of the prediction horizon. By using (18) and (21), the prediction of the future state variables can be written as: Here we have taken into consideration that the matrix A k is not constant during the prediction process, it is changing at each future instant. With a sufficiently large prediction horizon, the orthonormal property becomes Using (21) and (23), the sum of the future control inputs can be computed by: where R L is a block-diagonal matrix where each block contains one of the elements of R k on its diagonal. Define Q L = C T Q k C, putting (22) and (24) in the cost function (7) will lead to the following form: By setting the partial derivative (relative to η) of the cost function (25) to zero, the optimal solution can be found as: and the first control action can be computed using Here L i (0) is the initial condition for the Laguerre functions of the ith input, and 0 i is a zero vector with the same dimension as L i (0).

Remark 2:
We note that the Laguerre functions parameters N and a can be assigned to each input variable independently of the others, which gives more flexibility in the control design.
Remark 3: Scaling factor a and the number of terms needed to approximate u k are closely related. If we set a = 0 and the number of terms N = N c the control horizon, we obtain the traditional MPC approach, and by choosing 0 < a < 1, we can achieve similar performance with N far less than N c and reduce the computational cost [44].

3) CONSTRAINED OPTIMAL SOLUTION
The Laguerre functions can also be introduced in the constraints' description, which gives more flexibility for the designer to force the constraints at any specified future instant. The constraints on the control variables at an arbitrary future time m is: with m = 0, 1, . . . , N p − 1, and U min , U max are the control bounds from (11). This can be written in terms of η as: The constrained optimal solution is obtained by solving a dual-quadratic problem using the Hildreth method [42], [44]. First the active set of the inequalities constraints is selected in matrix M act , then the Lagrange multipliers λ act are found using the Hildreth' algorithm, and finally the optimal constrained solution is computed by Algorithm 1 is the resulting algorithm named LMPC. It shows the two steps, the linearization and the control computing.
Unlike the algorithm used in [29], which uses the duality to linearize the system and approximate the control inputs, the LMPC uses the duality only for linearization. The control inputs are computed by introducing the Laguerre functions and performing online optimization. Contrary to existing methods, the parameterization using Laguerre functions takes into consideration the linearization at each future instant.
In the case of constrained control, the LMPC uses the Hildreth algorithm to identify the active constraints and compute the Lagrange multipliers. All the state variables are considered available for measurement. Therefore, the LMPC is a deterministic state feedback controller.

IV. CASE STUDIES ANS ANALYSES
In this section, the performance of the proposed LMPC algorithm will be analyzed. To show the outstanding performance, the traditional linear MPC and NMPC approaches are introduced for comparisons.

A. SIMULATIONS SETUP
The simulations are carried out using the MATLAB/Simulink software. The aim is to drive the OMR to track a given trajectory by minimizing the cost function (7). All the strategies compared will minimize the same cost function. The following approaches will be compared: 1) LMPC: this algorithm linearizes the system at each future prediction step using the duality principle (9), and then solves the optimality using Laguerre functions (29). The number of terms and the scaling factor will be the same for all input variables. 2) MPC: this method solves the optimization problem using a linearized model and standard optimization algorithm. Implementation is based on [44]. 3) NMPC: this algorithm solves the open-loop optimization using the nonlinear model. Implementation is based on the optimized algorithm in [23], where the active-set method is used for the minimization. The convergence threshold is set to 10 −8 and the maximum number of iterations is 10 3 . To ensure a fair comparison, some unifying conditions need to be set: 1) The prediction horizon N p is the same for the three strategies and it is set to N p = 20, which ensure the convergence and practical feasibility. 2) For both MPC and NMPC, prediction horizon N c is the same; however, term N c does not appear in the LMPC algorithm, since it has been replaced by the number of parameters N and scaling factor a. In [43], it has been shown that for a small N , N c and a are related by a ≈ e −5/N c . These tuning parameters were chosen through trial and error, therefore their optimality cannot be guaranteed. Nonetheless, they have demonstrated good performance in this study.

B. TRACKING ANALYSIS AND COMPUTATIONAL RESOURCES
To thoroughly evaluate the tracking performance, we use a desired trajectory given by reference speed components v xd = 0.5ms −1 and v yd = 0.5ms −1 , reference positions x d = v xd t; y d = v yd t m, orientation θ d = 0 rad, and angular velocity ω d = 0 rads −1 . The trajectory is supposed to be known along the prediction horizon, and all the state variables are considered available for measurement. We consider a set of H = 5 simulations, and a random uniformly distributed initial state 1], [−π/6, π/6], 0, 0, 0) T For each simulation h, and iteration k, the cost achieved for each approach is denoted J r (h, k), r = 1, . . . , 3. The desired reference minimum of the cost function is chosen to be 5. On each iteration, the method with the best cost, lower than 5, is taken as reference J best (h, k) to be compared to the other methods [29], i.e, J best = min 1<r<3 (J r (h, k), 5). The average cost ratio (ACR) over all simulations is computed by: Furthermore, to compare the tracking performance of different strategies, an additional index is used, which quantifies the tracking quadratic error [38], and it is given by with t = 0.07s. In this experiment, the control horizon for MPC and NMPC is set to N c = 5, and for the parameters of LMPC are chosen a = 0.5,and N = 3. Fig. 3 shows the ACR of each method for the first 10 iterations in the logarithmic scale. It can be clearly seen that after the first iteration, the initial cost realized by the LMPC is significantly lower than the ones realized by MPC and NMPC, and after 10 iterations, LMPC yields the best performance. Both the LMPC and NMPC converge after the third iteration with LMPC achieving a lower final cost, while MPC took much longer to converge. The numeric values of Table 1 represent the number of variables involved in the optimization process of each strategy, along with the average time for the first ten iterations. For MPC and NMPC, the number optimization variables are computed by multiplying the number of control inputs by the length of the control horizon N c , whereas for LMPC, it is equal to the number of parameters used to parametrize the manipulated variables. Only 9 variables are involved in the optimization process of the LMPC, while 15 parameters are involved in both MPC and NMPC.   This gives the LMPC a great computational advantage (100 times faster) over the NMPC while maintaining good performance. Even with linearization performed at each prediction instant, LMPC still managed to keep up with the MPC with only 1ms difference. Table 2 shows the mean-quadratic tracking errors for the three methods. It can be appreciated that LMPC significantly reduces the tracking error compared to MPC with almost the same computational demand, and it is not that far behind NMPC. In fact, in the orientation tracking, LMPC showed better performance than the other two methods. NMPC showed slightly lower M x and M y compared to LMPC, at the cost of higher computation time. This is due to the NMPC iterative aspect. As a result, LMPC can be considered a computationally effective method to obtain optimal results in practice.

C. EXPERIMENTAL RESULTS
In this section, the three algorithms are tested on the Robotino-Festo omnidirectional robot (Fig. 4). The whole system is controlled by an embedded PC to COM Express specifications with Intel i5, 2.4 GHz dual core, 8 GB RAM and 23 GB SSD. For the motor control, a 32-bit microcontroller is used. It generates the PWM signals for actuating the DC motors using a PID controller. The microcontroller  is also used to correct the sensors data. A planetary gear unit with transition ratio 32:1 is used between the drive shafts and omni-wheels [47]. The robot has a maximum translational  and rotational speeds of 2m/s and 2rad/s respectively. The algorithms are implemented using the Robotino MATLAB-Simulink toolbox. The robot accepts translational and rotational velocities as inputs, which are expected to be updated every 70ms. Since the compared approaches have accelerations as manipulated variables, integrators are included in the algorithms. The aim is to drive Robotino to follow the eight-shaped trajectory described by the following equations: where T = 25 s is the trajectory period, θ d = 0 and ω d = 0. The control horizon is chosen 10 for MPC and 5 for NMPC, as for the LMPC, N = 3 and a = 0. 8 and initial position is given as q 0 = [−0.5, 0, π/6, 0, 0, 0]. VOLUME 10, 2022 Fig . 5 shows the performance of each method when tracking the eight-shaped trajectory. In Fig. 5(a), the advantage of the LMPC performance over MPC is well illustrated. The NMPC needs longer than the update time of the microcontroller (70ms) to compute the next inputs values, which makes it unsuitable for practice, as shown in Fig. 5(b). Fig. 6 and Fig. 7 show the state variables of the system over time when using the LMPC: x and y positions, orientation θ, translational velocities v x and v y , and angular velocity ω. The computed input accelerations before integration (black lines) and the real robot acceleration (red lines) estimated by differentiating and filtering the odometry data are shown in Fig. 8.

V. CONCLUSION AND FUTURE WORK
In this paper, an enhanced MPC algorithm based on Laguerre functions, LMPC, for trajectory tracking of an OMR has been presented. Non-iterative linearization was performed using the duality between optimal control and stochastic filtering to approximate the nonlinear system, and the Laguerre functions were used to describe the control variables and reduce the number of optimization variables. The method presented provides a way to ameliorate the prediction process, prevent the accumulation of the linearization's error and improve the tracking performance. The computational time was also reduced significantly allowing the algorithm to make fast accurate decisions.
The performance of the proposed algorithm was validated on the trajectory tracking problem of the OMR and compared to the traditional linear MPC algorithm and the NMPC. Experiments show that LMPC can achieve high tracking accuracy, outperforming both MPC and NMPC. Feasibility and suitability for real-time applications were also demonstrated by experiment on Robotino Festo mobile robot.
As future work, we will consider optimizing the tuning parameters using automated tuning algorithms. We will also consider the use of Laguerre Functions directly in the NMPC.