## 5 Proposed Feature Selection Method (A2 BCF)
This is achieved by changing only one bit in the vector
7: Train the ML model with the novel vector (subset of features selected)
8:if the new vector has a better quality then
9: Replace the new vector with the original vector
10:else
11:\(trial_{i}\) +=1
12:endif
13:endfor
14:for\(j\) to \(population\_size\)do
15: Onlooker bee calculates the exploration probability (\(Pi\)) according to Equation (2)
16:if\(rand(0,1)>Pi\)then
17: Onlooker bee regulates the current vector \(Ni\) by changing only one of the bits in the vector, which gives a new vector in the neighborhood \(Mi\)
18: Train the ML model with the updated features subset
19:if the new vector has a better quality then
20: Replace the new vector with the original vector
21:else
22:\(trial_{i}\) +=1
23:endif
24: Onlooker disregards the features subset and moves to the next bit vector
25:endif
26:endfor
27: Memorize and update the best subset so far
28:if\(trail_{i}>limit\) (food source is exhausted) then
29: Scout bee generates a \"Random\" bit vector based on Equation (4)
30: Scout bee generates the \"OBL\" bit vector based on Equation (8)
31: Select the subset that gives better fitness between Random and OBL vectors
32:endif
33:endwhile
34:return Optimal subset of features
```

**Algorithm 3** Proposed Algorithm--A2 BCF

## 6 Experimental Setup and Results

The detailed steps of the A2 BCF algorithm were given in the previous section. This section presents the study's methodology; the performance of our proposed algorithm, A2 BCF; and the comparison of the results with a previous study [1]. A2 BCF is a wrapper feature selection approach that improves the classification accuracy and enhances the search to keep relevant features in a reasonable time. The dataset used for this experiment contains around 45,000 observations, and the number of classes is two. The overall structure of the whole experiment is presented in Figure 3. The A2 BCF algorithm proposed in this study is inspired by a Hyperparameter Optimization (HPO) method proposed in 2021 [32]. As mentioned above, we leveraged several ML classifiers to select the most important features of the dataset. The details of the classifiers and the feature selection steps are described in the section below. ### Main Steps

The overall process of the study is developed in several steps, including data preprocessing, Feature Selection Optimization (FSO), data transformation, and training the transformed data. The details of these steps are explained below. * **Data preprocessing:*
* This step is required to transform the data into an understandable state for the ML classifier. In other words, the raw data are manipulated into a form that can be accurately processed. Tasks such as data cleaning, feature engineering, and feature scaling are included in this step and summarized as follows:
* Data cleaning: Data cleaning involves detecting and correcting/removing inaccurate records from the dataset. In this study, we detected the features with more than 60% missing values and removed them from the dataset. Moreover, the duplicated data were also removed from the dataset. * Feature engineering: In this study, this refers to creating new features from raw data to possibly increase the predictive power of the learning algorithm. Features such as students' entry term are examples of one of the created features. Additionally, one-hot encoding of the variables (for encoding the categorical types to their binary representations) is another feature engineering process performed in this study. * Feature scaling: Also known as data normalization, feature scaling is the approach used to standardize the range of features of data. As the range of values for different features may vary widely, it is a necessary step in data preprocessing to prevent the algorithm from becoming biased towards the features with higher values in magnitude. * In addition to the above steps, filtering is another step we performed in the preprocessing phase.