Académique Documents
Professionnel Documents
Culture Documents
Editor (PIPE)
Caio Cesar Fattori; Clia Hanako Kano, Fabrcio Junqueira, Paulo Eigi Miyagi
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
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
3.7 Equidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
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.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.
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:
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
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
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 ).
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.
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.
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.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 ).
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.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.
Save as (Crtl+Shift+S): Salvar o documento, com opo do local onde o arquivo deve ser salvo;
13
Figura 2.1: Problema Dining Philosophers de Dijkstra
14
Redo (Crtl+Y): Refazer a ao;
Drag (D): Arrasta um documento para visualizao (movimentao da barra de rolagem - scrollbar ).
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;
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.
16
Figura 2.3: Classicao de uma Rede de Petri
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.
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.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):
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
20
Figura 2.8: State Space Analysis - exemplo
21
Figura 2.10: Incidence & Marking - exemplo
22
Figura 2.12: GSPN Analysis - exemplo
23
Captulo 3
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.
24
Figura 3.2: Reachability Graph para vericao da Alcanabilidade
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
. . .
. . .
. . .
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
. . .
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
29
Captulo 4
Alcanabilidade
Limitabilidade e segurana
Vivacidade
30
Reversibilidade
Cobertura
Persistncia
Equidade
31
Captulo 5
Alcanabilidade
Limitabilidade e segurana
Vivacidade
32
Reversibilidade
Cobertura
Persistncia
Equidade
33
Captulo 6
A Figura 6.1 mostra uma foto das bases, pinos, mola e tampa.
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.
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
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
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.
0 0 Preto
0 1 Rosa
1 1 Prata
Prata Preto
Rosa
Preto
Prata
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