## 3 Harmonic Identification Scheme Based on Adaline-LMM Algorithm  
When the servo system is excited by a sinusoidal signal, the system response can be regarded as a composite signal which is composed of the fundamental response and high order harmonics. The general model of the composite signal can be defined as:  
\[a(k)=\sum_{i=1}^{N}A_{i}\sin(i\omega k+\varphi_{i}) \tag{2}\]  
where \(A_{i}\), \(\varphi_{i}\) are the amplitude and phase of the \(i\)th harmonic, respectively. \(\omega\) is the fundamental frequency. \(N\) is the highest order of the acceleration harmonic. \(k\) represents iterations. For the purpose of obtaining the input vector of the network, Equation (2) can be written as:  
\[a(k)=\sum_{i=1}^{N}A_{i}\sin(i\omega k)\cos(\varphi_{i})+A_{i}\cos(i\omega k) \sin(\varphi_{i}) \tag{3}\]  
The scheme of the proposed harmonic identification method is illustrated in Figure 4. For identifying the fundamental waveform and high order harmonics, the Adaline is introduced. It is a single layer linear neural network which has multiple inputs but only one single output. Each input has its own weight vector and the output of this neural network \(\hat{a}(k)\) is the dot product between the input vector and weight vector. Certainly, the relationship between the output and the input of the neural network is linear at any time. The error signal \(e(k)\) is the deviation between the response signal and the output of the Adaline which can be used as an input signal of the weight adjusting algorithm to adjust weight vectors of the Adaline. Apparently, with the output of the Adaline converging to the Acceleration response of the servo shaking table, this error signal is becoming smaller. That is, the process of training this neural network is actually the process that the output of the Adaline converges to the system response. LMM algorithm is the weight updating Algorithm which is used to adjust weights of the Adaline using input vectors and the error signal. Figure 4: Harmonic identification scheme using Adaline LMM algorithm. \(X_{ai}(k)\) and \(X_{bi}(k)\) are input signal vectors of the network, and \(e(k)\) is the error signal which is used to adjust the weight of the network. Both \(\omega_{ai}(k)\) and \(\omega_{bi}(k)\) are weights of the network. The above vectors and the error signal are illustrated in Equations (4)-(6). \[X_{ai}(k)=\sin(i\omega k),i=1,2,3,\cdots,n \tag{4}\]  
\[X_{bi}(k)=\cos(i\omega k),i=1,2,3,\cdots,n \tag{5}\]  
\[e(k)=a(k)-\hat{a}(k) \tag{6}\]  
The weight is optimized by using the LMM algorithm which is a nonlinear algorithm using the error signal's M-estimator to minimize the instantaneous criterion function \(J_{M}(k)\). The criterion function \(J_{M}(k)\) is expressed as:  
\[J_{M}(k)=E\{M(e(k))\} \tag{7}\]  
where \(M\)(.) is a robust M-estimate function that can be obtained by using [PERSON]'s three parts re-descending function which is expressed as:  
\[M(e(k))=\left\{ \begin{array}{ll}\frac{e^{2}(k)}{2}&0<|e(k)|<t_{1}\\ t_{1}|e(k)|-\frac{{h_{1}}^{2}}{2}&t_{1}\leq|e(k)|<t_{2}\\ \frac{{h_{1}}}{2}({h_{2}}+{h_{3}})-\frac{{h_{1}}^{2}}{2}+\frac{{h_{1}}}{2} \frac{(|e(k)|-{h_{3}})^{2}}{{h_{2}}-{h_{3}}}&t_{2}\leq|e(k)|<t_{3}\\ 0&t_{3}\leq|e(k)|\end{array} \right\} \tag{8}\]  
\[S(e(k))=\frac{\partial(M(e(k)))}{\partial(e(k))} \tag{9}\]  
where \(S(e(k))\) is called the score or influence function as what is shown in Equation (10). \[S(e(k))=\left\{ \begin{array}{ll}e(k)&0<|e(k)|<t_{1}\\ t_{1}\text{sgn}(e(k))&t_{1}\leq|e(k)|<t_{2}\\ [|e(k)|-t_{3}]\frac{t_{1}}{t_{2}-t_{3}}\text{sgn}(e(k))&t_{2}\leq|e(k)|<t_{3} \\ 0&t_{3}\leq|e(k)|\end{array} \right\} \tag{10}\]  
where \(t_{1}\), \(t_{2}\) and \(t_{3}\) are thresholds which are used to control the impulse-suppressing degree and can be determined by estimating the variance of the impulse free signal. These threshold parameters can be estimated as [17]:  
\[\hat{\delta}^{2}(k)=C_{1}\hat{\delta}^{2}(k-1)+(1-C_{1})C_{2}med(e(k)^{2},e(k- 1)^{2},\ldots e(k-L_{w}+1)^{2}) \tag{11}\]  
\[\left\{