II Konferencja Naukowa KNWS'05 "Informatka- stuka c remios o" 15-18 cerwca 2005, Z otniki Luba skie WYKRYWANIE BLOKAD W SYSTEMACH PRIORYTETOWYCH Andrej Karatkiewic Insttut Informatki i Elektroniki, Uniwerstet Zielonogórski 65-246 Zielona Góra, ul. Podgórna 50 e-mail: a.karatkiewic@iie.u.gora.pl STRESZCZENIE W artkule predstawiono metod wkrwania blokad we współbie nch sstemach priortetowch, opisanch modelem sieci Petriego priortetami statcnmi. Metoda ta bauje na modfikowanm algortmie upartch biorów wkrwania blokad w klascnch sieciach Petriego. 1. WPROWADZENIE Więksość współcesnch sstemów cfrowch może bć traktowana jako współbieżne. Dotc to arówno cęści sprętowej, jak i algortmów, wkonwanch pre te sstem. Dlatego wiele jęków opisu sprętu (np. VHDL, Verilog) powala na modelowanie współbieżnch procesów dskretnch. Powstał też sereg matematcnch modeli opisu sstemów współbieżnch, takich jak np. sieci Petriego lub Statecharts. Metod anali sstemów współbieżnch mają duże nacenie praktcne [1]. Analia i werfikacja takich sstemów, w tm wkrwanie blokad, jest problemem skomplikowanm, co spowodowane jest wkładnicą ależnością pomięd ilością osiągalnch stanów globalnch a ilością stanów lokalnch.. Jedną e nanch metod takiej anali jest metoda upartch biorów [2], powalająca popre badanie cęści prestreni stanów, casami dużo mniejsej niż całość, wnacać osiągalne blokad sstemu ora ( pewnmi ograniceniami) analiować niektóre inne własności. Metoda ta ostała opracowana jednak dla klascnego modelu sieci Petriego i nie uwględnia uwarunkowań priortetowch (istotnch np. dla diagramów Statechart [3]). Istnieją prace, opisujące prekstałcenie ograniconej sieci Petriego priortetami (to nac takiej, że na biore trancji adana jest relacja priortetów) na klascną sieć Petriego achowaniem ekwiwalentnm [4]. W proponowanm artkule opisano algortm badania własności współbieżnch, dskretnch sstemów priortetowch, opracowan wkorstaniem metod prekstałceń sieci do postaci klascnej ora algortmu upartch biorów. 67
2. INFORMACJE PODSTAWOWE 2.1. Sieci Petriego i priortet Sieci Petriego [5] są popularnm modelem matematcnm i graficnm, służącm do opisu sstemów współbieżnch. Sieć Petriego może bć predstawiona jako dwudieln graf skierowan dwoma rodajami wierchołków, które nawane są miejscami i trancjami. Stan sieci Petriego, nawan nakowaniem, wnacan jest popre nacniki, które mogą najdować się w miejscach sieci. Jeśli nacniki najdują się we wsstkich wejściowch miejscach trancji, to taka trancja jest aktwna i może ostać realiowana. Realiacja trancji usuwa jeden nacnik każdego miejsc wejściowch i dodaje jeden nacnik do każdego miejsc wjściowch trancji. Tak opisana sieć jest siecią wkłą; casem jednakże achodi potreba ropatrenia sieci łukami ważonmi [5]. W takich sieciach do łuków są prpisane wagi całkowite, a warunkiem aktwności trancji jest obecność w jej każdm miejscu wejściowm ilości nacników nie mniejsej, niż waga odpowiedniego łuku. Ilość nacników, usuwanch i dodawanch do miejsc sieci podcas realiacji trancji, wnaca się wagami odpowiednich łuków. Sieć wkłą można traktować jako sieć, której wagi wsstkich łuków są równe 1. Sieć jest bepiecną, jeśli w każdm osiągalnch nakowań żadne miejsce sieci nie awiera więcej niż jeden nacnik. Sieć jest ograniconą, jeśli istnieje granica górna ilości nacników w każdm miejscu sieci dla wsstkich osiągalnch nakowań. Siecią priortetami (statcnmi) [4] nawana jest sieć Petriego taka, że na jej biore trancji T jest definiowana relacja priortetowa ρ; a (t,u) ρ onaca, że trancja t ma niżs priortet od trancji u. Jeśli w nakowaniu M trancja t jest aktwna, to może ostać realiowana tlko wted, gd żadna trancja o wżsm priortecie nie jest aktwna. Nałożenie na sieć priortetów wkluca niektóre jej ewolucje. Na rs. 1 pokaan jest prkład sieci (więt [4]) ora jej graf osiągalności. 1,3 1,5 2,3 2,5 4 Rs. 1. Prkład sieci Petriego i jej grafu osi galno ci. Priortet ρ = {(,)} uniemo liwia mian nakowania, anacon prerwan strałk 68
2.2. Metoda upartch biorów Upartm biorem (stubborn set) dla nakowania M nawa się biór trancji T S, któr spełnia tr warunki: (1) każda nieaktwna trancja w T S ma puste miejsce wejściowe p takie, że wsstkie trancje, dla którch p jest miejscem wjściowm, należą do T S ; (2) żadna aktwna trancja w T S nie ma wspólnego miejsca wejściowego trancją poa T S ; (3) T S awiera aktwną trancję. Metoda polega na tm, że w każdm danm nakowaniu smuluje się realiację aktwnch trancji należącch tlko do T S, budując w ten sposób cęściow (redukowan) graf osiągalności, powalając na określenie niektórch własności sieci. W swojej klascnej wersji dla dowolnej sieci Petriego graf redukowan awiera wsstkie blokad sieci [2]. 2.3. Konstruowanie sieci Petriego, odpowiadającej sstemowi priortetowemu W [4] opisana ostała metoda, powalająca prekstałcić sieć Petriego priortetami (ograniconą) na klascną (nie priortetową), ekwiwalentną behawioralnie. Ekwiwalencja ta w asadie nie jest pełna, ale ostaje achowan sereg istotnch właściwości funkcjonalnch, również blokad. Metoda polega na tm, że dla każdej trancji, takiej że : (,) ρ, wprowada się dodatkowe miejsce p, które jest wejściowm i wjściowm dla trancji i jest połącone innmi trancjami sieci w taki sposób, że suma nacników w p i miejscach wejściowch trancji jest stała. Miejsce p jest puste wted i tlko wted, gd trancja jest aktwna, co uniemożliwia realiację trancji. Niestet spełnienie warunków bepieceństwa sieci wkłej priortetami, niekoniecnie pociąga ich spełnienie w sieci be priortetów. Z powodu braku miejsca nie opisano tej metod scegółowo. Na rs. 2 pokaan jest prkład jej astosowania sieć Petriego, odpowiadająca sieci priortetami (rs. 1) [4]. 2 p 2 Rs. 2. Prkład astosowania metod Besta-Koutnego (dla sieci rs. 1). Pogrubione łuki maj prpisane wagi. Miejsce p jest miejscem dodatkowm. 69
Łatwo auważć, że graf osiągalności ostał taki sam, jak dla sieci priortetami rs. 1; różnica jednak polega na tm, że trancje i, współbieżne dla sieci na rs. 1, najdują się w konflikcie na rs. 2. 3. WYKRYWANIE BLOKAD W SIECIACH PETRIEGO Z PRIORYTETAMI 3.1. Metoda Wsstkie blokad w sieci priortetowej, jak w każdm sstemie dskretnm, mogą bć wkrte pr pomoc konstruowania pełnej prestreni stanów. Jednak pr próbie astosowania do sieci Petriego priortetami metod upartch biorów, skutecnie redukującej ilość badanch stanów, to okaże się, że można nie wkrć wsstkich blokad. Wracając do prkładu rs. 1; dla nakowania pocątkowego biorem upartm minimalnm (nie awartm w innch) jest biór {}. Ogranicając się do smulacji realiacji, traci się możliwość wkrcia blokad {2,5}. Jest to wnikiem faktu, że realiacja w stanie pocątkowm powoduje aktwność trancji, po cm realiacja staje się niemożliwa. Może się darć nawet taka stuacja, że w biore trancji priortetowej sieci Petriego, odpowiadającm definicji upartego bioru, żadna trancja nie będie mogła ostać realiowana, bo realiacji aktwnch trancji należącch do bioru, będie preskadać aktwna trancja o więksm priortecie spoa bioru. Wdaje się intuicjnie ocwistm, że metoda upartch biorów może bć stosowana dla sstemów priortetowch, be recwistego wkonania prekstałcenia sieci do postaci klascnej, ale definicja upartego bioru wmaga w tm prpadku korekt. Definicja. Upartm biorem dla nakowania M sieci priortetowej nawa się biór trancji T S, któr spełnia seść warunków: (1) każda nieaktwna trancja w T S ma puste miejsce wejściowe p takie, że wsstkie trancje, dla którch p jest miejscem wjściowm, należą do T S ; (2) żadna aktwna trancja w T S nie ma wspólnego miejsca wejściowego trancją poa T S ; (3) T S awiera aktwną trancję; (4) jeśli aktwna trancja w T S nie może ostać realiowana dlatego, że są aktwne trancje o więksm priortecie, jedna takich trancji należ do T S ; (5) jeśli aktwna trancja w T S ma miejsce wjściowe, które jest miejscem wejściowm dla trancji takiej, że (,) ρ, to T S ; (6) jeśli dla aktwnej trancji T S (,) ρ, to każda trancja, której miejsce wjściowe jest miejscem wejściowm dla, należ do T S. Twierdenie. Zredukowan graf osiągalności sieci Petriego priortetami, skonstruowan w ten sposób, że dla każdego ropatrwanch nakowań smulowane są realiacje tlko tch aktwnch trancji, które należą do bioru T S dla danego nakowania, spełniającego wmienione powżej seść warunków, awiera wsstkie osiągalne blokad sieci. 70
Poprawność twierdenia wnika poprawności metod upartch biorów dla klascnej sieci Petriego (dowód patr w [6]) i metod Besta-Koutnego prekstałcenia sieci priortetowej na sieć be priortetów (dowód patr w [4]). Można jednak auważć, że ostatni warunek (6) jest btecn. Chodi w nim o to, że jeśli realiacja aktwnej trancji (niech to będie ) dodaje nacniki do miejsc wejściowch trancji takiej, że (,) ρ, może to uniemożliwić realiację trancji. Jeśli i nie mają wspólnch miejsc wejściowch, takie uniemożliwienie okaże się tlko tmcasowm (do realiacji ), więc nie będie miało wpłwu na osiągalne blokad. Jeśli i mają wspólne miejsca wejściowe, to najduje się w T S e wględu na warunek (2). Wobec powżsego warunek (6) można definicji usunąć. 3.2. Prkład W prkładie rs. 1 skorgowanej definicji upartego bioru odpowiada tlko biór {,}, wsstkie blokad ostaną więc wkrte. Poniżej podano dwa inne prkład. 1,2,3,4,3,4,9 a b p6 c p7 d p8 2,3,4,5,4,7,9 p9 e f 0 ρ={(c,a), (d,a), (c,b), (d,b), (c,e), (d,e), (a,f), (d,f), (a,g), (b,g)} Rs. 3. Prkład astosowania metod g 11 3,4,5,6 9,11 7,8,9 a b 1,5 4,5 1,6 b a 2,6 3,6 4,6 ρ={(a,),(b,)} p6 Rs. 4. Prkład astosowania metod Na rs. 3 pokaano sieć priortetową, która ma o jedną osiągalną blokadę mniej, niż odpowiednia sieć be priortetów ({5,8,10}) i redukowan graf osiągalności, skonstruowan 71
a pomocą aproponowanej metod. Na rs. 4 pokaano sieć priortetową (modfikowan prkład [7]), do której stosowanie klascnej metod upartch biorów nie powoliłob wkrć blokad {2,6} ora {3,6} (nie ostałab smulowana realiacja trancji w nakowaniu pocątkowm strałka prerwana na grafie). Stosowanie proponowanej metod powala wkrć wsstkie blokad. 4. PODSUMOWANIE Predstawiona metoda powala w sposób oscędn wobec casu i pamięci wkrwać blokad we współbieżnch sstemach priortetowch. Metoda jest łatwa do aimplementowania programowego i może bć wkorstana w sstemach komputerowego wspomagania projektowania układów sterowania logicnego, w programowaniu współbieżnm i innch astosowaniach sstemów priortetowch jako cęść formalnej anali i werfikacji. Dalse badania w tm kierunku będą dotcł anali innch behawioralnch właściwości sstemów priortetowch, popre konstruowanie redukowanch prestreni osiągalności ora strukturalnej anali sstemów priortetowch. Praca naukowa finansowana e rodków Komitetu Bada Naukowch jako projekt badawc 4 T11 006 24. LITERATURA [1] M. Heiner: Petri net based sstem analsis without state eplosion, Proc. High Perfomance Computing 98, Boston, April 1998, session Petri net Applications and HPC, pp. 394-403 [2] A. Valmari: State of the art report: Stubborn sets, Petri Nets News., 46, 1994, pp. 6-14 [3] A. Karatkevich: Deadlock Analsis in Statecharts, Proc. Forum on Specification & Design Languages 03, Frankfurt, September 2003, session Propert Specification and Analsis, pp. 414-424 [4] E. Best, M. Koutn: Petri net semantics of priorit sstems, Theoretical Computer Science, 96, 1992, pp. 175-215 [5] J. L. Peterson: Petri net theor and the modeling of sstems, Prentice-Hall, Inc., 1981 [6] A. Valmari: The State Eplosion Problem, Lecture Notes on Computer Science, 1491, 1998, pp. 429-528 [7] E. Best: Petri net semantics of priorities, Etended Abstracts of Concurrenc and Compositabilit, S. Miniato, Februar-March 1990, pp. 11-14 72