You are on page 1of 21

Redes de Petri: Propriedades e Anlise

Prof. Dr. Norian Marranghello DCCE/IBILCE/UNESP Agosto de 2005

Introduo:
O objetivo desta introduo apresentar, brevemente, as redes de Petri (RdP), para que se possam estudar, na seqncia, suas propriedades e os mtodos de anlise correspondentes. Para aqueles que necessitarem de informaes mais detalhadas sobre os conceitos bsicos destas redes sugere-se a leitura da apostila Redes de Petri: Conceitos e Aplicaes, disponvel no URL: http://www.dcce.ibilce.unesp.br/~norian/cursos/mds/ApostilaRdP-CA.pdf. Redes de Petri constituem um formalismo matemtico capaz de representar sistemas digitais em um nvel de abstrao bastante alto. Seu aspecto estrutural equivale a um grafo direcionado e bipartido composto por trs elementos bsicos, quais sejam, estados, aes e arcos. Os estados e as aes correspondem aos vrtices do grafo, e os arcos s suas arestas. Os sub-conjuntos de estados e de aes so disjuntos, motivo pelo qual se diz que o grafo subjacente bipartido. Cada um dos elementos do sub-conjunto de arcos, por sua vez, tem por origem um elemento do sub-conjunto de estados e por destino um elemento do sub-conjunto de aes, ou vice-versa. Por esta razo, o grafo dito direcionado. Os estados de uma RdP representam a parte esttica do sistema modelado, isto , cada um dos possveis estados elementares pelos quais o sistema pode passar em alguma fase de seu funcionamento. As aes de uma RdP representam a parte dinmica do sistema modelado, ou seja, cada uma das operaes que o sistema pode executar no decorrer de sua existncia. Os arcos de uma RdP representam a relao de fluxo entre estados e aes. Cada estado da RdP que serve de condio prvia para a ocorrncia de determinada ao deve estar ligada a ela por um arco dirigido do estado para a ao. Cada estado da RdP

resultante da ocorrncia de uma ao , por sua vez, uma condio decorrente da operao (ou conjunto de operaes) associada ao e a ela deve estar ligado por um arco dirigido com origem na ao e destino no estado. Fora esta viso estrutural, o comportamento de uma RdP pode ser analisado, para que se possa entender o funcionamento do sistema que se estiver modelando. Para se identificar quais as condies da RdP esto satisfeitas em cada instante do seu funcionamento, utilizam-se marcas nos estados correspondentes. A distribuio das marcas pelos estados da RdP em cada instante dita marcao da rede. Graficamente, representam-se os estados por elipses, as aes por retngulos, os arcos por setas e as marcas por pontos. As elipses, freqentemente degeneram para crculos e os retngulos para quadrados ou para simples traos. Via de regra estas mudanas no influem no comportamento da rede ou no significado do objeto grfico. Contudo, em alguns poucos casos a representao de aes por retngulos ou por traos podem significar comportamentos diferentes, em particular, em algumas extenses estocsticas. Os arcos, nestes casos, tambm podem ter suas terminaes alteradas e, em vez de terminarem em setas, como usual, podem terminar em pequenos crculos, representando uma mudana no seu significado. As aes de uma RdP so potencialmente paralelas e assncronas, isto , uma vez satisfeitas as condies para a sua ocorrncia, elas podem acontecer em qualquer instante independentemente umas das outras. Para que uma ao ocorra, todas as suas pr-condies devem estar satisfeitas e todas as suas pscondies devem comportar o resultado de sua execuo. A conseqncia da ocorrncia de uma ao a eliminao de um sub-conjunto de marcas existentes nos seus estados de entrada e a criao de outro sub-conjunto de marcas nos seus estados de sada. Note-se que h mais de uma classe de RdP e muitas extenses em cada uma delas. Para cada extenso de RdP a regra geral de ocorrncia de uma ao, enunciada no pargrafo anterior, pode sofrer algumas adaptaes, restringindo-a ou relaxando-a.

Esta apostila est dividida em duas partes, quais sejam: uma primeira parte, na qual se estudam as vrias propriedades das RdP, caracterizando-se as diversas situaes pelas quais a rede pode passar; e uma segunda parte, na qual se estudam os mtodos que podem ser utilizados para analisar o comportamento do modelo.

Propriedades:
As propriedades das RdP podem ser divididas em dois grandes grupos, quais sejam: as propriedades estticas (ou estruturais) e as propriedades dinmicas (ou comportamentais). As propriedades estticas das RdP so aquelas que tm a ver com a estrutura da rede e que no se modificam no transcurso de seu funcionamento. Elas no dependem do estgio de execuo em que a rede se encontra, sendo, portanto, independentes da marcao da rede. As propriedades dinmicas das RdP so aquelas que tm a ver com o seu comportamento e que se modificam durante o funcionamento. Elas so essencialmente dependentes do estgio de execuo em que a rede se encontra e so, por conseguinte, dependentes da marcao da rede.

Conservao
A propriedade de conservao corresponde ao caso no qual o nmero total de marcas na rede no se modifica. Uma ao dita conservativa se a soma dos arcos que a liga s suas pr-condies for igual soma dos arcos que a liga s suas ps-condies. Desta forma, quando a ao for executada, nenhum recurso ligado a ela ser criado ou eliminado. Se todas as aes de uma RdP forem conservativas, diz-se que a rede estritamente conservativa. A propriedade de conservao estrita bastante restritiva, contudo, h casos nos quais possvel se associar a cada arco da rede um peso (um fator multiplicador) de modo que para esta nova combinao o conjunto de marcas removido das pr-condies de cada ao passa a ser igual ao conjunto de marcas gerado aps a execuo da ao correspondente. O que se passa a considerar agora o somatrio ponderado dos pesos dos arcos da rede. Se este somatrio for constante, pode-se dizer que a RdP conservativa em relao a

esta distribuio de pesos. Note-se que cada um destes pesos deve ser um valor inteiro e positivo. H ainda o caso em que no possvel encontrar um vetor de pesos tal que torne toda a RdP conservativa. Entretanto, pode-se encontrar um vetor de pesos que torne parte da rede conservativa. Esta situao pode ser encontrada tornando todos os elementos do vetor de pesos nulos, exceto aqueles correspondentes aos estados que se deseja considerar. Neste caso, diz-se que a rede parcialmente conservativa, em relao ao vetor de pesos P.

Reiniciabilidade
Uma RdP dita reinicivel se, para qualquer marcao alcanvel, for possvel voltar marcao inicial. Reversibilidade Marcao de base (Home-marking; Marquage daccueil) uma marcao Mh, alcanvel a partir da marcao inicial M0, tal que para toda a marcao Mi, tambm alcanvel a partir de M0, haja uma seqncia de disparos que leve de Mi a Mh. Uma RdP dita reversvel se, existir uma marcao base, acessvel de qualquer outra marcao do conjunto de alcanabilidade da rede. Repetitividade Uma RdP repetitiva se existir uma seqncia de disparos, associada a uma dada marcao, na qual todas as aes so executadas um nmero de vezes infinito. Se a seqncia existir, mas apenas algumas aes forem disparadas ilimitadamente, a rede dita parcialmente repetitiva.

Consistncia
Uma RdP consistente se ao disparar uma seqncia de aes a partir de uma marcao inicial, for possvel retornar a esta marcao executando, pelo menos uma vez, cada uma das aes da rede. possvel mostrar que uma rede consistente se, e somente se, existir um vetor , no nulo, tal que sua multiplicao pela matriz de incidncia da RdP seja igual a zero, isto , D =0.

Vivacidade
Uma RdP dita viva se for possvel executar todas as suas aes a partir de qualquer uma das marcaes alcanveis da rede. Esta propriedade muito

importante na anlise de sistemas digitais, uma vez que, quando verificada, indica a inexistncia de bloqueios no sistema modelado. Porm, a verificao da vivacidade irrestrita de uma RdP , freqentemente, muito cara. Por esta razo possvel relaxar esta propriedade, adotando-se nveis de vivacidade. Podemos, ento definir cinco nveis de vivacidade, como segue: Ao viva no nvel 4 (N4) ou, simplesmente, viva: aquela que pode ser executada pelo menos uma vez, em pelo menos uma seqncia de disparos, a partir de cada marcao pertencente ao conjunto de alcanabilidade ? A(R, M0).

Ao viva no nvel 3 (N3): aquela que pode ser executada um nmero infinito de vezes em alguma seqncia de disparos possvel a partir da marcao inicial ? S(R, M0).

Ao viva no nvel 2 (N2): aquela que pode ser executada pelo menos k vezes em alguma seqncia de disparos S(R, M0), para um dado inteiro k > 1.

Ao viva no nvel 1 (N1): aquela que pode ser executada pelo menos uma vez em alguma seqncia de disparos S(R, M0).

Ao viva no nvel 0 (N0), ou rede morta: aquela que nunca puder ser executada em qualquer seqncia de disparos S(R, M0); isto , se no existir marcao em A(R, M0) que habilite a ao em questo.

Uma RdP dita viva no nvel Ni se todas as suas aes forem vivas em um nvel j i. Vivacidade no nvel 4 a mais abrangente e corresponde vivacidade plena mencionada no incio desta seo. Pode-se dizer que a vivacidade em um determinado nvel implica a vivacidade nos nveis menos restritos, sendo o nvel 4 o mais restrito e o nvel 1 o menos restrito. Com certeza, esta propriedade no se aplica ao nvel zero, pois, se a rede viva em algum nvel diferente de zero ela no morta e vice-versa. Pode-se definir vivacidade estrita no nvel i se determinada ao for viva neste nvel, mas no em nvel superior.

Limitao
Uma RdP limitada se em cada lugar da rede, o nmero total de marcas nunca exceder a um inteiro k. Neste caso a rede dita k-limitada. Se a rede for limitada ao inteiro 1, diz-se que a rede segura. Uma RdP estruturalmente limitada se for limitada para qualquer marcao inicial. Isto significa que deve existir um vetor de inteiros positivos com dimenso igual cardinalidade do conjunto de estados da rede de tal sorte que o produto deste vetor de pesos (P) pela matriz de incidncia (D) da rede seja menor ou igual a zero, isto , P D 0.

Alcanabilidade
Uma marcao dita alcanvel em uma RdP se existir uma seqncia finita de disparos que conduza a ela a partir da marcao inicial. Se todas as marcaes alcanveis forem decorrentes da inicial, a rede dita alcanvel.

Cobertura
Uma RdP dita coberta se, para toda a marcao M, alcanvel a partir de Mo, existir outra marcao M, maior ou igual a M e alcanvel a partir de M. M considerada maior ou igual a M, se o nmero de marcas em cada lugar de M for maior ou igual ao nmero de marcas do lugar correspondente em M, para todos os lugares da rede (M M M(li) M(li), li L).

Persistncia
Uma RdP dita persistente se havendo mais de uma aes habilitadas, em qualquer das marcaes da rede, a ocorrncia de uma delas no desabilita a ocorrncia das demais.

Justia
Uma RdP dita justa se, para quaisquer duas aes, o nmero de vezes que uma executada enquanto a outra no executada finito. Esta propriedade tambm conhecida como justia limitada. Se, por outro lado, uma dada seqncia de disparos for finita ou se cada ao da rede aparecer nesta seqncia um nmero infinito de vezes, dita incondicionalmente justa. Uma RdP dita incondicionalmente justa se todas as seqncias de disparo originrias em alguma marcao de A(R, M0) forem incondicionalmente justas.

Mtodos de Anlise:
Nesta segunda parte da apostila sero vistos mtodos formais para a anlise das RdP. Estes mtodos podem ser agrupados em duas categorias, quais sejam, a dos mtodos que privilegiam a viso estrutural da rede, envolvendo uma equao fundamental a ser desenvolvida na seo seguinte, e os mtodos que consideram principalmente a viso comportamental da rede, utilizando o seu grafo de marcaes.

Equao Fundamental
Uma rede de Petri pode ser representada por duas matrizes, uma indicando os conjuntos de lugares que servem de entrada para cada uma das transies da rede e outra indicando os conjuntos de lugares que servem de sada para tais transies. A primeira delas a matriz de entrada, tambm chamada de matriz de incidncia reversa. Esta matriz descrita por D-[j,i]=#(li,I(tj)), o que significa que cada elemento da matriz de entrada D- corresponde ao nmero de arcos que conectam o lugar li entrada de cada transio tj. A segunda matriz a de sada, que tambm chamada de matriz de incidncia direta. Esta matriz descrita por D+[j,i]=#(li,O(tj)), o que significa que cada elemento da matriz de entrada D+ corresponde ao nmero de arcos que conectam a sada de cada transio tj ao lugar li. Como exemplo, tome-se a rede da Figura-1. Nessa rede tm-se trs lugares e quatro transies. As matrizes de incidncia correspondentes tero, por conseguinte, quatro linhas (uma para cada transio da rede) e trs colunas (uma para cada lugar).

t4 2 t1

l3 2 t3

l1

t2

l2

Figura-1: Exemplo de rede de Petri para a formao das matrizes de incidncia.

Para a formao da matriz de incidncia reversa (matriz de entrada), verifica-se que a transio t1 tem somente um lugar de entrada, que o lugar l1. A transio t2 possui, ligados sua entrada, os lugares l1 e l3. Os lugares l2 e l3 conectam-se entrada da transio t3 e, tambm, da t4. Note-se ainda, que o lugar l 3 est conectado entrada de t 3 por um arco com peso duplo. Por esta razo, o elemento D-[3,3] igual a 2. Para a formao da matriz de incidncia direta (matriz de sada), verificase que a transio t1 tem, como sada, os lugares l1 e l3. Note-se que, neste caso, o lugar l3 est conectado entrada de t1 por um arco com peso duplo. Por esta razo, o elemento D+[1,3] igual a 2. A transio t2 possui, ligados sua sada, os lugares l2 e l3. O lugar l2 conecta-se entrada da transio t3 e o lugar l1 da transio t4. Pelo que foi discutido, nos dois pargrafos precedentes, as matrizes de incidncia, de entrada e de sada, so dadas, respectivamente, por:

l1 1 D =
-

l2 0 0 1 1

l3 0 1 2 1 t1 t2 t3 t4 D+ =

l1 L2 l3 1 0 0 1 0 1 1 0 2 1 0 0 t1 t2 t3 t4

1 0 0

Para que se possa utilizar estas matrizes na anlise das RdP, deve-se empregar ainda um vetor indicando quais as transies devero disparar. Estes vetores de disparos, tambm conhecidos como vetores de Parikh [01], mapeiam cada transio da rede no nmero de ocorrncias dessas transies em uma determinada seqncia de disparos. Os vetores de disparos mais simples so aqueles que representam um nico disparo de uma nica transio. Eles so representados por e[j] e tm o valor 1 na j-sima posio e 0 nas demais. Os vetores de disparos unitrios, para cada uma das transies da Figura-1, so:

j=1 e[1] e[2] e[3] e[4] t1 t2 t3 t4 (1, (0, (0, (0,

j=2 0, 1, 0, 0,

j=3 0, 0, 1, 0,

j=4 0) 0) 0) 1)

Se alguma transio for disparada mais de uma vez, sua posio relativa no vetor de disparos ser consignada com o numeral correspondente. Por exemplo, se a transio t 2 disparar trs vezes o vetor de disparos representativo desta condio e[2] = (0, 3, 0, 0). Tambm possvel combinar esses vetores para representar alguma seqncia () de disparos. Neste caso, o vetor combinado passa a ser notado por f(). Por exemplo, se for necessrio representar a seqncia de disparos correspondente execuo das transies t 1, t2 e t4, sendo t 2 disparada duas vezes e as demais uma nica vez, o vetor f() = (1, 2, 0, 1) dever ser usado para representa-la. De posse das definies acima, pode-se dizer que uma transio t j est habilitada em qualquer marcao M, desde que esta marcao seja maior ou igual ao produto do vetor de disparos da transio em questo pela matriz de incidncia reversa da rede, isto , M e[j] D-. Esta condio de habilitao vlida para qualquer transio em qualquer marcao e pode ser estendida para uma seqncia de transies a serem disparadas a partir da marcao M, ou seja, M f() D-. A relao , na condio de habilitao, significa que cada elemento da marcao M precisa ser, individualmente, maior ou igual ao elemento correspondente do vetor resultante do produto do vetor de disparos pela matriz de incidncia considerada. A validade desta expresso se deve ao fato de que a matriz de incidncia reversa indica, em cada uma de suas linhas, a quantidade de marcas necessrias para o disparo da transio correspondente, bem como, a localizao de cada uma destas marcas. Por exemplo, na segunda linha da matriz D-, calculada anteriormente, tem-se o vetor (1, 0, 1); isto quer dizer que para executar a transio t2 so necessrias uma marca no lugar l1 e

uma marca no lugar l2. Ao se fazer o produto do vetor e[2] pela matriz D-, esta linha isolada e pode ser comparada com a marcao desejada para verificar se tal condio atendida pela marcao. Por exemplo, analisem-se as condies de habilitao das transies t1 e t2, na marcao inicial M0 = (1, 0, 0).
Primeiramente, tome-se o caso de t 1, quando se deve ter M 0 e[1] D . O

produto e[1] D- igual ao vetor (1, 0, 0), o qual coincide com M0 e satisfaz condio de habilitao de t1. A seguir, veja-se o caso de t2, quando se deve ter M0 e[2] D-. O produto e[2] D- igual ao vetor (1, 0, 1), como j havia sido calculado acima. Ocorre que, embora as duas primeiras posies deste produto coincidam com M0, sua terceira coluna maior do que a coluna correspondente de M0. Portanto, a condio de habilitao de t2 na marcao M0 no satisfeita, indicando que t2 no pode disparar na marcao inicial. Uma vez definida a possibilidade de execuo de uma certa transio em alguma marcao, deseja-se calcular o resultado produzido por esta execuo. Novamente, aqui pode se recorrer s matrizes de incidncia. Como j visto, a matriz de incidncia reversa multiplicada pelo vetor de disparos adequado representa o conjunto de marcas necessrio, inclusive com a indicao de sua distribuio, para a execuo de uma transio. Analogamente, pode-se verificar que a matriz de incidncia direta, ou matriz de sada, ao ser multiplicada pelo mesmo vetor de disparos indica a quantidade e a distribuio das marcas a serem criadas aps a execuo da transio considerada. Desta forma, somandose estes efeitos chega-se seguinte expresso, representativa do disparo da transio tj na marcao M.

(M, tj) = M - e[j] D- + e[j] D+

(M, tj) = M + e[j] (- D- + D+)

(M, tj) = M + e[j] D

10

Note-se que a matriz D, obtida pela subtrao da matriz de incidncia reversa da matriz de incidncia direta, conhecida como a matriz caracterstica das RdP. A equao resultante acima a equao fundamental das RdP.

Invariantes
Os invariantes em uma rede de petri representam os componentes conservativos e repetitivos da rede. H conjuntos de lugares e de transies da rede cujo comportamento no se altera durante o seu funcionamento. A identificao e a interpretao de cada um destes conjuntos importante, pois, eles refletem certas propriedades da rede que podem ser de interesse para a anlise do sistema modelado. Componentes conservativos Os componentes conservativos da rede so representados em seus invariantes de lugar, ou seja, so conjuntos de lugares da rede nos quais a soma das marcas constante durante todo o seu funcionamento. Para identificar os componentes conservativos da rede deve-se partir da equao fundamental das RdP, qual seja: Mx = M 0 + f D Recordando, nesta equao M x representa a marcao que se deseja alcanar, M 0 representa a marcao inicial da rede, f representa o vetor de disparos da rede e D representa sua matriz de incidncia global. A situao na qual todos os lugares da rede formam um nico componente conservativo muito improvvel na prtica. Por outro lado, encontrar subconjuntos de lugares nos quais o total de marcas no se altere j bem mais comum. Para encontrar tais sub-conjuntos deve-se isolar os lugares correspondentes durante a anlise. Matematicamente falando, isto significa multiplicar a equao caracterstica por um vetor de mascaramento, ao qual chamar-se- de vetor de ponderao ( VP) e o qual servir para produzir o isolamento desejado. Para introduzi-lo na equao caracterstica sem altera-la deve-se multiplicar todos os seus termos por este vetor, obtendo-se: Mx VP = M 0 VP + f D VP

11

A soluo desta nova equao ser obtida ao se igualar a zero seus termos. Sabemos que, para que a rede tenha componentes conservativos a igualdade Mx VP = M0 VP deve se verificar. Tambm se sabe que f no pode ser nulo, j que a representao do comportamento dinmico da rede. Sendo assim, podese encontrar os componentes conservativos (invariantes de lugar) da rede resolvendo-se a equao: D VP = 0. Este procedimento melhor entendido por meio de um exemplo. Imaginese a rede da Figura-2. Ela tem cinco lugares e quatro transies, sendo sua matriz caracterstica dada por:
-1 1 1 0 0

D = 0 0 1 0 1
1 0 0 1 -1

0 1 0 1 0

e seu vetor de ponderao por: VP = [I1 I2 I3 I4 I5].

l1

t1 l2 t2 l3

t3

l4 t4

l5

Figura-2: Exemplo de componentes conservativos.

O produto destes dois arranjos resulta no seguinte sistema de equaes:

12

I1 = I2 + I3 I2 = I4 I3 = I5 I1 = I4 + I5 Este sistema tem inmeras solues possveis, dependendo dos valores iniciais utilizados. Como VP um vetor de ponderao, utilizam-se os valores zero e um, resultando nos seguintes componentes conservativos. Para I 2 = 0 e I 3 = 1, VP = [1 0 1 0 1], indicando que I = {I1 I3 I5} um invariante de lugar da rede da Figura-2. Invertendo os valores, isto , para I2 = 1 e I3 = 0, VP = [1 1 0 1 0], indicando que I = {I1 I2 I4} outro invariante de lugar da rede da Figura-2. Componentes repetitivos Os componentes repetitivos so representados em seus invariantes de transio, isto , so conjuntos de transies da rede que ao serem disparadas em determinada seqncia retornam marcao de partida. Para identificar os componentes repetitivos de uma rede de Petri utilizase um procedimento anlogo ao usado para identificar os componentes conservativos, ou seja, lana-se mo de um vetor de pesos associado matriz caracterstica da rede de petri considerada e se obtm os invariantes de transio pela soluo do sistema de equaes resultante desta associao. Como a deduo foi apresentada na seo anterior, passa-se aqui diretamente a um exemplo de aplicao. Considere-se a rede apresentada na Figura-3, a qual contm sete lugares e seis transies. Sua matriz caracterstica dada por:
-1 1 0 -1 0 0 0 0 -1 1 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 -1 1 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1

D=

e seu vetor de ponderao por: VP = [I1 I2 I3 I4 I5 I6]. 13

l1

t1

l2 l4

t2

l3

t3

l5

t4

l6

t5

l7

t6

Figura-3: Exemplo de componentes repetitivos.

O produto destes dois arranjos resulta no seguinte sistema de equaes: I1 = I2 = I3 I4 = I5 = I6 Este sistema tambm tem inmeras solues possveis, dependendo dos valores iniciais utilizados, como no exemplo anterior. Portanto, seguindo o mesmo procedimento da seo anterior, aqui sero utilizados novamente os valores zero e um, por ser VP um vetor de ponderao, resultando nos seguintes componentes conservativos. Para I1 = 1 e I4 = 0, VP = [1 1 1 0 0 0], indicando que I = {t1 t2 t3} um invariante de transio da rede da Figura-3. Invertendo os valores, isto , para I 1 = 0 e I 4 = 1, VP = [0 0 0 1 1 1], indicando que I = {t4 t5 t6} outro invariante de transio da rede da Figura-3.

Reduo
Freqentemente, a complexidade para analisar sistemas de interesse prtico alta, dificultando a interpretao do modelo correspondente. Visando a minimizao desta complexidade, amide lana-se mo de tcnicas que permite a reduo do modelo em estudo, para um mais simples. Todavia, esta reduo deve preservar as caractersticas do modelo original, para que a anlise do modelo reduzido possa ser utilizada na inferncia das propriedades do modelo original do sistema. Isto significa que, para se verificar um conjunto de propriedades de uma rede de petri complexa, pode-se transforma-la em outra 14

de menor complexidade, na qual a determinao das propriedades de interesse mais fcil. Contanto que as transformaes utilizadas sejam adequadas, possvel garantir que a rede original tem as mesmas propriedades verificadas para a rede reduzida. Por outro lado, pode-se usar tcnicas de reduo para transformar um modelo abstrato de sistema em outro mais refinado, de forma hierrquica, para realizar a sntese do sistema desejado. Tcnicas H um sem nmero de tcnicas para a transformao de modelos em seus correspondentes reduzidos, preservando as propriedades de interesse. Aqui se apresentam apenas as mais simples, as quais, de acordo com Murata [02], preservam as propriedades de vivacidade, segurana e limitao. Sendo assim, a rede resultante da transformao s ser viva, segura ou limitada se a rede original for, respectivamente, viva, segura ou limitada. As tcnicas de reduo aqui apresentadas so seis, quais sejam: fuso de lugares em srie (Figura-4a); fuso de transies em paralelo (Figura-4b); fuso de transies em srie (Figura-4c); fuso de lugares em paralelo (Figura-4d); eliminao de lugares em malha fechada (Figura-4e); e eliminao de transies em malha fechada (Figura-4f).

Um dos principais pontos fracos das RdP o problema com sua complexidade. Por isto, o desenvolvimento de mtodos e tcnicas que possibilitem a reduo hierarquizada destas redes, preservando suas propriedades e, conseqentemente, facilitando sua anlise, de suma importncia. Alguns pesquisadores que desenvolveram trabalhos pioneiros sobre o assunto so: Murata et. al. [03], [04] e [05], Berthelot et. al. [06], Chu [07], Kwong [08], e Valette [09].

15

Figura-4: Principais tcnicas de reduo de redes de Petri.

Anlise Os mtodos de reduo no permitem, por si s, a anlise das propriedades da rede. Eles so transformaes aplicadas a determinada rede para simplifica-la. A anlise, propriamente dita, efetuada sobre a rede reduzida utilizando-se as demais tcnicas disponveis, tais como, a anlise de invariantes, a anlise estrutural e anlise por enumerao de estados.

Grafo de Ocorrncias
O grafo de ocorrncias de uma RdP um grafo direcionado e rotulado. Cada um de seus vrtices representa uma marcao alcanvel da rede e cada uma de suas arestas representa a execuo de uma ao. O grafo de ocorrncias ento dado pelo par GO = (V, A), no qual, V o conjunto de todos os vrtices, distintos, e rotulados com a indicao da marcao correspondente e A o conjunto de todas as arestas rotuladas com o nome da ao correspondente, que identifica a transio entre duas marcaes alcanveis da rede. O termo grafo de ocorrncias pode ser utilizado de maneira genrica, como explicado no pargrafo anterior. Ele tambm pode ser chamado de rvore, ou grafo, de cobertura. Para o caso de redes limitadas, tambm se usam os

16

termos rvore de alcanabilidade ou, menos freqentemente, rvore de acessibilidade. Na prxima seo apresenta-se o algoritmo de gerao do grafo de ocorrncias derivado de Peterson [10], o qual tem sua terminao garantida, segundo esse autor. Algoritmo de construo Para a gerao do grafo de ocorrncias define-se uma varivel , que representa um nmero qualquer de marcas e, em relao a uma varivel a qualquer, apresenta as seguintes propriedades: + a = - a = a < Os vrtices do grafo de ocorrncias podem ser de quatro tipos, quais sejam: fronteira, interiores, terminais e duplicatas. Os vrtices de fronteira so aqueles que ainda no foram processados. Os vrtices interiores so aqueles j processados e que produziram algum sucessor. Os vrtices terminais so aqueles j processados e que no possuem qualquer sucessor. Os vrtices duplicatas so aqueles iguais a algum outro n (interior ou terminal), os quais, por terem sucessores idnticos, no precisam ser analisados. No comeo, a marcao inicial o vrtice de onde partem todos os outros e definido como um vrtice de fronteira. Etapas : (1) Seja um vrtice de fronteira. (2) Se h outro vrtice na rvore, que no seja vrtice fronteira e que tenha a mesma marcao associada (M=M), ento o vrtice definido como uma duplicata. (3) Se nenhuma transio estiver habilitada na marcao M, ento definido como um vrtice terminal.

17

(4) Para todas as transies tj T, habilitadas em M, criar um novo vrtice no grafo. A marcao M associada a este novo vrtice , para cada lugar li, definida por: (a) se M(li)=, ento M(li)=; (b) se existe um vrtice no percurso do vrtice inicial ao vrtice tal que M < (M, tj) e M(li) < (M, tj)/li, ento M(li)= ; (c) em qualquer outro caso M(li) < (M, tj)/li. (5) Insere-se uma aresta rotulada com tj, direcionada do vrtice ao vrtice . (6) Redefine-se o vrtice como interior e o vrtice como fronteira. Havendo vrtices de fronteira volta-se ao passo (2). Quando no houver mais vrtices de fronteira o algoritmo termina. Anlise por enumerao de marcaes A anlise por enumerao de marcaes, tambm dita por enumerao de estados, talvez a tcnica mais empregada para a anlise de RdP. Ela se fundamenta na construo do espao de estados resultante da execuo exaustiva da rede, isto , do seu grafo de ocorrncias. Uma vez construdo o grafo possvel determinar certas propriedades da RdP considerada, levando-se em conta a marcao inicial utilizada para a gerao do espao de estados. Esta anlise requer a inspeo, por varredura, do grafo de ocorrncias. Sendo assim, considerem-se alguns exemplos: - Se ao inspecionar o grafo de ocorrncias for constatado que todos os vrtices do grafo contendo determinado lugar contiverem uma ou nenhuma marca na posio correspondente ao lugar considerado, pode-se inferir que este lugar seguro. Mais ainda, se continuando a inspeo se verificar que esta situao se repete para todos os lugares da rede, pode-se concluir que ela segura. - Se ao inspecionar o grafo de ocorrncias for constatado que determinada transio nunca utilizada, pode-se concluir que ela

18

est morta. Se todas as transies poderem ser executadas pelo menos uma vez, em pelo menos uma seqncia de disparos, a partir de cada marcao pode-se concluir que a rede viva, nvel 4. Os demais tipos de vivacidade podem ser deduzidos percorrendo-se o grafo de ocorrncia em busca das situaes especficas, conforme definidas na parte relativa s propriedades das RdP, neste texto. - Se ao inspecionar o grafo de ocorrncias nunca se encontrar o smbolo , em qualquer lugar da rede, pode-se dizer que a rede limitada. Para determinar o grau de limitao, deve-se identificar o lugar com o maior nmero de marcas no grafo de ocorrncia. A ocorrncia do smbolo em algum lugar da rede indica que ela no limitada. Apesar da convenincia na utilizao da anlise por enumerao de marcaes, h propriedades que no podem ser determinadas a partir desta anlise, por exemplo, nem sempre possvel determinar a alcanabilidade de determinada marcao My , a partir de uma marcao Mx , aps uma certa seqncia de disparos se esta seqncia contiver o smbolo ? . No caso de redes limitadas, todavia, esta definio possvel pela simples inspeo do grafo de ocorrncias. A vivacidade de redes ilimitadas constitui outro exemplo que nem sempre determinvel.

Consideraes Finais:
Esta apostila mostrou, resumidame nte, as principais propriedades das redes de petri e as tcnicas de anlise para sua identificao. Como visto, nenhuma das tcnicas de anlise existentes permite a verificao de todas as propriedades. Por conseguinte, a escolha da tcnica de anlise deve levar em considerao as propriedades que se precisam analisar. Alm disto, h um custo computacional associado a cada uma destas tcnicas, o qual tambm deve ser levado em considerao para esta escolha. Via de regra, a tcnica mais utilizada a de anlise do grafo de ocorrncias, possivelmente, devido facilidade de sua implementao e o grau de completude das anlises possveis. A tcnica menos utilizada , por outro lado, a de anlise dos invariantes, no tanto por

19

insuficincia nas propriedades observveis, mas principalmente pelo alto custo computacional envolvido em sua implementao. Para concluir, vale ressaltar que este texto foi escrito para servir como guia de estudos aos alunos da disciplina de tcnicas de simulao do DCCE/IBILCE/UNESP. No se pretende t-lo como um texto completo e exaustivo para o estudo das propriedades e dos mtodos de anlise de redes de Petri. Recomenda-se, isto sim fortemente, o aprofundamento dos estudos nos textos referenciados ao final desta resenha.

20

Referncias Bibliogrficas:
[01] R.J.Parikh, On Context-free Languages, Journal of the Association for Computing Machinery, 13(4)570-581, October, 1966. [02] T.Murata, Petri Nets: Properties, Analysis and Applications, Proceedings of the IEEE, 77(4)541-580, April de 1989. [03] T.Murata and J.Y.Koh, Reduction and expansion of live and safe marked graphs, IEEE Transactions on Circuits and Systems, 27(1)68-70, January 1980. [04] R.Johnsonbaugh and T.Murata, Additional methods for reduction and expansion of marked graphs, IEEE Transactions on Circuits and Systems, 28(10)1009-1014, October 1981. [05] I.Suzuki and T.Murata, A method for stepwise refinements and abstractions of Petri nets, Journal of Computer and Systems Sciences, 27(1)51-76, August 1983. [06] G.Berthelot, G.Roucairol, and R.Valk, Reduction of nets and parallel programs, Lecture Notes in Computer Science, vol.84, pp.277-290, 1980. [07] T.A.Chu, A method of abstraction of Petri nets, Proceedings of the International Workshop on Petri Nets and Performance Models, pp.164-173, Madisson, WI U.S.A., August 1987. [08] Y.S.Kwong, On reduction of asynchronous systems, Theoretical Computer Science, vol.5, pp.25-50, 1977. [09] R.Valette, Analysis of Petri nets by stepwise refinements, Journal of Computer and Systems Sciences, 18(1)35-46, August 1979. [10] J.L.Peterson, Petri Net Theory and the Modeling of Systems, Prentice Hall, Inc., 190 pgs., junho de 1981 (ISBN: 0136619835).

21

You might also like