redes de petri - unicamprafael/ia851/petri.pdf · redes de petri 11 problemas de análise em rp os...

Post on 30-Nov-2018

233 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Redes de Petri 1

Redes de Petri

Algumas semelhanças com a abordagembaseada em automata;

Pode representar uma classe mais amplade SED’s;

Poucos resultados relativos à síntese sis-temática de controladores;

Há modelos temporizados e não-tempori-zados

Redes de Petri 2

evento = transição

informações sobre as condições para ocor-rência de um evento = lugares

Em geral: P = {p1, ..., pn}T = {t1, ..., tm}

arcos: (pi, tj) ou (tj, pi)

A condição de conjuntos finitos pode ser relaxada,admitindo-se conjuntos contáveis.

Definição: Uma rede de Petri é uma quá-drupla (P, T, A, w), onde:P é um conjunto finito de lugares;T é um conjunto finito de transições;A é um conjunto de arcos, sub-conjunto

do conjunto (P × T) ∪ (T × P);w é uma função-peso w: A → N

Redes de Petri 3

Representação gráfica através de grafoscom dois tipos de nós: lugares e transições

Exemplo:

t1 t2 t3

t4 t5

p1 p2 p3

Lugares de saída da transição tj:O(tj) = {pi: (tj, pi) ∈ A}

Lugares de entrada da transição tj:I(tj) = {pi: (pi, tj) ∈ A}

Analogamente para os lugares.

Redes de Petri 4

Definição: Uma marcação de uma rede dePetri é uma função x: P → Ν

Uma marcação em geral é representada porum vetor x = [x(p1) ... x(pn)];

No grafo, a marcação é representada por“fichas” dentro dos lugares.

Definição: Uma rede de Petri marcada éuma quíntupla (P, T, A, w, xo) onde:(P, T, A, w) é uma rede de Petri e xo éuma marcação inical.

Definição: O estado de uma rede de Petrimarcada é sua marcação [x(p1) ... x(pn)].

Obs.: O espaço de estados, X é em geralinfinito: X = Νn.

Redes de Petri 5

Dinâmica das Redes de Petri

Representação da dinâmica = movimento dasfichas, quando os eventos (transições) ocorrem.

Definição: Uma transição tj ∈ T numa rede dePetri marcada é dita habilitada se:

x(pi) ≥ w(pi, tj) para todo pi ∈ I(tj).

Definição: Uma função de transição de esta-dos, f: Nn × Τ → Nn, de uma rede de Petri marcada é definida para uma transição tj ∈ Tse e somente se esta transição está habilitada.

Se f(x, tj) é definida, diz-se que x’ = f(x, tj),onde:

x’(pi) = x(pi) - w(pi, tj) + w(tj, pi)i = 1, ..., n

Obs.: O número de fichas não se conserva neces-sariamente.

Redes de Petri 6

Exemplo:

p1

p2

p3

p4

t1

t2

t3

p1

p2

p3

p4

t1

t2

t3

p1

p2

p3

p4

t1

t2

t3

p1

p2

p3

p4

t1

t2

t3

xo = [2,0,0,1] x1 = [1,1,1,1]

x2 = [1,1,0,2] x’2 = [0,1,0,0] estadoterminal

t1 dispara

t2 dispara ou t3 dispara

Redes de Petri 7

Em geral, a dinâmica de uma RP podeser representada da seguinte forma:

Sejam:x = [x(p1), x(p2), ..., x(pn)] : o atual estado;x’ = [x’(p1), x’(p2), ..., x’(pn)] : o próximoestado, após o disparo da j-ésima transição;

Definindo: u = [0, 0, ...,0 , 1, 0, ...,0]

j-ésima posição

Então:

x’ = x + uA

onde: A = [aji] ; aji = w(tj, pi) - w(pi, tj)

A é chamada matriz de incidência

Redes de Petri 8

No exemplo anterior:

−−

− − −

1 1 1 00 0 1 11 0 1 1

A =

A equação correspondente à primeira transição é:

[2 0 0 1] + [1 0 0].A = [1 1 1 1]

Para a segunda transição:

[1 1 1 1] = [0 1 0].A = [1 1 0 2]

De uma maneira geral pode-se descrever atrajetória de um RP através da equação recur-siva:

xk+1 = f(xk,tk) = xk + uk.A

Redes de Petri 9

Modelos para uma fila:

chegada de clientes partida de clientes

a (chegada)

s

c

Q I

B

(inicio)

(fim)

a

s

c

Q I

B

A

d(partida)

F

Redes de Petri 10

a

s

c

Q I

B

A

d

F

Db(quebra)

r (conserto)

Modelo que considera quebras no servidor

Redes de Petri 11

Problemas de Análise em RP

Os problemas a seguir, concernem qual-quer modelo para SED’s

Em geral, as definições buscam caracte-rizar propriedades “desejáveis” ou “inde-sejáveis” nos sistemas em estudo.

Limitação: Um lugar pi ∈ P numa Redede Petri com uma cond. inicial xo é ditok-limitado ou k-seguro, se x(pI) ≤ k paraqualquer estado em qualquer trajetóriapossível.

•Um lugar 1-seguro é dito seguro•Um lugar k-limitado é dito limitado•Se numa RP todos os lugares são limi-tado então a rede é dita limitada.

Redes de Petri 12

Conservação: Uma RP com um dado esta-do inicial xo é dita ser conservativa em relaçãoa um vetor γ = [γ1, γ2, ...,γn] se:

γ ii

n

ix p const=∑ =

1

( ) .

para qualquer estado em qualquer trajetóriapossível.

Em geral, numa RP o número de fichas nãose conserva, entretanto a definição acimapermite a análise de situações em que algodeve ser conservado.

Uma rede conservativa pode representarum sistema no qual recursos não são cri-ados nem destruídos.

Redes de Petri 13

Vivacidade e bloqueio (deadlock):São características opostas, de grande impor-tância na análise de um sistema.

Uma RP com um dado estado inicial xo édita viva se, a partir de qualquer estado al-cançado a partir de xo, existir alguma trajetó-ria na qual uma transição qualquer possa dis-parar.

Esta definição é de difícil verificação, levando adistinções relativas a uma transição dada:

•L0-viva ou morta, se a transição nunca dispa-rará a partir do estado inicial;•L1-viva, se existir alguma sequência de dispa-ros tal que a transição possa disparar pelo menosuma vez;•L2-viva se a transição pode disparar pelo me-nos k- vezes para algum número positivo k;•L3-viva se existir alguma sequência infinita dedisparos na qual a transição aparece infinitas vezes•L4-viva ou viva se a transição for L1-viva paraqualquer estado alcançado a partir do estado inicial.

Redes de Petri 14

Exemplo:

a

aA aR

s

cr cd

d

r

rf

A

Q QI

B

R D

Sistema de fila com retraballho

Redes de Petri 15

t1

t2

t3

p1

p2

Exemplo: Níveis de vivacidade

t2 - mortat1 - L1-vivat3 - L3-viva mas não L4-viva, poispode tornar-se morta no estado re-sultante de um disparo de t1.

Redes de Petri 16

Alcançabilidade: Um estado x numa RPé dito alcançável a partir de um estado xose existir uma sequência de transições ini-ciando-se em xo e tal que o estado pode setornar x.

(conceito muito próximo ao de L1-vivacidade)

“Coverabilidade”: Dada uma RP com estadoinicial xo, um estado y pode ser coberto se exis-tir uma sequência de transições inicando-se emxo e tal que o estado pode se tornar x e x(pi) ≥ y(pi), para todo i = 1, ..., n.

Diz-se que o estado x cobre o estado y.Se y é o estado que garante minimamenteo disparo de uma transição tj, então, se y nãopuder ser coberto a partir do estado corrente,pode-se afirmar que tj está morta.

Redes de Petri 17

Persistência: Uma RP é dita persistente se,para cada duas transições habilitadas, o dis-paro de uma delas não desabilita a outra.

No exemplo anterior, se t1 ocorre, t3 é desabi-litada, sendo que ambas estavam habilitadas

Em RP’s temporizadas, em que uma transi-ção habilitada só é disparada após um de-terminado atraso, este conceito é equivalenteao de não-interruptibilidade. A interruptibili-dade permite uma analogia com sistemas não-lineares.

Em RP’s também é possível estabelecer oproblema de reconhecimento de linguagens,onde uma sequência de transições pode ounão acontecer numa determinada rede.

Redes de Petri 18

Árvore de Coverabilidade

•Técnica de Análise•Representação Finita•Alguma perda de informação

Motivação: Exemplo

p1 p2

t1

p3

t2

[1,1,0]

[0,0,1]

[1,1,0]

Redes de Petri 19

Exemplo: Motivação

[1,0,0,0]

[0,1,1,0]

[0,0,1,1][1,0,1,0]

[0,1,2,0]

[1,0,2,0] [0,0,2,1]

t1

t2 t3

t1

t2t3

p1

p2

p3

p4

t1

t2t3

Redes de Petri 20

Terminologia:

Nó Raiz: Corresponde à marcação inicialda rede;

Nó Terminal: Nó a partir do qual nenhumatransição pode ocorrer;

Nó Duplicado: Nó idêntico a um nó já pre-sente na rede;

Dominância de Nós: Se x e y são dois esta-dos de uma RP (nós da árvore), diz-se quex domina y (notação: x >d y) se:a) x(pi) ≥ y(pi) para todo i = 1, ..., nb) x(pi) > y(pi) para algum i = 1, ..., n;

Símbolo ω: Usado para indicar que uma marcação é ilimitada. Na árvore de covera-bilidade é utilizado para identificar domi-nância de nós.

Redes de Petri 21

Algoritimo para Construção daÁrvore de Coverabilidade

1) Inicializar com a marcação inicial (xo);

2) Para cada novo nó construído, x, avaliar a funçãof(x,tj) para todo tj ∈ T:

2.1) Se f(x,tj) é indefinida, então x é um nó terminal;

2.2) Se f(x,tj) é definida, para algum tj ∈ T, criar umnovo nó x’= f(x,tj):

2.2.1) Se x(pi) = ω para algum i, fazer x’(pi) = ω;

2.2.2) Se existir um nó y, no caminho de xoaté x (inclusive), tal que x’>d y, fazerx’(pi) = ω para todo pi tal quex’(pi) > y(pi);

2.2.3) Senão, fazer x’= f(x,tj);

3) Se todos os nós forem duplicados ou terminais, parar.

Redes de Petri 22

Exemplo: Árvore de coverabilidade daRede de Petri anterior:

[1,0,0,0]

[0,1,1,0]

[0,0,1,1][1,0,1,0]

[0,1,2,0]

[1,0,2,0] [0,0,2,1]

t1

t2 t3

t1

t2t3

[1,0,0,0]

[0,1,1,0]

[0,0,1,1][1,0,ω,0]

[0,1,ω,0]

[1,0,ω,0] [0,0,ω,1]

t1

t2 t3

t1

t2t3

Redes de Petri 23

Exemplo: Sistema de Fila:

a

s

c

Q I

B

[0,1,0]

[ω,1,0]

[ω,1,0] [ω,0,1]

[ω,0,1] [ω,1,0]

a

a s

a c

Redes de Petri 24

Aplicações da Árvore de Coverabilidade

Problemas de Limitação:

Uma condição necessária e suficiente paraque uma RP seja limitada é que o símboloω nunca apareça em sua árvore de covera-bilidade.

Neste caso, a árvore de coverabilidade coincide com a árvore de alcançabilidade.

Além disso, o maior valor observado parax(pi) na árvore é um limitante para pi.

Se a árvore de coverabilidade de uma RPsó contem 0’s e 1’s então todos os seus lu-gares são seguros e a rede é segura.

Redes de Petri 25

Problemas de Conservação:

γ ii

n

ix p const=∑ =

1

( ) .

Uma RP é conservativa se existir um vetorγ = [γ1, ..., γn] tal que:

Se x(pi) = ω para algum nó da árvore, então,para que a RP seja conservativa, deve-se ter:

γi = 0

Seja b ≤ n o número de lugares limitados er o número de nós da árvore de coverabilidade

Tem-se então um sistema de equações linearescom r equações e b+1 incógnitas da forma:

γ ii

n

ix p C=∑ =

1

( )

obs.: C também é uma incógnita.

Redes de Petri 26

Exemplo: Sistema de Filas[0,1,0]

[ω,1,0]

[ω,1,0] [ω,0,1]

[ω,0,1] [ω,1,0]

a

a s

a c

6 equações (na realidade 2)3 incógnitas γ2, γ3 e C

γ2 . 0 + γ3 .1 = Cγ2 . 1 + γ3 .0 = C{

Solução: γ2, γ3 = 1 e C = 1

Em geral, a solução pode não ser única ounão existir.

Redes de Petri 27

Problemas de Coverabilidade:

Seja y(pi), i = 1, ..., n um estado que sedeseja cobrir.

Se existir um nó na árvore de coverabilidadetal que x(pi) ≥ y(pi), i = 1, ..., n, então o esta-do y é coberto por x

O caminho na árvore de xo até x indica a se-quência de transições necessárias para alcan-çar o estado x

Se o estado x contem o símbolo ω o caminhodeve incluir um laço. Pode-se então determi-nar o número de vezes que se percorre o laçopara cobrir y.

No exemplo anterior, o estado [3,1,0] podeser coberto pois [ω,1,0] pertence à árvore.

Sequências de disparos para cobrir y:{a,a,a} ou {a,s,a,c,s,a,c,a,a}

Redes de Petri 28

Limitações da Árvore de Coverabilidade

O símbolo ω representa um conjunto de valoresalcançáveis por um lugar. Portanto, a menos queeste símbolo não apareça (espaço de estados fi-nito), alguns problemas não podem ser resolvi-dos utilizando-se a árvore de coverabilidade.

Alguns destes problemas:

•impedimento de bloqueio;

•alcançabilidade de estados;

•reconhecimento de linguagens.

Alterntivas de Análise:

Por exemplo, uma ferramenta algébrica, co-mo a equação de estado: x’ = x + uA

Redes de Petri 29

p1

t1

p2

t2

p3

p1

t1

p2

t2

p3

[1,0,0]

[0,1,0]

[1,0,ω]

[0,1,ω]

[1,0,ω]

t1

t2

t1

t2

[1,0,0]

[0,1,0]

[1,0,ω]

[0,1,ω]

[1,0,ω]

t1

t2

t1

t2

ω = {1,2,3,...} ω = {2,4,6,...}

Exemplo: Impossibilidade de análise daalcançabilidade de estados:

Redes de Petri 30

Comparação entre Geradores e Redes de Petri

Não há “melhor” modelo; a escolha depen-de do problema tratado e de preferências pessoais. Contudo, alguma comparação épossível.

Dado um gerador (E, X, f, xo) é possível cons-truir uma rede de Petri (P, T, A, w, xo) da se-guinte maneira:

P = XT = {(x,x’): x ∈ X, x’ = f(x,e) onde f(x,e)!}A = {(x,t): x ∈ X, t ∈ T e t = (x, x’)}

∪ {(t,x): x ∈ X, t ∈ T e t = (x’, x)}w(a) = 1 para todo a ∈ A

O estado inicial xo é representado pela marca-ção do lugar correspondente no conjunto P.

Redes de Petri 31

Exemplo: Protocolo de Comunicação

I M T

r

a t

τa a

I

M

T

IM=aTI=r

TM=τ MT=t

MM=a

TT=a

Redes de Petri 32

Observações:

•Este método não é único, podendo haveroutras RP’s que melhor representem o sis-tema.

•Uma vantagem das redes de Petri ocorrequando se faz a associação de sistemas,correspondendo à associação assíncrona:

Rede de Petri: pequeno esforço adicionalpara modelagem.

Gerador: novo sistema muito mais com-plexo (explosão combinacional no nú-mero de estados)

•A abordagem baseada em geradores con-tudo, apresenta melhores resultados no quediz respeito a decidabilidade.

Redes de Petri 33

top related