## 2 Background of the Employed Artificial Intelligence Algorithms  
### Neural Computing Model  
In geotechnical engineering, neural computing, i.e., artificial neural network (ANN), is widely accepted as a capable tool for modeling complex phenomena [56; 57; 58]. Inspired from biological neural networks, ANN simulates the information processing and knowledge generalization that happens in the human brain. By learning from examples of input and output data, a trained ANN is capable of making inferences on the output information by analyzing novel inputs [59; 60]. The structure of an ANN consists of simple interconnected neurons. Although the learning and generalization of one neuron are restricted, the whole network, which combines all of the information processing unit of individual neurons, is capable of describing sophisticated processes. It has been confirmed that ANN has the capability of universal learning [41]; this means that an ANN structure with a sufficient number of neurons in its hidden layer can model any hidden function with arbitrary accuracy. ANN has been successfully applied in various geotechnical engineering problems [29; 54; 61; 62].  
A function of interest, \(f\), can be described as follows:  
\[f:X\in R^{\text{NX}}\to Y\in R^{1}\]  
where \(NX\) is the number of input attributes.  
To approximate \(f\), an ANN with a typical structure of an input, a hidden, and an output layer is employed. The typical structure of an ANN is demonstrated in Figure 1. It is noted that, herein, \(\text{NX}=12\) which is the number of CC's influencing factors. The targeted output Y is CC of soil. To model the mapping function between the set of 12 predictor variables and CC of the soil, the training process of an ANN adapts its parameters including the weight matrix of the hidden layer (W\({}_{1}\)), the weight matrix of the output layer (W\({}_{2}\)), the bias vector of the hidden layer (b\({}_{1}\)), and the bias vector of the output layer (b\({}_{2}\)). In Figure 1, f\({}_{A}\) denotes an activation function. The sigmoid function is often employed [32] and its formula is given as follows:  
\[\mathrm{f_{A}(n)}=\frac{1}{1+\mathrm{e^{-n}}} \tag{1}\]  
The model parameters of an ANN, including the weight matrices and the bias vector, can be identified via the training process which relies on the framework of error backpropagation. The mean square error (MSE) is commonly employed as the loss function for training in ANN [32]:  
\[\mathrm{MSE}=\frac{1}{\mathrm{M}}\sum_{i=1}^{M}\mathrm{e_{i}^{2}} \tag{2}\]  
where M represents the number of training samples; e\({}_{i}\) denotes the deviation between the observed and the predicted values of CC; e\({}_{i}\) = Y\({}_{i,P}-Y_{i,A}\); and Y\({}_{i,P}\) and Y\({}_{i,A}\) are the predicted and actual values of CC, respectively.  
In addition, the Levenberg-Marquardt (LM) backpropagation algorithm [51] is often used to train an ANN model used for function approximation tasks [37]. The LM backpropagation algorithm is essentially a modification of the Newton algorithm for nonlinear optimization. During the training process, the weights of a ANN are adapted using the following equation [63]:  
\[\mathrm{w_{i+1}}=\mathrm{w_{i}}-(\mathrm{J_{i}^{T}J_{i}}+\lambda\times\mathrm{ I})^{-1}\mathrm{J_{i}^{T}e_{i}} \tag{3}\]  
where J denotes the Jacobian matrix of output errors, I represents identity matrix, and \(\lambda\) is the learning rate.  
Finally, the ANN model employed for CC estimation can be shown as follows:  
\[\mathrm{f(X)}=\mathrm{b_{2}}+\mathrm{W_{2}}\times(\mathrm{f_{A}(b_{1}+W_{1} \times X)}) \tag{4}\]