A software for feature selection using single/multi-objective evolutionary algorithms


Main Page:

Current release: Version 1.0 (2017-2-12)

Operating Systems:
64-Bit, WinServer 2012 / Win7 SP1 / Win8 / Win8.1 / Win10.
ECoFFeS is freely available under the GNU General Public License.


The recent decade has witnessed significant progress in the development of feature selection for many bioinformatics and cheminformatics applications, such as sequence analysis, microarray analysis, mass spectra (MS) analysis, single nucleotide polymorphism (SNP) analysis, and quantitative structure-activity relationship (QSAR) analysis. Compared with other dimensionality reduction techniques, feature selection merely selects a feature subset and does not alter the original representation of the features. Thus, the selected feature subset preserves the semantics of the features while offering the advantage of interpretability. For example, in QSAR analysis, the selected feature subset improves the interpretability of relationship between descriptors and biological activities.

However, feature selection remains a challenging task due to the fact that it is an NP-hard problem, in which the total number of possible feature subsets is 2^n-1 (n is the number of features). To deal with this issue, many methods have been proposed, such as complete search, greedy search, and heuristic search. Nevertheless, most of them tend to suffer from stagnation in a local optimum. Evolutionary computation, as a kind of powerful global search method inspired by nature, has attracted a high level of interest from the feature selection research community. For the purpose of further boosting evolutionary computation for feature selection, we have developed a user-friendly and standalone software named ECoFFeS (Evolutionary Computation For Feature Selection).

Characteristics of ECoFFeS

  • ECoFFeS is a free standalone software which does not require researchers to have any knowledge of programming.
  • ECoFFeS is an open-source software which can be readily extended to solve customized feature selection problems.
  • If feature selection is treated as a single-objective optimization problem, SOEAs aim at obtaining a satisfactory feature subset and providing the rankings of the important features simultaneously. On the other hand, if feature selection is formulated as a multi-objective optimization problem, by utilizing MOEAs, we expect to maintain a set of non-dominated feature subsets with a tradeoff between the number of features and the corresponding metric. Afterwards, the decision maker can select one final feature subset that matches at most his/her preference.
  • On the basis of Subset Discovery and Subset Evaluation, ECoFFeS is a generic tool to tackle feature selection problems in different types of applications.
  • ECoFFeS supports parallel execution which is a useful strategy to make full use of the processing ability of multi-core computers and to significantly reduce computational time.

Components of ECoFFeS

Subset Discovery

Subset Discovery is a search procedure to generate candidate feature subsets. ECoFFeS involves two novel EAs (modified DE and modified MOEA/D proposed by the authors) and four existing state-of-the-art EAs, namely, ACO, GA, PSO, and NSGA-II.

  • Ant Colony Optimization (ACO)
  • Differential Evolution (DE)
  • Genetic Algorithm (GA)
  • Particle Swarm Optimization (PSO)
  • Multi-Objective Evolutionary Algorithm Based on Decomposition (MOEA/D)
  • Non-dominated Sorting Genetic Algorithm-II (NSGA-II)

Subset Evaluation

Subset Evaluation seeks to assess the candidate feature subsets generated by Subset Discovery. In ECoFFeS, 36 evaluation combinations are provided for users.

  • 12 are used for regression, which are the combinations of regression-based models and metrics.
  • 24 are used for classification, which are the combinations of classification-based models and metrics.

Developed by

Jiawei Huang

Contributors: Yong Wang, Dongsheng Cao




  • Jiawei Huang, Yong Wang, Alex F Chen, Shengxiang Yang and Dongsheng Cao. ECoFFeS: a software for feature selection using single/multi-objective evolutionary algorithms. In submission

Latest updates

  • Version 1.0(2017-2-12). The ECoFFeS 1.0 and ECoFFeS Manual were released.

Related links