Hipergrafy w selekcji podsieci automatowych Selection of SM

Transkrypt

Hipergrafy w selekcji podsieci automatowych Selection of SM
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={v1,…,vn} jest skończonym, niepustym zbiorem
wierzchołków;
E={E1,…,En} 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={v1,…,vn} jest skończonym, niepustym zbiorem
wierzchołków;
jest
skończonym
zbiorem
E={E1,…,En}
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 )
Hipergraf
transwersal dokładnych
HXT,
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 HD 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)
(3)
gdzie:
P jest skończonym, niepustym zbiorem miejsc;
T jest skończonym, niepustym zbiorem tranzycji;
F ⊆ ( P × T ) ∪ (T × F ) ,
2.7 Hipergraf transwersal dokładnych
2.9 Hipergraf współbieżności
(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]:
PN ′ = ( P ′, T ′, F ′) ,
(5)
∀t ∈ T ′ : • t = t • = 1;
P ′ = •T ′ ∪ T ′•;
F ′ = (( P ′ × T ′) ∪ (T ′ × P ′)) ∩ F
(6)
(7)
(8)
że
Hipergrafem współbieżności HC 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.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.10 Hipergraf sekwencyjności
Hipergraf sekwencyjności HS 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ę procesu selekcji
podsieci automatowych.
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 procesu 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
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
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ę procesu selekcji,
opisanego powyżej.
Rys.3. Detailed SM-Components selection process used
in research
Fig.3. Szczegóły procesu 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 rezultat y ba dań
Tab.1. Patrial res ults of r es earch
Benchmark
Czas
Czas całego
Czas
Czas całego
Czas
Czas
wyznaczenia
procesu
wyznaczenia
procesu
wyznaczeni
całego
pokrycia selekcji pokrycia selekcji - a pokrycia - procesu
Backtrackin Backtracking Zachłanny Zachłanny
Exact [s] selekcji g [s]
[s]
[s]
[s]
Exact [s]
bridge
0.119
0.338
0.128
0.254
0.002
0.162
cncrr002
0.281
0.504
0.288
0.449
0.002
0.162
frame
0.204
0.748
0.201
0.387
0.002
0.188
P2N2
0.702
2.901
0.711
1.684
0.009
0.841
MG_NP
0.439
16.521
0.438
0.644
0.005
0.188
Philosophe
0.382
0.651
0.312
0.577
0.002
0.194
rs2
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. Rezultat y śr ednie bada ń
Tab.2. Average res ults of r esearch
Algorytm Średni czas Średni czas Średnia min.
wyznaczenia
całego
liczba
pokrycia [s]
procesu
podsieci
selekcji [s]
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.
Min.
liczba
podsieci
B/Z/T
2/2/2
5/5/5
3/3/3
4/4/4
3/4/3
6/6/6
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. Czas 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ą.
Czas 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.
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:
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
107
mgr inż. Łukasz Stefanowicz
Uniwersytet Zielonogórski
ul. Prof. Z. Szafrana 2
65-246 Zielona Góra
email: [email protected]