Skip to main content

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 3,499.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 549.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Abbreviations

Active membranes :

P systems whose rules involve not only objects, but also membranes, are called systems with active membranes. By using such rules one can both specify the way the objects can be processed and moved (for instance, the rule \( { a[_i]_i \rightarrow [_i b]_i } \) says that object a can enter membrane with label i and gets transformed into b), and the way the membrane structure itself can be transformed (membranes can be dissolved, created, divided, merged, etc.).

Evolution rule :

The multisets of objects evolve by means of rules corresponding to chemical reactions and to other processes taking place in a cell. The abstract counterpart of a chemical reaction is a multiset rewriting rule, of the form \( { u \rightarrow v } \), where u and v are strings representing multisets. For instance, \( { aad \rightarrow abc } \) is a rule with the meaning that 2 copies of object a react with one copy of object d, these copies are consumed, and as a result we produce one copy of each of \( { a,b } \), and c (hence one copy of a is reproduced). Such a rule is said to be cooperative (several objects react); particular cases are those of catalytic rules, of the form \( { ca \rightarrow cv } \), with c being a catalyst which assists object a in getting transformed in the multiset v, and of non‐cooperative rules, where only one object evolves, \( { a \rightarrow u } \) (a is an object and u a multiset).

Besides such multiset rewriting rules, there are many other types of rules corresponding to bio‐chemical processes or mathematically inspired: rules for handling membranes (create, merge, divide, etc.), to move objects across membranes, and combinations of rules.

Halting :

Successful computations are usually defined in terms of halting: a computation stops when it reaches a configuration where no rule can be applied in the whole system. A weaker condition is to consider the computation finished when at least one compartment of the system cannot apply any of its rules (this is called local halting).

Membrane structure :

The cells are separated from the environment by a membrane; the internal compartments of a cell (nucleus, mitochondria, Golgi apparatus, vesicles, etc.) are also delimited by membranes. A membrane is a separator of a compartment, and it also has filtering properties (only certain substances, in certain conditions, can pass through a membrane). In a cell, the membranes are hierarchically arranged, and they delimit “protected reactors”, compartments where specific chemicals evolve according to specific reactions. Such a cell-like arrangement of membranes is called membrane structure. In membrane computing, the complexity (number of membranes and of levels) of membrane structures is not restricted.

A cell-like (hence hierarchical) membrane structure corresponds to a tree, hence a natural representation is by means of a tree or any mathematical representation of a tree, for instance, by means of expressions of labeled parentheses (a pair of parentheses is associated with a membrane). For instance \( \smash{ [_1[_2\,]_2[_3\,]_3]_1 } \) describes the membrane structure consisting of two membranes, with labels 2 and 3, placed in a membrane with label 1.

Besides cell-like membrane structures, in membrane computing one also considers tissue‐like systems, hence with elementary membranes (i. e., membranes without any membrane inside) placed in the nodes of an arbitrary graph.

Multiset :

multiset is a set with multiplicities associated with its elements. For instance, \( { \{(a,2), (b,3)\} } \) is the multiset consisting of 2 copies of element a and 3 copies of element b. Mathematically, a multiset is identified with a mapping μ from a universe set U (an alphabet) to N, the set of natural numbers, \( { \mu \colon U \longrightarrow \mathbf{N} } \). In the previous case, U can be any superset of \( { \{a,b\} } \), for instance, \( { U=\{a,b,c\} } \), and \( { \mu(a)=2,\mu(b)=3, \mu(c)=0 } \). A compact representation of a multiset is by strings: any string w over U represents a multiset, with the number of occurrences of a symbol in w being the multiplicity of that element in the multiset represented by w. Consequently, any permutation of a string represents the same multiset. In the previous case, any permutation of the string \( \smash{ a^2b^3 } \), for instance, \( \smash{ ab^2ab } \) represents the multiset μ defined above. Multisets can also be considered on infinite universe sets or even with multiplicities being negative or non‐integer numbers.

In membrane computing, multisets model solutions, chemical “objects” (ions, small molecules, macromolecules, etc.) swimming in water, in the same compartment of a cell, with the multiplicity of each object relevant for the bio‐chemistry taking place in that compartment.

P system :

The computing devices investigated in membrane computing are called P systems. Basically, such a system consists of a membrane structure, with multisets of objects placed in its compartments and sets of evolution rules associated with either the compartments or the membranes. The objects evolve according to the local rules (the objects can also pass across membranes, from a compartment to an adjacent compartment). Also the membrane structure can evolve. Depending on the form of the membrane structure, there are cell-like P systems, tissue‐like P systems, with neural P systems being an important subclass of the latter.

Specifying a P system means to define its initial configuration (the membrane structure and the multisets of objects present in each compartment) and its evolution rules, as well as the way of using the rules (hence the transition among configurations), the successful computations, and the output of a computation. There are many possibilities from all these points of view.

Parallelism :

Most computer science investigations in membrane computing deal with synchronized P systems, where a global clock marks the time for the whole system and each compartment/membrane evolves in each time unit, hence in a parallel way. In many cases, the rules are also used in parallel in each compartment: (like in bio‐chemistry) all rules which can be applied are applied to the existing objects. This is the so‐called maximal parallelism (objects are assigned to rules until no further rule can be applied). There are many variants: minimal parallelism (if at least one rule can be used in a compartment of a P system, then at least one must be used), bounded parallelism (at least, at most, or exactly k rules are used, for a given k), and so on. The rules can also be used sequentially (one in each compartment), or the system can be asynchronous.

Spiking neural P system :

Neurons are linked in a tissue‐like way, communicating along axons by means of spikes, electrical impulses of a constant shape and voltage, with the frequency (distance in time between consecutive spikes) carrying information. Based on these neurological facts, spiking neural P systems are defined: neurons are represented by membranes, where copies of the single object a, representing the spike, are placed; these membranes are associated with nodes of a graph whose edges represent the synapses; rules for processing spikes are provided in each neuron, and in this way computations are defined.

Symport/antiport :

An important way of selectively passing chemicals across biological membranes is the coupled transport through protein channels. The process of moving two or more objects in the same direction is called symport; the process of simultaneously moving two or more objects across a membrane, in opposite directions, is called antiport. For uniformity, the particular case of moving only one object is called uniport.

In membrane computing, a symport rule is written in the form \( { (u,in) } \) or \( { (u,out) } \), meaning that the objects specified by (the multiset represented by) the string u can enter, or respectively exit, the membrane to which the rule is associated. An antiport rule is written in the form \( { (u,out;v,in) } \), meaning that the objects of u exit from and, simultaneously, those of v enter in the membrane with which the rule is associated.

Tissue P system :

P systems consisting of one‐membrane cells placed in the nodes of a graph are called tissue‐like P systems. The channels between cells can be given in advance, fixed, or they can evolve during the computation. A class of tissue‐like P systems with a dynamic structure of channels among cells is that of population P systems (with motivation and applications related to populations/colonies of bacteria).

Universality :

A computing model which is equivalent in power with Turing machines (the Standardabweichung model of algorithmic computing) is said to be computationally complete, or Turing complete. In membrane computing, many classes of P systems are Turing complete. Because the proofs are constructive (Turing machines or equivalent devices, such as counter/register machines, Chomsky grammars, etc., are simulated by means of P systems), the computing completeness also means universality in the restricted sense, of the existence of a programmable device, which can simulate any device in a given class after taking as input a “code” of the particular device.

Bibliography

Primary Literature

  1. Chen H, Ionescu M, Ishdorj TO (2006) On the efficiency of spiking neural P systems. In: Proceedings of 8th International Conference on Electronics, Information, and Communication. Ulanbator, Mongolia, June 2006, pp 49–52

    Google Scholar 

  2. Ciobanu G, Păun G, Pérez‐Jiménez MJ (eds) (2006) Applications of Membrane Computing. Springer, Berlin

    Google Scholar 

  3. Ibarra OH (2004) The number of membranes matters. In: Martín-Vide et al (eds) International Workshop, 1044 WMC2003, Tarragona,Reviced Papers LNCS, vol 2911. Springer, Berlin, pp 218–231

    Google Scholar 

  4. Ibarra OH, Yen HC (2006) Deterministic catalytic systems are not universal. Theor Comput Sci 363(2):149–161

    MathSciNet  MATH  Google Scholar 

  5. Ionescu M, Păun G, Yokomori T (2006) Spiking neural P systems. Fundam Inform 71(2–3):279–308

    Google Scholar 

  6. Korec I (1996) Small universal register machines. Theor Comput Sci 168(2):267–301

    MathSciNet  MATH  Google Scholar 

  7. Nishida TY (2004) An application of P systems: A new algorithm for NP‐complete optimization problems. In: Callaos N et al (eds) Proceedings of the 8th World Multi‐Conference on Systems, Cybernetics and Informatics, vol V. pp 109–112

    Google Scholar 

  8. Păun A, Păun G (2007) Small universal spiking neural P systems. BioSystems 90(1):48–60

    Google Scholar 

  9. Păun G (1998/2000) Computing with membranes. J Comput Syst Sci 61(1):108–143. (and Turku Center for Computer ScienceReport – TUCS 208, November (1998) http://www.tucs.fi)

  10. Păun G (2002) Membrane Computing. An Introduction. Springer, Berlin

    Google Scholar 

Books and Reviews

  1. Alhazov A, Freund R, Rogozhin Y (2006) Computational power of symport/antiport: history, advances, and open problems. In:Freund R et al (eds) Springer, Berlin, pp 44–78

    Google Scholar 

  2. Bernardini F, Gheorghe M (2004) Population P systems. J Univers Comput Sci 10(5):509–539

    MathSciNet  Google Scholar 

  3. Calude CS, Păun G, Rozenberg G, Salomaa A (eds) (2001) Multiset Processing. Mathematical, Computer Science, and Molecular Computing Points of View. LNCS, vol 2235. Springer, Berlin

    Google Scholar 

  4. Cardelli L, Păun G (2006) An universality result for a (mem)brane calculus based on mate/drip operations. Int J Found Comput Sci 17(1):49–68

    Google Scholar 

  5. Ciobanu G, Pan L, Păun G, Pérez‐Jiménez MJ (2007) P systems with minimal parallelism. Theor Comput Sci 378(1):117–130

    Google Scholar 

  6. Csuhaj‐Varjú E (2005) P automata. Models, results, and research topics. In: Mauri G et al (eds) Springer, Berlin, pp 1–11

    Google Scholar 

  7. Freund R, Kari L, Oswald M, Sosik P (2005) Computationally universal P systems without priorities: two catalysts are sufficient. Theor Comput Sci 330(2):251–266

    MathSciNet  MATH  Google Scholar 

  8. Freund R, Păun G, Rozenberg G, Salomaa A (eds) (2006) Membrane Computing. In: 6th International Workshop, WMC6, Vienna, Austria, July 2005, Revised, Selected, and Invited Papers. LNCS, vol 3859. Springer, Berlin

    Google Scholar 

  9. Gutiérrez‐Naranjo MA, Păun G, Pérez‐Jiménez MJ (eds) (2005) Cellular Computing. Complexity Aspects. Fenix Editora, Sevilla

    Google Scholar 

  10. Hoogeboom HJ, Păun G, Rozenberg G, Salomaa A (eds) (2006) Membrane Computing. In: International Workshop, WMC7, Leiden, The Netherlands, 2006, Revised, Selected, and Invited Papers. LNCS, vol 4361. Springer, Berlin

    Google Scholar 

  11. Huang L, Wang N (2006) An optimization algorithms inspired by membrane computing. In: Jiao L et al (eds) Proc. ICNC (2006). LNCS, vol 4222. Springer, Berlin, pp 49–55

    Google Scholar 

  12. Jonoska N, Margenstern M (2004) Tree operations in P systems and λ‑calculus. Fundam Inform 59(1):67–90

    MathSciNet  MATH  Google Scholar 

  13. Kleijn J, Koutny M (2006) Synchrony and asynchrony in membrane systems. In: Hoogeboom HJ et al (eds) Springer, Berlin, pp 66–85

    Google Scholar 

  14. Leporati A, Mauri G, Zandron C (2006) Quantum sequential P systems with unit rules and energy assigned to membranes. In: Freund R et al (eds) Springer, Berlin, pp 310–325

    Google Scholar 

  15. Manca V (2006) MP systems approaches to biochemical dynamics: biological rhythms and oscillations. In: Hoogeboom HJ et al (eds) Springer, Berlin, pp 86–99

    Google Scholar 

  16. Martín-Vide C, Mauri G, Păun G, Rozenberg G, Salomaa A (eds) (2004) Membrane Computing. In: International Workshop, WMC2003, Tarragona, Spain, Revised Papers LNCS, vol 2933. Springer, Berlin

    Google Scholar 

  17. Mauri G, Păun G, Pérez‐Jiménez MJ, Rozenberg G, Salomaa A (eds) (2005) Membrane Computing. In: International Workshop, WMC5, Milano, Italy, 2004, Selected Papers. LNCS, vol 3365. Springer, Berlin

    Google Scholar 

  18. Păun A, Păun G (2002) The power of communication: P systems with symport/antiport. New Gener Comput 20(3):295–306

    Google Scholar 

  19. Păun A, Pérez‐Jiménez MJ, Romero‐Campero FJ (2006) Modeling signal transduction using P systems. In: Hoogeboom HJ et al (eds) Springer, Berlin, pp 100–122

    Google Scholar 

  20. Păun G (2001) P systems with active membranes: Attacking NP‐complete problems. J Autom, Lang Comb 6(1):75–90

    Google Scholar 

  21. Păun G, Păun R (2005) Membrane computing as a framework for modeling economic processes. In: Proceedings of Conference SYNASC, Timişoara. Press IEEE, pp 11–18

    Google Scholar 

  22. Păun G, Pazos J, Pérez‐Jiménez MJ, Rodriguez‐Patón A (2005) Symport/antiport P systems with three objects are universal. Fundam Inform 64(1–4):353–367

    Google Scholar 

  23. Păun G, Pérez‐Jiménez MJ, Salomaa A (2007) Spiking neural P systems. An early survey. Int J Found Comput Sci 18:435–456

    Google Scholar 

  24. Păun G, Rozenberg G (2002) A guide to membrane computing. Theor Comput Sci 287(1):73–100

    Google Scholar 

  25. Păun G, Rozenberg G, Salomaa A, Zandron C (eds) (2003) Membrane Computing. International Workshop, WMC 2002, Curtea de Argeş, Romania, August 2002. Revised Papers. LNCS, vol 2597. Springer, Berlin

    Google Scholar 

  26. Pérez‐Jiménez MJ (2005) An approach to computational complexity in membrane computing. In: Mauri G et al (eds) Springer, Berlin, pp 85–109

    Google Scholar 

  27. Pérez‐Jiménez MJ, Romero‐Jiménez A, Sancho‐Caparrini F (2002) Teoria de la complejidad en modelos de computacion celular con membranas. Kronos Editorial, Sevilla

    Google Scholar 

  28. Sosik P, Rodriguez‐Patón A (2007) Membrane computing and complexity theory: A characterization of International PSPACE. J Found Comput Sci 73(1):137–152

    Google Scholar 

  29. Zaharie D, Ciobanu G (2006) Distributed evolutionary algorithms inspired by membranes in solving continuous optimization problems. In:Hoogeboom HJ et al (eds) Springer, Berlin, pp 536–554

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag

About this entry

Cite this entry

PĂun, G. (2009). Membrane Computing. In: Meyers, R. (eds) Encyclopedia of Complexity and Systems Science. Springer, New York, NY. https://doi.org/10.1007/978-0-387-30440-3_328

Download citation

Publish with us

Policies and ethics