# Vehicle Interior Noise Prediction Based on Elman Neural Network
## 5 Prediction and Optimization of Noise in the Vehicle
### Elman Neural Network
\begin{pmatrix}z_{1}^{(2)}\\ z_{2}^{(2)}\\ \vdots\\ z_{k}^{(2)}\end{pmatrix} = \begin{pmatrix}w_{11}&w_{12}&\cdots&w_{1j}\\ w_{21}&w_{22}&\cdots&w_{2j}\\ \vdots&\vdots&\ddots&\vdots\\ w_{k1}&w_{k2}&\cdots&w_{kj}\end{pmatrix}\begin{pmatrix}a_{1}^{(1)}\\ a_{1}^{(2)}\\ a_{2}^{(1)}\\ a_{j}^{(1)}\end{pmatrix} + \begin{pmatrix}b_{1}^{(2)}\\ b_{2}^{(2)}\\ \vdots\\ b_{k}^{(2)}\end{pmatrix}  \tag{7}\]  
The hidden layer output (output layer input) can be formulated as:  
\[a_{h}^{(2)}=g(z_{h}^{(2)}+\sum_{t=i=1}^{k}u_{ht}z_{i}^{(2*)}) \tag{8}\]  
where \(t\) = 1, 2, 3,..., \(k\), \(u_{ht}\) is the weight from node \(t\) of the input layer to node \(h\) of the hidden layer, and \(z_{i}^{(2*)}\) is the output value of the previous generation of hidden layer neuron \(i\). With the continuous increase of input data, the self-loop structure of the undertaking layer transfers the previous state to the current input as the new input data for the current round of training and learning. The hyperbolic tangent function \(g(x)\) denotes the activation function of the hidden layer neuron [44], which can be formulated as:  
\[g(x)=\tanh(x)=\frac{e^{x}-e^{-x}}{e^{x}+e^{-x}} \tag{9}\]  
The output of the hidden layer is used as the input of the output layer, which can be expressed as:  
\[z_{o}^{(3)}=v_{o1}a_{1}^{(2)}+v_{o2}a_{2}^{(2)}+\cdots+b_{o}^{(3)}=\sum_{h=1}^ {k}v_{oh}a_{h}^{(2)}+b_{o}^{(3)} \tag{10}\]  
Figure 11: Elman neural network topology. where \(o\) = 1, 2, 3,\(\dots\), \(m\), \(v_{oh}\) is the weight from node \(h\) of the hidden layer to node \(o\) of the output layer. Equation (10) can be transformed into the following matrix:  
\[ \begin{pmatrix}z_{1}^{(3)}\\ z_{2}^{(3)}\\ \vdots\\ z_{m}^{(3)}\end{pmatrix} = \begin{pmatrix}v_{11}&v_{12}&\cdots&v_{1k}\\ v_{21}&v_{22}&\cdots&v_{2k}\\ \vdots&\vdots&\ddots&\vdots\\ v_{m1}&v_{m2}&\cdots&v_{mk}\end{pmatrix}\begin{pmatrix}a_{1}^{(2)}\\ a_{2}^{(2)}\\ \vdots\\ a_{k}^{(2)}\end{pmatrix} + \begin{pmatrix}b_{1}^{(3)}\\ b_{2}^{(3)}\\ \vdots\\ b_{m}^{(3)}\end{pmatrix}  \tag{11}\]  
The output of the output layer is formulated as:  
\[a_{o}^{(3)}=f(z_{o}^{(3)}) \tag{12}\]  
where \(f(x)\) is the activation function of neurons in the output layer [44]:  
\[f(x)=\frac{1}{2}(1+\tanh(x))=\frac{e^{x}}{e^{x}+e^{-x}} \tag{13}\]  
In Equations (5), (6), (8), (10) and (12), the superscripts (1), (2) and (3) denote the input, hidden, and output layers, respectively. The error function of the output layer neuron is expressed as:  
\[E=\frac{1}{2}(a_{o}^{(3)}-y_{o}) \tag{14}\]  
where \(y_{o}\) is the true value of node \(o\) in the output layer. The gradient descent method of the output neuron error is used to correct the weight and threshold of the network, and the change in the weight and threshold of the output layer is formulated as:  
\[\Delta v_{oh}=-\eta\frac{\partial E}{\partial v_{oh}},\Delta b_{o}=-\eta\frac {\partial E}{\partial b_{o}} \tag{15}\]  
The hidden layer weights and thresholds are formulated as:  
\[\Delta w_{hi}=-\eta\frac{\partial E}{\partial w_{hi}},\Delta b_{h}=-\eta\frac {\partial E}{\partial b_{h}} \tag{16}\]  
The undertaking layer weight is expressed as:  
\[\Delta u_{ht}=-\eta\frac{\partial E}{\partial u_{ht}} \tag{17}\]  
In Equations (15) to (17), \(\eta\) denotes the learning rate and \(\partial\) denotes the partial derivative.