• Nenhum resultado encontrado

Analise das Redes de Petri Nos captulos anteriores mostramos o poder de modelagem das redes de Pe-

3.1 Propriedades Comportamentais

3.1.1 Alcancabilidade ( Reachability )

Alcancabilidade ou Reachability e fundamental para o estudo de propriedades din^amicas de qualquer sistema. A alcancabilidade indica a possibilidade de atingirmos uma determinada marcac~ao pelo disparo de um numero nito de transic~oes, a partir de uma marcac~ao inicial. Nesta sec~ao apresentamos este conceito no contexto das redes de Petri [4, 19, 13].

Para a rede de Petri marcadaN = (R;M0), representada na gura 3.1,

o disparo de uma transic~aoti altera a marcac~ao da rede, conforme as regras

descritas no captulo 1. Uma marcac~aoM0e dita acessvel de M

0 se existe

uma sequ^encia de transic~oes que, disparadas, levam a marcac~ao M0 (ver

sec~ao 1.6). Ou seja, se a marcac~aoM0 habilita a transic~aot0, disparando-se

esta transic~ao atinge-se a marcac~aoM1. A marcac~aoM1 habilita t1 a qual

sendo disparada atinge-se a marcac~aoM2 e assim por diante ate a obtenc~ao

da marcac~aoM0. De nindo-se formalmente, temos:

De nic~ao 3.1.1

-

Alcancabilidade

: sejaMi[tj > Mk eMk[th > Mlent~ao

Mi[tjth > Ml. Por recorr^encia designamos o disparo de uma sequ^encias2T

porM[s > M0. O conjunto de todas as possveis marcac~oes obtidas a partir

da marcac~ao M0 na rede N = (R;M0) e denotado por A(R;M0) = fM 0 2 INmj 9 s j M 0[s > M 0

g.(ver sec~ao 1.9), onde m e a cardinalidade do

conjunto de lugares.

O problema da analise desta propriedade consiste em determinarmos se uma dada marcac~aoM0

2A(R;M

0) da rede marcada N. Na gura 3.1 dese-

jamos, por exemplo, saber se a marcac~aoM0= (0;0;0;1) (lugarp

3marcado)

e acessvel a partir da marcac~ao inicial apresentada (M = (1;0;0;0)) (ape- nas p0 com uma marca). Observe-se que atingimos esta marcac~ao tanto

executando a sequ^encia s0 = t

0t1t3 como tambem executando a sequ^encia

s00 = t

2t3, ou seja, esta marcac~ao pode ser obtida a partir da marcac~ao

inicial.

Em alguns casos, desejamos observar apenas alguns lugares espec cos da rede em estudo. Estes problema e denominado submarcac~ao alcancavel (submarking reachability). Aqui analisamos se uma dada submarcac~aoM0

2

A(R;M0) da rede marcada N, ondeM

0 e qualquer marcac~ao restrita a um

subconjunto de lugares de P.

Muitos outros problemas de analise podem ser observados em termos do problema de alcancabilidade. Por exemplo, se uma rede ca em deadlock

p p p p t t t t 0 0 1 1 2 3 2 3 t 4 Figura 3.1: Rede N

em uma determinada marcac~ao, podemos querer saber se essa marcac~ao e acessvel.

3.1.2 Limitac~ao (

Boundedness

)

Nesta sec~ao apresentamos o conceito de limitac~ao (boundedness) nas redes de Petri e sua import^ancia na veri cac~ao de uma especi cac~ao de sistemas [19].

De nic~ao 3.1.2

-

Limitac~ao

: seja um lugar pi 2P, de uma rede de Pe-

tri marcada N1 = (R;M0). Este lugar s~ao ditos k-limitados (k-bounded)

(k 2 IN) ou simplesmente limitados se para toda marcac~ao acessvel M 2

A(R;M0); M(pi) k.

Caso a propriedade da de nic~ao acima n~ao seja observada, o lugar e dito n~ao-limitado. Note que o limite k e o numero de marcas que um lugar pode acumular. O lugar p4 da gura 3.2 e 2-limitado enquanto o lugar p3 e 4-

limitado. Uma rede de Petri marcada N = (R;M0) e dita k-limitada se o

numero de marcas de cada lugar de N n~ao excede k em qualquer marcac~ao acessvel de N (M(p) k; M GA(R;M ); p P).

p p p p p p t t t t 0 1 2 3 5 4 0 1 2 3 N

Figura 3.2: Rede Limitada (Bounded)

De nic~ao 3.1.3

-

Rede Limitada

: dizemos que uma rede N1 = (R;M0)

e limitada (bounded) sek(pi)1 para todo pi 2P.

Dado que todos os lugares da rede da gura 3.2 s~ao limitados, ent~ao essa rede e classi cada como limitada. Ainda podemos concluir que essa rede e

4 limitada, pois nenhum lugar acumula mais que 4 marcas em qualquer

marcac~ao acessvel de N.

3.1.3 Seguranca (

Safeness

)

Nesta sec~ao apresentamos a propriedade de seguranca (safeness) das rede de Petri. O conceito de safenesse uma particularizac~ao do conceito de limitac~ao [4]. Esta propriedade e uma das mais importantes quando na especi cac~ao de sistemas digitais.

Como vimos na sec~ao anterior um lugarpi e dito k-limitado se o numero

de marcas que este lugar pode acumular estiver limitado ao numero k. Um lugar que e 1-limitado pode ser simplesmente ser chamado de seguro (safe).

De nic~ao 3.1.4

-

Lugar Seguro

: seja um lugar pi 2 P de uma rede

marcada N1 = (R;M0), onde R= (P;T;I;O;K),pi e seguro se para toda

marcac~ao M0

2A(R;M

0) tivermos M(pi) 1.

Portanto, um lugar pode ser usado para representar uma porta ou mesmo um ip- op. Dizemos que a rede N = (R;M ) e segura (binaria) se todos

os lugares dessa rede s~ao seguros, ou seja, todos os lugares desta rede podem conter uma ou nenhuma marca.

De nic~ao 3.1.5

-

Rede Segura

: uma redeN1 = (R;M0) e de nida como

segura se M(pi)1, para todopi2P.

p p p p p p t t t t 0 1 2 3 4 5 0 1 2 3

Figura 3.3: Rede Segura (Safe)

Na gura 3.3 temos uma rede segura, pois todos os lugares desta rede n~ao acumulam mais do que uma marca.

Em uma rede que tem um lugar ou mesmo uma transic~ao rotulada a uma condic~ao externa especi cando a entrada do sistema, conforme a re- de da gura 3.6.a, podemos ter lugares que acumulam marcas. A entrada deste modelo e representada pela transic~aot0 associada a condic~ao X. Esta

transic~ao pode disparar a qualquer momento, a medida em que houver in- formac~ao (X for verdadeira) para ser tratada. Desta forma, observamos que os lugaresp0;p1;p2 e p4 podem acumular mais do que uma marca, ou seja,

esta rede n~ao e segura. Dede que a rede so possua arcos de peso unitario, podemos transforma-la em uma rede segura(safe), pela introduc~ao de luga- res complementares (duais). Esta transformac~ao e realizada observando os seguintes aspectos:

 Se pk 2O(ti) e pk 62 I(ti), ent~ao cria-se o lugar p 0

k, onde p0

k 2 I(ti) e

Se pk 2I(tj), ent~ao o lugarp 0

k 2O(tj).

Este novo lugar criado (p0

k) representa o lugar pk vazio, ou seja, estes

lugares s~ao complementares. Quando ha uma marca no lugar pk o lugar

p0

k n~ao possui marcas e vice-versa. Dessa maneira conseguimos controlar o

numero de marcas em cada lugar, pois os lugares duais agem como \travas", impossibilitando o incremento de marcas nos lugares originais.

p p p p p t t z i k z i k k’ p t p z i k tj p t p z i k tj p k ’ (a.1) (a.2) (b.1) (b.2) Trans. Trans.

Figura 3.4: Transformac~ao de Rede N~ao-Segura(Unsafe) em Segura(Safe) Dado que o lugarti da sub-rede da gura 3.4.a1, potencialmente, pode

ser disparada um numero in nito de vezes, podemos concluir que o lugarpk

e n~ao-seguro, pois o disparo de ti incrementa o numero de marcas de pk e

como pk n~ao e entrada de nenhuma transic~ao, a remoc~ao de suas marcas e

impossvel. Essa rede pode ser convertida em uma rede segura, pela intro- duc~ao do lugarp0

k, sendo este lugar entrada da transic~aoti, ondeM(p0

k) = 1,

conforme apresentamos na gura 3.4.a.2.

De forma semelhante, a rede da gura 3.4.b.1 tambem e uma rede n~ao- segura, pois o disparo de um numero potencialmente in nito deti possibilita

o acumulo de um numero in nito de marcas em pk. Para tornar essa rede

segura, criamos o lugar p0

k, onde esse lugar e entrada da transic~aoti e sada

da transic~aotj, dado que esta transic~ao e sada depk. Como no caso anterior,

o lugar p0

k deve ser mono-marcado. Observe-se que os lugares pk e p0

k s~ao

complementares, ou seja, quando ha uma marca empk n~ao ha marca empk0

p p p p p t t t t 0 1 2 3 4 0 1 2 3 (a) (X)

Figura 3.5: Rede N~ao-Segura

Na gura 3.6 apresentamos a uma rede segura obtida a partir da rede n~ao-segura da gura 3.5 pela introduc~ao dos lugares duais p0

0;p 0 1;p 0 2 e p 4;

marcados com uma marca cada. Observe-se que com disparo det0, a marca

do lugar p0

0 e retirada, o que desabilita esta transic~ao e deposita uma mar-

ca no lugar p0. A transic~ao t0 so podera ser disparada apos o disparo da

transic~ao t1, pois com o disparo desta, uma marca e restaurada no lugar

p0. Observe-se, portanto, o comportamento semelhante entre os lugarespi e

seus respectivos lugares duais p0

i do modelo. t t t t p p p p p p p 0 1 2 3 1 1 ’ 2 2 ’ 3 4 4 ’ (b) p 0 p 0 ’ (X)

3.1.4

Liveness

A aus^encia de deadlock (impasse) em sistemas esta fortemente ligada ao conceito de liveness [1] [33]. Nesta sec~ao, de niremos o conceito de liveness em func~ao das possibilidades de disparo de transic~oes.

Deadlocktem sido fortemente estudado na ci^encia da computac~ao. Para analisarmos este conceito, observemos a rede de Petri da gura 3.7.a, onde representamos dois processos que compartilham dois recursos representados pelos lugaresp6ep7; no entanto se os dois processos precisam desses recursos

em um mesmo momento, o sistema pode entrar em deadlock. As seguintes sequ^encias s~ao possveis, t0t1t2t3t4t5, t3t4t5t0t1t2, contudo se dispararmos

a transic~ao t0 e em seguida dispararmos t3 n~ao temos marcas sufucientes

para disparar as transic~oes t1 e/ou t4, ou mesmo qualquer outra transic~ao,

cando todo o sistema bloqueado ou em deadlock. Deadlock em uma rede Petri e a impossibilidade do disparo de qualquer transic~oes da rede. A rede da gura 3.7.b n~ao possui deadlock, dado que n~ao existe uma marcac~ao que impossibilite o disparo de uma outra transic~ao do modelo.

p p p p p p p p t t t t t t 0 1 2 3 4 5 6 7 0 1 2 3 4 5 p p p p p p p p t t t t t t 0 1 2 3 4 5 6 7 0 1 2 3 4 5 (a) (b)

Figura 3.7: Redes Live e Non-Live

De nic~ao 3.1.6

-

Transic~ao Potencialmente Disparavel

: chamamos uma transic~ao ti potencialmente disparavel em uma marcac~ao M0 se existe

uma marcac~ao M0

2A(R;M

0) tal queti e habilitada para esta marcac~ao.

Denominamos uma transic~ao ti live em uma marcac~ao M se ti e poten-

cialmente disparavel para todas as marcac~oes M 2A(R;M), ou seja, uma

De nic~ao 3.1.7

-

Rede Live

: uma rede N1 = (R;M0) e dita live se para

toda Mi 2A(R;M

0) e possvel disparar-se qualquer transic~ao de N1 atraves

do disparo de alguma sequ^encia de transic~oes deL(R;M0).

p p p p p p t t t t t 0 0 1 2 3 4 5 1 2 3 4

Figura 3.8: Nveis de Liveness

Livenesse uma propriedade fundamental para sistemas encontrados no mundo real, no entanto muitas vezes e muito caro observar esta propriedade em alguns sistemas de grande porte. Assim sendo, ha uma tend^encia de relaxarmos esta condic~ao e adotarmos nveis de liveness para as transic~oes e, consequentemente, para as redes [53]. Uma transic~ao ti de uma rede

N1 = (R;M0) e denominada:

1. Morta (dead) ou nvel (n0), se esta transic~ao nunca podera ser dispara-

da em qualquer sequ^encia de L(R;M0), ou seja, se n~ao existe alguma

marcac~aoM0

2A(R;M

0) tal que M

0 habilita t

i;

2. N1 live, se pode ser disparada pelo menos uma vez em alguma

sequ^encia de L(R;M0);

3. N2 live, se ti pode ser disparada pelo menos k vezes em alguma

sequ^encia de disparo de L(R;M0);

4. N3 live, setiaparece um numero in nito de vezes em alguma sequ^encia

de disparo de L(R;M0);

5. N4 liveou simplesmente live, setien1 livepara todas as marcac~oes

Uma rede de Petri N1 = (R;M0) e classi cada comoni-live se todas as

transic~oes na rede s~aoni-live. Observe-se que uma reden4-live, corresponde

a de nic~ao de rede live apresentada anteriormente. Ressaltamos ainda que se uma rede en4-liveent~ao esta rede tambemen3-liveque implica sern2-live

e n1-live. Obviamente, este princpio n~ao se aplica para o nvel n0.

3.1.5 Cobertura (

Coverability

)

A propriedade de cobertura(coverability) de uma rede de Petri esta forte- mente ligada ao conceito de alcancabilidade e de liveness apresentado nas sec~oes anteriores.

Quando desejamos saber, por exemplo, se alguma marcac~aoMi pode ser

obtida a partir de uma marcac~ao espec ca M0, temos o problema denomi-

nado cobertura de uma marcac~ao.

Uma marcac~aoM0 em uma rede e dita coberta se existe uma marcac~ao

M00  M

0 para cada componente dos vetores M00 e M0, ou seja, o numero

de marcas de cada lugar da rede eM00(p

i)M(pi).

De nic~ao 3.1.8

-

Cobertura de uma Marcac~ao

: seja a marcac~ao M0

em uma rede N1 = (R;M0). M

0 e dita coberta(coverable) se existe uma

marcac~ao M00

2A(R;M

0) tal que M 00(p

i)M(pi);8pi2P.

Este conceito e ligado ao conceito de transic~ao potencialmente disparavel (N1 live). SejaM

0 a marcac~ao mnima necessaria para o disparo da tran-

sic~ao ti, assim sendo, a transic~ao ti so sera disparavel(N1 live) seM 0 for

passvel de cobertura (coverable).

Em alguns problemas desejamos apenas observar o comportamento de determinados lugares. Para isto restringimos a pesquisa apenas a estes luga- res de particular interesse; neste caso, desejamos observar se uma determi- nada sub-marcac~ao e passvel de cobertura. Este problema e chamado por cobertura de uma submarcac~ao(submarking coverability).