Full text
An unsupervised learning algorithm for membrane computing Hong Peng a , Jun Wang b , Mario J. Pérez-Jiménez c , Agustín Riscos-Núñez c a Center for Radio Administration and Technology Development, Xihua University, Chengdu, Sichuan 610039, China b School of Electrical and Information Engineering, Xihua University, Chengdu, Sichuan 610039, China c Research Group of Natural Computing, Department of Computer Science and Artificial Intelligence, University of Seville, Sevilla 41012, Spain Keywords: Membrane computing P system Evolution–communication P system Unsupervised learning Data clustering Fuzzy clustering abstract This paper focuses on the unsupervised learning problem within membrane computing, and proposes an innovative solution inspired by membrane computing techniques, the fuzzy membrane clustering algorithm. An evolution–communication P system with nested membrane structure is the core component of the algorithm. The feasible cluster centers are represented by means of objects, and three types of membranes are considered: evolution, local store, and global store. Based on the designed membrane structure and the inherent communication mechanism, a modified differential evolution mechanism is developed to evolve the objects in the system. Under the control of the evolution–communication mechanism of the P system, the proposed fuzzy clustering algorithm achieves good fuzzy partitioning for a data set. The proposed fuzzy clustering algorithm is compared to three recently-developed and two classical clustering algorithms for five artificial and five real-life data sets. 1. Introduction The learning problem aims at finding hidden patterns in data or estimating the unknown model parameters from the given data. From the viewpoint of machine learning, learning methods can be categorized into three main variants: supervised learning, unsupervised learning and reinforcement learning. Unsupervised learning, also known as clustering, is the process of finding natural groupings from unlabeled data [8], that is, finding k clusters from a set of n data points according to some similarity measure such that patterns within the same cluster are more similar than those from different clusters. Over the past years, a large number of unsupervised learning methods have been introduced [13,47]. These methods can be fall into three categories: hierarchical, partitioned, and overlapping methods. Hierarchical methods can be either agglomerative, which begin with each element as a separate cluster and merge them into larger clusters, or divisive, which begin with the whole set and successively divide it into smaller clusters. Partitioned methods attempt to directly decompose the data set into several disjoint clusters without the hierarchical structure, while overlapping methods search soft or fuzzy partitioning by relaxing the mutually disjoint constraint. K-means is one of most popular unsupervised learning methods due to its simplicity and effectiveness, and has been used in a wide variety of areas such as pattern recognition, data mining, and bioinformatics. However, k-means has several drawbacks: it is problematic to avoid local minima, it is sensitive to initial cluster centers, and it takes significant time to search the global optimal solution when the number of data points is large. To overcome these, evolutionary clustering algorithms have been considered in recent years based on genetic algorithms (GA), particle swarm optimization (PSO), ant colony optimization (ACO), differential evolution (DE), artificial bee colony (ABC), and black hole (BH) algorithm.
GA-based clustering methods were first reported in the literature [5,17], and have two approaches to express the solution of a clustering problem: point-based schemes [18,23] and center-based schemes [2]. Point-based schemes can suffer from large search space and high computing cost when data points proliferate, so center-based schemes are used by most evolutionary clustering methods developed in recent years. Kao et al. [14] proposed a clustering method that uses PSO to optimize a set of cluster centers. Shelokar et al. [40] introduced an ACO-based method to find appropriate cluster centers. Das et al. [6] used DE in image pixel clustering, while Karaboga et al. [15] presented an ABC-based clustering method. Hatamlou [11] proposed a new optimization approach based on black hole for data clustering. In addition, several evolutionary clustering algorithms with hybrid mechanisms have been developed in recent years [16,24,25]. Fuzzy c-means (FCM) is a well-known overlapping clustering technique that uses the principles of fuzzy sets to evolve a partitioning matrix UðXÞ[3]. However, FCM still has the limitation of finding suboptimal solutions. To overcome this, Maulik et al. [19] proposed a GA-based fuzzy clustering technique, Fuzzy-VGA, which automatically evolves the appropriate fuzzy partitioning for a data set by optimizing the well-known XB-index. Saha et al. [36] developed a fuzzy variable string length genetic point symmetry (Fuzzy-VGAPS) based clustering technique, where membership values of points to different clusters are computed based on a point symmetry-based distance rather than the Euclidean distance. Maulik et al. [20] presented a modified DE based fuzzy clustering (MoDEFC) algorithm and applied it to deal with pixel classification of remote sensing imagery. Sanchez et al. [39] proposed a fuzzy granular gravitational clustering algorithm for multivariate data. Saha et al. [37] developed a multiobjective modified differential evolution based fuzzy clustering algorithm. Membrane computing was initiated by Gh. Paun [28],as a new branch of natural computing, aiming to abstract computing models from the structure and functioning of living cells, as well as from the cooperation of cells in tissues, organs, and cell populations [10,32]. Following this inspiration, classes of distributed parallel computing models have been defined, usually known as P systems or membrane systems. P systems have several interesting features: non-determinism, programmability, extensibility, readability, they are easy to communicate, etc., and many variants have been proposed [9,12,27,33,45,48,51]. Most P systems variants have proved to be powerful (in the sense of Turing completeness) and effective (since they have successfully solved a large number of NP-hard problems in a linear or polynomial time [31]). In recent years, the potentiality and characteristics of membrane computing have attracted much attention in relation to real-life applications, such as membrane algorithms for solving optimization problems [26,34,49,50,52], and fuzzy spiking neural P systems for dealing with knowledge representation and fault diagnosis [35,42,44]. Learning capability is an important and useful characteristic of natural computing methods, such as neural computing and evolutionary computing [21,22,38]. Unfortunately, existing P systems variants generally lack learning capability, due to their orientation towards a formal language framework. Therefore, Gh. Paun has listed providing learning capability to P systems as an interesting open problem [29,30]. The main motivation behind the work presented in this paper is to focus on the problem of unsupervised learning in membrane computing, and to propose a novel clustering method in this framework to solve fuzzy clustering problems: the fuzzy membrane clustering algorithm. An evolution–communication P system with a nested membrane structure is considered as the computing framework, and both its evolution–communication mechanism and the differential evolution mechanism of DE are integrated into a new P system based learning mechanism. The scientific contribution of this paper has two aspects: (i) this is the first attempt to use P systems for solving fuzzy clustering problems and (ii) a novel clustering method for data mining and/or machine learning is developed. Section 2describes the fuzzy clustering problem and several clustering validity indexes. In Section 3, we briefly review evolution–communication P systems and classical DE algorithms. Section 4describes the proposed evolution–communication P system, and details the proposed fuzzy membrane clustering algorithm. Experiments and results are provided in Section 5. Finally, Section 6draws the conclusions. 2. Problem statement 2.1. Fuzzy clustering problem Data clustering can be seen as the task of distributing (partitioning) ndata points into several groups according to some similarity measure. Let us consider X¼fX 1 ;X 2 ;...;X n g#R nd , a set of nunlabeled data points in a d-dimensional Euclidean space, where X i ¼ðx i1 ;x i2 ;...;x id Þ, that is, x ij is the j-th real-value feature of the i-th data point. The goal of a fuzzy clustering algorithm is to find a fuzzy partition of the data set, X, into kclusters, C 1 ;C 2 ;... ;C K , in such a way that the similarity of data points in the same cluster is very high, and at the same time the similarity of data points in different clusters is very low. In the context of fuzzy clustering, a data point may belong to each of the clusters with a certain fuzzy membership degree, which can be captured by a fuzzy partitioning matrix, U Kn , where each u ij is the fuzzy membership degree of X j to C i . The elements of such matrix should satisfy the following properties: 0<P n j¼1 u ij <nfor i¼1;2;... ;K P K i¼1 u ij ¼1 for j¼1;2;...;n P K i¼1 P n j¼1 u ij ¼n 8 > > < > > : ð1Þ
Thus, for a given data set, solving a fuzzy clustering problem is equivalent to finding the optimum fuzzy partition. Since center-based representation is used to express a clustering solution, fuzzy clustering can be considered as finding the optimal cluster centers. Therefore, the fuzzy clustering problem can be posed as the following optimization problem: arg min z 1 ;z 2 ;...;z K ½Jðz 1 ;z 2 ;...;z K Þ¼fðz 1 ;z 2 ;...;z K Þ;ð2Þ where z 1 ;z 2 ;...;z K are Kparameters to be optimized, which denote a candidate set of cluster centers; and fðz 1 ;z 2 ;...;z K Þis its objective function. 2.2. Clustering validity index To evaluate the performance of clustering algorithm, it is necessary to use a well-defined statistical–mathematical function, the cluster validity index, to measure the quality of the obtained solution. We use four well-known clustering validity indices, described below, in our experiments. 2.2.1. Xie–Beni index The Xie–Beni (XB) index is defined as a function of the ratio of total variation, r , to minimum separation, sep, of the clusters [46], r ðU;Z;XÞ¼X K i¼1 X n j¼1 u 2 i;j kX j z i k 2 ; and sepðZÞ¼min i–j kz i z j k 2 ; where kkis the Euclidean norm, and u i;j ¼ 1 kX j z i k P K i¼11 kX j z i k : Thus, the XB index is XBðU;Z;XÞ¼ r ðU;Z;XÞ nsepðZÞ:ð3Þ Note that when a partitioning is compact and good, r should be low while sep should be high, thereby yielding lower values of XB index. In this work, the XB index is used as an objective function of the fuzzy clustering problem, and it is therefore minimized to achieve a good partitioning. 2.2.2. PBMF index The PBMF index is defined as PBMFðKÞ¼ 1 KE 1 E K D K 2 ;ð4Þ where Kis the number of clusters, E K ¼X K i¼1 X n j¼1 u i;j kX j z i k; and D K ¼max i–j kz i z j k: In Eq. (4),E 1 usually appears as a constant for a given data set. Generally, larger PBMF implies a better clustering solution. 2.2.3. FCM measure (J m ) The FCM measure ðJ m Þ, corresponds to the total variation of data points with respect to cluster centers, taking into consideration the membership given by the fuzzy partitioning matrix, and is defined as the total mean square error (MSE), J m ðC 1 ;C2;...;C K Þ¼X K i¼1 X n j¼1 u 2 i;j kX j z i k 2 ð5Þ
Generally, smaller J m indicates a better clustering solution. 2.2.4. F-Measure Let m ij be the number of points that belong to both cluster iand cluster j;m i the total number of points in cluster i. The F-Measure (Fði;jÞ) of cluster iwith respect to cluster jis Fði;jÞ¼ð2precisionði;jÞrecallði;jÞÞ ðprecisionði;jÞþrecallði;jÞÞ ;ð6Þ where precisionði;jÞ¼p ij ¼m ij =m i expresses the precision of cluster iwith respect to cluster j, and recallði;jÞ¼m ij =m j denotes the recall of cluster iwith respect to cluster j. Thus, the overall F-Measure of the whole partitioning is F¼X j m j mmax i Fði;jÞ ð7Þ For F-Measure, the optimum score is 1, with higher scores implying a better clustering solution. 3. Methods 3.1. Evolution–communication P systems Researchers have proposed a variety of P systems, drawing concepts from biology, mathematics, computer science, etc. Cavaliere [4] proposed an evolution–communication P system, which contains two types of rules: evolution rules (classical evolution rules without communication targets) and symport/antiport rules (for communication). The motivation of the variant was to split the P system in two phases: the evolution of the objects (application of evolution rules) and the communication between the regions of the system (application of the symport/antiport rules). More details of this variant can be found in [1,4]. An evolution–communication P system of degree qP1is defined as P¼ðO; l ;w 1 ;w 2 ;...;w q ;R 1 ;R 2 ;...;R q ;R 0 1 ;R 0 2 ;...;R 0 q ;i o Þ; where (1) Ois the alphabet of objects. (2) l is a membrane structure with qnested membranes (and hence qregions), labeled by 1;2;... ;q, respectively. (3) w 1 ;w 2 ;...;w q are initial multisets of objects over Oplaced in the regions 1;2;...;qof l . (4) R 1 ;R 2 ;...;R q are finite sets of evolution rules of the qregions respectively. An evolution rule is of the form u! v , where u; v 2O . (5) R 0 1 ;R 0 2 ;...;R 0 q are finite sets of communication rules of the qmembranes. The communication rules are of two forms: u!½u i , and ½u i !u, where u2O . (6) i o 2f0;1;2...;qgis the output region. If i o ¼0, then the environment is the output region, otherwise the region of membrane i o is the output region. Symport/antiport rules are commonly used in the tissue-like framework, and this evolution–communication P system is the first case where symport rules are used in a cell-like variant (i.e., over a nested membrane structure). Each region has several evolution rules, of the form u! v ;u; v 2O , and the application of such rule means that uis changed to v (multiset uis ‘‘consumed’’ while multiset v is ‘‘generated’’ instead). Each membrane has also some communication rules, which are used to exchange the objects between the inner region and the outer region of the membrane. Two types of symport rules are considered: u 1 u 2 u s !½u 1 u 2 u s i , and ½u 1 u 2 u s i !u 1 u 2 u s , where u 1 u 2 ;...;u s 2O . Execution of first rule means that objects u 1 ;u 2 ;... ;u s are transmitted into the inner region from the outer region, while second rule indicates that objects u 1 ;u 2 ;... ;u s are exchanged from the inner region to the outer region. As usual in membrane computing, each membrane operates as a parallel computing unit, with a universal clock considered for synchronization. A computation is a sequence of steps which start with the membranes 1;...;qcontaining the multisets w 1 ;...;w q . In each step, one or more rules are applied to the current multisets of objects, in a maximally parallel manner. A computation is successful if and only if it halts. When it halts, it produces a result in the output region. 3.2. Classical DE algorithm DE is arguably one of the most powerful population-based stochastic optimization algorithms [41].It searches a global optimal solution using three evolution operations (mutation, crossover and selection) [7]. Let Z i be a chromosome/genome in the considered population. A donor vector Y i is created to change original vector Z. There are five frequently used schemes that can be used to create this donor vector:
(1) DE/rand/1: Y i ¼Z r 1 þFðZ r 2 Z r 3 Þ, (2) DE/best/1: Y i ¼Z best þFðZ r 1 Z r 2 Þ, (3) DE/current-to-best/1’’: Y i ¼Z i þFðZ best Z i ÞþFðZ r 1 Z r 2 Þ, (4) DE/best/2: Y i ¼Z best þFðZ r 1 Z r 2 ÞþFðZ r 3 Z r 4 Þ, (5) DE/rand/2: Y i ¼Z r 1 þFðZ r 2 Z r 3 ÞþFðZ r 4 Z r 5 Þ. The indices, r 1 ;r 2 ;r 3 ;r 4 , and r 5 , are mutually exclusive integers randomly chosen, and all of them different from the base index, i. The scaling factor, F, is a positive control parameter for scaling the difference vectors. Z best is the best individual vector with the best fitness in the population. To increase the potential diversity of the population, a crossover operation is applied. The DE-family uses two crossover schemes, exponential and binormal. We briefly describe the binormal crossover, which we employ in the improved DE mechanism. Binormal crossover is performed on each of the Dvariables whenever a randomly generated number between 0 and 1 is less than or equal to the C r value, r i;j ¼y i;j ;if rand i;j ½0;16C r or j¼j rand ; z i;j ;otherwise; ð8Þ where rand i;j ½0;1is a uniformly distributed random number, which is called anew for each j-th component of the i-th parameter vector. j rand 2f1;...;Dgis a randomly chosen index, which ensures that R i gets at least one component from Y i . The selection operation is used to determine which of the target vector or trial vector will survive in the next generation. If the trial vector yields a better value of the objective function, it will replace its target vector in the next generation; otherwise the parent is retained in the population: Z 0 i ¼R i ;if fðR i Þ6fðZ i Þ; Z i ;otherwise; ;ð9Þ where fðÞ is the function to be minimized. 4. Proposed fuzzy membrane clustering algorithm 4.1. The evolution–communication P system The proposed clustering algorithm is a fuzzy clustering algorithm inspired by membrane computing. An evolution– communication P system with ð2qþ1Þmembranes is considered as its computing core, which has a nested structure of three layers: an outermost (skin) membrane contains qmembranes and each of them has an elementary (innermost) membrane, shown in Fig. 1. Membranes 1;... ;qare evolution membranes, since they are the only ones having evolution rules. Elementary membranes 1 0 ;2 0 ;... ;q 0 are local store membranes, as each will store the best object found in the corresponding surrounding evolution membrane. The skin or global store membrane is considered to store the best object found in the entire system (i.e., all evolution membranes). Evolution membranes have evolution rules, whereas skin and local store membranes contain no evolution rules. Fig. 1 shows communication channels of the system that enable evolution membranes to exchange and share their objects with local store membranes and the skin membrane, respectively. 4.1.1. Objects The evolution–communication P system has been designed to optimize a set of cluster centers for a fuzzy clustering problem, so each of its objects will express a feasible solution (a set of cluster centers). Let X¼fX 1 ;X 2 ;...;X n gR nd be a data set divided into Kclusters, C 1 ;C 2 ;...;C K . We denote the centers of these Kclusters as z 1 ;z 2 ;... ;z K , where z i 2R d , for i¼1;... ;K.Fig. 2 shows the corresponding relationship between a solution (i.e., a set of cluster centers) and an object in the membranes. Thus, each object is designed as a ðKdÞ-dimensional vector: O¼ðz 11 ;z 12 ;...;z 1d ;...;z i1 ;z i2 ;...;z id ;...;z K1 ;z K2 ;...;z Kd Þ; where ðz i1 ;z i2 ;...;z id Þcorresponds to the i-th cluster center z i ;i¼1;...;K. Fig. 1. The membrane structure of the evolution–communication P system and its communication channels.
Each evolution membrane contains a number of objects, each of which expresses a set of (feasible) cluster centers. For the sake of simplicity, let us assume that each evolution membrane has mobjects. Each local store membrane, i 0 , has only one object, the local best object, O i lbest , while the global store membrane also contains a single object, the global best object O gbest . Before the computation begins, the P system generates minitial objects for each evolution membrane. For each of such initial objects, (Kd) random real numbers are generated, which are required to satisfy the following constraints: A 1 6z i1 6B 1 ;A 2 6z i2 6B 2 ;...;A j 6z ij 6B j ;...;A d 6z id 6B d ; where A j and B j are lower and upper bounds on the j-th component of data points in X, respectively. 4.1.2. Evolution rules The evolution of objects in the system is achieved only within the qevolution membranes. In this work, the differential evolution mechanism considered relies on evolution rules, which contain three evolution operators: mutation, crossover and selection. A modified version has been developed, based on the membrane structure and communication mechanism of evolution–communication P systems. The modification is inspired from the observation that each evolution membrane has two best objects which will take part in the evolution of objects, being the local best object, O i lbest , communicated from the corresponding local store membrane, and the global best object, O gbest , communicated from the skin membrane. This modification is realized only on the mutation operator, while original crossover and selection operators are retained. Therefore, we only describe the modified mutation operator, which can be regarded as an extended version of the DE/best/1 scheme. Let O i j be j-th object in evolution membrane i. Then the mutation object can be generated by Y i j ¼O gbest þ a ðO i lbest O i j Þþ a ðO i r 1 O i r 2 Þ;if randð0;1Þ< a O i j þFðO i r 3 O i r 4 Þ;otherwise (;ð10Þ where O i lbest is the local best object; O gbest is the global best object; and O i r 1 ;O i r 2 ;O i r 3 , and O i r 4 are four different objects chosen randomly from the evolution membrane, i.The scaling factors are a ¼1 1þexp 1 t max hi ; F¼0:5ð1þrandð0;1ÞÞ; where t max is the maximum execution step number (maximum number of iterations). 4.1.3. Communication rules As discussed above, communication of objects is realized by communication rules, which enable communication channels connecting evolution membranes and local store membranes. Local store membranes have two types of communication rules, which exchange objects to and from evolution membranes: (i) Rule O i best !½O i best i 0 , where O i best is the best object in evolution membrane i, and i¼1;... ;q. The rule communicates the best object, O i best , in evolution membrane iinto local store membrane i 0 and updates its local best object, O i lbest . The updating strategy is O i lbest ¼O i best ;if fðO i best Þ<fðO i lbest Þ O i lbest ;otherwise (;ð11Þ where fðOÞdenotes the fitness value of object O. Fig. 2. The representation of objects in membranes.
(ii) Rule ½O i lbest i 0 !O i lbest , where O i lbest is the local best object in local store membrane i 0 , and i¼1;...;q. The rule indicates that local best object in local store membrane i 0 is transmitted into evolution membrane i. The transmitted object will get engaged in the evolution of objects in the next computing step. Evolution membranes also have two types of communication rules, which exchange objects to and from the skin membrane. (i) Rule ½O i best i !O i best , where O i best is the best object in evolution membrane i, for i¼1;... ;q. The rule transmits its best object, O i best , into the skin membrane and updates the global best object, O gbest . The updating strategy is O gbest ¼O i best ;if fðO i best Þ<fðO gbest Þ O gbest ;otherwise (;ð12Þ (ii) Rule O gbest !½O gbest i , where O gbest is the global best object in the skin membrane, and i¼1;...;q. The rule indicates that the global best object, O gbest , in the skin membrane is communicated into evolution membrane i. The communicated global best object will get engaged in the evolution of objects in the next computing step. Note that the local best object and global best object participate in the evolution of objects during the computation, and these objects come from different sources. This brings the benefit of enhancing the diversity of objects in the system and avoiding the object’s degradation. 4.1.4. Halting and output For simplicity, the designed evolution–communication P system uses the halt condition of maximum number of execution steps. Upon halting, the global best object stored in the skin membrane is regarded as the final computing result, i.e., the best cluster centers found. 4.2. Fuzzy membrane clustering algorithm The proposed evolution–communication P system is a core component of the proposed membrane clustering algorithm. The evolution–communication P system can find the optimal cluster centers for a data set based on its evolution–communication mechanism. Given an instance of a fuzzy clustering problem consisting of ndata points to be divided into Kclusters, the evolution– communication P system uses objects to express sets of feasible cluster centers, and derives the optimal cluster centers by the evolution and communication of objects. The membrane clustering algorithm first generates minitial objects for each evolution membrane, and then executes the evolution–communication P system. Under the control of the modified differential evolution mechanism and communication mechanism, the evolution–communication P system evolves the objects in the system, updating local best objects O i lbest ði¼1;...;qÞand the global best object O gbest synchronously until the system halts. When the system halts, the global best object in the skin membrane is the best approximation to optimal cluster centers. We re-compute the partition matrix UðXÞaccording to the cluster centers found, and assign the ndata points to the K clusters based on the principle of maximum membership. The proposed membrane clustering algorithm is summarized in Table 1, based on the evolution–communication P system with a nested structure of three layers. 5. Experimental results The proposed fuzzy membrane clustering algorithm (Fuzzy-MC) was compared with the improved differential evolutionbased (Improved-DE), original differential evolution-based (Original-DE), genetic algorithm-based fuzzy clustering (GA) methods, classical fuzzy c-means (FCM) algorithm, and hierarchical average linkage (AL) clustering. Experimental results were calculated for five artificial and five real-life data sets, described below. 5.1. Artificial data sets Data 1: A highly overlapping two-dimensional data set with five clusters, and 250 points (Fig. 3(a)). Each cluster is circular. Data 2: A highly overlapping two-dimensional data set with nine clusters and 900 points (Fig. 3(b)). Each cluster is circular, and centers are on an approximate regular grid. Data 3: A two-dimensional data set with four clusters and 600 points (Fig. 3(c)). Each cluster is circular, with centers approximately collinear and approximately evenly distributed.
Table 1 Fuzzy membrane clustering algorithm: a fuzzy clustering algorithm based on evolution–communication P system. Input: Data set, X; the number of clusters, K; the number of evolution membranes, q; the number of objects in each evolution membrane, m; maximum execution step number, t max ; and crossover probability, C r . Output: The optimal cluster centers, O gbest , in the skin membrane. Begin Step1: /⁄Initialization⁄/ for i¼1toq for j¼1tom Generate j-th initial object for evolution membrane i;O i j ; Calculate partition matrix, U i j ; Calculate the XB index of object, O i j ; end for Update local best object, O i lbest ,ini-th local store membrane by communication rules; end for Update global best object, O gbest , in global store membrane by communication rules; Set computing step t¼0; Step2: /⁄Object evolution in evolution membranes⁄/ for each evolution membrane, i;ði¼1;...;qÞin parallel do for j¼1tom Evolve objects, O i j , using the improved differential evolution rules; Calculate partition matrix, U i j ; Calculate the XB index of object O i j ; end for end for Step3: /⁄Object communication⁄/ for each evolution membrane, i;ði¼1;...;qÞ, in parallel do Transmit the best object in membrane ito update its local best object, O i lbest , using communication rules; Transmit the best object in membrane ito update the global best object, O gbest , using communication rules; end for step4: /⁄Halting condition judgment⁄/ if t6t max is satisfied t¼tþ1; goto Step2; end if Export the global best object, O gbest ; Calculate partition matrix, U i j , according to the global best object, O gbest ; Assign all data points into K clusters based on U i j . End Fig. 3. Five artificial data sets used in experiments: (a) Data 1; (b) Data 2; (c) Data 3; (d) Data 4; and (e) Data 5.
Data 4: A two-dimensional data set with four clusters and 1000 points (Fig. 3(d)). Clusters are circular with centers approximately on a square grid. Data 5: A two-dimensional data set with three clusters and 600 points (Fig. 3(e)). Two clusters are circular while the third cluster is elliptical. 5.2. Real-life data sets Five real-life data sets were obtained from the UCI Machine Learning Repository [43]. Iris: 150 data points distributed over three clusters (Setosa, Versicolor, and Virginica), with four dimensions (sepal length, sepal width, petal length, and petal width). Wine: 178 data points with 13 features from a chemical analysis of wines grown in the same region in Italy, from three different cultivators. It is divided into three clusters. Glass: 214 data points divided into six clusters. Data dimensions are: id number[A5], Refractive index, Sodium, Magnesium, Aluminum, Silicon, Potassium, Calcium, Barium and Iron. BreastCancer: 683 points with nine features. There are two categories in the data: malignant and benign, which are known to be linearly separable. Newthyroid: 215 data points with five attributes. The original database from where it has been collected is titled as thyroid gland data (normal, hypo and hyper functioning). There are three categories in the data: euthyroidism, hypothyroidism and hyperthyroidism. 5.3. Input parameters The parameters of the proposed evolution–communication P system were set to: q=16, m= 20, t max ¼100 and C r ¼0:8. The Improved-DE algorithm first algorithm uses the improved differential evolution mechanism, while the Original-DE algorithm uses the original differential evolution mechanism. Parameters for both DE-based algorithms were: population size PS = 50, the number of generations T= 100, C r ¼0:8, and a and Fused the same values as for the Fuzzy-CM method. The GA algorithm was executed for 100 generations with population size 20, crossover probability 0.8, and mutation probability 0.01. The FCM algorithm was executed until it converged to a final solution. Table 2 The experimental results on five artificial data sets. Data sets Methods XB PBMF J m FM Data 1 Fuzzy-MC 0.112 (±0.005) 2.85 (±1.004) 916.49 (±6.623) 0.921 (±0.023) Improved-DE 0.235 (±0.009) 2.83 (±1.014) 919.32 (±6.685) 0.827 (±0.031) Original-DE 0.793 (±0.023) 2.79 (±1.053) 928.11 (±6.735) 0.784 (±0.033) GA 1.653 (±0.187) 2.27 (±1.316) 989.52 (±8.923) 0.753 (±0.041) FCM 1.982 (±0.254) 2.23 (±1.523) 996.42 (±10.527) 0.669 (±0.043) AL 2.899 1.85 1085.03 0.631 Data 2 Fuzzy-MC 0.143 (±0.018) 0.28 (±0.115) 822.04 (±4.762) 0.725 (±0.019) Improved-DE 0.257 (±0.018) 0.28 (±0.118) 822.08 (±4.769) 0.649 (±0.032) Original-DE 0.699 (±0.022) 0.26 (±0.122) 822.10 (±4.833) 0.623 (±0.031) GA 1.832 (±0.201) 0.24 (±0.238) 823.44 (±5.215) 0.598 (±0.040) FCM 2.113 (±0.239) 0.22 (±0.253) 824.21 (±5.739) 0.501 (±0.041) AL 2.914 0.17 826.21 0.475 Data 3 Fuzzy-MC 0.100 (±0.000) 11.29 (±4.800) 2023.71 (±28.720) 0.962 (±0.021) Improved-DE 0.183 (±0.006) 11.43 (±4.867) 2035.23 (±28.818) 0.946 (±0.033) Original-DE 0.762 (±0.023) 11.87 (±4.924) 2041.52 (±29.226) 0.934 (±0.032) GA 2.135 (±0.205) 12.21 (±5.844) 2055.18 (±31.004) 0.917 (±0.039) FCM 2.512 (±0.268) 12.75 (±6.733) 2061.83 (±30.982) 0.885 (±0.044) AL 3.443 15.32 2132.36 0.862 Data 4 Fuzzy-MC 0.100 (±0.000) 80.88 (±8.048) 12842.28 (±25.686) 0.832 (±0.022) Improved-DE 0.112 (±0.006) 80.84 (±8.086) 12845.46 (±25.722) 0.751 (±0.029) Original-DE 0.157 (±0.034) 79.18 (±8.224) 12876.05 (±26.136) 0.714 (±0.034) GA 2.532 (±0.178) 78.67 (±9.336) 12932.11 (±28.322) 0.685 (±0.043) FCM 2.483 (±0.245) 78.54 (±9.793) 12942.38 (±25.286) 0.634 (±0.042) AL 3.387 75.27 13127.51 0.627 Data 5 Fuzzy-MC 0.1 (±0.0001) 138.93 (±10.558) 11143.86 (±25.210) 0.928 (±0.021) Improved-DE 0.103 (±0.005) 138.69 (±10.632) 11145.21 (±25.432) 0.922 (±0.032) Original-DE 0.127 (±0.023) 137.54 (±10.847) 11147.05 (±25.917) 0.882 (±0.032) GA 0.997 (±0.894) 135.23 (±12.427) 11223.56 (±26.527) 0.857 (±0.042) FCM 1.263 (±0.936) 134.72 (±12.369) 11318.46 (±26.982) 0.729 (±0.043) AL 2.884 130.80 11452.38 0.715