# Path Tracking Control Strategy Based on Adaptive MPC for Intelligent Vehicles
## 2 MPC Path Tracking Controller
### Model Linearization and Prediction Equation  
Convert Equation (1) into the state-space representation to derive the vehicle control system model at any time point \(t\):  
\[\dot{\xi}(t)=f(\xi(t),\;\mathbf{u}(t)),\;\mathbf{y}(t)=\mathbf{C}\mathbf{\xi}(t) \tag{2}\]  
Let \(\xi=\left[\dot{y},\dot{x},\varphi,\dot{\varphi},Y,X\right]^{T}\) be selected as the system state variable, the front wheel angle \(\mathbf{u}=\delta_{t}\) as the system control input, \(\mathbf{y}(t)=\left[\varphi,Y\right]^{T}\) as the system output quantity, \(\mathbf{C}\) as the output matrix, \(\mathbf{C}=\left[ \begin{array}{cccccc}0&0&1&0&0&0\\ 0&0&0&0&1&0\end{array} \right]\), and let \(f\left(t\right)\) denote the mapping relationship. When operating at high speeds, a vehicle necessitates a controller with high real-time capabilities, which the previously derived non-linear model finds challenging to fulfill. Consequently, Equation (2) undergoes linearization to yield a linear time-varying state equation:  
\[\dot{\mathbf{\xi}}=\mathbf{A}(t)\mathbf{\xi}(t)+\mathbf{B}(t)\mathbf{u}(t) \tag{3}\]  
where \(\mathbf{A}(t)\) and \(\mathbf{B}(t)\) are the Jacobi matrix of \(\mathbf{\xi}\) and \(\mathbf{u}\) corresponding to the state equation, respectively. \[\mathbf{A}(t)=\left[ \begin{array}{cccccc}\frac{\partial f_{\dot{y}}}{\partial y }&\frac{\partial f_{\dot{y}}}{\partial x}&0&\frac{\partial f_{\dot{y}}}{ \partial y}&0&0\\ \frac{\partial f_{\dot{z}}}{\partial y}&\frac{\partial f_{\dot{z}}}{\partial x }&0&\frac{\partial f_{\dot{z}}}{\partial\varphi}&0&0\\ 0&0&0&1&0&0\\ \frac{\partial f_{\dot{y}}}{\partial y}&\frac{\partial f_{\dot{y}}}{\partial x }&0&\frac{\partial f_{\dot{y}}}{\partial\varphi}&0&0\\ \cos\varphi&\sin\varphi&\dot{x}\cos\varphi-\dot{y}\sin\varphi&0&0&0\\ -\sin\varphi&\cos\varphi&-\dot{x}\sin\varphi-\dot{y}\cos\varphi&0&0&0\end{array} \right]\]  
\[ \begin{array}{ll}\ln\mathbf{A}(t),\frac{\partial f_{\dot{y}}}{\partial y}=- \frac{2(C_{x,t}+C_{xz})}{mx},\frac{\partial f_{\dot{y}}}{\partial x}=-\dot{ \varphi}+\frac{C_{z,t}+C_{xz}}{miz^{2}}\dot{y}-\frac{C_{x,t}\dot{y}}{miz^{2}} \dot{\varphi},\\ \frac{\partial f_{\dot{y}}}{\partial y}=-\dot{x}+\frac{2(C_{x,t}+C_{z,t})}{mx},\frac{\partial f_{\dot{y}}}{\partial y}=\dot{\varphi}-\frac{2C_{z,t}\dot{y}}{ mx},\frac{\partial f_{\dot{z}}}{\partial x}=\frac{2C_{z,t}\dot{y}(\dot{y}+ \dot{a}\dot{\varphi})}{mz^{2}},\\ \frac{\partial f_{\dot{z}}}{\partial\varphi}=\dot{y}-\frac{2 aC_{z,t}\dot{y}}{mx },\frac{\partial f_{\dot{y}}}{\partial y}=\frac{2(C_{x,t}\dot{y}-C_{z,t})}{l_{ z}z},\\ \frac{\partial f_{\dot{y}}}{\partial x}=-\frac{C_{z,t}\dot{y}-C_{z,t}\dot{a}}{ l_{z}\dot{z}^{2}}\dot{y}+\frac{C_{z,t}\dot{a}^{2}+C_{z,t}\dot{b}^{2}}{l_{z}\dot{z}^{2}} \dot{\varphi},\frac{\partial f_{\dot{y}}}{\partial\varphi}=-\frac{2(C_{z,t} \dot{a}^{2}+C_{z,t}\dot{b}^{2})}{l_{z}\dot{x}}.\end{array} \]  
\[ \begin{array}{ll}\mathbf{B}(t)=\left.\frac{\delta f}{\delta u}\right|\begin{array}[ ]{c}\xi=\mathbf{\xi}(t)\\ u=\mathbf{u}(t)\end{array}&=\left[\begin{array}{cccccc}\frac{2C_{z,t}}{m}&\frac {2C_{z,t}(2\dot{y}-\frac{\dot{y}+\dot{a}\dot{\varphi}_{t}}{2z})}{m}&0&\frac{2C _{z,t}\dot{a}}{l_{z}}&0&0\end{array}\right]^{T}\\ \\ \end{array} \] \begin{table}
\begin{tabular}{c c} \hline
**Parameter/Unit** & **Value** \\ \hline Full mass of vehicle/\(m\) (kg) & 1723 \\ Distance from centroid to front axle/\(a\) (m) & 1.232 \\ Distance from centroid to rear axle/\(b\) (m) & 1.468 \\ Moment of inertia about Z-axis/\(l_{\mathrm{Z}}\) (kg\(\cdot\)m\({}^{2}\)) & 4175 \\ Front wheel lateral stiffness/\(C_{c,t}\) (N\(\cdot\)rad\({}^{-1}\)) & 66,900 \\ Rear wheel lateral stiffness/\(C_{c,t}\) (N\(\cdot\)rad\({}^{-1}\)) & 62,700 \\ \hline \end{tabular}
\end{table} 
Table 1: Test vehicle parameters. The linear discrete state-space representation can be acquired by discretizing Equation (3) using the forward Euler method:  
\[\left\{ \begin{array}{l}\Delta\xi(k+1)=A(k)\Delta\xi(k)+\mathbf{B}(k)\Delta\mathbf{u}(k) \\ \mathbf{y}(k)=C\Delta\xi(k)\end{array} \right.