Presentation is loading. Please wait.

Presentation is loading. Please wait.

MEMBRANE COMPUTING Faculty of Informatics Vienna University of Technology Wien, Austria Rudolf FREUND MOLECULAR COMPUTING.

Similar presentations


Presentation on theme: "MEMBRANE COMPUTING Faculty of Informatics Vienna University of Technology Wien, Austria Rudolf FREUND MOLECULAR COMPUTING."— Presentation transcript:

1 MEMBRANE COMPUTING Faculty of Informatics Vienna University of Technology Wien, Austria Rudolf FREUND MOLECULAR COMPUTING

2 Molecular Computing Overview ► DNA Computing ► Membrane Computing ● Splicing, Watson-Crick complementarity ● Test tube systems (universality) ● P systems - a general model ● Future Research ● Related Models ● P systems - selected results

3 one of the most emerging fields in computer science brings together computer scientists and biologists opens new possibilities for both fields: - computers help in decoding the sequences of DNA in genes, - allow for the simulation of biological processes etc., - computer scientists learn from nature, - face the challenge to bring back their new achievements to allow for a better understanding of the processes happening in nature. Molecular Computing

4 Watson-Crick Complementarity Adenine Thymine Cytosine Guanine DNA DeoxyriboNucleic Acid double helix 3´ … A T C G … 5´ 5´ … T A G C … 3´ || || ||| |||

5 DNA Splicing 3´ … A T C G … 5´ 5´ … T A G C … 3´ || || ||| ||| 3´ … A T C  C … 5´ 5´ … T  A G G … 3´ || |||sticky ends 3´ … T T C  G … 5´ 5´ … A  A G C … 3´ || |||sticky ends 3´ … T T C C … 5´ 5´ … A A G G … 3´ || || ||| ||| splicing 1 splicing 2 recombination 2 recombination 1 --------------------------------------------------------------------------------

6 DNA Computing - Splicing SPLICING RULE r = u 1 # u 2 $ u 3 # u 4 x = x 1 u 1 u 2 x 2, y = y 1 u 3 u 4 y 2, SPLICING ( x, y )  r ( z, w ) z = x 1 u 1 u 4 y 2, w = y 1 u 3 u 2 x 2 T. Head: Formal language theory and DNA: An analysis of the generative capacity of specific recombinant behaviors. Bull. Math. Biology, 49 (1987), 737-759. D. Pixton: Splicing in abstract families of languages. Theoretical Computer Science 234 (2000), 135-166. E. Csuhaj-Varjú, R. Freund, L. Kari, Gh. Păun: DNA computing based on splicing: universality results. In: L. Hunter, T. Klein (Eds.): Pacific Symposium on Biocomputing '96, WSP (1996), 179-190.

7 Splicing Splicing: r = u 1 # u 2 $ u 3 # u 4, x = x 1 u 1 u 2 x 2, y = y 1 u 3 u 4 y 2, ( x, y )  r ( z, w ) z = x 1 u 1 u 4 y 2, w = y 1 u 3 u 2 x 2 x 1 u 1 u 2 x 2 y 1 u 3 u 4 y 2 x 1 u 1 u 4 y 2 y 1 u 3 u 2 x 2 ------------------------------------------------------------------------------- x y z w

8 Cutting and Recombination (CR) CUTTING RULE u 1 # [m] $ [n] # u 2 RECOMBINATION RULE ( [m], [n] ) x = x 1 u 1 u 2 x 2, y = x 1 u 1 [m], z = [n] u 2 y 2 CUTTING x  r ( y, z ) x = x 1 u 1 u 2 x 2, y = x 1 u 1 [m], z = [n] u 2 y 2 RECOMBINATION ( y, z )  r x R. Freund, F. Wachtler: Universal systems with operations related to splicing. Computers and Art. Intelligence 15 (4).

9 Splicing Systems / CR Systems without any additional features: - infinite number of rules computational completeness (universality): cannot even generate all regular languages - multisets - periodic sets of rules - test tube systems - membrane systems - control mechnisms (control graphs,...)

10 Test Tube Systems - references L. M. Adleman: Molecular computation of solutions to combinatorial problems. Science, 226 (Nov. 1994), 1021-1024. (lab solution of small travelling salesman problem) E. Csuhaj-Varjú, L. Kari, and Gh. Păun: Test tube distributed systems based on splicing. Computers and Artificial Intelligence, Vol. 15 (2) (1996), 211-232. R. Freund, E. Csuhaj-Varjú, and F. Wachtler: Test tube systems with cutting/recombination operations. In: R.B. Altman, A.K. Dunker, L. Hunter, T. Klein (Eds.): Pacific Symposium on Biocomputing '97 (1997), 163-174.

11 Test Tube Systems - definition  = ( B, B T, n, A, , D, f ) B set of objects B T  B set of terminal objects n number of test tubes A = ( A 1,..., A n ) A i set of axioms in tube i  = (  1,...,  n )  i set of operations in tube i D finite set of output/input relations of the form ( i, F, j ) ; F is a filter between tubes i and j f  { 1,..., n } final test tube for results

12 TTS – begin of computation step The computations in the system  run as follows: At the beginning of the computation the axioms are distributed over the n test tubes according to A, i.e., test tube T i starts with A i. Now let L i be the contents of test tube T i at the beginning of a derivation step. Then in each test tube the rules of  operate on L i, i.e., we obtain (elements of)  i *( L i ).

13 TTS - redistribution The next substep is the redistribution of the elements of  i *(L i ) over all test tubes according to the corresponding output/input relations from D, i.e., if ( i,F,j) is in D then the test tube T j from  i *(L i ) gets  i *(L i )  F, whereas the rest of  i *(L i ) that cannot be distributed to other test tubes remains in T i.

14 TTS – final result of computation The final result of the computations in  consists of all objects from B T that can be extracted from a final test tube from E. The final results of the computations in  consists could also be taken all objects from B that can be extracted from a final test tube from E thus taking B = B T. For extended test tube systems, i. e., B T  B and B T  B, the terminal results can be extracted from every test tube.

15 When two tubes are enough

16 TTS – references Rudolf Freund, Franziska Freund: Test Tube Systems: When two tubes are enough. DLT '99 and in: G. Rozenberg, W. Thomas (Eds.): Developments in Language Theory, Foundations, Applications and Perspectives. WSP, Singapore (2000), 338-350. Rudolf Freund, Franziska Freund: Test Tube Systems or How to Bake a DNA Cake. Acta Cybernetica, Vol. 12, Nr. 4, 445-459.

17 TTS – universality with CR with only two tubes and the filters between the tubes being a finite union of sets of the form mW + n with markers m,n.  = (MW*M, [e]W + [f], 2, (A 1, Ø ), (C 1  R 1, C 2 ), {(1, F 1, 2), (2, F 2, 1)}, {2}) Proof (sketch). We simulate a grammar generating L{d}. G = (N,T,P,S) with L(G) = L{d}, where d is always generated in the last step of the derivation of a terminal word in G. A string w is represented by rotated versions [x]w 2 Bw 1 [y], w = w 1 w 2. Terminal strings are of the form [e]w[f], w  T +. The rules in P are labelled productions p:    with 1  |  |  2 and 0  |  |  2. V = N  T  {B}, W = V  {d}. Theorem. Any recursively enumerable language L can be generated by a test tube system with CR rules

18 TTS – universality with CR (proof) M = {[e],[f],[e´],[f´], [x],[y],[x´],[y´]}  { [l p ], [r p ], [l p ´] |p  Lab}  {[x c ],[y c ],[x c ´],[y c ´] |c  Lab} A 1 = {[l p ]  [y] |p  Lab, p:    }  {[x]c[x c ´], [y c ´] [y] |c  V}  {[x]BS[y]} R 1 = {([r p ],[l p ])|p  Lab}  {([x c ´], [x c ] ), ([y c ], [y c ´]) |c  V} C 1 = {u#[r p ] $ [l p ´]#  [y] | u  V, p  Lab, p:   , |  |=2}  {u#[r p ] $ [l p ´]#  [y] | u  V 2  {B}, p  Lab, p:   , |  |=1} C 2 = {u#[y c ] $ [y´]#c[y], [x]#[x´] $ [x c ]#u | u,c  V}  {[x]B#[e´] $ [e]#u, u#[f] $ [f´]#d[y] | u  T} D = {(1, F 1, 2), (2, F 2, 1)} F 1 = [x]W + [y] F 2 =  c  V [x c ]W + [y c ] 

19 TTS – universality with splicing Theorem. Any recursively enumerable language L can be generated by a test tube system with splicing rules with only two tubes and the filters between the tubes being a finite union of sets of the form {A}W + {B} with A,B  W.  = (W*,{E}W + {F}, 2, (A 1,A 2 ), (R 1 R 2 ), {(1,F 1,2),(2,F 2,1)}, {2}) Proof (sketch). We simulate a grammar generating L{d} like in the proof before the CRTTS; as there we only cut at the ends of a string, we can construct  as follows: For a cutting rule like [x] # [r] $ [l] # u we take the axiom LZ and the splicing rule L # Z $ X # u. For a cutting rule like c # [r] $ [l] # u[y] we take the axiom ZR and the splicing rule c # uY $ Z # R. For a recombination rule like ( [r] $ [l] ) involving the axiom [l]w[y] we take the axiom ZwY and the splicing rule u # R $ Z # wY, etc. 

20 introduced by Gheorghe PǍUN (1998) - brought new impact into the area of theoretical computer science, especially into the area of formal languages; - incorporate several features of living cells; - allow for constructing various formal models of universal computers, - restricted models allow for the characterization of well-known families of languages. Membrane Systems

21 (invented by Gheorghe PǍUN, 1998) membrane structure multisets of objects evolution / communication rules applied in the maximally parallel mode the sequential mode many variants computationally complete dissolving / generating membranes P Systems (Membrane Systems) Gheorghe Păun: Membrane Computing - An Introduction. Springer-Verlag, Berlin, 2002. The P Systems Web Page: http://psystems.disco.unimib.it

22 1 23 45 skin membrane elementary membrane region Membrane structure [ 1 [ 2 [ 4 ] 4 [ 5 ] 5 ] 2 [ 3 ] 3 ] 1

23 Grammar schemes / grammars A grammar scheme G is a construct (O,O T,P,  ) where ∙ O is the set of objects; ∙ O T  O is the set of terminal objects; ∙ P is a finite set of productions p  O×O or O m ×O n ; ∙  is the derivation relation of G induced by the productions in P; A grammar G is a construct (O,O T,P, ,w) where ∙ w is the axiom or the initial multiset over O. L(G) = { v  O T | w  * v } or L(G) = { v  M(O T ) | w  * v }

24 String grammars A string grammar G is a construct (N,T,P,S) where ∙ N is the alphabet of non-terminal symbols; ∙ T is the alphabet of terminal symbols, N ∩ T = { }; ∙ P is a finite set of productions of the form u → v with u  V* and v  V +, where V := N  T; ∙ S  N is the start symbol. A string grammar G now is a construct (V*,T*,P,  G,S) where the derivation relation for u → v  P is defined as usual by xuy  u→v xvy for all x,y  V*, thus yielding the well-known derivation relation  G for the string grammar G. L(G) = { v  T* | w  G * v }.

25 Types of string grammars As special types of string grammars we consider string grammars with arbitrary productions, context-free productions of the form A → v with A  N and v  V*, and λ-free context-free productions of the form A → v with A  N and v  V*, the corresponding types of grammars denoted by ENUM, CF, and CF -λ, thus yielding the families of languages L(ENUM), i.e, the family of recursively enumerable languages, as well as L(CF) and L(CF -λ ), i.e., the families of context-free and λ-free context-free languages, respectively.

26 Matrix grammars is a grammar of type X, M is a finite set of finite sequences of productions (an element of M is called a matrix), and F  P. For a matrix m(i) = [m i,1,…,m i,n (i) ] in M and v,u  O we define v  m(i) u if and only if there are w 0,w 1,…,w n(i)  O such that w 0 = v, w n(i) = u, and for each j, 1 ≤ j ≤ n(i), ∙ either w j-1  m(i,j) w j according to  G, ∙ or m(i,j) is not applicable to w j-1 according to  G, w j = w j-1, m(i,j)  F. A matrix grammar G with appearance checking (with ac for short) G M of type X is a construct (O,O T,P,  G,w,M,F) where (O,O T,P,  G,w)

27 Language generated by a matrix grammar The language generated by G M is L(G M ) = {v  O T : w  m(i,1) w 1 …  m(i,k) w k, w k = v, w j  O, m(i,j)  M for 1 ≤ j ≤ k,k ≥ 1}. The matrix grammar G M is said to be of type MAT ac ; it is said to be of type MAT - to be without appearance checking (without ac) - if F = { }. The corresponding families of languages are denoted by L(X-MAT ac ) and L(X- MAT), respectively.

28 Graph-controlled grammars A graph-controlled grammar G of type X is a construct (O,O T,P,  G,w,R,L(in),L(fin)) where (O,O T,P,  G,w) is a grammar of type X, R is a finite set of rules r of the form ( l(r): p(l(r)), σ(l(r)), φ(l(r)) ), where l(r)  Lab(G), Lab(G) being a set of labels associated (in a one-to-one manner) with the rules r in R, p(l(r))  P, σ(l(r))  Lab(G) is the success field of the rule r, and φ(l(r))  Lab(G) is the failure field of the rule r; L(in)  Lab(G) is the set of initial labels, and L(fin)  Lab(G) is the set of final labels.

29 Graph-controlled grammar - languages For r = ( l(r): p(l(r)), (l(r)), (l(r)) ) and v,u  O we define (v,l(r))  G (u,k) if and only if ∙ either p(l(r)) is applicable to v, v  G u, and k  σ(l(r)), ∙ or p(l(r)) is not applicable to v, u=v, and k  φ(l(r)). The language generated by G is L(G) ={v  O T : (w 0,l 0 )  G (w 1,l 1 )…  G (w k,l k ), k ≥ 1, w j  O and l j  Lab(G) for 0 ≤ j ≤ k, w 0 = w, w k = v, l 0  L(in), l k  L(fin). The graph-controlled grammar G is said to be of type GC ac ; it is said to be of type GC - to be without appearance checking (without ac) - if φ(l)= { } for all l  Lab(G). The corresponding families of languages are denoted by L(X-GC ac ) and L(X-GC), respectively.

30 Graph-controlled and matrix grammars Theorem 1. For any arbitrary type X, L(X-MAT)  L(X-GC) and L(X-MAT ac )  L(X-GC ac ). Proof. Let G = (O,OT,P,  G,w,M,F) be a matrix grammar of type X; then we construct the graph-controlled grammar G’ = (O,O T,P,  G,w,R,L(in),L(fin)) with Lab(G’) = { (i,j) : 1 ≤ j ≤ n(i), 1 ≤ i ≤ n }, L(in) = L(fin) = { (i,1) : 1 ≤ i ≤ n }, R = { ( (i,j): m i,j, σ(i,j), φ(i,j) ) : 1 ≤ j ≤ n(i), 1 ≤ i ≤ n }, σ(i,j) = { (i,j+1) }, 1 ≤ j < n(i), σ(i,n(i)) = { (i,1) : 1 ≤ i ≤ n } ( = L(fin) = L(in) ), 1 ≤ i ≤ n; φ(i,j) = σ(i,j) if m i,j  F and φ(i,j) = { } otherwise, 1 ≤ j ≤ n(i), 1 ≤ i ≤ n. □

31 P system - definition A P system (with priorities) of type X is a construct  = ( O,O T,P, , μ, w μ, R μ, ρ μ ) where - ( O,O T,P,  ) is a grammar scheme G(  ) of type X; - μ is the membrane structure of  ; usually, we shall label the membranes with 1,...,n in a bijective way; the outermost membrane is labelled by 1 (skin membrane); - w μ ( = (w 0,w 1,...,w n ) ) is a function assigning a multiset over O to the environment (w 0 ) and to each region inside membrane i, 1 ≤ i ≤ n; - R μ ( = (R 1,...,R n ) ) is a function assigning a finite set of rules to each membrane i, 1 ≤ i ≤ n, of μ; - ρ μ ( = (ρ 1,...,ρ n ) ) is a function assigning a priority relation for the rules in R i to each membrane i of μ.

32 is one of the most common features of many models introduced so far in the area of P systems. A universal clock is assumed to control the parallel application of rules which may be quite unrealistic, but is relevant for many interesting theoretical results, especially when proving computational completeness and solving (NP-)hard problems. Applying the rules assigned to the membranes in the maximally parallel derivation mode means choosing a multiset of rules in such a way that after assigning objects from the environment and the regions to these rules not enough objects are left to add another rule which could be applied together with the chosen rules. maximally parallel derivation mode

33 sequential derivation mode Biological processes in living organisms happen in parallel, but they may not be synchronized by a universal clock, instead many processes involve several objects in parallel, but the processes themselves are carried out in an unsynchronized or asynchronous way. Formally, this feature an be captured by letting an arbitrary number of processes happen in parallel in an unsynchronized / asynchronous way (asynchronous derivation mode). In the sequential derivation mode, only one rule is applied in one derivation step.

34 P system - derivation A derivation in the P system  works as follows: We start with the initial multisets w i in the environment and the regions inside the membranes, respectively. At any stage of the derivation, the rules assigned to the membranes are used according to the derivation mode (observe that a rule from R i can only be applied if no other rule of higher priority according to the priority relation ρ i could be applied, too, to any combination of objects inside and outside membrane i).

35 P system - language All terminal objects from O T ever appearing at any step in any membrane contribute to the language L(  ) generated by . The family of languages generated by X-P(pri) systems (with membrane structure μ) in the derivation mode m (sequential: m = s, maximally parallel: m = p) is denoted by L(X-mP(pri)) ( L(X-mP(μ,pri)), respectively). If all priority relations in an X-P(pri) system are empty, we call it an X-P system and denote the corresponding families of languages generated by X-P systems (with membrane structure μ) in the derivation mode d by L(X-mP) ( L(X-mP(μ) ), respectively).

36 Rules in a P system of type X A rule in a P system of type X is of the form → where or j (origin) and tar k (target) are from {in, out} and → is a rule over the underlying grammar scheme G(  ) of type X. The objects x 1, …, x m to be affected as in the rule → are chosen according to the origins or 1, …, or m and the resulting objects y 1, …, y n are released according to the targets tar 1, …, tar n.

37 P systems with splicing rules Theorem. Any recursively enumerable language L can be generated by a P system with splicing rules with only one membrane and even without priorities on the rules in the sequential derivation mode, i.e., L(splicing-sP( [ 1 ] 1 ) = L(ENUM). | skin membrane | axioms (unbounded) axioms (unbounded) in out | splicing rules |

38 P systems with string rewriting rules Theorem. Any recursively enumerable language L can be generated by a P system with priorities and context-free rules in a membrane structure of two membranes in the sequential mode, i.e., L(CF-MAT ac ) = L(CF-GC ac ) = L(CF-sP( [ 1 [ 2 ] 2 ] 1, pri ) ) = L(ENUM).

39 P systems with string rewriting rules but without priorities Theorem. Without priorities, P systems with context-free rules (in a linear membrane structure of three membranes) in the sequential mode can only generate languages generated by matrix grammars without appearance checking, i.e., L(CF-MAT) = L(CF-sP( [ 1 [ 2 [ 3 ] 3 ] 2 ] 1 ) ). Theorem. Without priorities, P systems with context-free rules (in a linear membrane structure of three membranes) in the maximally parallel mode can generate any recursively enumerable language, i.e., L(CF-MAT ac ) = L(CF-GC ac ) = L(CF-pP( [ 1 [ 2 [ 3 ] 3 ] 2 ] 1 ) ) = L(ENUM).

40 Variants of P systems used for implementing parallel algorithms (usually linear in time, but trading time for space) for solving (NP-)hard problems ► generate/dissolve membranes ► tissue(-like) P systems arbitrary graph structure for connections between cells (not necessarily a tree as in P systems); e.g., useful for describing neural networks ►...

41 Related models Luca Cardelli: Brane Calculi: process calculi with computation “on” the membranes, not inside them. BioAmbients: a stochastic calculus with compartments. http://www.luca.demon.co.uk

42 Future research ► investigate the complexity of various models of P systems, especially searching for the borderline between systems that are / are not universal (or computationally complete, respectively); ► find new (parallel) algorithms for solving (NP-)hard problems based on P systems; ► investigate the potential of various models of P systems to describe biological processes; ►... ► implement various models of P systems “in silicio” and/or “in vitro” (in the lab);


Download ppt "MEMBRANE COMPUTING Faculty of Informatics Vienna University of Technology Wien, Austria Rudolf FREUND MOLECULAR COMPUTING."

Similar presentations


Ads by Google