A multi-objective gene clustering algorithm guided by apriori biological knowledge with intensification and diversification strategies

Background Biologists aim to understand the genetic background of diseases, metabolic disorders or any other genetic condition. Microarrays are one of the main high-throughput technologies for collecting information about the behaviour of genetic information on different conditions. In order to analyse this data, clustering arises as one of the main techniques used, and it aims at finding groups of genes that have some criterion in common, like similar expression profile. However, the problem of finding groups is normally multi dimensional, making necessary to approach the clustering as a multi-objective problem where various cluster validity indexes are simultaneously optimised. They are usually based on criteria like compactness and separation, which may not be sufficient since they can not guarantee the generation of clusters that have both similar expression patterns and biological coherence. Method We propose a Multi-Objective Clustering algorithm Guided by a-Priori Biological Knowledge (MOC-GaPBK) to find clusters of genes with high levels of co-expression, biological coherence, and also good compactness and separation. Cluster quality indexes are used to optimise simultaneously gene relationships at expression level and biological functionality. Our proposal also includes intensification and diversification strategies to improve the search process. Results The effectiveness of the proposed algorithm is demonstrated on four publicly available datasets. Comparative studies of the use of different objective functions and other widely used microarray clustering techniques are reported. Statistical, visual and biological significance tests are carried out to show the superiority of the proposed algorithm. Conclusions Integrating a-priori biological knowledge into a multi-objective approach and using intensification and diversification strategies allow the proposed algorithm to find solutions with higher quality than other microarray clustering techniques available in the literature in terms of co-expression, biological coherence, compactness and separation.


Background
During the last two decades, the explosion in the increase of DNA microarray datasets available has promoted the application of machine learning methods for the understanding of the genomic data. A DNA microarray is used to collect information regarding gene expression level [1] under different conditions like a time series during a biological process, experiments of different tissue samples, among others [2]. This high-throughput technology has allowed a fast progress in biological and biomedical research [3], and it has facilitated the study of problems such as differential gene expression [4,5], patterns of genes with (dis)similar expression levels [6][7][8], prediction of response to treatment [9,10] and detection of gene mutations [11].
Clustering has proved to be a useful unsupervised learning technique for gene expression data analysis [12]. The goal is to find a partition of genetics elements represented in the microarray into k distinct groups, where k is the number of clusters which may or may not be known in advance. It is expected that genetic elements such as gene, EST contigs, non-coding sequences, among others, with similar expression profiles be put into a single cluster [13] as a way to reveal hidden patterns. Carrying out clustering is not a trivial task, in fact this unsupervised learning technique currently remains a complex and challenging task which was proved to be an NP-hard problem [14]. Clustering can also be seen as an optimisation problem [15] where a cluster index (objective function) is optimised to obtain clustering solutions of high quality.
Several clustering algorithms for gene expression data have been proposed during the last years [16][17][18][19][20][21][22][23][24]. They are based on guilt-by-association paradigm [25], i.e. groups of genetics elements which are associated, share similar expression profiles are more likely to share function. In recent years, this paradigm has been reformulated because the optimisation of a single cluster quality index based on expression levels can cause some issues. The fact that two genetic elements have similar expression patterns can be because they share some functionality, but also because of noise, which may lead to the misidentification of biological relationships [26]. Because of the above, some authors used external biological knowledge [12,27] as another source of information about genetics elements as a way to address this situation and to find clusters with more biological coherence. Often external biological knowledge concerns the use of repositories such as the Gene Ontology Project (GO) [28] or Kyoto Encyclopedia of Genes and Genomes (KEGG) [29]. However, this biological knowledge can be partial, i.e. the information could be available only for a subset of the genetic elements. Clearly, using only a quality index based on external biological knowledge will lead to a partition of the data with clusters previously discovered and thereby extract repetitive information.
Clustering methods can use the expression profiles-based distance (D EB ) or biologicalbased distance (D BB ) to cluster genes. The distance value represents the strength of the relationship between two genes, in terms of expression behaviour (D EB ) or biological functions (D BB ). The distance (D EB and D BB ) between two clusters is calculated as the distance between the medoids (the most central gene located in a cluster) of each cluster. This process helps to uncover new relationships in terms of cellular functions and biological processes in which genes participate; as well as, to understand their interactions, and cellular regulation. These results can also aid the study of the influence of genes in the development of diseases, their association in the formation of tissues or groups of genes that have similar response to a given drug.
The clustering problem can be naturally address as a muti-objective problem [30], where we want to improve objectives related to expression similarity and biological coherence (one or more sources). The multi-objective clustering (MOC) problem can be described as: where is the set of all feasible clustering solutions, C is a clustering solution, and P t , t = 1, . . . , m is a set of m different objective functions (quality indexes), i.e. that clustering C * ⊆ corresponds to clustering solutions that have the best optimised m criteria P [30,31].
In MOC problems, we have several clustering solutions C * that correspond to the optimisation of objective functions that tend to be in conflict [32], i.e. improving one objective involves worsening another. Then, it is required to reach a "tradeoff " where all objective functions (quality indexes) are satisfied to an acceptable degree which leads to find a set of best solutions called non-dominated solutions [30].
Non-dominated solutions Given two clustering solutions C 1 and C 2 ∈ , solution C 1 is said to dominate solution C 2 (denoted as C 1 ≺ C 2 ) (minimisation) if and only if: Pareto optimal set Pareto optimal set is defined as: Thus, a Pareto optimal set corresponds to a set of non-dominated solutions, such that there is no other solution in that dominates any of them. Pareto front The Pareto Front F * corresponds to the image of Pareto optimal set , i.e. to the vectors of criterion functions (quality indexes) to .
In the literature it is possible to find multi-objective clustering (MOC) approaches for clustering expression data. The work presented in [33,34] used a multi-objective genetic algorithm along with supervised techniques to perform the clustering process optimising two cluster quality indexes based on gene expression levels. However, biological information about genes is only used as verification and it is not part of the process of generating clusters. In [35] authors propose a technique for clustering of genes biologically guided by the interaction of a decision maker (DM). The technique optimises several cluster quality indexes based on expression level, meanwhile the DM evaluates clustering solutions based on the relationship in biological terms according to the expert knowledge in the area. Although the approach is interesting, since it considers expression and biology information, the fact that the formation of clusters is affected by DM expertise makes the approach limited to experiments with data in a small area where the decision maker has experience. In these multi-objective clustering approaches for gene expression data it is observed that only few of them use biological knowledge in spite of works in [26,36,37], which have shown that the inclusion of biological knowledge during the clustering process allows to find gene clusters with more common biological properties. In this paper, we present a multi-objective clustering algorithm guided by apriori biological knowledge. The proposed algorithm is based on Non-Dominated Sorting Genetic Algorithm (NSGA-II) [38] which includes intensification and diversification strategies based on both Path-Relinking (PR) [39] and Pareto Local Search (PLS) [40], respectively. The main contributions of this work are (1) the integration of information of genetic elements regarding their levels of expression and biological functions during the optimisation of cluster quality indexes, and (2) the proposal of ad-hoc local search strategies that exploit both the memory mechanism and neighbourhood principles of Path-Relinking (PR) and Pareto Local Search (PLS) respectively, using a multi-objective approach. This work is tested against state of the art algorithms in order to show the benefits of both: using a multi-objective approach to tackle the clustering of expression data and the method proposed is able to discover clusters with more stronger co-relation and common biological properties than literature alternatives.

Method
We call our method "Multi-Objective Clustering Guided by aPriori Biological Knowledge" (MOC-GaPBK). The method uses biological knowledge by the means of annotations of genetic elements with Gene Ontology (GO) terms. The integration of this biological knowledge is performed by the computation of the biology-based (D BB ) and the expression-based (D EB ) distances.

Biology-based distance (D BB )
We use the Wang functional similarity (WS) [41]. It is an information content (IC) based metric which determines the similarity of two Gene Ontology (GO) terms based on both the location of these terms in the GO graph and their relation with their ancestor term. Given two elements G x and G y annotated by GO term sets GO 1 = go 11 , go 12 , . . . , go 1m and GO 2 = go 21 , go 22 , . . . , go 2m respectively, their WS is represented as WS G x , G y with values that can vary between 0 to 1. For more detail on the computation of Wang similarity refer to [41]. We transform the Wang similarity into a distance measure using function 4.
Expression-based distance (D EB ) We use Pearson correlation coefficient (ρ). It is actually a measure of similarity indicating how and how strongly level expression of two elements (Gx, Gy), for m different conditions, are related. We compute: In Fig. 1 we show the incorporation process of the biological knowledge. First, we compute the distance matrices D EB and D BB . Then, each objective function is computed for two cases: (1) using biology-based distance (D BB ) and (2) using expression-based distance (D EB ). Thus, we will be simultaneously optimising expression level similarity and biological functionality to discover clusters with high levels of co-expression and biological coherence.

Multi-objective clustering process
Our approach performs the discovery of clusters using NSGA-II algorithm [38] along with Path-Relinking (PR) [42] and Pareto Local Search (PLS) [43] as intensification and diversification strategies, respectively.

Algorithm 1 Pseudo-code of MOC-GaPBK Algorithm
Input: Gene expression data. Output: Non-dominated clustering solutions. 1: Calculate expression-based distance matrix (D EB ) between each pair of genes. 2: Calculate biology-based distance matrix (D BB ) between each pair of genes.
Start multi-objective clustering process 3: Set v = 0. 4: Create initial population |P 0 | = N. 5: while stopping criteria have not been satisfied do 6: Select parents from P v . 7: Create an offspring population |Q v | = N. 8: 10: Start intensification and diversification strategy 11: Apply Multi-objective Path-relinking (MOPR) on R v . 12: Apply Pareto Local Search (PLS) on R v . 14: End intensification and diversification strategy 15: Create P v+1 based on R v as follows: 16: if (| F 1 | < N then 17: Create a random population P r .

23: end while
End multi-objective clustering process 24: return Non-dominated clustering solutions in R v .
Algorithm 1 shows the pseudo-code of the MOC-GaPBK algorithm. First, it computes the expression (D EB ) and biological distance (D BB ) matrices (lines 1-2) in order to integrate the biological knowledge. Then the algorithm creates an initial population P 0 of size N (line 4). In each generation v, the algorithm creates an offspring population Q v of N individuals by using a binary tournament selection, the (k-1)point crossover and the controller-random mutation operations (lines 6-7). A population R v of size 2N (line 8) is created by union of P v and Q v (line 8). Then, a non-dominated sorting and crowding distance calculation is applied on R v . Here, solutions are ranked according to their nondomination level in F 1 , F 2 , . . . , F n ., i.e. NSGA-II, label as F 1 to non-dominated solutions,  2 to non-dominated solutions remaining after eliminating those with F 1 . The process is repeated until it sorts all solutions in R v . Then, in R v , only those non-dominated solutions, that is, the solutions ranked as F 1 , are maintained (lines 9-10). The R v population is used as input for the intensification and diversification strategies (lines [11][12][13][14]. The next population P v+1 is created by selecting the solutions labeled as F 1 in R v (line 20). If |F 1 | < N, the algorithm complements the population with random solutions P r , P v+1 = F 1 ∪ P r (lines [16][17][18]. On each generation the algorithm evaluates whether it reaches either of the two stopping criteria: (1) when the number of generations is reached and (2)

Chromosome encoding
We use an integer encoding to represent a solution. Each number represents a cluster medoid which is the most central element located in a cluster, i.e. whose sum of the distances to another element of the cluster is minimum [44]. Each chromosome ch has the same length as the number of clusters K, and each position ch i can have an integer value from 1 to n, n being the number of elements in the dataset. For instance, in case of a dataset with 100 elements, the chromosome [1 6 19 83 14 3] represents six clusters with 1, 6, 19, 83, 14, and 3 as the centre of each clusters.

Initial population
The initial population is generated as follows: first, the 50% of chromosomes is randomly created. Second, the remaining 50% is created based on a single genetic algorithm (SGA) which uses an integer encoding to represent a solution, k-1 point crossover and controllerrandom mutation as evolutionary operators. Here, we optimise the PBM [45] index which is calculated using the distances between the points and their barycenters and the distances between the barycenters themselves. This initialisation helps the convergence because it gives to the multi-objective clustering algorithm good initial solutions.

Selection
We use a binary tournament selection along with Pareto ranking and crowding distance. In order to identify the winner chromosomes of each tournament, the individual belonging to the top Pareto ranking is chosen and in the case of a tie, the one with the highest crowding distance is selected.

Crossover and mutation
We use a (k-1)-point crossover, and a controller-random mutation [46] as evolutionary operators. In the crossover, k-1 points on both individuals (parents) are randomly selected. All cluster medoid between those points are swapped between the two individuals. In controller-random mutation, a random position is selected from the chromosome and the corresponding element is replaced by a randomly chosen element that is not in the chromosome.

Objective functions
Three cluster validity indexes are selected as objective functions: Xie-Beni [47], Overall Cluster Deviation [48] and Cluster Separation [49]. They have been chosen because they are based on medoids and they have been used as objective functions in other multi-objective evolutionary clustering algorithms, since they are able to measure compactness and separation of the clusters which are the main properties evaluated in clustering task. They allow the multi-objective evolutionary clustering algorithms to be able to optimise simultaneously multiple characteristics of the data, while encouraging the formation of more homogeneous clusters and more higher separation between clusters at the same time. Here, we assumed notations as in [44]: • n: Number of elements in dataset.
• C : Set of all clusters.
• C k : k th cluster. Table 1 shows a summary of the three cluster validity indexes used as objective functions. Xie-Beni index (XB) [47] measures Minimisation the quotient between the total variance and the minimum separation of the elements in the clusters.
Overall cluster deviation (Dev) [ is defined as the overall summed distances between genes and their corresponding cluster medoid.
The distance D in each formula is measured using both expression profiles-based distance (D EB ) and biological-based distance (D BB ) Note that validity indices in Table 1, the distance D is computed using both expression profiles-based distance (D EB ) and biological-based distance (D BB ). Thus, each objective function has two versions: expression-based (EB) and biology-based (BB) indices which consider Pearson correlation (ρ) and Wang functional similarity (WS) respectively. For instance, when XB index is used, we have two objective functions: XB EB and XB BB .

Intensification and diversification strategies
MOC-GaPBK algorithm applies intensification and diversification strategies where promising regions are thoroughly explored. The strategies are based on Path-relinking (PR) [42] and Pareto Local Search (PLS) [43], respectively.

Multi-objective path-relinking
PR was originally proposed as an approach to integrate intensification strategy in the context of tabu search or scatter search. PR generates new solutions by exploring trajectories that connect high-quality solutions. It starts from one of these solutions, called start solutions, and generates a trajectory in the neighbourhood space that leads toward the other solutions, called guiding solutions [50]. Our PR strategy is based on the implementation presented in [51,52] but we adapted it to multi-objective clustering. Figure 2 shows a schematic representation for the construction of trajectories in the multi-objective path-relinking (MOPR).
The algorithm builds trajectories between solutions as follows: Let C 1 and C 2 be two solutions obtained from the Pareto front (PF) of the multi-objective clustering process. The Path-relinking procedure PR(C 1 , C 2 ) starts with the initial solution C 1 , and gradually transforms it into solution C 2 , by swapping out medoids in C 1 and replacing them with medoids in C 2 . To choose the initial solutions C 1 and C 2 , the algorithm selects the two solutions with the lowest Pareto ranking and the highest crowding distance. Then, for Fig. 2 Construction of trajectories in Path Relinking procedure: a schematic representation the next pair of solutions C 1 and C 2 , we set C 1 ← C 2 as the current initial solution and it selects C 2 as a new solution from the Pareto front with the lowest Pareto ranking and the highest crowding distance not considered before. This process continues until each solution in the Pareto front (PF) has been selected.
To gradually transform C 1 into C 2 , only non-repeated medoids are considered as follows: Let M C 1 be the set of medoids in C 1 . Let M C 1 − M C 2 be the set of medoids in C 1 not present in C 2 and symmetrically, let M C 2 − M C 1 be the set of medoids in C 2 not present in C 1 . Let tr 0 (C 1 , C 2 ) = C 1 be the start solution in the trajectory TR(C 1 , C 2 ) from C 1 to C 2 . To obtain the next solution tr 1 (C 1 , C 2 ) in the trajectory TR(C 1 , C 2 ), we remove from C 1 a single medoid z k ∈ M C 1 − M C 2 , and replace the empty position adding a medoid z l ∈ M C 2 − M C 1 . To choose the solution in tr n with the best move in each trajectory, we conducted a non-dominated and crowding distance sorting. After that, we select the top ranked solution which is the new start solution C 1 . The procedure is repeated until we reach the guiding solution C 2 . Finally, each solution with the best move and original start and guiding solutions are stored in an set of intermediate pool (IP) solutions.
In our experiments, we apply PR(C 1 , C 2 ) and PR(C 2 , C 1 ) for each pair C 1 and C 2 in PF. Then, we merge IP and PF solutions and we re-check their non-dominating and crowding distance levels. The non-dominated solutions labelled as F 1 are returned as the output of the procedure and it corresponds to the new Population R.

Pareto local search
To improve the Pareto solutions found by MOPR procedure, we implement a Pareto Local Search (PLS) [40] method based on the Pareto dominance criterion. PLS explores the Pareto neighbourhood of a set of non-dominated solutions until it reaches a local optimal Pareto front [53]. A schematic representation of PLS is shown in Fig. 3.
Here, the PLS procedure receives a population of non-dominated solutions A 0 which are marked as unexplored. Then they are duplicated in a population A (Fig. 3a). An iterative process of three steps is performed. Selection step randomly selects a solution C from population A 0 . After, neighbourhood exploration chooses a medoid z k of C, which is then replaced in all neighbouring solutions N(C) = C 1 , C 2 , . . . , C n by a medoid z k that has not been assigned to the current solutions in N(C). Meanwhile, a dominating concept is used as acceptance criterion step, .i.e. the procedure will evaluate each C ∈ N(C) and if C ⊀ C it will mark as unexplored to C and the population A is updated eliminating those solutions are dominated by C (Fig. 3b). Once all C ∈ N(C) are evaluated, solution C is marked as explored and population A 0 is updated filling only with the unexplored solutions from population A (Fig. 3c). PLS ends when the population A 0 has no solutions, i.e., when all the solutions in population A have been explored, and they correspond to the new Population R.

Selection of a single solution
The MOC-GaPBK algorithm produces a final Pareto front (PF) with a collection of one or more non-dominated solutions. All of these solutions are high-quality gene expression data partitions. To compare our results with those available in the literature, we select a single solution based on Silhouette index (S) [54] using the last non-dominated solutions set in population R. The solution with the maximum value of S index is selected.
The Silhouette index quantifies the goodness of any clustering solution C measuring how similar an element is to its own cluster (compactness) compared to other groups (separation). It is calculated as follows: This index score lies between − 1 and 1, so that values close to 1 indicates better clustering solutions. To more detail of S(C) equation refer to [44].

Results
All the algorithms used in the experiment were implemented using R [55] version 3.2.5 and computational tests performed on a computer with Intel Xeon E5-2650V4 30 MB, 4 CPUs, 2.2Ghz, 96 cores/threads, 128GB RAM, 4TB. The distance between expression profiles were calculated using functions of the "amap" library [56]. The distance of biological functionality using the "GOSemSim" library [57].

Datasets
Datasets used for experiments correspond to four real-life microarray gene expression datasets: arabidopsis thaliana [58], yeast cell cycle [59], yeast cell sporulation [60], and human fibroblasts serum [61] which were taken from here [62]. Here, duplicated elements and missing values of expression levels are removed. Expression levels are normalised so that each row has mean 0 and variance 1 ( Table 2).

Experimental parameters
The algorithm is executed with the following parameters: number of generations = 100, population size = 50, crossover probability = 0.80, mutation probability = 0.01, generations without improvement = 10, number of clusters k = {4, 5, 6}. Evolutionary parameters and k values, were set up considering similar configurations used by other MOC algorithms in [34,35,63].

Performance evaluation
To evaluate the performance of MOC-GaPBK algorithm, first we determine the best combination of objective functions regarding the hypervolume (HV ) indicator. Then, we compare the performance of MOC-GaPBK facing contestant clustering algorithms, under three aspects: (1) levels of co-expression, (2) biological coherence, and (3) compactness and separation. To carry out that, we use Eisen [64] and cluster profile [65] plots; annotation enrichment analysis [66]; and Silhouette index, respectively.

Hypervolume (HV )
It is a unary metric that measures the volume (area in our case) in the objective function space covered by members of a Pareto set PS [67]. The hypervolume for every solution i ∈ PS computes an area a i regarding a reference point W. Thus, the union of all areas a i define the hypervolume value as follows: Eisen plot It is a tool used in microarray experiment for visual representation of gene expression profiles. It is achieved using heat map and colouring values that usually are red, black and green [65]. Here, Eisen plot is used to show clustering results so that, similar colours are grouped together, showing that the expression profiles of the genes of a cluster are similar to each other.
Cluster profile plot This tool shows gene expression of microarray using x, y matrix representation of time points and level expression [65], respectively. Here, the normalised level expression values (in green) of genes in each cluster are used. Additionally, the average expression along with the standard deviation (in black) are included.
Annotation enrichment analysis It determines the biological relevance of a cluster regarding shared functions between those genes within it [68]. It requires functional annotations to obtain such information, standing out GO. It has three main terms: "biological process", "molecular function", and "cellular component"; containing biological information from a large list of genes. It uses a cumulative hyper geometric distribution to determine the degree of functional enrichment (p-value) of overlap between annotations made to a given gene set. Thus, as shown in [34] for a particular GO term, the probability p of getting k or more genes within a cluster of size n, can be calculated as follows: where f represents the total number of genes in a GO category and g the total number of genes within the genome. Thus, this test measures the degree of overlap between the genes in each group and the genes in GO category.

Effect of objective functions
To determine the effect of the objective functions during data clustering, we show the best Pareto front regarding hypervolume values obtained over 20 consecutive runs for each one in all datasets (Table 3).
To calculate the objective space covered by such objective functions, we use (1, 1) as normalised reference point W. Note that higher hypervolume values implies better results from a multi-objective point of view. In Fig. 4, we show the best Pareto fronts for each objective functions. Here, further away non-dominated solutions are from the reference point, a larger size of the solutions space will be covered and then better results will be achieved.

Effect of local search strategies
Similarly, to determine the effect of local search methods to improve the multi-objective gene clustering process, in Fig. 5, we compare the best Pareto front obtained by MOC-GaPBK algorithm and three variations: using only NSGA-II, NSGA-II + Path-Relinking (PR) and NSGA-II + Pareto Local Search (PLS). To compute it, we consider the best combination (Table 3) of objective functions, i.e., XB EB and XB BB over 20 consecutive runs for all k values and datasets.

Eisen and cluster profile plots
The best hypervolume value is reached when the objective functions XB EB and XB BB are optimised. In Figs. 6, 7, 8 and 9, we show the Eisen and cluster profile plots of the solution with the best silhouette value found by MOC-GaPBK. In Eisen plot, clusters are separated using a white line and genes are ordered according to the group to which they belong. In Eisen plots, we can see that each cluster has similar color patterns, denoting that expression profiles throughout the samples of the genes within each cluster are similar to each other. In the same way, the cluster profile plots show how the curve that represents the expression profiles of genes along the samples are similar within cluster. However, expression profiles inter clusters differ from each other. Hence, both plots show that our

Annotation enrichment analysis
To demonstrate the biological coherence of clusters yield by MOC-GaPBK algorithm, we use the FatiGO [69] web tool. It applies a functional enrichment test that evaluates the number of genes in each cluster annotated to a particular GO term. We consider the gene-annotation tables based on the biological process GO term at 1% of significant level. Table 4 contains the three most significant GO terms along with their p-values measured by the cumulative hypergeometric distribution.

Discussion
We evaluate the performance of MOC-GaPBK algorithm using three combination of objective functions regarding hypervolume indicator. Table 3 provides information of the effect of them in clustering process which reveals the effectiveness of using XB EB -XB BB since it achieves the best values of hypervolume in all datasets. Such information can also be observed in Fig. 4, where the Pareto front of both XB criteria (cross symbol) dominates a b We also compare the performance of multi-objective optimization process regarding the incorporation of local search strategies. Figure 5 shows the best Pareto frontiers yield by MOC-GaPBK and its variations on each of the four datasets. Generaly speaking, the use of local search improves the solutions found by the NSGA-II, but it is not conclusive since for all datasets there are solutions found by NSGA-II that dominates some of the solutions produced when a single local search strategy is used. However, the Pareto frontier produced by MOC-GaPBK mostly dominates the Pareto frontiers  produced by the other algorithms. In particular, for the case of the Yeast Cell Cycle data set (Fig. 5b), our proposal dominates all the solutions of the other algorithm, while in the other cases (Fig. 5a, c and d) there are only a few solutions that are non dominated. Also, MOC-GaPBK always dominates all the solutions found by NSGA-II. In all of the figures the gray area shows the space that is being covered by MOC-GaPBK and not by the others. These results show the positive effect in the NSGA-II of including local search strategies, which has been reported on other works, but it also shows that our algorithm overcome simple combinations of NSGA-II and local search strategies.
To evaluate the compactness and separation of clustering solutions, in Table 5, we show mean values of silhouette index over 20 runs of different algorithms for the four datasets. Here, values in bold represent maximum silhouette index values, revealing that our method achieves better results than existing techniques in all datasets.  To detect whether MOC-GaPBK and the competitive clustering techniques operate similarly or not from statistical point of view, we carry out the Friedman test [73]. In this sense, in Table 6 we perform a ranking to each clustering method regarding the mean silhouette index in each dataset.
The test verifies whether the measured average ranks are significantly different from the mean silhouette rank. The method obtains a p-value of 0.0033 indicating that the difference in the mean silhouette rank obtained by MOC-GaPBK algorithm is significant. In fact, our proposed method has an average rank of 1 since it always obtains the best silhouette values in the experimental datasets, while its closest competitor is Semi-FeaClustMOO algorithm with an average rank of 2. Clearly, it indicates that our approach obtains groups with better values of compactness and separation than competitive clustering techniques.
To visually demonstrate that clusters yield by MOC-GaPBK have high co-expression patterns, we use Eisen and cluster profile plot. To do this, first we determine the best solution (regarding silhouette index), comparing all solutions yield by our method. So, we observe that MOC-GaPBK has determined that four is the best number of clusters k for all datasets. Such number of clusters k matches with some values of competitive algorithms [34,74]. In Figs. 6, 7, 8 and 9, we plot clustering solutions with best silhouette index. For instance, for Yeast Sporulation dataset (Fig. 8a), MOC-GaPBK identifies as appropriate partitioning k = 4. In such figure, it is evident that expression profiles of the genes in each cluster have similar expression profiles generating similar colour patterns throughout the samples. We can also see (Fig. 8b) that expression patterns of the four clusters of genes differ from each other, while the patterns within a cluster are very similar. So, for example, while cluster 1 has high expression level in the first samples and low in the last ones, the cluster 3 behaves in the opposite way. Similarly, cluster 2 presents low expression levels in first samples but high in remaining ones meanwhile the cluster 4 behaves in opposite way. The other three datasets have similar results. Such situations reveal that genes in the groups found by our algorithm are highly co-expressed. To establish the biological relevance and coherence of a cluster, we performed an annotation enrichment analysis. In Table 4, we reported to each cluster the three most significant GO terms shared by the genes with their p-value. It reveals that all the clusters of the solutions found by MOC-GaPBK have obtained p-values less than 0.01, i.e., each cluster has associated biological processes and thus, they are biologically significant and functionally enriched. In this aspect, MOC-GaPBK outperforms competitive algorithms since they fail in finding biologically related clusters in some cases. For instance, in Yeast Sporulation dataset, MOGA, FCM, SOM and Average linkage present at least one cluster without biological significance [63].

Conclusions
In this paper we have presented a multi-objective gene clustering algorithm called MOC-GaPBK. It includes external biological knowledge during the objective functions optimisation and it integrates intensification and diversification strategies based on both multi-objective Path-Relinking and Pareto Local Search.
Results show that MOC-GaPBK yields higher quality solutions than other clustering techniques considered here for comparison purposes. It is mainly to the strength of integrating a-priori biological knowledge with a multi-objective clustering approach and the use of intensification and diversification strategies. The first one allows having partitions with higher co-expression levels and biological coherence since cluster quality indexes are used to optimise simultaneously gene relationships at expression level and biological functionality. The other aims to improve the clustering solutions to yield higher quality clustering solutions regarding to compactness and separation and to avoid fall into local optima.
The effectiveness of MOC-GaPBK was demonstrated quantitatively and visually using statistical comparison test and cluster visualisation tools respectively. Results of silhouette tests, visualisations and annotation enrichment analysis show that the proposed method is able to discover compact, well separated, co-expressed and biologically significant clusters.
To perform the multi-objective clustering process we have used a chromosome representation based on clusters medoid. As a future work we would like to explore a clustering technique based on graph theory to tackle in a better way with datasets where non-convex groups are present. Furthermore, because we use a multi-objective approach, our algorithm provides a set of solutions, all identically relevant from clustering style point of view. However, for biologists can be more appropriate to have a single solution for clustering of genes or otherwise have a subset of genes that appear grouped together most times. Due to that, in future we would like to develop a voting or ranking technique to identify the set of genes that appear most often in the same clusters, and so facilitate the inference of knowledge by biologists.