[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

GPU implementation of evolving spiking neural P systems

Published: 07 September 2022 Publication History

Highlights

A novel parallel framework for evolving spiking neural P systems.
GPU implementation of the genetic algorithm employed in the parallel framework.
Adapting CuSNP design for the efficient simulation of spiking neural P systems in the parallel framework.
Reporting up to 9x of speedup of the GPU implementation versus the CPU counterpart for the parallel step, and up to 3x for the overall process.

Abstract

Methods for optimizing and evolving spiking neural P systems (in short, SN P systems) have been previously developed with the use of a genetic algorithm framework. So far, these computations, both evolving and simulating, were done only sequentially. Due to the non-deterministic and parallel nature of SN P systems, it is natural to harness parallel processors in implementing its evolution and simulation. In this work, a parallel framework for the evolution of SN P Systems is presented. This is the result of extending our previous work by implementing it on a CUDA-enabled graphics processing unit and adapting CuSNP design in simulations. Using binary addition and binary subtraction with 3 different categories each as initial SN P systems, the GPU-based evolution runs up to 9x faster with respect to its CPU-based evolution counterparts. Overall, when considering the whole process, the GPU framework is up to 3 times faster than the CPU version.

References

[1]
G. Păun, From Cells to (Silicon) Computers, and Back, Springer New York, New York, NY, 2008, pp. 343–371,. URL:https://doi.org/10.1007/978-0-387-68546-5_15.
[2]
G. Păun, Computing with membranes, J. Comput. Syst. Sci. 61 (1) (2000) 108–143.
[3]
G. Zhang, M. Gheorghe, L. Pan, M.J. Perez-Jimenez, Evolutionary membrane computing: a comprehensive survey and new results, Inf. Sci. 279 (2014) 528–551.
[4]
M. Gheorghe, G. Păun, M. Pérez-Jiménez, G. Rozenberg, Frontiers of membrane computing: Open problems and research topics, Intern. J. Found. Computer Sci. (2013) 171–249.
[5]
X. Huang, G. Zhang, H. Rong, F. Ipate, Evolutionary design of a simple membrane system, in: M. Gheorghe, G. Păun, G. Rozenberg, A. Salomaa, S. Verlan (Eds.), CMC 2011: Membrane Computing, Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 203–214.
[6]
Z. Ou, G. Zhang, T. Wang, X. Huang, Automatic design of cell-like p systems through tuning membrane structures, initial objects and evolution rules, Int. J. Unconv. Comput. 9 (5–6) (2013) 425–443.
[7]
G. Zhang, H. Rong, Z. Ou, M. Pérez-Jiménez, M. Gheorghe, Automatic design of deterministic and non-halting membrane systems by tuning syntactical ingredients, IEEE transactions on nanobioscience 13.
[8]
G. Păun, Spiking neural p systems. a tutorial, Bulletin of the European Association for Theoretical Computer Science EATCS.
[9]
J.R. Cheng, M. Gen, Parallel genetic algorithms with gpu computing, in: Industry 4.0-Impact on Intelligent Logistics and Manufacturing, IntechOpen, London, United Kingdom, 2020,.
[10]
F.G.C. Cabarle, H. Adorna, M.Á. Martínez-del-Amor, A spiking neural p system simulator based on cuda, in: M. Gheorghe, G. Păun, G. Rozenberg, A. Salomaa, S. Verlan (Eds.), CMC 2011: Membrane Computing, Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 87–103.
[11]
F.G.C. Cabarle, H. Adorna, M. Á. Martínez-del-Amor, An improved gpu simulator for spiking neural p systems, in: 2011 Sixth International Conference on Bio-Inspired Computing: Theories and Applications, IEEE, IEEE Computer Society, Washington, DC, United States, 2011, pp. 262–267.
[12]
F. Cabarle, H. Adorna, M.Á. Martínez-del-Amor, Simulating spiking neural p systems without delays using gpus, Int. J. Natural Computing Res. (IJNCR) 2 (2) (2011) 19–31.
[13]
F.G.C. Cabarle, H.N. Adorna, M.Á. Martínez-del-Amor, M.J. Pérez-Jiménez, Improving gpu simulations of spiking neural p systems, Romanian, J. Inform. Sci. Technol. 15 (2012) 5–20.
[14]
J. Carandang, J.M.B. Villaflores, F.G.C. Cabarle, H.N. Adorna, M.Á. Martínez-del-Amor, Cusnp: Spiking neural p systems simulators in cuda, Romanian, J. Inform. Sci. Technol. 20 (1) (2017) 57–70.
[15]
B.C.D. Aboy, E.J.A. Bariring, J.P. Carandang, F.G.C. Cabarle, R.T. De La Cruz, H.N. Adorna, M.Á. Martínez-del-Amor, Optimizations in cusnp simulator for spiking neural p systems on cuda gpus, in: 2019 International Conference on High Performance Computing Simulation (HPCS), IEEE, 2019, pp. 535–542,.
[16]
J. Sanders, E. Kandrot, CUDA by Example: An Introduction to General-Purpose GPU Programming, Pearson Education Inc, Boston, MA, United States, 2011.
[17]
A. Klöckner, N. Pinto, Y. Lee, B. Catanzaro, P. Ivanov, A. Fasih, PyCUDA and PyOpenCL: A Scripting-Based Approach to GPU Run-Time Code Generation, Parallel Comput. 38 (3) (2012) 157–174,.
[18]
L.J. Casauay, F.G.C. Cabarle, I.C.H. Macababayao, R.T.A. de la Cruz, H.N. Adorna, X. Zeng, M.Á. Martínez-del-Amor, A framework for evolving spiking neural p systems, Int. J. Unconventional Computing 16 (2–3) (2021) 121–139.
[19]
C.C.R. Zarate, F.G.C. Cabarle, I.C. Macababayao, R.T. De la Cruz, Evolving spiking neural p systems by fixing neurons, and varying rules and synapses, Philippine Computing Journal. (Special Issue on P systems) 14 (2) (2020) 21–30.
[20]
J.G.E. Juico, J.L. Silapan, F.G.C. Cabarle, I.C. Macababayao, R.T. De la Cruz, Evolving spiking neural p systems with polarization, Philippine Computing Journal. (Special Issue on P systems) 14 (2) (2020) 11–20.
[21]
M. Ionescu, G. Păun, T. Yokomori, Spiking neural P systems, Fundamenta Informaticae 71 (2, 3) (2006) 279–308.
[22]
K. Fatahalian, J. Sugerman, P. Hanrahan, Understanding the efficiency of gpu algorithms for matrix-matrix multiplication, in: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, Association for Computing Machinery, New York, United States, 2004, pp. 133–137.
[23]
X. Zeng, H. Adorna, M.Á. Martínez-del-Amor, L. Pan, M.J. Pérez-Jiménez, Matrix representation of spiking neural p systems, in: M. Gheorghe, T. Hinze, G. Păun, G. Rozenberg, A. Salomaa (Eds.), Membrane Computing, Springer Berlin Heidelberg, Berlin, Heidelberg, 2011, pp. 377–391.
[24]
J. Holland, Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence, MIT Press, Cambridge, MA, USA, 1992.
[25]
R.L. Haupt, S.E. Haupt, The Binary Genetic Algorithm, Ch. 2, John Wiley & Sons Ltd, Hoboken, New Jersey, 2003, pp. 27–50,. arXiv:https://onlinelibrary.wiley.com/doi/pdf/10.1002/0471671746.ch2, URL:https://onlinelibrary.wiley.com/doi/abs/10.1002/0471671746.ch2.
[26]
D. Luebke, Data parallel computing, D.B. Kirk, W.H. Wen-Mei (Eds.), Programming Massively Parallel Processors (Third Edition), Ch. 2, Morgan Kaufmann, Cambridge, MA, USA, 2017, pp. 19–41,. URL:http://www.sciencedirect.com/science/article/pii/B9780128119860000029.
[27]
L.F. Macías-Ramos, I. Pérez-Hurtado, M. García-Quismondo, L. Valencia-Cabrera, M.J. Pérez-Jiménez, A. Riscos-Núñez, A p–lingua based simulator for spiking neural p systems, in: M. Gheorghe, G. Păun, G. Rozenberg, A. Salomaa, S. Verlan (Eds.), Membrane Computing, Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 257–281.
[28]
D. Gusfield, Algorithms on stings, trees, and sequences: Computer science and computational biology, Acm Sigact News 28 (4) (1997) 41–60.
[29]
Coare website, last accessed December 2020. URL:https://asti.dost.gov.ph/coare/wiki/Main/.
[30]
J. Dong, M. Stachowicz, G. Zhang, M. Cavaliere, H. Rong, P. Paul, Automatic design of spiking neural p systems based on genetic algorithms, Int. J. Unconv. Comput. 16 (2–3) (2021) 201–216.
[31]
K.O. Stanley, R. Miikkulainen, Evolving neural networks through augmenting topologies, Evolutionary computation 10 (2) (2002) 99–127.
[32]
L.L. Custode, H. Mo, G. Iacca, Neuroevolution of spiking neural p systems, in: International Conference on the Applications of Evolutionary Computation (Part of EvoStar), Springer, 2022, pp. 435–451.
[33]
L.L. Custode, H. Mo, A. Ferigo, G. Iacca, Evolutionary optimization of spiking neural p systems for remaining useful life prediction, Algorithms 15 (3) (2022) 98.
[34]
T. Song, L. Pan, T. Wu, P. Zheng, M.D. Wong, A. Rodríguez-Patón, Spiking neural p systems with learning functions, IEEE Trans. Nanobioscience 18 (2) (2019) 176–190.
[35]
T. Wu, L. Pan, Q. Yu, K.C. Tan, Numerical spiking neural p systems, IEEE Trans. Neural Networks Learn. Syst. 32 (6) (2020) 2443–2457.
[36]
M.A. Martínez-del-Amor, D. Orellana-Martín, I. Pérez-Hurtado, F.G.C. Cabarle, H.N. Adorna, Simulation of spiking neural p systems with sparse matrix-vector operations, Processes 9 (4). URL:https://www.mdpi.com/2227-9717/9/4/690.
[37]
M.Á. Martínez-del-Amor, I. Pérez-Hurtado, D. Orellana-Martín, M.J. Pérez-Jiménez, Adaptative parallel simulators for bioinspired computing models, Future Generation Computer Systems 107 (2020) 469–484,. URL:http://www.sciencedirect.com/science/article/pii/S0167739X19308817.
[38]
R. Ceterchi, A.I. Tomescu, Spiking neural p systems–a natural model for sorting networks, in: Proceedings of the Sixth Brainstorming Week on Membrane Computing, 4–8 February 2008, Fénix Editora, Sevilla, Spain, 2008, pp. 93–105.
[39]
D. Abrahams, A. Gurtovoy, C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond (C++ in Depth Series), Addison-Wesley Professional, Boston, Massachusetts, United States, 2004.
[40]
L. Valencia-Cabrera, I. Pérez-Hurtado, M.Á. Martínez-del-Amor, Simulation challenges in membrane computing, J. Membrane Computing 2 (2020) 1–11,.
[41]
I. Pérez-Hurtado, D. Orellana-Martín, M.A. Martínez-del-Amor, L. Valencia-Cabrera, A. Riscos-Núñez, A new p-lingua toolkit for agile development in membrane computing, Inf. Sci. 587 (2022) 1–22,.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Neurocomputing
Neurocomputing  Volume 503, Issue C
Sep 2022
364 pages

Publisher

Elsevier Science Publishers B. V.

Netherlands

Publication History

Published: 07 September 2022

Author Tags

  1. Membrane computing
  2. Spiking neural P systems
  3. Genetic algorithm
  4. Evolutionary computing
  5. GPU computing
  6. CUDA

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Steps toward a homogenization procedure for spiking neural P systemsTheoretical Computer Science10.1016/j.tcs.2023.114250981:COnline publication date: 4-Jan-2024
  • (2024)Spiking neural P systems with neuron permeabilityNeurocomputing10.1016/j.neucom.2024.127351576:COnline publication date: 25-Jun-2024
  • (2024)A general neural membrane computing modelInformation Sciences: an International Journal10.1016/j.ins.2024.120686672:COnline publication date: 1-Jun-2024
  • (2023)Spiking neural P system with synaptic vesicles and applications in multiple brain metastasis segmentationInformation Sciences: an International Journal10.1016/j.ins.2023.01.016625:C(620-638)Online publication date: 1-May-2023

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media