Journal of Optimization

Journal of Optimization / 2017 / Article
Special Issue

Metaheuristic Optimization: Algorithmic Design and Applications

View this Special Issue

Research Article | Open Access

Volume 2017 |Article ID 3259140 | 14 pages | https://doi.org/10.1155/2017/3259140

A Multiple Core Execution for Multiobjective Binary Particle Swarm Optimization Feature Selection Method with the Kernel P System Framework

Academic Editor: Gexiang Zhang
Received22 Oct 2016
Revised26 Jan 2017
Accepted12 Mar 2017
Published19 Apr 2017

Abstract

Membrane computing is a theoretical model of computation inspired by the structure and functioning of cells. Membrane computing models naturally have parallel structure, and this fact is generally for all variants of membrane computing like kernel P system. Most of the simulations of membrane computing have been done in a serial way on a machine with a central processing unit (CPU). This has neglected the advantage of parallelism in membrane computing. This paper uses multiple cores processing tools in MATLAB as a parallel tool to implement proposed feature selection method based on kernel P system-multiobjective binary particle swarm optimization to identify marker genes for cancer classification. Through this implementation, the proposed feature selection model will involve all the features of a P system including communication rule, division rule, parallelism, and nondeterminism.

1. Introduction

The concept of membrane computing (MC) pursues the basics processes taking place in living cell based on its compartmental structure [1]. In general, the so-called P system represents the MC structure in mimicking reactions and rules. This system mimics the basics of cell-like variants such as cell division, cell death, the transformation of objects via rules, and halt process just when there are no more applicable rules. The nature of MC and its tools as P systems are conducted based on three important features including communication rule, parallelism, and nondeterminism. According to the nature of P system, it is quite suitable to represent biological systems, and all molecular interactions can take place in different locations of living cells [2]. Various variants of P system are considered to solve a wide range of problems. Some of the recent studies are [3] which has used the enzymatic numerical P system (EN P system) as the variant of P system mix with active membrane to solve subset sum problem, [4] which is the application of enzymatic numerical P systems discussed in the area of mobile robots control, [5] that used P system as framework to give a better understanding of the pattern in regenerative biology, [6] which applies membrane computing in google earth application, [7] which applies membrane computing in obtaining optimal values of the thresholds, and [8] which introduces various application of membrane computing in real life.

Recently, new models of P systems have been explored. A kernel P system (KP system) based on the tissue P system (graph-based) has been defined, which consists of a low-level specification language that uses established features of existing P system variants and also includes some new elements. KP system, first because of its coherent set of rules, second flexibility of updating rules in different part of modelling, and third its tissue based model which is more adaptable with particle modelling of optimization algorithms, is selected among other variants of P systems to model the multiple-objective binary particle swarm optimization (MObPSO) model in parallel execution. Importantly, KP systems offer a coherent way of integrating these elements into the same formalism [9]. Artificial Intelligence (AI) refers to a machine or algorithm which tries to mimic a cognitive function that human uses for learning or problem-solving. Inspired by AI algorithms—the intelligence that a machine or program demonstrates to address a problem—for feature selection of cancer microarray data, here, we propose a membrane-inspired feature selection method to use the potentials of membrane computing, such as decentralization, nondeterminism, and maximal parallel computing, to address the limitations of AI-feature selection.

Particle swarm optimization has been used to develop feature selection methods in microarray gene expression studies [1012]. Graph-based MObPSO [13] was modelled through kernel P system for the following reasons: it has ability to model genes (nodes) and define relationships between them (edges); it has a higher accuracy as compared with flat (filter and wrapper) methods, sequential backward elimination (SBE), correlation-based feature selection (CFS), minimum redundancy maximum relevance (mRMR), and sequential forward search (SFS).

Based on the interaction on membrane computing and evolutionary computation, the field of membrane-inspired evolutionary algorithms (MIEAs) has been introduced in the study [14]. After that, more studies have been done to mix the evolutionary algorithms and P systems (e.g., [2, 15, 16]). Some other studies also focused on hybridization of P system with optimization algorithms: for example, [17] combined P system with particle swarm optimization for the aim of minimizing nonlinear optimization problem, [18] combined P system with particle swarm optimization for the objective of enhancing accuracy of particle swarm optimization as well as overcoming the premature convergence, and [19] proposed a particle swarm optimization P system, the so-called PSOPS, and examined the model on seven-bench function optimization problem and concluded that effectiveness of method improved compared to PSO. Moreover, there are other combinations of PSO with membrane computing, for example, [2, 2022].

These reviews, of previous studies, prove the usefulness of introducing the P systems into EAs and particularly optimization algorithms to improve pure EAs and optimization algorithms. To the best of our knowledge, there is not any work focusing on the use of a kernel P system into optimization algorithms using all characteristics of a membrane system including parallel implementation and particularly in the scope of cancer dataset’s feature selection. In this paper, a hybrid model of a kernel P system with multiobjective particle swarm optimization is proposed to improve the performance measures to compare with pure multiobjective particle swarm optimization. The main contribution of this paper is to parallelize the implementation of the proposed KP-MObPSO model that will lead to building a membrane-inspired optimization model taking full advantage of membrane computing.

This article can be summarized as follows. () in Section 2, a brief of basic concepts is brought regarding KP system and MObPSO approaches that are used to build the proposed model. () In Section 3, first an overview of the proposed KP-MObPSO is explained and then the four steps of building KP-MObPSO are displayed in detail, namely, initialization, evolution, interaction with client, and collecting the final result. The last two steps define how the proposed KP-MObPSO model is parallelized via multicore. () In Section 4, technical explanations of executing KP-MObPSO on multicore are brought to provide a clear overview of parallelizing particles for swarm optimization. () Section 5 displays the type of cancer dataset, the methodology of the preprocessing dataset, and simulation of a proposed model via real dataset. () In Section 6, the performance of proposed KP-MObPSO model compared with pure MObPSO regarding measures such as accuracy and ROC. Finally, a conclusion and suggestion for future work are given in Section 7.

2. Preliminary Approaches

The proposed models in this study are based on the preliminary concepts and algorithms in multiobjective binary particle swarm optimization and kernel P system. MObPSO is already updated and improved through the rules of the kernel P system, the so-called KP-MObPSO.

2.1. The Kernel P System

According to [9, 23], A KP system of degree is a tuple, , where is a finite set of objects, called an alphabet; defines the membrane structure, which is a graph, , where represents vertices indicating compartments and belongs to a set of labels , and represents edges; , , is a compartment of the system consisting of a compartment type from and an initial multiset, , over ; is the output compartment, where the result is obtained (this will not be used in this study). Each rule may have a guard , in which case is applicable when is evaluated to true. Its generic form is . KP systems use a graph-like structure (similar to that of tissue P systems) and two types of rules:(1)Rules to process objects: these rules are used to transform objects or to move objects inside compartments or between compartments. These rules are called rewriting, communication, and input-output rules.(a)Rewriting and communication rule: , where , ,   finite regular expressions FE over ; at the right side is defined as = , where and , , is an object, and is a target, respectively.(b)The input-output rule: , where finite regular expressions FE over ; it means that can be sent from current compartment to the environment or can be brought from the environment to the target compartment.(2)System structure rules: these rules make a fundamental change in the topology of the membranes, for example, with division rule on a compartment, dissolution rule on a specific compartment, and making a link between compartments or dissolving the link between them. These rules are described as follows:(c1)Division rule: , where finite regular expressions FE over ; it means compartment can be replaced with number of compartments. All newly created compartments inherit objects and links of .(c2)Dissolution rule: ; it means compartment does not exist anymore as well as all its links with other compartments.(c3)Link-creation rule: ; it means a link will be created between compartment and compartment . If there is more than one compartment with the label , one of them will have a connection with nondeterministically.(c4)Link-destruction rule: ; it means the existing link between and will be eliminated and there will not be any link between them anymore. The same as link creation, if there are more than one compartment which has a link with then one of them will be selected nondeterministically to apply this rule.

2.2. The MObPSO Approaches

Optimization problems with multiple goals or objectives are referred to as multiobjective optimization (MOO) problems. Therefore, the objectives may estimate different aspects of solutions, which are partially or wholly in conflict. MOO can be defined as follows: optimize , where . A multiobjective searching concept is clearly described in [24].

Graph structure is one of the models of feature selection for classification. For example, a graph-based MObPSO algorithm [13] proposed to optimize average of node weights and edge weights at the same time through making different subgraphs. This algorithm is a feature selection model to highlight relevant and nonredundant genes in microarray datasets. The results of microarray datasets indicated that graph-based MObPSO produces better performance in comparison to SBE, CFS, mRMR, and SFS methods from the classification accuracy point of view. Multiobjective optimization has been vastly used in evolutionary algorithms [25]. Although execution time in such a technique, which is known as optimization technique, is not efficient, its time complexity is not much higher relative to other comparable methods [13]. MObPSO is designed for maximizing the dissimilarity (negative correlation) and signal-to-noise ratio (SNR); (1) and (2) are represented as edge weight and node weight, respectively. The population is initialized by arbitrarily selected features from the data matrix, and population-fitness values are calculated using dissimilarity and SNR average values. The archive, , is initialized to the population value after nondominated sorting of the primary population. Velocity and position are updated using (3) and (4). The local best is updated after comparing the current and previous fitness values of a particle, and the global best is updated according to randomly picking a particle from the archive.

3. Proposed KP-MObPSO Model and Multiple Core KP-MObPSO

The entire process of the proposed KP-MObPSO model is summarized in Algorithm 1. It consists of four main phases, including (i) initialization, (ii) evolution, (iii) selecting the minimum BestScore, and (iv) collecting the marker gene. Each phase is built based on defined objects and rules.

Begin
  (i) Initialize
  Run once to initialize pBestScore
it = 1
 (ii) Evolution
   (a) Run the rules
    by priority to get fitness value and replace with pBestScore in the case fitness < pBestScore
   (b) Converge curve =
   (c) = pBestScore/Converge curve
   (d) if and Converge curve is repeated the same amount at least three times,
     update the binary position of genes from 0 to 1 and from 1 to 0
till it = 100
 (iii) BestScore =
 (iv) collect marker genes

To implement the exact proposed sequential KP-MObPSO feature selection method on multiple cores, we have defined four stages: initialization, evolution, interaction with client, and collecting the final result. Based on the assumption for the entire model, there are 25 number of particles () divided into 4 compartments (compartment 1, compartment 2, compartment 3, and compartment 4) having 6 particles in compartments 1 to 3 and 7 particles in compartment 4. The number of compartments is chosen based on the number of logical cores in the machine used for execution of the model. A total number of iterations is 100 times in evolutionary step.

Objects are defined as : number of particles, Max_: maximum number of genes inside particles, : number of positions inside each particle, reserve,   : data source of all genes, Max_c: maximum number of genes inside particles, NGENES, NewNGENES, , , , sum_diss, sum_snr, FIT, : selected gene IDs, pBestScore. Rules are defined based on Table 1.


1: rewriting
2: communication
3: communication
Rules inside each

4: rewriting
,  

5: communication/rewriting
,   ,  
,  
6: Link creation
----
: communication/rewriting
,  

: division
: membrane dissolution
: link creation
-----
: communication/rewriting
,  
12: communication
r13: communication/rewriting
r14: output/link creation/communication & rewriting