## 3 Methodology  
The main focus of the present work is to implement a suitable ML Model with an appropriate selection of features and their combinations to predict the crack dimensions more accurately as compared with the existing ANN model. [PERSON] et al. [12] from the given 22 GLCM features extracted from 115 MFL crack images. This has been carried out in four stages. In the first stage, the features are prioritized based on F Score (FS) and Mutual Information Score (MIS) values. L16 Taguchi orthogonal array design [25] has been constructed by considering feature selection methods (FSM), machine learning models (MLM), and number of features as parameters and R\({}^{2}\) and RMSE values as response values. For each experiment, python codes are executed using the corresponding MLM, FSM, and target number of features as determined by the Taguchi array to determine the corresponding R\({}^{2}\) and RMSE values for both training and test data sets. To analyze the effect of parameters and their interaction on the response values, an ANOVA test has been carried out in the third stage. The responses, namely R\({}^{2}\) and RMSE values, for the training and testing data sets, are different for each experiment, which is similar to different alternatives among multiple design problems. To select the best design, these multiple responses are to be converted into a single value. Hence, in this work, a similarity-based multi-criterion ranking method called Deng's method [26] is introduced to select the best ML model in the third stage. In the fourth stage, meta-heuristic algorithms, namely MFO, GWO, and DPGWO, a new variant of GWO proposed in this work, have been implemented to select the number of features and their combinations. Also, Performance indicators and Friedman's test have been conducted in the fourth stage to prove the effectiveness of the DPGWO, along with statistical analysis to confirm the results. The proposed methodology is shown in Figure 1. The step-by-step algorithm of the proposed work is given below. Figure 1: Proposed Methodology. * Read the GLCM features and their corresponding crack dimension datasets. * Prioritize the features' order based on (a) Mutual Information Score (MIS) (b) F Score (FS)
* Arrange the features based on MIS. * Select the first 15 features and fix one of the crack's dimensions as the target value. * Set a machine learning model and select R\({}^{2}\) and RMSE as performance metrics of the machine learning model. * Set the size of a training data set, and based on that, separate the training and testing data sets along their target values. * Fit the ML model for the data set and predict both training and testing target values. * Compute the response values (performance metrics, namely R\({}^{2}\) and RMSE) of the ML model for both the training and testing data sets. * Repeat steps 5 to 8 by changing the different ML models. * Repeat steps 4 to 9 by changing the number of features to 17, 19, and 21. * Repeat steps 3 to 10 by arranging the features based on the F Score. * Conduct an ANOVA and statistical test to test the significance of the parameters on the response values. * Implement [PERSON]'s method to select the best machine learning model based on R2 and RMSE values. * Tune the hyper-parameters of the best machine learning model. * Implement the MFO, GWO, and DPGWO algorithms by randomly selecting the given features along with their target values between 15 and 21. * Compare the performance of algorithms using performance indicators (Inverted Generational Distance and Spacing) and Friedman's Test. Select the best number of features and their combinations. * Repeat the steps from 3 to 15 for other dimensions of the crack, like crack depth and crack width.