Joanna Bartosik
Politechnika Świętokrzyska, Katedra Informatyki, WEAiI, Al. Tysiąclecia Państwa Polskiego 7, Kielce 25-314
bartosik@tu.kielce.pl
SYSTEMY PAUNA JAKO MODELE SIECI TELEINFORMACYJNYCH
Streszczenie: Wizualizacja różnych formalizmów opisu systemów dynamicznych staje się coraz częściej ważnym narzędziem dydaktycznym. W pracy zasygnalizowano moż-liwość użycia w tym celu mało w Polsce popularnych tzw. systemów membranowych zwanych również systemami Pauna.
1. WSTĘP
Definicja systemu ewolucyjnego odnosi się wy-łącznie do behawioralno-opisowych aspektów systemu. System jest ewolucyjny jeśli zadany jest przez pewien zbiór reguł ewolucji określających możliwe w tym sys-temie procesy. Definicja ta nie wypowiada się na temat „logiczno-organizacyjnej infrastruktury takiego syste-mu”. Ta logiczna struktura systemu może nie mieć nic wspólnego z jego strukturą fizyczną. Tak rozumiana or-ganizacja odnosić się może bardziej do pewnego sposo-bu myślenia o systemie niż do „materialnych” połączeń części tego systemu, tzn. jego struktury fizycznej. Ta ostatnia może być bardzo różna; może np. dopuszczać jakąś formę współbieżności (np. w sieciach Petriego) lub nie (np. algorytmy genetyczne – czy ogólnie ewolucyjne realizowane przez pojedynczy procesor). Może się w szczególności zdarzyć, że ewolucyjny charakter (opisu?) mieć będzie charakteryzacja zachowania systemu o hie-rarchicznie zorganizowanej „strukturze logicznej”. Ogromna większość spotykanych w naturze, technice czy społeczeństwie systemów zorganizowana jest w ja-kimś sensie hierarchicznie. Hierarchii w sensie „czy-stym”, tzn. takich, które modelowane być mogą przez porządki częściowe jest w naturze prawdopodobnie bar-dzo mało1. W większości przypadków mamy do czynie-nia z jakąś formą quasiporządku, tzn. system taki zawie-ra pewne cykle wzdłuż których przemieszczać się mogą w systemie obiekty – cząsteczki czy np. krwinki w orga-nizmach żywych, (pół)produkty w systemach produk-cyjnych czy informacje np. w systemach społecznych2. Podkreślamy – chodzi tu nie o cykliczność procesów, lecz o istnienie cykli w organizacji - strukturze systemu.
1
Być może lepiej byłoby napisać, iż mało jest systemów, które można tak modelować nie dokonując znacznych „uproszczeń”, tzn. nie abstrahując od istotnych aspektów funkcjonowania ta-kich systemów.
2
Takim najbardziej chyba znanym przykładem cyklu przetwa-rzania informacji w systemach społecznych jest mechanizm funkcjonowania plotki, kiedy to informacja wraca do „nadaw-cy” zmodyfikowana po drodze o przeróżne, zazwyczaj dodat-kowe, szczegóły.
Systemy zawierające cykle są bardzo trudne do opisy-wania i analizy. Wprawdzie większość modeli systemów dynamicznych daje się sprowadzić do jakiejś postaci grafu (który może oczywiście – jak np. sieci Petriego – zawierać cykle, ale, jak już wspomnieliśmy odnosi się to do jednego poziomu opisywanego systemu).
Jednym z modeli hierarchicznie zorganizowanych sys-temów ewolucyjnych są tzw. systemy membranowe na-zywane również systemami Pauna. Systemy te bazują na idei podobnej do jednego z modeli funkcjonowania or-ganizmów żywych. Składa się on z komórek „pogrupo-wanych” w organelle, „pogrupowane” w organy, itd.. Całość zamknięta jest w „organie” nazywanym skórą. W informatyce systemy Pauna używane były głównie do opisów pewnych abstrakcyjnych tworów związanych z analizą złożoności obliczeniowej oraz niektórymi aspek-tami lingwistyki matematycznej. Ze względu na swoją relatywną prostotę i dużą intuicyjność oparte o „mem-branową ideologię” modele rozmaitych systemów biolo-gicznych czy ekonomicznych zyskały i nadal zyskują dużą popularność. Jest rzeczą ciekawą, iż systemy te w zasadzie nie są wykorzystywane jako modele sieci kom-puterowych lub telekomunikacyjnych, które zorganizo-wane są właśnie hierarchicznie. W pracy opiszemy pew-ną modyfikację pojęcia systemu Pauna, która wydaje się być dobrym modelem hierarchicznie zorganizowanych sieci przetwarzających (przesyłających) sygnały.
2. SYSTEMY PAUNA
Multizbiory. Elementy modułu (ANat, +, *, 0) na-zywać będziemy w tej pracy multizbiorami. Będą one używane jako modele zawartości różnych części syste-mów hierarchicznych i reprezentowane często słowami nad alfabetem A. Reprezentacją multizbioru µ=∑a∈A
m(a)a jest zbiór wszystkich słów nad alfabetem A mają-cych tę własność, że każde z nich zawiera dokładnie
m(a) wystąpień litery a∈A. W tej pracy przez system
membranowy rozumieć będziemy dowolne drzewo T udekorowane kolekcjami3 pewnych obiektów, nazywa-nych zwykle tokenami, ponazywanazywa-nych elementami z ustalonego zbioru A oraz kolekcjami pewnych reguł. Przez regułę rozumiemy tu parę postaci (µ→ (w1, µ1), (w2, µ2), …, (wn, µn)), gdzie w1, w2, …, wn są
wierzchoł-kami drzewa T, a µ, µ1, µ2, …, µn multizbiorami nad
3
Przez kolekcję rozumiem „zbiór”, którego elementy mogą się powtarzać.
2006
Poznańskie Warsztaty Telekomunikacyjne Poznań 7 - 8 grudnia 2006
zbiorem (alfabetem) A. Modelami tych kolekcji są multi-zbiory elementów zbioru A oraz opisanych wyżej reguł. Działanie systemu polega na przemieszczaniu multizbio-rów nad zbiorem A przez wystąpienia multizbiomultizbio-rów re-guł. Wystąpienie reguły r: µ → (w1, µ1), (w2, µ2), …, (wn, µn) „pobiera” z wierzchołka, powiedzmy w0, w któ-rym znajduje się ta reguła multizbiór µ i wkłada do każ-dego z wierzchołków w1, w2, …, wn multizbiory µ1, µ2, …, µn. Reguły mogą być używane (występować, „odpa-lać”) równolegle. Ograniczeniem tej równoległości jest ilość dostępnych dla występujących równolegle reguł to-kenów. Bardziej szczegółowy opis systemów Pauna zna-leźć można w [7], [8], i [9], gdzie drzewa reprezentowa-ne są zwykle przez uporządkowareprezentowa-ne relacją inkluzji ro-dziny obszarów płaszczyzny zwanych regionami. Aby zilustrować opisane pojęcie rozważmy system składają-cy się z regionów 1, 2, 3 i 4 usytuowanych jak na poniż-szym rysunku.
Rys.1. Jeden z możliwych procesów ewolucyjnych (źródło: [10]).
Owale reprezentują regiony, w których rezydują multi-zbiory tokenów i reguły ewolucji. Tak na przykład w re-gionie 2, w najniższym owalu, rezyduje multizbiór toke-nów 2a+c+d oraz dwie reguły r1: a→(3,a), r2: ac→(2,δ). Strzałki pionowe reprezentują na tym rysunku zmiany sytuacji systemu (trzy duże owale etykietowane w każ-dym przypadku symbolem 1 to odpowiedniki takiej po-jedynczej sytuacji, „stanu” systemu). W „oryginalnych” systemach Pauna oprócz wspomnianych wyżej reguł przemieszczania tokenów funkcjonują jeszcze dwa inne typy reguł; reguły likwidujące i replikujące regiony. Te pierwsze charakteryzują się występowaniem specjalnego symbolu δ (δ nie należy do A). Na powyższym rysunku wystąpienie takiej reguły w regionie 3 spowodowało li-kwidację tego regionu i „przeniesienie” jego zawartości do nadrzędnego dla niego regionu 2. Ewentualne wystą-pienie reguły r2 w regionie 2 spowodowałoby likwidację
tego regionu i przeniesienie jego zawartości do nadrzęd-nego dla niego regionu 1. Opisy reguły replikacji regio-nów są dość skomplikowane i w tym miejscu je pomija-my. Zainteresowanego Czytelnika odsyłamy do [7].
Opisane wyżej pojęcie zmodyfikowane zostało (por. [5]) przez wprowadzenie dodatkowej relacji stycz-ności regionów. Mnożna ją widzieć m.in. w ten sposób, że odgraniczająca region od otoczenia membrana podzielona zostaje na części odpowiadające „punktom styczności” z innymi regionami o tym samym „rodzi-cu”4. Gdyby szukać analogii do tzw. topologii sieci komputerowych, to można by powiedzieć, że tak zmody-fikowane systemy odpowiadałyby „skrzyżowaniu” topo-logii gwiazdy (oryginalne systemy Pauna) z topologią szyny lub pierścienia.
3. SYSTEMY PAUNA JAKO MODELE SIECI KOMPUTEROWYCH
I TELEINFORMACYJNYCH
Większość sieci w jakimś sensie lokalnych zorganizo-wana jest hierarchicznie. Nie jest to jednak hierarchia „czysta”, bowiem niektóre wierzchołki odpowiedniego drzewa mogą komunikować się również bezpośrednio lub za pośrednictwem innych wierzchołków tego
same-go poziomu. Sytuację taką mamy np. wtedy, gdy sieć
komputerów w pracowni zorganizowana jest w topologii pierścienia, a cała pracownia występuje jako wierzcho-łek sieci zorganizowanej w gwiazdę. Modelowanie ta-kich sieci oryginalnymi systemami Pauna wymagałoby wprowadzenia wielu dodatkowych, fikcyjnych, regio-nów i skomplikowanych niekiedy reguł komunikacji między nimi. Opis prostej nawet, ale „niejednorodnej”, sieci byłby bardzo skomplikowany. Wprowadzenie, po-przez wspomnianą wyżej relację styczności, możliwości komunikowania się regionów „w poziomie” pozwala niedogodność tą ominąć. Pojęcie styczności regionów ma bardzo dobre intuicje geometryczne; odpowiada ono zwykłej styczności wielokątów fragmentami ich brze-gów. Modyfikacji tej nie będziemy tu szczegółowo omawiać. Odsyłamy Czytelnika do [3] i [5].
Rozważmy teraz hierarchicznie zorganizowaną sieć w której dodatkowo dopuszczamy możliwość komuni-kowania się obiektów (np. terminali, serwerów itp.) tego samego poziomu. Sieć funkcjonuje w ten sposób, że
przesyłane są pewne pakiety wiadomości (jak w sieciach komputerowych) lub ustanawiane są trwające pewien czas połączenia (jak w sieciach telefonicznych). Prze-mieszczanie się tych pakietów i ustanawianie połączeń regulowane jest przez reguły zgrupowane w tzw.
proto-koły. Protokół taki w szczególności może składać się z jednej tylko reguły (np. sprawdzania czy połączenie dwóch aparatów telefonicznych jest możliwe). Zwykle jednak reguły zorganizowane są w raczej skomplikowa-ne protokoły. Widzieć je można jako nowy typ reguł re-gulujących przemieszczanie tokenów między regionami. W przeciwieństwie do reguł oryginalnych systemów Pauna protokoły są zbiorami reguł wyposażonymi w pewną strukturę. Ta właśnie struktura wyznacza sposób komunikacji w sieci, powiązany często z fizyczną
4
Inną wersję relacji styczności opisano w [2], gdzie określono ją przy pomocy metod topologii algebraicznej.
turą tej sieci. W teorii systemów Pauna strukturą tą jest zwykle pewien rodzaj porządku, nazywanego tu
struktu-rą priorytetów.
4. UWAGI KOŃCOWE
Modelowanie sieci teleinformatycznych systemami Pauna wydaje się być relatywnie proste i dydaktycznie akceptowalne. Podejście takie pozwala oczekiwać z jed-nej strony wyników teoretycznych w postaci uzupełnia-nia klasycznych systemów Pauna dodatkowymi poję-ciami, z drugiej zaś również wyników w jakimś sensie „praktycznych” związanych z eksplikacyjnymi walorami systemów Pauna jako metody opisu funkcjonowania sie-ci. W moim odczuciu ten ostatni aspekt może mieć duże znaczenie dydaktyczne. Studenci chętnie „kupują” mo-dele wizualne i posługują się nimi przy próbach percep-cji prezentowanego im na zajęciach materiału nauczania. Systemy Pauna można wizualizować na wiele sposobów i w tym upatruję ich główny walor dydaktyczny. W tak krótkiej pracy niesposób ani dokładniej opisać formali-zacji używanych pojęć, ani, tym bardziej, sposobu ich funkcjonowania w nauczaniu. Celem napisania tego ar-tykułu jest zasygnalizowanie istnienia pewnego formali-zmu, który wydaje się być szczególnie użytecznym w nauczaniu treści programowych związanych z pojęciem sieci komputerowych lub telekomunikacyjnych. Według mojego rozeznania systemy Pauna są w literaturze pol-skojęzycznej prawie nieobecne. Cieszyłabym się bardzo gdyby praca ta pozwoliła przyczyniła się spopularyzo-wania tego bardzo intuicyjnego i użytecznego pojęcia.
SPIS LITERATURY
[1] J. Bartosik, W. Korczyński, Systemy membranowe
jako modele hierarchicznych struktur zarządzania, mat. pokonf.: „Ekonomia - Informatyka -
Zarządza-nie. Teoria i praktyka”, Tom II, AGH 2002
[2] J. Giavitto, O. Michel, The Topological Structures
of Membrane Computing, Fundamenta Informaticae, Vol. 49, no. 1-3, January 2002.
[3]
W. Korczyński, N-hipergrafy jako modelehierar-chicznych systemów dynamicznych, mat. konferencji „Badania Operacyjne i Systemowe”, tom
Modelowa-nie i Optymalizacja, W-wa 2002, 53-63
[4] W. Korczyński, Paun’s systems as models of
eco-nomic systems, Pre-proceedings of BIC-TA 2006 Membrane Computing Section, Wuhan, China, 124-130
[5] W. Korczyński, Paun’s systems and accounting, Pre-proceedings of WMC6, Vienna, 461-464
[6] A. Obtułowicz, P-systems for solving SAT-problem, Romanian Journal of Information Science and Tech-nology, vol. 4, Nr 1-2, 2001, 195-201
[7] Gh. Paun, Membrane Computing. An Introduction, Springer-Verlag, Berlin, 2002
[8] Gh. Paun, Computing with Membranes, Journal of Computer and System Science, 61, 2000, 108-143 [9] Gh.Paun, Computing with Membranes: A Variant,
Intern. J. of Foundations of Computer Science, 11, 1 (2000) Auckland University, CDMTCS Report 098, 1999
[10] Gh. Paun, Membrane Computing. An Introduction, Springer-Verlag, Berlin, 2002
[11] Z. Pawlak, Systemy informacyjne podstawy