redes de petri - [email protected]/~asousa/sind/acetat/rdp_asousa_old_1.pdf · 1...

10
1 Armando Jorge Sousa Redes de Petri (RdP) Redes de Petri (RdP) Petri Nets Petri Nets Armando Jorge Sousa – Versão 11, 15 Dez 2005 Armando Jorge Sousa – Versão 11, 15 Dez 2005 2 Armando Jorge Sousa Sumário Sumário Apresentação: notação gráfica inc. marcação Concorrência, conflito e confusão Sincronização e recursos críticos Extensões de RdP Arcos, Inibidores, Hierarquia, Cores Classificação de RdP Espaço de estados Representação Algébrica Propriedades Ferramentas Referências 3 Armando Jorge Sousa Áreas de Aplicação Áreas de Aplicação Automação de escritórios; Automação de manufactura; Avaliação de desempenho; Protocolos de comunicação; Circuitos integrados e sistemas electrónicos; Sistemas de informação; Sistemas distribuídos; Sistemas de produção. 4 Armando Jorge Sousa História História PhD de Carl Adam Petri, 1962 Expansão teórica e aplicações (197x) 197x – RdP temporizadas 198x – RdP Alto Nível Coloridas, estocásticas, (muitas !), etc Normalização em ISO/IEC-15909 A designação “Rede de Petri” é utilizada para muitas variantes !!!

Upload: buithien

Post on 23-Jan-2019

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

1 Armando Jorge Sousa

Redes de Petri (RdP)Redes de Petri (RdP)Petri NetsPetri Nets

Armando Jorge Sousa – Versão 11, 15 Dez 2005Armando Jorge Sousa – Versão 11, 15 Dez 2005

2 Armando Jorge Sousa

SumárioSumário

• Apresentação: notação gráfica inc. marcação

• Concorrência, conflito e confusão

• Sincronização e recursos críticos

• Extensões de RdP

• Arcos, Inibidores, Hierarquia, Cores

• Classificação de RdP

• Espaço de estados

• Representação Algébrica

• Propriedades

• Ferramentas

• Referências

3 Armando Jorge Sousa

Áreas de AplicaçãoÁreas de Aplicação

• Automação de escritórios;

• Automação de manufactura;

• Avaliação de desempenho;

• Protocolos de comunicação;

• Circuitos integrados e sistemas electrónicos;

• Sistemas de informação;

• Sistemas distribuídos;

• Sistemas de produção.

4 Armando Jorge Sousa

HistóriaHistória

• PhD de Carl Adam Petri, 1962• Expansão teórica e aplicações (197x)• 197x – RdP temporizadas• 198x – RdP Alto Nível

• Coloridas, estocásticas, (muitas !), etc• Normalização em ISO/IEC-15909

A designação “Rede de Petri” é utilizada para muitas variantes !!!

Page 2: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

5 Armando Jorge Sousa

O que são as RdP O que são as RdP

• Ferramenta de múltiplos usos:

• Modelização, programação, ...

• Generalização das Máquinas de Estados

• Mealy, Moore, (Grafcet), ...

• Formalismo gráfico intuitivo

• Fácil análise e fácil projecto

• Fundamento matemático

• Simulável, demonstrável, adequado a projecto

6 Armando Jorge Sousa

Notação GráficaNotação Gráfica

• Posição, Estado ou Lugares (etapa)

• Eventos, Acções ou Transições

• Arcos dirigidos entre os anteriores

• “Dinâmica”, eventos associados a transições• “Estática”, acções associadas a estados

(Tal como nas máquinas de Moore e no Grafcet)

7 Armando Jorge Sousa

Exemplo básicoExemplo básico

• A RdP é definida como um conjunto de Lugares, Arcos e Transições

• Lugares e Transições numeradas• (Lugares com marcação)

p1 p2

t1

t2

8 Armando Jorge Sousa

Exemplo básico com marcaçãoExemplo básico com marcação

• A RdP é um grafo marcado, isto é, adiciona-se uma marcação inicial

p1 p2

t1

t2

Marcas, Tokens

Marcação desta RdP:[p1, p2]=[2,1]

Page 3: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

9 Armando Jorge Sousa

Disparo de TransiçõesDisparo de Transições

• t1 susceptível de ser disparada (enabled)

p2

p5

t1p1

p3

p4

p2

p5

t1p1

p3

p4

• Situação (marcação)após disparo de t1

Todos os lugares de entrada de t1 têm token

“Consumir” 1 token de cada entrada e “produzir” 1 “token” em cada saída

Operação atómica!10 Armando Jorge Sousa

Disparo de Transições - MarcaçõesDisparo de Transições - Marcações

• Marcação inicial:[p1,p2,p3,p4,p5]=

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

p2

p5

t1p1

p3

p4

p2

p5

t1p1

p3

p4

Marcação após disparo de t1:

[p1,p2,p3,p4,p5]==[0,0,0,1,1]

11 Armando Jorge Sousa

Concorrência, conflito e confusãoConcorrência, conflito e confusão

Localidade, Concorrência, Localidade, Concorrência, Paralelismo, Atomicidade Paralelismo, Atomicidade

Concorrência Conflito Confusão

12 Armando Jorge Sousa

Sincronização e recursos críticosSincronização e recursos críticos

... ...

Page 4: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

13 Armando Jorge Sousa

Exemplo – Diagrama de BlocosExemplo – Diagrama de Blocos

SistemaSistema

B1 A1

A2 B2

GO BACK

M1 M2

ESQ DIR

M1

M2 Dir

EsqGO BACK

Objectivo:

Modelar o comportamento

de 2 vagõesde transporte de

materiais, sincronizados no início e fim

do percurso

14 Armando Jorge Sousa

Solução 1Solução 1

m1dir

m2dir

m1esq

m2esq

Parado A1

Parado A2

GO BACK

Parado B1A1èB1

A2èB2 Parado B2

B1èA1

B2èA2

B1

B2

A1

A2

15 Armando Jorge Sousa

Solução 2Solução 2 (estilo diferente) (estilo diferente)

m1dir

m2dir

m1esq

m2esq

GO BACK

Vag

ão 2

Vag

ão 1

Vagão i parado em A

Vagão i parado em B

Vagão i AèB

Vagão i AèBSe

nsor

es

Sens

ores

16 Armando Jorge Sousa

Solução 3Solução 3 (estilo modelização do problema) (estilo modelização do problema)

Page 5: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

17 Armando Jorge Sousa

RdP ColoridasRdP Coloridas

Solução para 3 vagões

Obs: É possível extender a marca «colorida» para uma marca «objecto», obtendo uma RdP Orientada ao Objecto

18 Armando Jorge Sousa

Extensões de RdPExtensões de RdP

• Generalizada: arcos com peso (>0)

• Coloridas

• Capacidades (nos lugares)

• Hierárquicas

• Prioridades (...)

Obs:Todas estas são convertíveisnas RdP originais, isto é, não acrescentam à teoria

19 Armando Jorge Sousa

• Arcos inibidores• Contínuas• Híbridas (discretas + contínuas)• Sincronizadas+Informadas (eventos externos)• T-Temporizadas (tempos nas transições)• P-Temporizadas (tempos nos lugares)

• Temporais ([Tmin , Tmax] para disparar ti)

• Estocásticas• ...

Extensões de RdPExtensões de RdP

Referência adicional: http://pages.udesc.br/~r4al/ARTREDPE.HTM 20 Armando Jorge Sousa

Classificação de RdPClassificação de RdP

Autónomas Não AutónomasCondição-Evento Interpretadas

Baixo Nível Elementares SincronizadasLugar Transição Temporizadas

Predicado TransiçãoAlto Nível Colorias Reactivas

Objecto

Page 6: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

21 Armando Jorge Sousa

Necessidade do Arco InibidorNecessidade do Arco Inibidor

22 Armando Jorge Sousa

Ex 1 RdP com Arcos InibidoresEx 1 RdP com Arcos Inibidores

23 Armando Jorge Sousa

Ex 2 RdP com Arcos InibidoresEx 2 RdP com Arcos Inibidores

Transição de Entrada (Source)Chegada de Peças ao sistema

Transições de Saída (Sink)(saída de peças do sistema)

2

Buffer de Peças à entrada

Máquina Dupla

(> €/peça)

MáquinaSimples

2

2

24 Armando Jorge Sousa

RdP HierárquicaRdP Hierárquica

Exemplo de RdP Hierárquica por Transição de Substituição (TS)(a) RdP com hierarquia; (b) Parte a substituir; (c) RdP equivalente

Page 7: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

25 Armando Jorge Sousa

RdP HierárquicaRdP Hierárquica

Exemplo de RdP Hierárquica por Lugar de Substituição (LS)(a) RdP com hierarquia; (b) Parte a substituir; (c) RdP equivalente

26 Armando Jorge Sousa

Exemplo ArmazémExemplo Armazém

27 Armando Jorge Sousa

Ex. Armazém com CapacidadeEx. Armazém com Capacidade

28 Armando Jorge Sousa

Construção do espaço de estadosConstrução do espaço de estados

• Várias designações/técnicas possíveis:• Grafo/árvore acessibilidade• Grafo de estados; grafo/árvore de ocorrências

• Dada uma marcação inicial, o grafo será construído tendo por base todas as sequências de disparo de transições possíveis (RdP informada!!!).

• Cada marcação será representada por um nó do grafo, enquanto os arcos que os interligam têm associados a(s) transição(ções) que lhes deu(deram) origem

• Caso o grafo seja infinito (presença de lugares não limitados) será possível construir uma árvore reduzida (árvore de cobertura)...

Page 8: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

29 Armando Jorge Sousa

Espaço de estadosEspaço de estados

30 Armando Jorge Sousa

Representação AlgébricaRepresentação Algébrica

31 Armando Jorge Sousa

InvariantesInvariantes

• Invariante de disparo (t-invariant): W . x = 0

• A marcação resultante do conjunto de disparo é

igual à marcação inicial

• Invariante de marcação (p-invariant): WT . Y = 0

• condição que se verifica para todas as marcações

alcançáveis (dão informação relativa a recursos

necessários à implementação)

Page 9: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

33 Armando Jorge Sousa

PropriedadesPropriedades

• Que propriedades a verificar ?

• situações de bloqueio (deadlock);

• reversibilidade;

• quais os lugares seguros, limitados e não-limitados;

• quais as transições vivas, quase-vivas e mortas;

• ...

34 Armando Jorge Sousa

PropriedadesPropriedades

• Limitada: não gera marcações infinitas ω• Segura: marcação máx=1• Conservativa: Σ marcação na RdP=constante• Viva: após qualquer sequência de disparos, é possivel

disparar qualquer transição [dead-lock=impossível disparar qualquer transição]

• Estudo da alcançabilidade e da árvore de cobertura...[efectivamente alcança-se/evita-se a situação X ?]

• Propriedades estruturais (invariantes...)

35 Armando Jorge Sousa

• Análise do espaço de estados (grafo/árvore) ð estudo de qualquer propriedade (se for possível obter)

• Análise estrutural (invariantes) ð algumas propriedades

• Redução de sub-modelos (técnica auxiliar)

• A simulação do modelo pode ser utilizada como uma técnica de validação do comportamento do modelo (não fornece, no entanto, de forma garantida, respostas sobre as propriedades do modelo)

Técnicas para Verificação de PropriedadesTécnicas para Verificação de Propriedades

36 Armando Jorge Sousa

Verificação de PropriedadesVerificação de Propriedades

Page 10: Redes de Petri - asousa@fe.uppaginas.fe.up.pt/~asousa/sind/acetat/RdP_asousa_old_1.pdf · 1 ArmandoJorgeSousa Redes de Petri (RdP) Petri Nets Armando Jorge Sousa – Versão 11, 15

37 Armando Jorge Sousa

Verificação de Propriedades - ReduçõesVerificação de Propriedades - Reduções

38 Armando Jorge Sousa

Ferramentas...Ferramentas...

• Petri Nets World, Tools & Software:http://www.informatik.uni-hamburg.de/TGI/PetriNets/tools/

• 61 Ferramentas listadas + outras ferramentas web • Yet Another PN editor (made in “S.Ind.” LEIC/FEUP

1998)• Compilador de

RdP para C

• Escolhida uma:Visual Object Net ++

39 Armando Jorge Sousa

Exemplo da FerramentaExemplo da Ferramenta

40 Armando Jorge Sousa

Redes de PetriRedes de Petri

• Referências:• “Timed Petri Nets”, J Wang, Kluwwer Acad• “Du Grafcet aux réseaux de Petri” - René David• “Intelligent Control Systems: Introd. with Examples” -

EBook da “ebrary” da biblioteca FEUP (capít. 8)http://site.ebrary.com/lib/feup/Top?channelName=feup&cpage=1&f00=text&frm=smp.x&hitsPerPage=10&id=10067285&layout=document&p00=%22petri+nets%22&sch=%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0Search%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0&sortBy=score&sortOrder=desc

• http://www.informatik.uni-hamburg.de/TGI/PetriNets/