## 2 The Novel KELM-GWO Model for Estimating the Uniaxial Compressive Strength  
### Kernel Extreme Learning Machine (KELM)  
The kernel extreme learning machine (KELM) was modified by [PERSON] et al. [52] based on the ELM. The conventional ELM model has a single-hidden-layer feed-forward neural network (SLFN) architecture, which can be written as follows:  
\[\mathrm{F}(x_{i})=\sum_{i=1}^{m}\beta_{i}g(w_{i}\cdot x_{i}+b_{i})=o_{i}\quad i =1,\ 2,\ 3,\ldots,N \tag{1}\]  
where \(\mathrm{F}(x_{i})\) represents the \(i\)th output of the ELM. \(\beta_{i}\) and \(w_{i}\) represent the output weight vector and the input weight vector of the \(i\)th neuron in the hidden and input layer, respectively. \(b_{i}\) shows the bias of the \(i\)th neuron in the hidden layer. \(N\) represents the number of samples and \(m\) represents the number of neurons in the hidden layer. On the basis of the activation function \(a(x)\), Equation (1) can be described by the following mapping matrix:  
\[T=H\cdot B=\begin{bmatrix}i_{1}^{T}\\ \vdots\\ i_{n}^{T}\end{bmatrix}_{N\times m}\begin{array}{c}h(x_{1})\\ h(\quad\vdots)\\ h(x_{N})\end{array}=\begin{bmatrix}a(w_{1}\cdot x_{1}+b_{1})&\cdots&a(w_{m} \cdot x_{1}+b_{m})\\ \vdots&\cdots&\vdots\\ a(w_{1}\cdot x_{N}+b_{1})&\cdots&a(w_{m}\cdot x_{N}+b_{m})\end{bmatrix}_{N \times m}B==\begin{bmatrix}\beta_{1}^{T}\\ \vdots\\ \beta_{m}^{T}\end{bmatrix}_{m\times n} \tag{2}\]  
where \(T\), \(H\), and \(B\) represent the target output matrix, the feature mapping matrix, and the output weight matrix, respectively. \(t_{i}\) represents the \(i\)th output vector, \(h(x)\) represents the feature mapping in the hidden layer, and \(n\) shows the number of neurons in the output layer.  
To obtain the best ELM in the training phase, the least square solution of the linear equation must be estimated as follows:  
\[\left\|H(w_{1},\ldots,w_{m},b_{1},\ldots,b_{m})\hat{B}-T\right\|=\min_{\beta_{ i}}\lVert H(w_{1},\ldots,w_{m},b_{1},\ldots,b_{m})B-T\rVert \tag{3}\]  
To avoid ELM collinear problems, a penalty term \(C\) and a unit matrix \(I\) were proposed by [PERSON] et al. [52] to optimize Equation (3) based on the ridge regression method and the Tikhonov regularization idea. Therefore, the least square solution of the output weight can be rewritten as:  
\[\hat{B}=H^{T}(HH^{T}+\frac{C}{I})^{-1}T \tag{4}\]  
Then, the kernel function \(K\) () was introduced to replace the unknown of the feature mapping function \(h(x)\) in the initial ELM:  
\[\Omega_{E}=h(x_{i})h\big{(}x_{j}\big{)}=K\big{(}x_{i},x_{j}\big{)} \tag{5}\]  
Hence, Equation (1) can be changed to by combining Equations (4) and (5):  
\[\mathrm{F}(x)=h(x)H^{T}(\frac{C}{I}+HH^{T})^{-1}T=\begin{bmatrix}K(x,x_{1})\\ \vdots\\ K(x,x_{N})\end{bmatrix}\cdot(\frac{C}{I}+\Omega_{E})^{-1}T \tag{6}\]  
The kernel functions have important influence on the KELM model performance. Therefore, choosing the right kernel function is the first step to solve a particular problem. [PERSON] et al. [74] reported seven kernel functions for the KELM, such as the Gauss kernel function, the linear kernel function, the polynomial kernel function, the Fourier kernel function, etc. In fact, the Gauss kernel function is one of the most popular kernel equations [75], which is also called the radial basis function (RBF) and can be written as follows:  
\[K(x,y)=exp(-v\lVert x-y\rVert^{2}) \tag{7}\]  
where \(v\) is the kernel width of RBF.