Skip to main content
Erschienen in: Neural Processing Letters 1/2017

Open Access 21.01.2017

A Cluster Splitting Technique by Hopfield Networks and P Systems on Simplices

verfasst von: Xiyu Liu, Jie Xue

Erschienen in: Neural Processing Letters | Ausgabe 1/2017

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

In this paper we propose a new graph based P system. The main feature of graph P system is that membrane compartments spread on edges as well as on vertices. These two kinds of compartments are topologically connected with certain communication rules. A new neural computing technique is proposed to solve cluster splitting into finding the equilibrium of Hopfield neural networks. Then we use the new graph P systems to obtain stable status of the neural networks. An example is presented to show the computing efficiency of the new P system with comparison with classical genetic algorithms.
Hinweise
Research is supported by the Natural Science Foundation of China (No. 61472231, 61170038). Other Grants: 201401202, 12YJA630152, 11CGLJ22.

1 Introduction

Membrane computing as one of the most promising biological computing techniques has attracted more and more researchers in natural computing in the last decade. A classical literature in this area is Păun’s book [25]. Roughly speaking, there are two key issues in membrane computing, i.e., the topological structure of compartments, and the computations comprising a set of rules.
There are many categories of P systems as summarized in Păun’s book [25]. In the topological point of view, the most typical P system is the cell-like P system with communication rules and, topologically a tree structure. New communication P systems solving sorting and communication models and synchronous object movement across components are proposed in [5, 30]. Also there are P automata which are devices characterizing non-universal family of languages [26]. Another important P system is the tissue P system which is topologically a graph [25]. There are many tissue P systems such as rule applicability based communication modes [4], and trajectory P systems with evolutionary rules [3]. Spiking neural P systems are extensively studied recently by Pan and his team [17]. For example, Zeng et al. [37] study spiking neural P system with only one neuron simulating register machines, and other smaller weakly universal spiking neural P systems. There are also researches on asynchronous spiking neural P systems with promoters [35], spiking P systems to implement arithmetic operations [20], systems with fuzzy logic and firing mechanism [27], and applications with membrane algorithms [8].
P systems can be dynamic in its topological structure. By using rules that describe the movement and evolution compartments, P systems with active membranes are able to solve complicated combinatory problems in linear time [11]. Dynamic compartments are also applied in a research of Spicher [29]. There are also researches on introducing probabilities in a membrane system with respect to multisets and rules [24]. For applications of P systems we refer to [9], and the Proceedings of CMC15 [12].
For joint study of membrane computing with other optimization techniques, there are evolutionary string object P systems which introduces genetic operations such as crossover and mutation in membrane computing [31]. Alhazov in [1] generalize a splicing P system which joins the Tom Head splicing DNA system with membrane computing. By linking membrane computing with picture grammars, the so-called array P systems are proposed with objects in region as arrays applicable in syntactic analysis of images [6]. There are other works which incorporate Petri nets with spiking Neural P system with anti-spikes (SN PA systems) in order to verify system properties, soundness and simulation [22].
The second focus of this paper is cluster analysis [13, 33, 34, 36]. For example, a graph-skeleton-based clustering method with maximal spanning trees is proposed in [14]. In order to overcome local optima problem, Amiri in [2] proposes a population-based Teaching-Learning-Based-Optimization method without controlling parameters. In [10], the authors present a randomised algorithm for time series clustering, while Chen et al. [7] focus on the prognostic effect of the immunophenotypic clusters of acute myeloid leukemia patients. Research on discriminative spectral clustering can be found in [32]. For dynamic time series clustering we refer to [15]. The Q-statistics is also applied for clustering Non-Hodgkin lymphoma (NHL) in space and time [23]. Applications of cluster analysis in genetic analysis of strawberry [28], the k-means clustering in blogs analysis [19], gene expression data mining [16], joint study of membrane computing with cluster analysis [18].
Although clustering methods are proposed extensively, new technique and new joint research are still important in this big data era due to the vast development of business intelligence and other applications. In the point of membrane computing, we still need new system structure in order to solve new and potential problems. In [18], a new P simplicial P system is proposed. The purpose of this paper is to continue exploring simplicial P systems.
In this paper we will propose a graph based P system. Topologically, this graph P system uses a graph as its data structure. Different with tissue P systems, in graph P system we construct cells (compartments) on edges rather than only on vertices. Vertex cells and edge cells are topologically connected with special communications rules. We propose a novel neural computing technique to transform cluster analysis to the equilibrium of Hopfield neural networks. Computation of the neural network is performed by graph P systems. The new technique provides a cluster splitting method which is the key process of hierarchical cluster analysis. Finally we present an example to show the computation of the new P system. Comparison of genetic algorithm with our method is given which shows that the new method is efficient in computing complexity.

2 Cluster Splitting by Hopfield Neural Networks

In this section, we propose a Hopfield neural network setting for classical clustering problems. Our purpose is to find a new cluster splitting method by Hopfield neural networks. First we suppose the data set to be clustered is \(\Omega =\{\xi _1,\ldots ,\xi _N\}\) with N data points. A similarity measure \(\rho \) is defined on \(\Omega \times \Omega \) which forms similarity matrix \(W=[w_{ij}]_{N\times N}\) where \(w_{ij}=\rho (\xi _i,\xi _j)\).
Classical clustering methods include the partition method, the hierarchical method, the model based method, etc. For hierarchical method there are two categories namely agglomerative and divisive methods, where the latter is more complicated in most occasions. In this paper our focus is the divisive clustering method. In divisive clustering analysis, one of the most difficult problem is to split a cluster into two sub-clusters with specific conditions, i.e., maximum intra-cluster similarity and minimum inter-cluster similarity. If we search all possible splitting examples, it will be NP-complete.
To simplify the problem, we need only to find an efficient method to split the data set \(\Omega \) into two clusters satisfying certain optimal criteria. In order to achieve this task, we use a class label \(x_i=\pm 1\) where \(x_i=1\) indicates one cluster and \(x_i=-1\) indicates another split one. Then we define a vector \(x=[x_1,\ldots ,x_N]^T\) with \(x_i=\pm 1\). To specify the criteria for optimal splitting, an energy function is defined as follows
$$\begin{aligned} E=E(x)=-\frac{1}{2}\sum ^N_{1\le i,j\le N}w_{ij}x_ix_j \end{aligned}$$
(2.1)
Now the \(\Omega \) is split into two clusters \(\Omega _1=\{\xi _i| x_i=1\}\) and \(\Omega _2=\{\xi _i| x_i=-1\}\). The energy function E in (2.1) is the sum of intra-cluster weights minus inter-cluster weights, together with a computing constant \(-\frac{1}{2}\). Therefore the minimal solution of E is an optimal cluster splitting solution in the sense of our energy function.
To solve this problem, we now construct a Hopfield neural network \((W,\theta )\) with \(\theta =0\). By standard neural network theory [21], the stable state of the network corresponds to the minimal solution of Eq. (2.1). Suppose the state of the network is x(t) with a discrete time variable t. Then the evolution of x(t) is by the following Eq. (2.2):
$$\begin{aligned} \left\{ \begin{array}{l} x_i(0)=x_i^0 \\ x_i(t+1)=f_i(H_i(t))\\ H_i(t)=\sum ^N_{k=1}w_{ik}x_k(t) \end{array}\right. \end{aligned}$$
(2.2)
where the function \(f(u)=\hbox {sgn}(u)\).
Since similarity measure is non-negative, the matrix diagonal of W is positive. By the standard neural network theory [21], the network \((W,\theta )\) is stable in asynchronous mode.
In the following, we always assume that the weight \(w_{ij}\) takes non-negative integers as its values.

3 A Graph Based P System

A basic cell-like P system is defined as a hierarchical arrangement of compartments delimited by membranes. Each compartment may contain a finite multiset of objects and a finite set of rules, as well as a finite set of other compartments. The rules perform transformation and communication operations.
In order to solve the Hopfield neural networks by membrane computing technique, we need to extend a typical P system to simplices. Simplices can be seen as a new class of data structure different with the linear structure, the tree structure, and the graph structure. In topological point of view, these structures are one dimensional. A simplex structure however, can be multi-dimensional. A tissue like P system is a system on graphs. Now we extend membrane membrane structures to edges. Then we obtain a totally new class of P system, called P system on simplices, or simplicial P systems.
A \(k-\)simplex \(\sigma \) is the convex hull of \(k+1\) affinely independent points \(a_0,a_1,\ldots ,a_k\) defined as the set of points in the form \(x=\sum ^k_{i=0}\lambda _ia^i\) where
$$\begin{aligned} \sum ^k_{i=0}\lambda _i=1, \lambda _0,\lambda _1,\ldots ,\lambda _k\ge 0. \end{aligned}$$
(3.1)
A simplex (cell) is uniquely indicated by its vertices and denoted as
$$\begin{aligned} \sigma =[a_0,a_1,\ldots , a_k],\hbox { or }\sigma =a_0a_1\ldots a_k. \end{aligned}$$
(3.2)
A face \(\tau \) of \(\sigma \) is a simplex by a subset vertices written by \(\tau <\sigma \). \(\tau \) is called a hyperface if \(\dim \tau =\dim \sigma -1\), denoted by \(\tau \prec \sigma \), while \(\sigma \) is called its parent. Two cells \(\tau _1\) and \(\tau _2\) are incident if \(\tau _1,\tau _2\prec \sigma \), and \(\sigma \) is called the coface of \(\tau _1\) and \(\tau _2\). Two cells \(\sigma _1,\sigma _2\) are called neighbors if they share a common hyperface. A simplicial complex K is a collection of simplices for which \(\sigma \in K\) and \(\tau \prec \sigma \) implies \(\tau \in K\); and \(\sigma _1, \sigma _2\in K\) implies that \(\sigma _1\cap \sigma _2\) is either empty or a face of both. For a k-simplex \(\sigma \), define K to be the collection of \(\sigma \) and all its faces. Then K is a simplicial complex, namely, a simple complex, or simply, a complex.

3.1 Membrane Structures on Graphs

Graph is a simple kind of simplicial complex. Now we will define membrane structures on graphs. Notice that these are different with tissue like P systems.
Suppose \(G=(V,E)\) is a graph where V is the set of vertices and E the set of edges. Define a simplicial complex K as the collection of V and E. Each simplex \(\sigma \in K\) is called a membrane. A membrane in E is maximal since it is not a face of another simplex in K. Evidently, vertices are zero-dimensional cells and hence are elementary membranes. Next we will identify K with the graph G.
If \(\tau \prec \sigma \) is a face of \(\sigma \), then we say that \(\sigma \) is the parent of \(\tau \). If \(\sigma _1,\sigma _2\) are incident, we say there is an upper link (channel) between \(\sigma _1,\sigma _2\). If \(\sigma _1,\sigma _2\) are neighbors, we say there is a lower link between them. An upper link is denoted by \((\sigma _1,\sigma _2)^{\tau }\) where \(\tau \) is their (common) parent, while lower link is written as \((\sigma _1,\sigma _2)_{\tau }\) where \(\tau \) is their common hyperface. Upper link is also written by \((\sigma _1,\sigma _2)^{U}\), or, simply \((\sigma _1,\sigma _2)\), while lower link is denoted by \((\sigma _1,\sigma _2)_{L}\).
Definition 1
A P system on a graph G, called a graph P system, with antiport and symport rules is a construct
$$\begin{aligned} \Pi= & {} (m,O,\omega _1,\ldots ,\omega _m,R_1,\ldots ,R_m,\\&ch, F(i,j)|_{(i,j)\in ch},i_0) \end{aligned}$$
where m is the number of cells labeled with \(1,2,\ldots ,m\), O is the alphabet, \(\omega _1,\ldots ,\omega _m\) are initial strings over O of multisets, \(R_1,\ldots ,R_m\) are symport and antiport rules associated with the m membranes, \(ch\subseteq \{(i,j)_R, (i,j)_L : i,j\in \{1,\ldots ,m\}\}\) is the set of links, F(ij) is a finite set of antiport and/or symport rules associated with the link \((i,j)\in ch\).

3.2 Rules of Graph P Systems

Now we describe rules in graph P systems. For the purpose of this paper, there are mainly four types of communication rules. Each type of rules contains four special operators outinup and down.
First suppose there exists an upper link \((\tau _1,\tau _2)^{\sigma }\). A rule in the form of \([(x,y),up]^U\) means that the multiset x and y from \(\tau _1\) and \(\tau _2\) transform into some z and go up to their parent \(\sigma \). Second, for two cells \(\tau \prec \sigma \), antiport rule in \(\tau \) in the form of \([u,out;v,in | \tau \prec \sigma ]\) means that exchanging multiset u inside membrane \(\tau \) with the multiset v outside (both in \(\sigma \)). Thirdly, symport rule \([u,out | \tau \prec \sigma ]\) sends multiset u out of \(\tau \) to \(\sigma \). Symport rule \([u,in | \tau \prec \sigma ]\) works similarly and takes u from \(\sigma \) into \(\tau \).
Combining these rules together we define upper link rule in \(R^{\sigma }(\tau _1,\tau _2)\) in the following forms
$$\begin{aligned}&{[}(x,y),up; (\alpha ,\beta ),in{]}^U\longrightarrow {[}z,in; \gamma ,down{]} \end{aligned}$$
(3.3)
$$\begin{aligned}&{[}u,out;v,in | \tau _1\prec \sigma {]}, \,\, {[}u,out;v,in | \tau _2\prec \sigma {]} \end{aligned}$$
(3.4)
Operations of Eq. (3.3) are listed here. Multiset x from cell \(\tau _1\) and y from \(\tau _2\) are removed transformed into z to parent cell \(\sigma \), while simultaneously \(\gamma \) of \(\sigma \) is moved and transformed into \(\alpha \) in \(\tau _1\) and \(\beta \) in \(\tau _2\). Operations of Eq. (3.4) is to move u out to \(\sigma \) while taking v from \(\sigma \) into \(\tau _1\), or \(\tau _2\).
A lower link rule in \(R_{\sigma }(\tau _1,\tau _2)\) has the following forms
$$\begin{aligned}&[(x,y),down; (\alpha ,\beta ),in]_L\longrightarrow [z,in; \gamma ,up] \end{aligned}$$
(3.5)
$$\begin{aligned}&[u,out;v,in | \sigma \prec \tau _1], \,\, [u,out;v,in | \sigma \prec \tau _2] \end{aligned}$$
(3.6)
Equation (3.5) means that we move x from cell \(\tau _1\) and y from \(\tau _2\) to z into their hyperface \(\sigma \), while simultaneously moving \(\gamma \) from \(\sigma \) to \(\alpha \) up to \(\tau _1\) and \(\beta \) up to \(\tau _2\). Equation (3.6) is similar to Eq. (3.5).

3.3 Configurations and Computations

Now we describe the configurations and computations of the proposed graph P systems. For our purpose, change of membrane structure is not involved. A configuration of a graph P system is the state of the system described by specifying the objects and rules associated to each membrane. The initial state is called initial configuration. Therefore, the multisets represented by \(\omega _i, 1\le i\le d\) in \(\Pi \), constitute the initial configuration of the system.
The system evolves by applying rules in membranes and this evolution is called computation. A computation starts with the multisets specified by \(\omega _1,\ldots ,\omega _m\) in its m cells. During each time unit, rules are applied in a cell. If no rule is applicable for one cell, then no object change occurs in it. The system evolves synchronously for all cells.
When the system has reached a configuration in which no rule is any longer applicable, we say that the computation halts. A configuration is stable if, even if some rules are still applicable, their application does not change the object content of the membranes. The computation is successful if and only if it halts, or it is stable. The result of a halting/stable computation is the number described by the multiplicity of objects present in the cell \(i_0\) in the halting/stable configuration.

4 Rules and Computations of Graph P Systems

In this section we consider a neural network (W, 0) as in Sect. 2 and a P system on a complete graph \(G=(V,E)\) with N nodes. Notice that we always assume that the elements of W are non-negative integers. We use an integer \(N_i\) to denote the sum
$$\begin{aligned} N_i=\sum ^N_{j=1}w_{ij}-w_{ii} \end{aligned}$$
(4.1)
Consider the P system
$$\begin{aligned} \Pi =\left( O,\{\omega _i,R_i\}|_{1\le i\le N},\{\omega _{ij},F_{i,j}\}|_{(i,j)\in ch},i_0 \right) \end{aligned}$$
(4.2)
where the number of edges (links) are \(m=\frac{1}{2}N(N-1)\), \(\omega _i,R_i\) are initial configurations and rules of(on) node membranes \(\sigma _i\), and \(\omega _{ij},F_{i,j}\) are initial configurations and rules of(on) edge membranes \(\sigma _{ij}\), \(i_0=1\) indicates the output node. The alphabet is shown in Table 1.
Table 1
An alphabet list
\(a_1,\ldots ,a_N\)
\(a,a_+,a_-\)
\(b_+,b_-,c\)
\(\alpha ,\alpha _s\)
\(\alpha _+,\alpha _-,\alpha _0\)
\(\beta ,\gamma ,\gamma _+\)
\(\pi ,\pi _0\)
\(\pi _c,\pi _h\)
\(\pi _\sigma \)
For initial configurations of node cells, we set
$$\begin{aligned} \left\{ \begin{array}{l} \omega _1=\{a_1\}\cup \{\alpha _s,\alpha ^{N-1},\alpha _0^{N_1},\quad \gamma _+^{N-1}\} \\ \omega _i=\{a_i\}\cup \{\alpha ^{},\beta ^{}\}, \quad i>1 \end{array}\right. \end{aligned}$$
(4.3)
where the symbol \(a_i=a_+\) or \(a_-\). As initialization we set \(a_i=a_+\) or \(a_-\) randomly. The initial configuration on edges are empty strings \(\omega _{ij}=\{\lambda \}\).

4.1 Rules with Partial Ordering

All the rules are categorized as several groups. The first group is annihilation rules acting on node cells
$$\begin{aligned} F_0= \left\{ \begin{array}{l} r_{00}: b_+b_-\rightarrow \lambda \\ r_{01}: {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | (\alpha _0\alpha _+,\lambda )\rightarrow (b_+,c) \\ r_{02}: {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | (\alpha _0\alpha _-,\lambda )\rightarrow (b_-,c) \\ r_{03}: \sigma _i\rightarrow \sigma _i | \beta \alpha _+\alpha _+\rightarrow \beta \alpha _+ \succ \\ \quad {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | (\beta \alpha _+,\lambda )\rightarrow (\lambda ,c) \\ r_{04}: \sigma _i\rightarrow \sigma _i | \beta \alpha _-\alpha _-\rightarrow \beta \alpha _- \succ \\ \quad {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | (\beta \alpha _-,\lambda )\rightarrow (\lambda ,c) \\ \end{array}\right. \end{aligned}$$
(4.4)
We also have a set of rules acting on node cells.
$$\begin{aligned} F_{01}= \left\{ \begin{array}{l} r_{011}: {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | \\ (\alpha _s,\lambda )\rightarrow (b_+^{w_{ii}}\gamma ,c) \\ \end{array}\right. \end{aligned}$$
(4.5)
The second group is edge rules.
$$\begin{aligned} F_1= & {} \left\{ \begin{array}{l} r_{11}=\{a_+a_+\rightarrow b_+\} \\ r_{12}=\{a_+a_-\rightarrow b_-\} \\ r_{13}=\{a_-a_-\rightarrow b_+\} \\ \end{array}\right. \end{aligned}$$
(4.6)
$$\begin{aligned} F^{ij}_1= & {} \left\{ \begin{array}{l} r_{14}: \sigma _{ij}\rightarrow {[}\sigma _i,\sigma _j{]}| \\ \quad b_+a^{w_{ij}}\rightarrow {[}\alpha _+^{w_{ij}},\alpha _+^{w_{ij}}{]} \\ r_{15}: \sigma _{ij}\rightarrow {[}\sigma _i,\sigma _j{]}| \\ \quad b_-a^{w_{ij}}\rightarrow {[}\alpha _-^{w_{ij}},\alpha _-^{w_{ij}}{]} \\ \end{array}\right. \end{aligned}$$
(4.7)
The third group is rules on nodes by links.
$$\begin{aligned} F_2= \left\{ \begin{array}{l} r^U_{21}:{[}\sigma _i,\sigma _j{]}\rightarrow {[}\sigma _i,\sigma _{ij},\sigma _j{]} | \\ \quad (\alpha \gamma _+,\alpha )\rightarrow (\gamma ,a_ia_ja^{w_{ij}},\lambda ) \\ r^U_{22}:{[}\sigma _i,\sigma _j{]}\rightarrow {[}\sigma _i,\sigma _{ij},\sigma _j{]} | \\ \quad (\alpha ,\alpha \gamma _+)\rightarrow (\lambda ,a_ia_ja^{w_{ij}},\gamma ) \\ \quad (i\not =j) \\ \end{array}\right. \end{aligned}$$
(4.8)
Finally we consider controlling rules. The fourth group of rules control the active node of the neural network. These rules act on node cells.
$$\begin{aligned} F_3= \left\{ \begin{array}{l} r^\rightarrow _{31}: \\ \quad {[}\sigma _1,\sigma _{2}{]}\rightarrow {[}\sigma _1,\sigma _{2}{]} | (\pi _c\gamma ^{N},\lambda )\rightarrow \\ \quad (\alpha ^{}\beta ^{},\alpha _s\alpha ^{N-1}\alpha _0^{N_2}\gamma _+^{N-1}) \\ \quad \sigma _i\rightarrow \sigma _i (i>2) | a_i\rightarrow a_i\alpha \beta \\ r^\rightarrow _{32}: \\ \quad {[}\sigma _i,\sigma _{i+1}{]}\rightarrow {[}\sigma _i,\sigma _{i+1}{]}, 1<i<N | \\ \quad (\gamma ^{N}\pi _c,\lambda )\rightarrow (\alpha ^{}\beta ^{},\alpha _s\alpha ^{N-1}\alpha _0^{N_{i+1}}\gamma _+^{N-1}) \\ \quad \sigma _j\rightarrow \sigma _j (j\not =i,i+1) | a_j\rightarrow a_j\alpha \beta \\ \end{array}\right. \end{aligned}$$
(4.9)
Now we discuss computation and halting conditions. The main idea is using a symbol \(\pi _0\) to count the number of running nodes in one cycle and compute the number of stable nodes. When the number of stable nodes equals N, then the whole network is stable. We can send a symbol \(\pi _h\) to output node \(\sigma _1\). Notice that rules are executed in an order.
$$\begin{aligned} F_4= \left\{ \begin{array}{l} r^\rightarrow _{41}: \sigma _i\rightarrow \sigma _i | b_+b_+\rightarrow b_+ \,\succ \, r_{420} \\ r^\rightarrow _{42}: \sigma _i\rightarrow \sigma _i | b_-b_-\rightarrow b_-\,\succ \, r_{420} \\ r_{420}: \sigma _i\rightarrow \sigma _i | \\ \quad b_+a_+\rightarrow a_+\pi , b_-a_-\rightarrow a_-\pi , \\ \quad b_+a_-\rightarrow a_+, b_-a_+\rightarrow a_- \\ r^\rightarrow _{43}: {[}\sigma _i,\sigma _1{]}\rightarrow {[}\sigma _i,\sigma _1{]} | \\ \quad (\pi ,\lambda )\rightarrow (\lambda , \pi _0) \\ r^\rightarrow _{44}: \sigma _1\rightarrow \sigma _1 | \pi _0^Nc\rightarrow \pi _h \hbox {(halt)}\\ r^\rightarrow _{45}: \sigma _1\rightarrow \sigma _1 | cc\rightarrow c \succ \\ \quad {[}\sigma _1,\sigma _i{]}\rightarrow {[}\sigma _1,\sigma _i{]} | \hbox {(continue)} \\ \quad (\pi _0^xc,\gamma ^N)\rightarrow (\pi _\sigma ,\gamma ^N\pi _c), x<N \\ \end{array}\right. \end{aligned}$$
(4.10)
where loop controlling rules are listed as \(F_{5}\). If we found a symbol \(\pi _h\) in \(\sigma _1\), then the computation is complete.
$$\begin{aligned} F_{5}= \left\{ \begin{array}{l} r^\rightarrow _{51}: \\ \quad {[}\sigma _N,\sigma _{1}{]}\rightarrow {[}\sigma _N,\sigma _{1}{]} | (\gamma ^{N-1}\pi _c,\lambda ) \\ \quad \rightarrow (\alpha ^{}\beta ^{},\alpha _s\alpha ^{N-1}\alpha _0^{N_1}\gamma _+^{N-1}) \\ \quad \sigma _i\rightarrow \sigma _i (i\not =1,N) | a_i\rightarrow a_i\alpha \beta \\ \end{array}\right. \end{aligned}$$
(4.11)
The total number of loops is written in the symbol \(\pi _\sigma \).

4.2 Configurations and Computations

Now we explain the process of computation in detail. We use \(i_0=1\) to note the output cell. For initial configuration, the multisets of edges are \(\{\lambda \}\) and the node cells have the following multisets.
$$\begin{aligned} \{a_1\alpha _s\alpha ^{N-1}\alpha _0^{N_1}\gamma _0^{N-1},a_2\alpha \beta ,\ldots ,\alpha _N\alpha \beta \} \end{aligned}$$
(4.12)
The the running node of the neural network is \(i=1\). To illustrate the process more clearly, we assume that the current running node is \(i=2\) after the first round of running for \(i=1\). In the first node cell, the symbol \(\pi _\sigma \) notes the number of running rounds for the network. Hence the current configuration is
$$\begin{aligned} \{a_1\alpha \beta \pi _\sigma ,a_2\alpha _s\alpha ^{N-1} \alpha _0^{N_2}\gamma _0^{N-1},a_3\alpha \beta ,\ldots ,\alpha _N\alpha \beta \} \end{aligned}$$
(4.13)
Now for each \(1\le i\le N\) and \(i\not =2\) we run the rules in \(F_2\) and the node cells are
$$\begin{aligned} \{a_1\beta \pi _\sigma ,a_2\alpha _s\alpha _0^{N_2}\gamma ^{N-1},a_3\beta ,\ldots ,\alpha _N\beta \} \end{aligned}$$
(4.14)
At the same time the edge cells \(\sigma _{2i}\) for \(1\le i\le N\) are
$$\begin{aligned} \{a_2a_1a^{w_{21}},\lambda ,a_2a_3a^{w_{23}},\ldots ,a_2a_Na^{w_{2N}}\} \end{aligned}$$
(4.15)
Next we run the rules in \(F_{01}\) and the edge cells remains the same while the node cells are
$$\begin{aligned} \{a_1\beta \pi _\sigma c,a_2\alpha _0^{N_2}\gamma ^{N}b_+^{w_{22}},a_3\beta ,\ldots ,\alpha _N\beta \} \end{aligned}$$
(4.16)
Next we run rules in \(F_1\) on edges, and all the strings change to \(b_+\) of \(b_-\) which is noted by \(b_{+/-}\).
$$\begin{aligned} \{b_{+/-}a^{w_{21}},\lambda ,b_{+/-}a^{w_{23}},\ldots ,b_{+/-}a^{w_{2N}}\} \end{aligned}$$
(4.17)
The next step is to run \(F^{ij}_1\) on edges and the edge cells change into empty multisets and these states remain till the end of this round.
$$\begin{aligned} \{\lambda ,\lambda ,\lambda ,\ldots ,\lambda \} \end{aligned}$$
(4.18)
Meanwhile the node cells are
$$\begin{aligned} \begin{array}{l} \{a_1\beta \pi _\sigma c\alpha _{+/-}^{w_{12}},a_2\alpha _0^{N_2}\gamma ^{N}b_+^{w_{22}}\alpha _{+/-}^{w_{12}}\alpha _{+/-}^{w_{23}}\ldots \\ \alpha _{+/-}^{w_{2N}}, a_3\beta \alpha _{+/-}^{w_{23}},\ldots ,\alpha _N\beta \alpha _{+/-}^{w_{2N}}\} \end{array} \end{aligned}$$
(4.19)
Now we run rules \(\{r_{01},r_{02},r_{03},r_{04},r_{00}\}\) in \(F_0\) and count the number of c in \(\sigma _1\).
$$\begin{aligned} \{a_1\pi _\sigma c^{N+N_{2}},a_2\gamma ^{N}b_{+/-}, a_3,\ldots ,\alpha _N\} \end{aligned}$$
(4.20)
Now we compare the resulting \(b_{+/-}\) with \(a_2\) and then
$$\begin{aligned} \{a_1\pi _\sigma c^{N+N_{2}}\pi _0^x,a_2\gamma ^{N}, a_3,\ldots ,\alpha _N\} \end{aligned}$$
(4.21)
Actually in one running we only obtain one possible correct node which is noted by the symbol \(\pi _0\). If after all the N nodes are processed we obtain \(\pi _0^N\) correct nodes, then the network is stable. We then send a symbol \(\pi _h\) to the output node the computation is complete. Otherwise we send a continuing symbol \(\pi _c\) to \(\sigma _1\) and continue to the next step. The function of rules \(F_3\) and \(F_5\) is to control the running of current node to the next node.
The next figure (Fig. 1) illustrate the whole computation process when \(N=4\) and \(i=2\).

5 Example and Discussion

In this section we will give an example taken in UCI data set to show the cluster splitting technique by graph P systems. Then we will present some comparison with genetic algorithms. Experiments show that computation by Hopfield neural networks is rather efficient especially in comparison with genetic algorithms.
The Wisconsin breast cancer data set consists 699 samples with 9 attributes. The samples are classified as two categories, the malignant and the benign. The data is shown in Fig. 2 with an added noise of [0, 0.5]. For the purpose of this paper, we choose attribute 2 and 6 and accumulate the data samples using the grid technique. Then the data set \(\Omega =\{\xi _1,\ldots ,\xi _N\}\) is shown in Fig. 3 with \(N=100\) data points. The number of raw data points in \(\xi _i\) is denoted by \(m(\xi _i)\).
Now we define a similarity measure on the data set. For \(\xi _i,\xi _j\in \Omega \), let \(L(\xi _i,\xi _j)\) be the shortest path length as shown in Fig. 3. Here we always take the unit length between two nodes as one. Similarity measure is defined as follows:
$$\begin{aligned} \rho (\xi _i,\xi _j)=\left[ f(m(\xi _i),m(\xi _j)) \frac{L_0}{1+L^2(\xi _i,\xi _j)}+0.5\right] \end{aligned}$$
(5.1)
where \(L_0\) is a parameter, and the operator \([\cdot ]\) denote the largest integer not exceeding it. The function \(f(,\cdot ,)\) is as follows:
$$\begin{aligned} f(u,v)=\min \{|u|,|v|\}\frac{1}{1+|u-v|} \end{aligned}$$
(5.2)
In the plane, if we define the coordinates of \(\xi _i\) as \((p_i,q_i)\). Then
$$\begin{aligned} L(\xi _i,\xi _j)= |p_i-p_j|+|q_i-q_j|, \end{aligned}$$
(5.3)
To reduce the global effect of edges, we also define another similarity measure.
$$\begin{aligned} \rho _r(\xi _i,\xi _j)=\left[ f(m(\xi _i),m(\xi _j)) \frac{L_0\delta (\xi _i,\xi _j)}{1+L^2(\xi _i,\xi _j)}+0.5\right] \end{aligned}$$
(5.4)
The additional parameter \(\delta (\xi _i,\xi _j)\) is defined by
$$\begin{aligned} \delta (\xi _i,\xi _j)=\left\{ \begin{array}{l} 1, \quad \hbox { if } \max \{|p_i-p_j|,|q_i-q_j|\}\le 3 \\ 0, \quad \hbox { else.} \end{array}\right. \end{aligned}$$
(5.5)
Next we analyze the computation with similarity measure \(\rho (\xi _i,\xi _i)\). Then we obtain the weight matrix \(W=[W_1,W_2,W_3,W_4]^T\) as shown in equations (5.6)(5.7) (5.8)(5.9) (5.10)(5.11) (5.12)(5.13), where each subsequent two equations compose of of the matrices \(W_1,W_2,W_3,W_4\) each, in such a way as \(W_i=[A,B]^T\).
Now we choose \(L_0=10\). A maximum running time is set to be 500. Then the computation is rather efficient. The next figure Fig. 4 shows the energy curve of the computation. The next experiment shows the energy curve with maximum running time 1000 (Fig. 5).
Next we compare the graph P system with traditional genetic algorithms (GA) to see the computation efficiency. First we set GA population size as 10. Mutation probability is \(p=1\) with one-point mutation. The next figure (Fig. 6) shows the running time comparison result. Here we set the maximum running time is 100. The energy comparison is shown in Fig. 7.
Now we change some parameters of GA. Let the population size be 100. We choose two individuals each time to be mutated. When the maximum running time is 500, we obtain the energy comparison as shown in Fig. 8. The figure shows clearly that the proposed method in this paper has better performance than GA.
Finally we present another experiment with parameters as the previous one. To make it more clearly we draw the energy comparison in the tail part. Notice that we only use decimal part of the energy value and multiply these values by 1000. Again we obtain a better result (Fig. 9).

6 Conclusion

In this paper we present a new membrane computing model called the graph P system. Topologically, the new system extends traditional P system to more complicated topological structure. In some sense, this means a new membrane computing model is set up with new data structure, namely, simplex structure. The main ingredients of the new structure is that topological data structure turns from one dimensional structure to multidimensional structure. In the simplest case, the graph case namely, we add connections between nodes and edges. This will induce new paradigm of rules in association with this new connections which will hopefully solve more complicated problems by simulating new operations of multisets. However, computing ability of the new P system is still an open problem.
We also present a new solution to clustering splitting problem which is the most difficult task in hierarchical cluster analysis by the Hopfield neural networks. Surprisingly the new method works in a very efficient mode than traditional heuristic optimization method such as genetic algorithms. Computation of the neural networks are done by the proposed graph P system which is new in itself. Finally we will point out that the graph based P system, or more generally the simplex P system, is a promising new direction of membrane computing. We expect new research on this area with more powerful applications.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://​creativecommons.​org/​licenses/​by/​4.​0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Literatur
1.
Zurück zum Zitat Alhazov A, Rogozhin Y, Verlan S (2010) A small universal splicing P system. In: Gheorghe M, Hinze T, Păun G, Rozenberg G, Salomaa A (eds) Membrane computing. CMC 2010. Lecture notes in computer science, vol 6501. Springer, Berlin, pp 95–102 Alhazov A, Rogozhin Y, Verlan S (2010) A small universal splicing P system. In: Gheorghe M, Hinze T, Păun G, Rozenberg G, Salomaa A (eds) Membrane computing. CMC 2010. Lecture notes in computer science, vol 6501. Springer, Berlin, pp 95–102
2.
Zurück zum Zitat Amiri B (2012) Application of teaching-learning-based optimization algorithm on cluster analysis. J Basic Appl Sci Res 2:11795–11802 Amiri B (2012) Application of teaching-learning-based optimization algorithm on cluster analysis. J Basic Appl Sci Res 2:11795–11802
4.
Zurück zum Zitat Bernardini F, Freund R (2006) Tissue P systems with communication modes, WMC 7. LNCS 4361:170–182MATH Bernardini F, Freund R (2006) Tissue P systems with communication modes, WMC 7. LNCS 4361:170–182MATH
5.
Zurück zum Zitat Ceterchi R, Martin-Vide C (2003) P systems with communication for static sorting, GRLMC Report 26. In: Cavaliere M, Martín-Vide C, Paun G (eds) Proceedings of the brainstorming week on membrane computing. Rovira i Virgili University, pp 101–117 Ceterchi R, Martin-Vide C (2003) P systems with communication for static sorting, GRLMC Report 26. In: Cavaliere M, Martín-Vide C, Paun G (eds) Proceedings of the brainstorming week on membrane computing. Rovira i Virgili University, pp 101–117
6.
Zurück zum Zitat Chandra PH and Saroja Theerdus Kalavathy SM (2013) Array P systems with hybrid teams. In: Proceedings of 7th international conference on bio-inspired computing: theories and applications, (BIC-TA 2012), advances in intelligent systems and computing 201, pp 239–249 Chandra PH and Saroja Theerdus Kalavathy SM (2013) Array P systems with hybrid teams. In: Proceedings of 7th international conference on bio-inspired computing: theories and applications, (BIC-TA 2012), advances in intelligent systems and computing 201, pp 239–249
7.
Zurück zum Zitat Chen CY, Chou WC, Tsay W, Tang JL, Yao M, Huang SY, Tien HF (2013) Hierarchical cluster analysis of immunophenotype classify AML patients with NPM1 gene mutation into two groups with distinct prognosis. BMC Cancer 13:1–9CrossRef Chen CY, Chou WC, Tsay W, Tang JL, Yao M, Huang SY, Tien HF (2013) Hierarchical cluster analysis of immunophenotype classify AML patients with NPM1 gene mutation into two groups with distinct prognosis. BMC Cancer 13:1–9CrossRef
8.
Zurück zum Zitat Chen Z, He J, Zheng Y, Song T, Deng Z (2016) An optimized feedforward decoupling PD register control method of roll-to-toll web printing systems. IEEE Trans Autom sci Eng 13:74–283 Chen Z, He J, Zheng Y, Song T, Deng Z (2016) An optimized feedforward decoupling PD register control method of roll-to-toll web printing systems. IEEE Trans Autom sci Eng 13:74–283
9.
Zurück zum Zitat Christinal HA, Díaz-Pernil E, Real P (2010) P systems and computational algebraic topology. Math Comput Model 52:1982–1996MathSciNetCrossRefMATH Christinal HA, Díaz-Pernil E, Real P (2010) P systems and computational algebraic topology. Math Comput Model 52:1982–1996MathSciNetCrossRefMATH
10.
Zurück zum Zitat Darkins R, Cooke EJ, Ghahramani Z, Kirk PDW, Wild DL, Savage RS (2013) Accelerating Bayesian hierarchical clustering of time series data with a randomised algorithm. PLoS ONE 8:59795CrossRef Darkins R, Cooke EJ, Ghahramani Z, Kirk PDW, Wild DL, Savage RS (2013) Accelerating Bayesian hierarchical clustering of time series data with a randomised algorithm. PLoS ONE 8:59795CrossRef
12.
Zurück zum Zitat Gheorghe M, Sosík P, Vavrečková Š et al (2014). In: Proceedings of the 15th international conference on membrane computing, Prague, Czech Republic, pp 1–377 Gheorghe M, Sosík P, Vavrečková Š et al (2014). In: Proceedings of the 15th international conference on membrane computing, Prague, Czech Republic, pp 1–377
13.
Zurück zum Zitat Han J, Kamber M (2002) Data mining, concepts and techniques. Higher Education Press; Morgan Kaufmann Publishers, BeijingMATH Han J, Kamber M (2002) Data mining, concepts and techniques. Higher Education Press; Morgan Kaufmann Publishers, BeijingMATH
14.
Zurück zum Zitat Huang RZ, Yu G, Wang ZJ, Zhang J, Shi LX (2013) Dirichlet process mixture model for document clustering with feature partition. IEEE Trans Knowl Data Eng 25:1748–1759CrossRef Huang RZ, Yu G, Wang ZJ, Zhang J, Shi LX (2013) Dirichlet process mixture model for document clustering with feature partition. IEEE Trans Knowl Data Eng 25:1748–1759CrossRef
15.
Zurück zum Zitat Ji M, Xie F, Ping Y (2013) A dynamic fuzzy cluster algorithm for time series. Abstr Appl Anal 183410 Ji M, Xie F, Ping Y (2013) A dynamic fuzzy cluster algorithm for time series. Abstr Appl Anal 183410
16.
Zurück zum Zitat Lim HJ, Oh YS, Lim JS, Dong HL (2012) Microarray gene expression data mining: cluster analysis and applications. Eng Technol 70:373–375 Lim HJ, Oh YS, Lim JS, Dong HL (2012) Microarray gene expression data mining: cluster analysis and applications. Eng Technol 70:373–375
17.
Zurück zum Zitat Linqiang Pan, Xiangxiang Zeng, Xinyi Zhang (2012) Spiking neural P systems with weighted synapses. Neural Process Lett 35:13–27CrossRef Linqiang Pan, Xiangxiang Zeng, Xinyi Zhang (2012) Spiking neural P systems with weighted synapses. Neural Process Lett 35:13–27CrossRef
18.
Zurück zum Zitat Liu XY and Xue Alice (2012) Communication P systems on simplicial complexes with applications in cluster analysis, Discret Dyn Nat Soc 415242 Liu XY and Xue Alice (2012) Communication P systems on simplicial complexes with applications in cluster analysis, Discret Dyn Nat Soc 415242
19.
Zurück zum Zitat Liu EZF, Lin CH, Chen FY, Peng PC (2012) Cluster analysis of adolescent blogs. Turk Online J Educ Technol 11:69–79 Liu EZF, Lin CH, Chen FY, Peng PC (2012) Cluster analysis of adolescent blogs. Turk Online J Educ Technol 11:69–79
20.
Zurück zum Zitat Liu X, Li Z, Liu J, Liu L, Zeng XX (2015) Implementation of arithmetic operations with time-free spiking neural P systems. IEEE Trans Nanobiosci 14:617–624CrossRef Liu X, Li Z, Liu J, Liu L, Zeng XX (2015) Implementation of arithmetic operations with time-free spiking neural P systems. IEEE Trans Nanobiosci 14:617–624CrossRef
21.
Zurück zum Zitat Liu X, Liu H (2008) Artificial neurel networks and particle swarm optimization. Beijing University of Posts and Telecommunications Press, Beijing Liu X, Liu H (2008) Artificial neurel networks and particle swarm optimization. Beijing University of Posts and Telecommunications Press, Beijing
22.
Zurück zum Zitat Matta VP, Krithivasan K, Garg D (2011) Modelling and analysis of spiking neural P systems with anti-spikes using Pnet lab. Nano Commun Netw 2:141–149CrossRef Matta VP, Krithivasan K, Garg D (2011) Modelling and analysis of spiking neural P systems with anti-spikes using Pnet lab. Nano Commun Netw 2:141–149CrossRef
23.
Zurück zum Zitat Nordsborg BR, Meliker JR, Kjær A (2013) Ersbøll, G.M. Jacquez, and O. Raaschou-Nielsen, Space-time clustering of non-Hodgkin Lymphoma using residential histories in a Danish case-control study. PLoS ONE 8:60800CrossRef Nordsborg BR, Meliker JR, Kjær A (2013) Ersbøll, G.M. Jacquez, and O. Raaschou-Nielsen, Space-time clustering of non-Hodgkin Lymphoma using residential histories in a Danish case-control study. PLoS ONE 8:60800CrossRef
24.
Zurück zum Zitat Obtułowicz A, Păun G (2003) (In search of) probabilistic P systems. BioSystems 70:107–121CrossRef Obtułowicz A, Păun G (2003) (In search of) probabilistic P systems. BioSystems 70:107–121CrossRef
25.
Zurück zum Zitat Păun G, Rozenberg G, Salomaa A (2010) Membrane computing. Oxford University Press, New YorkCrossRefMATH Păun G, Rozenberg G, Salomaa A (2010) Membrane computing. Oxford University Press, New YorkCrossRefMATH
27.
Zurück zum Zitat Peng H, Wang J, Pérez-Jiménez MJ, Wang H, Shao H, Wang T (2013) Fuzzy reasoning spiking neural P system for fault diagnosis. Inf Sci 235:106–116MathSciNetCrossRefMATH Peng H, Wang J, Pérez-Jiménez MJ, Wang H, Shao H, Wang T (2013) Fuzzy reasoning spiking neural P system for fault diagnosis. Inf Sci 235:106–116MathSciNetCrossRefMATH
28.
Zurück zum Zitat Singh SR, Lal S, Ahmed N, Srivastava KK, Kumar D, Jan N, Amin A, Malik AR (2013) Determination of genetic diversity in strawberry (Fragaria ananassa) using principal component analysis (PCA) and single linkage cluster analysis (SLCA). Afr J Biotechnol 12:3774–3782 Singh SR, Lal S, Ahmed N, Srivastava KK, Kumar D, Jan N, Amin A, Malik AR (2013) Determination of genetic diversity in strawberry (Fragaria ananassa) using principal component analysis (PCA) and single linkage cluster analysis (SLCA). Afr J Biotechnol 12:3774–3782
29.
Zurück zum Zitat Spicher A, Michel O, Cieslak M, Giavitto JL, Prusinkiewicz P (2008) Stochastic P systems and the simulation of biochemical processes with dynamic compartments. BioSystems 91:458–472CrossRef Spicher A, Michel O, Cieslak M, Giavitto JL, Prusinkiewicz P (2008) Stochastic P systems and the simulation of biochemical processes with dynamic compartments. BioSystems 91:458–472CrossRef
30.
31.
Zurück zum Zitat Xiao JH, Zhang XY, Xu J (2012) A membrane evolutionary algorithm for DNA sequence design in DNA computing. Chin Sci Bull 57:698–706CrossRef Xiao JH, Zhang XY, Xu J (2012) A membrane evolutionary algorithm for DNA sequence design in DNA computing. Chin Sci Bull 57:698–706CrossRef
32.
Zurück zum Zitat Yang Y, Yang Y, Shen HT, Zhang YC, Du XY, Zhou XF (2013) Discriminative nonnegative spectral clustering with out-of-sample extension. IEEE Trans Knowl Data Eng 25:1760–1771CrossRef Yang Y, Yang Y, Shen HT, Zhang YC, Du XY, Zhou XF (2013) Discriminative nonnegative spectral clustering with out-of-sample extension. IEEE Trans Knowl Data Eng 25:1760–1771CrossRef
33.
Zurück zum Zitat Yu J, Tao D, Wang M (2012) Adaptive hypergraph learning and its application in image classification. IEEE Trans Image Process 21(7):3262–3272MathSciNetCrossRef Yu J, Tao D, Wang M (2012) Adaptive hypergraph learning and its application in image classification. IEEE Trans Image Process 21(7):3262–3272MathSciNetCrossRef
34.
Zurück zum Zitat Yu J, Hong R, Wang M, You J (2014) Image clustering based on sparse patch alignment framework. Pattern Recognit 47(11):3512–3519CrossRef Yu J, Hong R, Wang M, You J (2014) Image clustering based on sparse patch alignment framework. Pattern Recognit 47(11):3512–3519CrossRef
35.
Zurück zum Zitat Yuan Z, Zhang Z (2007) Asynchronous spiking neural P system with promoters. In: Xu M, Zhan Y, Cao J, Liu Y (eds) Advanced parallel processing technologies. APPT 2007. Lecture notes in computer science, vol 4847. Springer, Berlin, pp 693–702 Yuan Z, Zhang Z (2007) Asynchronous spiking neural P system with promoters. In: Xu M, Zhan Y, Cao J, Liu Y (eds) Advanced parallel processing technologies. APPT 2007. Lecture notes in computer science, vol 4847. Springer, Berlin, pp 693–702
36.
Zurück zum Zitat Yu J, Yang X, Gao F, Tao D (2016) Deep multimodal distance metric learning using click constraints for image ranking. In: IEEE transactions on cybernetics, pp 1–11 Yu J, Yang X, Gao F, Tao D (2016) Deep multimodal distance metric learning using click constraints for image ranking. In: IEEE transactions on cybernetics, pp 1–11
Metadaten
Titel
A Cluster Splitting Technique by Hopfield Networks and P Systems on Simplices
verfasst von
Xiyu Liu
Jie Xue
Publikationsdatum
21.01.2017
Verlag
Springer US
Erschienen in
Neural Processing Letters / Ausgabe 1/2017
Print ISSN: 1370-4621
Elektronische ISSN: 1573-773X
DOI
https://doi.org/10.1007/s11063-016-9577-z

Weitere Artikel der Ausgabe 1/2017

Neural Processing Letters 1/2017 Zur Ausgabe

Neuer Inhalt