Algorithm: The proposed, MI_ BBA-NB, algorithm

1: Set the initial parameters: r, n, cc1, dd1, Max_iteration,

2. : Apply MI filter technique to select a subset of features depending on their importance

3: Set the initial velocities and positions using, Eq. (1) and Eq. (2)

4: Evaluate data by fitness function and set Xik.

5: Set iteration 1 from 1 to Max_iteration.

6: Update data velocity  and position according to Eq. (1) and Eq. (2).

7: When i≤ Max_iteration stop satisfied and return get the best global solution.

8: Choosing the subset from the features specific by the BBA algorithm.

9: Return the good of features (selected features).