## 3 LQ Controller  
### Open Loop System: Model Linearization  
The linear quadratic controller (see [23; 24] for more details on this well-established technique) was chosen since it fits very well with the multi-input, multi-output requirement of the centralised collaborative platooning controller. To apply this technique, the platoon model was linearized and the resulting equations of motion stacked in state-space form. Before linearization, the equations are normalised to the nominal condition by introducing:  
\[\left\{\begin{aligned} & d_{i-1,i}=d_{n}\cdot z_{Fi,d}\\ & v_{Fi,i}=v_{n}\cdot z_{Fi,v}\\ &\alpha=\alpha_{n}\cdot p\\ & T_{m,F,i}=T_{m,n}\cdot u\end{aligned}\right. \tag{8}\]  
where \(v_{n},d_{n},T_{m,n}\) are the nominal velocity, the nominal inter-vehicle distance, and the nominal electric motor torque, respectively; \(z_{i,d}\) and \(z_{i,v}\) are the states of each follower vehicle; \(u\) represents the input; and \(p\) represents the road slope disturbance.  
Introducing the normalisation from (1), the equation of motion can be written:  
\[m_{toti}v_{n}z_{Fi,2}=\frac{T_{m,n}\tau}{\eta r_{w}}u-\left\{A_{0}\text{sin}( \alpha_{n}p)+A_{1}\text{cos}(\alpha_{n}p)+[B_{0}\text{cos}(\alpha_{n}p)+B_{1} +B_{2}d_{n}z_{Fi,d}]v_{n}^{2}z_{Fi,v}^{2}\right\} \tag{9}\]  
where the expressions of the \(A_{0}\), \(A_{1}\), \(B_{0}\), \(B_{1}\), \(B_{2}\) are shown in Appendix A.  
At steady state (\(z_{Fi,v}=0\)) and without external disturbance (\(p=0\)), the nominal torque is:  
\[T_{m,n}=\frac{r_{w}}{\eta\tau}\Big{[}A_{1}+(B_{0}+B_{1}d_{n})v_{n}^{2}\Big{]} \tag{10}\]  
Let us introduce the small variations, denoted with \(\delta\), around the nominal values:  
\[\left\{\begin{aligned} z_{Fi,d}&=1+\delta z_{Fi,d}\\ z_{Fi,v}&=1+\delta z_{Fi,v}\\ u&=1+\delta u\\ p&=\delta p\end{aligned}\right. \tag{11}\]  
Thus, introducing the linearisation and neglecting the second-order variational terms, the linearised equation of motion for each follower vehicle is:  
\[\delta z_{Fi,v}=K_{i}\cdot\delta u_{i}-G_{i}\cdot\delta z_{Fi,v}-S_{i}\cdot \delta z_{Fi,d}-E_{i}\cdot\delta p \tag{12}\]  
The time derivative of inter-vehicle (variational) distance can be written as:  
\[\delta\dot{z}_{Fi,d}=\frac{v_{n}}{d_{n}}(\delta z_{Fi-1,v}-\delta z_{Fi,v}) \tag{13}\]  
Therefore, by applying the former steps for each follower vehicle, the final set of equations of motion of the vehicle platoon under open-loop control can be found:  
\[\left\{\delta\dot{z}\right\}=[A]\{\delta\dot{z}\}+[B]\{\delta u\}+[H]\{\delta p \}+[C]\delta z_{L,v} \tag{14}\]where \([A],\ [B]\) are the dynamic and input matrices, respectively, \(\{\delta z\}\) is the state vector:  
\[\{\delta z\}=\left\{\begin{aligned} \delta z_{F1,d}\\ \delta z_{F1,v}\\ \dots\\ \delta z_{Fi,d}\\ \delta z_{F1,v}\\ \dots\\ \delta z_{FN,d}\\ \delta z_{FN,p}\end{aligned}\right\} \tag{15}\]  
where \(\delta z_{Fi,d}\) and \(\delta z_{Fi,v}\) is the normalised variational distance and speed, \(\{\delta u\}\) is the input vector, \(\delta z_{L,v}\) is the normalised variational lead vehicle velocity (internal disturbance), and \(\{\delta p\}\) is the variational inclination contribution (external disturbance). The content of the matrices and the gains in a case study of three vehicles are given in Appendix A.