XV International PhD Workshop OWD 2013, October Hipergrafy w selekcji podsieci automatowych

Podobne dokumenty
ZASTOSOWANIE TRANSWERSALI HIPERGRAFÓW DO MINIMALIZACJI ROZMIARU PAMIĘCI JEDNOSTEK STERUJĄCYCH

Zastosowanie sztucznej inteligencji w testowaniu oprogramowania

Metody Programowania

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

MODELOWANIE MONTAŻOWEJ STRUKTURY WYROBU ZA POMOCĄ HIPERGRAFU I GRAFU SKIEROWANEGO ORAZ USTALANIE DOPUSZCZALNEJ KOLEJNOŚCI MONTAŻU

Wybrane podstawowe rodzaje algorytmów

WYKORZYSTANIE LOGIKI SEKWENTÓW GENTZENA DO SYMBOLICZNEJ ANALIZY SIECI PETRIEGO

Matematyczne Podstawy Informatyki

Sortowanie topologiczne skierowanych grafów acyklicznych

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

XII International PhD Workshop OWD 2010, October Metodyka pozyskiwania i analizy wyników badań symulacyjnych ścieżek klinicznych

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

656 PAK vol. 57, nr 6/2011. Doskonała sieć Petriego w projektowaniu współbieżnych układów sterujących

Kolorowanie wierzchołków

ZASTOSOWANIE SPLOTU FUNKCJI DO OPISU WŁASNOŚCI NIEZAWODNOŚCIOWYCH UKŁADÓW Z REZERWOWANIEM

DYNAMICZNA ANALIZA SYSTEMÓW WSPÓŁBIE NYCH

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Krytyczne czynniki sukcesu w zarządzaniu projektami

Algorytmy i Struktury Danych.

Problem skoczka szachowego i inne cykle Hamiltona na szachownicy n x n

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie

Kolorowanie wierzchołków grafu

AiSD zadanie trzecie

Matematyczne Podstawy Informatyki

Programowanie dynamiczne cz. 2

XIII International PhD Workshop OWD 2011, October 2011 METODA REEINGINEERINGU ORGANIZACJI Z WYKORZYSTANIEM SYMULATORA PROCESÓW BIZNESOWYCH

Problemy z ograniczeniami

Liczbę 29 możemy zaprezentować na siedem różnych sposobów:

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

10. Redukcja wymiaru - metoda PCA

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych.

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

PROBLEM ROZMIESZCZENIA MASZYN LICZĄCYCH W DUŻYCH SYSTEMACH PRZEMYSŁOWYCH AUTOMATYCZNIE STEROWANYCH

Teoria grafów - Teoria rewersali - Teoria śladów

Proposal of thesis topic for mgr in. (MSE) programme in Telecommunications and Computer Science

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

PROGRAMOWANIE DYNAMICZNE W ROZMYTYM OTOCZENIU DO STEROWANIA STATKIEM

Akademia Morska w Szczecinie. Wydział Mechaniczny

ZASTOSOWANIE GRAFU WIDOCZNOŚCI W PLANOWANIU TRASY PRZEJŚCIA STATKU APPLICATION OF A VISIBILITY GRAPH IN SHIP S PATH PLANNING

UNIKANIE IMPASÓW W SYSTEMACH PROCESÓW WSPÓŁBIEŻNYCH

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

Algorytmy Grafowe. dr hab. Bożena Woźna-Szcześniak, prof. UJD. Wykład 5 i 6. Uniwersytet Humanistyczno-Przyrodniczy im. Jana Długosza w Częstochowie

ZWROTNICOWY ROZJAZD.

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

APLIKACJA NAPISANA W ŚRODOWISKU LABVIEW SŁUŻĄCA DO WYZNACZANIA WSPÓŁCZYNNIKA UZWOJENIA MASZYNY INDUKCYJNEJ

Minimalne drzewa rozpinające

Algorytmiczna teoria grafów

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Modelowanie produkcji obudowy separatora olejowego za pomocą diagramów aktywności UML i -sieci

TEORIA GRAFÓW I SIECI

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

ZAGADNIENIE TRANSPORTOWE

Algorytm dyskretnego PSO z przeszukiwaniem lokalnym w problemie dynamicznej wersji TSP

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Podstawowe własności grafów. Wykład 3. Własności grafów

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Projektowanie i analiza algorytmów

ZRÓWNOWAŻONY MIEJSKI SYSTEM TRANSPORTOWY

9. Schematy aproksymacyjne

TEORIA GRAFÓW I SIECI

Synteza logiczna układu realizującego zespół funkcji przełączających z użyciem bramek XOR w strukturach CPLD

Analiza Sieci Społecznych Pajek

Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń)

a) 7 b) 19 c) 21 d) 34

Symboliczna analiza układów sterowania binarnego z wykorzystaniem wybranych metod analizy sieci Petriego

Kody blokowe Wykład 2, 10 III 2011

Metody tworzenia efektywnych komitetów klasyfikatorów jednoklasowych Bartosz Krawczyk Katedra Systemów i Sieci Komputerowych Politechnika Wrocławska

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

AUTOMATYZACJA PROCESÓW DYSKRETNYCH 2016

Formularz recenzji magazynu. Journal of Corporate Responsibility and Leadership Review Form

PROGRAMOWANIE SIECIOWE. METODA ŚCIEŻKI KRYTYCZNEJ

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

WIELOKRYTERIALNE PORZĄDKOWANIE METODĄ PROMETHEE ODPORNE NA ZMIANY WAG KRYTERIÓW

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Programowanie dynamiczne i algorytmy zachłanne

ZASTOSOWANIE TECHNOLOGII WIRTUALNEJ RZECZYWISTOŚCI W PROJEKTOWANIU MASZYN

Programowanie dynamiczne

Zagadnienie transportowe

NUMERYCZNE ALGORYTMY PRZECHOWYWANIA MACIERZY RZADKICH

WYBÓR PUNKTÓW POMIAROWYCH

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

Logika rozmyta typu 2

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Algorytmy i Struktury Danych

PRÓBY EKSPLOATACYJNE KOMPOZYTOWYCH WSTAWEK HAMULCOWYCH TOWAROWEGO

Matematyczne Podstawy Informatyki

1. Sieci Petriego. Rys. 1-1 Przykład sieci Petriego

WYZNACZANIE KOSZTÓW TRANSPORTU Z WYKORZYSTANIEM OCTAVE 3.4.3

Transkrypt:

XV International PhD Workshop OWD 2013, 19 22 October 2013 Hipergrafy w selekcji podsieci automatowych Selection of SM-Components based on Hypergraphs Łukasz Stefanowicz, Uniwersytet Zielonogórski (24.04.2013, prof. zw. dr hab. inż. Marian Adamski, Uniwersytet Zielonogórski) Abstract The paper deals with State Machine Components (SM-Components) selection of Petri nets based on hypergraphs theory. Petri nets are used for modeling of concurrency processes. The SM-Components selection is classified as NP-hard problem so there does not exists polynomial algorithm which can solve this problem. It should be pointed out that selection is especially important because it determines the final number of sequential automata. In the article it will be shown introduction, main definitions, methodology, research results and summary. The SM-Components can be selected in two possible ways: traditional and based on hypergraphs. The article contains description of used three algorithms: backtracking, greedy and exact transversals. On this basis it has been presented the problem, possible solutions, as well as researches carried out showing the advantages and disadvantages of each method. The summary contains an objective comment on the article and the results of research. Streszczenie Referat porusza zagadnienie selekcji podsieci automatowych sieci Petriego z wykorzystaniem modelu hipergrafowego. Wykorzystano w tym celu trzy metody, a mianowicie dokładny algorytm z nawrotami, metodę zachłanną oraz algorytm bazujący na zastosowaniu transwersal dokładnych. Na tej podstawie przedstawiony został problem, zaprezentowano możliwe rozwiązania, a także przeprowadzono badania ukazujące zalety i wady poszczególnych metod. 1. Wprowadzenie Sieci Petriego są wykorzystywane głównie do modelowania procesów współbieżnych, ponieważ umożliwiają zapis miejsc zarówno sekwencyjnych, jak i równoległych [1,2]. Z uwagi na stosunkowo prosty mechanizm zapisu miejsc oraz tranzycji są one dosyć powszechnie wykorzystywane na całym świecie. Bardzo często spore rozmiary sieci, a także wykładnicza zależność rozmiaru od liczby stanów uniemożliwia analizę [1,2,3]. Aby analiza była możliwa, wykorzystuje się selekcję podsieci automatowych sieci Petriego uzyskując w ten sposób zagadnienie mniej złożone [4]. Selekcja podsieci może zostać wykonana z wykorzystaniem metod klasycznych, a także używając modelu hipergrafowego. Należy w tym momencie podkreślić, iż zastosowanie hipergrafów pozwala w znacznej większości przypadków na analizę w czasie wielomianowym [5,6,7]. W bieżącym artykule zaprezentowano możliwe trzy algorytmy uzyskania pokrycia, również z zastosowaniem modelu hipergrafowego: algorytm z nawrotami, zachłanny oraz metodę wykorzystującą transwersale dokładne [6,8,9]. Cykl postępowania sprowadza się do wyznaczenia hipergrafu współbieżności na podstawie sieci bazowej. Hipergraf ten przedstawiony w formie macierzy zawiera wierzchołki (kolumny), które odzworowują miejsca sieci Petriego, a także hiperkrawędzie (wiersze) odwzorowujące relacje pomiędzy miejscami. W dalszej kolejności wyznaczany jest hipergraf selekcji oraz wyznaczana transwersala dokładna stanowiąca rozwiązanie [6,7,10]. Opisany proces zostanie szczegółowo przedstawiony w dalszej części artykułu. 2. Podstawowe definicje 2.1 Hipergraf Hipergraf H definiuje dwójka [11]: H = ( V, E) (1) gdzie: V={v 1,,v n} jest skończonym, niepustym zbiorem wierzchołków; E={E 1,,E n} jest zbiorem hiperkrawędzi, czyli podzbioru zbioru P(V) wszystkich możliwych 102

niepustych zbiorów, których elementy należą do V [5]. 2.2 Graf Graf G jest szczególnym przypadkiem hipergrafu H. Formalnie graf definiuje dwójka [11]: G = ( V, E) (2) gdzie: V={v 1,,v n} jest skończonym, niepustym zbiorem wierzchołków; E={E 1,,E n} jest skończonym zbiorem nieuporządkowanych par wierzchołków, zwanych krawędziami. 2.3 Sieć Petriego Sieć Petriego PN jest dwudzielnym grafem skierowanym o dwóch rodzajach wierzchołków: miejscach i tranzycjach połączonych skierowanym łukiem [1,2]. Sieć Petriego definiuje trójka: PN = ( P, T, F) (3) gdzie: P jest skończonym, niepustym zbiorem miejsc; T jest skończonym, niepustym zbiorem tranzycji; F ( P T ) ( T F), (4) jest skończonym, niepustym zbiorem łuków. 2.4 Podsieć automatowa sieci Petriego Podsiecią automatową PN sieci Petriego PN jest taka jej spójna podsieć [12]: P N = ( P, T, F ), (5) że t T : t = t = 1; (6) P = T T ; (7) F = (( P T ) ( T P )) F (8) 2.5 Transwersala Transwersalą (bazą wierzchołkową, pokryciem wierzchołkowym) hipergrafu H jest zbiór [9,11]: T V (9) zawierający wierzchołki incydentne do każdej krawędzi hipergrafu [5]. Transwersalę nazywamy minimalną, jeśli nie zawiera żadnej innej transwersalni hipergrafu H. 2.6 Transwersala dokładna Transwersalą dokładną D hipergrafu H jest zbiór [9]: D V (10) wierzchołków hipergrafu H, incydentny do wszystkich krawędzi hipergrafu H, przy czym każda krawędź jest incydentna z dokładnie jednym wierzchołkiem zbioru D, tworzącego transwersalę dokładną. 2.7 Hipergraf transwersal dokładnych Hipergraf transwersal dokładnych H XT, nazywany dalej xt-hipergrafem, to hipergraf, w którym wszystkie minimalne transwersale są jednocześnie transwersalami dokładnymi [9]. Mówimy, że hipergraf należy do klasy hipergrafów dokładnych wtedy i tylko wtedy, gdy: H H XT (4) 2.8 Hipergraf dokładny Hipergraf dokładny H D to hipergraf, w którym każdy zbiór wierzchołków zgodnych (nie połączonych krawędzią) wchodzi w skład przynajmniej jednej transwersalni dokładnej [6]. Hipergraf dokładny jest generalizacją hipergrafu transwersal dokładnych, z uwagi na co prawidłowa jest zależność: H XT H D (5) 2.9 Hipergraf współbieżności Hipergrafem współbieżności H C nazywamy hipergraf wyznaczony na podstawie grafu znakowań, który reprezentuje właściwą współbieżność miejsc danej sieci Petriego [6]. Struktura hipergrafu współbieżności w formie macierzowej jest następująca: Wierzchołki (kolumny macierzy) odwzorowują miejsca sieci Petriego Hiperkrawędzie (wiersze macierzy) odwzorowują relacje pomiędzy miejscami. Wierzchołki są połączone krawędzią wtedy i tylko wtedy, gdy są oznakowane w odpowiadającym grafie znakowań (miejsca, które sąwykonywanie współbieżnie). 2.10 Hipergraf sekwencyjności Hipergraf sekwencyjności H S to hipergraf powstały na skutek wyznaczenia transwersal dokładnych hipergrafu współbieżności [6]. Struktura hipergrafu sekwencyjności w formie macierzowej jest następująca: Wierzochołki (kolumny macierzy) odwzorowują miejsca, bądź też makromiejsca sieci Petriego, Hiperkrawędzie (wiersze macierzy) odwzorowują transwersale dokładne D, a co za tym idzie podsieci automatowe. Efektywne metody wyznaczania hipergrafu współbieżności oraz hipergrafu sekwencyjności przedstawiono m.in. w [5] oraz [6]. 103

3. Sformułowanie problemu Selekcja podsieci automatowych jest istotna przede wszystkim w procesie dekompozycji [12]. Na jej podstawie uzyskiwane są docelowe podsieci automatowe, które umożliwiają pokrycie całej sieci Petriego. Algorytmy przybliżone pozwalają na otrzymanie rezultatu w głównej mierze nadmiarowego, a co za tym idzie nie jest ono optymalne. Algorytmy dokładne (kolorowanie, backtracking) pozwalają na uzyskanie rezultatów nie zawierających nadmiarowych podsieci, ponieważ przeszukiwany jest kompletny zbiór rozwiązań, z uwagi na co otrzymane rozwiązanie jest optymalne, a liczba podsieci minimalna. Analiza z wykorzystaniem modelu hipergrafowego [6] pozwala na uzyskanie rezultatu dokładnego w czasie wielomianowym dla znakomitej większości przypadków [7]. Należy podkreślić, iż selekcja jest problemem zaliczanym do klasy NPtrudnych, z uwagi na co obecnie nie jest znany algorytm pozwalający na uzyskanie rezultatu dokładnego w czasie wielomianowym. Proces selekcji można podzielić na cztery podstawowe etapy [6]: 1) Wyznaczenie hipergrafu współbieżności na podstawie sieci bazowej, 2) Wyznaczenie podsieci automatowych, 3) Właściwa selekcja podsieci automatowych, 4) Wyznaczenie rozwiązania pokrycia. Rysunek 1 przedstawia ideę selekcji podsieci automatowych. Rys.1. Proces analizy selekcji podsieci automatowych Fig.1. SM-Components selection analysis process 4. Aktualny stan wiedzy Selekcja podsieci automatowych należy do problemów klasy NP-trudnej. Oznacza to, iż nie istnieje uniwersalny wielomianowy algorytm pozwalający na uzyskanie rozwiązania optymalnego w czasie wielomianowym. Dekompozycję sieci Petriego w postaci selekcji podsieci automatowych można przeprowadzić z zastosowaniem metod klasycznych wykorzystujących grafy, a także wykorzystując teorię hipergrafów. Selekcja bazująca na teorii grafów zakłada wykorzystanie kolorowania grafu [6,13,14], natomiast wykorzystanie teorii hipergrafów bazuje na metodzie wyznaczenia transwersal hipergrafu dokładnego, zaproponowanej w [6]. Metoda ta została rozwinięta o zastosowanie hipergrafu transwersal dokładnych, zaproponowana w [7]. Metody dokładne charakteryzują się wykładniczą złożonością obliczeniową [15], z uwagi na co wymagają zastosowania metod aproksymacyjnych. Te z kolei pozwalają na uzyskanie rozwiązania zawierającego z reguły nadmiarowe podsieci, jednak w akceptowalnym czasie [6,13]. Metoda wykorzystująca hipergraf dokładny nie zawsze jest skuteczna, ponieważ nie istnieje wielomianowy algorytm pozwalający na przeprowadzenie testu, czy zadany hipergraf należy do klasy hipergrafów dokładnych. Metoda zaproponowana w [7] bazuje na wykorzystaniu hipergrafu transwersal dokładnych, a ponieważ istnieje wielomianowy algorytm pozwalający na przeprowadzenie testu w czasie wielomianowym [9], czy zadany hipergraf należy do klasy hipergrafów transwersal dokładnych możliwe jest przeprowadzenie selekcji w czasie wielomianowym. Innymi słowy możliwe jest uzyskanie pokrycia dokładnego, a co za tym idzie rozwiązania optymalnego pod warunkiem, że hipergraf selekcji będzie należał do klasy hipergrafów transwersal dokładnych. 5. Krótka charakterystyka metod wykorzystanych w badaniach Niniejszy artykuł zakłada wykorzystanie trzech algorytmów w celu uzyskania pokrycia: 1) Algorytm z nawrotami (backtracking), 2) Algorytm zachłanny (greedy), 3) Algorytm wykorzystujący transwersale dokładne, bazujący na xt-hipergrafie. 5.1 Algorytm z nawrotami Metoda backtrackingowa pozwala na uzyskanie rozwiązania dokładnego, a co za tym idzie optymalnego, ponieważ sprawdza wszystkie możliwe kombinacje. W rezultacie zwracane jest pokrycie najmniejsze. Największą wadą takiego rozwiązania jest niestety złożoność obliczeniowa, która jest wykładnicza. W rzeczywistości oznacza to, iż metoda ta sprawdzi się jedynie dla małych sieci. Algorytm ten działa w bardzo prosty spoób. W pierwszej kolejności wybierana jest podsieć, którą następnie usuwamy. Jeżeli taki zbiór podsieci stanowi nadal pokrycie sieci, uzyskany w ten sposób rezultat jest uznawany za lepszy od dotyczasowego. W dalszych etapach algorytm rekurencyjnie poszukuje rozwiązania optymalnego dla wszystkich posieci sieci bazowej. Metoda z nawrotami zawsze zwróci najlepsze rozwiązanie, a co za tym idzie optymalne, co jest niewątpliwie ogromną zaletą. Największą wadą jest 104

wykładnicza złożoność obliczeniowa, co w praktyce oznacza, że dany problem może nie zostać rozwiązany, bądź też rozwiązanie nie zostanie wyznaczone w akceptowalnym czasie. 5.2 Algorytm zachłanny Algorytm zachłanny poszukuje rozwiązania bazując na podstawie decyzji, która jest lokalnie optymalna [16]. Każdy krok metody polega na wyborze rozwiązania aktualnie optymalnego. Do zalet metody należy zaliczyć złożoność obliczeniową. Najistotniejszą wadą metody jest fakt, że rozwiązanie uznawane za lokalnie optymalne nie zawsze jest globalnie optymalne. Z uwagi na fakt, iż mówiąc o selekcji podsieci automatowych mówimy o równoważnym hipergrafie selekcji, algorytm zachłanny przedstawiony został poniżej w wersji wierzchołkowej. Zasadę działania można przedstawić następująco: 1) Zbiór pokrycia = zbiór pusty. 2) Wybór wierzchołka istotnego (jedyny należący do danej krawędzi). Jeżeli takowy nie istnieje, wybierany jest wierzchołek o największym stopniu. W tym punkcie następuje selekcja rozwiązania lokalnie optymalnego. Jeżeli nie jest możliwe jednoznaczne określenie wierzchołka, wybierany jest pierwszy możliwy. 3) Wybrany lokalnie optymalny wierzchołek jest dodawany do zbioru pokrycia, natomiast usuwany z hipergrafu selekcji. 4) Następuje sprawdzenie, czy zbiór ten stanowi pokrycie. jeśli tak nie jest, powtarzany jest krok 2. 5.3 Algorytm transwersal dokładnych Algorytm transwersal dokładnych został opisany w [6]. Idea metody została przedstawiona na rysunku 2. Pierwszym krokiem jest transpozycja macierzy hipergrafu sekwencyjności oraz redukcja cykliczna nazywana Cyclic-Core [3]. Polega ona na redukcji zdominowanych kolumn oraz dominujących wierszy. Następnie dla tak uzyskanego hipergrafu wyznaczana jest pierwsza transwersala dokładna. Warto zauważyć, iż cały proces może zostać wykonany w czasie wielomianowym pod warunkiem, że hipergraf poddany redukcji cyklicznej będzie należał do klasy hipergrafów dokładnych. Ponadto możliwe jest wykonanie w czasie wielomianowym testu, czy hipergraf należy do klasy hipergrafów transwersal dokładnych (hipergraf dokładny jest generalizacją hipergrafu transwersal dokładnych), z uwagi na co już na etapie uzyskania hipergrafu po redukcji możliwe jest ocenienie prawdopodobieństwa uzyskania rozwiązania dokładnego. Jak przedstawiono w [7], ponad 85% testowanych sieci zawierało hipergraf selekcji należący do klasy xt. Oznacza to, że dla ponad 85% testowanych przypadków możliwe jest uzyskanie rozwiązania dokładnego w czasie wielomianowym, co jest niewątpliwie ogromną zaletą metody. Zastosowanie teorii hipergrafów pozwala zredukować czasu wykonania z wykładniczego na wielomianowy dla znakomitej większości przypadków. Rys.2. Idea metody transwersal dokładnych Fig.2. Idea of exact transversal method 6. Proces selekcji podsieci automatowych Cały proces selekcji podsieci automatowych można przedstawić w następujących krokach: 1) Dana jest sieć wejściowa. 2) Na podstawie sieci wejściowej wyznaczany jest hipergraf współbieżności, w którym wierzchołki odpowiadają miejscom sieci Petriego, natomiast hiperkrawędzie opisują relacje pomiędzy miejscami. 3) Na podstawie hipergrafu współbieżności wyznaczany jest hipergraf sekwencyjności, w którym wierzchołki odpowiadają miejscom, natomiast hiperkrawędzie określają podsieci automatowe [6]. 4) Właściwa selekcja podsieci automatowych za pomocą metody z nawrotami, algorymu zachłannego lub transwersal dokładnych. 5) Wyznaczone zostaje ostateczne rozwiązanie,. Rysunek 3 przedstawia istotę selekcji, opisanego powyżej. Rys.3. Detailed SM-Components selection process used in research Fig.3. Szczegóły selekcji podsieci automatowych użytego w badaniach 105

7. Badania Istotą badań jest wykorzystanie benchmarków w celu ukazania skuteczności oraz sprawności metod zaprezentowanych w artykule. W szczególności zostały porównane czasy wykonywania poszczególnych algorytmów, uwzględniając newralgiczne miejsca, a także zwracane rezultaty. Wykorzystano 30 benchmarków, których sieci należą do różnych klas: MG (marked Graphs), FC (Free-Choice), EFC (Extended Free-Choice) oraz SN (Simple Nets). Kolumna minimalna liczba podsieci zawiera podział ze względu na wykorzystane algorytmy: Backtracking (B), Greedy (G), Transwersal dokładnych (T). Z uwagi na obszerność danych tabelarycznych zostały wybrane reprezentatywne benchmarki oraz przedstawione poniżej (tab.1). Tab.1. Częściowe rezultaty badań Tab.1. Patrial results of research Benchmark wyznaczenia pokrycia - Backtrackin g [s] całego selekcji - Backtracking [s] wyznaczenia pokrycia - Zachłanny [s] całego selekcji - Zachłanny [s] wyznaczeni a pokrycia - Exact [s] całego selekcji - Exact [s] Min. liczba podsieci B/Z/T bridge 0.119 0.338 0.128 0.254 0.002 0.162 2/2/2 cncrr002 0.281 0.504 0.288 0.449 0.002 0.162 5/5/5 frame 0.204 0.748 0.201 0.387 0.002 0.188 3/3/3 P2N2 0.702 2.901 0.711 1.684 0.009 0.841 4/4/4 MG_NP 0.439 16.521 0.438 0.644 0.005 0.188 3/4/3 Philosophe rs2 0.382 0.651 0.312 0.577 0.002 0.194 6/6/6 Tabela 1 zawiera wybrane reprezentatywne benchmarki z grupy testowanych. Jak można zauważyć, algorytm wykorzystujący transwersale dokładne góruje nad algorytmem z nawrotami oraz zachłannym pod kątem czasu wykonywania, umożliwiając uzyskanie tak samo dobrych rezultatów. Algorytm zachłanny dla sieci MG_NP nie umożliwia uzyskania optymalnej wartości, natomiast z nawrotami cechuje się sporym czasem wykonywania, z odróżnieniu od algorytmu transwersal dokładnych, który w najkrótszym czasie umożliwia znalezienie rozwiązania optymalnego. Dla wartości wyszczególnionych w tabeli 1 wyznaczono wartości średnie zaprezentowane w tabeli 2. Tab.2. Rezultaty średnie badań Tab.2. Average results of research Algorytm Średni czas wyznaczenia pokrycia [s] Średni czas całego selekcji [s] Średnia min. liczba podsieci B 0.178 0.429 3.155 G 0.167 0.328 3.190 T 0.002 0.140 3.155 Jak można słusznie zauważyć, wykładniczy ale i dokładny algorytm z nawrotami pozwala na znalezienie rozwiązania optymalnego. Główną wadą algorytmu jest złożoność czasowa, która jest o ponad 30% większa niż algorytmu zachłannego oraz o ponad 200% większa niż algorytmu wykorzystującego transwersale dokładne. 8. Wnioski oraz podsumowanie W artykule zaprezentowano selekcję podsieci automatowych sieci Petriego, wykorzystując przy tym model hipergrafowy. Należy zwrócić uwagę, iż selekcja jest problemem zaliczanym do klasy problemów NP-trudnych. Głównym celem artykułu było zaprezentowanie możliwości rozwiązania problemu selekcji za pomocą hipergrafów. W związku z tym zaprezentowane zostały trzy algorytmy: z nawrotami, zachłanny, a także transwersal dokładnych. Algorytm ostatni został zaproponowany oraz opisany w [6], natomiast jego zmodyfikowana wersja została przedstawiona oraz poddana badaniom w [7]. Istotą badań było wykazanie sprawności oraz skuteczności poszczególnych algorytmów. Ze względu na zbyt duże rozmiary wyników badań, została wyszczególniona grupa benchmarków reprezentatywnych, a na ich podstawie przedstawione częściowe rezultaty. Można zauważyć, iż algorytm z nawrotami, który de facto pozwala na uzyskanie rozwiązania optymalnego wymaga często sporo więcej czasu na wykonanie. Fakt ten jest związany z wykładniczą złożonością obliczeniową. Algorytm zachłanny pozwala na znalezienie rozwiązania w optimum lokalnym, które nie zawsze jest równoznaczne ze znalezieniem rozwiązania optymalnego globalnie. wykonywania jest nierzadko krótszy od algorytmu z nawrotami, jednak dane rozwiązanie może nie być najlepsze. Algorytm transwersal dokładnych pozwala na znalezienie 106

rozwiązania dokładnego dla sporej większości przypadków w czasie wielomianowym [7], co też potwierdzają przedstawione badania. Należy zwrócić uwagę, iż dane rozwiązanie jest tak samo dobre, jak uzyskane za pomocą algorytmu z nawrotami, który cechuje się wykładniczą złożonością obliczeniową. wymagany do wykonania algorytmu z nawrotami jest o ponad 30% większy od czasu wykonania algorytmu zachłannego oraz o ponad 200% większy od algorytmu transwersal dokładnych. Literatura 1. Murata T.: Petri Nets: Properties, Analysis and Applications, Proceedings of IEEE, 1989 2. Karatkevich A.: Dynamic analysis of Petri net-based discrete systems, Springer, 2011 3. Karatkevich, A., Wisniewski, R.: Computation of Petri nets covering by SM-components based on the graph theory. Electrical Review, vol. 8, pp. 141 144, 2012 (in Polish) 4. Rudell R. L.: Logic Synthesis for VLSI Design. PhD Thesis. EECS Department, University of California, Berkeley, 1989 5. Wiśniewski R., Adamski M., Wiśniewska M.: Polynomial algorithm for concurrency hypergraph formulation of free-choice Petri, Measurement, Automatics, Control, nr 07, s. 650-652, 2012 6. Wisniewska, M.: Application of hypergraphs in decomposition of discrete systems. Lecture Notes in Control and Computer Science, vol. 23, Univ. of Zielona Gora Press, 2012 7. Stefanowicz Ł, Adamski M., Wiśniewski R., Application of an Exact Transversal Hypergraph in Selection of SM-Components, Technical Innovation for the Internet Things, IFIP Advanced in Information and Communication Technology, Springer, 2013. 8. Knuth D.: Dancing Links, Millennial Perspectives in Computer Science, 2000 9. Eiter, T.: Exact Transversal Hypergraphs and Application to Boolean µ-functions. Journal of Symbolic Computations, vol. 17, pp. 215--225, Academic Press Ltd, 1994 10. Kovalyov A.: Concurrency Relations and the Safety Problem for Petri Nets, Application and Theory of Petri Nets, 1992 11. Berge C.: Graphs and Hypergraphs, American Elsevier Pub. Co., 1989 12. Karatkevich, A.: SM-Components problem reductions of Petri nets. Telecommunication Review, vol. 6/2008, 2008 (in Polish) 13. Kubale M., Obszarski P., Piwakowski K.: Hypergraphs coloring, Scientific Papers of Silesian University of Technology, 2006 14. Banaszak Z., Kuś J., Adamski M.: Petri Nets: modeling, control and discrete systems synthesis, Wydawnictwo Wyższej Szkoły Inżynierskiej, 1993 15. Blanchard, M.: Comprendre, Maîtriser Et Appliquer Le Grafcet Cepadues, Tolouse, 1979 (in French). 16. DeMicheli, G.: Synthesis and Optimization of Digital Circuits, McGraw-Hill Higher Education, 1994 Adres służbowy Autora: mgr inż. Łukasz Stefanowicz Uniwersytet Zielonogórski ul. Prof. Z. Szafrana 2 65-246 Zielona Góra email: L.Stefanowicz@weit.uz.zgora.pl 107