Efficient Binary Symbiotic Organisms Search Algorithm Approaches for Feature Selection Problems

Feature selection is one of the main data preprocessing steps in machine learning. Its goal is to reduce the number of features by removing extra and noisy features. Feature selection methods must consider the accuracy of classification algorithms while performing feature reduction on a dataset. Meta-heuristic algorithms are the most successful and promising methods for solving this issue. The symbiotic organisms search algorithm is one of the successful meta-heuristic algorithms which is inspired by the interaction of organisms in the nature called Parasitism Commensalism Mutualism. In this paper, three engulfing binary methods based on the symbiotic organisms search algorithm are presented for solving the feature selection problem. In the first and second methods, several S-shaped and V-shaped transfer functions are used for binarizing the symbiotic organisms search algorithm, respectively. These methods are called BSOSS and BSOSV. In the third method, two new operators called BMP and BCP are presented for binarizing the symbiotic organisms search algorithm. This method is called EBSOS. The third approach presents an advanced binary version of the coexistence search algorithm with two new operators, BMP and BCP, to solve the feature selection problem, named EBSOS. The proposed methods are run on 18 standard UCI datasets and compared to base and important meta-heuristic algorithms. The test results show that the EBSOS method has the best performance among the three proposed approaches for binarization of the coexistence search algorithm. Finally, the proposed EBSOS approach was compared to other meta-heuristic methods including the genetic algorithm, binary bat algorithm, binary particle swarm algorithm, binary flower pollination algorithm, binary grey wolf algorithm, binary dragonfly algorithm, and binary chaotic crow search algorithm. The results of different experiments showed that the proposed EBSOS approach has better performance compared to other methods in terms of feature count and accuracy criteria. Furthermore, the proposed EBSOS approach was practically evaluated on spam email detection in particular. The results of this experiment also verified the performance of the proposed EBSOS approach. In addition, the proposed EBSOS approach is particularly combined with the classifiers including SVM, KNN, NB and MLP to evaluate this method performance in the detection of spam emails. The obtained results showed that the proposed EBSOS approach has significantly improved the accuracy and speed of all the classifiers in spam email detection.


Introduction
In real-world problems, the existence of datasets with high dimensionality and also useless and extra data has made the process of analyzing these data challenging. Feature selection is one of the preprocessing steps in machine learning which can remove useless and irrelevant features from a dataset and find the ultimate subset of important features which leads to the better performance of machine learning algorithms [1,2]. In fact, feature selection is an important and common method in data mining and machine learning for dimensionality reduction by eliminating irrelevant and redundant information from the dataset for achieving the optimal feature subset which leads to an increase in the speed and accuracy of classification algorithms [2,3]. However, obtaining the optimal feature subset is posed as a complex optimization problem and conventional methods are unable to solve this problem. In fact, the goal of feature selection is finding a set of m features from the full set of n features which improves the performance of the learning algorithm in terms of learning speed or classification accuracy.
Until now, two frameworks, including search-based feature selection and correlation-based feature selection, have been proposed for solving the feature selection problem efficiently [2]. Search strategy and evaluation criterion are the two key components in the first set of methods. The search strategy specifies how the solution is generated for an optimal feature subset. Each generated solution is evaluated using a specified criterion. Of course, in this strategy, search methods try to work better in later iterations and the subset generation and evaluation process are repeated until a stopping criterion is met. Unlike the first set of methods, in the second set, the abundance, relationship, and correlation between features are used for identifying useless and extra features. In other studies [3,4], however, feature selection approaches fall into two main categories: filter-based methods and coating-based methods. The filter-based method usually uses the correlation between data for finding the optimal feature subset. Filter-based methods are independent of the classification algorithm and work relatively fast. However, coatingbased algorithms involve the classification algorithm in the evaluation criterion in order to present an optimal solution for the feature selection method. In figure 1., the overview of filter-based and coating-based methods is presented. The researchers have found out [4][5][6][7][8][9] that coating-based methods obtain better results compared to filter-based methods because they utilize the classification algorithm in their evaluation model. Coating models take advantage of meta-heuristic algorithms. Of course, nowadays, metaa-heuristic algorithms have proven themselves useful for most complex computational and optimization problems. These efficient and reliable methods are for finding near-optimal solutions with a reasonable computational cost. Of course, most of these algorithms are inspired by the behavior of creatures, animals' hunting, or nature [10,11]. At the beginning of meta-heuristic algorithm generations, they use exploration to generate new solutions and try to gradually decrease exploration as the generation comes closer to its end. On the other hand, they use exploitation to generate new solutions around the solutions they have already discovered. Therefore, metaheuristic algorithms use the two exploration and exploitation operations to prevent being trapped in a local minimum and converge to the target.
Symbiotic organisms search is one of the successful and promising meta-heuristic algorithms inspired by the encounters of animals in nature which was presented by Prayogo and Cheng in 2014. This algorithm has three separate and powerful processes called mutualism, commensalism, and parasitism which improve the solutions found in the population. Also, there are no parameters for tuning these two actions between exploration and exploitation. For this reason, it has been able to solve most optimization problems successfully. Due to the novelty and superior results of this algorithm in solving optimization problems, we were encouraged to present three different binary variations of this algorithm in this paper for solving binary optimization problems. In this paper, three binary coating-based symbiotic organisms search methods are presented for solving the feature selection problem. In the first method, we used multiple Sigmoid transfer functions (Sshaped) to move the symbiotic organisms search algorithm in the binary space. Then, we used another transfer function called the V-shaped transfer function to move the symbiotic organisms search algorithm in the binary space. In both of these methods, we used a simple transfer function to transform a continuous space to binary. We did this to show that a transfer function can be used with the least amount of modification to the operations of the symbiotic organisms search algorithm to present a coating-based method for moving in the binary space. Furthermore, in the third method, two new operators called BMP and BCP were presented for making the advanced binary version of the symbiotic organisms search algorithm called EBSOS. In the EBSOS approach, our goal is to apply some changes to the structure of the operators of the symbiotic organisms search algorithm based on various new operators while keeping the rules present in the base symbiotic organisms search algorithm. In this method, of course, we have tried for exploration and exploitation to be upheld.
In the rest of this paper, binary versions of various meta-heuristic algorithms are reviewed in section 2. In section 3, the fundamental concepts of the symbiotic organisms search algorithm and its steps are explained in detail. In section 4, the three proposed binary approaches based on the symbiotic organisms search algorithm are presented. In section 5, the efficiency and performance of the proposed approaches will be tested. In the final section of the paper, the overall conclusion and future work will be presented.

Previous Work
In this section, we will review the papers about feature selection. Of course, we have comprehensively described the methods of transforming continuous meta-heuristic algorithms to binary in table 1. and described the differences and operators of our proposed methods in the end as well. Since our proposed method is a coating-based method, we will mostly review papers which are coating-based and have used different transfer functions. In 2013, a particle swarm algorithm based on two V-Shaped and S-shaped transfer functions was presented by Mirjalili et al. [12]. The proposed method was run on 2005 benchmark functions and the results of the proposed method were promising compared to other methods. In another research in 2013, a binary cuckoo search algorithm was presented for feature selection [13]. In this study, only the S-shaped transfer function was used for transforming the continuous space to binary. Finally, the proposed method was run on two datasets which showed that the proposed method performs better than base binary algorithms like binary bat algorithm, binary particle swarm, binary firefly algorithm, and binary gravitational search algorithm.  [14], a binary bat algorithm based on two V-shaped and S-shaped transfer functions was presented by Mirjalili et al. in 2014. Experiments were carried out on 22 benchmark functions and the results showed that the binary bat algorithm performed significantly better compared to the genetic and particle swarm algorithms. Also, the proposed algorithm performed better in real-world problems as well.
In 2016, two binary grey wolf optimization approaches were presented for feature selection [8]. In the first approach, the composition operator is used for updating the operators of the grey wolf optimization algorithm. In the second approach, the sigmoidal function is used to move the grey wolf optimization algorithm in the binary space and finally, random thresholding is carried out to convert the solutions to binary. To evaluate and compare the proposed and other methods, 18 different datasets from the UCI repository were used. The simulation results indicated the superiority of the first method more. Also, in another research, a binary ant lion algorithm was presented for feature selection [7]. In this research, two types of approaches were studied for binarizing the binary ant lion algorithm. In the first approach, the composition operator was used and in the second approach, the S-shaped and V-shaped transfer functions were used. The experiments we applied on 21 datasets and the results showed that the proposed algorithm based on the composition operator has presented acceptable results.
Mafarja and Mirjalali presented two different approaches of the whale optimization algorithm in 2018 for coating feature selection. In this study, genetic operators are used to binarize the whale optimization algorithm [15]. Furthermore, in an approach called WOA-T, the tournament selection and in an approach called WOA-R, the roulette wheel operator is used. In the main method, the mutation and crossover operators are used simultaneously to move the whale optimization algorithm. Finally, the proposed methods are tested on standard datasets and compared to filterbased and coating-based algorithms. The results verify the superiority of the proposed algorithms. In another research in 2018, the efficient binary Salp swarm algorithm with the composition method was presented by Faris et al. for solving the feature selection problem [6]. Two different approaches were presented in this study as well. In the first approach, eight binary transfer functions are used for converting the continuous version of the Salp swarm algorithm to binary. In the second approach, the composition operator was used to replace the ordinary operator and increasing the exploration behavior of the algorithm in addition to the transfer functions. Finally, different tests verify the superiority of the proposed algorithms.
In the most recent research in 2019, Arora and Anand presented two binary approaches to the impulse optimization algorithm [4]. In the first approach, the S-shaped transfer function is used to transform the continuous space to binary while in the second approach, the V-shaped transfer function is used for transforming the continuous space to binary. To evaluate and compare the performance of the proposed algorithms, more than 21 datasets from the UCI repository were used. Experimental results showed that the approach based on the S-shaped transfer function performs better than the V-shaped transfer function. In addition, the proposed method has performed better compared to other algorithms in terms of improving the classification accuracy. In another research, two different approaches of the Grasshopper Optimization Algorithm were presented by Mafarja et al. for solving the feature selection problem[1]. The first approach is based on the Sigmoid and V-shaped transfer functions and are named BGOA-S and BGOA-V respectively. The second proposed approach combines the best obtained solutions and also a mutation operator is utilized for increasing the exploration phase in the BGOA algorithm. Finally, the second approach is called BGOA-M. the proposed methods were evaluated using 25 standard UCI datasets and compared to 8 coating-based meta-heuristic approaches and six well-known filter-based methods. Test results show the advantage of BGOA and BGOA-M methods compared to other similar techniques.
As seen in table 1, researchers have used different meta-heuristic algorithms for solving binary problems, including feature selection, and in most studies, it is tried to use transfer or transform functions in the main procedures of each meta-heuristic algorithm to move them in the binary space. In some versions, they have only used an S-shaped transfer function while in others, they have used only the V-shaped transfer function. Of course, in some studies, both the S-shaped and V-shaped functions have been used for presenting the binary version of meta-heuristic algorithms [4,16,17]. Of course, in different studies, different versions of the S-shaped and V-shaped functions are used simultaneously. Finally, some researchers have used the mutation and crossover operators for presenting the binary version of meta-heuristic functions [4,16,17]. However, each one of the Sshaped and V-shaped functions might have its advantages and one might outperform the other in an algorithm depending on the procedures of the algorithm. Also, the mutation and crossover operators can be suitable operators for transforming continuous meta-heuristic algorithms to the binary version. However, if its exploration and exploitation are not tuned correctly, it will lead to the poor performance of the considered algorithm and occasional premature or slow convergence. Therefore, in our proposed method, we have considered the symbiosis search as the proposed method, which is a powerful algorithm for solving optimization problems, and used a different version of the S-shaped and V-shaped functions simultaneously for moving in the binary search space. In addition, in the third method, two new operators called BMP and BCP are presented for binarizing the symbiosis organisms search algorithm.

Symbiotic Organisms Search Algorithm
In this section, we will briefly study the symbiotic organisms search algorithm. The readers can use references [18,19] for more reading and advantages and limitations. The symbiotic organisms search algorithm is a meta-heuristic inspired by the opposition of organisms presented by Cheng and Prayogo in 2014 for solving optimization problems [19]. This algorithm starts working with an initial population called the ecosystem. In this ecosystem, a group of organisms is randomly generated in the search space and each organism is considered a solution for solving the optimization problem. Each one of the solutions or organisms has a fitness attributed to it. Furthermore, there are no parameters in this algorithm for tuning exploration and exploitation and this is done automatically. Also, since it uses optimal solutions of the current neighbor and the global solution through two commensalism and mutualism steps, it has good exploitation [18].
The main point in this algorithm is the way new solutions are generated. New solution generation is done by emulating the relationship or interaction of two organisms in the ecosystem. In this algorithm, the most prevalent or popular symbiosis relationship between two organisms in the environment is simulated which includes mutualism, commensalism, and parasitism. Figure 2. presents the most common symbiosis relationships in the environment, i.e. mutualism, commensalism, and parasitism.   [18] In figure 2., the main three steps of symbiosis are presented. In the mutualism step, both the organisms profit while in commensalism, only one organism profits but not the other. Finally, in the parasitism state of life, one organism profits while the other one gets harmed. In the following, first, the flowchart of the symbiosis organisms search algorithm is presented in figure 3. Then, each step of the algorithm is described comprehensively.
Mutualism Stage: in this stage, two organisms start a relationship and both will profit from this relationship. The relationship between bees and flowers can be mentioned which is presented in figure 2. part (a). In this step of the symbiotic organisms search algorithm, two organisms called X i and X j are chosen from the ecosystem on random and both organisms profit or update according to equations 1 and 2.
( 1 ) In equations 1 and 2, 1 and 2 represent the profit coefficient of the two organisms and each organism's profit might be different than the other. Therefore, in this algorithm, 1 and 2 are determined randomly between 1 and 2. Also, rand is a random vector of numbers between zero and one.
_ , the mutual vector, represents the relationship between organisms X i and X j . Also, X best represents the best organism in the ecosystem.
Commensalism Stage: in this stage, two organisms start a relationship and one of the organisms will profit from this relationship while the other one is not affected at all. The relationship between sticky fish and sharks can be mentioned which is presented in figure 2. part (b). In this step of the symbiotic organisms search algorithm, two organisms name X i and X j are chosen from the ecosystem on random and organism X j is updated according to equation 4.
In equation 4, rand is a random vector of numbers between -1 and 1 while X best represents the best organism in the ecosystem.
Parasitism Stage: in this stage, two organisms enter a relationship where one of the organisms profits from this relationship while the other is damaged by it. The relationship between the Malaria disease which is transmitted to humans by Malaria mosquitos which is presented in figure 2. part (c). In the symbiotic organisms search algorithm, an organism is chosen on random and like the Malaria mosquito, it acts like a parasite by creating an artificial parasite "Parasite-Vector". The parasite is created in the space by the multiplication of organism . Parasite-Vector tries to replace in the ecosystem. When Parasite-Vector works better than organism , the organism must be removed from the ecosystem and replaced by the Parasite-Vector. Otherwise, Parasite-Vector does not affect organism in any way.

Proposed Method
We described the continuous symbiotic organisms search algorithm used for solving continuous optimization problems in section 3. In this section, our goal is to present different binary versions of the symbiotic organisms search algorithm for solving binary problems. In the first two versions, we used the S-shaped and V-shaped transfer functions which are two of the most important and most successful transfer functions from the continuous to the binary state. In addition, we will present a different version by making some modifications to the structure of the symbiotic organisms search algorithm procedures. In this version, some new operators are used. In the rest of this section, we describe the proposed method in three different subsections. In section 4.1, a binary version of the symbiotic organisms search algorithm based on the Sigmoid function will be presented. In this approach, four different functions are used for moving the symbiotic organisms search algorithm in the binary space. Finally, after experiments, an S-shaped function is considered as the transfer function from the continuous space to the binary space. In section 4.2, a binary version of the symbiotic organisms search algorithm based on the V-shaped function will be presented. In this approach, four different V-shaped functions are presented for moving the symbiotic organisms search algorithm in the binary space. Finally, after some experiments, a Vshaped function is used as the final transfer function between the continuous and binary space. In section 4.3, a different binary version based on altering the procedures of the symbiotic organisms search algorithm will be presented which uses new operators presented to improve the exploration and exploitation of the proposed algorithm. Finally, in section 4.4, a valid multi-objective function is presented for feature reduction and improving the classification accuracy.

Binary Symbiotic Organisms Search Algorithm based on the S-shaped base function (BSOSS)
In this section, the new BSOSS approach for solving the feature selection problem using multiple S-shaped functions for binarizing the symbiotic organisms search algorithm is presented. The Sigmoid or S-shaped function [4,12,21] is a transfer function which has been proven to be effective for transforming the continuous space to binary by many researchers. We used four well-known functions for binarization as well. These famous Sigmoid functions are presented in table 2 along with their formula. Also, the graphical state of these four functions is presented comprehensively in figure 4.

Transfer function
Transfer function in coexistence search algorithm S1 Therefore, in the BSOSS approach, four S1, S2, S3, and S4 transfer functions are used for transforming the continuous symbiotic organisms search algorithm to the binary form. In table 2, is the continuous value of solution among the population of the symbiotic organisms search algorithm in dimension at iteration . According to the output obtained from figure 4., it is seen that the output of four S-shaped functions are continuously between 0 and 1. After using four Sshaped functions, thresholding is carried out and the best case in meta-heuristic algorithms is to use a random function for thresholding. Finally, in the S-shaped functions, an organism can be updated in the next iteration using equation 5.
In equation 5., is the position of solution in the population at iteration in dimension of the symbiotic organisms search algorithm. Also, (0.1) is a number between zero and one from a uniform distribution. According to this equation, all the solutions present in the symbiotic organisms search algorithm will be transformed to binary. In the following, we added four S-shaped functions to the symbiotic organisms search algorithm as presented in the pseudo-code in figure 5. BSOSS Algorithm 01: Define S-Shaped Transfer function S1,S2,S3,S4 according to Table(

22:
Generate Parasite_Vector from organism X i 23: Convert Continuous(Parasite_Vector ) to Binary using transfer S-shaped according to Equations (5) and  In figure 5., the pseudo-code of the BSOSS approach based on four S-shaped functions is presented. According to line (01) of the pseudo-code, first, each transfer function is defined in the simulation environment. Then, setting the parameters and generating the initial population is done randomly in lines (02:03). In line (04), the definition of the target feature selection function defined in subsection 4.3 is implemented. In line (05), one of the S-shaped transfer functions gets selected for transforming the continuous space to binary. In lines (06:28), the main loop of the BSOSS approach which includes mutualism, commensalism, parasitism, and binarization phases is run. In lines (12:13, 18, and 23), new changes are made so that two and solutions are transformed to the binary space before being evaluated by the target function and two new solutions and are created. In line (18), generated in the commensalism step is transformed to the binary space before being evaluated by the target function and the new solution called is created. In line (23), the Parasite_Vector created in the parasitism step is transformed to the binary space before being evaluated by the target function and the new solution called BParasite_Vector is generated.

Binary Symbiotic Organisms Search Algorithm Based on the V-shaped Transfer Function (BSOSV)
In this section, the new BSOSV approach consisting of multiple V-shaped transfer functions is presented for binarizing the symbiotic organisms search algorithm for solving the feature selection problem. The Tan hyperbolic or V-shaped function is another transfer function for binarizing metaheuristic algorithms presented by Rashedi et al. in 2010[22] and has been approved by many researchers[1, 10,12,22]. In this paper, we used four well-known V-shaped functions for binarization. These four famous V-shaped functions are presented in table 3. along with their equations. Also, the graphical state of these functions is comprehensively presented in figure 6.
In the BSOSV approach, four V1, V2, V3, and V4 transfer functions are used for transforming the continuous symbiotic organisms search algorithm to the binary form. We will act the same way for this transfer function as we did for the S-shaped transfer function where after applying four Vshaped transfer functions, thresholding takes place. Finally, in the V-shaped functions, an organism can be updated in the next iteration using equation 6.
All the details of equation 6. are like equation 5. with only the difference that we will use the Vshaped transfer function here. Later, we added the four V-shaped functions to the symbiotic organisms search algorithm as presented by the pseudo-code in figure 7. Randomly select X (X j ≠ X i )

22:
Generate Parasite_Vector from organism X i 23: Convert Continuous(Parasite_Vector ) to Binary using transfer V-shaped according to Equations (6) and Table( figure 7., the pseudo-code of the BSOSV approach based on four V-shaped functions is presented. Description of this pseudo-code is similar to the pseudo-code of the BSOSS approach with the difference that in this approach, four V-shaped functions including V1, V2, V3, and V4 are used for transforming the continuous symbiotic organisms search algorithm to the binary form.

Efficient Binary SOS (EBSOS)
In this part, the Efficient Binary Symbiotic Organisms Search algorithm is presented. In this paper, we have named this approach EBSOS. In this approach, some major changes have been applied to transform the mutualism, commensalism, and parasitism steps from the continuous form to the binary form. Transforming the mutualism step from continuous to binary is so that first, the binary mutual vector (BMV) is presented and then, the binary for of the mutualism step along with its changes and pseudo-code is named BMP. Transforming the commensalism step from the continuous form to the binary form is such that organism X i follows two general rules in this step.
In the first rule, organism X i moves more toward X best and in the second rule, organism X i takes solution X j into consideration and in this step, a new operator called BCP is defined. Transforming the parasitism step from continuous to the binary form is such that first, solution X i is considered as the Parasite_Vector. Then, some dimensions of Parasite_Vector are chosen on random and these random indices are saved in idx_random. Finally, entries in these random indices are refilled with random numbers in [0, 1]. In the following, each new step of the algorithm is described in detail and its equations are presented. Also, the pseudo-code is presented in figure 8.

Changing the Assistance Stage From continuous to binary Mode
In this step, two organisms enter a relationship they will both profit from. The mutual vector is the first thing that needs to change in this step so that it is usable for the binary problem. Here, we first define the mutual vector such that it contains all the mutual points. Then, non-mutual points are chosen randomly from either one of or solutions. This operation is called the Binary Mutual Vector (BMV) and is presented in detail in figure 9. According to figure 9, the new BMV operator is used for creating the mutual vector in the binary form. The next step is using 1 and 2 for creating or improving new solutions. In this step, we have considered 1 and 2 as the composition coefficients of the mutual vector with X best . This way, values of 1 and 2 determine the amount of composition with X best in the binary form. Finally, after obtaining the mutual vector and combining it with the best solution, new solutions As seen in figure 10, first, organism X is chosen randomly and then, organism X and X are combined with organism X according to 1 and 2 and create two new solutions called and . These two solutions will cause fundamental changes in organisms and . Since we face the binary space in the new BMP operator, will use solution with a 50 percent chance. Otherwise, it uses solution . Also, will use solution with a 50 percent chance and otherwise, it will use solution . Of course, we have used a new suitable function for the binary form which is presented in figure 11. IF(rand<BF) 06: X new (k)=X best (k); 07: else 08: X new (k)=BMV(k); 09: End IF 10: End For 11: End Function Fig. 11. New suitable function HybridBMV to combine function by BF As presented in figure 11, in the first line, the best solution function gets the intended mutual vector and BF or profit from the input. Then, it tries to use the best solution and the binary mutual vector (BMV) to create new solutions according to BF. In line 4, the condition is set according to BF where the higher BF is, the new solution will use the best solution more. Otherwise, it uses the binary mutual vector (BMV) to create new solutions. Of course, variable BF here is between zero and one.

Transforming the commensalism step from continuous to binary
In this step, two organisms begin a relationship where one organism profits from this relationship and the other one is not affected by it. In the continuous form of mutualism, it is tried for organism X i to move toward two X j and X best solutions. Also, multiplication by a random number between -1 and 1 adds more random moves to this step. We ran the continuous form of the SOS algorithm on MATLAB software. A sample solution along with its movement is depicted in figure 12. As seen in figure 12, organism X i follows two general rules. In the first rule, organism X i moves more towards X i while in the second rule, organism X i considers solution X j at the same time. We considered these rules in the binary commensalism step as well and defined them as a new operator called BCP. This operator is presented in the new pseudo-code in figure 13.

09:
Else 10: X inew ( ) = X i ( ) 11: End if 12: End for Fig. 13. Binary Commensalism Phase (BCP) As seen in figure 13, a random organism X j is selected on random first. Then, organism X i improves using this organism X j and X best according to the two specified rules. In this new BCP operator, since we are faced with the binary space, the new solution uses X best with a 50 percent chance. Otherwise, it might stay unchanged with a 50 percent chance or it uses solution X j .

Transforming the parasitism step from continuous to binary
In the continuous symbiotic organisms search algorithm, the parasite or Parasite_Vector is created in the space by the multiplication of organism . Parasite_Vector tries to replace in the ecosystem. Our binary version works similar to the continuous form but with the difference that Parasite_Vector grows in the binary space and tries to choose a random number between zero and one and leads to fundamental changes in the Prasite_Vector. To understand the parasitism step better, we have depicted it as figure 14. In figure 14, first, solution is considered as the Prasite_Vector. Then, some dimensions of Parasite_Vector are chosen randomly and these random indices are saved in idx_random. Finally, entries corresponding to these random indices are replaced with random numbers in the [0, 1] interval. In this example, assuming we have a vector of dimension 8, indices 2, 3, 6, and 8 are chosen randomly and saved in idx_random. Finally, the binary parasitism phase can be defined as follows using equation 9: Parasite − Vector(idx random ) = random0.1(1. size(idx random )) Furthermore, in this section, we have used the mutation operator to increase the exploration in the proposed approach which is applied to Parasite_Vector at the final step in order to achieve a better result.

Target Function
The multi-objective function proposed for balancing the number of selected features in each solution (minimum) and classification accuracy (maximum) is presented in this section. This objective function is used in equation 10 for evaluating a solution in meta-heuristic algorithms.
Where ( ) represents the classification error of a classifier and |R| shows that the selected subset is multi-linear. Also, |N| is the number of all features available in the dataset while parameter α is the importance of classifier quality and parameter β is the length of the subset. The values of these two parameters are calculated according to α ∈ [0, 1] and β = (1 -α) which were adopted from research [7]. In this research, the initial value of α is considered to be 0.99. therefore, the value of β will be 0.01. Most researchers [9,15,[23][24][25] use the simplest classification method, i.e. KNN [26]. We used this classifier for defining the objective function in the feature selection problem as well.

Evaluation and Results
In this section, we have evaluated the proposed BSOSS, BSOSV, and EBSOS methods. All the tests in this section were run in MATLAB software on a system with a X GHz Core i5 processor and 8 gigabytes of RAM. To evaluate the proposed method, 18 feature selection datasets from the UCI [27] repository are used. The features of each dataset are comprehensively presented in table 4. Also, base algorithms like genetic algorithm [28], binary bat algorithm [29], binary particle swarm algorithm [30], binary flower pollination algorithm [31], binary grey wolf algorithm [8], binary dragonfly algorithm [32], and binary chaotic crow search algorithm [33] will be used for comparison with the final proposed approach (EBSOS). In the rest of this section, we will first compare the methods based on the S-shaped function which are named S1, S2, S3, and S4 and then choose one of them which works better than the others as the final method based on the S-shaped function. Then, we will first compare the methods based on the V-shaped function called V1, V2, V3, and V4 and we will choose the one which works better than the others as the final method based on the V-shaped function. finally, we will compare the BSOSS, BSOSV, and EBSOS approaches. In the end, we will choose a method as the final approach and compare it to other methods. In addition to this, in the last section, we will present an applied study on an email span dataset to further evaluate the performance of the proposed algorithm.

Evaluation of S-shaped methods
In this section, four S-shaped methods including S1, S2, S3, S4 are implemented on 18 datasets and the results are compared, and finally an S-shaped method is selected to compare the three approaches proposed in section . In these tests, the iterations and population are 50 and 10, respectively. We evaluate four S-shaped methods including S1, S2, S3, S4 in terms of mean feature number, classification accuracy and objective function convergence rate. In Table 5, four S-shaped methods including S1, S2, S3, S4 are shown in terms of the mean number of features.  Table 5 shows the four methods based on the S-shaped transfer function in terms of the mean number of selected features with iteration number of 50. This experiment shows that the S4 performs best in terms of the average number of selected features, and the S3 sometimes does. But the S1 and S2 models have a relatively modest performance. In Table 6, four S-shaped methods including S1, S2, S3, S4 are presented in terms of accuracy criteria. Table (6) shows the results associated with four methods which are based on the S-shaped transfer function in terms of classification accuracy with iteration 50. The test shows that the S4 is the best in terms of classification accuracy, and the S1 also performs better. However, the S2 and S3 models exhibit relatively poor performance in classification accuracy. Based on the results of feature selection and classification accuracy, it can be said that the S4 is the best model for both feature selection and classification accuracy. But other models have lost their performance in terms of accuracy and average selection. As a result, the S2 model is chosen as the final V-shaped approach.

Evaluation of V-shaped methods
In this section, four V-shaped methods, namely V1, V2, V3, V4, are implemented on 18 datasets and the results are compared to each other, and finally a final V-shaped method is selected to compare the three approaches proposed in section . In these experiments, the number of iterations and population is set to 50 and 10, respectively. As in Section (5-1) in the S-shaped method, here we evaluate four V-shaped methods including V1, V2, V3, V4 in terms of mean number of feature and classification accuracy. The following four V-shaped methods including V1, V2, V3, V4 are compared in terms of the mean number of features and the results are shown in Table (7). The results obtained based on Table (7) for comparing four V-shaped methods in terms of mean number of features show that the V4 and V3 models are the best in terms of the average number of selected features. Of course, the S1 and S2 models have shown average performance. The following four V-shaped methods including V1, V2, V3, V4 are compared in terms of accuracy criteria and their results are shown in Table (8). The results associated with four methods based on the V-shaped transfer function in terms of classification accuracy (Table 8) show that the V4 model is the best in terms of classification accuracy criteria and then the S1 model is the best in terms of classification accuracy criteria. However, the S2 and S3 models have a relatively modest performance. Based on the results of feature selection and classification accuracy, it can be said that the S4 is the best model for both feature selection and classification accuracy, and on the other hand, the S2 model performs better in feature selection, but in terms of accuracy, the S1 model has also performed better in classification accuracy, but has lost performance in terms of feature selection. At the end, the model S3 exhibits moderate performance. In Figures 14 to 16, the results of each transfer function convergence rate are shown.

Comparison and evaluation of three proposed approaches (BOSS, BSV, EBSOS)
In this section, we examine three proposed approaches BSOSS, BSOSV and EBSOS in detail. In this paper, the S4 transfer function is used in the BSOSS approach which is based on the BSOSS function regarding the section (1.5) tests results, and also the V4 transfer function is used in the BSOSV approach which is based on the BSOSV function regarding the results of section (2.5) as the final method. The purpose of this experiment is to compare the three proposed approaches and select one final method as the proposed approach for the next section, namely one of the proposed approaches BSOSS, BSOSV, and EBSOS as one of the proposed methods to compare with other meta-heuristic methods in Section (4-5). The following three approaches are compared in terms of the criterion of mean number of features and their results are presented in Table 9. Population number and iterations are set to 10 and 60, respectively. The results of the three proposed approaches in terms of the mean number of features presented in Table (9) show that the EBSOS approach performed the best in terms of feature selection, with 18 datasets able to perform 83% more successfully than the other two approaches. Of course, in addition to feature selection, the classification accuracy criterion should also be considered, which is compared with the three proposed approaches in terms of classification accuracy and the results are shown in Table (10).
Results associated with three proposed approaches in terms of classification accuracy criteria in Table (10) show that the EBSOS approach performed best in terms of classification accuracy, with 18 datasets able to perform 95% more successfully than the other two approaches. Consequently, the results obtained in terms of the criterion of accuracy and average number of selected features, the EBSOS approach proves its remarkable superiority over the other two methods and can be chosen as a final method for comparison with other algorithms. However, in the remainder of this section, we evaluated three proposed approaches in terms of objective function convergence rate in order to show which method is better in terms of convergence than the other methods, and the comparison results are shown in Figures (15) and (16) in terms of the objective function convergence rate. The results of the three proposed approaches in terms of the objective function convergence in Figures (15) and (16) show that the EBSOS approach has been able to achieve objective function convergence goals in addition to the features accuracy and average. From the results obtained in terms of criteria of accuracy and average number of selected features as well as the convergence of the objective function EBSOS approach proves its remarkable superiority in two other ways and can be selected as a final method for comparison with other algorithms. In section (4.5) we compared the EBSOS approach with more benchmarks with powerful meta-algorithms including GA, BBA, BPSO, BFPA, BGWO, BDA, BCCSA. All experiments confirm the remarkable superiority of the EBSOS approach in most statistical criteria.

Comparing with other approaches
In this section, the proposed EBSOS approach is implemented on 18 datasets with other metaheuristic algorithms such as GA, BBA, BPSO, BFPA, BGPA, BGWO, BDA, BCCSA, and then, are compared in terms of average feature selection criteria, classification accuracy, objective function convergence as well as Statistical criteria including best, worst, average and standard deviation. In this section, the experiments in iterations 40 and 80 are intended to compare the algorithms with fewer and more iterations. In all experiments in this section, the population is also considered 10. In the following, the proposed EBSOS approach is compared with other metaheuristic algorithms in terms of statistical criteria and other criteria in iteration 40, and its results are shown in Tables 11 to 12 and Figures 17 and 18.  Comparison of the proposed EBSOS approach with other meta-algorithms in terms of statistical criteria with iteration of 40 and convergence rate in Table ( 11) and Figures (17) and (18) shows that the proposed EBSOS approach is a powerful method to solve the feature selection problem. In the 18 datasets, it was able to perform 98% more successfully than other algorithms in terms of statistical criteria, including best, worst, average and standard deviation, and the convergence rate of the proposed EBSOS approach is better than other meta-heuristic algorithms. The proposed EBSOS approach with other meta-heuristic algorithms is then implemented in terms of the mean number of features and the results are presented in Table 12. Population number and iterations were considered 10 and 40 in this experiment. The results of comparing the proposed EBSOS approach with other meta-heuristic algorithms in terms of the mean number of features show that the EBSOS approach performed the best in terms of feature selection, so that in the 18 datasets were able to be 72% more successful than Other metaalgorithms such as GA, BBA, BPSO, BFPA, BGWO, BDA, BCCSA operate. Of course, in addition to feature selection, the classification accuracy criterion should also be taken into account, which is then compared with the proposed EBSOS approach with other meta-heuristic algorithms in terms of accuracy criterion with iteration 40 and the results are shown in Table (13). The results of comparing the proposed EBSOS approach with other meta-heuristic algorithms with iteration number of 40 in terms of the classification accuracy criterion presented in Table (13) show that the EBSOS approach has the best performance in terms of classification accuracy, as it was able to be 89% more successful than other meta-algorithms including GA, BBA, BPSO, BFPA, BGWO, BDA, BCCSA in 18 datasets. Consequently, the results obtained in terms of accuracy criterion and average number of selected features, the EBSOS approach has been able to prove its superiority over robust basic meta-heuristic methods in feature selection. In the following section, we evaluate the EBSOS approach and other comparative meta-heuristic algorithms in terms of statistical criteria and other criteria with higher number of iterations (iteration 80), while the results are shown in Tables (14) to (15) and Figures (19) and (20). Comparison of the proposed EBSOS approach with other meta-heuristic algorithms in terms of statistical criteria with iteration 80 and convergence rate in Table ( 14) and Figures (19) and (20), respectively, shows that the proposed EBSOS approach is a powerful method in solving feature selection problem. , In which 18 datasets were able to perform about 95% more successful than other algorithms in terms of statistical criteria, including best, worst, average and standard deviation, and the convergence rate of the proposed EBSOS approach was better than other meta-heuristic algorithms. In the following, the proposed EBSOS approach is compared with other meta-heuristic algorithms in terms of average number of features and the results are shown in Table ( 15). In this experiment, the population number is 10 and the number of iterations is set to 80. The results of Table (15) show that the EBSOS approach has the best performance in terms of feature selection, with 18 datasets being about 89% more successful than other meta-heuristic algorithms including GA, BBA, BPSO, BFPA, BGWO, BDA , BCCSA. Of course, in addition to feature selection, the classification accuracy criterion must also be considered, which is then compared with the proposed EBSOS approach with other meta-heuristic algorithms in terms of accuracy criterion with iteration 80 and the results are shown in Table ( 16). The results of Table (16) show that the EBSOS approach has the best performance in terms of classification accuracy, with 18 datasets being about 95% more successful than other meta-heuristic algorithms such as GA, BBA, BPSO, BFPA, BGWO, BDA, BCCSA. From the results obtained in terms of the criterion of accuracy and the average number of selected features, the EBSOS approach has been able to prove its remarkable superiority over robust basic meta-heuristic methods in feature selection. Therefore, all experiments in this section, in terms of mean criteria of feature selection, cluster accuracy, objective function convergence rate as well as statistical criteria including best, worst, mean and standard deviation of EBSOS's proposed approach over other metaalgorithms such as GA, BBA, BPSO BCFSA, BFPA, BGWO, BDA, BCCSA in the discussion of feature selection proved well. In addition, the proposed EBSOS approach is evaluated in spam email detection in a specific and functional way in the next section (5.5).

Applied study on Email data
The proposed EBSOS approach is implemented in the previous section on 18 valid UCI datasets. Results showed that the proposed EBSOS approach is significantly superior to other meta-heuristic algorithms in selecting fewer features and classification accuracy as well as other statistical criteria; Given the robust results of the proposed algorithm on valid UCI datasets, we were motivated to implement our proposed EBSOS approach on spam email datasets and compared criteria such as accuracy, sensitivity and accuracy of the clusters for performance. We used a valid spam mail database called Spambase to perform this test. This dataset contains 4601 records and 58 attributes and the last attribute is concerned with the class. There are also 4601 records of 2788 regular emails and 1813 spam emails [30][31][32][33][34]. We split the spam email dataset into test (30%) and training (70%) datasets. We also considered the initial population number of all algorithms equal to 10 and the number of iterations to 20. This section uses well-known criteria such as accuracy, sensitivity and accuracy formulated in relations (11), (12) and (13), respectively: Each of these criteria is defined in the range of [0.1], with a higher number indicating better classification quality and accuracy. In this section, four experiments have been carried out, each of which uses the proposed EBSOS approach with the SVM, KNN, NB, and MLP classifiers to detect spam emails, as well as three implementations are considered for each category for better evaluation and are compared in terms of accuracy, sensitivity and accuracy. In this section, in the all experiments the initial population number is 10 and the proposed approach iteration number is 20.
In the following, four experiments are presented with combination of different classifiers and the proposed EBSOS approach. In addition, in all experiments the speed reduction rate of each classifier is shown using the proposed EBSOS approach to evaluate the rate of acceleration of the classifier algorithms using the proposed EBSOS approach.
In the first experiment of this subsection, an evaluation of the proposed EBSOS approach in terms of the accuracy, sensitivity, and accuracy of KNN spam mail detection with three different implementations is shown in Figure (21) and Table (17). The test results presented in Figure (21) show that the proposed EBSOS approach has been able to improve the KNN classification in terms of accuracy, sensitivity, and accuracy by improving the accuracy of the algorithm up to 60%. In addition, the proposed EBSOS approach has reduced the time of this classifier by 50%. In the second test, the evaluation of the proposed EBSOS approach in terms of accuracy, sensitivity and validity of spam email detection with NV blocking with three different implementations is shown in Figure (22) and Table (18). The test results presented in Figure (22) show that the proposed EBSOS approach has improved the NV classification in terms of accuracy and sensitivity. It improved the accuracy of the algorithm up to 38%. However, in terms of accuracy, it has not been able to improve this algorithm, but the proposed EBSOS approach has significantly reduced the time of this classifier. In the third experiment, the evaluation of the proposed EBSOS approach in terms of accuracy, sensitivity and accuracy of spam mail detection with SVM cluster with three different implementations is shown in Figure (23) and Table (19). The test results depicted in Figure (23) show that the proposed EBSOS approach has been able to improve the SVM classification in terms of accuracy and accuracy up to 11%. Although, in terms of accuracy, it has not been able to improve this algorithm, but the proposed EBSOS approach has significantly reduced the time of this classifier. In the fourth experiment, the proposed EBSOS approach is evaluated in terms of accuracy, sensitivity and validity of spam mail detection with MLP classifier with three different implementations, which is shown in Figure (24) and Table (20). The test results shown in Figure (24) indicate that the proposed EBSOS approach has improved the MLP classifier in terms of accuracy and validity by improving the accuracy of the algorithm up to 26%. However, in terms of sensitivity it has not been able to improve this algorithm, but the proposed EBSOS approach has significantly reduced the time of this classifier. The overall results of comparing the proposed EBSOS approach in terms of accuracy, sensitivity, and validity of spam mail detection with different categories show that the proposed EBSOS approach is a powerful method in feature selection to increase the speed and accuracy of the categories in all contexts. As in all experiments, the proposed EBSOS approach has been able to significantly reduce all classifiers time, and has also improved the accuracy of all clusters by 10 to 60%.

Conclusion and Future Works
Today, due to the vast amount of information, feature selection methods are one of the important steps in pre-processing information that aims to reduce dimensions by eliminating redundant features. However, the methods of feature selection should also consider the classifier accuracy while selecting the important feature and removing the redundant features. As a result, feature selection methods have a direct impact on the accuracy and speed of machine learning classifiers. Recent meta-heuristic algorithms have attracted the attention of many researchers because of their simplicity and random nature, as well as successful and promising methods for feature selection.
The coexistence search algorithm, which is inspired by the opposition of organisms in nature, is one of the most successful meta-heuristic algorithms. In this paper, three different approaches of the coexistence search algorithm, BSOSS, BSOSV and EBSOS, are presented to solve the feature selection problem. In the BSOSS approach, several S-shaped transfer functions are used to binarize the algorithm, and in the BSOSV approach several V-shaped transfer functions are used to binarize the algorithm. Finally, in the EBSOS approach, an advanced version of the coexistence search algorithm with two new operators, BMP and BCP, are presented to binarize the coexistence search algorithm.
Eventually, the three proposed approaches have been simulated, at first, the four BSOSS models are compared, and finally the S4 model is selected as the final BSOSS method with respect to feature selection results and classification accuracy, and the V4 model with respect to feature selection results. The classification accuracy is selected as the final BSOSV method and then the three proposed approaches BSOSS, BSOSV and EBSOS are compared with each other and the EBSOS approach is selected as the final proposed method. The proposed EBSOS approach is compared with other meta-heuristics methods such as genetic algorithm, bat binary algorithm, binary particle swarm algorithm, flower pollinator binary algorithm, gray wolf binary algorithm, dragonfly binary algorithm and chaotic-based binary search algorithm. The results of various experiments showed that the proposed EBSOS approach performs better in terms of number of features and accuracy than other methods. In addition, the proposed EBSOS approach is evaluated in spam emails detection in specific and functional applications in combination with SVM, KNN, NB, and MLP classifiers. These tests results showed that the proposed EBSOS approach significantly improved the accuracy and speed of all classifiers.
Bagherzadeh, Dr Masdari, and Dr. Majidzadeh, whos have been working hard to accomplish this research.