Skip to main content

Comparative Study of Trajectory Tracking Control for Automated Vehicles via Model Predictive Control and Robust H-infinity State Feedback Control

Abstract

A comparative study of model predictive control (MPC) schemes and robust \(H_{\infty }\) state feedback control (RSC) method for trajectory tracking is proposed in this paper. The main objective of this paper is to compare MPC and RSC controllers’ performance in tracking predefined trajectory under different scenarios. MPC controller is designed based on the simple longitudinal-yaw-lateral motions of a single-track vehicle with a linear tire, which is an approximation of the more realistic model of a vehicle with double-track motion with a non-linear tire mode. RSC is designed on the basis of the same method as adopted for the MPC controller to achieve a fair comparison. Then, three test cases are built in CarSim-Simulink joint platform. Specifically, the verification test is used to test the tracking accuracy of MPC and RSC controller under well road conditions. Besides, the double lane change test with low road adhesion is designed to find the maximum velocity that both controllers can carry out while guaranteeing stability. Furthermore, an extreme curve test is built where the road adhesion changes suddenly, in order to test the performance of both controllers under extreme conditions. Finally, the advantages and disadvantages of MPC and RSC under different scenarios are also discussed.

Introduction

The increasing demands on mobility, efficiency and safety have extremely promoted the development of intelligent transportation system (ITS) in recent years [1,2,3,4]. As one of the most promising technologies of automotive industry, automated vehicles (AVs) with the improved security, has great potential applications in many fields and has attracted from both industry and academic communities [5,6,7], many attentions. Generally, the typical architecture of an AV system mainly incorporates two parts [8, 9], namely, perception system and decision-making. Each of them is, in general, divided into many subsystems. Trajectory tracking control is a fundamental issue for AVs, which is devoted to track a predefined path and velocity profiles accurately and the errors (i.e. the lateral offset, heading and velocity errors) need to converge to zero during the manipulating process [10].

In recent years, much research work on trajectory tracking have been studied [11,12,13,14] and the main challenges of achieving accurate trajectory tracking lie in the following aspects: (1) non-holonomic property and multi-constrains of AGVs; (2) trade-off between vehicle model accuracy and computation efficiency; (3) uncertainties and time-varying parameters of vehicle dynamic model; (4) external disturbances of complex driving environment. Besides, the interaction between road and tires is also an important source of coupling. According to the vehicle dynamics, it’s known that the maximal longitudinal and lateral tire force are determined based on the friction ellipse under certain road conditions [15]. Furthermore, for most existing literatures of trajectory tracking, the bicycle vehicle model which describes longitudinal, lateral and yaw motion is usually adopted for the controller design. However, owing to the yaw motion caused by wheels steering, dynamic and kinematic couplings will put huge impact on the controllers’ performance [16]. From literatures, model predictive control (MPC) and robust \(H_{\infty }\) control are two effective techniques to address the problems mentioned above [1723].

Recently, MPC has become one of the most popular optimal control methods due to its well performance in processing multi-constrained linear or non-linear system [24, 25], and it is easy to be used at different levels of the process control structures [18, 26]. Owing to its advantages, MPC has been widely implemented in autonomous industry including trajectory tracking issues. The trajectory controller is designed by taking the tracking task as a multi-constrained model predictive control (MMPC) issue [27, 28]. On the other hand, robust \(H_{\infty }\) control also has certain advantages in handling the presence of model uncertainties and external disturbances, which results from variations of environment parameters as well as the vehicle states. Ref. [29] managed to devise a robust \(H_{\infty }\) path following control strategy for AVs with considering signal transmission delay and data dropouts. In addition, the time-varying parameters, steering system backlash-type hysteresis, and uncertainties of nonlinear tire model were also considered in Refs. [3032].

Though MPC and robust \(H_{\infty }\) control are two effective strategies in tackling trajectory tracking issues, they show different features. Therefore, the objective of this paper is to show the difference between MPC and robust \(H_{\infty }\) state feedback control (RSC) under different driving conditions. To the best of the authors’ knowledge, there is no comparative study of MPC and RSC techniques for trajectory tracking. Both MPC and RSC controllers are designed based on the same longitudinal-yaw-lateral motions of a single-track vehicle with a linear tire model to achieve a fair comparison. The first key part of this paper is to design appropriate test cases to compare the difference between MPC and RSC controller. We re-emphasize that the main objective of this paper is a comparative study of path-following control employing different manoeuvres. Thus, the second part is to find the maximum velocity that both controllers can execute and to give corresponding reasons, which can give guidance for researchers to design controllers.

The rest of the paper are organized as follows. In Section 2, the trajectory tracking error model and 3-DOF vehicle dynamics model are deduced. In Section 3, the controllers based on MPC and RSC are designed to track expected trajectory. Then, the performance of MPC and RSC controllers is demonstrated in Section 4. Finally, the conclusions are illustrated in Section 5.

Trajectory Tracking Model

The trajectory tracking model is shown in Figure 1 and the definition of parameters used in the design of controllers is listed in Table 1.

Figure 1
figure1

Schematic diagram of trajectory tracking model and vehicle dynamic model

Table 1 Symbol and definition of the tracking system

At any given time, it’s assumed that the reference trajectory is given by a tuple \(\left[ {x_{r} ,y_{r} ,\varphi_{r} , v_{r} } \right]^{{\text{T}}}\) and subscript \(r\) represents reference profiles. From Figure 1, the lateral offset \(e_{y}\) can be calculated by:

$$e_{y} = \left( {x - x_{r} } \right)\sin \left( {\varphi_{r} } \right) - \left( {y - y_{r} } \right)\cos \left( {\varphi_{r} } \right).$$
(1)

The heading error \(e_{\varphi }\) and velocity error \(e_{v}\) are defined as follows

$$\left\{ {\begin{array}{*{20}c} {e_{\varphi } = \varphi - \varphi_{r} ,} \\ {e_{v} = v_{x} - v_{r} .} \\ \end{array} } \right.$$
(2)

Given the road curvature \(C_{R}\), the desired yaw rate is obtained:

$$\dot{\varphi }_{r} = v_{x} C_{R} .$$
(3)

Besides, the derivatives of CG’s position can be obtained from the kinematic relationship:

$$\left\{ {\begin{array}{*{20}c} {\dot{x} = v_{x} \cos \left( \varphi \right) - v_{y} \sin \left( \varphi \right),} \\ {\dot{y} = v_{x} \sin \left( \varphi \right) + v_{y} \cos \left( \varphi \right).} \\ \end{array} } \right.$$
(4)

Thus, combined Eq. (1) with Eqs. (2)‒(4), we can get

$$\left\{ \begin{aligned} \dot{e}_{y} & = \dot{x}\sin \left( {\varphi_{r} } \right) - \dot{y}\cos \left( {\varphi_{r} } \right) = v_{x} \sin \left( {e_{\varphi } } \right) + v_{y} \cos \left( {e_{\varphi } } \right), \\ \dot{e}_{\varphi } & = r - v_{x} C_{R} , \\ \dot{e}_{v} & = \dot{v}_{x} - \dot{v}_{r} . \\ \end{aligned} \right.$$
(5)

The schematic diagram of single-track vehicle model coupled 3-DOF vehicle dynamic model is also shown in Figure 1. According to Newton’s laws, the vehicle dynamics in the yaw plane can be described by the following differential equations:

$$\left\{ \begin{array}{*{20}ll} m\left( {\dot{v}_{x} - rv_{y} } \right) & = F_{xf} + F_{xr} \cos \delta_{f} = F_{x} , \\ m\left( {\dot{v}_{y} + v_{x} r} \right) & = F_{yf} + F_{yr} , \\ I_{z} \dot{r} & = l_{f} F_{yf} - l_{r} F_{yr} , \\ \end{array} \right.$$
(6)

where \(F_{x}\) means the generalized longitudinal force of AVs including wind drag and tire rolling resistance. \(F_{xf}\) and \(F_{xr}\) are the longitudinal force in front wheels and rear wheels, respectively, \(\delta_{f}\) is front wheel steering angle.

The front and rear lateral force \(F_{yf}\) and \(F_{yr}\) are the function of tire slip angles that can be calculated as follows:

$$F_{yf} = C_{f} \alpha_{f} ,\;F_{yr} = C_{r} \alpha_{r} ,$$
(7)

where \(\alpha_{f}\) and \(\alpha_{r}\) denote the wheel slip angles, which can be calculated as follows:

$$\alpha_{f} = \delta_{f} - \frac{{l_{f} r + v_{y} }}{{v_{x} }},\;\alpha_{r} = \frac{{l_{r} r - v_{y} }}{{v_{x} }}.$$
(8)

Therefore, combined Eq. (6) with Eqs. (7), (8), then

$$\left\{ \begin{gathered} \dot{v}_{y} = a_{11} v_{y} + a_{12} r + b_{1} \delta_{f} , \hfill \\ \dot{r} = a_{21} v_{y} + a_{22} r + b_{2} \delta_{f } , \hfill \\ \dot{e}_{y} = v_{x} \sin e_{\varphi } + v_{y} \cos e_{\varphi } , \hfill \\ \dot{e}_{\varphi } = r - C_{R} \left( {e_{v} + v_{xr} } \right), \hfill \\ \dot{e}_{v} = rv_{y} - \dot{v}_{xr} + \frac{{F_{x} }}{m}, \hfill \\ \end{gathered} \right.$$
(9)

where \(a_{11} = - \frac{{\left( {C_{f} + C_{r} } \right)}}{{mv_{x} }} , \;a_{12} = - v_{x} - \frac{{(l_{f} C_{f - } l_{r} C_{r} )}}{{mv_{x} }}, \;a_{21} = - \frac{{(l_{f} C_{f - } l_{r} C_{r} )}}{{I_{z} v_{x} }} ,\;a_{22} = - \frac{{\left( {l_{f}^{2} C_{f + } l_{r}^{2} C_{r} } \right)}}{{I_{z} v_{x} }}\), \(b_{1} = \frac{{C_{f} }}{m} , b_{2} = \frac{{l_{f} C_{f} }}{{I_{z} }}.\)

To facilitate the controller design, rewrite the Eq. (9) to form the following linear state-space equation, which can be represented as:

$$\left\{ \begin{aligned} \dot{x}\left( t \right) & = A\left( t \right)x\left( t \right) + B\left( t \right)u\left( t \right) + D\left( t \right), \\ y\left( t \right) & = C\left( t \right)x\left( t \right), \\ \end{aligned} \right.$$
(10)

with \(A\left( t \right) = \left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} {a_{11} } & {a_{12} } & 0 \\ {a_{21} } & { a_{22} } & 0 \\ \end{array} } & {\begin{array}{*{20}c} 0 & { 0} \\ 0 & { 0} \\ \end{array} } \\ {\begin{array}{*{20}c} {\begin{array}{*{20}c} 1 \\ 0 \\ r \\ \end{array} } & {\begin{array}{*{20}c} { 0} \\ { 1} \\ { 0} \\ \end{array} } & {\begin{array}{*{20}c} { 0} \\ { 0} \\ { 0} \\ \end{array} } \\ \end{array} } & {\begin{array}{*{20}c} {\begin{array}{*{20}c} { v_{x} } \\ 0 \\ 0 \\ \end{array} } & {\begin{array}{*{20}c} 0 \\ { - C_{R} } \\ 0 \\ \end{array} } \\ \end{array} } \\ \end{array} } \right]\), \(B\left( t \right) = \left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} 0 \\ 0 \\ 0 \\ \end{array} } & {\begin{array}{*{20}c} {b_{1} } \\ {b_{2} } \\ 0 \\ \end{array} } \\ {\begin{array}{*{20}c} 0 \\ {{\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 m}}\right.\kern-\nulldelimiterspace} \!\lower0.7ex\hbox{$m$}}} \\ \end{array} } & {\begin{array}{*{20}c} 0 \\ 0 \\ \end{array} } \\ \end{array} } \right], \;D\left( t \right) = \left[ \begin{gathered} 0 \hfill \\ 0 \hfill \\ 0 \hfill \\ - C_{R} v_{x} \hfill \\ - \dot{v}_{r} \hfill \\ \end{gathered} \right]\), \(C\left( t \right) = \left[ {\begin{array}{*{20}c} 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 \\ \end{array} } \right],\) where the state variables is \(x\left( t \right) = \left[ {v_{y} ,r,e_{y} ,e_{\varphi } ,e_{v} } \right]^{{\text{T}}}\) and the output variables is \(y\left( t \right) = \left[ {r,e_{y} ,e_{\varphi } ,e_{v} } \right]^{{\text{T}}}\). The control input is \(u\left( t \right) = \left[ {F_{x} ,\delta_{f} } \right]^{{\text{T}}}\) and \(D\left( t \right)\) means disturbance.

Control Law Allocation

In the previous section, the trajectory tracking model has been established. Then, in this section, the trajectory tracking controller will be designed based on MPC and robust theory, respectively. Specifically, both controllers will be built with model described in Eq. (10) to compare the differences between them.

Trajectory Tracking Controller Based on MPC

Formulation of Augmented System

As analyzed above, the trajectory tracking task can be taken as a predictive control problem with multi-constraints. Note that the model described in Eq. (10) is a continuous-time system. To facilitate MPC controller design, the continuous-time system should be transformed into a discrete state-space mode with the fixed sampling period. Here, the zero-order hold (ZOH) method is applied and the Eq. (10) can be converted as:

$$\left\{ \begin{array}{*{20}ll} x\left( {k + 1} \right) = A_{d} x\left( k \right) + B_{d} u\left( k \right) + D\left( k \right), \\ y\left( k \right) = C_{d} x\left( k \right), \\ \end{array} \right.$$
(11)

where \(A_{d} \in R^{5 \times 5} ,\; B_{d} \in R^{5 \times 2}\) and \(C_{d} \in R^{4 \times 5}\) are the system coefficient matrices and \(k\) means the time step.

Furthermore, to achieve a better control performance, the state vector \(x\left( k \right)\) and the increment input \(\Delta u\left( k \right)\) are usually coupled in an augmented vector, which can be represented as \(\tilde{x}\left( k \right) = \left[ {x\left( k \right), \;\Delta u\left( k \right)} \right]^{{\text{T}}}\). And the control input can be calculated by

$$u\left( k \right) = u\left( {k - 1} \right) + \Delta u\left( k \right).$$
(12)

Thus, the system Eq. (11) can be rewritten as the following equations:

$$\left\{ \begin{array}{*{20}ll} \tilde{x}\left( {k + 1} \right) = \tilde{A}\left( k \right)\tilde{x}\left( k \right) + \tilde{B}\left( k \right)\Delta u\left( k \right) + \tilde{D}\left( k \right), \\ \tilde{y}\left( k \right) = \tilde{C}\left( k \right)\tilde{x}\left( k \right), \\ \end{array} \right.$$
(13)

where \(\tilde{A}\left( k \right) = \left[ {\begin{array}{*{20}c} {A_{d} } & {B_{d} } \\ {0_{2 \times 5} } & {I_{2} } \\ \end{array} } \right]\), \(\tilde{B}\left( k \right) = \left[ {\begin{array}{*{20}c} {B_{d} } \\ {I_{2} } \\ \end{array} } \right]\) and \(\tilde{C}\left( k \right) = \left[ {\begin{array}{*{20}c} {C_{d} } & {0_{4 \times 2} } \\ \end{array} } \right].\)

The sequence of future incremental inputs and disturbances at time step \(k\) are denoted as \(\Delta U\left( k \right)\) and \(\overline{D}\left( k \right)\), respectively.

$$\left\{ \begin{aligned} \Delta U\left( k \right) & = \left[ {\Delta u\left( k \right),\Delta u\left( {k + 1} \right), \cdots ,\Delta u\left( {k + N_{c} - 1} \right)} \right]^{{\text{T}}} , \\ \overline{D}\left( k \right) & = \left[ {\tilde{D}\left( k \right),\tilde{D}\left( {k + 1} \right), \cdots ,\tilde{D}\left( {k + N_{p} - 1} \right)} \right]^{{\text{T}}} , \\ \end{aligned} \right.$$
(14)

where \(N_{p}\) is the prediction horizon and \(N_{c}\) means the control horizon.

Therefore, the predicted output can be calculated by the following formulations:

$$\left\{ \begin{gathered} \tilde{x}\left( {k + 1} \right) = \tilde{A}\tilde{x}\left( k \right) + \tilde{B}\Delta u\left( k \right) + \tilde{D}\left( k \right), \hfill \\ \tilde{x}\left( {k + 2} \right) = \tilde{A}^{2} x\left( k \right) + \tilde{A}\tilde{B}\Delta u\left( k \right) + \tilde{A}\tilde{D}\left( k \right) + \hfill \\ \tilde{B}\Delta u\left( {k + 1} \right) + \tilde{D}\left( {k + 1} \right), \hfill \\ \vdots \hfill \\ \tilde{x}\left( {k + N_{c} } \right) = \tilde{A}^{{N_{c} }} x\left( k \right) + \tilde{A}^{{N_{c} - 1}} \tilde{B}\Delta u\left( k \right) + \tilde{A}^{{N_{c} - 1}} \tilde{D}\left( k \right) + \ldots \hfill \\ + \tilde{B}\Delta u\left( {k + N_{c} - 1} \right) + \tilde{D}\left( {k + N_{c} - 1} \right), \hfill \\ \vdots \hfill \\ \tilde{x}\left( {k + N_{p} } \right) = \tilde{A}^{{N_{p} }} x\left( k \right) + \tilde{A}^{{N_{p} - 1}} \tilde{B}\Delta u\left( k \right) + \tilde{A}^{{N_{p} - 1}} \tilde{D}\left( k \right) + \ldots \hfill \\ + \tilde{A}^{{N_{p} - N_{c} }} \tilde{B}\Delta u\left( {k + N_{c} - 1} \right) + \tilde{A}^{{N_{p} - N_{c} }} \tilde{D}\left( {k + N_{c} - 1} \right) \hfill \\ + \ldots \tilde{D}\left( {k + N_{p} - 1} \right). \hfill \\ \end{gathered} \right.$$
(15)

Here, define the predicted outputs of the predictive state-space model at time step k as:

$$Y\left( k \right) = \left[ {\tilde{y}\left( {k + 1} \right),\tilde{y}\left( {k + 2} \right), \cdots ,\tilde{y}\left( {k + N_{p} } \right)} \right]^{{\text{T}}} .$$
(16)

Denote the performance outputs over the prediction horizon \(N_{p}\) as a compact matrix form:

$$Y\left( k \right) = \Gamma \tilde{x}\left( k \right) + \Theta \Delta U\left( k \right) + \xi \overline{D}\left( k \right),$$
(17)

with \(\Gamma = \left[ {\tilde{C}\tilde{A}, \tilde{C}\tilde{A}^{2} , \cdots \tilde{C}\tilde{A}^{{N_{c} }} , \cdots ,\tilde{C}\tilde{A}^{{N_{p} }} } \right]^{{\text{T}}}\),

$$\Theta = \left[ {\begin{array}{*{20}c} {\tilde{C}\tilde{B}} & 0 & \cdots & 0 \\ {\tilde{C}\tilde{A}\tilde{B}} & {\tilde{C}\tilde{B}} & \cdots & \vdots \\ \vdots & \vdots & \cdots & 0 \\ {\tilde{C}\tilde{A}^{{N_{c} - 1}} \tilde{B}} & {\tilde{C}\tilde{A}^{{N_{c} - 2}} \tilde{B}} & \cdots & {\tilde{C}\tilde{B}} \\ \vdots & \vdots & \ddots & \vdots \\ {\tilde{C}\tilde{A}^{{N_{c} - 1}} \tilde{B}} & {\tilde{C}\tilde{A}^{{N_{c} - 2}} \tilde{B}} & \cdots & {\tilde{C}\tilde{A}^{{N_{p} - N_{c} }} \tilde{B}} \\ \end{array} } \right],$$
$$\xi = \left[ {\begin{array}{*{20}c} {\tilde{C}} & 0 & \cdots & 0 \\ {\tilde{C}\tilde{A}} & {\tilde{C}} & \cdots & 0 \\ {\tilde{C}\tilde{A}^{2} } & {\tilde{C}\tilde{A}} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ {\tilde{C}\tilde{A}^{{N_{p} - 1}} } & {\tilde{C}\tilde{A}^{{N_{p} - 2}} } & \cdots & {\tilde{C}} \\ \end{array} } \right].$$

Formulation of Trajectory Tracking Problem Using MPC

The aim of MPC-based trajectory tracking controller is to make the predicted outputs as close as possible to the reference trajectory within the predictive horizon, and the reference trajectory \(Y_{r} \left( k \right)\) is assumed to remain unchanged during current optimization window. The reference signals are described as:

$$Y_{r} \left( k \right) = \left[ {\tilde{y}_{r} \left( {k + 1} \right),\tilde{y}_{r} \left( {k + 2} \right), \cdots ,\tilde{y}_{r} \left( {k + N_{p} } \right)} \right]^{{\text{T}}} .$$
(18)

Thus, a typical tracking accuracy and control smoothness-oriented cost function over the predictive horizons is defined:

$${\mathcal{L}}\left( {x,u\left( {k - 1} \right),U\left( k \right)} \right) = \mathop {\min }\limits_{{\Delta U_{k} }} \left\{ {[Y_{r} \left( k \right) - Y\left( k \right)]^{{\text{T}}} \overline{Q}[Y_{r} \left( k \right) - Y\left( k \right)] + \Delta U^{{\text{T}}} \left( k \right)\overline{R}\Delta U\left( k \right)} \right\},$$
(19)

where diagonal matrices \(\overline{Q}\) and \(\overline{R}\) are the positive definite weight matrices (i.e., \(\overline{Q} > 0\) and \(\overline{R} > 0\)) which can be regulated to achieve desired closed-loop performance. The first item in cost function reflects the tracking error between the predictive outputs and the reference trajectory. The second one refers to the penalty on the control inputs that is to make the control process smoother.

On the other hand, vehicles have many inherent physical limitations. These limitations on the capacity of control actuators result in the hard constrains of the tracking system. Besides, there are also some restrictions imposed on output variables due to environment conditions (i.e., road boundary, speed limit, etc.). Here, the constrains for this trajectory tracking problem are specified as:

$$\left\{ \begin{aligned} & \Delta U_{\min } \left( k \right) \le \Delta U\left( k \right) \le \Delta U_{\max } \left( k \right), \\ & U_{\min } \left( k \right) \le G\Delta U + Fu\left( {k - 1} \right) \le U_{\max } \left( k \right), \\ & Y_{\min } \le Y\left( k \right) \le Y_{\max } , \\ \end{aligned} \right.$$
(20)

with

$$G = \left[ {\begin{array}{*{20}c} 1 & 0 & \cdots & 0 & 0 \\ 1 & 1 & \cdots & 0 & 0 \\ 1 & 1 & \ddots & \vdots & \vdots \\ 1 & 1 & \cdots & 1 & 0 \\ 1 & 1 & \cdots & 1 & 1 \\ \end{array} } \right]_{{N_{c} \times N_{c} }} \quad F = \left[ \begin{gathered} 1 \hfill \\ 1 \hfill \\ \vdots \hfill \\ 1 \hfill \\ 1 \hfill \\ \end{gathered} \right]_{{N_{c} \times 1 }}$$

where \(\Delta U_{\min } , \;\Delta U_{\max } , \;U_{\min } , \;U_{\max } \in R^{{2N_{c} \times 1}}\), \(Y_{{{\text{min}}}} ,\) \(Y_{{{\text{max}}}} \in R^{4 \times 1}\) and \(u\left( {k - 1} \right)\) is the control inputs at time k − 1.

Then, combined Eq. (19) with Eq. (20), the trajectory tracking problem is converted to solve the following optimal problem with multi-constrains:

$$\begin{gathered} {\mathcal{L}}\left( {x,u\left( {k - 1} \right),U\left( k \right)} \right) = \hfill \\ \mathop {\min }\limits_{{\Delta U_{k} }} \left\{ {[Y_{r} \left( k \right) - Y\left( k \right)]^{{\text{T}}} \overline{Q}[Y_{r} \left( k \right) - Y\left( k \right)] + \Delta U^{{\text{T}}} \left( k \right)\overline{R}\Delta U\left( k \right)} \right\}, \hfill \\ \end{gathered}$$
$${\text{s}}.{\text{t}}.,\;\left\{ \begin{aligned} & \Delta U_{\min } \le \Delta U \le \Delta U_{\max } , \\ & U_{\min } \le G\Delta U + Fu\left( {k - 1} \right) \le U_{\max } , \\ & Y_{\min } \le Y\left( k \right) \le Y_{\max } . \\ \end{aligned} \right.$$
(21)

It’s found that the optimization problem Eq. (21) is based on linear system and the cost function is convex quadratic, which means it’s can be remade as quadratic program (QP) issues if the constrains are convex too. The problem described in Eq. (21) needs to be translated into standard form of quadratic problems:

$$\begin{array}{*{20}c} {{\mathcal{L}^{\prime}}\left( {x,u\left( {k - 1} \right),U\left( k \right)} \right) = \mathop {\min }\limits_{{\Delta U_{k} }} \left\{ {\frac{1}{2}\Delta U^{{\text{T}}} \left( k \right)G_{k} \Delta U\left( k \right) + H^{{\text{T}}} \Delta U\left( k \right)} \right\}} \\ {{\text{s}}.{\text{t}}., \left\{ \begin{aligned} & \Delta U_{\min } \le \Delta U \le \Delta U_{\max } , \\ & U_{\min } \le G\Delta U + Fu\left( {k - 1} \right) \le U_{\max } , \\ & Y_{\min } \le Y\left( k \right) \le Y_{\max } , \\ \end{aligned} \right.} \\ \end{array}$$
(22)

where \(G_{k} = 2(\Theta^{{\text{T}}} {\overline{\text{Q}}}\Theta + {\overline{\text{R}}})\), \(H = \Theta^{{\text{T}}} {\overline{\text{Q}}}\left( {\Gamma \tilde{x} - Y_{r} + \xi \overline{D}} \right)\).

Then, at time step k, the above quadratic problem can be solved (i.e., quadprog function in Matlab) and will get a solution \(\Delta U_{k}^{*}\). Once the solution is obtained, the first element of solution vector in vector, namely, \(\Delta u_{k}^{*}\) will be used and the optimal control inputs at this time step is computed as:

$$u\left( k \right) = u\left( {k - 1} \right) + \Delta u_{k}^{*}$$
(23)

Similarly, at next time step \(k + 1\), new input measurements and updated system states produce new quadratic problem that needs to solve. In conclusion, by solving a quadratic problem at each time step, the MPC controller will get an optimal input for next time step.

Trajectory Tracking Controller Based on RSC

Preliminary Knowledge of RSC

We re-emphasize that the main objective of this paper is a comparative study of different control strategies. Both MPC-based and RSC-based tracking controllers use standard design methods, and specifically, the RSC-based tracking controller design mainly adopts the theory applied in Refs. [10, 21]. The design of RSC is also based on the linearized vehicle model Eq. (10) and the objective function is defined as follows:

$$\int \limits_{0}^{t} y^{{\text{T}}} \left( t \right)y\left( t \right){\text{d}}t \le \gamma^{2} \int \limits_{0}^{t} D^{{\text{T}}} \left( t \right)D\left( t \right){\text{d}}t,$$
(24)

where the main task is to obtain a control law that can make the closed-loop system satisfy the asymptotically stability and fulfill the \(H_{\infty }\) performance index \(\gamma\) that attenuate the effect of the external disturbance \(D\left( t \right)\).

Before the controller design, some essential lemmas and theorems also need to be introduced. Consider a polytopic linear parameter varying (LPV) system, which is described as follows:

$$\left\{ \begin{aligned} \dot{x}\left( t \right) & = A_{0} \left( q \right)x\left( t \right) + B_{0} \left( q \right)u\left( t \right), \\ y\left( t \right) & = C_{0} \left( q \right)x\left( t \right). \\ \end{aligned} \right.$$
(25)

It’s equal to the following equations:

$$\left\{ \begin{aligned} \dot{x}\left( t \right) & = \sum \limits_{i = 1}^{n} q_{i} \left[ {A_{0i} x\left( t \right) + B_{0i} u\left( t \right)} \right], \\ y\left( t \right) & = \sum \limits_{i = 1}^{n} q_{i} C_{0i} x\left( t \right), \\ \sum \limits_{i = 1}^{n} q_{i} & = 1, q_{i} \ge 0, \\ \end{aligned} \right.$$
(26)

where the \(A_{0i} , \;B_{0i}\) and \(C_{0i}\) are the values of \(A_{0} \left( q \right)\), \(B_{0} \left( q \right)\) and \(C_{0} \left( q \right)\) at the vertex \(q_{i}\) of the parameters polytope.

Theorem 1

Given a positive scalar \(\gamma_{0}\), the system described in Eq. (26) is asymptotically stable and meets the \(H_{\infty }\) performance index in Eq. (24), if and only if there exists \(n\) symmetric definite matrices \(P_{i}\) and a matrix \(S_{0}\) satisfying the following conditions

$$\left[ {\begin{array}{*{20}c} {A_{0i} S_{0} + S_{0}^{{\text{T}}} A_{0i}^{{\text{T}}} } & {S_{0}^{{\text{T}}} B_{0i}^{{\text{T}}} } & {C_{0i} } & {P_{i} - S_{0}^{{\text{T}}} } \\ * & { - \gamma_{0} I} & 0 & 0 \\ * & * & { - \gamma_{0} I} & 0 \\ * & * & * & 0 \\ \end{array} } \right] < 0, i = 1,2, \cdots ,n.$$
(27)

The proof of this theorem can be found in Ref. [21]. The RSC-based controller design is on account of linear matrix inequality (LMI) method. So far, the preliminary knowledge has been prepared sufficiently for the RSC-based controller design.

Formulation of Trajectory Tracking Problem

Similar to MPC-based controller, the constrains imposed on inputs should be taken into consideration [33]. Define Lyapunov equation as follows:

$$V\left( t \right) = x\left( t \right)^{{\text{T}}} Px\left( t \right).$$
(28)

And it’s assumed that the following conditions are satisfied

$$x\left( t \right)^{{\text{T}}} Px\left( t \right) < \eta ,$$
(29)
$$u\left( t \right) = Kx\left( t \right),$$
(30)

where \(K\) is the gain of the controller and \(\eta\) is a given constant. The maximum inputs are denoted as \(u_{{{\text{max}}}}\), then,

$$\begin{aligned} \max\parallel u\left( t \right)\parallel^{2} & = \max\parallel x^{{\text{T}}} \left( t \right)K^{{\text{T}}} Kx\left( t \right)\parallel \\ & = \max \parallel x^{{\text{T}}} \left( t \right)P^{\frac{1}{2}} P^{{ - \frac{1}{2}}} K^{\text{T}} KP^{{ - \frac{1}{2}}} P^{\frac{1}{2}} x\left( t \right) \parallel\\ \end{aligned}$$
$$< \eta \theta_{\max } (P^{{ - \frac{1}{2}}} K^{{\rm{T}}} KP^{{ - \frac{1}{2}}} ) \le u_{\max } I,$$
(31)

where \(\theta_{{{\text{max}}}}\) is the largest eigenvalue of the matrix \((P^{{ - \frac{1}{2}}} K^{{\text{T}}} KP^{{ - \frac{1}{2}}} )\).

Based on Schur complement lemma [34] and Eq. (31), the following conditions can be obtained,

$$\left[ {\begin{array}{*{20}c} { - I} & {\sqrt \eta K} \\ {\sqrt \eta K} & { - u_{{{\text{max}}}}^{2} P} \\ \end{array} } \right] \le 0.$$
(32)

For the system depicted by Eq. (10), it can be found that time-varying parameters \(v_{x} , \frac{1}{{v_{x} }}, r\) and \(C_{R}\) are coupled in the system matrices. These parameters need to be processed before carrying out the design of RSC control law. Here, the polytope model method in Ref. [10] is applied to cover the rang of time-varying parameters. Specifically, in this system, the longitudinal velocity is usually bounded. It can be assumed that \(v_{x}\) varies in the range of \(\left[ {v_{{x{\text{min}}}} , v_{{x{\text{max}}}} } \right]\), \(\frac{1}{{v_{x} }}\) is bound in the range of \(\left[ { \frac{1}{{v_{{x{\text{max}}}} }}, \frac{1}{{v_{{x{\text{min}}}} }}} \right]\) and \(v_{{x{\text{min}}}} , v_{{x{\text{max}}}}\) denote the minimum and maximum values of longitudinal velocity. Similarly, the same assumptions are imposed on \(r\) and \(C_{R}\), namely, \(r\) and \(C_{R}\) vary in the range of \(\left[ {r_{{{\text{max}}}} ,r_{{{\text{min}}}} } \right]\) and \(\left[ {C_{{R{\text{min}}}} , \;C_{{R{\text{max}}}} } \right]\), respectively. Therefore, the time-varying parameters \(v_{x} , \frac{1}{{v_{x} }},r\) and \(C_{R}\) can be expressed by a linear combination of the vertices as follows:

$$\left\{ {\begin{array}{*{20}c} {v_{x} = \sum \limits_{i = 1}^{2} \rho_{1i} \sigma_{1i} ,} & {\frac{1}{{v_{x} }} = \sum \limits_{i = 1}^{2} \rho_{2i} \sigma_{2i} ,} \\ {r = \sum \limits_{i = 1}^{2} \rho_{3i} \sigma_{3i} ,} & {C_{R} = \sum \limits_{i = 1}^{2} \rho_{4i} \sigma_{4i} ,} \\ \end{array} } \right.$$
(33)

where \(\sigma\) represents the vertices coordinates of the polytope and \(\rho\) means the weighting factors, which can be denoted as:

$$\left\{ {\begin{array}{*{20}c} {\rho_{11} = \frac{{v_{{x{\text{max}}}} - v_{x} }}{{v_{{x{\text{max}}}} - v_{{x{\text{min}}}} }},} & {\rho_{12} = \frac{{v_{x} - v_{{x{\text{min}}}} }}{{v_{{x{\text{max}}}} - v_{{x{\text{min}}}} }},} \\ {\rho_{21} = \frac{{\frac{1}{{v_{{x{\text{max}}}} }} - \frac{1}{{v_{x} }}}}{{\frac{1}{{v_{{x{\text{max}}}} }} - \frac{1}{{v_{{x{\text{min}}}} }}}},} & {\rho_{22} = \frac{{\frac{1}{{v_{x} }} - \frac{1}{{v_{{x{\text{min}}}} }}}}{{\frac{1}{{v_{{x{\text{max}}}} }} - \frac{1}{{v_{{x{\text{min}}}} }}}},} \\ {\rho_{31} = \frac{{r_{{{\text{max}}}} - r}}{{r_{{x{\text{max}}}} - r_{{x{\text{min}}}} }},} & {\rho_{32} = \frac{{r - r_{{{\text{min}}}} }}{{r_{{x{\text{max}}}} - r_{{x{\text{min}}}} }},} \\ {\rho_{41} = \frac{{C_{{R{\text{max}}}} - C_{{R}}}}{{C_{{R{\text{max}}}} - C_{{R{\text{min}}}} }},} & {\rho_{42} = \frac{{C_{{R}} - C_{{R{\text{min}}}} }}{{C_{{R{\text{max}}}} - C_{{R{\text{min}}}} }},} \\ \end{array} } \right.$$
$$\left\{ {\begin{array}{*{20}c} {\sigma_{11} = v_{{x{\text{min}}}} ,} & {\sigma_{12} = v_{{x{\text{max}}}} ,} \\ {\sigma_{21} = \frac{1}{{v_{{x{\text{min}}}} }},} & {\sigma_{22} = \frac{1}{{v_{{x{\text{max}}}} }},} \\ {\sigma_{31} = r_{{{\text{min}}}} ,} & {\sigma_{32} = r_{{{\text{max}}}} ,} \\ {\sigma_{41} = C_{{R{\text{min}}}} ,} & {\sigma_{42} = C_{{R{\text{max}}}} .} \\ \end{array} } \right.$$
(34)

Combined Eq. (10) and Eq. (33), the system plant of trajectory tracking system can be rewritten in the polytypic form as:

$$\dot{x}\left( t \right) = \sum \limits_{i = 1}^{16} \beta_{i} \left[ {A_{i} x\left( t \right) + B_{i} u\left( t \right) + D_{i} \left( t \right)} \right],$$
(35)

where \(\beta_{1} = \overline{\beta }_{1111} , \beta_{2} = \overline{\beta }_{1112} , \cdots , \beta_{16} = \overline{\beta }_{2222} , \sum \nolimits_{i = 1}^{16} \beta_{i} = 1\) and \(\overline{\beta }_{ijmn} = \sum \nolimits_{i = 1}^{2} \sum \nolimits_{j = 1}^{2} \sum \limits_{m = 1}^{2} \sum \nolimits_{n = 1}^{2} \rho_{1i} \rho_{2j} \rho_{3m} \rho_{4n}\).

Define \(\beta = \left[ {\beta_{1} , \beta_{2} , \cdots ,\beta_{16} } \right]^{{\text{T}}}\), \(y = \left[ {r,e_{y} ,e_{\varphi } ,e_{v} } \right]^{T}\) and the LPV model of trajectory tracking system can be expressed as:

$$\left\{ \begin{aligned} \dot{x}\left( t \right) & = A\left( \beta \right)x\left( t \right) + B\left( \beta \right)u\left( t \right) + D\left( t \right), \\ y\left( t \right) & = Cx\left( t \right), \\ \end{aligned} \right.$$
(36)

with

$$C = \left[ {\begin{array}{*{20}c} 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 \\ \end{array} } \right].$$

Then, the state-feedback controller is proposed as:

$$u\left( t \right) = K\left( \beta \right)x\left( t \right) = \sum \limits_{i = 1}^{16} \beta_{i} K_{i} x\left( t \right),$$
(37)

where \(K_{i}\) is the control gain.

Combined the Eq. (36) with Eq. (37), the closed-loop system can be obtained:

$$\left\{ \begin{array}{*{20}ll} \dot{x}\left( t \right) = \sum \limits_{i = 1}^{16} \beta_{i} \left[ {(A_{i} + B_{i} K_{i} )x\left( t \right) + D_{i} \left( t \right)} \right], \\ y = Cx\left( t \right). \\ \end{array} \right.$$
(38)

According to theorem 1 and Eq. (38), if the following condition is fulfilled, the controller will achieve the aim of ensuring system stability and \(H_{\infty }\) performance index of the closed-loop system.

$$\left[ {\begin{array}{*{20}c} {(A_{i} + B_{i} K_{i} )S + S^{{\text{T}}} (A_{i} + B_{i} K_{i} )^{{\text{T}}} } & {S^{{\text{T}}} C^{{\text{T}}} } & I & {P_{i} - S^{{\text{T}}} } \\ * & { - \gamma I} & 0 & 0 \\ * & * & { - \gamma I} & 0 \\ * & * & * & 0 \\ \end{array} } \right] < 0, i = 1,2, \cdots ,n,$$
$$\left[ {\begin{array}{*{20}c} { - I} & {\sqrt \eta K_{i} } \\ {\sqrt \eta K} & { - u_{max}^{2} P_{i} } \\ \end{array} } \right] \le 0, i = 1,2, \cdots ,n,$$
(39)

where the \(P_{i}\) is a symmetric positive definite matrix and \(S\) is a matrix with proper dimensions. \(\gamma\) represents the performance index of system in attenuating disturbance.

So far, the key to solve the trajectory tracking issue has converted to calculate the controller gain \(K\left( \beta \right)\) by solving the inequality problems above. In this paper, we use the yalmip toolbox to solve this issue because it has simple syntax and is easy to use.

Comparative Study of MPC-Based and RSC-Based Controllers

In this section, three driving scenarios will be designed to compare the difference between MPC-based and RSC-based controllers. To begin with, the simulation description and section are detailed. Then, the function verification test is displayed to show that the parameters of both controllers had been tuned as optimal as possible. Finally, double lane change and extreme curve test are illustrated to compare the performance of both controllers in the harsh driving environment.

Simulation Description and Setup

Here, three simulation tests were designed to compare the different performance of MPC and RSC control schemes, which are carried out on the CarSim-Simulink platform. Specifically, these tests are (1) function verification, (2) double lane change manoeuvre with low adhesion, (3) curve test (curvature: 0.02) with adhesion changing abruptly. Besides, to quantify the tracking accuracy, the root mean square error (RMSE) was used, which is expressed as

$$RMSE = \sqrt {\frac{1}{M} \sum \limits_{i = 1}^{m} \left( {y_{i} - y_{r} } \right)^{2} } ,$$
(40)

where \(M\) is the number of time periods, \(y_{i}\) is the measured outputs and \(y_{r}\) donates reference values. The parameters of AVs and controllers used in simulation are listed in Table 2.

Table 2 Symbol and definition of parameters

Case 1: Function Verification

In this section, the presented controllers were verified to demonstrate that the parameters of both controllers had been tuned as optimal as possible. Here, a straight line with expected velocity 25 m/s was applied as the reference trajectory. The initial lateral, angular and velocity errors of AVs were set as − 1 m, 0, − 5 m/s, respectively. Besides, the road adhesion is set as 0.85.

As shown in Figures 2 and 3, it can be seen that MPC-based controller showed a faster response than RSC-based one and both controllers tracked the expected trajectory exactly. To be specific, the path tracking error was MPC-based controller is 0.2372 m, which was smaller than that of RSC-based one 0.2582 m. Besides, the velocity errors of MPC and RSC controller were 1.4520 m/s and 1.4470 m/s, respectively. It can be concluded that in this test, MPC showed better performance that RSC in terms of tracking accuracy. The reason why it occurred was that in well driving conditions, MPC was able to predict system’s future states precisely based on current states, and it takes the tracking issue as an optimal issue in current time. Owing to that the optimal issue is convex as shown in Eq. (21), of course, it would be better. On the other hand, constraints of actuators should also be considered. Here, from Figures 4 and 5, it is shown that the steer angle and longitudinal acceleration were limited in an expected range.

Figure 2
figure2

Lateral tracking error

Figure 3
figure3

Velocity tracking error

Figure 4
figure4

Command of longitudinal force

Figure 5
figure5

Command of steering angle

Overall, in this section, both controllers were verified and the parameters of them had been tuned through trial and error method, trying to ensure that both controllers can achieve well performance. In next sections, some extreme conditions were carried out based on these parameters.

Case 2: Double Lane Change Test

In last section, both MPC-based and RSC-based controllers were tested in well driving conditions. The results show that both controllers tracked the expected trajectory exactly.

Obviously, it’s better to choose MPC controller for its accuracy. However, in this section, we were concerned with the performance of both controllers in the harsh driving environment, because some unexpected cases may occur that will put huge effects on vehicle’s safety and stability.

Therefore, in this section, MPC and RSC controllers were tested in the road with low adhesion. Specifically, both controllers carried out the double lane change manoeuvre as shown in Figure 6. Here, the road adhesion was set as 0.2, corresponding to snow and ice road. It’s known that vehicles are prone to lose lateral stability on low adhesion roads, especially when the velocity is high. Thus, the goal of this section is to find the maximum velocity that both controllers can carry out with guaranteeing that the vehicle is under control. The initial lateral, angular and velocity errors of AVs were all set as 0.

Figure 6
figure6

CarSim setup and double lane change manoeuvre

Figures 7 and 8 demonstrates the simulation results when the expected velocity was set as 9 m/s. From Figure 7, it can be found that both MPC and RSC tracked the expected trajectory well on the road with adhesion 0.2. Specifically, the RMES of path tracking error for MPC and RSC were 0.0597 m and 0.0455 m, respectively. Figure 8 demonstrates the variation of acceleration where the maximum value did not exceed 0.2g, in other words, in this case, the vehicle was under control without slipping for both controllers.

Figure 7
figure7

Comparison of trajectory when velocity was 9 m/s

Figure 8
figure8

Acceleration information when velocity was 9 m/s

Figure 9 displays the results of MPC and RSC when the expected velocity was set as 10 m/s. In this situation, MPC showed well performance in tracking expected trajectory, where the REMS of path tracking error is 0.0342 m.

Figure 9
figure9

Comparison of trajectory when velocity was 10 m/s

Compared with MPC, the vehicle controlled by RSC slipped at position where X approximately equals to 78 m. What’s the reason? From Figure 10, in this case, it can be known that the maximum acceleration equaled to 0.2g approximately, which means the vehicle was under the critical states. Compared to RSC controller, the phases of MPC that acceleration approached to 0.2g was short. Thus, it can be seen in Figure 9 that the vehicle controlled by RSC obviously slipped, while the vehicle controlled by MPC didn’t experience that. The reason why MPC shows well performance is that it can predict the future states based on current states. Note that is this case, the states MPC utilized in its prediction model was correct, in other words, the current states were still in the accepted range of the model. For RSC, due to that the gain of controller was calculated offline, so the tracking issue couldn’t be optimized specifically for the current states compared with MPC, but the vehicle was still under control.

Figure 10
figure10

Acceleration information when velocity was 10 m/s

However, when the velocity increased to 11 m/s, from the Figure 11, it can be seen that the vehicle controlled by MPC was out of control that means the controller couldn’t track the expected trajectory anymore. On the contrary, RSC showed a more robust performance though the vehicle still slipped and the vehicle tracked the expected trajectory in the end. Figure 12 demonstrates the simulation results of acceleration. It can be found that compared with RSC, the vehicle controlled by MPC was in critical states for a significantly long time. If the vehicle was in a critical states for a long time, the state information used in its prediction model may be inaccurate as the system was prone to be unstable at this time, which will cause the prediction to fail. For RSC, the REMS of path tracking error is 0.04690 m in this case. Thus, from the analysis above, it can be concluded that the maximum velocity MPC can carry out was 10 m/s. Next, the velocity will be increased for the test of RSC. The step applied in this simulation was 1 m/s.

Figure 11
figure11

Comparison of trajectory when velocity was 11 m/s

Figure 12
figure12

Acceleration information when velocity was 11 m/s

To simplify, the simulation results of 12 m/s and 13 m/s were not displayed here. Figures 13 and 14 display the simulation results of RSC when the velocity was 14 m/s and 15 m/s, respectively. Obviously, the vehicle was out of control when the velocity was 15 m/s. When the expected velocity was 14 m/s, the vehicle tracked trajectory after experiencing slipping. Besides, it can be found that the period that acceleration exceeded to 0.2g is shorter in Figure 15 compared with Figure 16. Therefore, the vehicle was out of control when the velocity was increased to 15 m/s.

Figure 13
figure13

Trajectory of RSC when velocity was 14 m/s

Figure 14
figure14

Trajectory when velocity was 15 m/s

Figure 16
figure15

Acceleration information when velocity was 15 m/s

Figure 15
figure16

Acceleration information when velocity was 14 m/s

Case 3: Extreme Curve Test

The goal of this section is to study the performance of MPC and RSC when the road adhesion and road curvature change abruptly. Thus, as shown in Figure 17, a curve road was built in CarSim, the maximum curvature was set as 0.02 \({\text{m}}^{ - 1}\), the road adhesion was set as 0.85 if global X was in the range of [0, 20 m], otherwise, it was set as 0.2. Similarly, the initial lateral, angular and velocity errors of AVs were all set as 0.

Figure 17
figure17

CarSim setup and curve manoeuvre

When the velocity was set as 9 m/s, the simulation results are shown in Figures 18 and 19. Both MPC controller and RSC controller tracked the expected trajectory well, where the REMS of path tracking error is 0.025 m and 0.0412 m, respectively. From Figure 19, it can be found that the maximum acceleration didn’t exceed 0.2g, so it can be considered that the current conditions were in the stable regions of both controllers.

Figure 18
figure18

Comparison of trajectory when velocity was 9 m/s

Figure 19
figure19

Acceleration information when velocity was 9 m/s

However, the vehicle controlled by MPC was out of control when the velocity was up to 10 m/s on this kind of roads. The results are shown in Figures 20 and 21, and it’s obvious that the vehicle controlled by MPC deviated seriously from the road and the controller lost its stability finally. From Figure 21, it can be known that the vehicle controlled by MPC and RSC slipped from 3 s to 7 s, but vehicle controlled by MPC was out of control in the end. On the other hand, though the vehicle controlled by RSC also experiencing slipping for a long time, it tracked the expected trajectory in the end, where the REMS of path tracking error is 0.8266 m. Therefore, it can be concluded that if the system is in an unstable state for a long time, RSC will show better performance.

Figure 20
figure20

Comparison of trajectory when velocity was 10 m/s

Figure 21
figure21

Acceleration information when velocity was 10 m/s

With the purpose to test the maximum velocity that RSC can carry out in this case, we set the velocity as 11 m/s, 12 m/s and 13 m/s, respectively. Figures 22, 23 and 24 demonstrate the simulation results of three test. In the tests where velocity was set as 11 m/s and 12 m/s, though the RSC controller wasn’t out of control, the tracking performance got worse and worse as velocity increased. When the velocity increased to 13 m/s, the RSC controller couldn’t track the expected trajectory anymore and it lost stability quickly. Figures 25, 26 and 27 show the acceleration profiles of three tests.

Figure 22
figure22

Trajectory of RSC when velocity was 11 m/s

Figure 23
figure23

Trajectory of RSC when velocity was 12 m/s

Figure 24
figure24

Trajectory of RSC when velocity was 13 m/s

Figure 25
figure25

Acceleration information when velocity was 11 m/s

Figure 26
figure26

Acceleration information when velocity was 12 m/s

Figure 27
figure27

Acceleration information when velocity was 13 m/s

Overall, in this case, the maximum velocity MPC can carry out is 9 m/s, while that of RSC is 12 m/s.

Conclusions

  1. 1.

    A comparative study of MPC and RSC techniques for trajectory tracking was presented. The tracking model with 3-DOF vehicle dynamics and linear tire model, was deduced.

  2. 2.

    The MPC-based and RSC-based trajectory tracking controller were designed based on the same longitudinal-yaw-lateral motions of a single-track vehicle with a linear tire model, respectively. With the purpose to compare the discrepancy between them, three scenarios were built in CarSim, including verification test, double lane change test and curve test.

  3. 3.

    The simulation results show that MPC controller performed better in term of accuracy and responding time when the driving conditions was well. In the test of double lane change manoeuvre where the road adhesion was set as 0.2, the maximum velocity MPC can carry out was only 10 m/s, while that RSC can execute was 14 m/s. In the curve test with curvature 0.02 \({\text{m}}^{ - 1}\) where road adhesion changes abruptly from 0.85 to 0.2, the maximum velocity MPC can carry out was 9 m/s and that for RSC was 12 m/s.

  4. 4.

    In can be concluded that RSC is robust and can reach a higher velocity when the driving conditions becomes worse, while MPC is prone to be unstable.

References

  1. [1]

    D González, J Pérez, V Milanés, et al. A review of motion planning techniques for automated vehicles. IEEE Transactions on Intelligent Transportation Systems, 2015, 17(4): 1135-1145.

    Article  Google Scholar 

  2. [2]

    Y Qin, X Tang, T Jia, et al. Noise and vibration suppression in hybrid electric vehicles: state of the art and challenges. Renewable and Sustainable Energy Reviews, 2020, 124: 109782.

  3. [3]

    X Tang, S Li, H Wang, et al. Research on energy control strategy based on hierarchical model predictive control in connected environment. Journal of Mechanical Engineering, 2020, 56(14): 119-128. (in Chinese)

    Article  Google Scholar 

  4. [4]

    T Liu, X Tang, H Wang, et al. Adaptive hierarchical energy management design for a plug-in hybrid electric vehicle. IEEE Transactions on Vehicular Technology, 2019, 68(12): 11513-11522.

    Article  Google Scholar 

  5. [5]

    C Katrakazas, M Quddus, W H Chen, et al. Real-time motion planning methods for autonomous on-road driving: State-of-the-art and future research directions. Transportation Research Part C: Emerging Technologies, 2015, 60: 416-442.

    Article  Google Scholar 

  6. [6]

    X Yang, X Tang, K Yang, et al. Local motion planning framework for autonomous vehicle considering position uncertainty in highway. 2020 4th CAA International Conference on Vehicular Control and Intelligence (CVCI), Hangzhou, China, December, 2020: 471-474.

  7. [7]

    R Yang, R Xiong, F C Sun. Experimental platform development and characteristics analysis of external short circuit in lithium-ion batteries. Journal of Electrical Engineering. 2021, 16(1): 103-118. (in Chinese)

    Google Scholar 

  8. [8]

    B Paden, M Čáp, S Yong, et al. A survey of motion planning and control techniques for self-driving urban vehicles. IEEE Transactions on Intelligent Vehicles, 2016, 1(1): 33-35.

    Article  Google Scholar 

  9. [9]

    Y Huang, H Wang, A Khajepour, et al. A novel local motion planning framework for autonomous vehicles based on resistance network and model predictive control. IEEE Transactions on Vehicular Technology, 2019, 69(1): 55-66.

    Article  Google Scholar 

  10. [10]

    C Hu, H Jing, R R Wang, et al. Robust H∞ output-feedback control for path following of autonomous ground vehicles. Mechanical Systems and Signal Processing, 2016, 70: 414-427.

    Article  Google Scholar 

  11. [11]

    M Samuel, M Hussein, M B Mohamad. A review of some pure-pursuit based path tracking techniques for control of autonomous vehicle. International Journal of Computer Applications, 2016, 135(1): 35-38.

    Article  Google Scholar 

  12. [12]

    S Xu, H Peng. Design, analysis, and experiments of preview path tracking control for autonomous vehicles. IEEE Transactions on Intelligent Transportation Systems, 2019, 21(1): 48-58.

    Article  Google Scholar 

  13. [13]

    Y Huang, H Ding, Y Zhang, et al. A motion planning and tracking framework for autonomous vehicles based on artificial potential field elaborated resistance network approach. IEEE Transactions on Industrial Electronics, 2019, 67(2): 1376-1386.

    Article  Google Scholar 

  14. [14]

    Y Zhang, X Wang, H Yang, et al. Robust predictive current control of induction motors based on linear extended state observer. Chinese Journal of Electrical Engineering, 2021, 7(1): 94-105.

    Article  Google Scholar 

  15. [15]

    R Rajamani. Vehicle dynamics and control. Springer Science & Business Media, 2011.

  16. [16]

    R Attia, R Orjuela, M Basset. Combined longitudinal and lateral control for automated vehicle guidance. Vehicle System Dynamics, 2014, 52(2): 261-279.

    Article  Google Scholar 

  17. [17]

    F Borrelli, P Falcone, T Keviczky, et al. MPC-based approach to active steering for autonomous vehicle systems. International Journal of Vehicle Autonomous Systems, 2005, 3(2): 265-291.

    Article  Google Scholar 

  18. [18]

    P Falcone, F Borrelli, J Asgari, et al. Predictive active steering control for autonomous vehicle systems. IEEE Transactions on Control Systems Technology, 2007, 15(3): 566-580.

    Article  Google Scholar 

  19. [19]

    J Ji, A Khajepour, W Melek, et al. Path planning and tracking for vehicle collision avoidance based on model predictive control with multi-constraints. IEEE Transactions on Vehicular Technology, 2016, 66(2): 952-964.

    Article  Google Scholar 

  20. [20]

    L Chen, H Nian, Y X. Improved model predictive direct power control of grid side converter in weak grid using Kalman filter and DSOGI. Chinese Journal of Electrical Engineering, 2019, 5(4): 22-32.

  21. [21]

    J Guo, Y Luo, K Li. Robust gain-scheduling automatic steering control of unmanned ground vehicles under velocity-varying motion. Vehicle System Dynamics, 2019, 57(4): 595-616.

    Article  Google Scholar 

  22. [22]

    L Shen, H Xiao. Delay-dependent robust stability analysis of power systems with PID controller. Chinese Journal of Electrical Engineering, 2019, 5(2): 79-86.

    Article  Google Scholar 

  23. [23]

    D Q Mayne. Model predictive control: Recent developments and future promise. Automatica, 2014, 50(12): 2967-2986.

    MathSciNet  Article  Google Scholar 

  24. [24]

    F Yakub, Y Mori. Comparative study of autonomous path-following vehicle control via model predictive control and linear quadratic control. Proceedings of the Institution of Mechanical Engineers, Part D: Journal of Automobile Engineering, 2015, 229(12): 1695-1714.

    Google Scholar 

  25. [25]

    D Q Mayne, J B Rawlings, C V Rao, et al. Constrained model predictive control: Stability and optimality. Automatica, 2000, 36(6): 789-814.

    MathSciNet  Article  Google Scholar 

  26. [26]

    X L Tang, T Jia, X S Hu, et al. Naturalistic data-driven predictive energy management for plug-in hybrid electric vehicles. IEEE Transactions on Transportation Electrification, 2021, 7(2): 497-508.

    Article  Google Scholar 

  27. [27]

    N Wada, H Tomosugi, M Saeki. Model predictive tracking control for a linear system under time‐varying input constraints. International Journal of Robust and Nonlinear Control, 2013, 23(9): 945-964.

    MathSciNet  Article  Google Scholar 

  28. [28]

    C Hu, L Zhao, L Cao, et al. Steering control based on model predictive control for obstacle avoidance of unmanned ground vehicle. Measurement and Control, 2020, 53(3-4): 501-518.

    Article  Google Scholar 

  29. [29]

    R Wang, H Jing, C Hu, et al. Robust H∞ path following control for autonomous ground vehicles with delay and data dropout. IEEE Transactions on Intelligent Transportation Systems, 2016, 17(7): 2042-2050.

    Article  Google Scholar 

  30. [30]

    H Zhang, X Zhang, J Wang. Robust gain-scheduling energy-to-peak control of vehicle lateral dynamics stabilisation. Vehicle System Dynamics, 2014, 52(3): 309-340.

    Article  Google Scholar 

  31. [31]

    H Du, N Zhang, F Naghdy. Velocity-dependent robust control for improving vehicle lateral dynamics. Transportation Research Part C: Emerging Technologies, 2011, 19(3): 454-468.

    Article  Google Scholar 

  32. [32]

    X Huang, H Zhang, G Zhang, et al. Robust weighted gain-scheduling H∞ vehicle lateral motion control with considerations of steering system backlash-type hysteresis. IEEE Transactions on Control Systems Technology, 2014, 22(5): 1740-1753.

    Article  Google Scholar 

  33. [33]

    Y Ren. Research on active tracking and collision avoidance control of intelligent electric vehicles. Chongqing: Chongqing University, 2018. (in Chinese)

    Google Scholar 

  34. [34]

    S Boyd, E L Ghaoui, E Feron, et al. Linear matrix inequalities in system and control theory. Society for Industrial and Applied Mathematics, Philadelphia, USA, 1994.

    Book  Google Scholar 

Download references

Acknowledgements

The authors sincerely thanks to Dr. Wenhao Yu of Tsinghua University and Dr. Xin Yang of Chongqing University for their critical discussion and reading during manuscript preparation.

Funding

Supported by Natural Science Foundation of China (Grant Nos. 52072051, 51705044), Chongqing Municipal Natural Science Foundation of China (Grant No. cstc2020jcyj-msxmX0956), State Key Laboratory of Mechanical System and Vibration (Grant No. MSV202016), and State Key Laboratory of Mechanical Transmissions (Grant No. SKLMT-KFKT-201806).

Author information

Affiliations

Authors

Contributions

XT was in charge of the whole trial; KY wrote the manuscript; YQ, YH, HW and HP assisted with sampling and laboratory analyses. All authors read and approved the final manuscript.

Authors’ Information

Kai Yang is currently pursuing the Ph.D. degree at College of Mechanical and Vehicle Engineering, Chongqing University, China.

Xiaolin Tang is currently an associate professor at College of Mechanical and Vehicle Engineering, Chongqing University, Chongqing, China. He received the Ph.D. degree in Mechanical Engineering from Shanghai Jiao Tong University, China, in 2015.

Yechen Qin is currently working as an associate professor at Beijing Institute of Technology, China and he is also a visiting scholar at The State Key Laboratory of Mechanical Transmissions, China. He received the B.Sc. and Ph.D. degrees in mechanical engineering from Beijing Institute of Technology, China, in 2010 and 2016, respectively.

Yanjun Huang is currently a research professor at School of Automotive Studies, Tongji University, Shanghai. He received his PhD degree at Department of Mechanical and Mechatronics Engineering at University of Waterloo, Canada  in 2016.

Hong Wang is currently an associate professor at School of Vehicle and Mobility, Tsinghua University, China. She received the Ph.D. degree from Beijing Institute of Technology, China, in 2015.

Huayan Pu, is currently a professor at State Key Laboratory of Mechanical Transmissions, Chongqing University, China. She received the Ph.D. degree from Huazhong University of Science and Technology, China, in 2011.

Corresponding author

Correspondence to Xiaolin Tang.

Ethics declarations

Competing Interests

The authors declare no competing financial interests.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Yang, K., Tang, X., Qin, Y. et al. Comparative Study of Trajectory Tracking Control for Automated Vehicles via Model Predictive Control and Robust H-infinity State Feedback Control. Chin. J. Mech. Eng. 34, 74 (2021). https://doi.org/10.1186/s10033-021-00590-3

Download citation

Keywords

  • Trajectory tracking
  • Automated vehicles
  • Model predictive control
  • Robust \(H_{\infty }\) state feedback control