Você está na página 1de 65

Sistemas a Eventos Discretos

Eduardo A. Portela Santos


(eduardo.portela@pucpr.br)
Introdução – Redes de Petri
Redes de Petri

 sistemas concorrentes, assíncronos, distribuídos,


paralelos, não determinísticos, e/ou estocásticos

 ferramenta gráfica
auxílio na comunicação visual

 ferramenta matemática
equações de estado, equações algébricas, etc

 Comunicação entre “teóricos” e “práticos”


Redes de Petri
• Uma rede de Petri (RP) é uma ferramenta gráfica e matemática utilizada na
modelagem e análise de sistemas a eventos discretos. Uma RP é um grafo
direcionado formado por dois tipos de nós: lugares e transições. Lugares
representam condições que podem ser satisfeitas e transições representam
eventos que podem ocorrer.
lugar: transição:
• Regra de habilitacão:
Uma transição t está habilitada se e
somente se todos os seus lugares de t
entrada possuem fichas.
Estado inicial
• Regra de disparo:
Uma transição habilitada t pode
disparar a partir de uma marcação
Mc. O disparo de t acarreta a Estado final
remoção de uma ficha de cada
lugar de entrada e o depósito de t
uma ficha em cada lugar de saída.
Representação gráfica de uma rede de Petri

P2
T2 um arco
uma ficha 4
P1
T1 P4 P5 um lugar

P3
T3
2

T4

peso do arco uma transição


Representação gráfica de uma rede de Petri
Representação gráfica de uma rede de Petri
Representação gráfica de uma rede de Petri
Representação gráfica de uma rede de Petri
Representação gráfica de uma rede de Petri
Definição
 Grafo direcionado
lugares
transições
arcos (lugares a transições ou transições a
lugares)
pesos associados a cada arco

 Marcação inicial
inteiro não negativo a cada lugar
Regra de disparo de uma transição

 Uma transição t está habilitada se cada lugar


de entrada p possui, no mínimo, w(p,t) fichas

 Uma transição habilitada pode ou não disparar

 O disparo de uma transição habilitada t remove


w(p,t) de cada lugar de entrada p, e adiciona
w(t,p’) a cada lugar de saída p’
Exemplo de disparo

2H2 + O2  2H2O

2 t
H2
2

H 2O
O2
Exemplo de disparo

2H2 + O2  2H2O

2 t
H2
2

H 2O
O2
Exemplo de disparo
Rede de Petri - Definições matemáticas
(estrutura da rede)

Definição 1
(P, T, F, W) (Murata, 1989)
(Cassandras, Lafortune, 2008)
(Moraes, Castrucci, 2007)
(Zhou, Venkatesh, 2000)

Definição 2
(P, T, I, O) (Cardoso, Valete, 1997)
(David, Alla, 2005)
(Zhou, Venkatesh, 2000)
Rede de Petri - definição 1

(P, T, F, W)

 P - conjunto finito de lugares (nós do grafo - círculos)


P = {p1, p2, ..., pp} com |P| = p

 T - conjunto finito de transições (nós do grafo - barras)


T = {t1, t2, ..., tt} com |T| = t

 F  {PxT}  {TxP} - conjunto de arcos do grafo


(flow relation)
fij = (pi, tj) - arco que conecta o lugar pi à transição tj
fji = (tj, pi) - arco que conecta a transição tj ao lugar pi

 W : F  N - função que associa a cada arco em F um peso (valor inteiro


positivo)
Rede de Petri - definição 1

 W : F  N é uma função que associa a cada arco em F um


peso (valor inteiro positivo)

 w(pi, tj) = k significa que há k arcos paralelos com peso


unitário do lugar pi para a transição tj, ou um único arco com
peso k

 w(tj, pi) = k significa que há k arcos paralelos com peso


unitário da transição tj para o lugar pi, ou um único arco com
peso k
Rede de Petri

 P  T = ; (um nó da rede não pode ser simultaneamente


um lugar e uma transição)

 P  ; (deve haver pelo menos um lugar)T  ; (deve haver


pelo menos uma transição)

 |P| e |T| devem ser finitos

 não há nós (lugares ou transições) isolados

 lugares e transições são interconectados por arcos


direcionados;
Redes de Petri

A: matriz de incidência, fornece a variação do nº


de fichas em cada lugar quando do disparo de
transições

aij = w(ti, pj) - w(pj, ti)

matriz de dimensão [t x p]
cada linha está associada a uma transição
cada coluna está associada a um lugar
Obter a representação das redes de Petri na
forma (P, T, A, W)
a 3 c

p1 p2 p3

b d
p2 3
t2
p4
p1
t1

p3 t3
Rede de Petri - definição 2

(P, T, I, O)

 P - conjunto finito de lugares (nós do grafo - círculos)


P = {p1, p2, ..., pp} com |P| = p

 T - conjunto finito de transições (nós do grafo - barras)


T = {t1, t2, ..., tt} com |T| = t

 I : P x T  N - função de entrada que define o conjunto de


arcos direcionados de P para T (aplicação da entrada à
transição) (lugares precedentes ou incidência anterior)

 O : P x T  N - função de saída que define o conjunto de


arcos direcionados de T para P (aplicação da saída à
transição) (lugares seguintes ou incidência posterior)
Rede de Petri - definição 2

(P, T, I, O)

 I(pi, tj) = k
k representa o peso do arco do lugar pi para a
transição tj, ou o nº de arcos de pi para tj

 O(pi, tj) = k
k representa o peso do arco da transição tj para
o lugar pi, ou o nº de arcos de tj para pi
Rede de Petri - definição 2

(P, T, I, O)

 I: P x T  N e O: P x T  N
podem ser representados como funções ou como matrizes
de dimensão [p x t]
cada linha está associada a um lugar
cada coluna está associada a uma transição

 I : matriz de incidência de entrada (na transição)


Cada elemento da matriz I representa o peso do arco do
lugar para a transição correspondente

 O : matriz de incidência de saída (da tansição)


Cada elemento da matriz O representa o peso do arco da
transição para o lugar correspondente
Rede de Petri - definição 2

(P, T, I, O)

C=O-I

C : matriz de incidência
dimensão [p x t]
cada linha está associada a um lugar
cada coluna está associada a uma transição

cada coluna da matriz I representa a modificação na


marcação ocorrida nos lugares devido ao disparo da
transição correspondente
ATENÇÃO

em (Murata, 1989) (Cassandras, Lafortune,2008) (Moraes,


Castrucci, 2007)

A: matriz de incidência (t x p)

em (Cardoso, Valete, 1997) (David, Alla, 2005) (Zhou,


Venkatesh, 2000)

C : matriz de incidência (p x t)

neste curso a matriz de incidência terá dimensão p x t


Obter a representação das redes de Petri na forma
(P, T, F, W) e (P,T, I, O).
Representar I e O como funções e como matrizes.
Obter a matriz de incidência A e C.

a 3 c
p2
p1 p2 p3
t2
p4
p1 b d
t1 3
p3 t3
Obter a representação das redes de Petri na forma
(P, T, F, W) e (P,T, I, O).
Representar I e O como funções e como matrizes.
Obter a matriz de incidência A e C.
Pre-set de uma transição

subconjunto de lugares em P a partir dos quais existe


algum arco para a transição em questão

para tj  T
Pre-set(tj) = tj = {pi  P | (pi, tj)  F }

Pos-set de uma transição


subconjunto de lugares em P para os quais existe algum
arco oriundo da transição em questão

para tj  T
Pos-set(tj) = tj = {pi  P | (tj, pi)  F }
Pre-set de um lugar

subconjunto de transições em T a partir das quais existe


algum arco para o lugar em questão

para pi  P
Pre-set(pi) = pi = {tj  T | (tj, pi)  F }

Pos-set de um lugar

subconjunto de transições em T para os quais existe


algum arco oriundo da transição em questão

para pi  P
Pos-set(pi) = pi = {tj  T | (pi, tj)  F }
Obter o pre-set e o pos-set de cada transição e de
cada lugar das redes abaixo

a 3 c

p1 p2 p3

b d
3
p2

t2
p4
p1
t1

p3 t3
Rede de Petri marcada

(P, T, F, W, M0)
(P,T, I, O, M0)

(P, T, F, W) - conforme definição 1


(P,T, I, O) - conforme definição 2

M0 - marcação inicial da rede


nº de fichas que são colocadas em cada lugar da rede na
situação original
Rede de Petri marcada

o nº de fichas em cada lugar especifica o estado local do


lugar

a distribuição (quantidade) de fichas ao longo de todos os


lugares da rede especifica o estado (global) do sistema
representado pelar rede
Rede de Petri marcada

Vetor de marcação
M = [ m(p1), m(p2), ..., m(pp)] T
especifica o nº de fichas em cada lugar

em (Cardoso, Valete, 1997), (Zhou, DiCesare, 1993), (David,


Alla, 2005) (Zhou, Venkatesh, 2000) (neste curso)
M é um vetor coluna (p x 1)

em (Murata, 1989), (Cassandras, Lafortune,2008), (Moraes,


Castrucci, 2007)
M é um vetor linha (1 x p)
Comportamento dinâmico da rede

Transição habilitada
se todos os seus lugares de entrada tem uma quantidade de
fichas maior ou igual ao peso do arco que conecta o lugar
à transição em questão

tj  T está habilitada por uma marcação m se

 pi  tj tem-se que m(pi)  w(pi, tj)


ou
 pi  tj tem-se que m(pi)  I(pi, tj)
Comportamento dinâmico da rede

Transição habilitada

tj  T está habilitada por uma marcação m se


 pi  tj tem-se que m(pi)  w(pi, tj)

M  I( . , tj)

I é a matriz (p x t) onde cada elemento representa o peso do


arco do lugar para a transição correspondente

I( . , tj) é o vetor coluna (p x 1) igual à coluna correspondente


à transição tj da matriz I
Comportamento dinâmico da rede

Disparo de transição
uma transição pode disparar se está habilitada

quando ocorre o disparo da transição


- w(pi,tj) fichas são retiradas de cada lugar de entrada pi da
transição tj

- w(tj, pi) fichas são depositada em cada lugar de saída pi da


transição tj
Comportamento dinâmico da rede

O peso do arco do pi para a transição tj ( w(pi, tj) ou I(pi, tj)


representa a quantidade de recursos (representado pelo
lugar pi) necessários para ocorrer o disparo da transição tj

O peso do arco do tj para a transição pi ( w(tj, pi) ou I(tj, pi)


representa a quantidade de recursos (representado pelo
lugar pi) produzidos ao orrer o disparo da transição tj
Considerando a rede abaixo, determine:
- marcação atual;
- quais transições estão habilitadas;
- qual a marcação obtida se ocorre o disparo da transição
t1;
- repita o procedimento considerando o disparo (em
sequência) das transições t2, t1, t3

p2

t2
p4
p1
t1

p3 t3
Considere a rede abaixo, obtenha:
- a matriz I;
- a matriz O;
- os vetores I( . , t1), I( . , t2), I( . , t3);
- compare o vetor marcação com os vetores I e determine as
transições habilitadas para a marcação atual;
Comportamento dinâmico da rede

Quando uma transição está habilitada isto não significa que


ela irá disparar instantaneamente, significa que existe a
possibilidade de ocorrer o disparo no futuro.

O disparo de uma transição é indivisível e não tem duração ao


longo do tempo.
Comportamento dinâmico da rede

É possível que diversas


transições estejam
simultaneamente habilitadas.

Na figura T1 e T3 estão
habilitadas. Não se sabe quando
ocorrerá o disparo destas
transições e qual irá disparar.
Equação de estado da rede de Petri

M' = M - I( . , tj) + O( . , tj) = M + C( . , tj)

M' = M - I . [1]j + O . [1]j = M + C . [1]j

M' marcação obtida com o disparo da transição tj


M marcação antes do disparo da transição tj
C matriz de incidência (p x t)
C( . , tj) é o vetor coluna (p x 1) igual à coluna
correspondente à transição tj da matriz C
[1]j vetor coluna (t x 1) com todos os elementos nulos
exceto o elemento j correspondente à transição tj
Considere a rede abaixo, avalie empregando a equação de
estado a marcação obtida com o disparo da transição t3
Notação para representar a evolução da marcação M para a
marcação M' devido ao disparo da transição t

M ( t > M'
M t M'

Notação para representar a evolução da marcação M para a


marcação M' devido à sequência de disparos das
transições S = t1 t2 t3

M ( t1 t2 t3 > M'
M t1 t2 t3 M'
Equação de estado da rede de Petri
(para o disparo da transição tj)
M' = M + C . [1]j
[1]j vetor coluna (t x 1) com todos os elementos nulos
exceto o elemento j correspondente à transição tj

(para a sequência de disparo S)


M' = M + C . s
s vetor característico da sequência S: vetor coluna (t x
1) onde cada elemento representa o nº de vezes que a
transição correspondente foi disparada na sequência de
disparo
M' marcação obtida com o disparo da sequência S a
partir da marcação M
Considere a rede de Petri:

Obtenha a representação da rede;


Obtenha a matriz de incidência;
Obtenha o vetor de marcação m1;
Obtenha, empregando a equação
de estado, a marcação obtida com
o disparo da transição T2;
Obtenha o vetor característico
correspondente à sequência S = T2T3T4T1T3;
Obtenha, empregando a equação
de estado, a marcação obtida com
o disparo da sequência S = T2T3T4T1T3.
Considere a rede abaixo

determine, se possível:
M0 ( t1 > M1
M1 ( t2 > M2
M0 ( t2 > M3
M3 ( t1 > M4
M0 ( t2 t1 > M2'
 Um vetor característico s é dito possível se existe pelo
menos uma sequência de disparo S correspondente a
partir da marcação m.

 Nem todos os vetores carcterísticos com componentes


não negativos são possíveis.

 Para um determinado vetor de disparo s podem haver


diversas sequências de disparo S correspondentes

 Duas sequências de disparo representadas pelo mesmo


vetor característico resultam na mesma marcação

 Duas sequências que resultam na mesma marcação


podem possuir vetores característicos distintos
Considere a rede de Petri

Verifique se o vetor característico


s = [0, 1, 0, 1] é possível a partir da
marcação m1;
Especifique as possíveis sequências
correspondentes a s = [0, 1, 0, 1];
Especifique as possíveis sequências
correspondentes a s = [0, 1, 1, 0];
Obtenha a marcação alcançada a partir de m1 devido ao
disparo das sequências correspondentes a s = [0, 1, 1, 0].
Exemplo
a 3 c

p1 p2 p3

b d
3

P = {p1, p2, p3} T = {a, b, c, d}


Pre(p2,a) = Pre(p1,b) = Pre(p3,d) = 1 ; Pre(p2,c) = 3
Post(p1,a) = Post(p2,b) = Post(p3,c) = 1 ; Post(p2,d) = 3
M(p1) = M(p3) = 0 ; M(p2) = 3
Evolução de uma Rede de Petri

Sensibilização de transição:

• t está sensibilizada se
p P, M(p)  Pre(p,t)
ou seja, todos os lugares de entrada da transição
devem conter um número de fichas maior ou igual
ao peso do arco correspondente
a 3 c No exemplo:
p1 p2 p3 a e c estão sensibilizadas
b d
3
Evolução de uma Rede de Petri

Disparo de transição:

• t pode disparar se está sensibilizada


• corresponde à ocorrência de um evento
• disparo de t provoca mudança na marcação da rede
de M para M’ de acordo com
p P, M’(p) = M(p) - Pre(p,t) + Post(p,t)
ou seja, retira-se de cada lugar de entrada de t,
um número de fichas igual ao peso do arco de
entrada, e coloca-se em cada lugar de saída de t,
um número de fichas igual ao peso do arco de
saída.
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3
Evolução de uma Rede de Petri

3
a c

p1 p2 p3

b d
3

Você também pode gostar