Вы находитесь на странице: 1из 41

Rede de Petri e o aplicativo Platform Independent Petri net

Editor (PIPE)

Caio Cesar Fattori; Clia Hanako Kano, Fabrcio Junqueira, Paulo Eigi Miyagi

Escola Politcnica da Universidade de So Paulo

30 de julho de 2012
Lista de Figuras
1.1 A) Representao grca dos elementos da RdP; B) Exemplo de RdP como modelo de um
processo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Complemento de capacidade dos lugares . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Complemento de peso dos arcos orientados . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Complemento de arco orientado inibidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5 Representao grca da transio temporizada na RdP T-temporizada . . . . . . . . . . 8
1.6 Representao em RdP de duas atividades em sequncia . . . . . . . . . . . . . . . . . . . 9
1.7 Representao do paralelismo em RdP de duas atividades com a mesma condio inicial . 9
1.8 Representao em RdP da sicronizao de duas atividades. . . . . . . . . . . . . . . . . . 10
1.9 Representao em RdP do conito entre duas atividades . . . . . . . . . . . . . . . . . . . 10
1.10 Representao em RdP do compartilhamento de recursos entre atividades de dois processos
distintos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.1 Problema Dining Philosophers de Dijkstra . . . . . . . . . . . . . . . . . . . . . . . . . . . 14


2.2 Modelo Dining Philosophers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Classicao de uma Rede de Petri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Rede de Petri - exemplo para anlise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.5 Classication - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.6 rvore de alcanabilidade - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.7 Exemplo da tela do Reachability Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.8 State Space Analysis - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.9 Minimal Siphons and Minimal Traps - exemplo . . . . . . . . . . . . . . . . . . . . . . . . 21
2.10 Incidence & Marking - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.11 Invariant Analysis - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.12 GSPN Analysis - exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1 RdP para vericao da Alcanabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24


3.2 Reachability Graph para vericao da Alcanabilidade . . . . . . . . . . . . . . . . . . . . 25
3.3 Detalhes das marcaes possveis na RdP . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4 Animate mode para vericao da Alcanabilidade - sucessivos disparos de t0 . . . . . . . 26
3.5 RdP para vericao da Limitabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6 Reachability Graph para vericao da Limitabilidade e detalhes das marcaes possveis
na RdP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.7 Animate mode para vericao da Vivacidade - disparo de t1 resulta em auto-travamento 27
3.8 Animate mode para vericao da Vivacidade - ausncia de deadlocks . . . . . . . . . . . 28
3.9 RdP para vericao da Vivacidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.10 RdP para vericao da Persistncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.11 Animate mode para vericao da Persistncia - disparo de uma transio no desabilita
a outra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.12 RdP para vericao da Equidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6.1 Foto da base nas trs cores (prata, preta e rosa), do pino nas duas cores (preta e cinza),
mola e tampa (azul). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.2 Subsistemas do SFMA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
6.3 Representao esquemtica do subsistema de alimentao do SFMA . . . . . . . . . . . . 35
6.4 Foto dos subsistemas de alimentao e de inspeo; e a representao esquemtica do
subsistema de inspeo do SFMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

1
6.5 Foto do subsistema de montagem; e a representao esquemtica do subsistema de mon-
tagem do SFMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.6 Foto do subsistema de transporte; e a representao esquemtica de uma estao do sub-
sistema de transporte do SFMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2
Sumrio

1 Introduo 5
1.1 Rede de Petri (RdP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Formalizao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 Caractersticas dos SEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.2.1 Sequncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.2.2 Paralelismo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.2.3 Sincronizao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.2.4 Conito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.2.5 Compartilhamento de recursos . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.3 Propriedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.3.1 Alcanabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.3.2 Limitabilidade e Segurana . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.3.3 Vivacidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.3.4 Reversibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.3.5 Cobertura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.3.6 Persistncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.3.7 Distncia sncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.3.8 Equidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2 PIPE 13
2.1 Instalao inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Funes do File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.1 Funo Example nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Funes do Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4 Funes do View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Funes do Draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.6 Funes do Animate - simulao: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.7 Mdulos para anlise das propriedades da RdP . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7.1 Classication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7.2 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7.3 Reachability Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7.4 State Space Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7.5 Minimal Siphons and Minimal traps . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.7.6 Incidence and Marking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.7.7 Invariant Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.7.8 GSPN Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.7.9 DNAmaca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.7.10 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.8 Exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3 Vericao das propriedades da RdP no PIPE2 24


3.1 Alcanabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2 Limitabilidade e Segurana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Vivacidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4 Reversibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.5 Cobertura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6 Persistncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3
3.7 Equidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4 Exerccio 1: Propriedades da RdP no PIPE 30


5 Exerccio 2: Propriedades da RdP no PIPE 32
6 Exerccio 3: Comportamento dinmico de modelos 34
6.1 Sistema exvel de montagem automatizada (SFMA) . . . . . . . . . . . . . . . . . . . . . 34
6.2 Subsistema de alimentao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
6.3 Subsistema de inspeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
6.4 Subsistema de montagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6.5 Subsistema de transporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6.6 Atividade a ser realizada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4
Captulo 1

Introduo
O objetivo deste material complementar obra Miyagi (1996) com a formalizao da Rede de Petri
(RdP) e a apresentao de um aplicativo de modelagem e anlise de rede de Petri conhecida como
PIPE. O aplicativo PIPE baseado em Java e pode ser encontrado para download na pgina de seus
desenvolvedores http://pipe2.sourceforge.net/.
Para explicar o aplicativo necessrio primeiro apresentar a denio adotada pelo PIPE para a rede
de Petri, seus elementos e suas propriedades.

1.1 Rede de Petri (RdP)


A rede de Petri (RdP), como uma tcnica de representao grca e matemtica, prov um ambiente
uniforme para modelagem, anlise formal e projeto de sistemas a eventos discretos (SEDs) (Adam et al.,
1998, Nassar et al., 2008, Zurawski and Zhou, 1994). Ela muito efetiva como tcnica de descrio e
especicao de processos (Morales et al., 2007, Yoo et al., 2010, Hamadi and Benatallah, 2003). A rede
de Petri uma representao que pode ser usada tanto no nvel conceitual quanto no nvel funcional, em
que o sistema ou processo podem ser analisados e validados antes de prosseguir com o projeto detalhado
e a implementao. A RdP uma ferramenta de comunicao entre pessoas relacionadas ao projeto,
permitindo uma fcil interpretao e ntida identicao dos estados e aes. Possui a vantagem de
um mesmo modelo poder ser usado para anlise das propriedades comportamentais e para avaliao de
desempenho, assim como para a especicao da soluo de controle. Pode ser usada para identicar
propriedades de sistemas como sincronizao de processos, eventos assncronos, operaes concorrentes,
conitos ou compartilhamento de recursos, etc. Matematicamente, a RdP pode ser descrita como um
conjunto de equaes algbricas lineares e, por isso, pode ser usada para a vericao formal de relaes
de precedncia entre eventos e condies.
Desde sua apresentao por Carl Adam Petri (Brauer and Reisig, 2006), a RdP tem sido usada
na modelagem e anlise de diferentes tipos de sistemas e aplicaes tais como: protocolos distribudos
(Kaneshiro et al., 2008), aplicaes industriais (Zurawski and Zhou, 1994, Nassar et al., 2008), tratamento
de falhas (Morales et al., 2007), uxo de processos (Kiepuszewski et al., 2003), controle supervisrio
(Garcia Melo et al., 2008, Lee et al., 2005), entre outras.

1.1.1 Formalizao

Inicialmente tem-se a rede de Petri condio-evento ( C/E net ) que matematicamente, descrita
como uma 4-tupla
P NCE = (P, T, F, M )
em que:
P o conjunto de elementos passivos chamados de lugares,
T o conjunto de elementos ativos chamados de transies,
FCE o conjunto de relacionamentos entre os elementos passivos e os elementos ativos chamados de
arcos orientados,
MCE um vetor de recursos chamados de marcao, isto , um vetor de nmeros binrios em que
cada elemento mi indica o nmero de marcas no lugar pi , isto mi = MCE (pi ) e, p P, MCE (p)
(0, 1),e
onde,

5
Figura 1.1: A) Representao grca dos elementos da RdP; B) Exemplo de RdP como modelo de um
processo.

P e T so conjuntos nitos, no nulos (P T 6= ) e disjuntos (P T = ), e


FCE (P T ) (T P ).
A representao grca dos lugares da RdP so circunferncias; a representao grca das transi-
es so retngulos; a representao grca dos arcos orientados so setas apontando do elemento de
origem para o elemento de destino; e a representao grca das marcas so pontos dentro dos lugares,
assim como na Figura 1.1.
Os estados do sistema ou processo so representados pela distribuio das marcas nos lugares da
rede. A dinmica da RdP depende da alterao do estado da RdP, resultante do disparo das transies.
Pode-se assim adotar a idia de que as marcas uem pela rede direcionadas pelos arcos orientados,
isto , uem de certos lugares para outros lugares passando pelas transies disparadas.

Para que uma marca ua de um lugar p P para uma transio t T por uma arco
orientado f FCE , esse lugar deve possuir uma marca, ou seja, MCE (p) = 1. Esse lugar p
dito ento uma pr-condio da transio t e sua representao p t, em que t o conjunto
de pr-condies da transio t.
Para que uma marca ua de uma transio t T para um lugar p P por um arco
orientado f FCE , esse lugar no deve possuir marcas, ou seja, MCE (p) = 0. Esse lugar p
dito ento uma ps-condio da transio t e sua representao p t , em que t o conjunto
de ps-condies da transio t.

Quando uma transio possui todas as suas pr-condies e ps-condies atendidas essa transio
dita habilitada para o disparo. Uma transio habilitada pode disparar e esse instante denominado
passo. Quando t dispara:

todo lugar pi pi t tem


tal que sua marcao alterada entre o passo k e o passo k+1 da
seguinte maneira MCEk+1 (pi ) = 0, e

todo lugar pj pj t tem


tal que sua marcao alterada entre o passo k e o passo k+1 da
seguinte maneira MCEk+1 (pj ) = 1.

Incluso de novos conceitos - lugar com capacidade e arcos mltiplos Com o aumento
do uso da RdP, alguns conceitos foram revisados com o objetivo de simplicar a representao do mo-
delo. Um destes casos envolve a atribuio capacidade de marcas C(p) para os lugares em que
p P, C(p) N? , que simplica a representao de um conjunto de lugares em um nico (macro)
lugar, com uma nova denio do vetor de marcas M para p P, M (p) N, representado gra-
camente com um nmero natural prximo ao lugar, assim como na Figura 1.2. Outro importante

6
Figura 1.2: Complemento de capacidade dos lugares

Figura 1.3: Complemento de peso dos arcos orientados

conceito o de peso dos arcos W (f ) que, analogamente capacidade dos lugares, indica a existn-
cia de mltiplos arcos orientados entre um lugar e uma transio ou entre uma transio e um
lugar, representado gracamente com um nmero natural prximo ao arco orientado, assim como na
Figura 1.3. Matematicamente, tem-se assim que f FLT , W (f ) N? , que tambm pode ser repre-
sentado como W (x, y) = N | (x P, y T ) (x T, y P ). Esta rede chamada de Rede de Petri
lugar/transio (P/T net ) em que P NLT = (P, T, F, W, M ).
Com isso, na RdP lugar/transio, para que marcas uam de um lugar p para uma transio
t por uma arco orientado f , o lugar deve possuir, no mnimo, o nmero de marcas determinado no
peso do arco orientado, ou seja, M (p) W (f ). Tambm, para que marcas uam de uma transio
t para um lugar p por um arco orientado f , o lugar deve possuir capacidade de receber o nmero
de marcas determinado no peso do arco orientado, ou seja, C(p)M (p) W (f ). Assim como na RdP
condio evento, os lugares a partir dos quais uem as marcas por arcos orientados para uma
transio integram o conjunto de pr-condies da transio e os lugares que recebem as marcas
de uma transio integram o conjunto de ps-condies desta transio.
Quando uma transio possui todas as suas pr-condies e ps-condies atendidas, essa tran-
sio dita habilitada para o disparo. Uma transio habilitada pode disparar e esse instante
denominado passo). Quando t dispara:

todo lugar pi tal que pi t tem sua marcao alterada entre o passo k e o passo k + 1 da seguinte
maneira Mk+1 (pi ) = Mk (pi ) W (pi , t), e
todo lugar pj tal que pj t tem sua marcao alterada entre o passo k e o passo k +1 da seguinte
maneira Mk+1 (pj ) = Mk (pj ) + W (t, pj ).

Extenso da RdP - Arco inibidor Para ampliar o poder de modelagem da RdP foram posteri-
ormente propostas extenses para acrescentar novas funcionalidades e para simplicar o modelo. Uma
extenso que simplica o modelo em RdP o arco inibidor que envolve o conceito de rede dual. A

7
Figura 1.4: Complemento de arco orientado inibidor

Figura 1.5: Representao grca da transio temporizada na RdP T-temporizada

rede dual derivada em correspondncia a cada lugar da RdP de forma que se p01 o dual de p1 , com
p1 P , em que se M (p1 ) = 0, ento no caso de RdP 0
C/E
M (p1 ) = 1, e se M (p1 ) 6= 0, ento M (p01 ) = 0.
Assim, ao conectar o lugar dual uma transio, esta pode ser entendida como o lugar da rede que
inibe o disparo da transio. O arco inibidor representado gracamente como uma linha com uma
circunferncia na ponta mais prxima a transio, assim como na Figura 1.4.
Os arcos inibidores tambm so pr-condies para uma transio. Se um arco inibidor
fI relaciona o lugar p a transio t, este arco determina que a pr-condio da transio est
atendida apenas na condio de marcao nula, ou seja, M (p) = 0. Porm, diferentemente dos arcos
orientados normais, os arcos inibidores no afetam as marcas de seus lugares.

Extenso da RdP - temporizaes A RdP tambm usada para resolver problemas de agendamento
em sistemas dinmicos, mas para isso foi feita a incluso de um elemento que incorpora o conceito de
tempo. Assim surgiram as RdP temporizadas, que podem ser de dois tipos: P-temporizadas ou T-
temporizadas. Nessas RdP, o modelo inclui tambm um contador de tempo que baseada na idia
de ciclo de tempo. Um ciclo de tempo estabelecido quando nenhuma transio t T pode mais
disparar. A RdP P-temporizada inclue aos lugares da RdP uma propriedade que dene quantos ciclos
de tempo uma marca deve permanecer dentro de um lugar antes de poder ser retirada devido a um
disparo de transio. A RdP T-temporizada inclue nas transies uma propriedade que dene por
quantos ciclos de tempo as pr-condies e ps-condies devem ser atendidas para que a transio
dispare. Na RdP T-temporizada, caso uma das pr-condies ou ps-condies no esteja mais atendida
durante a contagem de ciclos de tempo, o contador de ciclo de tempo dessa transio zerado. Se
a transio disparar, seu contador de ciclo de tempos tambm zerado. A representao grca da
transio temporizada na RdP T-temporizada um retngulo oco, como na Figura 1.5.

Tipo de RdP que pode ser usada no PIPE A RdP implementada no aplicativo PIPE uma RdP
lugar/transio T-temporizada com arcos inibidores e, uma 6-tupla P N = (P, TN , TT , FN , FI , M0 ),
P o conjunto de lugares,
TN o conjunto de transies no temporizadas,
TT o conjunto de transies temporizadas,
FN o conjunto dos arcos orientados normais,
FI o conjunto dos arcos inibidores,
M0 um vetor onde cada elemento que representa a quantidade inicial de marcas no lugar tambm
conhecido como marcao inicial dos lugares.
Para cada lugar p necessrio denir sua capacidade C(p).
Nas transies temporizadas tT necessrio denir quantos ciclos de tempo uma transio tem-
porizada deve esperar para o disparo aps estar habilitada.
Para cada arco orientado fN necessrio denir o peso do arco W (fN ).

1.1.2 Caractersticas dos SEDs

O comportamento dinmico de SEDs pode ser entendido pela evoluo de seus processos que possuem
caractersticas especcas e que uma ferramenta de modelagem de SEDs deve ser capaz de representar.

8
Estes processos por sua vez so compostos por um conjunto de atividades. Algumas das caractersticas
mais importantes dos processos em SEDs so:

1.1.2.1 Sequncia
A sequncia a caracterstica que indica uma ordem de realizao das atividades envolvidas, isto , qual
conjunto de atividades deve ser concluido para que outro seja iniciado.
Em RdP, atividades so representados por transies. Assim, a relao de sequncia de duas
atividades t1 e t2 , pode ser representada adicionando-se um lugar p1 e arcos orientados de modo que
p1 t2 e p1 t1 . Assim, para que a transio t2 seja habilitada, necessrio que a transio t1
tenha sido anteriormente disparada. A Figura 1.6 mostra duas atividades numa relao de sequncia.

Figura 1.6: Representao em RdP de duas atividades em sequncia

1.1.2.2 Paralelismo
O paralelismo uma caracterstica das atividades que podem ser executados ao mesmo tempo sem que
haja interferncia da execuo de um em outro, mas ambos com a mesma origem, isto , uma nica
condio (estado) inicial.
Em RdP, o paralelismo de duas atividades pode ser modelado por duas transies t2 e t3 e dois
lugares p1 e p2 e arcos orientados de modo que p1 t2 , p2 t3 . Para representar a mesma condio
p1 t1 e p2 t1 . Assim, quando
inicial, adiciona-se mais uma transio t1 e arcos orientados para que,
ocorre o disparo da transio t1 , tanto a transio t2 quanto a transio t3 cam habilitadas, mas
o disparo de um independe da outra. A Figura 1.7 mostra um paralelismo de duas atividades.

Figura 1.7: Representao do paralelismo em RdP de duas atividades com a mesma condio inicial

1.1.2.3 Sincronizao
A sincronizao uma caracterstica de sistemas em que uma atividade depende da execuo de outras
atividades. Em geral, a sincronizao feita entre atividades em paralelo, mas tambm pode ocorrer
entre duas atividades com origens (processos) totalmente independentes.
Em RdP, a sincronizao de duas atividades pode ser modelada por trs transies t1 ,t2 e t3 e
dois lugares p1 e p2 e arcos orientados de modo que p1 t3 , p2 t3 , p1 t1 e p2 t2 . Assim,
necessrio que tanto a transio t1 como a transio t2 sejam anteriormente disparadas para que a
transio t3 seja habilitada. A Figura 1.8 mostra uma sincronizao de duas atividades.

1.1.2.4 Conito
O conito uma caracterstica de sistemas associada a escolha. Quando as atividades esto em conito,
signica que apenas uma delas pode ser executada e a execuo de uma dessas atividades inibe a execuo
das outras atividades que estavam em conito.
Em RdP, o conito de duas atividades pode ser modelada por trs transies t1 ,t2 e t3 e um lugar
p1 em que p1 t2 , p1 t3 e p1 t1 . Assim, aps o disparo da transio t1 , tanto a transio t2
quanto a transio t3 cam habilitadas, mas apenas uma delas poder ser disparada. A Figura 1.9
ilustra este caso.

9
Figura 1.8: Representao em RdP da sicronizao de duas atividades.

Figura 1.9: Representao em RdP do conito entre duas atividades

1.1.2.5 Compartilhamento de recursos


O compartilhamento de recursos uma caracterstica de sistemas em que atividades diferentes dependem
de um mesmo recurso para ser executados. Um recurso pode ser um equipamento usado em diferentes
atividades em um sistema produtivo, uma informao na memria de um sistema operacional, uma
linha de transmisso em um sistema de comunicao, uma mquina ou ferramenta usado em sistemas de
manufatura, entre outros das diferentes reas de SEDs.
Em RdP, o compartilhamento de recursos de duas atividades pode ser modelado por quatro tran-
sies t1 ,t2 , t3 e t4 e trs lugares p1 , p2 e p3 em que p1 t1 , p1 t2 , p2 t3 , p3 t4 , p2 t1 ,
p3 t2 , p1 t3 e p1 t4 e M (p1 ) = 1. Assim, tanto a sequncia t1 , t3 quanto a sequncia t2 , t4 dependem

de um recurso presente em p1 , mas por ser um recurso nico, apenas uma das sequncias pode ocorrer
de cada vez, mas aps essa sequncia ocorrer, o recurso volta a car disponvel. A Figura 1.10 mostra
um compartilhamento de recurso de dois processos.

Figura 1.10: Representao em RdP do compartilhamento de recursos entre atividades de dois processos
distintos.

1.1.3 Propriedades

Segue as principais propriedades que podem caracterizar o comportamento dinmico de uma RdP. As
denies foram baseadas no trabalho de Murata (1989).

1.1.3.1 Alcanabilidade
A identicao dos estados alcanveis de um sistema fundamental para o estudo das propriedades
dinmicas de qualquer sistema. O disparo de uma transio habilitada muda a distribuio das
marcas (ou marcao) da RdP. Uma sequncia de disparos resulta em uma sequncia de marcaes.
Uma marcao Mn dita alcanvel a partir de uma marcao M0 se existir uma sequncia de

10
disparos que transforma M0 em Mn . = M0 t1 M1 t2 M2 tn Mn
Uma sequncia de disparos denotada por
ou simplesmente por = t1 t2 tn . Neste caso, Mn M0 por e representado
alcanvel a partir de
por M0 [ > Mn . O conjunto de todas as possveis marcaes alcanveis a partir de M0 em uma rede
(P, TN , TT , FN , FI , M0 ) denotado por R(P, TN , TT , FN , FI , M0 ) ou simplesmente de R(M0 ).
O problema da alcanabilidade em RdP saber se Mn R(M0 ) para uma dada marcao Mn . Em
algumas aplicaes, pode ser interessante fazer o estudo de marcaes em um subconjunto especco
de lugares e no levar em conta o restante da rede.

1.1.3.2 Limitabilidade e Segurana


A RdP (P, TN , TT , FN , FI , M0 ) dita k -limitada ou simplesmente limitada se o nmero de marcas em
cada lugar da rede no exceder um nmero nito k para qualquer marcao alcanvel a partir de M0 ,
ou seja, p P |M (p) k . Uma RdP dita segura se esta for 1-limitada. Na prtica, os lugares da
RdP so frequentemente usados para representar buers e/ou registradores de dados, itens ou materiais.
Assim, assegurar que a rede que modela o sistema limitada ou segura, uma forma de garantir que no
haver overow nos buers ou registradores, no importando qual sequncia de eventos, isto , disparos
ocorra.

1.1.3.3 Vivacidade
A vivacidade est intimamente relacionada ausncia de deadlocks (situaes de autotravamento) na
operao de um sistema. Uma RdP dita viva se, independentemente de qual marcao alcanada a
partir de M0 , sempre possvel disparar qualquer transio da rede por alguma sequncia de disparo.
Isto signica que a RdP viva garante a operao com ausncia de deadlocks, no importa qual sequncia
de disparos foi seguida.
Vivacidade a propriedade fundamental para a operao regular de muitos sistemas. Entretanto, a
identicao desta propriedade nem sempre simples e o custo de de vericao para alguns sistemas
pode ser muito elevado. possvel, ento, relaxar a condio de vivacidade e denir diferentes nveis de
vivacidade.
Neste sentido, uma transio t em uma RdP dita:

morta ou L0-viva se nunca pode ser disparada em qualquer sequncia de disparos a partir de
M0 ;
L1-viva (ou potencialmente disparvel) se t pode ser disparada ao menos uma vez em alguma
sequncia de disparos a partir de M0 ;

L2-viva se, dado um nmero inteiro positivo k , t pode ser disparado pelo menos k vezes em alguma
sequncia de disparos a partir de M0 ;
L3-viva se t aparece innitamente, em alguma sequncia de disparos a partir de M0 ;
L4-viva ou viva se t L1-viva para qualquer marcao M em R(M0 ).

A RdP dita Lk -viva se todas as transies na rede forem Lk -vivas, k = 0, 1, 2, 3, 4. A vivacidade


L4 a mais abrangene dos casos e corresponde a denio de vivacidade apresentada inicialmente.
possvel vericar que vivacidade L4 implica em vivacidade L3 que implica em vivacidade L2 que implica
em vivacidade L1.

1.1.3.4 Reversibilidade
Uma RdP dita reversvel se, para qualquer marcao M em R(M0 ), M0 alcanvel a partir de
M. Assim, em uma rede reversvel sempre possvel se retornar para a marcao inicial ou estado
inicial. Em muitas aplicaes, no to necessrio retornar ao estado inicial quanto retornar a um estado
desejado. Portanto, a condio de reversibilidade pode ser relaxada pela denio do estado desejado.
Uma marcao M0 considerada um estado desejado se, para cada marcao M em R(M0 ), M 0
alcanvel a partir de M.

11
1.1.3.5 Cobertura
Uma marcao M em uma RdP coberta se existe uma marcao M 0 em R(M0 ) tal que M 0 (p)
M (p) para cada p na rede. Cobertura fortemente relacionada a vivacidade L1. Se M for a marcao
mnima para habilitar a transio t para o seu disparo, ento t morta se e somente seM no estiver
coberta. Ou seja, t L1-viva se e somente se M est coberta.

1.1.3.6 Persistncia
Uma RdP dita persistente se, para quaisquer duas transies habilitadas, o disparo de uma delas no
desabilita a outra. Uma transio em uma rede persistente, uma vez habilitada, permanece habilitada
at que dispare. A noo de persistncia til no contexto de sistemas assncronos. A persistncia
fortemente relacionada a uma rede sem conitos.

1.1.3.7 Distncia sncrona


A distncia sncrona uma mtrica fortemente relacionada ao grau de dependncia mtua entre duas
transies em uma RdP. A distncia sncrona entre duas transies t1 e t2 denida na RdP como
d1 2 = max|(t1 ) (t2 )|, em que uma sequncia de disparos comeando em qualquer marcao

M em R(M0 ) e (ti ) o nmero de vezes que a transio ti , com i = 1, 2, dispara em .

1.1.3.8 Equidade
Diferentes noes de equidade foram propostas na literatura de RdP. Aqui sero aborados dois conceitos
de equidade: equidade limitada e equidade incondicional (ou global). Duas transies t1 e t2 possuem
uma relao igual-limitada se o mximo de vezes que uma disparar enquanto a outra no disparar
limitada. Uma RdP dita igual-limitada se cada par de transies desta mantem uma relao igual-
limitada. Uma sequncia de disparos dita incondicionalmente igual se esta nita ou todas as
transies da rede aparecem innitamente em . Uma RdP dita incondicionalmente igual se todas
as sequncias de disparos a partir de M em R(M0 ) incondicionalmente igual.

12
Captulo 2

PIPE
Este captulo tem o objetivo de mostrar passo-a-passo o uso do programa aplicativo PIPE para a mo-
delagem, simulao e anlise de Redes de Petri (RdP). O aplicativo PIPE ( Plataform Independent Petri
net Editor ) foi inicialmente criado como um projeto de um grupo de alunos de ps-graduao do De-
partamento de Computao do Imperial College London, em 2003. O objetivo era criar um aplicativo
para edio e anlise de RdPs. Anteriormente, o Imperial College London j tinha desenvolvido uma
ferramenta de anlise para RdP chamado DNAmaca, contudo o PIPE se destacou pela interface mais
simples de usar, plataforma independente e, uma vez que o cdigo fonte aberto, o aplicativo apresenta
fcil extensibilidade. Desde sua criao, o aplicativo vem sendo melhorado para a correo de erros e
para a adio de novas funcionalidades.
As primeiras sees dessa apostila visam a familiarizao do usurio com a instalao e os recursos
bsicos disponveis no PIPE, mais especicamente a verso PIPE2. Em seguida, o usurio aprende a
utilizar a simulao e os mdulos de anlise da RdP.

2.1 Instalao inicial


O download do PIPE2 pode ser realizado pelo site: http://pipe2.sourceforge.net . O arquivo deve ser
extrado de um arquivo 'zip'. A instalao assume que o Java j est instalado na mquina. Caso
contrrio, este pode ser baixado do site da Oracle : http://java.com (Akharware, 2005).
Independentemente de como so implementadas as ferramentas de anlise da RdP, uma interface que
permita um fcil desenho e edio das RdPs fundamental para o usurio (Barnwell et al., 2004), dessa
forma, nesta verso do PIPE2 as funes do File, Edit, View, Draw, Animate e Help podem ser acionadas
de modo relativamente simples e intuitivo.

2.2 Funes do File


Dentre as funes bsicas disponveis no menu File tem-se:

New (Crtl+N): Criar um novo documento para a RdP;

Open (Crtl+O): Abrir um documento antigo;

Close (Crtl+W): Fechar a guia visualizada;

Impor t: Importar um documento do TimeNET;

Save (Crtl+S): Salvar o documento;

Save as (Crtl+Shift+S): Salvar o documento, com opo do local onde o arquivo deve ser salvo;

Export : Exportar o documento com extenso PNG, PostScript ou TimeNET;

Print (Crtl+P): Imprimir;

Exit (Crtl+Q): Fechar o aplicativo PIPE2.

13
Figura 2.1: Problema Dining Philosophers de Dijkstra

Figura 2.2: Modelo Dining Philosophers

2.2.1 Funo Example nets


De forma a exemplicar o uso de RdP para representar diferentes sistemas, o aplicativo PIPE2 apresenta
um banco de dados de RdPs na funo Example nets (Barnwell et al., 2004).
Exemplo:
Dining Philosophers : Cinco lsofos moram em uma casa onde h uma mesa redonda para as refeies.
Um problema, alm da losoa, o prato servido: um tipo de espaguete difcil de manusear que para ser
comido requer o uso de dois garfos (Figura 2.1). Existem dois garfos prximos a cada prato e portanto
dois vizinhos no conseguiro comer simultaneamente . Como dito anteriormente, a representao grca
dos lugares da RdP so circunferncias; das transies, retngulos; dos arcos orientados, setas; e
das marcas, crculos dentro dos lugares(Dijkstra, 1971).
Na RdP do Dining Philosophers (Figura 2.2), os lugares p1 , p3 , p5 , p7 e p9 representam os garfos,
elementos compartilhados entre os lsofos. No estado inicial, as transies t0 ,t2 , t4 , t6 e t9 esto
habilitadas. Se, por exemplo, t2 disparar, as marcas em p7 , p8 e p9 uiro para t2 . Em seguida, uma
marca uir para o lugar p10 . Isso teria o efeito de remover 2 elementos compartilhados (garfos) da
mesa, limitando assim o acesso pelos outros lsofos. Com o disparo da transio t3 , uma marca
uir de p10 at t3 , e em seguida, marcas uiro para p7 , p8 e p9 , retornando o sistema ao estado inicial
(Chung et al., 2007). O modelo em RdP garante que apenas uma quantidade mxima de lsofos coma
a cada vez .

2.3 Funes do Edit


Dentre as funes bsicas disponveis no menu Edit tem-se:

Undo (Crtl+Z): Desfazer uma ao;

14
Redo (Crtl+Y): Refazer a ao;

Cut (Crtl+X): Recortar um elemento grco;

Copy (Crtl+C): Copiar um elemento grco;

Paste (Crtl+V): Colar um elemento grco;

Delete (Delete): Excluir um elemento grco.

2.4 Funes do View


Dentre as funes bsicas disponveis no menu View tem-se:

Zoom out (Crtl+Minus): Aumentar a visualizao do documento;

Zoom in (Crtl+Plus): Diminuir a visualizao do documento;

Zoom : Opo de visualizaes (de 40% a 300%);

Cycle grid (G): Congurao do fundo de tela quadriculado;

Drag (D): Arrasta um documento para visualizao (movimentao da barra de rolagem - scrollbar ).

2.5 Funes do Draw


Dentre as funes bsicas disponveis no menu Draw tem-se:

Select (S): Selecionar um elemento grco;

Place (P): Adicionar um lugar;

Immediate transition (I): Adicionar uma transio no temporizada - uma vez habilitada, dispara
no tempo zero;

Timed transition (T): Adicionar uma transio temporizada - uma vez habilitada, dispara aps
um tempo determinado;

Arc (A): Adicionar um arco orientado normal;

Inhibitor Arc (H): Adicionar um arco inibidor;

Annotation (N): Adicionar uma caixa de texto com comentrio;

Add token (NumPad+): Adicionar marcas de um elemento lugar;

Delete token (NumPad-): Excluir marcas de um elemento lugar;

Rate Parameter (R): Congurao de label ;


Marking Parameter (M): Congurao de label ;

2.6 Funes do Animate - simulao:


Aps concluir a edio da RdP, a funo Animation mode deve ser habilitada. Desse modo, o arquivo
deixar de ser editvel e ser habilitada a funo de simulao. Para a visualizao passo-a-passo do
disparo das transies e do uxo de marcas resultante, deve-se clicar em Random. Para a visualizao
do disparo automtico de uma sequncia de transies, deve-se clicar em Animate e denir o nmero
desejado de disparos das transies.
Outras funes bsicas:

Back : Voltar ao estado anterior ao disparo da transio na simulao;

Forward : Refazer o disparo da transio na simulao.

15
2.7 Mdulos para anlise das propriedades da RdP
Aps concluir a edio da RdP, o aplicativo PIPE2 tambm permite anlises qualitativas e quantitativas
(Bonet et al., 2007). Essa seco apresenta os mdulos de anlise disponveis:

2.7.1 Classication
Baseada na conexo entre os lugares e as transies, esse mdulo permite que a RdP seja classicada
nos seguintes tipos (Bonet et al., 2007):

State Machine (verdadeiro ou falso) - uma RdP ordinria (isto , o peso dos arcos sempre 1)
tal que | t| = |t | = 1 para todo t T, isto , uma RdP em que cada transio tem exatamente
um lugar na entrada e um lugar na sada (Murata, 1989).

Marked Graph (verdadeiro ou falso) - uma RdP ordinria tal que | p| = |p | = 1 para todo
p P, isto , uma RdP em que cada lugar possui exatamente uma transio na entrada e uma
transio na sada (Murata, 1989).

Free Choice Net (verdadeiro ou falso) - uma RdP ordinria tal que para todo p1 , p2 P ,
p1 p2 6= |p1 | = |p2 | 1, isto , uma RdP em que todo arco sando de um lugar o
nico de entrada para uma transio (Murata, 1989).

Extended Free Choice Net (verdadeiro ou falso) - uma RdP ordinria tal que p1 p2 6=

p1 = p2 para todo p1 , p2 P , isto , uma RdP em que todas as transies em conito (isto ,
que compartilham um lugar de entrada) possuem necessariamente os mesmos lugares de entrada
(Murata, 1989). Ver a Figura 2.3.

Simple net ou Asymmetric choice net (verdadeiro ou falso) - No caso de existncia de transies
com dois ou mais conitos na entrada (ver a Figura 2.3): p1 6= p2 p1 p2 6=
|p1 | 1 e {

ou |p2 | 1 } para todo p1 , p2 P , isto , podem existir transies de sada de p1 e p2 em
comum sendo que neste caso, existe no mximo uma transio de sada para o lugar p1 ou para
o lugar p2 (Bause and Kritzinger, 2002).

Extended Simple Net (verdadeiro ou falso) - No caso de existncia de transies em conito sendo
que (ver a Figura 2.3): p1 p2 6= ou p1 p2 ou p1 p2 para todo p1 , p2 P , isto , uma
RdP em que existem transies de sada de p1 e p2 em comum ou o conjunto de transies
de sada de p1 est contido ou igual ao conjunto de transies de sada de p2 (ou vice-versa).
(Bause and Kritzinger, 2002).

2.7.2 Comparison
Mdulo que compara as funcionalidades de duas RdPs, baseado na congurao dos lugares, transi-
es, arcos e arcos inibidores.

2.7.3 Reachability Graph


Mdulo que fornece uma representao visual (grafo em forma de rvore) de todas as possibilidades
(estados alcanveis) derivados de disparos das transies de uma RdP (Bonet et al., 2007). Neste
grafo (rvore de alcanabilidade), os ns representam os estados (Marcaes) da RdP e as setas entre
estes ns indicam os disparos das transies da RdP (Chung et al., 2007).

2.7.4 State Space Analysis


Esse mdulo permite a anlise das propriedades qualitativas da RdP, como limitabilidade, segurana e
auto-travamentos:

Limitada ( Bounded ) - verdadeiro ou falso;


Segura ( Safe ) - verdadeiro ou falso;
Auto-travamento ( Deadlock ) - verdadeiro ou falso.

16
Figura 2.3: Classicao de uma Rede de Petri

2.7.5 Minimal Siphons and Minimal traps


Esse mdulo determina o conjunto de lugares numa RdP em que o nmero de marcas nunca aumenta
( minimal siphons ) e o conjunto de lugares numa RdP que nunca ca sem suas marcas (minimal traps ).
Estes conjuntos podem ser utilizados para vericar a propriedade de vivacidade e alcanabilidade (Bonet
et al., 2007).

2.7.6 Incidence and Marking


O comportamento dinmico de muitos sistemas estudados na engenharia (sistemas dinmicos com vari-
veis contnuas) pode ser descrito por equaes diferenciais e/ou equaes algbricas. Assim, interessante
descrever e analisar o comportamento dinmico das RdPs tambm por equaes (Murata, 1989).
Nesse contexto, este mdulo disponibiliza as matrizes de incidncia ( incidence matrices ), os vetores
de marcao ( marking matrices ) e o vetor de disparo das transies (Bonet et al., 2007).
As matrizes de incidncias so (Akharware, 2005):

Backwards incidence matrix ) - Determina o nmero de marcas nos


Matriz de incidencia anterior (
lugares de entrada das transies que sero consumidas quando estas transies dispararem;

Matriz de incidencia posterior ( Forwards incidence matrix ) - Determina o nmero de marcas nos
lugares de sada das transies que sero geradas quando estas transies dispararem.

2.7.7 Invariant Analysis


Esse mdulo calcula os vetores dos invariantes de lugar ( P-invariants ) e de transio (T-invariants )
com preciso e ecincia. Esses vetores no so difceis de calcular uma vez que a complexidade do
clculo depende apenas do nmero de lugares e transies na RdP e no do tamanho da rvore de
alcanabilidade (Bonet et al., 2007).
P-invariants ) tambm chamado de S-invariants porque alguns
O vetor dos invariantes de lugar (
autores denotam o conjunto de lugares por S-set, de "stellen " (lugares em alemo). Esse vetor
utilizado para denir se a RdP limitada (bounded )(Bause and Kritzinger, 2002).

17
Supondo-se que a RdP est no estado M, o vetor dos invariantes de transio (T-invariants ) dene
as transies que devem ser disparadas para a RdP retornar no estado M. Esse vetor utilizado para
denir se a RdP limitada (bounded ) e viva (live ) (Bause and Kritzinger, 2002).

2.7.8 GSPN Analysis


Uma GSPN ( Generalized Stochastic Petri Net ) uma extenso das RdPs com a adio do conceito de
tempo para uma modelagem de algumas situaes do mundo real (Barnwell et al., 2004). Ela possui
dois tipos de transies: no temporizadas ( immediate transitions ) e temporizadas (timed transitions )
(Akharware, 2005). O mdulo de anlise GSPN determina:

Conjunto de estados alcanveis ( Set of Tangible States );


Distribuio dos estados de equilbrio dos estados alcanveis ( Steady State Distribution of Tangible
States );
Mdia do nmero de marcas em cada lugar ( Average Number of Tokens );
Densidade da probabilidade das marcas ( Token Probability Density );
Taxa de disparo das transies temporizadas ( Throughput of Timed Transitions );
Permanncia de tempo para estados alcanveis ( Sojourn times for tangible states );

2.7.9 DNAmaca
Este mdulo uma interface com o DNAmaca, uma ferramenta para especicao, edio e soluo de
Cadeias de Markov, que pode ser utilizado para anlise de desempenho de RdPs. O resultado produzido
nesse mdulo : anlise estatstica de tempo das redes, que representa a distribuio do perodo de tempo
para que o sistema evolua do estado de origem at o estado alvo Murata (1989).

2.7.10 Simulation
Esse mdulo calcula o nmero mdio de marcas por lugar com intervalo de conana de 95% para cada
lugar da RdP. Uma abordagem analtica completa de um problema pode ser relativamente complexa e
dispendiosa enquanto uma simulao devidamente projetada pode fornecer um mtodo alternativo para
identicar solues para o problema (Bonet et al., 2007).
Assim, este mdulo realiza a evoluo da RdP de acordo com as regras de disparo das transies,
permitindo a visualizao do uxo de marcas e identicao dos estados alcanveis do sistema modelado
e que uma representao alternativa de sua dinmica.

2.8 Exemplo
A RdP da Figura 2.4 (Bause and Kritzinger, 2002) utilizada como exemplo. Primeiramente, obtm-se
os resultados do mdulo de Classication (Figura 2.5):

State Machine : verdadeiro, pois as transies t0 , t1 , t2 e t3 tm exatamente e respectivamente


um lugar na entrada (p0 , p0 , p1 e p2 ), e um lugar na sada (p1 , p2 , p0 e p0 );
Marked Graph : falso, pois o lugar p0 possui mais de uma transio na entrada (t2 e t3 ) e mais
de uma transio na sada (t0 e t1 );
Free Choice Net: verdadeiro, pois todos os arcos saindo dos lugares p0 , p1 e p2 so os nicos de
entrada para as transies t0 , t1 ,t2 e t3 (Murata, 1989);

Extended Free Choice Net : verdadeiro, pois todas as transies em conito (isto , transies
de p0 para t0 e p0 para t1 ) possuem necessariamente o mesmo lugar de entrada (p0 );

Simple net : verdadeiro, pois no existem transies com conitos na entrada que neguem essa
propriedade (ver item 2.7.1 - Classication);

Extended Simple net: verdadeiro, pois no existem transies com conitos na entrada que neguem
essa propriedade (ver item 2.7.1 - Classication).

18
Figura 2.4: Rede de Petri - exemplo para anlise.

A rvore de alcanabilidade da RdP ilustrada na Figura 2.6. Observa-se que o mdulo Reachability
Graph gera um grafo equivalente a rvore de alcanabilidade (Figura 2.7) sendo os estados ou marcaes
(1, 0, 0), (0, 1, 0) e (0, 0, 1) representados por S0, S1 e S2, respectivamente.
O mduloState Space Analysis (Figura 2.8) apresenta as propriedades qualitativas indicando que a
RdP do exemplo limitada (bounded ), segura (safe ) e no possui auto-travamentos (deadlock ).
O mdulo Minimal Siphons and Minimal Traps (Figura 2.9) determina o conjunto de lugares em que
o nmero de marcas nunca aumenta (para o exemplo, o conjunto {p0 , p1 , p2 }) e o conjunto de lugares
que nunca ca sem marcas (para o exemplo, o conjunto {p0 , p1 , p2 }).
O mdulo de Incidence and Marking, na Figura 2.10, determina as matrizes de incidncia anterior I
+
e posterior I . Como no existem arcos inibidores no exemplo, a matriz H nula. Esse mdulo indica
tambm as marcas no estado atual (marcaes ou Marking ) e as transies habilitadas ( Enabled
Transitions ) para esse estado, no caso, t0 e t1
O mdulo dos invariantes (Figura 2.11) calcula os invariantes de transio e de lugares. Neste
exemplo, os invariantes de transio indicam que a RdP pode ser limitada e viva e os invariantes de
lugar indicam que a RdP limitada.
Em seguida, obtm-se os resultados do mdulo GSPN Analysis (Figura 2.12). Este mdulo indica que
existem trs estados alcanveis ( Set of Tangible States ) sendo todos eles igualmente possveis (Steady
State Distribution of Tangible States ). Considerando que no existe acrscimo ou decrscimo do nmero
de marcas na RdP e que os estados alcanveis so igualmente possveis, ento a RdP apresenta uma
mdia de 0, 3 marcas por lugar ( Average Number of Tokens ). O mdulo de anlise tambm indica a
densidade de marcas por lugar. No caso do lugar p0 , nos estados M1 e M2 no existem marcas; e
no estado M0 existe uma marca. Dessa forma, em 0, 666 vezes dos estados, o lugar p0 no apresenta
marca ( = 0); e em0, 333 vezes dos estados, apresenta uma marca ( = 1).

19
Figura 2.5: Classication - exemplo

Figura 2.6: rvore de alcanabilidade - exemplo

Figura 2.7: Exemplo da tela do Reachability Graph

20
Figura 2.8: State Space Analysis - exemplo

Figura 2.9: Minimal Siphons and Minimal Traps - exemplo

21
Figura 2.10: Incidence & Marking - exemplo

Figura 2.11: Invariant Analysis - exemplo

22
Figura 2.12: GSPN Analysis - exemplo

23
Captulo 3

Vericao das propriedades da RdP no


PIPE2
Neste captulo apresentado um roteiro para o aluno vericar as propriedades das RdP utilizando o
aplicativo PIPE2. As propriedades a serem vericadas so: alcanabilidade, limitabilidade, segurana,
vivacidade, reversibilidade, cobertura, persistncia e equidade.

3.1 Alcanabilidade
Considera-se a RdP da Figura 3.1(Mourelle, 2009). Para a marcao inicial (1, 0, 0), duas outras
marcaes so imediatamente alcanveis: (0, 1, 0) e (1, 0, 1). Da primeira, nenhuma marcao
alcanvel, contudo, da segunda, as marcaes (0, 1, 1) e (1, 0, 2) so alcanveis. Estas propriedades
podem ser conrmadas utilizando a representao visual de todos os estados alcanveis gerada pelo
mdulo Reachability Graph, na Figura 3.2.

3.2 Limitabilidade e Segurana


Observa-se que a RdP apresentada anteriormente (Figura 3.1) no limitada, pois o lugar p2 admite
marcas. Essa propriedade pode ser vericada tambm utilizando o mdulo Reachability Graph. Nessa
representao, os detalhes de cada marcao so mostrados ao posicionar o cursor em cima dos ns S0,
S1, S2 e S3 (Figura 3.3). S0 (1, 0, 0),
Como dito anteriormente, verica-se que da marcao inicial
duas marcaes so alcanveis (conectadas por setas): S2 (0, 1, 0) e S1 (1, 0, ). Da primeira, S2,
nenhuma marcao alcanvel, contudo, da segunda, as marcaes S3 (0, 1, ) e S1 (1, 0, ) so
alcanveis. O smbolo indica que a marcao permite innitas marcas no lugar. Por exemplo,
S1 pode ser (1, 0, 1), (1, 0, 2), (1, 0, 3) e assim por diante.
A visualizao desse comportamento pode ser observado pelo Animate mode. Aps selecionar essa
funo, visualiza-se as transies habilitadas, em cor vermelha. O disparo das transies t0 e t1
pode ser feito com o clique simples nelas. A partir da marcao inicial (1, 0, 0), dispara-se a transio
t0 . Sucessivos disparos da transio t0 resultam no acrscimo de marcas no lugar p2 (Figura 3.4).
Dessa forma conrma-se com a simulao do PIPE2 que a RdP no limitada.
Tem-se agora a RdP da Figura 3.5. Nessa RdP, o mdulo Reachability Graph tambm utilizado
(Figura 3.6). Verica-se que os ns S0, S1 e S2 representam as marcaes (1, 0, 0), (0, 1, 0) e (0, 0, 1),
respectivamente. Como o nmero de marcas em cada lugar no excede uma marca, a RdP chamada
de 1-limitada e, portanto, segura.

Figura 3.1: RdP para vericao da Alcanabilidade

24
Figura 3.2: Reachability Graph para vericao da Alcanabilidade

Figura 3.3: Detalhes das marcaes possveis na RdP

3.3 Vivacidade
Observa-se que a RdP apresentada anteriormente (Figura 3.1) no viva, uma vez que nenhuma tran-
sio pode ser disparada se a transio t1 disparar. A visualizao desse comportamento pode ser
observado pelo Animate mode. Aps selecionar essa funo, visualiza-se as transies habilitadas, em
cor vermelha. O disparo das transies t0 e t1 pode ser feito com o clique simples nelas. A partir da
marcao inicial (1, 0, 0), dispara-se a transio t1 . Aps esse disparo, as transies t0 e t1 no
estaro mais habilitadas para o disparo e, portanto, tem-se uma condio de auto-travamento ( deadlock )
(Figura 3.7).
Comparativamente, tem-se a RdP da Figura 3.5. Essa RdP viva, dado que no existem deadlocks.
A visualizao do comportamento da RdP pode ser observado pelo Animate mode (Figura 3.8). Aps
selecionar essa funo, visualiza-se as transies habilitadas, em cor vermelha. A partir da marcao
inicial (1, 0, 0), dispara-se a transio t0 ou a transio t1 . Aps esse disparo, as transies t0 e
t1 no estaro mais habilitadas para o disparo e a transiot2 estar, se t0 for disparada, ou t3 , se t1
for disparada. Em seguida, volta-se para a marcao inicial (1, 0, 0). Verica-se assim que no existem
situaes de auto-travamento ( deadlock ) e, portanto, a RdP viva.
Nota-se que o nvel L4-viva a condio denida para a classicao da RdP da Figura 3.5. Analisa-se
a seguir o comportamento dos outros nveis de vivacidade com a RdP da Figura 3.9(Murata, 1989).
Primeiramente, analisa-se a transio t0 , classicada como L0-viva. Dado que nunca se tem ao
mesmo tempo marca nos lugares p0 e p2 ento, as pr-condies para que t0 esteja habilitada nunca

25
. . .

. . .

. . .

Figura 3.4: Animate mode para vericao da Alcanabilidade - sucessivos disparos de t0

Figura 3.5: RdP para vericao da Limitabilidade

sero atendidas e, portanto, t0 nunca poder ser disparada. Em seguida tem-se a transio t1 , L1-viva.
Pela representao visual do mdulo Reachability Graph, verica-se que o lugar p0 nunca ter mais de
uma marca e uma vez disparada a transio t1 o lugar p0 no recebe mais marcaes. Sendo assim, a
transio t1 ser disparada somente uma vez em qualquer sequncia de disparos a partir de M0 . A
transio t2 , classicada como L2-viva poder ser disparada k vezes dependendo do nmero de vezes
que a transio t3 disparar (antes de t1 ser disparada). Por m, a transio t3 dita L3-viva, pois
pode ser disparada innitas vezes (antes de t1 ser disparada).
O aluno deve vericar essas condies com a funo Animate mode.

3.4 Reversibilidade
No exemplo da Figura 3.1, a marcao inicial (1, 0, 0) no alcanvel aps o disparo de t0 ou t1 ,
portanto, a RdP no reversvel. Essa propriedade pode ser vericada pelo mdulo Reachability Graph.
Observa-se que aps atingir o n S2 (0, 1, 0) ou S1 (1, 0, ), no possvel mais retornar ao estado inicial.
Comparativamente, a RdP da Figura 3.5 reversvel. Nesse caso, o mdulo Reachability Graph indica
que a marcao inicial (1, 0, 0) alcanvel a partir das outras marcaes.
Na mesma RdP da Figura 3.5 considera-se como estado desejado a marcao (0, 1, 0), pode-se
tambm classic-la como reversvel dado que possvel retornar para esta marcao.

26
Figura 3.6: Reachability Graph para vericao da Limitabilidade e detalhes das marcaes possveis
na RdP

Figura 3.7: Animate mode para vericao da Vivacidade - disparo de t1 resulta em auto-travamento

3.5 Cobertura
Do exemplo da Figura 3.9, pode-se concluir que a transio t0 L0-viva, pois no existe uma marcao
mnima para habilit-la. A habilitao depende que os lugares p0 e p2 possuam marcas ao mesmo
tempo. Comparativamente, conclui-se que t3 L3-viva, pois a marcao inicial (1, 0, 0) est coberta.

3.6 Persistncia
Esta propriedade pode ser observada na RdP da Figura 3.10 (Murata, 1989) com o Animate mode. Aps
selecionar essa funo, o usurio visualiza a transio t0 habilitada, em cor vermelha. O disparo da
transio t0 far com que a marca ua para p1 e p2 e as transies t1 e t2 sejam habilitadas. Esta
RdP classicada como persistente, pois o disparo de t1 no desabilita t2 (e vice-versa) (Figura 3.11).

3.7 Equidade
Observa-se que as transies t0 e t1 da Figura 3.12 (Murata, 1989) so iguais-limitadas, pois o nmero
de vezes que t0 dispara limitada pelo disparo de t1 . Como o par de transio desta RdP tem essa
propriedade, esta RdP classicada como igual-limitada. Alm disso, dado que as transies t0 e
t1 so habilitadas e disparadas innitamente em uma sequencia de disparos, ento a RdP tambm
incondicionalmente igual.
Comparativamente, a RdP da Figura 3.10 dita incondicionalmente igual, mas no igual-limitada,
dado que no existe limite no nmero de vezes que a transio t1 pode disparar sem disparar as demais
enquanto a quantidade de marcas do lugar p2 for ilimitada.
O aluno deve vericar essas propriedades com a funo Animate mode.

27
. . .

Figura 3.8: Animate mode para vericao da Vivacidade - ausncia de deadlocks

Figura 3.9: RdP para vericao da Vivacidade

28
Figura 3.10: RdP para vericao da Persistncia

Figura 3.11: Animate mode para vericao da Persistncia - disparo de uma transio no desabilita a
outra

Figura 3.12: RdP para vericao da Equidade

29
Captulo 4

Exerccio 1: Propriedades da RdP no


PIPE
Avalie o modelo representado na gura com base nas propriedades em seus devidos campos.

Alcanabilidade

Limitabilidade e segurana

Vivacidade

30
Reversibilidade

Cobertura

Persistncia

Equidade

31
Captulo 5

Exerccio 2: Propriedades da RdP no


PIPE
Avalie o modelo representado na gura com base nas propriedades em seus devidos campos.

Alcanabilidade

Limitabilidade e segurana

Vivacidade

32
Reversibilidade

Cobertura

Persistncia

Equidade

33
Captulo 6

Exerccio 3: Comportamento dinmico


de modelos
Considera-se aqui conjuntos de dispositivos eletromecnicos e eletrnicos que emulam um sistema produ-
tivo disperso chamado de sistema exvel de montagem automatizado (SFMA). Este SFMA composto
de 4 subsistemas (ou estaes de trabalho) com funes especcas e cada um desses subsistemas pode
ser entendido como um sistema produtivo (SP).
Cada subsistema do SFMA tem um conjunto de sensores e atuadores mais adequados ao seu funcio-
namento, isto , execuo de um processo produtivo. Estes subsistemas do SFMA so integrados tanto
do ponto de vista lgico como fsico. No presente caso, o processo produtivo global considerado para a
montagem de um produto que pode ser de 3 tipos:

base prata com pino preto, mola e tampa;

base preta com pino prata, mola e tampa; e

base rosa com pino preto, mola e tampa.

A Figura 6.1 mostra uma foto das bases, pinos, mola e tampa.

6.1 Sistema exvel de montagem automatizada (SFMA)


Cada subsistema do SFMA deve realizar suas atividades de modo a atender a solicitao do cliente por
um produto especco. Os subsistemas que compem o SFMA so: o subsistema de alimentao, de
inspeo, de montagem e de transporte. A Figura 6.2 ilustra o SFMA e seus subsistemas. Nas prximas
subsees, os subsistemas so detalhados.

Figura 6.1: Foto da base nas trs cores (prata, preta e rosa), do pino nas duas cores (preta e cinza), mola
e tampa (azul).

34
Figura 6.2: Subsistemas do SFMA.

6.2 Subsistema de alimentao


O subsistema de alimentao do SFMA emula uma instalao que prov matria prima para outros
sistemas produtivos (SPs). Essa matria prima deve ser retirada do seu estoque e transportada para
outras instalaes e a funo deste subsistema de alimentao armazenar de forma otimizada e conservar
as matrias primas, alm da retirada dessas do estoque.
No subsistema de alimentao do SFMA, a matria prima armazenada a base que pode ser de vrios
tipos, de acordo com as cores e dimenses. O armazenamento das bases feito em um buer na forma
de la em que o subsistema de alimentao no capaz de identicar a cor nem as dimenses das bases.
Um pisto pneumtico acionado para retirar a base do buer quando o subsistema de alimentao
recebe a requisio de nova base. Aps completar a remoo da base, um brao pneumtico remove a
base (prendendo-a por suco) deste subsistema e a transporta para outro subsistema.
No caso do subsistema de alimentao, os atuadores presentes so o pisto e o brao pneumticos.
H apenas um sensor, do tipo capacitivo, neste subsistema para detectar a presena de bases no buer.
Esses elementos podem ser vistos na Figura 6.3 que mostra uma representao esquemtica da planta do
subsistema de alimentao.

Figura 6.3: Representao esquemtica do subsistema de alimentao do SFMA

6.3 Subsistema de inspeo


O subsistema de inspeo do SFMA emula uma instalao que mede e qualica a base a ser usada em
outros SPs. A base tem que atender as especicaes dos clientes que solicitam o produto nal.
No subsistema de inspeo do SFMA, so avaliadas a cor e a altura da base que chega. Inicialmente,
a base trazida pelo brao pneumtico (ou outro meio de transporte) para a bancada de inspeo, que
o local onde esto todos os dispositivos de inspeo. Ento, feita uma inspeo de cor que utiliza
para isso a informao de 3 sensores: um capacitivo, um indutivo e um ptico. O sensor capacitivo
identica a presena de uma base na bancada de inspeo. O sensor indutivo identica se uma base
na bancada de inspeo possui metais em sua composio (inclusive acabamentos metlicos). O sensor
ptico identica se uma base possui cor (diferenciando apenas as bases coloridas das peas sem cor). A

35
bancada de inspeo possui ainda uma plataforma que eleva a base at um sensor piezoeltrico capaz
de medir a altura da pea. Aps essas medies, o sistema de inspeo determina se a base atende aos
requisitos do pedido. Caso estes no estejam atendidos a base empurrada por um pisto pneumtico
para um buer chamado de lixo e caso as especicaes estejam atendidas a base empurrada para
uma rampa que coloca a base num pallet (do sistema de transporte) e que leva a outro subsistema do
SFMA.
No caso do subsistema de inspeo, os atuadores presentes so o pisto pneumtico e a plataforma
mvel (de elevao). Quatro sensores compem o sistema, um capacitivo, um indutivo, um ptico e um
piezoeltrico. A Figura 6.4 mostra uma foto dos subsistemas de alimentao e inspeo, alm de uma
representao esquemtica da planta do subsistema de inspeo.

Figura 6.4: Foto dos subsistemas de alimentao e de inspeo; e a representao esquemtica do subsis-
tema de inspeo do SFMA

6.4 Subsistema de montagem


O subsistema de montagem do SFMA emula uma instalao que fabrica um produto a partir das matrias
primas recebidas. Num subsistema como o de montagem existem equipamentos e manipuladores que
permitem manusear, encaixar, posicionar e outras funes que alteram os estados das matrias primas
inicialmente recebidas.
No subsistema de montagem do SFMA, o manipulador um brao robtico com 3 juntas prismticas
(ou rob cartesiano) acionadas por motor eltrico e o end-eector, isto a ferramenta-garra tem uma
vlvula pneumtica para a sua abertura e fechamento. O rob cartesiano inicialmente retira a base que
est num pallet e a coloca em uma bancada que possui um mecanismo para prend-la e impedir qualquer
movimentao da mesma. Neste subsistema tem-se um buer de outra matria prima, isto , a mola.
Neste buer existe tambm um dispositivo acionado por um pisto pneumtico para retirar uma mola
do buer e o posicion-lo para ser retirada pelo rob. A mola retirada pelo rob e levada colocada
dentro da base. Neste subsistema tem-se ainda dois buers de pinos, um para cada cor. A cor do pino
escolhida de acordo com a cor da base em que ele ser acoplado. Um atuador pneumtico de rotao
remove o pino escolhido do buer e posiciona-o para retirada pelo rob. O rob cartesiano ento retira
o pino e o coloca sobre a mola dentro da base. Por m, um pisto pneumtico remove uma tampa de
um buer de tampas. As tampas so iguais para qualquer pea e o rob cartesiano retira a tampa e a
coloca de forma alinhada com o pino e com a mola, para que os elementos se encaixem perfeitamente. A
ferramenta-garra do rob cartesiano ento gira a tampa para fechar o produto nal. O rob remove da
bancada o produto nal e posiciona-o sobre o pallet que vai retir-lo do subsistema de montagem.
No subsistema de montagem, tem-se um sensor capacitivo na bancada, para detectar a presena de
pea. Os atuadores so os trs motores que acionam o rob cartesiano, a vlvula pneumtica de abertura
e fechamento da ferramenta, os dois pistes pneumticos que removem a mola e a tampa de seus buers e
o atuador pneumtico de rotao, que retira o pino de um dos buers. A Figura 6.5 mostra uma foto do
subsistema de montagem, alm de uma representao esquemtica da planta do subsistema de montagem.

6.5 Subsistema de transporte


O subsistema de transporte do SFMA emula um SP que realiza servios de transporte de matrias primas
ou produtos. Sistemas com essas caractersticas necessitam de veculos especializados para cada tipo de

36
Figura 6.5: Foto do subsistema de montagem; e a representao esquemtica do subsistema de montagem
do SFMA

material a ser transportado. SPs que fornecem esse tipo de servio devem se preocupar com especicaes
como o tempo de transporte, dimenses e caractersticas do material a ser transportado, a segurana que
precisa ser considerada para evitar riscos de contaminao, exploso e outros e com a qualidade no
manuseio para evitar danos ao material transportado.
No subsistema de transporte do SFMA, os veculos de transporte so pallets que cam em contato com
esteiras que se mantm em constante movimento. A parada do pallet num certo local feita por pistes
eltricos colocados nos pontos de parada do subsistema de transporte. Estes pistes impedem sicamente
o movimento dos pallets de acordo com sua posio: aberto ou fechado. O transporte feito entre as
estaes que esto associadas aos subsistemas anteriormente citados e outros associadas a sistemas para
a retirada do produto nal e de armazenagem de pallets.
Em todo o subsistema da transporte do SFMA, h sensores capacitivos que indicam a presena dos
pallets em cada estao. Os atuadores presentes nesse subsistema so pistes eltricos que param os
pallets em cada estao em duas possveis posies: na la de entrada da estao e na rea de trabalho
da estao. A Figura 6.6 mostra uma foto do subsistema de transporte, alm de uma representao
esquemtica da planta do subsistema de transporte.

Figura 6.6: Foto do subsistema de transporte; e a representao esquemtica de uma estao do subsis-
tema de transporte do SFMA

6.6 Atividade a ser realizada


Para esse exerccio, considera-se que, aps o pedido feito pelo cliente, o subsistema de alimentao prov
uma base para o sistema. Essa base levada pelo brao pneumtico do subsistema de alimentao para a
plataforma do subsistema de inspeo. No subsistema de inspeo identicada a cor da base, de acordo
com a Tabela 6.1 de sinais dos sensores por cores da base, e s depois medida a altura da respectiva
base. Caso a altura da pea seja adequada, a base aguarda um pallet (do subsistema de transporte) na
estao, caso contrrio jogada no lixo. Da estao referente ao subsistema de inspeo, o pallet vai
para a estao referente ao subsistema de montagem. Neste caso, pode haver las de pallets esperando
para entrar na estao e isso tambm deve ser modelado, ou seja, deve-se manter a ordem dos pallets
com bases que saram da estao referente ao subsistema de inspeo e que entram posteriormente na
estao referente ao subsistema de montagem. Aps a montagem de acordo com o procedimento devido e

37
de acordo com a Tabela 6.2, o produto nal deve sair do subsistema de montagem por meio de um pallet
que deve ir at a estao onde o produto nal encaminhado para um buer de produtos nais. Este
pallet ca ento liberado para outros servios. Os tempos em cada processo esto descritos na Tabela
6.3.
O aluno deve inicialmente desenvolver o PFS geral do processo produtivo global. Depois deve detalhar
as atividades de cada um dos subsistemas ainda com o PFS. A seguir, deve-se detalhar estes PFS em
rede de Petri usando o PIPE. Vericar as propriedades de cada uma das RdP geradas.

Tabela 6.1: Sinais de sensores por cor da base


Sensor indutivo Sensor ptico Cor da base

0 0 Preto
0 1 Rosa
1 1 Prata

Tabela 6.2: Cor do pino de acordo com as cores da base


Cor do pino Cor da base

Prata Preto
Rosa
Preto
Prata

Tabela 6.3: Tempos associados s principais atividades do processo produtivo


Processo Tempo

Retirada e posicionamento de elementos/matrias primas (bases, pinos, molas tampas) 1


dos buers nos subsistemas
Movimento do do brao do subsistema de alimentao para o de inspeo (transporte da 1
base para o subsistema de inspeo)
Inspeo de cor no subsistema de inspeo 2
Inspeo de altura no subsistema de inspeo 1
Remoo da base para o lixo no subsistema de inspeo 1
Carregamento da base no subsistema de inspeo para o pallet do subsistema de transporte 1
Movimentao do pallet entre estaes 5
Descarregamento (pelo rob) da base que est no pallet para o subsistema de montagem 1
Fixao da base na bancada do subsistema de montagem 1
Montagem (pelo rob) da mola na base que est na bancada do subsistema de montagem 3
Montagem (pelo rob) do pino na base que est na bancada do subsistema de montagem 10
Montagem (pelo rob) da tampa na base que est na bancada do subsistema de montagem 8
Carregamento do produto nal (base com mola, pino e tampa devidamente montados) 2
para o o pallet do subsistema de transporte
Descarregamento do produto nal montado do pallet para o buer de armazenagem 1

38
Referncias Bibliogrcas
N. R. Adam, V. Atluri, and W.K. Huang. Modeling and analysis of workows using Petri nets. Journal
of Intelligent Information System, 10(2):131158, 1998.
N. Akharware. PIPE2: Platform independent Petri net editor. Technical report, Department of Compu-
ting - Imperial College London, 2005.

T. Barnwell, M. Camacho, M. Cook, M. Gready, P. Kyme, and M. Tsouchlaris. Final report - Petri net
analyser - group 4. Technical report, Department of Computing - Imperial College London, 2004.

F. Bause and P. S. Kritzinger. Stochastic Petri Nets - An Introduction to the Theory. Universitat
Dortmund, 2002.

P. Bonet, C.M. Llad, R. Puigjaner, and W.J. Knottenbelt. PIPE2.5: a Petri net tool for performance
modeling. Technical report, Department of Computing - Imperial College London, 2007.

W. Brauer and W. Reisig. Carl Adam Petri and "Petri nets". Informatik-Spektrum, 29:369381, 2006.
E. Chung, T. Kimber, B. Kirby, T. Master, and M. Worthington. Petri nets group project - nal report.
Technical report, Department of Computing - Imperial College London, 2007.

E.W. Dijkstra. Hierarchical ordering of sequential processes. Acta Informatica, 1:115138, 1971.
J. I. Garcia Melo, R. A. G. Morales, and P. E. Miyagi. Supervisory system for hybrid productive
systems based on Bayesian networks and OO-DPT nets. In IEEE International Conference on Emerging
Technologies and Factory Automation, ETFA, pages 11081111, 2008.
R. Hamadi and B. Benatallah. A Petri net-based model for web service composition. In Proceedings of
the 14th Australasian Database Conference, pages 191200. Australian Computer Society, 2003.
P. J. Kaneshiro, J. I. Garcia Melo, P. E. Miyagi, and C. E. Cugnasca. Modeling of collision resolu-
tion algorithm in Lonworks networks. In Proceedings of ASME International Mechanical Engineering
Congress and Exposition, pages 743749. ASME, 2008.
B. Kiepuszewski, A.H.M. ter Hofsted, and W.P.M. van der Aalst. Fundamentals of control ow in
workows. Acta Informatica, 39(3):143209, 2003.
J.S. Lee, M.C. Zhou, and P.L. Hsu. An application of Petri nets to supervisory control for human-
computer interactive systems. IEEE Transactions on Industrial Electronics, 52(5):12201226, 2005.
P. E Miyagi. Controle Programvel - Fundamentos do Controle de Sistemas a Eventos Discretos. Editora
Edgard Blcher, 1996.

R. A. G. Morales, J. I. Garcia Melo, and P. E. Miyagi. Diagnosis and treatment of faults in productive
systems based on Bayesian networks and Petri net. In IEEE International Conference on Automation
Science and Engineering, CASE, pages 357362, 2007.
L. M. Mourelle. Controle de processos por computador - redes de Petri. Technical report, Universidade
do Estado do Rio de Janeiro - Faculdade de Engenharia - Departamento de Engenharia de Sistemas e
Computao, 2009.

T. Murata. Petri nets: Properties, analysis and applications. Proceedings of IEEE, 77(4):541580, 1989.

39
M. G. V. Nassar, J. I. Garcia Melo, P. E. Miyagi, and D. J. Santos Filho. Modeling and analysing of the
material entry ow system in a pickling line process using Petri nets. In ABCM Symposium Series in
Mechatronics, pages 444453, 2008.
T. Yoo, B. Jeong, and H. Cho. A Petri nets based functional validation for services composition. Expert
Systems with Applications, 37:37683776, 2010.
R. Zurawski and M.C. Zhou. Petri nets and industrial applications: A tutorial. IEEE Transactions on
Industrial Eletronics, 41(6):567583, 1994.

40

Вам также может понравиться