Upload
badru
View
41
Download
2
Tags:
Embed Size (px)
DESCRIPTION
MOLECULAR COMPUTING. MEMBRANE COMPUTING. Rudolf FREUND. Faculty of Informatics Vienna University of Technology Wien, Austria. Overview. Molecular Computing. ► DNA Computing. ● Splicing, Watson-Crick complementarity ● Test tube systems (universality). ► Membrane Computing. - PowerPoint PPT Presentation
Citation preview
MEMBRANE COMPUTING
Faculty of Informatics
Vienna University of Technology
Wien, Austria
Rudolf FREUND
MOLECULAR COMPUTING
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
• 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
Watson-Crick Complementarity
Adenine
Thymine
Cytosine
Guanine
DNA DeoxyriboNucleic Acid
double helix
3´ … A T C G … 5´
5´ … T A G C … 3´
|| || ||| |||
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
--------------------------------------------------------------------------------
DNA Computing - SplicingSPLICING RULE r = u1 # u2 $ u3 # u4
x = x1 u1 u2 x2 , y = y1 u3 u4 y2 ,
SPLICING ( x , y ) r ( z , w )
z = x1 u1 u4 y2 , w = y1 u3 u2 x2
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.
SplicingSplicing: r = u1 # u2 $ u3 # u4 ,
x = x1 u1 u2 x2 , y = y1 u3 u4 y2 ,
( x , y ) r ( z , w )
z = x1 u1 u4 y2 , w = y1 u3 u2 x2
x1 u1 u2 x2
y1 u3 u4 y2
x1 u1 u4 y2
y1 u3 u2 x2
-------------------------------------------------------------------------------
x
y
z
w
Cutting and Recombination (CR)CUTTING RULE u1 # [m] $ [n] # u2
RECOMBINATION RULE ( [m] , [n] )
x = x1 u1 u2 x2 , y = x1 u1 [m] , z = [n] u2 y2
CUTTING x r ( y , z )
x = x1 u1 u2 x2 , y = x1 u1 [m] , z = [n] u2 y2
RECOMBINATION ( y , z ) r x
R. Freund, F. Wachtler: Universal systems with operations
related to splicing. Computers and Art. Intelligence 15 (4).
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,...)
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.
Test Tube Systems - definition
= ( B , BT , n , A , , D , f )
• B set of objects
• BT B set of terminal objects
• n number of test tubes
• A = ( A1 , ... , An ) Ai 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
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 Ti starts with Ai. Now let Li be the contents
of test tube Ti at the beginning of a derivation step.
Then in each test tube the rules of operate on Li, i.e.,
we obtain (elements of) i*( Li).
TTS - redistribution
The next substep is the redistribution of the
elements of i*(Li) 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 Tj
from i*(Li) gets i*(Li) F, whereas the rest of
i*(Li) that cannot be distributed to other test
tubes remains in Ti.
TTS – final result of computation
The final result of the computations in consists of all
objects from BT 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 = BT .
For extended test tube systems, i. e., BT B and BT B,
the terminal results can be extracted from every test tube.
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.
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, (A1, Ø ) , (C1 R1 , C2), {(1, F1, 2) , (2, F2, 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 generatedin the last step of the derivation of a terminal word in G.
A string w is represented by rotated versions [x]w2Bw1[y] ,w = w1w2 . Terminal strings are of the form [e]w[f] , w T+.The rules in P are labelled productions p: with1 | | 2 and 0 | | 2 .
V = N T {B} , W = V {d}.
Theorem. Any recursively enumerable language L canbe generated by a test tube system with CR rules
TTS – universality with CR (proof)M = {[e],[f],[e´],[f´], [x],[y],[x´],[y´]} { [lp], [rp], [lp´] |pLab}
{[xc],[yc],[xc´],[yc´] |cLab}
A1 = {[lp][y] |pLab, p:} {[x]c[xc´], [yc´] [y] |cV} {[x]BS[y]}
R1 = {([rp],[lp])|pLab} {([xc´], [xc] ), ([yc], [yc´]) |cV}
C1 = {u#[rp] $ [lp´]#[y] | uV, pLab, p:, ||=2}
{u#[rp] $ [lp´]#[y] | uV2 {B}, pLab, p:, ||=1}
C2 = {u#[yc] $ [y´]#c[y], [x]#[x´] $ [xc]#u | u,c V} {[x]B#[e´] $ [e]#u, u#[f] $ [f´]#d[y] | uT}
D = {(1, F1, 2), (2, F2, 1)}
F1 = [x]W+[y]
F2 = cV [xc]W+[yc] �
TTS – universality with splicingTheorem. Any recursively enumerable language L canbe 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, (A1,A2), (R1 R2), {(1,F1,2),(2,F2,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.
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
(invented by Gheorghe PǍUN , 1998)
membrane structuremultisets of objectsevolution / communication rules applied in • the maximally parallel mode• the sequential mode
many variants computationally completedissolving / 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
Grammar schemes / grammarsA grammar scheme G is a construct
(O,OT,P, ) where
∙ O is the set of objects;
∙ OT O is the set of terminal objects;
∙ P is a finite set of productions p O×O or Om×On;
∙ is the derivation relation of G induced by the productions in P;
A grammar G is a construct (O,OT,P, ,w) where
∙ w is the axiom or the initial multiset over O.
L(G) = { v OT | w * v } or
L(G) = { v M(OT) | w * v }
String grammarsA 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 } .
Types of string grammarsAs 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.
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) = [mi,1,…,mi,n(i)] in M
and v,u O we define v m(i) u if and only if there are
w0,w1,…,wn(i) O such that w0 = v, wn(i) = u,
and for each j, 1 ≤ j ≤ n(i),
∙ either wj-1 m(i,j) wj according to G,
∙ or m(i,j) is not applicable to wj-1 according to G,
wj = wj-1, m(i,j) F.
A matrix grammar G with appearance checking (with ac
for short) GM of type X is a construct
(O,OT,P, G,w,M,F) where (O,OT,P, G ,w)
Language generated by a matrix grammar
The language generated by GM is
L(GM) = {v OT : w m(i,1) w1… m(i,k) wk,
wk = v, wj O, m(i,j) M for 1 ≤ j ≤ k ,k ≥ 1}.
The matrix grammar GM is said to be of type MATac; 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-MATac) and L(X-
MAT), respectively.
Graph-controlled grammars
A graph-controlled grammar G of type X is a construct
(O,OT,P, G,w,R,L(in),L(fin)) where
(O,OT,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.
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 OT : (w0,l0) G (w1,l1)… G (wk,lk), k ≥ 1,
wj O and lj Lab(G) for 0 ≤ j ≤ k,
w0 = w, wk = v, l0 L(in), lk L(fin).
The graph-controlled grammar G is said to be of type
GCac; 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-GCac) and L(X-GC), respectively.
Graph-controlled and matrix grammars
Theorem 1. For any arbitrary type X,
L(X-MAT) L(X-GC) and L(X-MATac) L(X-GCac).
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,OT,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): mi,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 mi,j F and φ(i,j) = { } otherwise,
1 ≤ j ≤ n(i), 1 ≤ i ≤ n . □
P system - definitionA P system (with priorities) of type X is a construct
= ( O,OT,P, , μ, wμ, Rμ, ρμ ) where
- ( O,OT,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μ ( = (w0,w1,...,wn) ) is a function assigning a multiset
over O to the environment (w0) and to each region
inside membrane i, 1 ≤ i ≤ n;
- Rμ ( = (R1,...,Rn) ) 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 Ri to each membrane i of μ.
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
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.
P system - derivation
A derivation in the P system works as follows:
We start with the initial multisets wi 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 Ri 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).
P system - languageAll terminal objects from OT 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).
Rules in a P system of type X
A rule in a P system of type X is of the form
<(x1,or1), …, (xm,orm)> → <(y1,tar1), …, (yn,tarn)>
where orj (origin) and tark (target) are from {in, out} and
<x1, …, xm> → <y1, …, yn> is a rule over the
underlying grammar scheme G() of type X.
The objects x1, …, xm to be affected as in the rule
<x1, …, xm> → <y1, …, yn> are chosen according to the
origins or1, …, orm and the resulting objects y1, …, yn
are released according to the targets tar1, …, tarn.
P systems with splicing rulesTheorem. Any recursively enumerable language L canbe generated by a P system with splicing rules with only one membrane and even without priorities on the rulesin the sequential derivation mode, i.e.,
L(splicing-sP( [1 ]1 ) = L(ENUM).
| |skin membrane | |
axioms(unbounded)
axioms(unbounded)
in out
| | splicing rules | |
P systems with string rewriting rulesTheorem. Any recursively enumerable language L canbe 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-MATac) =
L(CF-GCac) =
L(CF-sP( [1 [2 ]2 ]1 , pri ) ) =
L(ENUM).
P systems with string rewriting rulesbut without priorities
Theorem. Without priorities, P systems withcontext-free rules (in a linear membrane structure of three membranes) in the sequential modecan only generate languages generated bymatrix grammars without appearance checking, i.e.,
L(CF-MAT) = L(CF-sP( [1 [2 [3 ]3 ]2 ]1 ) ).
Theorem. Without priorities, P systems withcontext-free rules (in a linear membrane structure of three membranes) in the maximally parallel modecan generate any recursively enumerable language, i.e.,
L(CF-MATac) = L(CF-GCac) =
L(CF-pP( [1 [2 [3 ]3 ]2 ]1 ) ) = L(ENUM).
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 systemsarbitrary graph structure for connections betweencells (not necessarily a tree as in P systems);e.g., useful for describing neural networks
► ...
Related models
Luca Cardelli:
Brane Calculi: process calculi with computation “on” themembranes, not inside them.
BioAmbients: a stochastic calculus with compartments.
http://www.luca.demon.co.uk
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);