Simulating Spiking Neural P Systems Without Delays Using GPUs

We present in this paper our work regarding simulating a type of P system known as a spiking neural P system (SNP system) using graphics processing units (GPUs). GPUs, because of their architectural optimization for parallel computations, are well-suited for highly parallelizable problems. Due to the advent of general purpose GPU computing in recent years, GPUs are not limited to graphics and video processing alone, but include computationally intensive scientific and mathematical applications as well. Moreover P systems, including SNP systems, are inherently and maximally parallel computing models whose inspirations are taken from the functioning and dynamics of a living cell. In particular, SNP systems try to give a modest but formal representation of a special type of cell known as the neuron and their interactions with one another. The nature of SNP systems allowed their representation as matrices, which is a crucial step in simulating them on highly parallel devices such as GPUs. The highly parallel nature of SNP systems necessitate the use of hardware intended for parallel computations. The simulation algorithms, design considerations, and implementation are presented. Finally, simulation results, observations, and analyses using an SNP system that generates all numbers in $\mathbb N$ - {1} are discussed, as well as recommendations for future work.

[1]  Malcolm James Beynon,et al.  The Exposition of Fuzzy Decision Trees and their Application in Biology , 2008 .

[2]  Enrique Alba,et al.  Nature-Inspired Informatics for Telecommunication Network Design , 2010, Nature-Inspired Informatics for Intelligent Applications and Knowledge Discovery.

[3]  Ana Belén Porto Pazos,et al.  Advancing Artificial Intelligence through Biological Process Applications , 2008 .

[4]  José M. García,et al.  Simulating a P system based efficient solution to SAT by using GPUs , 2010, J. Log. Algebraic Methods Program..

[5]  Gabriel Ciobanu,et al.  P Systems Running on a Cluster of Computers , 2003, Workshop on Membrane Computing.

[6]  Leandro Nunes de Castro Natural Computing for Simulation and Knowledge Discovery , 2013 .

[7]  Mario J. Pérez-Jiménez,et al.  A software tool for verification of Spiking Neural P Systems , 2008, Natural Computing.

[8]  Michael Garland,et al.  Understanding throughput-oriented architectures , 2010, Commun. ACM.

[9]  Mark J. Harris Mapping computational concepts to GPUs , 2005, SIGGRAPH Courses.

[10]  Sanjay K. Dwivedi,et al.  English to Hindi Paraphrase Convention for Translating Homoeopathy Literature , 2012, Int. J. Artif. Life Res..

[11]  James Demmel,et al.  Benchmarking GPUs to tune dense linear algebra , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

[12]  Van Nguyen,et al.  A Region-Oriented Hardware Implementation for Membrane Computing Applications , 2009, Workshop on Membrane Computing.

[13]  Gabriel Ciobanu,et al.  Applications of Membrane Computing , 2006, Applications of Membrane Computing.

[14]  Frederico G. Guimarães,et al.  A New Differential Evolution Based Metaheuristic for Discrete Optimization , 2010, Int. J. Nat. Comput. Res..

[15]  Gheorghe Paun,et al.  Computing with Membranes , 2000, J. Comput. Syst. Sci..

[16]  Raymond Chiong Nature-Inspired Informatics for Intelligent Applications and Knowledge Discovery: Implications in Business, Science, and Engineering , 2010, Nature-Inspired Informatics for Intelligent Applications and Knowledge Discovery.

[17]  Yao Zhang,et al.  Parallel Computing Experiences with CUDA , 2008, IEEE Micro.

[18]  Leandro Nunes de Castro,et al.  Nature-Inspired Computing Design, Development, and Applications , 2012 .

[19]  David Kearney,et al.  An extensible, maintainable and elegant approach to hardware source code generation in Reconfig-P , 2010, J. Log. Algebraic Methods Program..

[20]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[21]  Pat Hanrahan,et al.  Understanding the efficiency of GPU algorithms for matrix-matrix multiplication , 2004, Graphics Hardware.

[22]  Gheorghe Paun,et al.  The Oxford Handbook of Membrane Computing , 2010 .

[23]  Haiming Chen,et al.  Spiking neural P systems with extended rules: universality and languages , 2006, Natural Computing.

[24]  Jie Cheng,et al.  Programming Massively Parallel Processors. A Hands-on Approach , 2010, Scalable Comput. Pract. Exp..

[25]  José M. García,et al.  Simulation of P Systems with Active Membranes on CUDA , 2010, 2009 International Workshop on High Performance Computational Systems Biology.

[26]  Oscar H. Ibarra,et al.  On spiking neural P systems , 2006, Natural Computing.

[27]  Xiangxiang Zeng,et al.  Matrix Representation of Spiking Neural P Systems , 2010, Int. Conf. on Membrane Computing.

[28]  Florentin Ipate,et al.  Towards Automated Verification of P Systems Using Spin , 2011, Int. J. Nat. Comput. Res..

[29]  Eleonora Bilotta,et al.  Cellular Automata and Complex Systems: Methods for Modeling Biological Phenomena , 2010 .

[30]  Henry N. Adorna,et al.  When Matrices Meet Brains , 2010 .