## 3 Materials and Methods
### Optimized Extreme Learning Machine  
The random selected parameters in the basic ELM may cause unacceptable prediction results and poor stability of the network [33; 34; 35]. To promote prediction accuracy, the parameters were coded as the microbat locations, with the corresponding fitness values being the root-mean-square error (RMSE) between the prediction value and actual value. BA was utilized to search for the optimal parameter combination during off-line training. The fundamental steps of BA-ELM are summarized as follows:  
Step 1: Define the computational parameters relating to BA in the BA-ELM model, such as the maximum iteration number \(N\_max\) and population size \(P\_num\). Step 2: Define the ELM neutral network structure and the activation function \(g_{h}(x)\). Step 3: Set \(k=1\). The population set is randomly generated as the initial locations for the microbat group, in which each location of a bat possesses all random parameters. The position of the \(i\)th bat in the \(k\)th generation is denoted by \(\theta_{i}(k)\) and defined as  
\[\theta_{i}(k)=\Big{[}\mathbf{w}_{1,(i,k)},\dots,\mathbf{w}_{j,(i,k)},\dots,\mathbf{w}_{L,( i,k)},b_{1,(i,k)},\dots,b_{j,(i,k)},\dots,b_{L,(i,k)}\Big{]}. \tag{35}\]where \(b_{j,(i,k)}\) and \(\mathbf{w}_{j,(i,k)}\) are the biases and input weights, respectively, of the \(j\)th hidden node for \(\theta_{i}(k)\). Step 4: Determine the output weights through Equations (36) and (37), and then evaluate the fitness value of the position of \(\theta_{i}(k)\) by Equation (38):  
\[\hat{\mathbf{\theta}}_{(ik)}=\mathbf{H}_{(i,k)}^{+}\mathbf{T}. \tag{36}\]  
\[\mathbf{H}_{(ijk)}=\left[ \begin{array}{cccc}g_{h}(\mathbf{w}_{1,(ijk)}\cdot \mathbf{x}_{1}+b_{1,(ijk)})&g_{h}(\mathbf{w}_{2,(ik)}\cdot\mathbf{x}_{1}+b_{2,(ijk)})&\ldots&g_{h}(\mathbf{w}_{L,(ijk)}\cdot\mathbf{x}_{1}+b_{L,(ik)})\\ g_{h}(\mathbf{w}_{1,(ijk)}\cdot\mathbf{x}_{2}+b_{1,(ijk)})&g_{h}(\mathbf{w}_{2,(ijk)}\cdot\mathbf{x}_{2}+b_{2,(ijk)})&\ldots&g_{h}(\mathbf{w}_{L,(ijk)} \cdot\mathbf{x}_{2}+b_{L,(ik)})\\ \ldots&\ldots&\ldots&\ldots\\ g_{h}(\mathbf{w}_{1,(ijk)}\cdot\mathbf{x}_{N}+b_{1,(ijk)})&g_{h}(\mathbf{w}_{2,(ijk)}\cdot\mathbf{x}_{N}+b_{2,(ijk)})&\ldots&g_{h}(\mathbf{w}_{L,(ijk)} \cdot\mathbf{x}_{N}+b_{L,(ijk)})\\ \end{array} \right]_{\text{N}\times L}. \tag{37}\]  
\[F[\theta_{i}(k)]=\sqrt{\frac{1}{N}{\sum_{s=1}^{N}{(\mathbf{t}_{s}-\mathbf{o}_ {s})}^{2}}}=\sqrt{\frac{1}{N}{\sum_{s=1}^{N}{[\mathbf{t}_{s}-\sum_{j=1}^{L}{ \mathbf{\theta}_{j}}{\mathbf{\beta}_{h}}(\mathbf{w}_{j,(ijk)}\cdot\mathbf{x}_ {i}+b_{j,(ijk)})]}}}\;. \tag{38}\]  
where \(\mathbf{t}_{s}\) and \(\mathbf{o}_{s}\) are the target value and output value, respectively, of the \(s\)th training sample, \(\mathbf{H}_{(ijk)}\) is the output matrix for \(\theta_{i}(k)\), and \(\mathbf{H}_{(ijk)}^{+}\) is the Moore-Penrose generalized inverse of \(\mathbf{H}_{(ijk)}\). Step 5: Initialize the location \(\theta_{i}\) and fitness value \(Fit[\theta_{i}]\) of the \(i\)th bat as \(\theta_{i}(k)\) and \(F[\theta_{i}(k)]\), respectively, in which \(k=1\). Step 6: Set \(k=k+1\), \(i=1\). If the maximum iteration \(N\_max\) is reached, go to Step 12; otherwise, go to Step 7. Step 7: Generate the new location \(\theta_{i}(k)\) for the \(i\)th bat with Equations (29)-(31). Step 8: Evaluate the fitness value \(F[\theta_{i}(k)]\) for the new location \(\theta_{i}(k)\) with Equations (36)-(38). Step 9: Update the location \(\theta_{i}\) and fitness value \(Fit[\theta_{i}]\) of the \(i\)th microbat as \(\theta_{i}(k)\) and \(F[\theta_{i}(k)]\) if Equation (39) is satisfied. Otherwise, \(\theta_{i}\) and \(Fit[\theta_{i}]\) remain unchanged. \[\left\{ \begin{array}{c}rand\leq A_{i}\\ F[\theta_{i}(k)]\leq Fit[\theta_{i}]\end{array} \right.. \tag{39}\]  
Here, \(rand\) is a random number in \([0,1]\) and \(A_{i}\) is the loudness of the sound pulse of the \(i\)th microbat. Step 10: Find the current best location among the microbats. Step 11: Set \(i=i+1\). If the population size \(P\_num\) is reached, go to Step 6; otherwise, go to Step 7.