Review and performance evaluation of path tracking controllers of autonomous vehicles

Autonomous Vehicles (AVs) have shown indelible and revolutionary effects on accident reduction and more efﬁcient use of travel time, with outstanding socio-economic impact. Despite these beneﬁts, to make AVs accepted by a wide demographic and produce them on an industrial scale with a reasonable price, there are still a number of technological and social challenges that need to be tackled. Path Tracking Controller (PTC) of AVs is one of the high potential subsystems that can be further improved in order to achieve more accurate, robust and comfortable tracking performance. This study provides a critical review and simulation study of several selected techniques used for the design of PTC of AVs. The AVs are assumed to have limited controllability due to non-holonomic constraints, such as car-like vehicles and differential drive mobile robots. A detailed discussion will be provided on the simulation outcomes as well as the pros and cons of each technique for the sake of implementation and improvement of state-of-the-art PTC.


INTRODUCTION
The interest in Autonomous Vehicles (AVs) has been increasing over the last few decades with rapid advancements in sensor technology and portable computing devices. The socioeconomic impact of AVs is not only confined to the end vehicle users; they have also shown an indelible and revolutionary impact on public transportation systems [1,2]. According to the World Health Organization (WHO), each year around 1.35 million people die globally due to traffic accidents or accidentrelated injuries [3]. More than 80% of these accidents are related to human errors [3] which can be significantly reduced with the adoption of Advanced Driver Assistance Systems (ADAS) and Automated Driving Systems (ADS) technologies. Moreover, AVs can considerably help with reduction and more efficient use of travel time, with economic benefits as well as a positive impact on the physical and mental health of the passengers. In Australia, 79% of 9.2 million daily commuters drive their cars and spend 25 min on average traveling to work [4]. In the context of AVs' social impact, they can provide an excellent alternative for the mobility of disabled or elderly people who are incapable of driving conventional vehicles. In spite of all the aforementioned benefits, to make AVs accepted by a wide demographic and produce them on an industrial scale with a reasonable price, there are still several technological and social challenges that need to be tackled. The complexity of ADS is highly dependent on the required autonomy level. According to the standard (SAE-J3016) introduced by the Society of Automotive Engineers (SAE), ADS can be categorised into six levels (levels 0-5) from 'no autonomy' to 'fully autonomous' [5]. The autonomy level increases with the complexity of driving assistance systems, the responsibility of the human subject in the driving task, and the operating conditions of the vehicles.
Level-1 and 2 vehicles are already matured and being produced on an industrial scale. For any vehicle of level-3 and above, the driving task is generally divided into three subsystems (i) sensing and perception, (ii) path planning, and (iii) path tracking. In the sensing and perception stage, the information about the environment such as road conditions, traffic and pedestrians are collected using different sensors and fused to be applicable for mapping and localisation. Based on the mapped data, a reference trajectory is planned by the path planner for the vehicle to follow. Finally, the path tracking unit controls the vehicle on the planned path as accurately as possible. Sensing, perception and path planning have been an active research area and a considerable amount of work has been done towards improving these technologies. The focus of the current study is on the Path Tracking Controller (PTC) of AVs.
PTC of the AV is an interface between vehicle dynamic and path planner of the AV. Since this unit has access to the ride and handling control subsystems of the vehicle, for example steering and lateral control, it can be used to enhance the dynamic behaviour of the vehicle while implementing an accurate path tracking task [6]. PTC of the AV normally have access to the sensory feedbacks, for example IMU-GPS information, and use them in order to constitute a closed-loop control scheme. While the control technique is in charge of minimising error and other possible objective, performance of a PTC depends on a number of aspects, including the complexity of the vehicle model as well as the accuracy and robustness of the control scheme. In the literature, the design and implementation of PTC for AVs have been investigated in a number of studies. To target the scope of the current study, we focus on the PTC of Autonomous Ground Vehicles (AGVs), which have limited controllability due to non-holonomic constraints such as car-like vehicles and differential drive mobile robots. We present a critical review of a number of selected techniques that are applicable to ADS of vehicles.
The remainder of the paper is organised as follows. In Section 2, two common vehicle models are discussed and their mathematical formulations are presented. In Section 3, the control problem of path tracking is elaborated and a systematic review of some of the most popular control techniques is presented. Section 4 includes the performance evaluation of different control techniques based on the simulation results for urban path tracking tasks. In Section 5, a summary of the study is presented and the review and the simulation outcomes are discussed. Finally, a conclusion is drawn in Section 6.

VEHICLE MODEL
The efficacy of the PTC is highly dependent on the accuracy and complexity of the vehicle model. Planar vehicle models with longitudinal and lateral motions are commonly used in the literature due to their simplicity. An accurate high-fidelity model provides a better representation of the vehicle motion in different directions [7,8]; however, it would increase the complexity of controller design and the computation cost. A simpler model reduces the complexity of the control system; however, it cannot capture the non-linear effects and introduces uncertainties to the system. To start with a planar model, a car-like wheeled vehicle is assumed as a 2-dimensional rigid body moving in a configuration space. The coordinate system is usually represented by the position and the orientation of the vehicle which describes the motion of the vehicle in a special Euclidean group in two dimension (SE (2)) configuration space. The equations of planar motion of an AGV are generally expressed using two sets of coordinate systems, a vehicle coordinate system B(x, y) and FIGURE 1 Geometry of a car-like wheeled vehicle global coordinate system G (X, Y ). The motion of the vehicle is generally expressed using the vehicle coordinate system where x is the forward/longitudinal axis of the vehicle, y is the lateral axis to the left of the forward direction. These will be converted to the global coordinate system to calculate the states of the vehicle in the configuration space.
Two commonly used vehicle models are briefly introduced here and later used for the simulation of the PTC.

Kinematic model
In a kinematic model, the motion is replicated irrespective of dynamic components of the vehicle, for example force, torque, inertia effects. A bicycle model is often used to express the kinematics of a vehicle. Figure 1 shows the geometry of a car-like vehicle using a bicycle model where the front and rear wheels are lumped together and only the front wheel is used for steering. The configuration of vehicle shown in this figure is represented by q = (x, y, , ), where x, y is the position of the rear axle, is the steering angle of the front wheel and is the orientation of the vehicle in the global reference frame. In this model, x f , y f denote the position of the front wheel and l shows the distance between the front and rear axle points. The kinematic of the vehicle is subjected to non-holonomic constraint with the assumption that the wheels are purely rolling without any side slip. The non-holonomnic constraint implies that dimension of the permissible velocity space of the vehicle is smaller than the dimension of configuration space. The non-holonomic constraint for each wheel can be expressed as [9]ẋ sin( ) −̇y cos( ) = 0 ( 1 ) with a rigid body constraint between the front and rear wheel, we have Combining (1), (2) and (3), Equation (1) is satisfied whenẋ = cos( ) anḋy = sin( ) or any other scalar values of cos( ) and sin( ). This value shows the forward or longitudinal velocity v r at the rear wheel such that [10] The kinematic model of a rear-wheel drive vehicle is eventually described as [9] ⎡ ⎢ ⎢ ⎢ ⎣ẋ̇ẏ⎤ where v r is the longitudinal velocity of the vehicle at the rear wheel. The steering angle has a singularity at angle 2 which means | max | < 2 . Similarly, the kinematic equations for a front-wheel drive vehicle can be expressed as [9] where v f is the longitudinal velocity of the vehicle at the front wheel.
The kinematic model has been widely used in the literature due to its simplicity and sufficient performance at low speeds. When the vehicle is moving at higher speeds, the dynamic effects of some components become more prominent and need to be modelled appropriately.

Dynamic model
Similar to the kinematic model, a dynamic bicycle model is generally used for designing PTCs [6,[11][12][13][14]. Figure 2 shows the geometry of a dynamic bicycle model. In this model, the vehicle has a mass m with a moment of inertia I z at the centre of gravity of the body and normal to the horizontal plane. The motion of the vehicle can be expressed using the following Newton-Euler equations [15,16] where F x is the longitudinal force, F y is the lateral force, r and f denote rear and forward wheels, is the steering angle, l f and l r are the distances between front and rear wheel and the centre of gravity, and is the yaw angle. The tyre slip angle for the front f and rear wheel r can be expressed as [15] An accurate tyre model describing tyre-road interaction is extremely important due to the fact that all driving forces are applied to a vehicle through the tyres' patches. Due to the simplicity, the linear tyre model is a commonly used tyre model for designing controller of AGV. In this model, the cornering forces are estimated based on the assumption of small slip angles.
If the wheel slip angles are sufficiently small, lateral tyre force is proportional to the tyre slip angle as [16], where C f is the cornering stiffness of the front wheels and C r is the cornering stiffness of the rear wheel. The linear tyre model is only applicable for small slip angles and at low lateral accelerations. Moreover, for designing a controller using the linear model, the longitudinal velocity is generally assumed constant. This decouples the longitudinal and lateral control of the vehicle where the longitudinal dynamics are controlled by a separate controller.
In a nonlinear vehicle dynamic model, the forces generated on wheels for larger slip angles have also been considered. These models capture the nonlinearity of the vehicle dynamics and provide a more accurate solution at higher slip angles of the wheels. However, these models increase the complexity of the dynamic vehicle model significantly. One of the most commonly used nonlinear tyre model is the Pacejka tyre model where the forces are calculated based on an empirical model [17]. Here, either the later or longitudinal force is calculated using the following formula [17]: Here, X is the input which represents either longitudinal slip or lateral slip angle and Y is the output which represent either the longitudinal force F x = y( ) or lateral force F y = y( ). In addition, B is the stiffness factor, C is the shape factor, D is the peak value, E is the curvature factor, S h is the horizontal shift and S v is the vertical shift. More details on the formulation of this model can be found in [17]. Another commonly used approach to calculate tyre forces is the use of an analytical model such as the Brush model. Here, the tyre forces are a function of the normal force (F z ), longitudinal slip ratio( ) and lateral slip angle ( ) of the wheel. For this model, the tyre force is expressed as [17] where, (16c) Here, is the tyre-road friction co-efficient , x and y is the longitudinal and lateral slip, respectively and is the combined total slip. In addition, s is the slip when the sliding starts and is an isotropic tyre parameter expressed as where, c p denotes the total stiffness of tread elements per unit length and a is half of the contact length of the tyre. Now, the longitudinal and later tyre forces can be calculated as A more detailed analysis of different analytical tyre models including the brush model can be found in [16,17]. For designing PTC for AVs, the use of the linear tyre model is the most popular approach due to its simplicity and accuracy at certain operating regions [18][19][20]. The use of the linear tyre model reduces the complexity of the path tracking task as well. On the other hand, the nonlinear tyre model provides a more accurate representation of the vehicle dynamics and in turn increases the performances of the PTC at a higher speed. The nonlinear tyre model has been used for designing some control techniques such as Model Predictive Control (MPC) which has inherent capabilities to handle nonlinear systems. The commonly used nonlinear models for designing PTC are the Pacejka model [21][22][23][24][25], brush model [6,26] and modified brush model [27][28][29] .

CONTROL STRATEGIES
In control-oriented terminology, the motion control task of AGVs can be divided into two categories: i) stabilisation to a reference point (point to point motion) ii) stabilisation to a reference manifold (path following and trajectory tracking). These control problems are defined as Point stabilisation:Given a vehicle model as a differential equa-tioṅ= F ( , u), and a desired position d the objective is to design a control law such that || − re f || ≤ in finite time, where is arbitrarily small.
Path following:Given a vehicle model as a differential equa-tioṅ= F ( , u), and a reference path re f : ℝ → ℝ n , the control objective is the design a control law such that lim Trajectory tracking:Given a vehicle model as a differential equa-tioṅ= F ( , u), and a reference trajectory with an associate timing law re f (t ) : ℝ → ℝ n , the control objective is the design a control law such that lim t →∞ In this section, we provide a survey of some selected control techniques for the path following task of AGVs. The control strategies are chosen based on their popularity in the field of path tracking control and the applicability to car-like autonomous vehicles. First, the mathematical formulation and the state-of-the-art of two geometry-based controllers, Pure Pursuit Controller (PPC) and Stanley controllers are presented. Second, the Feedback Linearisation (FL) and the Lyapunov's Direct Method (LDM) are surveyed. Third, two most commonly used robust controllers, Sliding Mode Controller (SMC) and H∞ controller arediscussed. Then, two optimisation-based controllers, Linear Quadratic Regulator (LQR) and Model Predictive Control (MPC) are introduced. Finally, Neural Network (NN) controller, which is the most commonly used AI-based control technique, is discussed.

3.1
Pure pursuit PPC was initially implemented for guiding missiles towards a moving target [30]. It was later used to keep the vehicle on the middle of the road using road images [31]. In this technique, a target point on the reference path is chosen at a certain distance ahead of the vehicle called a 'look-ahead distance'. The relationship between the position of the vehicle and the trajectory of the path is established by fitting an arc between the rear wheel and the target point. Figure 3 shows the geometry of the PPC approach for a bicycle vehicle model. The radius of the fitted arc can be found as where is the angle between vehicle forward vector and the vector connecting the target point and the rear axle of the vehicle, l d is the look ahead distance, R is the radius of the arc, and is the required steering angle. The required steering angle at any time instance can be calculated as [32] = tan −1 can also be expressed using the lateral error between the vehicle and the path e l and the look-ahead distance l d as [10] = sin −1 e l l d (21) From (20) and (21), it is evident that the steering angle can be calculated using the lateral error e l and the look-ahead distance l d .
PPC has been widely used by researchers due to the simplicity of its implementation, easily tunable parameters, low computational requirement and performance at low velocity [33]. It has also been used by several participants in DARPA grand challenge [32,34]. Amidi et al. investigated the use of a quintic polynomial instead of an arc fitted between the current vehicle position and the target point and concluded that PPC has shown significantly better performance in terms of stability and accuracy [35]. Rankin et al. studied a PID and a PPC controller using both the simulation and a test vehicle and figured out PPC is stable and reasonably accurate at small lateral error and low vehicle speed [36]. It has also been confirmed by the other authors that the reliability of PPC drops with increasing velocity of the vehicle [10,37]. Moreover, it has been suggested that look-ahead distance is easier to tune than the parameters of the PID controller [36]. To consider the effect of slip angle at higher velocities, in [38], a receding horizon optimal control technique in addition to the PPC was used to handle the effect of wheel slip.
One of the fundamental requirements for an efficient PPC is the proper tuning of the look-ahead distance. For a large value, it can cause 'cutting the corner' effect when the path curvature is large [35,39]. On the other hand, a too small look-ahead distance, even though it provides better accuracy, may produce oscillatory behaviour of the vehicle.
Along with the look-ahead distance, the velocity of the vehicle plays an important role in the reliability and efficacy of the controller [10,40]. It is also noted that as PPC suffers from a lack of dynamic of the vehicle, with increasing velocity the tracking error increases and longer look-ahead distance is required [10].
The stability of PPC has been analysed and a criterion was developed to provide a range of look-ahead distances and velocities for which the controller is stable [37,41]. Adaptive approaches were used for calculating a proper range of look-ahead distance [42][43][44]. Fuzzy Logic Systems (FLS) were also employed to tune look-ahead distance [43,45,46]. In these studies, different applications including controlling a heavy vehicle [46] and designing an adaptivePPC by calculating the appropriate look-ahead distance based on the curvature of the path from GPS data, the speed, and lateral error of the vehicle [42] were implemented.
PPC has shown a number of drawbacks. It does not consider the orientation of the vehicle at the target point and there is a limit for feasible look-ahead distances at each velocity. Moreover, it is known to reflect inferior performance when the vehicle is off-path (high lateral and heading error). To solve these problems, Wit et al. [47] proposed a novel approach of geometric path tracker based on the screw theory where both position and orientation of the vehicle at the target are considered. In this case, it was shown that the vehicle is stable when the look-ahead distance ranges between 5 and 9 m and the velocity changes between 2 and 4 m/s.

Stanley controller
Stanley controller, sometimes also referred to as 'Hoffman Controller', is another type of geometry-based PTC implemented by the winner of the DARPA grand challenge in 2005 [48]. In this approach, the orientation of the front wheel with respect to the reference trajectory is used instead of the orientation of the vehicle body for generating the control actions. Moreover, unlike the PPC controller, a look-ahead distance is not required for designing the controller. The geometry of the Stanley controller is shown in Figure 4. In this figure, e l is the distance between the vehicle front axle and the reference point and is the angle between the vehicle heading direction and the tangent at the reference point. From the geometry of Figure 4, the required steering angle is calculated as [49] where v denotes the forward speed of the vehicle and k is the tunable gain. As the controller considers velocity of the vehicle for generating control actions, the controller is asymptotically stable for any non-zero velocity and steering angles between 0 and 2 , as shown in [49]. Considering the constraints of steering angle, the steering law can be expressed as [49]: where max is the magnitude for both the maximum and minimum steering angle and 0 < max < 2 . The value of the tuning parameter has a significant effect on the efficacy of the controller. In [10], Snider implemented the Stanley controller in (22) and compared its performance for different driving scenarios. For the high values of k, the controller performed relatively good up to a certain value where the controller becomes unstable.
The control law of (22) purely controls the position of the front wheel and not the orientation of the vehicle. Therefore, a modified control law was proposed [49]. In the modified law, yaw error and steering angle rates were also considered for generating control actions as follows (24) where re f is the reference yaw angle, is the yaw angle, and k, k and k are gain parameters which need to be tuned. A set of tuned parameters may only work well for a certain driving scenario and vehicle. To solve this problem, an adaptive approach was proposed for tuning gain parameters for different road conditions and velocities [50]. In this approach, a 'knowledge base' was created from optimised gains calculated using the Particle Swarm optimisation technique. An FLS is then used to choose the appropriate gains from the knowledge base based on the current velocity and path tracking error.

Feedback linearisation
For vehicles with non-holonomic constraints, the point stabilisation problem is much more complex than the path following or trajectory tracking problem [9]. Although the kinematic model in (6) is fully controllable [9], stabilisation at a given terminal point is not possible using a linear static state feedback [51,52]. To address this problem, researchers used discontinuous [53] or dynamic state feedback [52,54]. Hybrid controllers, a combination of discontinuous and dynamic feedback, has been also used to solve point stabilisation problem for AGVs with non-holonomic constraints [55]. FL)is a popular approach for designing nonlinear control systems enabling the use of well-defined linear control techniques. Feedback linearisation of an AGV can be performed using two approaches: i) full-state linearisation [9,56,57], and ii) inputoutput linearisation [9,56,[58][59][60][61][62]. In the full-state linearisation approach, a linear relationship between the states and the inputs is established by transforming both states and inputs. On the other hand, for input-output linearisation, a linear relationship between the output and input is found by taking the derivatives of the output until the inputs or derivatives of the inputs appear independently [63].
The vehicle model in (6) is not input-output linearisable using static feedback if the controlled point is taken on the centre of the wheel axis [9]. However, the static FL can be used if the output is chosen properly [9]. For instance, Figure 5 shows the geometry of a car-like vehicle where the controlled point is chosen as p at d distance ahead of the front wheel (x f , y f ), where the error is calculated correspondingly.
From the geometric relationship of Figure 5, the output of the system can be expressed as [56] The derivatives of the output,j can be expressed in the following form [9]̇j where, Choosing an auxiliary input u =j, we have [9] v = M −1 ( , ) u.
Now, the trajectory tracking problem can be solved using a linear state feedback law such that [53] where (x r , y r ) is the reference trajectory. For a car-like vehicle, the input-output linearised system has nonlinear internal dynamics, so the stability of the internal dynamics also needs to be considered. For example, for the controller in (25)- (29), the yaw angle is not controlled. It is noted that for a non-holonomic wheeled vehicle, internal dynamics are asymptotically stable when the reference point is moving forward; however, for a backward moving reference point, internal dynamics are unstable [64].
The dynamic feedback approach has also been used to achieve full-state linearisation of AGVs. One of the primary advantages of full-state linearisation is that it does not have any internal dynamics. Full-state linearization can be achieved using the dynamic extension technique [9,65,66]. In this technique, new auxiliary inputs are added as the derivative of the original system input until all the system inputs explicitly appear. If polar coordinates are used instead of Cartesian coordinates, the nonlinear kinematic system is transformed into a linear timeinvariant system [65,66].
Due to the existence of higher-order derivative terms, FLbased controllers are sensitive to disturbances and do not guarantee robust performance against uncertainties [57,63,67]. To improve the robustness of this approach, an adaptive FL controller was proposed using an integrated kinematic and dynamic model of the vehicle [59]. The adaptive control law was designed based on the Lyapunov stability approach. Moreover, a combination of input-output FL and output manoeuvering control approach was suggested to design a robust controller [68]. A Kalman-based active observer was also used to estimate the states of the system in the presence of disturbances [58]. In [67], a p-domain FL controller was designed and combined with an SMC to increase robustness against vehicle parametric uncertainties.
The efficacy of different FL based PTC has been frequently reported in theory and simulations; however, only a few efforts have been made to practically implement this technique [56,57,61,69]. In one of the latest studies, this technique was compared to a Lyapunov-based controller for different driving scenarios [61]. It has been reported that in the presence of disturbances, FL is superior to Lyapunov-based controller in terms of accuracy.

Lyapunov's direct method
LDM has been introduced to design PTC for AGVs. This approach has been extracted from Lyapunov's theorem which is extensively used for analyzing stability of nonlinear systems. For designing LDM-based controllers, an error system is initially created with respect to the current and the reference state of the vehicle. This error system is used for creating controllers ensuring both asymptotic and Lyapunov stability. For the kinematic model of (6), an error system with configuration, q e =(x e , y e , e ) can be expressed as [70] where x, y, are the current position and orientation of the vehicle and x r , y r , r are the reference position and orientation of the vehicle. Based on (6) and (30), the open loop error system can be stated as [70,71]ẋ where v r and r are the reference forward and angular velocities.
A control law needs to be designed to make the error q e converges to 0 when t → ∞. For the control law to be stable, a Lyapunov function V (q e ) must exist such that V (q e ) is a positive definite function (V (q e ) > 0) andV (q e ) is a negative semidefinite(V (q e ) ≤ 0). The Lyapunov stability does not guarantee the asymptotic stability. The system is asymptotically stable iḟ V (x e ) is a negative definite function. A control law for these conditions can be devised using the Lyapunov theorem as [70,72] [ where k 1 , k 2 and k 3 are positive gains. Local stability of the system can be verified using a Lyapunov candidate function [70,72].
For the above Lyapunov function, for k 1 , k 2 , k 3 > 0, the function V > 0 when q e = 0 and the time derivative of the Lyapunov functionV ≤ 0 [70,72], which is equivalent to Lyapunov stability of the controller. For the controller to be asymptotically stable, v r and r must be continuous and bounded andv r anḋr must be sufficiently small [70]. A polar coordinate system can be used instead of Cartesian coordinate systems. This enables use of smooth feedback laws which is not possible for the case of Cartesian coordinate systems [71]. The controller of (32) is stable for any positive values of k 1 , k 2 , k 3 ; however, these gains need to be tuned. To find the appropriate gain values of the controller which meet the required performance criteria, an LQR algorithm can be used to tune the parameters of a Lyapunov controller [73]. For designing LDM using (30)-(32), perfect velocity tracking is assumed, which is not ideal in practice. To address this issue, a backstepping method was used to integrate the dynamics and kinematics of a vehicle [74][75][76]. For these works, an additional torque controller was used to ensure perfect velocity tracking. LDM has shown to generate a smoother steering angle than the SMC, despite less robustness in tracking tasks [77].

Linear quadratic regulator
LQR is an efficient method in balancing control effort and system response. In this approach, an optimal feedback control gain is calculated based on a performance index. In the context of PTC, LQR requires a linear model of the vehicle in order to calculate optimal feedback gain. The linearised vehicle dynamic model (bicycle model) can be expressed aṡ where, For the implementation of LQR-based PTC of AGVs, an error state space model is usually formulated such that the path curvatures are considered as disturbances to the system [78]. An error state space model can be formulated as [16,79] where x = [e y ,̇e y , e ,̇e ], u = , e y is cross-track error and e is heading angle error, r re f is the reference yaw rate . The term B 2ṙre f is considered as external disturbance to the system [10].
In the simplest version of LQR, the task is to find suitable gain K for the feedback control law u(k) = −K x(k) by minimizing a quadratic cost such as [80] where Q and R are positive definite diagonal weighing matrices. The optimal solution K for the feedback matrix is obtained as [80] where P is the solution of the matrix Riccati equation The performance of an LQR controller can be evaluated compared to other controllers when it is used for designing a PTC. It has been shown that, in negotiating a curved path, LQR with path information as disturbance provides much better performance than the PD controller [78]. The LQR has shown more robust performance in the presence of the unmodelled dynamic of the system and similar robustness in the presence of parametric uncertainty, compared to a Dominate Second-Order Pole (DSOP)-based controller [81].
The LQR undesirably provides steady-state errors when negotiating high curvature paths [10]. To improve the tracking performance for paths with dynamic curvatures, the use of an additional feedforward controller was proposed [10,79,[82][83][84]. The feedforward controller uses the road curvature information and the feedback controller uses the cross-track and yaw error from the state feedback [85]. The control with the integration of feedforward control law can be expressed as [79,83] The structure of an LQR controller with the feedforward controller is shown in Figure 6. The feedforward controller does not consider the future disturbances of the system and may introduce overshoot to the system's response [10]. To avoid this, an optimal preview with the feedforward LQR controller was proposed [10,19,86]. In this work, the feedforward controller was designed based on the path information for a preview horizon and the feedback controller was designed using lateral and yaw error. Similarly, to compensate for future disturbances on Structure of a LQR-based controller with the feedforward control the system, the use of IterativeLQR (ILQR) has been suggested [87].
Due to the use of the linearised model, LQR cannot handle both parametric and unstructured uncertainties, which are more prone at the higher speeds of AGV. LQR does not provide proper robustness in cases where uncertainties and external disturbances exist [88]. To improve tracking accuracy with the presence of parametric uncertainties, an observer-based LQR was proposed in [89,90]. To increase the robustness, Frequency-Shaped Linear Control (FSLQ) has also been proposed [91]. The frequency-domain approach using gain and phase margins ensures more robustness. In addition, to compensate for the problem of model uncertainty and external disturbances, Robust LQR (RLQR) has been also adopted [20,92]. In this work, an additional robust controller was used to diminish the effect of unstructured and parametric uncertainties. Similarly, variable structure control such as SMC has been integrated into the LQR controller [19]. The performance of LQR has been analysed for different speeds of the AGV in comparison with Nonlinear Model Predictive Control (NMPC) and it was shown that NMPC performs significantly better at high speeds [93]. Moreover, in cases where a small parameter changes, causing fast unstable conditions, the stability of the system becomes highly dependent on the proper choice of the weighting matrices.

Robust control
For a complex nonlinear system such as AGVs with all imprecision and external disturbances, which are integral parts of any practical system, a high-fidelity model is ideally required. The application of such a model increases the complexity of the control problem. On the other hand, using a simplified model can introduce uncertainties to the system, which include parametric and unstructured uncertainties [63]. To tackle these uncertainties, a number of robust controllers with nonlinear control structures have been proposed [94]. In this section, two most commonly used robust controllers for designing PTC for AVs are discussed.

Sliding mode control
In the context of PTC, SMC is one of the most popular control techniques. SMC can provide robust performance in the presence of uncertainties, is easy to implement, and can facilitate fast response [63,94,95]. In this technique, a desired sliding manifold in the state-space, the so-called 'sliding surface', is initially chosen. Next, a controller is designed to drive the system states to the sliding surface at a finite time while constraining them. One of the advantages of the SMC approach is that the system has a reduced order of dynamic when the state is on the sliding surface which is much easier to control [63]. The first step for designing the SMC is to choose a sliding surface. A sliding surface for the error system of (30) which can be defined as [96] For this sliding surface, a control law which drives the error asymptotically to zero (s 1 = 0, s 2 = 0) should be defined. Different techniques can be used to design sliding surface and corresponding control law for the chosen sliding surface, such as vehicle kinematic-based [96,97] and vehicle dynamic-based approaches [98][99][100].
The conventional SMC (the first order SMC) has been commonly used for designing PTC [98,101,102]. A continuoustime SMC using feedback linearisation was implemented with the assumptions of coinciding with the initial position of the reference trajectory and the origin as well as a nonperpendicular orientation between the heading angle and the angle of coordinates [98]. In an improvement effort, a polar coordinate system was employed to eliminate the required geometric constraints for the proper implementation of the controller [102]. Although these proposed controllers did not provide satisfactory results when the state of the system locates at close vicinity of the origin and the physical actuator constraints were not considered, they provide robust performance in the existence of uncertainties and external disturbances.
One of the fundamental problems of SMC is the 'chattering' problem [63]. The discontinuous switching and the time delay of the control actions cause chattering which requires high control activity and is not suitable for AGV. Moreover, it may produce undesired oscillations exciting unmodelled high-frequency dynamics. To reduce the effect of chattering, different techniques have been proposed including Boundary Layer Technique [103,104]. In this technique, instead of using a switching function, a saturation function is used. Alternatively, a second-order SMC can be used [97,[105][106][107]. A super twisting SMC, which is a type of second-order SMC, was also designed without the measurements of the first derivatives of the sliding variables for the path tracking of an AGV [106,108,109]. These techniques can help with reducing chattering; however, this comes at the cost of reduced robustness.
SMC also suffers from sensitivity to external disturbances during the reaching phase, where the system has not reached the sliding manifold [110]. To avoid this, the use of Integral Sliding Mode Controller (ISMC) has been proposed [111,112]. In
Conventional SMC's are designed with the assumption of known uncertainty bound, which is not realistic in practice. The unknown disturbances are generally compensated by overconservative control gain producing a chattering effect. When the bound on uncertainty is not known, an adaptive approach can be adopted [100,[113][114][115][116][117]. Adaptive Sliding Mode Control (ASMC) has been implemented using several different techniques, including Fuzzy logic-based ASMC [100,[118][119][120]. In [119], a logic inference technique was proposed to adaptively calculate the gain of the switching control of SMC. Similarly, a variable exponential sliding control law was formulated using a fuzzy type-2 NN to enhance robustness against uncertainty [121]. In [114], a Self-recurrent Wavelet Neural Network (SRWNN) was used in conjecture with an SMC to compensate for the uncertainties and reduce chattering. ASMC can be also implemented using an extended state observer for estimating the unknown parameters and external disturbances online [115,122]. Table 1 shows different techniques which have been used to reduce the inherent chattering effect of SMC.

H ∞ controller
Another common approach to design a robust PTC for AVs is the use of the H ∞ method. A number of researchers used the H ∞ -based PTC for AVs to reduce the effect of parametric uncertainties and external disturbances. In this technique, the control problem is transformed into an optimisation problem based on some performance indices using states and control. Here, H ∞ norm performance index is used as constraint while the feedback control laws are generally obtained by solving a sequence of Linear Matrix Inequality (LMI).
In [123], the authors proposed an H ∞ -based controller to reduce the effect of the backlash-type hysteresis of the steering system of an AV. The authors used a weighted gain scheduling approach to assert proportional importance FIGURE 7 General structure of an adaptive controller between the inputs. However, other uncertainties such as parametric uncertainties and external disturbances are not considered for the control design. A more elaborated approach is reported in [124,125]. In these works, both external disturbances and parametric uncertainties are considered for designing H ∞ -based PTC. An LMI-based approach is used to generate feedback control law in [125] while a combination of Genetic algorithm (GA) and LMI is proposed in [124] to obtain the control law.
The uncertainties in the system increase significantly when the vehicle operates at the handling limits. This approach is a viable option for race cars which needs to operate at the handling limit consistently. Recently, the H ∞ -based controller is proposed for designing the controller of an autonomous electric race car [126].
A common approach to improve the performances of the H ∞ -based controllers is the integration of fuzzy logic approaches [127][128][129]. An observer-based H ∞ controller where a Takagi-Sugeno fuzzy system is used to represent the nonlinear dynamics of the vehicle is reported in [127]. A similar approach is proposed in [128] where a fuzzy system is used to replicate the motion of the vehicle. However, in this case, a combination of the kinematic and dynamic model is used. Another integrated fuzzy logic and H ∞ -based controller is reported in [130], where parametric uncertainties of the DC motor of the vehicle is considered.

Adaptive control
Adaptive control is a capable technique for designing PTC, especially when dynamic parameters of the system are not completely known. In this control approach, control laws are generated based on the estimated values of unknown or slowly varying parameters which will be adjusted during the operation of the controller. A general structure of an adaptive controller is shown in Figure 7. Backstepping is the most frequently used technique for designing the control law for a PTC and it is normally designed by integrating a kinematic controller and a dynamic torque controller [75,[131][132][133][134][135].
For the design of the torque controller, the full dynamic of the vehicle must be known; however, different dynamic parameters such as mass, the moment of inertia and friction are difficult to determine. To tackle these parametric uncertainties, parameter estimation rules were designed to ensure the Lyapunov stability of the controller and drive the tracking error towards zero asymptotically. A similar backstepping-based adaptive controller was used and the experimental results prove the satisfactory performance of the controller for different operating conditions [136].
The backstepping control approach suffers from the "explosion of complexity" due to the recursive differentiation of auxiliary controls. To avoid this problem, Dynamic Surface Control (DSC) was proposed [137,138]. In this technique, a firstorder filter was used for each auxiliary controller and differentiation of auxiliary controls was not required. From the simulation results, the controllers designed based on DSC provide a robust and accurate performance. NN showing adaptive learning ability has been used to estimate the unknown or varying dynamics of AGV [131,139,140]. The NN weights can be tuned online without any offline training. SRWNN [114,141] and Radial Basis Function Neural Network (NN) (RBFNN) [142] were proposed for estimating dynamic parameters of the vehicle. The application of NN for designing PTC of AGVs will be discussed in Section 3.9 in more detail.
FLS has also been proposed to learn the full dynamics of the AGVs online [143][144][145]. An adaptive FLS can be formulated to design a function approximating the unknown dynamic parameters of the vehicle. A combination of NN and FLS that is Recurrent Fuzzy Neural Network (NN) (RFNN) was also proposed to design an adaptive controller [146]. The main advantage of these online learning-based estimators is that no prior information on the vehicle dynamic is required. The design of these intelligent controllers is complex and computationally expensive in practice.
Another implementation challenge for adaptive control is to ensure the desired transient performance of the controller. If the estimation error is large, the controller results in a large transient peak which is not suitable for practical implementations. To address this shortcoming, switching between multiple identification models was proposed for estimating uncertain parameters of the system [135]. Prescribed Performance Bound (PPB) is another technique handling this issue [147]. This technique constraint the maximum overshoot within a predefined limit and ensures a minimum convergence rate.
Adaptive controllers perform well for cases of parametric uncertainties. These techniques lack robustness when non-parametric uncertainties exist in the system. Under this circumstance, the problem of "parameter drifting" can occur [63]. A switching adaptive controller was suggested to eliminate the parameter drift problem [148]. An appropriate adaption law is selected among three different laws during the switching process. The parameters are kept constant when the error is very small and parameter laws are switched with an increase in the control error. Another technique used for reducing parameter drift is the use of an additional modification term in the adaptation law [136].
The effect of non-parametric uncertainties can be reduced by using an additional robust control input [131,132,139,144]. A variable structure control such as SMC can be also integrated into the adaptive control approach [100,[113][114][115][116][117]149]. Observer-based approaches have been recently employed to enhance the robustness of adaptive controllers [150,151]. The observer can consider the external effects and unknown parameters as a lumped disturbance which is used by the adaptive control law in a feedforward manner [150]. This approach is practical if the observer dynamic is faster than the disturbance dynamic.

Model predictive control
MPC estimates the future states of the system for a certain time horizon using an explicit model of the system. At each sampling interval, the objective of the controller is to find an optimised control sequence based on the predicted state. From the optimised control sequence, only the first control action is sent to the system and the whole process is repeated at a specific time interval. For PTC, MPC offers several advantages. The primary advantage of MPC is its ability to handle multi-variable states and constraints. On the contrary, solving the online optimisation problem adds up to the computation complexity of the controller. Based on vehicle dynamics of (8)- (14) , transition of states = [X, Y, v y , ,̇] for input u = and output z = [X, Y, ] can be formulated aṡ For the implementation of MPC , the continuous nonlinear system of (42) can be expressed in a discrete form For a path with reference values z re f , the objective function is stated as [22,152] whereẑ(t + k|t ) represents the estimated output of the system,  t is the optimising control sequence, N p is the state prediction horizon, N c is the control horizon, and Q and R are the weighing matrices. At each time step, the objective function of (44) is optimised such that [22,152] subjected to Solving the optimisation problem, an optimised control sequence ] is found and only the first control action of the sequence is sent to the vehicle at each time step. This process is repeated again for the next time interval. A general structure of the MPC is shown in Figure 8.
The choice of vehicle model has a decisive role in the online performance of MPC. A high-fidelity, nonlinear dynamic model of the vehicle provides a more accurate prediction of the states; however, this makes the optimisation problem complex and in some cases computationally prohibitive. A kinematic model of a vehicle providing sufficiently accurate results at low speed can be a wise choice. Noting that, at higher speed, the unmodelled dynamic of the system introduces uncertainty to the system, deteriorates the performances of the controller, and occasionally makes the system unstable. In [153], an additional side-slip compensator was used to improve the performance of the controller at higher speeds with low computational expenses.
The MPC for PTC was generally implemented using two approaches, i) NMPC, using a nonlinear vehicle model and ii) linear MPC, using the linear approximation of the model. In the NMPC framework, a Nonlinear Programming (NLP) problem is formulated and solved online [152,[154][155][156][157]. Several different techniques have been used to solve the NLP problem including Interior-Point Method (IPM) [152] and Sequential Quadratic Programming (SQP) [22,155,156,158] which are the most popular techniques. These techniques can be solved using the NPSOL software package [159], MATLAB (fmincon) [154] and ACADO [158]. Due to the computational complexity of a NLP problem, the real-time implementation of NMPC is limited to low speeds. For example, in [155], real-time implementation of NMPC was only possible for the vehicle with a speed of > 10 m/s. However, NMPC can provide more robust performance in the presence of external disturbance, such as wind gust and low friction between tire and road [156] or snowy road [155]. To reduce the complexity of solving the optimisation problem, different linearisation techniques can be used which enables the application of Quadratic Programming (QP) instead of NLP. When successive linearisation approach is used at each operating point, the system is converted into a Linear Time-Varying (LTV) system [24,161,162]. This step can be implemented on a kinematic or dynamic model [161]. When linearising the dynamic of the vehicle, tire characteristics play a crucial role. The force approximation using the linear tyre model becomes invalid for large slip angles > 5 deg [25,161]. An additional constraint on the slip angle can be used to keep it in the linear region [161][162][163][164]. It has been also discussed that if the steering angle is chosen piece-wise linear at low speed, the motion of the vehicle can be defined as a segment of a clothoid [165]. Under this circumstance, the optimised input can be calculated purely based on the curve parameters at the waypoint of the reference path. The clothoid-based reference trajectory was generated using a 'path sparsification' technique which also reduces the number of way-points on the reference path. This approach provides smoother and more comfortable control actions and requires less computation time compared to a simple LTV-MPC approach.
Even though the LTV approach reduces the computational burden, it still needs to perform the successive linearisation online. To reduce the computational expense even further, a Linear Parameter Varying (LPV) approach can be adopted [21]. In this approach, the parameters of the model vary for the different polyhedral regions of the state space using a time-varying parameter vector or a scheduling variable. Moreover, the nonlinear dynamic model of a vehicle was approximated as a linear piecewise affine parameter varying model. LPV technique does not require online linearisation, so it saves computational time and prevents prediction error due to locally diverging linearisation.
From the discussion so far, it is apparent that MPC significantly suffers from computation complexity. At low speeds, the implementation of real-time MPC is feasible due to the possible use of a simpler (linear) dynamic model. As speed increases, the online implementation of MPC becomes difficult as at higher speed the simplified model increases uncertainty. To reduce computation cost, explicit MPC was proposed in [166]. In addition, the use of 'Switching MPC' was proposed, where several prediction models with different degrees of complexity used. For instance, in [167], two different vehicle models were used. A kinematic model was used when the vehicle is operating with small steering angles and a high-fidelity dynamic model is used for difficult manoeuvres such as obstacle avoidance or sharp turns at low velocity. Another effort was reported in [168] where a hybrid state machine was proposed as a replacement of Ordinary Differential Equation (ODE) for the vehicle model. The switching criteria implemented by a machine learning approach depends on the current state of the system. The computational complexity of MPC was also moderated using an adaptive length of prediction horizon using varying time-step [27,28]. In fact, a shorter time-step is used for the first few sampling intervals at each prediction cycle for tracking and stabilisation and longer time-steps are used for the rest of the intervals of the cycle to accommodate longer prediction horizon for obstacle avoidance. More recently, adaptive prediction horizon length is used to reduce computational expenses for good initial solution by numerical algorithm [169].
The application of more detailed models has been identified as a potential solution for enhancing MPC. For instance, involving the steering dynamics has been recommenced [170,171]. This idea can help with achieving more accurate results at high speeds. Moreover, due to the consideration of the physical limitation of the steering system and safe driving angle, the controller provides smoother control actions. Further experimental works are required to validate the simulation results of this solution.
Obstacle avoidance functionality is generally performed by a path planner module. The planner may not have sufficient information about the dynamic limits of the AV as well as the highly dynamic environment, so it may cause instability of the vehicle. In addition, tracking performance is also dependent on the path profile generated by the planning module [172]. An integrated PTC with local path planning capability was suggested [173][174][175]. In [173], the authors implemented an NMPC controller to facilitate avoiding obstacle which is not detected at the planning phase. A kinematic model of the vehicle model with a first-order steering dynamics and the gradient descent algorithm was proposed to solve the nonlinear optimisation problem. Satisfactory results were reported only for low speeds where the gradient descent algorithm was suffering from getting stuck at local minima for the non-convex optimisation problem. In [174], another implementation of an integrated PTC was proposed where the local planner works as a bridge between the high-level path planner and the lower level path tracker. The local planner uses the MPC algorithm to generate a feasible trajectory connecting the waypoint provided by the high-level path planner. The MPC also provides an optimal control sequence at each sampling interval which is used besides the local trajectory for designing a feed-forward control structure. A feedback controller was also implemented to compensate for the uncertainties due to model mismatch and external disturbances. Similarly, in [175], an MPC was used to find a feasible region of the road for the vehicle while avoiding an obstacle. The road boundaries were considered as a constraint along with the physical constraints of the actuators.
An integrated PTC can provide a safe and stable control functionality when the vehicle is operated at the limit of its handling where a high-fidelity nonlinear model of the vehicle is required. In [27,28], the MPC constraints, including stability and obstacle avoidance, were implemented within two distinct allowable state-space regions, stable handling region and viable environmental region, (environment between road edges and free of obstacles). The obstacle avoidance was given a higher priority than the stability, so the stability criteria may be violated for a short time. In a similar manner, a multiconstrained MPC which considers the geometric constraints of the road and dynamic constraints of the vehicle was proposed in [176].
NN approach also has been recommended to predict the future state of AV instead of using an explicit mathematical model. For instance, an adaptive NN controller was proposed in [177]. Noting that tuning the NN-based prediction model is computationally expensive, which necessitates more improvement prior to practical implementation. Moreover, with a NN, the cost function of the optimisation problem is non-convex and may suffer from undesirable local minima [178]. To avoid this problem, a Wavelet Neural Network (WNN), which provides convex cost function and guarantees global minima, was adopted as the dynamic model of the vehicle [178,179]. Table 2 provides a summary of selected studies reported around the MPC approach.

Neural network
The dynamic of a non-holonomic vehicle is inherently nonlinear, so linearisation techniques do not always provide desirable results. NN, which is well known for its ability for accurate approximation of nonlinear functions, can be used to identify the models of nonlinear systems. Furthermore, NN is capable of handling uncertainties such as friction coefficient. Such capability is hard to achieve using the classic approach. To subdue the effect of parametric and unstructured uncertainties, NN has been employed to design control systems for AGVs.
In the context of PTC, NN has been used in two different ways, i) to approximate the nonlinear dynamic of the vehicle [140, 141, 177-179, 186, 187], and ii) to generate control law based on the training data using different driving scenarios [188,189]. In the first approach, NN uses the full dynamics or some parameters of the system in order to estimate the future states. NN is used to estimate the future states of the vehicle based on the current states and the control law [177,187]. The parameters of the vehicles such as friction coefficient and inertia can be estimated online by adaptive tuning of the weights of the NN [142,186].
Furthermore, NN can be used to generate the control law for the vehicle [188,189]. In this case, the network is trained with different path scenarios. In [188], a multi-layer NN was trained using the output of an MPC with a variety of driving conditions to emulate the behaviour of the MPC. In another effort, two different NN were developed for identifying the model and generating control action [189]. The first NN is composed of an Elman recurrent NN trained using input and output data to approximate the kinematic and dynamic of the vehicle. The second NN, which is a Multi-layer perception NN, is implemented to generate control law keeping the vehicle on the reference trajectory.
NN suffers from a slow convergence rate and a non-convex nature resulting in local minima solution [190]. To avoid this problem, a WNN was proposed for model identification of AVs [140,178,179]. WNN transforms the optimisation problem into a convex problem which is much easier to solve. WNN also provides a faster convergence rate than conventional NN. However, as WNN does not require prior information about the system, it can-not provide satisfactory results in cases of transient dynamics and varying environment parameters [141]. SRWNN has been developed to address this deficiency [191]. SRWNN has a mother wavelet layer composed of self-feedback neurons, so it can capture the past information of the network and quickly adapt itself to sudden changes in the control environment.
When the AV is controlled at the limit of handling, uncertainty in the system has more adverse effects than the usual driving conditions. Under this circumstance, the vehicle model acts highly nonlinear and the tire-road force interaction cannot be approximated linearly. A robust controller with an adaptive law for NN was developed using the Lyapunov stability theory and the outcomes showed the efficacy of the controller in avoiding the effect of uncertainty at the driving limit [142]. For training the NN, a number of techniques and data sets have been used. In some cases, an adaptive NN is formulated where no offline training was required [112,131,140,141,191]. In these works, the NN training and the adaptation of weights were conducted online. Even though these works show satisfactory results in high-fidelity simulations, no practical implementations were provided. In some early works, the data set was generated by controlling the AV in a simulated environment using some available control techniques [177][178][179]188]. For example, in [179], a PID controller was used to control the vehicle on a reference path and generating training data set. More recently, in [189], the training data set was generated using pseudo random binary signals by ensuring input signal excited necessary operating regions. In [192], the training dataset was collected by using real-world driving data using a drive-bywire vehicle.
In the NN-based controllers, where it was used to estimate the full dynamics or some parameters of the vehicle, the constraints violation and safety of the system is generally dependent on the design of the controller. On the other hand, in  [ 9,194] [72,195] [10] [196] [96], [104] [161], [164] control law generation using a trained NN, the constraints of the vehicle state and control variables are usually not considered. Even though the stability of the controller can be theoretically proved, the physical limit of the vehicle also needs to be considered for the safe operation of AVs. Recently, in [193], a constrained optimisation RNN is developed which considers equality and inequality constraints to limit the control action within an allowable physical limit.

PERFORMANCE EVALUATION
In this section, the performance of different PTCs discussed earlier are evaluated. We first discuss simulation aspects of these PTCs and then present the simulation results for different driving scenarios and vehicle speed and with the presence of disturbances.
A performance comparison of the seven different PTCs is presented in this section. To this aim, a few assumptions are used: i) for all control techniques, a kinematic model of the vehicle is used, ii) for each controller, the most common proposed configuration of the controller is used, and iii) the performance of the controllers are evaluated for three different driving scenarios of single-lane change, double-lane change (adapted from ISO-3888) and simple turn. Table 3 shows the control techniques selected for the simulation and the references from which they are adopted.
The performances of the controllers are evaluated using the following criteria: All selected controllers have some free gains or weights . These parameters requiring to be tuned have a dominant effect on the performance and accuracy of the controller. Therefore, to have a consistent comparison of these controllers, a Genetic Algorithm (GA) optimiser is used here to tune these parameters. The objective here is to compare the performances of the controllers with the same tuning effort. The optimisation is performed in order to find the optimised value of tuning parame- For the GA optimiser, a population size of 50 and a maximum number of generation of 100 are used. The optimised parameters for different control techniques using GA optimiser are shown in Table 4. In addition, for NMPC, a prediction horizon, N p = 5 and control horizon, N c = 5 time step is used, where time step, ΔT = 0.03s. Figure 9 shows the trajectory and yaw angle of different controllers for three different driving scenarios. The forward speed of the vehicle is kept constant at 30 km/h and the time interval dt = 0.03 s is used for all simulation results. Figure 10 shows the lateral and yaw angle errors and the steering angle of the vehicle for different controllers. In this figure, the single lane change driving scenario is used and the vehicle speed is kept constant at 30 km/h.
In addition, performance of the controllers is compared for the speed range of 20-60 km/h for different driving scenarios. Figure 13 shows the RMS lateral error and Figure 14 shows the maximum lateral error for each driving scenario for different speeds of the vehicle.
The performance of the controller is also evaluated under the influence of external disturbances. For this purpose, we simulate the measurement error and noise by adding random noise to the output of the vehicle. The random noise sequence was assumed to lie in a compact set  ∈ [−0.01 0.01]. Figure 11 shows the trajectory of the vehicle for different controllers with the addition of disturbances. A single lane change driving scenario and a constant vehicle speed of 30 km/h are used for the results. Moreover, to compare the effect of disturbances on the controller, the RMS error of all the controllers for both with and without the integration of disturbances are shown in Figure 12.

DISCUSSION AND SUMMARY
The simulation of different PTCs was initially shown for ideal conditions without external disturbances. Then, the RMS  [10,39,50,194]. Figure 13 shows the average RMS error for different vehicle speeds. it can also be seen that the SMC shows a significant chattering effect even for ideal conditions which is similar to the discussion in [63]. However, the chattering effects can be reduced by using a higher order SMC [97,[103][104][105][106][107]. For other controllers, no significant differences can be found in the performances for ideal conditions and low vehicle speed (< 30 km/h) depicted in Figures 9 and 10. However, all these controllers have at least one free parameter that needed to be tuned. We notice that the parameter tuning for each of these controllers is cumbersome and sometimes specific to driving scenarios. To avoid this issue, a Genetic Algorithm-based optimisation technique has been developed to find the best value for each tuning parameter. The optimisation process was implemented based on 5 different driving scenarios (simple turn, sharp turn, single lane change, double lane change and U turn) and the parameter values provided by the optimiser work well for these specific driving scenarios. However, these parameters may not be suitable for other or changing road conditions, so a more sophisticated tuning approach is required. One of the possible ways to solve this issue is to implement a learning-based parameter estimation approach where parameter values can be updated online.
To evaluate the performance of the controllers on more realistic driving scenarios, we included the effect of external disturbances. From the simulation results, it is apparent that, although the geometric controllers, PPC and Stanley provide satisfactory performances for ideal conditions, their performance degrades significantly with the presence of external disturbances which is similar to the results found in [10,50]. From the review study and our simulation outcomes, it is also apparent that, even though these geometric controllers perform reasonably well at lower velocities, they may not suitable for highway driving.
A similar trend is observed for the case of FL, where the performance of the controller degrades significantly with the addition of external disturbance. The performance of this controller deteriorates even further with the increase in the vehicle speed which makes it not suitable for highspeed highway driving. Even though the performance of the controller at higher velocities can be improved by integrating the dynamics of a vehicle [59], the formulation of this controller is not straightforward and requires significant tuning. A similar conclusion can be drawn for LDM where performance also degrades due to the effect of disturbances. For LDM, although the lateral error is low for both ideal and disturbance cases, the orientation error increases considerably under the influence of disturbance.
The optimisation-based controllers, such as LQR and NMPC, provide relatively lower lateral and orientation errors than the other controllers with/out disturbance. From the results, the LQR shows perfect orientation tracking and a relatively higher lateral error than NMPC. We found the optimal controller such as LQR and NMPC is more suitable for highway driving than other controllers. These controllers are easier to formulate and a dynamic model of the vehicle can be easily integrated into them. However, due to the use of linearised model, the LQR is less robust [63] than the NMPC. Even though NMPC solves optimization for a shortened horizon, it provides the provision to includes constraints such as physical and dynamic limits of the vehicle. Moreover, it can handle multiple states and control variables which makes it highly suitable for the control task of AV. Using these capabilities, in addition to having a higher tracking accuracy, the safety and comfort of the passenger can also be ensured [152].
On the other hand, one of the fundamental drawbacks of the optimisation-based controller is the computation cost. NMPC can provide higher accuracy with a more detailed dynamic model of the vehicle; however, it requires significantly increased computational cost. A number of different approaches [27,28,166,167,169] have been already proposed by the researchers to reduce the computation cost of MPC which is an active field of research.
Even with superior performances, MPC has a number of free parameters that needed to be tuned depending on the formulation of the cost function. An appropriate and detailed cost function is of utmost importance for MPC. With a proper formulation of a cost function and by choosing an appropriate value for each term, a number of different objectives including safety, tracking accuracy and comfort of the passenger can be achieved. However, from our implementation experience, the tuning of these weights using trial-and-error approach requires significant time and effort. To avoid this, a suitable parameter tuning approach is needed to be developed. One of the possible ways to achieve this is to implement a learning-based MPC where parameters can be tuned using human demonstrations [197] or Bayesian optimisation [198]. Learning-based MPC is currently an active field of research [199,200].
From the observation of the reported outcomes and the simulation results of the current study, the pros and cons of each technique are shown in Table 5.

CONCLUSION
This study has provided a critical review of several selected techniques used for the design of Path Tracking Controller (PTC) of AVs. These control strategies were chosen based on their popularity in the field of path tracking control and the applicability to car-like autonomous vehicles. These techniques include Pure Pursuit Controller ( PPC), Stanley, Feedback Linearisation (FL), Lyapunov's Direct Method (LDM), Linear Quadratic Regulator (LQR), Sliding Mode Control (SMC), Adaptive Control, Model Predictive Control (MPC), and Neural Network (NN). The AVs were assumed to have limited controllability due to non-holonomic constraints such as carlike vehicles and differential drive mobile robots. Two common vehicle models were also discussed and their mathematical formulations were presented. A simulation study for urban path tracking tasks was also performed in order to evaluate the performance of the selected techniques. The simulation outcomes were discussed in detail and the pros and cons of each technique have been shown for the sake of implementation and improvement of state-of-the-art PTC.
From the extensive literature review and the simulation results of the controllers, NMPC seems to be most suitable for highway driving for an AV. The geometric controllers (i.e. PPC and Stanley) are not suitable for highway driving due to their poor performance at higher speeds. A similar conclusion can be made for FL and LDM based on their performances at different driving scenarios. On the other hand, the performance of the robust controller (i.e. SMC), degrades less than the other controllers for external disturbances; however, they are prone to chattering which affects the comfort of the passenger and may put a significant strain on the hardware. The optimisation-based controllers, such as LQR and NMPC, provide relatively lower lateral and orientation errors than the other controllers with disturbance. This finding justifies the application of these approaches when integrated into more intelligent learningbased techniques in order to establish a robust and adaptive controller that can act in real-time, irrespective of complexity in the vehicle dynamic model. The future step of the current study will be adopted to develop a PTC that can realise these qualities.