# Swarm Intelligence Algorithms for Feature Selection: A Review
## 1 Introduction  
Nowadays, researchers in machine learning and similar domains are increasingly recognizing the importance of dimensionality reduction of analyzed data. Not only that such high-dimensional data affect learning models, increasing the search space and computational time, but they can also be considered information poor [1; 2]. Furthermore, because of high-dimensional data and, consequently, a vast number of features, the construction of a suitable machine learning model can be extremely demanding and often almost fruitless. We are faced with the so-called _curse of dimensionality_ that refers to a known phenomenon that arises when analyzing data in high-dimensional spaces, stating that data in high-dimensional space become sparse [2; 3]. To overcome problems arising from the high-dimensionality of data, researchers use mainly two approaches. The first one is feature extraction, which comprises the creation of a new featurespace with low dimensionality. The second one is feature selection that focuses primarily on removal of irrelevant and redundant features of the original feature set and, therefore, the selection of a small subset of relevant features. The feature selection problem with \(n\) features has \(2^{n}\) possible solutions (or feature subsets). With each additional feature, the complexity doubles. Thus, a dataset with 1000 features per instance has \(2^{1000}\) possible feature subsets. Feature Selection (FS) is tackled more and more with Swarm Intelligence (SI) algorithms [4; 5], because SI has been proved as a technique which can solve NP-hard computational problems [6] and finding an optimal feature subset is certainly this kind of a problem. SI algorithms themselves have gained popularity in recent years [4], and, nowadays, we have by far surpassed its division into only the Particle Swarm Optimization [7] and Ant Colony Optimization [8], being the two best known SI approaches. In recent years, a considerable number of new swarm-inspired algorithms have emerged, as can be seen in the scope of surveys (e.g., [9; 10]). Despite the proven usage of SI algorithms for FS [11], a narrowed search for surveys in this field gives few results. [PERSON] and [PERSON] [12] conducted a comparison of swarm algorithms for feature selections/reductions. They focused only on six bio-inspired swarm algorithms, i.e., Particle Swarm Optimization (PSO), Ant Colony Optimization Algorithms (ACO), Artificial Fish Swarm Algorithms (AFSA), Artificial Bees Colony Algorithms (ABC), Firefly Algorithms (FA), and Bat Algorithms (BA). In [13], [PERSON] et al. provided a comprehensive survey of Evolutionary Computation (EC) techniques for FS. They divided EC paradigms into Evolutionary Algorithms (EAs), SI, and others. Among SI techniques, only PSO and ACO were analyzed in detail. Other briefly mentioned SI algorithms for FS include only the Bees algorithm and ABC. However, even a quick literature review reveals that FS can also be addressed successfully by a number of other SI algorithms and approaches. Obviously, there is a gap in coverage of SI algorithms for FS. With this paper we try to fill this gap, providing a comprehensive overview of how SI can be used for FS, and what are the most used problems and domains where SI algorithms have proven to be especially successful. In this paper, we try to find answers to three major research questions:  
* What is the current state of this research area? * 1.1: Is this research area interesting for wide audience? * 1.2: How many papers that utilize SI approaches for FS tasks appeared in recent years? * 1.3: Are there any special real-world applications combining swarm intelligence and feature selection? * 1.4: What are the main differences among SI approaches for FS? * 2.1: Are there any special differences in architecture design, additional parameters, computational loads and operators? * 1.4: How could one researcher develop an SI approach for FS tasks? * 3.1: What are the main steps and how can someone easily tailor a problem to existing frameworks?