## 3 Bit Footage and ROP Prediction Model  
Many scholars have studied the prediction and optimization of the ROP through neural networks based on the data-driven model in the field of artificial intelligence, and with the development of computer technology such as big data and machine learning, among which the BP neural network algorithm is widely used because of its high flexibility. The BP (back propagation) neural network technique, also known as error back propagation, is divided into two processes: signal forward propagation and error back propagation adjustment. The input signal is conveyed to the output layer by layer-by-layer calculation of the hidden layer in forward propagation, and the neurons in each layer are only influenced by the neurons in the preceding layer. If the expected output is received by the output layer, the learning algorithm ends; if the expected output is not received, the error change value of the output layer is calculated, and the error signal is transmitted back along the connection path through the network to modify the weights of neurons in each layer until the expected goal is achieved. Figure 4 depicts the BP neural network utilized in this study, which includes an input layer, a hidden layer, and an output layer. The input layer has 12 types of drill bit structural features matching 12 input parameters, and the output layer is bit footage and ROP, with the number of hidden layers to be determined. There are two generally utilized ways of improving the network's training accuracy. First, increase the number of hidden layers in the network; however, too many hidden layers can complicate network training and lengthen training time. Second, the training effect of this strategy is easier to monitor and change than increasing the number of neurons in the hidden layer. To improve network performance and training accuracy, increasing the number of neurons in the hidden layer is generally prioritized. Figure 4: Schematic diagram of BP neural network for prediction of ROP and footage. In theory, a BP neural network has an optimal number of hidden layer elements. When the number of hidden layer elements is less than the optimal number, the memory and induction ability of the network are poor, and the performance of the network is limited. When the actual number of hidden layer elements is greater than the optimal, the performance of the network will not be improved, but the training speed of the network will be too slow. There is currently no clear standard for determining the optimal number of hidden layer units. Most studies are based on experience or training and are established after a thorough comparison of learning times and network recognition rates. The number of neurons in the hidden layer can be chosen using one of three empirical formulas:  
\[h=2m+1 \tag{2}\]  
\[h=\sqrt{m+n}+a \tag{3}\]  
\[h=\log n \tag{4}\]  
where \(h\) is the number of neurons in the hidden layer, \(m\) is the number of neurons at the input end, and \(n\) is the number of neurons at the output end. \(a\) is the adjustment constant between 1 and 10. In this study, Formula (3) was selected to preliminarily determine that the number of neurons in the hidden layer was 5-13. The prediction program code based on the BP neural network algorithm is written by MATLAB. The specific program code is shown in Appendix B. To realize the design, training, simulation, and performance testing of the BP neural network, training and test sets are established. The number of samples for the drilling from Shaximiao Formation to Ziliujing Formation in the second spud of Luzhou Block is 17, of which 12 samples are randomly selected as the training set and the remaining 5 samples are used as the test set. The number of samples for the drilling of Xujiahe Formation in Section 1 of the third spudding in Luzhou Block is 21; 14 samples are randomly selected as the training set and the remaining 7 samples are used as the test set. Four prediction model groups are established in turn.