Eco-P kolonie 1. 1.1 Agenty. Abstrakt. Luděk Cienciala 1, Lucie Ciencialová 1



Podobné dokumenty
Homogenní P kolonie 1

Vztah jazyků Chomskeho hierarchie a jazyků TS

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

Formální jazyky a gramatiky Teorie programovacích jazyků

AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace

Naproti tomu gramatika je vlastně soupis pravidel, jak

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ

Vlastnosti regulárních jazyků

Turingovy stroje. Teoretická informatika Tomáš Foltýnek

EKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů

Syntaxí řízený překlad

AUTOMATY A GRAMATIKY

Lineární algebra : Lineární prostor

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Postův korespondenční problém. Meze rozhodnutelnosti 2 p.1/13

Kapitola Základní množinové pojmy Princip rovnosti. Dvě množiny S a T jsou si rovny (píšeme S = T ) prvek T je také prvkem S.

Automaty a gramatiky(bi-aag) Formální překlady. 5. Překladové konečné automaty. h(ε) = ε, h(xa) = h(x)h(a), x, x T, a T.

Formální jazyky a automaty Petr Šimeček

Univerzální Turingův stroj a Nedeterministický Turingův stroj

Automaty a gramatiky. Uzávěrové vlastnosti v kostce R J BKJ DBKJ. Roman Barták, KTIML. Kvocienty s regulárním jazykem

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

NP-úplnost problému SAT

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:

Pravděpodobnost a statistika

Matematická analýza pro informatiky I. Limita funkce

Kapitola 6. LL gramatiky. 6.1 Definice LL(k) gramatik. Definice 6.3. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo.

1 Linearní prostory nad komplexními čísly

Minimalizace KA - Úvod

Matice. a m1 a m2... a mn

2 Formální jazyky a gramatiky

Složitost Filip Hlásek

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

Úvod do informatiky. Miroslav Kolařík

Vrcholová barevnost grafu

Teoretická informatika - Úkol č.1

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu / 43

1 Báze a dimenze vektorového prostoru 1

= je prostý orientovaný graf., formálně c ( u, v) 0. dva speciální uzly: zdrojový uzel s a cílový uzel t. Dále budeme bez

9 Kolmost vektorových podprostorů

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Pumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému

Teoretická informatika Tomáš Foltýnek Teorie čísel Nekonečno

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

1 Vektorové prostory.

METRICKÉ A NORMOVANÉ PROSTORY

Matematická logika. Miroslav Kolařík

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

ZÁKLADY TEORETICKÉ INFORMATIKY

Pojem binární relace patří mezi nejzákladnější matematické pojmy. Binární relace

Greenova funkce pro dvoubodové okrajové úlohy pro obyčejné diferenciální rovnice

Lineární algebra : Polynomy

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory

Lineární algebra : Polynomy

Substituce a morfismy jednoduše

Dijkstrův algoritmus

10 Funkce více proměnných

Definice 7.2. Nejmenší přirozené číslo k, pro které je graf G k-obarvitelný, se nazývá chromatické číslo (barevnost) grafu G a značí se χ(g).

Množiny, relace, zobrazení

Matematická analýza 1

Markovské metody pro modelování pravděpodobnosti

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Formální systém výrokové logiky

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

Základní pojmy teorie množin Vektorové prostory

5 Orientované grafy, Toky v sítích

Lineární algebra : Báze a dimenze

DEFINICE Z LINEÁRNÍ ALGEBRY

1 Řešení soustav lineárních rovnic

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

Základy teoretické informatiky Formální jazyky a automaty

p 2 q , tj. 2q 2 = p 2. Tedy p 2 je sudé číslo, což ale znamená, že

Lineární algebra : Násobení matic a inverzní matice

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

Čísla značí použité pravidlo, šipka směr postupu Analýza shora. Analýza zdola A 2 B 3 B * C 2 C ( A ) 1 a A + B. A Derivace zleva:

Matematika III. 4. října Vysoká škola báňská - Technická univerzita Ostrava. Matematika III

Lineární algebra : Násobení matic a inverzní matice

6. Vektorový počet Studijní text. 6. Vektorový počet

Stromové rozklady. Definice 1. Stromový rozklad grafu G je dvojice (T, β) taková, že T je strom,

Fuzzy množiny, Fuzzy inference system. Libor Žák

Inženýrská statistika pak představuje soubor postupů a aplikací teoretických principů v oblasti inženýrské činnosti.

Jednoznačné a nejednoznačné gramatiky

13. cvičení z PSI ledna 2017

Báze a dimenze vektorových prostorů

H {{u, v} : u,v U u v }

15. Moduly. a platí (p + q)(x) = p(x) + q(x), 1(X) = id. Vzniká tak struktura P [x]-modulu na V.

Matematika I 2a Konečná pravděpodobnost

Kapitola 1. Úvod. 1.1 Značení. 1.2 Výroky - opakování. N... přirozená čísla (1, 2, 3,...). Q... racionální čísla ( p, kde p Z a q N) R...

Determinanty. Obsah. Aplikovaná matematika I. Pierre Simon de Laplace. Definice determinantu. Laplaceův rozvoj Vlastnosti determinantu.

Fakulta informačních technologií. Teoretická informatika

1 Soustavy lineárních rovnic

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

Syntaxí řízený překlad

4.2 Syntaxe predikátové logiky

Texty k přednáškám z MMAN3: 4. Funkce a zobrazení v euklidovských prostorech

Definice 9.4. Nedeterministický algoritmus se v některých krocích může libovolně rozhodnout pro některé z několika možných různých pokračování.

Transkript:

Eco-P kolonie 1 Luděk Cienciala 1, Lucie Ciencialová 1 1 Ústav informatiky, Slezská univerzita Opava Bezručovo nám.13, 746 01 Opava ludek.cienciala@fpf.slu.cz, lucie.ciencialova@fpf.slu.cz Abstrakt 1.1 Agenty V příspěvku prezentujeme výsledky získané při výzkumu eco-p kolonií, které vznikly přirozeným rozšířením P kolonií o dynamicky se vyvíjející prostředí. P kolonie jsou jedna z variant výpočetních modelů založených na nezávislých membránových agentech, které se vyvíjí a působí ve společném prostředí. Agent pracuje na základě programů skládajících se z pravidel. Pomocí těchto pravidel mění objekty, které obsahuje, a vyměňuje informace s okolním prostředím. Prostředí je v P koloniích statické, zasahovat do něj mohou pouze jednotlivé agenty. Rozšíříme daný model P kolonií o mechanismy umožňující měnit prostředí. V případě eco-p kolonií je tímto mechanizmem 0L schéma. V příspěvku se budeme zabývat vlastnostmi eco-p kolonií. 1 Úvod Jeden z nových trendů teoretické informatiky jsou výpočetní modely inspirované biochemií buněčné struktury nazývané membránové systémy neboli P systémy, které byly zavedeny v roce 1998 Gheorghem Păunem v [10]. Výpočetní model P kolonie je motivován právě membránovými systémy a gramatickými systémy koloniemi [8]. Daný model je inspirován strukturou a činností živých organismů ve společném prostředí. Prostředí je v P koloniích statické a slouží pouze jako komunikační kanál pro organismy v P kolonii. Eco-P kolonie umožňují rozšířit daný model P kolonií o možnost měnit prostředí nezávisle na daných organismech. Více informací o membránových výpočtech je možno získat v [11], o koloniích v [7, 6, 8]. Počet článků o membránových výpočtech neustále roste, nejlépe se o tom můžeme přesvědčit na webových stránkách [12]. Autonomní organismy žijící v eco-p kolonii budeme nazývát agenty. Pod označením agenty si v přírodě můžeme představit živé organismy například včely nebo mravence. Nebudeme se zabývat stavbou ani všemi životními projevy a nedáme si za úkol ani najít adekvátní popis, formalismus v daném modelu. V eco-p kolonii je každý agent tvořen jednou membránou ohraničující oblast s objekty, přičemž počet objektů uvnitř agenta je pevně stanoven a je pro všechny agenty stejný. Kapacitou eco-p kolonie budeme rozumět právě daný počet objektů uvnitř každého agenta. Nejčastěji se používají eco-p kolonie s kapacitou 2. To znamená, že v každém agentu jsou dva objekty. Pod pojmem objekty v eco- P koloniích si můžeme představit v přírodě látky, které jsou schopny dané organismy měnit, přijímat, vylučovat do prostředí. V prostředí se vyskytují objekty v dostatečném množství pro život eco-p kolonie a můžeme si je představit jako vzduch nebo vodu u organismů žijících ve vodním prostředí. V prostředí kolonie se vyskytuje pouze jeden druh těchto objektů. V eco-p koloniích se prostředí může měnit nezávisle na agentech. Pod touto změnou si můžeme představit například v přírodě změnu teploty, jestli prší, svítí slunce apod. I tyto jednoduché životní projevy agentů a vývoj prostředí mohou emergovat v mnohem složitější životní projevy celé eco-p kolonie. Přispívá tomu předávání informací mezi agenty, kdy jeden agent vyloučí do prostředí určitou látku odpovídající jeho stavu v dané situaci a ovlivní tím chování ostatních agentů a dále také změna prostředí, která rovněž ovlivňujě chování jednotlivých agentů. Životnost kolonií v přírodě bývá různě dlouhá, ale u některých druhů hmyzu dosahuje klidně i několika desítek let. Celou tu dobu společenství velmi dobře fungují bez toho, aniž by jejich činnost někdo řídil. I komplikovaný systém může plnit své funkce na základě jednoduchých pravidel určujích chování jednotlivců. 1 Poděkování Výzkum byl proveden za podpory grantu GAČR 201/09/P075, výzkumného záměru MSM 4781305903. 1

Nyní uvedeme pár příkladů z přírody. U mravenců mezi nejdůležitější komunikační prostředky patří mravenčí pachy, tzv. feromony. Hlavní výhoda využívání pachů ke komunikaci mravenců spočívá v tom, že i přes malý mozeček, který mají k dispozici, jsou schopni vytvořit poměrně složité společenské struktury. Jednoduchost, ale zase nahrává některým parazitům napodujícím mravenčí pach a dokonce i mravenci jiného druhu dokáží napodobit pach jiného druhu. A jak dokáže mít vliv na mravence nezávisle vyvíjející se prostředí? Například v chladnějších obdobích roku za slunečného počasí mravenci hromadně vycházejí na povrch mraveniště, kde svá těla nahřívají na sluníčku a následně pak zamíří do vnitřku mraveniště, kde teplo vyzáří. Tímto počínáním jsou schopni zvýšit teplotu v mraveništi až o 10 C. Tzn. v daném okamžiku se chovají jako jednoduché sluneční akumulátory, přičemž často riskují až přehřátí organismu. Jako druhý příklad uvedeme včely. Žihadlový aparát včely tvoří několik žláz. V jejich výměšcích je histamin, fosfolipáza a hyaluronidáza vyvolávající nepříjemné pocity svědění a pálení v okolí vpichu. Tyto žlázy také vylučují i feromony, které slouží k vyvolání poplachu u ostatních včel. Do rány vstřikují včely i látku, pomocí níž se orientují další včely a vpichují další žihadla do blízkosti prvního, tzn. u každé dávky jedu je i dávka izoamylacetátu. Izoamylacetát je stálá látka informující něco okolo 10 minut další včely o poloze nepřítele. Včely z jednoho úlu se poznají podle specifické vůně, podobné úlové vůni, která sestává z mnoha složek. Včely jsou schopny se vyznat i ve směsici pachů. Pyl a nektar dvou úlů nevonívá stejně, z důvodu, že bývá sbírán jednak z různých rostlin, ale hlavně v různém poměru těchto rostlin. Povrch těla včely je uzpůsoben tak, že nabírá vůni úlu a udržuje si ji. Ale to ještě není všechno. Včely si značí cestu k nektaru. Jsou to molekuly neralu, citralu a geraniolu, jejichž vůně dohromady připomíná vůni květů meduňky nebo plodů kdoule. Dané látky pomáhají včelám najít i cestu zpátky do úlu. Pro orientaci slouží včelám i tance uvnitř úlu a mnoho dalších vůní. Např. terpeny, aldehydy, ketony i další štiplavé a aromatické sloučeniny v různých množstvích ovlivňují dorozumívání včel a umožňují fungování včelstva. Vůni včely používají jako dorozumívací jazyk. Prostředí také ve velké míře ovlivňuje chování včel. Včely mohou létat při dosažení určité tělní teploty, která je závislá na teplotě prostředí. Tato teplota se může lišit nejen mezi druhy, ale také mezi jedinci stejného druhu. Minimální tělní teplota pro létání je okolo 17 C. Kritická tělní teplota u většiny včel je 45 až 50 C. Aktivita včel závisí na teplotě, slunečním záření, relativní vlhkosti vzduchu, rychlosti větru. Činnost agenta je určena pomocí programů. Každý agent má k dispozici svou množinu programů. Program je tvořen jedním pravidlem přepisujícím a jedním pravidlem transportním. Přepisující pravidla mohou být generující nebo mazající. Generující pravidlo z jednoho objektu vytvoří dva objekty, je spojeno s transportním pravidlem, které přesunuje objekty do prostředí. Mazající pravidlo tvoří ze dvou objektu objekt jeden a zase je spojeno s transportním pravidlem, které přesunuje objekt z prostředí do agenta. Programy, které obsahují mazající pravidla nazýváme konzumující programy a programy s generujícími pravidly nazýváme produkující programy. Agent obsahující pouze konzumující programy označujeme jako agent konzument a agent obsahující pouze produkující programy nazýváme agent producent. Konzumující programy mají tvar: ab c; d in. Aplikace prvního pravidla konzumujícího programu způsobí, že místo objektů a a b bude agent obsahovat objekt c. Druhé pravidlo, pravidlo transportní, přesune objekt d z prostředí dovnitř agenta. Uvnitř agenta se vyskytují vždy dva objekty. První pravidlo programu by nám snížilo počet objektů o jeden, proto pomocí druhého pravidla je přesunut objekt z prostředí do agenta a to v jednom okamžiku. Produkující programy mají tvar: a bc; d out. Aplikace prvního pravidla produkujícího programu způsobí, že místo objektu a bude agent obsahovat objekty b a c. Druhé pravidlo stejně jako u konzumujícího programu je pravidlem transtportním, ale tentokrát přesune objekt d z agenta do prostředí z důvodu, aby agent obsahoval právě dva objekty. 1.2 Prostředí Prostředí eco-p kolonie slouží jako komunikační kanál pro agenty. Přes prostředí agenty jsou schopni ovlivňovat chování ostatních agentů. Stejně jako mravenci a včely. V prostředí se nacházejí speciální objekty, které nazýváme enviromentální a označujeme e. Počet objektů e je v prostředí obecně nekonečně mnoho. Prostředí se vyvíjí nezávisle na agentech. Agenti mohou částečně ovlivnit vývoj prostředí přesouváním objektů do prostředí. Vývoj prostředí nezávisí na stavech jednotlivých agentů v eco-p kolonii. Vývoj jednotlivých objektů probíhá pomocí bezkontextových pravidel a to paralelně, tzn., že jsou přepsány všechny objekty, které mohou být přepsány. 2

Mechanismus vývoje prostředí je postaven na 0L schématech. Obsahuje pravidla, která jsou bezkontextová, tzn. jejich použití nezávisí na kontextu, v kterém se přepisovaný symbol nachází. 0L schéma je dvojice (Σ, P ). 0L schéma má pouze jednu abecedu a neuvažujeme tedy rozdíl mezi terminály a neterminály, jak je tomu u gramatik. Symbolem Σ značíme konečnou neprázdnou abecedu 0L schématu. Množina pravidel P 0L schématu je konečná podmnožina množiny Σ Σ, pro kterou platí, že pro a Σ α Σ takové, že (a α) P. 1.3 Výpočet Výpočet je paralelní. V každém kroku výpočtu každý agent nedeterministicky vybere jeden ze svých aplikovatelných programů a vykoná jej. Výpočet končí zastavením, kdy žádný agent nemůže aplikovat žádný ze svých programů. V prostředí mohou se vyskytovat i nadále aplikovatelná pravidla, ale za výsledek výpočtu uvažujeme počet specifických objektů v okamžiku zastavení činnosti všech agentů v eco-p kolonii. V následující kapitolách uvedeme základní definice, definici eco-p kolonie a její vlastnosti. 2 Definice Budeme předpokládat, že čtenáři jsou známy základní definice a poznatky z teorie formálních jazyků a automatů. Uvedeme zde označení použité v tomto článku. NRE budeme označovat množiny rekurzívně spočitatelných nezáporných celých čísel a N množinu nezáporných celých čísel. Σ je označení pro abecedu. Necht Σ je množina všech slov nad abecedou Σ (včetně prázdného slova ε). Pro délku slova w Σ budeme používat označení w a pro počet výskytů symbolů a Σ ve w w a. Multimnožina objektů M je dvojice M = (V, f), kde V je libovolná (ne nutně konečná) množina objektů a f je zobrazení f : V N; f přiřazuje každému objektu z V jeho násobnost v M. V je množina všech konečných multimnožin nad konečnou množinou V. Konečná multimnožina M nad V může být reprezenotvána jako řetězec w nad abecedou V s w a = f M (a) pro všechna a V. Budeme tedy psát M = w. Samozřejmě všechna slova obdržená z w permutací znaků jsou reprezentována stejnou multimnožinou M. ε představuje prázdnou multimnožinu. 3 Eco-P kolonie V této části uvedeme definici eco-p kolonie, kroku výpočtu a výsledku výpočtu eco-p kolonie. Definice 1 eco-p kolonie s kapacitou 2 je struktura Π = (A, e, f, V E, D E, B 1,..., B n ), kde A je abeceda kolonie, její prvky nazýváme objekty, e je základní objekt kolonie, který nazýváme enviromentální, e A, f je finální objekt kolonie, f A, V E je počáteční obsah prostředí, V E (A {e}), D E je 0L schéma (A, P E ), kde P E je množina bezkontextových pravidel. B i, 1 i n, jsou agenty, každý agent je struktura B i = (O i, P i ), kde O i je multimnožna nad A, která definuje počáteční stav (obsah) agenta B i a O i = 2, P i = {p i,1,..., p i,ki } je konečná množina programů, které mohou být: generující a bc, d out - program je aplikovatelný, pokud agent obsahuje objekty a a d. Objekt a je použitý ke generování nového obsahu agenta a objekt d agent umístí do prostředí. konzumující ab c, d in - program je aplikovatelný, pokud agent obsahuje objekty a a b. Tyto objekty jsou přeměněny na jeden nový objekt c a objekt d agent importuje z prostředí. Každý agent obsahuje pouze jeden druh programů. Počáteční konfigurace eco-p kolonie je (n + 1)-tice (O 1,..., O n, V E ) multimnožin objektů nacházejících se v eco-p kolonii na začátku výpočtu, kde O i pro 1 i n a pro prostředí V E. Obecně konfigurace P kolonie Π je definovaná jako (w 1,..., w n, w E ), kde w i reprezentuje všechny objekty i-tého agenta, w i = 2, 1 i n, w E (A {e}) určuje objekty různé od e obsažené v prostředí. Výpočet eco-p kolonií studovaných v tomto článku probíhá paralelně. V každém kroku paralelního výpočtu pracuje maximální počet agentů. Každý agent, který může použít nějaký ze svých programů, tak ho použije. Jestliže agent má více aplikovatelných 3

programů v daném kroku výpočtu, potom nedeterministicky vybere právě jeden a použije ho. Pro programy z každé množiny P i zavedeme označení z množiny lab (P i ) takové, že lab (P i ) lab (P j ) = pro i j, 1 i, j n. Pro formální vyjádření kroku výpočtu zavedeme čtyři funkce: whatsin, demand, putout, newin. Dané funkce každému programu přiřadí multimnožinu objektů, které musí být v agentu a v prostředí, aby daný program mohl být proveden. Funkce definují i objekty, které se budou nacházet uvnitř agenta a objekty, které obohatí prostředí po úspěšném provedení programu. Formálně, necht ab c, d in je konzumující program a a bc, d out je generující program, pak definujeme funkce: {ab} pro konzumující program pk whatsin(p k ) = {ad} pro generující program p k {d} pro konzumující program pk demand(p k ) = pro generující program p k {cd} pro konzumující program pk newin(p k ) = {bc} pro generující program p k pro konzumující program pk putout(p k ) = {d} pro generující program p k Změna konfigurace je definována jako (w 1,..., w n, w E ) (w 1,..., w n, w E), kde jsou splněny následující podmínky: Množina označení programů P s P n taková, že p, p P, p p, p lab (P j ), p lab (P i ), i j, pro každé p P, p lab (P j ), whatsin (p) = w j, a demand (p) w E. p P Kromě toho, vybraná množina P je maximální, to znamená, že žádný další program r 1 i n lab (P i), r / P, nemůže být přidán do množiny P tak, aby byly splněny uvedené podmínky. Obecně pro každé j, 1 j n, pro které existuje p P, takové že p lab (P j ), necht w j = newin (p). Pokud neexistuje p P, p lab (P j ) pro nějaké j, 1 j n, necht w j = w j. Necht w E demand (p) DE je krok odvození pro p P w E 0L schéma (A, P E ) a pak w E = w E putout (p). p P Sjednocení a - zde představují operace nad multimnožinami. Konfigurace je koncová, pokud množina označení programů P splňující dané podmínky, nemůže být vybrána jinak, než jako prázdná množina. Množinu koncových konfigurací označíme H. Pokud se výpočet zastaví, můžeme s ním asociovat výsledek výpočtu. Výsledkem výpočtu je počet kopií speciálního symbolu f v prostředí. Množina čísel počítaných P kolonií Π je definována jako N (Π) = { w E f (O 1,..., O n, V E ) (w 1,..., w n, w E ) H}, kde (O 1,..., O n, V E ) je počáteční konfigurace, (w 1,..., w n, w E ) je koncová konfigurace, a označuje reflexivní a tranzitivní uzávěr. Mějme eco-p kolonii Π = (A, e, f, V E, D E, B 1,..., B n ). Maximální počet programů asociovaných s agenty nazýváme výškou h, počet agentů n, pak stupněm n eco-p kolonie. Označme NEP COL x,y,z (n, h) třídu množin čísel počítáných eco-p koloniemi takovými, že: - x obsahuje s pokud eco-p kolonie obsahuje agenty producenty, - x obsahuje c pokud eco-p kolonie obsahuje agenty konzumenty, - y = passive pokud 0L schéma disponuje pouze pravidly typu a a, - y = active pokud 0L schéma disponuje alespoň jedním pravidlem jiného typu než a a, - z = ini pokud prostředí nebo agenti na začátku prostředí obsahují jiné objekty než environmentální, jinak toto značení vynecháme - stupněm nejvýše n a - výškou nejvýše h. 4 Chování agentů 4.1 Agent konzument Agent konzument se vyvíjí pomocí programu: ab c; d in. Agent s těmito programy čte z okolí objekty a zpracovává svůj obsah na základě toho, jaký objekt přijal. To je velmi podobné činnosti konečného automatu. Výsledkem výpočtu automatu je přijetí, 4

či nepřijetí slova. Výsledek výpočtu eco-p kolonie je počet symbolů f nacházejících se v prostředí po ukončení aktivity agenta. Oba výpočetní modely se liší. Konečný automat má vstupní objekty na pásce a jsou určitým způsobem uspořádány. Narozdíl eco-p kolonie objekty uspořádané nemá, tzn. že eco-p kolonie pracuje s permutacemi daných objektů. Necht M je konečný automat takový, že M = (Q, Σ, δ, q 0, F ). Eco-P kolonie Π = (A, e, f, V E, D E, B) simulující činnost tohoto konečného automatu je definována: A = Q E {f, e, R} V E je multimnožina tvořená symboly vstupního slova D E = (A, {a a a A}) B = (O, P ) O = {eq 0 } P = { xq q ; d in takový, že δ(q, d) = q je pravidlo přechodové funkce konečného automatu M, a x Σ takové, že existuje pravidlo δ(q, x) = q konečného automatu M, x = e pro pravidla, která vychází z počátečního stavu automatu } Pokud je v agentu objekt q f F a v prostřední se nenachází žádný jiný objekt než e, pak se výpočet zastaví úspěšně. V eco-p kolonii se ověření úspěšnosti výpočtu dá zajistit programy xq f R; a in, xr R, e in, er R, e in pro x, a Σ a q f F. Pokud je v agentu objekt, který zastupuje konečný stav konečného automatu, a v prostředí se nachází nějaký symbol ze vstupního slova, je aplikovatelný program, který vede k zacyklení výpočtu. 4.2 Agent producent Agent producent se vyvíjí pomocí programu: a bc; d out. Chování agenta by se dalo popsat podobně jako chování gramatik. Agent v každém kroku jeden objekt přesune do prostředí a z druhého objektu vytvoří dva nové. Pravidlo pro generování objektů v agentu je podobné pravidlům v regulární gramatice. Liší se výsledkem. Agent generuje objekty, ale jen ty finální mohou být započítány do výsledku, který je číslem. Časová souslednost generovaných objektů však již odpovídá slovům generovaným gramatikou (o jeden krok zpožděno), protože v jednom kroku daný objekt vytvoří a teprve v dalším kroku tento vytvořený objekt přesune do prostředí. Výpočet eco-p kolonie se zastaví použítím programu A a v regulární gramatice. Pro přesun objektu z agenta je zapotřebí použít ještě jeden program. Necht G je regulární gramatika taková, že G = (N, T, P, S). Eco-P kolonie Π = (A, e, f, V E, D E, B) simulující grenerování slov touto gramatikou je definována: A = N T {f, e, R} V E = ε D E = (A, {a a a A}) B = (O, P ) O = {es} P = { A ax; Y out je program takový, že X = B pro A ab P a X = f pro A a P, Y T {e} a poslední program aplikovaný eco-p kolonií je f ee; Y out} 5 Registrový stroj, maticová gramatika V našem příspěvku porovnáváme třídy NEP COL x,y,z (n, h) s rekuzivně spočetnými množinami čísel. Pro důkaz výpočetní síly použijeme registrový stroj. Pro další porovnání výpočetní síly budeme používat částečně slepý registrový stroj a maticové gramatiky. V této kapitole uvedeme definici registrového stroje, částečně slepého stroje a maticové gramatiky. 5.1 Registrový stroj Definice 2 [9] Registrový stroj je struktura M = (m, H, l 0, l h, P ), kde: - m je počet registrů, - H je množina označení instrukcí, - l 0 je označení pro počáteční / startovní instrukci, - l h je označení pro koncovou instrukci, - P je konečná množina instrukcí mající své označení určené pomocí množiny H. Instrukce registrového stroje mají následující tvary: 5

l 1 : (ADD(r), l 2, l 3 ) K obsahu registru r přičte 1 a výpočet pokračuje instrukcí (označenou) l 2 nebo l 3. l 1 : (SUB(r), l 2, l 3 ) Pokud registr r není prázdný, tak odečte z jeho obsahu 1 a pokračuje instrukcí l 2, jinak (registr r obsahuje 0) pokračuje instrukcí l 3. l h : HALT Stroj zastaví. Pro tuto instrukci je přiřazeno pouze jediné koncové označení l h. Bez ztráty na obecnosti můžeme předpokládat, že v každé ADD-instrukci l 1 : (ADD(r), l 2, l 3 ) a v každé SUB-instrukci l 1 : (SUB(r), l 2, l 3 ) je označení l 1, l 2, l 3 navzájem různé. Registrový stroj M počítá množinu N(M) čísel následujícím způsobem: na začátku jsou všechny registry prázdné (je v nich uloženo číslo nula) s instrukcí označenou l 0 a přejdeme k aplikování instrukcí určených pomocí označení (docílíme pomocí obsahu registrů). Pokud dojdeme ke koncové instrukci, pak číslo uložené v daném okamžiku v registru 1 představuje výsledek získaný registrovým strojem M a od této chvíle představuje N(M). (Kvůli nedeterminismu ve vybírání pokračování výpočtu v případě ADD-instrukcí N(M) může být nekonečná.) Množiny čísel N RM, které lze počítat registrovým strojem, jsou vypočitatelné i Turingovým strojem. [9] Věta 1 NRM = NRE. Pokud budeme interpretovat instrukci l 1 : (SUB(r), l 2, l 3 ) následujícím způsobem: Pokud je registr r neprázdný odečti jedničku z jeho obsahu a pokračuj instrukcí l 2 nebo l 3, jinak neúspěšně ukonči výpočet; dostáváme variantu registrového stroje nazývanou částečně slepý registrový stroj. Třídu množin čísel počítaných částečně slepým registrovým strojem značíme NRM pb. x, y (N T ) píšeme x G y[m] (v případě jednoznačnosti lze G nebo [m] ze zápisu vypustit) právě, když existuje posloupnost řetězců x 0, x 1,..., x n (N T ) a matice m : (r 1,..., r n ) M, r i : A i β i, 1 i n, taková že x 0 = x, x n = y a pro všechna 0 i n 1 platí: x i 1 = u i 1 A i v i 1 a x i = u i 1 β i v i 1, kde u i 1, v i 1 (N T ). Jazyk generovaný maticovou gramatikou G je definován jako L(G) = {w T S w}. Množina čísel generovaná gramatikou G je definována jako N(G) = { w L(G)}. Věta 3 [5] NRM pb = NMAT, kde NMAT je množina čísel generovaná maticovými gramatikami. 6 Vlastnosti eco-p kolonií Nyní porovnáme eco-p kolonie s výše uvedenými výpočetními modely. V [2] autoři dokazují následující tvrzení: Věta 4 [2] NEP COL sc,passive (3, ) = NRE. Dokážeme, že eco-p kolonie s aktivním prostředím a dvěma agenty konzumenty generují rekurzivně spočetnou množinu přirozených čísel. Věta 5 NEP COL c,active,ini (2, ) = NRE. Věta 2 NRM pb NRM. 5.2 Maticová gramatika Maticová gramatika je čtveřice G = (N, T, M, S), kde V, T, S mají stejný význam jako u bezkontextové gramatiky a konečná množina M sekvencí tvaru: m : (r 1,..., r n ), n 1, kde r 1,..., r n jsou přepisovací pravidla tvaru r i : A i β i, kde A i N, β i (N T ) pro všechna 1 i n. Sekvenci m nazývame matice pravidel, nebo jednoduše matice. Krok derivace maticové gramatiky Necht G = (N, T, M, S) je maticová gramatika. Pro dva řetězce Důkaz: Uvažujme registrový stroj M = (m, H, l 0, l h, P ). Všechna označení z množiny H budou objekty z eco-p kolonie. Obsah registru i bude reprezentován počtem kopií objektů a i v prostředí. Na začátku výpočtu se nachází v prostředí kromě enviromentálních objektů e, kterých je vždy dostatečné množství, objekt l 0 a pomocný objekt D. Objekt l 0 odpovídá označení první instrukce, kterou bude realizovat registrový stroj. Instrukce l i = (ADD(r), l j, l k ) bude v eco-p kolonii realizována pomocí pravidel: 6

ENV : B 1 : 1 : l i a r l i D; 2 : l i l jl k D; 3 : l j l j D; 4 : l k l k D; 5 : P e P ; l j in ; 6 : P e P ; l k in ; 7 : P l j P ; e in ; 8 : P l k P ; e in ; Výpočet probíhá tak, že 0L schéma prostředí provádí samotnou instrukci přičtení (vygenerování objektu a r - přičtení jedničky k obsahu r-tého registru) - pravidlo 1 a vygenerování označení následující instrukce. Protože je možno pokračovat jednou ze dvou instrukcí, 0L schéma vygeneruje obě označení - pravidlo 2 a v následujícím kroku agent konzument B 1 jeden objekt z prostředí odstraní - program 5 nebo 6. Instrukce l i : (SUB(r), l j, l k ) je v eco-p kolonii realizována: ENV : B 1 : 9 : l i l i li RD; 10 : li R li P D; 11 : li P l j l k D; 12 : l j l j D; 13 : l k l k D; 14 : l j l jd; 15 : l k l kd; 16 : P e n r ; l i in ; 17 : l i n r L k ; a r in ; 18 : l i n r R; l j in ; 19 : a r L 3 R; l k in ; 20 : l j R P ; e in ; 21 : R P ; e in ; l k Pokud je v prostředí objekt označující instrukci odečítání, 0L schéma vygeneruje (pomocí pravidla 9) objekt l i, který je zprávou pro agenta B 1, že se má pokusit z prostředí odebrat objekt a r, tedy odečíst jedničku z obsahu registru r. Pokud v prostředí objekt a r je, agent ho přesune dovnitř - program 17 - a v dalším kroku odstraní z prostředí objekt l k a tím určí, že v dalším kroce výpočtu bude realizována instrukce l j. Pokud v prostředí objekt a r chybí (registr r obsahuje 0), agent nemá v tomto kroku aplikovatelné pravidlo a v příštím kroku odstraní z prostředí objekt l j a zajistí tímto, že další realizovaná instrukce bude mít označení l k. Pro instrukci l h je v prostředí eco-p kolonie pravidlo l h l h, což je stejný typ pravidla jako pro ostatní objekty, které nejsou v průběhu výpočtu měněny jinak (např. e, a r a další). Když zkontrolujeme průběh výpočtu, zjistíme, že se v něm nachází momenty, kdy je agent B 1 nečinný. To by znamenalo, že v tomto momentu je třeba ukončit výpočet. Z důvodu aby výpočet nezkončil předčasně, přidáme do eco-p kolonie agenta B 2, který bude pracovat dokud bude probíhat výpočet. Zajistí to program P D P ; D in. Zkonstruovali jsme eco-p kolonii Π = (A, e, f, V E, D E, B 1, B 2 ), kde: abeceda A = {l i, l i, l i, l i, l i, L i pro každé l i H} {a i 1 i m} {e, R, P, D} koncový objekt f = a 1 počáteční stav prostředí V E = l 0 D 0L schéma D E = (A, P E ) množina pravidel prostředí P E = {x x a i, 1 i m a pro e} {pravidla uvedená výše} a agenty B 1 = (P e, P 1 ), B 2 = (P D, P 2 ) Množiny programů byly již uvedeny dříve. Eco-P kolonie začíná výpočet s objektem l 0 v prostředí a začíná realizovat tuto instrukci stejně jako registrový stroj. Pokračuje ve výpočtu stejným způsobem jako tento stroj a pokud dospěje k instrukci l h výpočet se zastaví. Výsledek je dán počtem objektů a 1 v prostředí a tento počet odpovídá číslu uloženému v registru 1 registrového stroje na konci výpočtu. Eco-P kolonie s aktivním prostředím a dvěma agenty konzumenty tedy může generovat rekurzivně spočetnou množinu přirozených čísel. Nyní se zaměříme na eco-p kolonie obsahující jak agenty konzumenty tak agenty producenty a jejich prostředí je statické (0L schéma obsahuje pouze pravidla typu a a). Dokážeme, že třída jazyků eco-p kolonie s jedním agentem producentem a jedním agentem konzumentem je podmnožinou třídy NMAT, NRM pb je podnmožinou této třídy a z rovnosti NMAT = NRM pb vyplývá i rovnost s třídou jazyků eco-p kolonie s danými vlastnostmi. Věta 6 NEP COL sc,passive (2, ) = NRM pb. 7

Důkaz: Uvažujme částečně slepý registrový stroj M = (m, H, l 0, l h, P ). Všechna označení z množiny H budou objekty z eco-p kolonie. Obsah registru i bude reprezentován počtem kopií objektů a i v prostředí. Na začátku výpočtu se nachází v prostředí pouze enviromentální objekty e, kterých je vždy dostatečné množství. V eco-p kolonii jsou dva agenty: agent B 1, který je agentem producentem, a agent B 2, který je konzumentem. B 1 : 0 : e l 0 e; e out ; Objekt l 0 odpovídá označení první instrukce, kterou bude realizovat částečně slepý registrový stroj, a je obsažen v agentu B 1. Instrukce l i = (ADD(r), l j, l k ) bude v eco-p kolonii realizována pomocí následujících pravidel: B 1 : 1 : l i a r l i ; e out ; 2 : l i l 2e; a r out ; 3 : l i l 3e; a r out ; Výpočet probíhá tak, že agent po jednotlivých objektech postupně umístí do prostředí objekt a r - přičtení jedničky k obsahu r-tého registru - pravidlo 1 a vygenerování označení následující instrukce. Protože je možno pokračovat jednou ze dvou instrukcí, agent vygeneruje jedno ze dvou označení - pravidlo 2 nebo 3. Instrukce l i : (SUB(r), l j, l k ) je v eco-p kolonii realizována následujícími programy: B 1 : B 2 : 4 : l i li R l i ; e out ; 5 : li R li R1 e; l i out ; 6 : li R1 li R2 l i ; e out ; 7 : li R2 l j e; l i out ; 8 : li R2 l k e; l i out ; 9 : l j l j e; e out ; 10 : l k l i e; e out ; 11 : l j l je; e out ; 12 : l k l ke; e out ; 13 : ee n r ; l i in ; 14 : l i n r L i ; a r in ; 15 : l i n r R; l i in ; 16 : Rl i R; e in ; 17 : Re R; e in ; 18 : L i a r e; l i in ; 19 : l i e e; e in ; Odečítání probíhá v následujících krocích: 1. Pokud je v agentu B 1 objekt označující instrukci odečítání, agent umístí do prostředí objekt l i (programy 4 a 5). 2. Daný objekt odebere z prostředí agent B 2 (program 13), který se pokusí z prostředí odebrat objekt a r, to znamená odečíst jedničku z obsahu registru r (program 14). 3. Současně s programem 14 je aplikovatelný program 15. Aplikace tohoto programu vede k nekonečnému výpočtu (program 17). Pokud se v prostředí nenachází žádný objekt a r, je jediný aplikovatelný program právě program 17. Vzhledem k tomu, že výpočet probíhá nedeterministicky, existuje výpočet, který správně odebere objekt a r z prostředí. 4. At je v agentu B 2 realizován kterýkoliv z dříve uvedených programů, agent B 1 pokračuje dále ve výpočtu, tzn. generuje označení další instrukce a po té ji provede. Pro instrukci l h je v prostředí eco-p kolonie pravidlo l h l h, což je stejný typ pravidla jako pro ostatní objekty, které nejsou v průběhu výpočtu měněny jinak (např. e, a r a další). Zkonstruovali jsme eco-p kolonii Π = (A, e, f, V E, D E, B 1, B 2 ), kde: abeceda A = {l i, l i, l i, l i, L i, li R,, lr1 i, li R2 pro každé l i H} {a i 1 i m} {e, R} koncový objekt f = a 1 počáteční stav prostředí V E = ε 0L schéma D E = (A, P E ), množina pravidel prostředí P E = {x x x A} a agenty B 1 = (ee, P 1 ), B 2 = (ee, P 2 ). Množiny programů jsme popsali dříve. Eco-P kolonie začíná výpočet s objektem l 0 v prostředí a začíná realizovat tuto instrukci stejně jako částečně slepý registrový stroj. Kolonie pokračuje v úspěšném výpočtu stejným způsobem jako tento stroj a pokud dospěje k instrukci l h výpočet se zastaví. Výsledkem je počet objektů a 1 v prostředí a daný počet odpovídá číslu uloženému v registru 1 částečně slepého registrového stroje na konci výpočtu. Dokázali jsme, že NRM pb je podmnožinou třídy množin přirozených čísel generovaných eco-p koloniemi s jední agentem producentem a jedním agentem konzumentem. 8

Nyní ke každé takové eco-p kolonii Π = (A, e, f, V E, D E, B 1, B 2 ) sestrojíme maticovou gramatiku G = (N, T, S, M). Každý objekt a v agentu B i, i = 1, 2, bude mít v generované větě svůj neterminál (a, i). Objekty z prostředí budou mít ve větě své zástupce jedině v případě, že se nejedná o enviromentální objekty e. Tyto neterminály mají tvar (v, 0), v A. Necht agent B 1 je agent producent a agent B 2 agent konzument. Pro dosažení počáteční konfigurace přidáme do množiny M matici (S E (u i, 1) (u j, 1) (u k, 2) (u l, 2) (v 1, 0)... (v n, 0)), kde O 1 = {u i u j } a O 2 = {u k u l } jsou počáteční konfigurace jednotlivých agentů, a v 1... v n = V E je počáteční obsah prostředí eco-p kolonie. Pro každou kombinaci programů a i a m a n ; a j out ; a k a l a o ; a p in, kde první program je program z množiny programů agenta producenta a druhý je program agenta konzumenta, přidáme do množiny M následující matice: pokud a p e ( E E; (a i, 1) (a m, 1) (a n, 1) ; (a j, 1) h(a j ); (a k, 2) (a o, 2) ; (a l, 2) ε; (a p, 0) (a p, 2) ) pokud a p = e ( E E; (a i, 1) (a m, 1) (a n, 1) ; (a j, 1) h(a j ); (a k, 2) (a o, 2) ; (a l, 2) (a p, 2) ) (aj, 0) pro a h(a j ) = j e ε pro a j = ε Neterminál E indikuje stav provádění výpočtu, druhý řádek pravidel odpovídá provedení programu agenta producenta a třetí řádek realizaci programu agenta konzumenta. Pro ukončení výpočtu je potřeba po dosažení koncové konfigurace eco-p kolonie přepsat neterminály, které odpovídají koncovému objektu f v prostředí, na terminální symbol a zbylé neterminály vymazat. Tuto fázi výpočtu maticové gramatiky G nazveme finalizací. Koncové konfigurace eco-p kolonie lze popsat konečným způsobem. Je to dáno tím, že existuje pouze konečný počet konfigurací agentů a množin symbolů (nikoli multimnožin), které popisují koncové konfigutrace eco-p kolonie. Vytvoříme množinu řetězců, které popisují koncové konfigurace, nebudeme uvažovat permutace v rámci jednoho řetězce. Každý takový řetězec můžeme vyjádřit: necht g je zobrazení definované následovně g(a 1,x ) = (a x, 1), g(a 2,x ) = (a x, 2) a g(a 0,x ) = (a x, 0), kde a x A. Pak a 1i a 1j a 2ka 2l a 0r1... a 0rs } {{ } w 1 } {{ } w 2 } {{ } w E je řetězec koncové konfigurace eco-p kolonie (w 1, w 2, w E ). Do množiny M přidáme pro každý takový řetězec následující matice: (E (G, a 1i a 1j a 2k a 2l a 0r1... a 0rs 1 a 0rs ) ) ((G, a 1i a 1j a 2k a 2l a 0r1... a 0rs 1 a 0rs ) (G, a 1i a 1j a 2k a 2l a 0r1... a 0rs 1 a 0rs ); a 0rs f(a 0rs ) ) ((G, a 1i a 1j a 2k a 2l a 0r1... a 0rs 1 a 0rs ) (G, a 1i a 1j a 2k a 2l a 0r1... a 0rs 1 ) ). ((G, a 1i a 1j a 2k a 2l a 0r1 ) (G, a 1i a 1j a 2k a 2l a 0r1 ); a 0r1 f(a 0r1 ) ) ((G, a 1i a 1j a 2k a 2l a 0r1 ) (G, a 1i a 1j a 2k a 2l ) ) ((G, a 1i a 1j a 2k a 2l ) (G, a 1i a 1j a 2k ); a 2l f(a 2l ) ) ((G, a 1i a 1j a 2k ) (G, a 1i a 1j ); a 2k f(a 2k )) ((G, a 1i a 1j ) (G, a 1i ); a 1j f(a 1j ) ) ((G, a 1i ) ε; a 1i f(a 1i ) ) f pro y = (f, 0) f(y) = ε pro y (f, 0) Pokud maticová gramatika finalizuje větu, která neodpovídá koncové konfiguraci, nebo nepřepíše všechny neterminály ve větě, nedojde k vygenerování slova, tedy řetězce terminálních symbolů. Výsledkem finalizace je slovo f z, kde z je číslo počítané eco-p kolonií a odpovídá počtu koncových objektů f, které se na konci výpočtu nachází v jejím prostředí. Tímto jsme dokázali, že třída eco-p kolonií s jedním agentem producentem a jedním agentem konzumentem bez aktivního prostředí je podmnožinou třídy N M AT. Z rovnosti N M AT a NRM pb vyplývá i rovnost s NEP COL sc,passive (2, ). 7 Závěr V příspěvku prezentujeme výsledky výzkumu rozšířeného modelu P kolonií, který nazýváme eco-p kolonie. Ukázali jsme, že eco-p kolonie s aktivním 9

prostředím a dvěma agenty konzumenty generují rekurzivně spočetnou množinu přirozených čísel. Eco-P kolonií jsme simulovali činnost registrového stroje. Třída jazyků generovaná eco-p kolonií se statickým prostředím s jedním agentem konzumentem a s jedním agentem producentem je rovna třídě množin čísel počítaných částečně slepým registrovým strojem MRM pb. Pro důkaz jsme použili částečně slepý registrový stroj a maticové gramatiky. Literatura [1] L. Cienciala, L. Ciencialová, A. Kelemenová. On the number of agents in P colonies. In: Membrane Computing. 8th International Workshop, WMC 2007. Thessaloniki, Greece, June 25-28, 2007. Revised Selected and Invited Papers. Edited by G. Eleftherakis, P. Kefalas, Gh. Păun, G. Rozenberg, A. Salomaa. Volume 4860 of Lecture Notes in Computer Science, Springer-Verlag, Berlin- Heidelberg, 2007, 193-208. [2] L. Ciencialová, E. Csuhaj-Varjú, A. Kelemenová, G. Vaszil. On Very Simple P Colonies, manuscript, 2009. [3] E. Csuhaj-Varjú, J. Dassow, J. Kelemen, Gh. Păun. Grammar Systems A Grammatical Approach to Distribution and Cooperation. Gordon and Breach, London, 1994. [4] E. Csuhaj-Varjú, J. Kelemen, A. Kelemenová, Gh. Păun, Gy. Vaszil. Computing with cells in environment: P colonies. Journal of Multi-Valued Logic and Soft Computing 12:201-215, 2006. [5] R. Freund, M. Oswald. P colonies working in the maximally parallel and in the sequential mode. Pre-Proceedings of the 1 st International Workshop on Theory and Application of P Systems (G. Ciobanu, Gh. Păun, eds.), Timisoara, Romania, 2005, pp. 49 56. [6] J. Kelemen, A. Kelemenová. On P colonies, a biochemically inspired model of computation. Proc. of the 6 th International Symposium of Hungarian Researchers on Computational Intelligence, Budapest TECH, Hungary, 2005, 40-56. [7] J. Kelemen, A. Kelemenová. A grammartheoretic treatment of multi-agent systems. Cybernetics and Systems 23:621-633, 1992. [8] J. Kelemen, A. Kelemenová, Gh. Păun. Preview of P colonies: A biochemically inspired computing model. In: Workshop and Tutorial Proceedings. Ninth International Conference on the Simulation and Synthesis of Living Systems (Alife IX). Edited by M. Bedau et al. Boston Mass., 2004, 82-86. [9] M. L. Minsky. Computation: Finite and Infinite Machines. Prentice Hall, Engle-wood Cliffs, NJ, 1967. [10] Gh. Păun. Computing with membranes. Journal of Computer and System Sciences 61, 2000, 108-143. [11] Gh. Păun. Membrane computing: An introduction. Springer-Verlag, Berlin, 2002. [12] P systems web page. 15. leden 2001. 23. března 2009 <http://ppage.psystems.eu> 10

11