1. A computer-implemented method for selecting a set of candidate genes from a pool of genes, the method comprising: receiving a set of gene data; arranging the set of gene data into a set of clusters with similar profiles by use of a clustering algorithm, wherein the clustering algorithm employs an interdependence redundancy measure as distance measure; and inputting the set of clusters into a genetic algorithm to select a set of candidate genes from the set of clusters, wherein in each evolution of the genetic algorithm, the genes are reassigned to clusters by first determining the gene of each cluster having the highest multiple interdependence redundancy and assigned other genes of the cluster in accordance with the genes having the highest interdependence redundancy.