Research Article

A Clustering-Guided Integer Brain Storm Optimizer for Feature Selection in High-Dimensional Data

Algorithm 2

The proposed IBSO-C.
Input: The data set to be solved;
Output: The optimal feature subset;
(1) Set related parameters, including the population size, N, the maximal iteration times, T, and , and so on; t = 0;
(2) Cluster all the features into K clusters by using the method in Section 3.2.
(3) Randomly generate N integer ideas or individuals.
(4) Evaluate the fitness of each idea by equation (6);
(5)While t<T
(6) Grouping all the N ideas into M clusters by the method in [42];
(7) Select the best idea from each cluster as the cluster center; % the phase of updating ideas %
(8)For i = 1: N % from the first idea to the last one
(9)  If a random number rand() < , then
(10)   Randomly select a cluster and determine its cluster center;
(11)   If a random number rand() < ,
(12)    Select the cluster center;
(13)    Generate a new idea by the equation (7);
(14)     Implement the proposed disturbance operator;
(15)   Else
(16)    Randomly select a normal idea from this cluster
(17)    Generate a new idea by the equation (7);
(18)     Implement the proposed disturbance operator;
(19)   End if
(20)  Else
(21)   Randomly select two clusters;
(22)   If a random number rand() < , then
(23)    Select two cluster centers;
(24)    Generate a new idea by the equation (7);
(25)     Implement the proposed disturbance operator;
(26)   Else
(27)    Randomly select two normal ideas from the two clusters respectively;
(28)    Generate a new idea by the equation (7);
(29)     Implement the proposed disturbance operator;
(30)   End if
(31)  End if % the phase of selecting elite ideas %
(32)  Evaluate the new idea and update correspond old idea by Section 3.3.
(33)  End for
(34)End while