DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. ·...

62
DIM0436 7. Autômatos & redes de Petri Richard Bonichon 20140812 Richard Bonichon DIM0436 20140812 1 / 55

Transcript of DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. ·...

Page 1: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

DIM04367. Autômatos & redes de Petri

Richard Bonichon

20140812

Richard Bonichon DIM0436 20140812 1 / 55

Page 2: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Sumário

1 Autômatos

2 Redes de Petri

Richard Bonichon DIM0436 20140812 2 / 55

Page 3: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

1 Autômatos

2 Redes de Petri

Richard Bonichon DIM0436 20140812 3 / 55

Page 4: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Autômatos determinísticos (DFA)

Um autômato é uma 5-tupla (Q,Σ, δ, q0,F ), onde:Q é um conjunto finito de estados.Σ é um conjunto finito de símbolos, chamado de alfabeto do autômato.δ é a função de transição, isto é, δ : Q × Σ→ Q.q0 é o estado inicial, isto é, o estado do autômato antes de qualquer entradaser processada, onde q0 ∈ Q.F é um conjunto de estados de Q (isto é, F ⊆ Q) chamado de estados deaceitação.

Richard Bonichon DIM0436 20140812 4 / 55

Page 5: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

1start

2

3

a

b

a,b,c

Q = {1, 2, 3}Σ = {a, b, c}δ =a b c

1 22 33 3 3 3

q0 = 1F = {3}

Richard Bonichon DIM0436 20140812 5 / 55

Page 6: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Autômatos indeterminísticos (NFA)

Definição (Autômatos indeterminísticos (NFA))Um autômato é uma 5-tupla (Q,Σ, δ, q0,F ), onde:

Q é um conjunto finito de estados.Σ é um conjunto finito de símbolos, chamado de alfabeto do autômato.δ é a função de transição, isto é, δ : Q × Σ→ (P)Q.q0 é o estado inicial, isto é, o estado do autômato antes de qualquer entradaser processada, onde q0 ∈ Q.F é um conjunto de estados de Q (isto é, F ⊆ Q) chamado de estados deaceitação.

ObservaçõesA palavra vazia ε faz parte dos símbolos autorizados para ε-NFA.Sintaticamente : DFA ⊆ NFA ⊆ ε-NFA

Richard Bonichon DIM0436 20140812 6 / 55

Page 7: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo (NFA)

1start

2 3 4

5 6 7 8

w

e b

e

b a y

Σ

Richard Bonichon DIM0436 20140812 7 / 55

Page 8: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo (ε-NFA)

1

2 3

4 5 6

7 8

0-9

_a-z_a-z

0-9

0-9

·0-9

·

0-90-9

ε

ε

Richard Bonichon DIM0436 20140812 8 / 55

Page 9: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Expressões regulares (ER)

Definição minimalε é a cadeia de caracteres vaziaa ∈ Σ é um literalSe R e S são expressões regulares:R · S :concatenação deR|S : alternânciaR∗ : fecho de Kleene

Exemplo (E)[_a− b][a− b0− 9_]∗

[0− 9] + |[0− 9] + .|[0− 9] + .[0− 9]+

Richard Bonichon DIM0436 20140812 9 / 55

Page 10: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Autômatos com pilha

DefiniçãoUm autômato de pilha é formalmente definido por uma 7-tupla:PDA = (Q, Σ, Γ, ∆, q0,Z0,F )Onde:

Q é um conjunto finito de estados.Σ é um conjunto finito de símbolos, denominado alfabeto de entrada.Γ é um conjunto finito de símbolos, denominado alfabeto da pilha.∆ ⊆ (Q × Σ? × Γ?)× (Q × Γ?) é a relação de transição.q0 ∈ Q é o estado inicial.Z0 ∈ Γ: o símbolo inicial , conteúdo inicial da pilha.F ⊆ Q é o conjunto de estados finais (ou de aceitação).

Richard Bonichon DIM0436 20140812 10 / 55

Page 11: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

0start 1 2ε,Z0/Z0ε, 0/0ε, 1/1

0,Z0/0Z01,Z0/1Z00, 0/000, 1/011, 0/101, 1/11

ε,Z0/Z0

0, 0/ε1, 1/ε

Richard Bonichon DIM0436 20140812 11 / 55

Page 12: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução

Regra(q, aw ,Xβ)→ (p,w , αβ)

No exemplo

q0, 1111,Z01,Z0/1Z0→ q0, 111, 1Z01,1/11→ q0, 11, 11Z01,1/11→ q0, 1, 111Z01,1/11→ q0, ε, 1111Z0ε,1/1→ q1, ε, 1111Z0??→ �

Richard Bonichon DIM0436 20140812 12 / 55

Page 13: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Reconhecimento de linguagens

Lingagens regularesA classe de linguagens reconhecida por autômatos determinísticos é aslinguagens regulares.Reconhecimento de palavras numa fraseER = ε− NFA ↔ NFA ↔ DFA

Gramáticas livres de contextoA classe de linguagens reconhecida por autômatos com pilha é as linguagenslivres de contexto.Reconhecimento de frases

Richard Bonichon DIM0436 20140812 13 / 55

Page 14: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Aplicações e outros tipos

UsoCompilação

I Lexing (análise léxica)I Parsing (análise sintática)

Model-checkingBiologiaSimulação do universo (?)

Outros autômatosAutomâtos de Büchi: é um tipo de autômato ω, que estende um autómatofinito para entradas infinitas. Ele aceita como entrada uma sequência infinitasse existe uma execução do autômato que visita (pelo menos) um dos estadosfinais infinitas vezes.Autômatos celulares: jogo da vida

Richard Bonichon DIM0436 20140812 14 / 55

Page 15: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

1 Autômatos

2 Redes de Petri

Richard Bonichon DIM0436 20140812 15 / 55

Page 16: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Introdução

Inventado em 1962 por Carl Adam Petri

ObjetivoModelizar sistemas concorrentes e raciocinar sobre eles.Modelizar causalidade e conflitosÉ um grafo bipartido

Richard Bonichon DIM0436 20140812 16 / 55

Page 17: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Vocabulário

Uma rede de Petri é composta deLugares ou Places representam uma condição, uma atividade ou umrecurso.Fichas, Marcas ou Tokens representam o estado de um sistema.

Transições representam um evento.Arcos indicam os lugares de entrada ou saída para as transições.

Richard Bonichon DIM0436 20140812 17 / 55

Page 18: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Definição formal

Redes de PetriUma rede de Petri (RP) é um quíntuplo:

P = p1, p2, . . . , pn, conjunto (finito) de placesT = t1, t2, . . . , tm, conjunto (finito) de transiçõesF ⊆ (P × T ) ∪ (T × P), conjunto de arcos (de saída e de entrada)W : F → N?, função de pesoM0 : P → N é a marcação inicial

RequisitosP ∩ T = ∅ ∧ P ∪ T = ∅

Richard Bonichon DIM0436 20140812 18 / 55

Page 19: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.

A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitada

F tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 20: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitada

F tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 21: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitada

F tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 22: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitada

F tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 23: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitada

F tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 24: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitadaF tira w(p, t) tokens dos places de entrada

F coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 25: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitadaF tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saída

F de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 26: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Execução: o disparo

O comportamento dinâmico duma RP é simulado através trocas demarcações, a partir de M0.A regra de disparo duma transição t é a seguinte:

1 Uma transição é habilitada se todo places de entrada p de t tem pelo menosw(p, t) tokens, onde w(p, t) é o peso do arco de p a t .

2 Uma transição habilitada pode ser disparada (ou não) de acordo com oseventos acontecendo.

3 O disparo de uma transição habilitadaF tira w(p, t) tokens dos places de entradaF coloca w(t, p) tokens nas places de saídaF de acordo com os pesos de cada arco.

Richard Bonichon DIM0436 20140812 19 / 55

Page 27: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

2H2 + O2 → 2H2O

Situação inicial

H2

O2

t

2

H2O2

Depois do disparo

H2

O2

t

2

H2O2

Richard Bonichon DIM0436 20140812 20 / 55

Page 28: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Máquina de vendas

0

+5

+10

5

10

+5

+10

+10

+5

15

20

+5

Get candy 20

Get candy 15

Richard Bonichon DIM0436 20140812 21 / 55

Page 29: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Máquinas de estado finito / DFA

start5 5 5 5

ε

ε

10

1010

Richard Bonichon DIM0436 20140812 22 / 55

Page 30: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Semáforo

p1 t1 p2 t2 p3

critical path

t3free resource

r

q1 t4 q2 t5 q3

critical path

t6free resource

Richard Bonichon DIM0436 20140812 23 / 55

Page 31: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Leitores / escritores

t2

p4

t4

kp3

p2

t1

t3

k

p1

k

k

Richard Bonichon DIM0436 20140812 24 / 55

Page 32: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Jantar dos filósofos

f1

f2f3

f4

Richard Bonichon DIM0436 20140812 25 / 55

Page 33: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Lingaguens formais

Reconhecimento de linguagem: L(M0) = anbncn, n ≥ 0

start

λ λ λ

final

a b c

Linguagens da RPLinguagens reconhecidas pelas RP são linguagens sensível ao contexto(context-sensitive).Uma automâto finito reconhece só linguagens regulares.Hierarquia de Chomsky (de gramáticas)regulares ⊆ livres de contexto ⊆ sensível ao contexto ⊆ estrutura de frase.

Richard Bonichon DIM0436 20140812 26 / 55

Page 34: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

DFD

copy

a

a

copy

b

b

add a+b

sub a-b

divide d

f

gx is undefined

Richard Bonichon DIM0436 20140812 27 / 55

Page 35: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Protocolo de comunicação

Ready to send

Send message

Wait for ack

Rcv ack

Ack received

Process 1

Buffer full

Buffer full

Ready to receive

Receive message

Message received

Send ack

Ack sent

Process 2

Richard Bonichon DIM0436 20140812 28 / 55

Page 36: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Alcançabilidade (Reachability)

DefiniçãoUma marcação Mn é alcançável a partir de M0 se existe uma sequência dedisparos que transforma M0 em Mn.A sequência de disparos é denotada por

σ = M0t1M1t2 . . . tnMn

R(M0) é o conjunto de marcações alcançáveis duma rede RP.

Problema de alcançabilidadeAchar se uma marcação dada Mn ∈ R(M0)

Esse problema é decidível em tempo e espaço exponenciaisPode-se usar árvores de alcançabilidade para enumerar as marcaçõesalcançáveis.

Richard Bonichon DIM0436 20140812 29 / 55

Page 37: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Vivacidade (Liveness)

Definição (Vivacidade)Uma RP é viva se, independente da marcação M corrente, tem uma transição quepode ser disparada.

ObservaçãoA vivacidade é ligada com a ausência de deadlocks

Richard Bonichon DIM0436 20140812 30 / 55

Page 38: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Níveis de vivacidade

Verificação de vivacidadeNão prático é muito difícil verificar a propriedade de vivacidade para um sistema.

Definição (Níveis de vivacidade)Uma transição t é:

1 morta (L0-viva) se t nunca pode ser disparada numa sequência em L(M0)

2 L1-viva (potencialmente disparavel) se t pode ser disparada pelo menos umavez numa sequência em L(M0)

3 L2-viva, se para todo inteiro k ≥ 0, t pode ser disparada pelo menos k vezesnuma sequência em L(M0)

4 L3-viva se t acontece infinitamente numa sequência em L(M0)

5 L4-viva (ou viva) se t é L1-viva para toda marcação M de R(M0)

Richard Bonichon DIM0436 20140812 31 / 55

Page 39: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

p1

Richard Bonichon DIM0436 20140812 32 / 55

Page 40: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Finitude (Boundedness)

DefiniçãoUma RP é k-*finito* se o número de tokens nos places não ultrapassa k.

SegurançaUma RP é seguro sse ele é 1-finito

PropriedadesQual é o maior/menor número de tokens nos places?

Richard Bonichon DIM0436 20140812 33 / 55

Page 41: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

Richard Bonichon DIM0436 20140812 34 / 55

Page 42: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Estados caseiros (Home states)

DefiniçãoUma marcação M é um estado caseiro se para toda marcação M ′ ∈ R(M0),M é alcançável de M ′.Uma RP é reversível se M0 é um estado caseiro.

Exemplo

p1 t1

p2

t2

Richard Bonichon DIM0436 20140812 35 / 55

Page 43: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Cobertura (Coverability)

CoberturaUma marcação M duma RP é cobrável se existe uma marcação M ′ de R(M0) talque M ′(p) ≥ M(p)

Relação à vivacidadeSeja M a marcação minimal para habilitar uma transição t

t é morta se e somente se M não é cobrávelt é L1-viva se e somente se M é cobrável

Richard Bonichon DIM0436 20140812 36 / 55

Page 44: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Distância sincrônica

SignificadoA distância sincrônica é uma métrica que permite avaliar a dependência mutual dedois eventos do sistema.

Definição (Distância sincrônica)Seja t1 e t2 duas transições duma RP (N,M0). A distância sincrônica entre t1 e t2

d12 = maxσ|σ̄(t1)− σ̄(t2)|

σ uma sequência de disparosσ̄(t) é o número de vezes que t é disparada em σ

Richard Bonichon DIM0436 20140812 37 / 55

Page 45: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

p1

t1 t2

p2

t3

p3

t4

p4

d12 = 1d34 = 1d13 =∞

Richard Bonichon DIM0436 20140812 38 / 55

Page 46: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Justiça (Fairness)

Definição (Justiça limitada (Bounded fairness))Duas transições t1 e t2 são numa relação justa limitativa se o númeromáximo de vezes que t1 ou t2 pode ser disparada sem que outra sejadisparada é limitado.Uma RP é limitativamente justa se todos os pares de transições dessa RP sãonuma relação justa limitativa.

Definição (Justiça incondicional)Uma sequência de disparos σ e incondicionalmente justa se ela é:

I finita, ouI toda transição da RP acontece infinitamente frequentemente.

Uma RP é incondicionalmente justa se todas sequência de disparos dela éincondicionalmente justa.

Richard Bonichon DIM0436 20140812 39 / 55

Page 47: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Relação entre as duas formas de justiça

Justiça limitada ⇒ Justiça incondicionalJustiça incondicional numa rede limitado ⇒ justiça limitada nessa rede.

Richard Bonichon DIM0436 20140812 40 / 55

Page 48: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

RP limitativamente justa

p1 t1

p2

t2

RP injustap1

t1 t2

p2

t3

p3

t4

p4

Richard Bonichon DIM0436 20140812 41 / 55

Page 49: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Notação de marcação

Uma marcação é um vetor de tokens

RPp1

t1

p2

t2

p3

t3

p4

t4

2

Richard Bonichon DIM0436 20140812 42 / 55

Page 50: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Árvore de alcançabilidade

p1

t1

p2

t2

p3

t3

p4

t4

2M0 = [2, 0, 0, 0]

[0, 1, 0, 0]

[0,0,1,1]

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

t1

t2

t3 t4

t4 t3

Richard Bonichon DIM0436 20140812 43 / 55

Page 51: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Notação matricial

p1

p4

t3t2

t1p2 p3

2

22

Matriz −2 1 11 −1 01 0 −10 −2 2

Marcação

M0 = (2 0 1 0)

TransiçãoMk = Mk−1 + ATuk

Richard Bonichon DIM0436 20140812 44 / 55

Page 52: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Métodos e ferramentas

A análise de RP pode ser dividida em 3 partesI Análise por enumeraçãoI Análise por matriz de incidência e equação de estadoI Análise por redução/decomposição

F Fusão de place em sérieF Fusão de transições em sérieF Fusão de transições em paraleloF Fusão de places em paraleloF Eliminação de places em loopF Eliminação de transições em loop

Lista de ferramentas e recursoshttp://www.informatik.uni-hamburg.de/TGI/PetriNets/

Richard Bonichon DIM0436 20140812 45 / 55

Page 53: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Redes de Petri temporizadas

Porque?Disparos das RPs tradicionais são baseadis na presencia dos tokensNo entanto, pode ser necessário associar ao disparo um retardo. Sendo assim,para cada transição atribuímos um valor de tempo.Elas peritem uma análise quantitativa dos sistemas além da qualitativa

Significados possíveisTempo de aquisição de um recurso.Tempo de utilização de um recurso.Tempo em que não necessita de um recurso.

Richard Bonichon DIM0436 20140812 46 / 55

Page 54: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

1

5

Descriçãot1 é temporizada em 1 segundo.t2 é temporizada em 5 segundos.t3 e t4 não são temporizadas

DisparosDurante os 4 primeiros segundos atransição t1 estará habilitada. No quintosegundo as transições t1 e t2 estarãohabilitadas e haverá um conflito dedisparo.

Richard Bonichon DIM0436 20140812 47 / 55

Page 55: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Redes de Petri estocásticas

Porque ?Redes temporizadas determinísticas não são suficientes para modelar sistemasestocásticos, que possuem taxas aleatórias.Uma temporização de distribuição exponencial é associada a cada transiçãoSistemas de produção onde o tempo de funcionamento real entre 2 paradasde uma máquina é aleatório são um exemplo destes sistemas

Redes de Petri estocásticas (RPE)Uma RPE é uma 6-tupla (P,T ,F ,W ,M0,∆):

∆ : conjunto das taxas de disparo associadas às transições que obedecem auma distribuição exponencial

Cadeias de MarkovUma RPE é isomórfica a uma Cadeia de Markov finita e de tempo contínuo.

Richard Bonichon DIM0436 20140812 48 / 55

Page 56: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

Tdata

Tstart

Tp1 Tp2

Tsync

Tend

TI/O

Tcont

Tver

ParâmetrosTransição Taxa ValorTdata λ 1Tstart τ 1000Tp1 µ1 10Tp2 µ2 5Tsync σ 2500Tend α 9900Tcont β 100TI/O ν 25Tver ω 0.5

Richard Bonichon DIM0436 20140812 49 / 55

Page 57: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Redes de Petri coloridas

Definição (RPC)Uma RP colorida é uma RP com:

Σ um conjunto de coresC : P− > Σ uma função de cor

SignificadoCores representam tipos de dados

Richard Bonichon DIM0436 20140812 50 / 55

Page 58: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Exemplo

RPC

thinking 1 23 4

eating

free1 23 4

left(f) + right (f)left(f) + right (f)

Observaçõesleft(i) = iright(i) = (i + 1) mod 4

Richard Bonichon DIM0436 20140812 51 / 55

Page 59: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Uso

Modelização desistemas distribuídosprotocolos de comunicaçãosistemas de manufaturaVLSIbase de dadoslogísticasistemas de tempo real

Richard Bonichon DIM0436 20140812 52 / 55

Page 60: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Resumo

1 Autômatos

2 Redes de Petri

Richard Bonichon DIM0436 20140812 53 / 55

Page 61: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Referências

John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman, Introduction toautomata theory, languages, and computation, Addison-Wesley, 2003.

Tadao Murata, Petri Nets: Properties, Analysis and Applications.,Proceedings of the IEEE, April 1989, NewsletterInfo: 33Published asProceedings of the IEEE, volume 77, number 4, pp. 541–580.

Wolfgang Reisig, Understanding Petri Nets - Modeling Techniques, AnalysisMethods, Case Studies, Springer, 2013.

Richard Bonichon DIM0436 20140812 54 / 55

Page 62: DIM0436 - 7. Autômatos & redes de Petririchard/pubs/dim0436/lectures/... · 2015. 6. 18. · Autômatosdeterminísticos(DFA) Umautômatoéuma5-tupla(Q; ; ;q 0;F),onde: Q éumconjuntofinitodeestados.

Perguntas ?

http://dimap.ufrn.br/~richard/dim0436

Richard Bonichon DIM0436 20140812 55 / 55