• Nie Znaleziono Wyników

Sieci Petriego

Definicja 6.17. T-niezmienniki realne

Niech Np = (P, T, A, W, M0) będzie siecią Petriego, która posiada zbiór minimalnych t-niezmienników X(min) oraz zbiór nierealnych t-niezmienników X(nf ). Zbiór realnych t-niezmienników X(f ) można zbudować za pomocą następującego algorytmu:

Require: Np= (P, T, A, W, M0), X(min), X(nf )

1: X(f )← X(min)\X(nf )

2: for all x ∈ X(nf ) do

3:

Px(nf ) S

t∈supp(x)

{p ∈ P : (p, t) ∈ A ∧ (t, p) ∈ A ∧ M0(p) = 0 ∧

t0∈{u∈N(p)\N+(p)} t0 ∈ supp(x)/ o

. zbiór Px(nf ) jest to zbiór wszystkich miejsc, które powodują nierealność t-niezmiennika x zgodnie z Definicją6.16

Sieci Petriego 91 zbioru X(min)\X(nf ), które zawierają tranzycje niezbędne do dostarczenia tokenów do wszystkich miejsc w zbiorze Px(nf )

5: for all Q ∈ SPx(nf )

do

6: x0 ← x + P

u∈Q

u . nierealny t-niezmiennik x jest uzupełniany o t-niezmienniki dostarczające tokeny do miejsc powodujących ich nierealność

7: X(f )← X(f )∪ {x0} . zbiór realnych t-niezmienników jest uzupełniany o x0

8: end for

9: end for

W przypadku, gdy sieć nie zawiera łuków odczytu, zbiór minimalnych t-niezmienników jest równy zbiorowi realnych t-niezmienników.

W ramach zbioru realnych t-niezmienników można dodatkowo wyróżnić bloki tranzy-cji, które zawsze występują razem. Bloki te zwane są zbiorami MCT (Maximal Common Transition sets). Zbiory te można interpretować biologicznie jako spójne funkcjonalnie fragmenty innych procesów. Zbiory MCT są rozłączne i dzielą zbiór tranzycji na roz-łączne podzbiory (tj. relacja określająca te zbiory jest relacją równoważności). Z uwagi na ten fakt, zbiory MCT mogą służyć do uproszczonego przestawiania t-niezmienników, tj. wsparcie każdego t-niezmiennika może być przedstawione jako suma mnogościowa pewnych zbiorów MCT. Poniżej przedstawiono definicję formalną.

Definicja 6.18 ([80,81]). Zbiory MCT

Niech Np = (P, T, A, W, M0) będzie siecią Petriego, która posiada zbiór realnych t-niezmienników X(f ) oraz niech IX(f )(t) = nx ∈ X(f ) : t ∈ supp(x)o oznacza podzbiór t-niezmienników, które współdzielą tranzycję t ∈ T . Rodzinę zbiorów MCT ZM CT defi-niuje się następująco:

ZM CT =nm ⊆ T : ∀t1,t2∈m,t3∈T \mIX(f )(t1) = IX(f )(t2) 6= IX(f )(t3)o.

t-niezmienniki, jak już wspomniano, reprezentują pewne podprocesy cykliczne lub otwarte (przetwarzające „substraty” w „produkty”), z których każdy ma pewne znacze-nie dla modelowanego systemu. Minimalnych (i tym bardziej realnych) t-znacze-niezmienników może być bardzo dużo (w prosty sposób można skonstruować sieć, w której liczba t-niezmienników przyrasta wykładniczo w stosunku do liczby wierzchołków, np. łącząc odpowiednio szeregowo dwie sieci, które mają n i m t-niezmienników sieć wynikowa może mieć nawet nm t-niezmienników). Aby możliwe było wyodrębnienie istotnych znaczeniowo podprocesów należy zgrupować podobne do siebie realne t-niezmienniki w klastry, których znaczenie dla modelowanego systemu będzie determinowane przez dominujące podobieństwa niezmienników obecnych w klastrze. Klastry te zwane są t-klastrami (t-clusters) [80, 81]. Pozwalają one na zgrupowanie podobnych procesów, co ułatwia określenie ich własności i znaczenia t-niezmienników z punktu widzenia wiedzy dziedzinowej.

W procesie klastrowania istotna jest metoda pomiaru podobieństwa t-niezmienników.

Naturalną miarą podobieństwa t-niezmienników jest liczba współdzielonych tranzycji (im więcej takich samych tranzycji między dwoma t-niezmiennikami, tym bardziej są

Sieci Petriego 92

podobne). Dla takiego rozumienia podobieństwa dobre są miary Tanimoto (indeks Jac-carda) [75,92] oraz miara korelacji Pearsona [69]. Miary oparte na p-normach przestrzeni metrycznej (m. in. metryka Euklidesowa, taksówkowa) nie oddają właściwych podo-bieństw t-niezmienników, gdyż liczba współdzielonych tranzycji odpowiada podobień-stwu kierunku zwrotów wektorów w przestrzeni, a nie jedynie samej odległości między nimi.

Miara podobieństwa Tanimoto może być zdefiniowana dla dwóch t-niezmienników xi, xj ∈ X(f ) jako

s(xi, xj) = supp(xi) ∩ supp(xj) supp(xi) ∪ supp(xj). Odległość między tymi niezmiennikami będzie wtedy równa

d(xi, xj) = 1 − s(xi, xj).

W przypadku miary korelacji Pearsona miara podobieństwa będzie równa współczyn-nikowi R-Pearsona, tj. s(xi, xj) = r(xi, xj). Analogicznie odległość pomiędzy tymi nie-zmiennikami będzie równa d(xi, xj) = 1 − s(xi, xj) = 1 − r(xi, xj). Współczynnik ten przyjmuje wartości z zakresu [−1, 1], więc miara odległości ma przeciwdziedzinę [0, 2].

Dla zbioru wszystkich realnych t-niezmienników X(f ) można określić macierz odległości pomiędzy dowolną parą t-niezmienników, która staje się podstawą klastrowania. W tym celu używane są standardowe znane algorytmy, które dają zbliżone wyniki – np. metoda pojedynczego wiązania, pełnego wiązania, średnich połączeń (UPGMA). Algorytmy kla-strowania łączą hierarchicznie t-niezmienniki względem miary odległości tworząc den-drogram będący odzwierciedleniem relacji odległości między t-niezmiennikami.

Dendrogram otrzymany w wyniku zastosowania algorytmów klastrowania następnie jest dzielony na klasy przy doborze odpowiedniego poziomu odcięcia λ. Poziom odcięcia ma taki sam zbiór możliwych wartości co przyjęta miara odległości, stąd w przypadku miary Pearsona λ ∈ [0, 2]. Poziom odcięcia powoduje podział zbioru X(f ) na rozłączne podzbiory t-klastrów takich, że wewnątrz każdego t-klastra odległość między dowolnymi t-niezmiennikami nie przekracza λ. Wybór wartości λ może być wykonany np. za po-mocą algorytmu MSS (Mean Split Silhouette) [44, 78], który dobiera liczbę klastrów uwzględniając średnie dopasowanie t-niezmiennika do swojego klastra. Wynikowy zbiór klastrów dla danej miary odległości i metody klastrowania można oznaczyć jako C(λ).

Powyższe podejście polega na wyborze globalnej wartości poziomu odcięcia λ dla ca-łego dendrogramu. Nie zawsze takie podejście może skutkować najlepszym możliwym po-działem na t-klastry z uwagi na znaczenie dla modelowanego systemu. Wynika to z faktu, że różne części zamodelowanego systemu mogą być przedstawione z różnym stopniem dokładności, a miara podobieństwa t-niezmienników jest związana z liczbą współdzielo-nych tranzycji. Łatwo można wyobrazić sobie sieć, której jedną z tranzycji reprezentują-cej bardziej skomplikowany podproces można zastąpić szczegółowym zamodelowaniem tego podprocesu, które wnosi wiele nowych tranzycji do modelu. W takiej sytuacji we wszystkich t-niezmiennikach, w których uczestniczyła ta zastąpiona tranzycja pojawi się wiele nowych tranzycji, które nie zmieniają znaczenia danego t-niezmiennika, ale zmia-nie ulegną miary podobieństw, gdyż wszystkie t-zmia-niezmienniki, w których uczestniczyła zastąpiona tranzycja staną się bardziej podobne do siebie. Na rysunku6.5przedstawiona jest sytuacja opisana powyżej.

Dodatkowo, w pracach [82,83] zaproponowano arbitralne ograniczenie liczby realnych niezmienników z wykorzystaniem wiedzy dziedzinowej w celu wyeliminowania grup t-niezmienników, których różnice będą bez znaczenia dla ewenturalnych wniosków. W tym podejściu wiedza dziedzinowa jest stosowana przed samym klastrowaniem.

Sieci Petriego 93

Rysunek 6.5: Przykładowe zestawienie dwóch modeli sieci Petriego, które zawierają 16 realnych t-niezmienników. Górna sieć jest symetryczna i posiada symetryczne klastry.

Można założyć, że dolna sieć modeluje dokładnie ten sam proces co górna, przy czym tranzycja t5 została zastąpiona bardziej szczegółowym opisem podprocesu, przy czym dodany fragment sieci nie wypływa na liczbę t-niezmienników, jednak wpływa na ich podobieństwo. Cztery t-niezmienniki, które w górnej sieci zawierały tranzycję t5 były równoważne tym z tranzycjami t2, t3, t4, natomiast w dolnej części t-niezmienniki które zawierają tranzycję t5 są mocno oddalone od pozostałych t-niezmienników. Wykorzy-stano współczynnik korelacji Pearsona jako miarę odległości oraz algorytm klastrowania

UPGMA.

Przypadek pokazany na rysunku6.5jest przygotowany tak, aby w sposób bardzo wi-doczny pokazać wpływ zróżnicowanego stopnia szczegółowości modelu na dendrogram.

Pokazuje też, że podział na klastry przy doborze pewnego globalnego poziomu odcięcia nie musi w sposób optymalny odzwierciedlać znaczenia grup podprocesów modelowanego systemu (np. każda z tranzycji t2, t3, t4, t5 mogłaby być rozpisana jako bardziej złożony podproces, jednak można założyć, że po uwzględnieniu wiedzy dziedzinowej o modelo-wanym systemie różnice w podziale klastrów wynikające różnego stopnia szczegółowości byłby bez znaczenia).

W związku z powyższą obserwacją autor proponuje, aby mimo wyboru globalnego poziomu odcięcia dla całego dendrogramu, rozważać złączenia lub rozdzielenia klastrów z uwagi na ich znaczenie dla konkretnego modelu po uwzględnieniu wiedzy dziedzinowej.

Postępowanie to można podzielić na następujące kroki:

Dane wejściowe: sieć Petriego Np = (P, T, A, W, M0), zbiór realnych t-niezmienników X(f ).

Sieci Petriego 94

1. Utworzenie dendrogramu ze zbioru realnych t-niezmienników na podstawie wybra-nej miary odległości i za pomocą wybrawybra-nej metody klastrowania.

2. Wyznaczenie wartości λ dzielącej dendrogram na zbiór n t-klastrów C(λ) = {c1, c2, . . . , cn} - klastry ponumerowane w kolejności według podobieństwa, tj.

zgodnie z kolejnością na dendrogramie: ∀i∈{1,...,n−2}d(ci, ci+1) ¬ d(ci, ci+2).

3. Dla każdej pary ci, ci+1 ∈ C(λ) należy w oparciu o interpretację i wiedzę dziedzi-nową podjąć decyzję, czy klastry te powinny być scalone, czy zostawione w tej samej formie.

4. Postępowanie z poprzedniego kroku należy powtarzać do momentu pozostawienia wszystkich par bez zmian - w wyniku scaleń powstaje zbiór klastrów C0(λ).

5. Dla każdego klastra ci ∈ C0(λ) należy w oparciu o interpretację i wiedzę dziedzi-nową podjąć decyzję, czy powinien zostać bez zmian, czy powinien być rozdzielony na dwa mniejsze klastry.

6. Postępowanie z poprzedniego kroku należy powtarzać do momentu, gdy wszystkie klastry zostają bez zmian - w wyniku rozdzieleń powstaje zbiór klastrów C00(λ).

Aby zachować informację o złączeniach i rozdzieleniach względem głównej linii od-cięcia można zachować nazwy klastrów zgodnie z podjętymi decyzjami, np. złączenie klastrów ci i ci+1daje klaster cici+1, a rozdzielenie klastra ci daje dwa klastry ci,1 oraz ci,2 (lub cia oraz cib).

Do nadawania znaczenia klastrom pomocne jest odszukanie wzorców podobieństw między t-niezmiennikami występującymi wewnątrz klastra. Wzorce te mogą być różnie definiowane – np. mogą to być zbiory MCT i tranzycje, które są wspólne dla 100% t-niezmienników w klastrze, 50% t-t-niezmienników w klastrze itd. (czyli podprocesy, które stanowią podstawę wielu wariantów bardziej rozbudowanych procesów).

Jeśli sieć zawiera alternatywne równoważne sobie strukturalnie drogi przepływu to-kenów, to drogi te mogą znaleźć się w ramach jednego klastra. Dodatkowo, jeśli dwie lub więcej par takich dróg znajdzie się w ramach klastra, to klaster będzie zawierał t-niezmienniki reprezentujące wszystkie kombinacje przejść między takimi parami dróg (gdyż każda z takich kombinacji jest reprezentowana przez osobny t-niezmiennik, a względem siebie poszczególne kombinacje leżą w takiej samej odległości w metryce Pe-arsona).

Sytuacja taka została zaprezentowana w górnej części rysunku6.5- istnieją tam dwie grupy czterech tranzycji, które są sobie strukturalnie równoważne – {t2, t3, t4, t5} oraz {t6, t7, t8, t9}. Łączna liczba t-niezmienników jest równa więc iloczynowi liczb wszystkich alternatywnych ścieżek między tymi grupami, tj. 4 · 4 = 16. Wsparcie każdego z tych t-niezmienników będzie więc zawierało zawsze po jednej tranzycji z obu tych zbiorów.

Z uwagi na fakt, że zbiory te są rozłączne, tj. {t2, t3, t4, t5} ∩ {t6, t7, t8, t9} = ∅, to formalnie można opisać zbiór wszystkich t-niezmienników w tej sieci jako zbiór, którego każdy element zawiera pewną transwersalę [97] rodziny zbiorów A = {t2, t3, t4, t5}, dla której t2 = t3 = t4 = t5 = {t6, t7, t8, t9} (tranzycje t2, t3, t4, t5 tworzące rodzinę A są tranktowane w tym ujęciu jako zbiory w celu odwzorowania problemu na problem transwersal). Wszystkie elementy rodziny zbiorów A są równe, więc zbiór wszystkich transwersal posiada bijekcję na iloczyn kartezjański tych zbiorów, tj. {t2, t3, t4, t5} × {t6, t7, t8, t9}.

Wsparcie każdego t-niezmiennika można opisać jako sumę mnogościową pewnych zbio-rów MCT – opisane tu tranzycje są jednocześnie jednoelementowymi zbiorami MCT,

Sieci Petriego 95

więc w ogólności takie wzorce podobieństwa można zdefiniować nie dla pojedynczych tranzycji, tylko dla zbiorów MCT. Jednak dla uproszczenia i czytelności w rozdziałach 7 i 8 jednoelementowe zbiory MCT nie są wyróżniane i opisywane, a w Tabelach 7.4, B.1,B.2,B.3,B.4,B.5 jednoelementowe zbiory MCT są zapisywane jako tranzycje.

Opisany wyżej wzorzec dla klastra można więc zdefiniować jako zbiór t-niezmienników oparty na iloczynie kartezjańskim pewnych zbiorów MCT.

Definicja 6.19. Zbiór t-niezmienników oparty na iloczynie kartezjańskim rodziny