## 4 Feature Selection Using ABC  
As mentioned in the previous section, in a feature selection problem using ABC, each solution (candidate food sources) is a vector with size \(N\), where \(N\) equals the number of features in the dataset. This vector is a bit vector that only consists of 0 and 1. If the value of a specific position (feature) is 1, the feature is to be included in the evaluation. On the other hand, if the corresponding value is 0, the feature would be excluded from the assessments.  
[PERSON] et al. [28] motivated researchers to apply nature-inspired algorithms and evolutionary algorithms to solve large-scale optimization problems, specifically feature selection processes. In feature selection problems using ABC, the quality of each food source equals the accuracy of the classifier over the validation set with the corresponding subset of features.  
Since the original ABC is only applicable to continuous problems, proper strategies should be adopted to transform it into a binary problem. The major steps to implement the ABC-based feature selection are as follows:  
1. **Create initial population:** First, a population of food sources is generated. Each food source in the population is a bit vector consisting of 0s and 1s.
2. **Calculate fitness:** Each solution is submitted to the ML classifier and the accuracy is calculated. The accuracy is then saved as the fitness of the solution.
3. **Exploitation by employed bees:** An employed bee takes each bit vector to regulate the neighbor food sources (bit vector). SFS or SBS are the common approaches used by an employed bee in this step to find better solutions [29].
4. **Exploitation by onlooker bees:** The information about the performance of solutions is shared with onlookers, and they select the subsets with a better probability of exploration. Then, the chosen bit vector goes under the same process as step 3 to become exploited.
5. **Memorizing the best food source:** After all the onlookers are done with their parts, the subset with the best quality is memorized.
6. **Exploration by scout bees:** In this step, a scout bee is assigned to deserted food sources, if any, and a bit vector of size \(N\) is generated randomly. This vector is then submitted to the ML classifier and its accuracy is stored.  
The general structure and foremost steps of ABC-based feature selection are given in Figure 1.  
To improve the efficiency of the original ABC approach, we made some further modifications to the algorithm. The main goal of this work is to provide optimized feature selection with a better accuracy rate. This work obtains the optimized feature subset by using Automated Artificial Bee Colony Feature Selection (A2 BCF). The A2 BCF algorithm selects the optimized features, and the efficiency is calculated using different ML classifiers.  
One disadvantage of SI algorithms, including the ABC, is their premature convergence. These algorithms would be more efficient if their convergence rate were faster. The other challenge is the dependency of the algorithm on the initial population. In other words, if the proper initial population is selected, the algorithm reaches the optimal solution in a more reasonable time. There is an increased number of research studies exploring these challenges in order to enhance the convergence rate of these algorithms [30]. Balancing between the exploration and exploitation phases of such algorithms increases the efficiency of the algorithm. Therefore, ABC still has space for improvements. [PERSON] and [PERSON] [31] compared different variants of ABC algorithms and determined that ABC has relatively poor performance in the exploration phase. Hence, we consider improving the ABC algorithm's initial population and scout bee phase to design a more efficient ABC variant.