Structured Grid Algorithms Modelled with Complex Objects

  • Radu Nicolescu
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9504)


We present a simple membrane computing model for a typical structured grid algorithm: a parallel and distributed seeded region growing algorithm for gray images. With a proper granularity, the system can be efficiently mapped to a distributed Actor system, possibly a cloud-based Actor system. The image pixels are partitioned in rectangular sub-images, which are modeled as complex cells and evolve via inter-cell parallelism. Pixels inside a cell are modeled as sub-cellular objects and evolve via intra-cell parallelism. The presented model is synchronous, but can be further extended to an asynchronous version. Each cell can be efficiently implemented on a multi-core or many-core architecture and cells can communicate their boundary data via messages.


Membrane computing P systems Inter-cell parallelism Intra-cell parallelism Prolog terms Complex objects Generic rules Image processing Seeded region growing Parallel and concurrent models Synchronous and asynchronous models Termination detection Message-based Actor model Computation and communication patterns The 13 Berkeley dwarfs 



We are deeply indebted to the anonymous reviewers for their valuable comments and suggestions.


  1. 1.
    The landscape of parallel computing research: A view from Berkeley, Revision as of 22:32 (2008). Accessed 17 November 2008
  2. 2.
    Agha, G., Thati, P.: An algebraic theory of actors and its application to a simple object-based language. In: Owe, O., Krogdahl, S., Lyche, T. (eds.) From Object-Orientation to Formal Methods. LNCS, vol. 2635, pp. 26–57. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Asanovic, K., Bodik, R., Catanzaro, B.C., Gebis, J.J., Husbands, P., Keutzer, K., Patterson, D.A., Plishker, W.L., Shalf, J., Williams, S.W., Yelick, K.A.: The landscape of parallel computing research: A view from Berkeley. Tech. report UCB/EECS-2006-183, EECS Department, University of California, Berkeley, December 2006.
  4. 4.
    Bernstein, P.A., Bykov, S., Geller, A., Kliot, G., Thelin, J.: Orleans: Distributed virtual actors for programmability and scalability. Tech. report MSR-TR-2014-41, March 2014.
  5. 5.
    Braünl, T., Feyrer, S., Rapf, W., Reinhardt, M.: Parallel Image Processing. Springer, Heidelberg (2010). Reprint editionGoogle Scholar
  6. 6.
    Balanescu, T., Nicolescu, R., Wu, H.: Asynchronous P systems. Int. J. Nat. Comput. Res. 2(2), 1–18 (2011)CrossRefGoogle Scholar
  7. 7.
    Bykov, S., Geller, A., Kliot, G., Larus, J., Pandya, R., Thelin, J.: Orleans: cloud computing for everyone. In: ACM Symposium on Cloud Computing (SOCC 2011). ACM, October 2011.
  8. 8.
    Díaz-Pernil, D., Peña-Cantillana, F., Gutiérrez-Naranjo, M.A.: A parallel algorithm for skeletonizing images by using spiking neural P systems. Neurocomputing 115, 81–91 (2013)CrossRefGoogle Scholar
  9. 9.
    Dinneen, M.J., Kim, Y.-B., Nicolescu, R.: A faster P solution for the byzantine agreement problem. In: Gheorghe, M., Hinze, T., Paun, G., Rozenberg, G., Salomaa, A. (eds.) CMC 2010. LNCS, vol. 6501, pp. 175–197. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  10. 10.
    Dinneen, M.J., Kim, Y.B., Nicolescu, R.: P systems and the Byzantine agreement. J. Logic Algebraic Program. 79(6), 334–349 (2010)zbMATHMathSciNetCrossRefGoogle Scholar
  11. 11.
    ElGindy, H., Nicolescu, R., Wu, H.: Fast distributed DFS solutions for edge-disjoint paths in digraphs. In: Csuhaj-Varjú, E., Gheorghe, M., Rozenberg, G., Salomaa, A., Vaszil, G. (eds.) CMC 2012. LNCS, vol. 7762, pp. 173–194. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  12. 12.
    Gimel’farb, G., Nicolescu, R., Ragavan, S.: P systems in stereo matching. In: Real, P., Diaz-Pernil, D., Molina-Abril, H., Berciano, A., Kropatsch, W. (eds.) CAIP 2011, Part II. LNCS, vol. 6855, pp. 285–292. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  13. 13.
    Gimel’farb, G., Nicolescu, R., Ragavan, S.: P system implementation of dynamic programming stereo. J. Math. Imag. Vis. 47(1–2), 13–26 (2013). zbMATHCrossRefGoogle Scholar
  14. 14.
    Hewitt, C.: Viewing control structures as patterns of passing messages. Artif. Intell. 8(3), 323–364 (1977). CrossRefGoogle Scholar
  15. 15.
    Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco (1996)zbMATHGoogle Scholar
  16. 16.
    Nicolescu, R.: Parallel and distributed algorithms in P systems. In: Gheorghe, M., Paun, G., Rozenberg, G., Salomaa, A., Verlan, S. (eds.) CMC 2011. LNCS, vol. 7184, pp. 35–50. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  17. 17.
    Nicolescu, R.: Parallel thinning with complex objects and actors. In: Gheorghe, M., Rozenberg, G., Salomaa, A., Sosík, P., Zandron, C. (eds.) CMC 2014. LNCS, vol. 8961, pp. 330–354. Springer, Heidelberg (2014)Google Scholar
  18. 18.
    Nicolescu, R., Gimel’farb, G., Morris, J., Gong, R., Delmas, P.: Regularising ill-posed discrete optimisation: quests with P systems. Fundam. Inf. 131(3–4), 465–483 (2014)zbMATHMathSciNetGoogle Scholar
  19. 19.
    Nicolescu, R., Ipate, F., Wu, H.: Programming P systems with complex objects. In: Alhazov, A., Cojocaru, S., Gheorghe, M., Rogozhin, Y., Rozenberg, G., Salomaa, A. (eds.) CMC 2013. LNCS, vol. 8340, pp. 280–300. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  20. 20.
    Nicolescu, R., Ipate, F., Wu, H.: Towards high-level P systems programming using complex objects. In: Alhazov, A., Cojocaru, S., Gheorghe, M., Rogozhin, Y. (eds.) 14th International Conference on Membrane Computing, CMC 2014, Chisinau, Moldova, 20–23 August 2013, Proceedings, pp. 255–276. Institute of Mathematics and Computer Science, Academy of Sciences of Moldova, Chisinau (2013)Google Scholar
  21. 21.
    Nicolescu, R., Wu, H.: BFS solution for disjoint paths in P systems. In: Calude, C.S., Kari, J., Petre, I., Rozenberg, G. (eds.) UC 2011. LNCS, vol. 6714, pp. 164–176. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  22. 22.
    Nicolescu, R., Wu, H.: New solutions for disjoint paths in P systems. Nat. Comput. 11, 637–651 (2012). MathSciNetCrossRefGoogle Scholar
  23. 23.
    Nicolescu, R., Wu, H.: Complex objects for complex applications. Rom. J. Inf. Sci. Technol. 17(1), 46–62 (2014)Google Scholar
  24. 24.
    Peña-Cantillana, F., Berciano, A., Díaz-Pernil, D., Gutiérrez-Naranjo, M.A.: Parallel skeletonizing of digital images by using cellular automata. In: Ferri, M., Frosini, P., Landi, C., Cerri, A., Di Fabio, B. (eds.) CTIC 2012. LNCS, vol. 7309, pp. 39–48. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  25. 25.
    Paun, G., Rozenberg, G., Salomaa, A.: The Oxford Handbook of Membrane Computing. Oxford University Press Inc., New York (2010)zbMATHCrossRefGoogle Scholar
  26. 26.
    Reina-Molina, R., Díaz-Pernil, D.: Bioinspired parallel 2D or 3D skeletonization. IMAGEN-A 3(5), 41–44 (2013)Google Scholar
  27. 27.
    Reina-Molina, R., Díaz-Pernil, D., Gutiérrez-Naranjo, M.A.: Cell complexes and membrane computing for thinning 2D and 3D images. In: del Amor, M.A.M., Paun, G., Pérez-Hurtado, I., Romero-Campero, F.J. (eds.) Tenth Brainstorming Week on Membrane Computing. RGNC REPORT, vol. 1, pp. 91–110. Universidad de Sevilla (2012)Google Scholar
  28. 28.
    Syme, D., Granicz, A., Cisternino, A.: Expert F# 3.0, 3rd edn. Apress, Berkely (2012)CrossRefGoogle Scholar
  29. 29.
    Wu, H.: Minimum spanning tree in P systems. In: Pan, L., Paun, G., Song, T. (eds.) Proceedings of the Asian Conference on Membrane Computing (ACMC2012), pp. 88–104. Huazhong University of Science and Technology, Wuhan (2012)Google Scholar
  30. 30.
    Wu, H.: Distributed Algorithms in P Systems. Ph.D. thesis, The University of Auckland, Auckland, New Zealand (2014)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of AucklandAucklandNew Zealand

Personalised recommendations