## 3 Control Method
### State-Space Representation and Kalman Filter  
The target system is expressed as a linear time-invariant system with the state-space representation, as follows:  
\[\dot{\mathbf{x}} =A_{c}\mathbf{x}+\mathbf{B}_{c}\mathbf{u}+\mathbf{B}_{ce}\mathbf{w}, \tag{6}\] \[\mathbf{y} =\mathbf{C}_{c}\mathbf{x}\] (7) with \[\mathbf{x}=[\theta_{e}-\theta_{c},\omega_{e}-\omega_{c},\omega_{m2}]^{ \mathrm{T}},\ \ \mathbf{y}=[\omega_{m2},T_{r}]^{\mathrm{T}},\ \ \mathbf{u}=[T_{m1},T_{m2}]^{\mathrm{T}},\ \ \mathbf{w}=T_{e},\] \[\mathbf{A}_{c}=\left[\begin{array}{ccc}0&1&0\\ \Big{(}\frac{1}{t_{e}}-\frac{I_{2}}{t_{1}}\Big{)}k_{dp}&\Big{(}\frac{1}{t_{e}} -\frac{I_{2}}{t_{1}}\Big{)}c_{dp}&0\\ \frac{I_{2}}{t_{1}}k_{dp}&\frac{I_{2}}{t_{1}}c_{dp}&0\end{array}\right],\ \ \mathbf{B}_{c}=\frac{2(\lambda+1)^{2}}{\lambda}\left[ \begin{array}{ccc}0&0\\ 0&0\\ J_{2}&\lambda J_{2}\\ J_{4}&\lambda J_{4}\end{array}\right],\ \ \mathbf{B}_{ce}=[0,1,0]^{\mathrm{T}},\ \ \mathbf{C}_{c}=\left[ \begin{array}{ccc}0&0&1\\ \frac{k_{dp}}{\lambda+1}&\frac{c_{dp}}{\lambda+1}&0\end{array}\right]\] where \[\mathbf{x}\], \[\mathbf{y}\], \[\mathbf{u}\], and \[\mathbf{w}\] are the system state, system output, control input, and disturbance, respectively. The engine torque \[T_{e}\] is treated as a disturbance acting on the system, and the control inputs, \[T_{m1}\] and \[T_{m2}\], are subject to the following constraints and limit values: \[T_{m1}^{min}\leq T_{m1}\leq T_{m1}^{max},\ \ T_{m2}^{min}\leq T_{m2}\leq T_{m2}^{max}. \tag{8}\]  
Furthermore, it was assumed that the target system contains elements that cannot be observed directly, and a discrete time-varying Kalman filter [18] was embedded to estimate the state with noise. The equations of the continuous time system (Equations (6) and (7)) can be discretized and modified by adding process noise \(\mathbf{n}_{k}\) and output noise \(\mathbf{v}_{k}\), as follows:  
\[\mathbf{x}_{k+1} = \mathbf{Ax}_{k}+\mathbf{B}\mathbf{u}_{k}+\mathbf{B}_{e}\mathbf{w}_{k}+\mathbf{n}_{k}, \tag{9}\] \[\mathbf{y}_{k} = \mathbf{Cx}_{k}+\mathbf{v}_{k} \tag{10}\]where \(A\), \(B\), \(B_{e}\), and \(C\) are obtained from the discrete time state space representation. \(k\) represents a time step in discrete time. The algorithm of discrete time-varying Kalman filter is given by the following equations:  
\[\hat{\mathbf{x}}_{k|k} = \hat{\mathbf{x}}_{k|k-1}+\mathbf{K}_{k}(\mathbf{y}_{k}-\mathbf{C}\hat{\mathbf{x}}_{k|k -1}), \tag{11}\] \[\hat{\mathbf{x}}_{k|k-1} = \mathbf{A}\hat{\mathbf{x}}_{k-1|k-1}+\mathbf{B}\mathbf{u}_{k-1}+\mathbf{B}_{e}\mathbf{w}_ {k-1},\] (12) \[\hat{\mathbf{y}}_{k|k-1} = \mathbf{C}\hat{\mathbf{x}}_{k|k} \tag{13}\]  
where \(\hat{\mathbf{x}}_{k}:=\hat{\mathbf{x}}_{k|k}\) denotes the estimated state at the time step \(k\). Now, the covariance matrices are set to \(\mathbf{Q}_{k}\) and \(\mathbf{R}_{k}\), regarding each of \(\mathbf{n}_{k}\) and \(\mathbf{v}_{k}\). Then, the Kalman gain \(\mathbf{K}_{k}\) can be updated in the following manner:  
\[\mathbf{K}_{k} = \mathbf{P}_{k|k-1}\mathbf{C}^{\intercal}\mathbf{S}_{k}{}^{-1}, \tag{14}\] \[\mathbf{P}_{k|k-1} = \mathbf{A}\mathbf{P}_{k-1|k-1}\mathbf{A}^{\intercal}+\mathbf{Q}_{k},\] (15) \[\mathbf{S}_{k} = \mathbf{C}\mathbf{P}_{k|k-1}\mathbf{C}^{\intercal}+\mathbf{R}_{k},\] (16) \[\mathbf{P}_{k|k} = (\mathbf{I}-\mathbf{K}_{k}\mathbf{C})\mathbf{P}_{k|k-1}. \tag{17}\]