# Vehicle Motion Control for Overactuated Vehicles to Enhance Controllability and Path Tracking
## 3 Linear Time-Varying Model Predictive Path and Speed Tracking  
### Prediction Model  
The two-wheel vehicle model depicted in Figure 4a serves as the prediction model for the vehicle's motion. The longitudinal forces are accounted for by the drive force \(F_{d}\), independently of the lateral forces. The equations of motion (EoM) with the vehicle velocity \(V\), sideslip angle \(\beta\) and yaw rate \(\dot{\psi}\) read as follows:  
\[\dot{V} =\frac{1}{m}\big{(}\Sigma F_{x}\cos\beta+\Sigma F_{y}\sin\beta \big{)}, \tag{1a}\] \[\dot{\beta} =\frac{1}{Vm}\big{(}-\Sigma F_{x}\sin\beta+\Sigma F_{y}\cos\beta- Vm\dot{\psi}\big{)},\] (1b) \[\ddot{\psi} =\frac{1}{I_{z}}\Sigma M_{z}, \tag{1c}\]  
with vehicle mass \(m\) and yaw moment of inertia \(I_{z}\). \(\Sigma F_{x}\) and \(\Sigma F_{y}\) denote the total forces acting on the vehicle along the respective coordinate frame axes, whereas \(\Sigma M_{z}\) represents the yaw moment generated by the tyres. The total forces and moment yield  
\[\Sigma F_{x} =F_{d}-F_{y,f}\sin\delta_{f}, \tag{2a}\] \[\Sigma F_{y} =F_{y,f}\cos\delta_{f}+F_{y,r},\] (2b) \[\Sigma M_{z} =l_{f}F_{y,f}\cos\delta_{f}-l_{r}F_{y,r}. \tag{2c}\]  
with the distances \(l_{f}\) and \(l_{r}\) from the center of gravity (CoG) of the vehicle model to the front and rear axle, respectively. The sideslip angles \(\alpha_{f}\) and \(\alpha_{r}\) of the front and rear axle read  
\[\alpha_{f} =\delta_{f}-\arctan\left(\frac{l_{f}\dot{\psi}+V\sin\beta}{V\cos \beta}\right), \tag{3a}\] \[\alpha_{r} =\arctan\left(\frac{l_{r}\dot{\psi}-V\sin\beta}{V\cos\beta} \right). \tag{3b}\]  
The tyre/axle characteristics of the prediction model may be represented by a nonlinear tyre model, e.g., the tyre brush model [25]. However, considering the assumed linear reference vehicle behavior in this paper, lateral tyre forces are represented by \(F_{y,f}=C_{f}\alpha_{f}\) and \(F_{y,r}=C_{r}\alpha_{r}\), where \(C_{f}\) and \(C_{r}\) denote the respective cornering stiffness. The motion of the vehicle relative to the reference path is described in a Frenet coordinate system--see Figure 4a--with the lateral error \(e\) and the heading error \(\theta\) between the longitudinal axis of the vehicle and the tangent to the path with curvature \(\rho(s)\) at length \(s\). The rates of change for the heading error, lateral error and path length are given by [26]  
\[\dot{\theta} =\dot{\psi}-\dot{\psi}\rho(s)\quad\text{with}\quad\dot{s}=\frac{ V\cos(\theta+\beta)}{1-\rho(s)e}, \tag{4a}\] \[\dot{e} =V\sin(\theta+\beta). \tag{4b}\]  
The nonlinear, time-continuous system model is obtained from (1) to (4):  
\[\dot{\beta} =\frac{1}{Vm}\big{(}-\Sigma F_{x}\sin\beta+\Sigma F_{y}\cos\beta- Vm\dot{\psi}\big{)},\]0  
with the state vector \(\mathbf{x}^{T}= \begin{bmatrix}V&\beta&\dot{\psi}&\theta&e&\delta_{f}\end{bmatrix} \) and the input vector \(\mathbf{u}^{T}= \begin{bmatrix}\delta_{f}&F_{d}\end{bmatrix} \). Since the CA may run at a higher sampling rate than the MPC, (5) includes an additional integrator state for \(\delta_{f}\) to provide intermediate values for CA via first-order hold. Since path information, such as the curvature \(\rho(s)\), is available as a function of the path length \(s\), the prediction model is transformed into a space-continuous model. Thus, the system model is rewritten with \(\dot{\mathbf{x}}=\frac{\partial\mathbf{x}}{\partial s}\frac{\partial\mathbf{s}}{\partial t}= \mathbf{x}^{\prime}\dot{s}\)  
\[\mathbf{x}^{\prime}(s)=\frac{1}{\dot{s}}\mathbf{f}_{t}(\cdot)=\mathbf{f}_{s}(\mathbf{x}(s),\bm {u}(s),\rho(s)), \tag{6}\]  
and linearized by truncating the Taylor series after the first-order term. The discretized linear system equations required for the subsequent optimization problem in the LTV-MPC are derived from the solution of the first-order differential equation system using the zero-order hold assumption,  
\[\Delta\mathbf{x}_{k+1}=\mathbf{A}_{d|k}\,\Delta\mathbf{x}_{k}+\mathbf{B}_{d|k}\,\Delta\mathbf{u}_{ k}, \tag{7}\]  
with the system matrix \(\mathbf{A}_{d|k}\) and the input matrix \(\mathbf{B}_{d|k}\).