Escolar Documentos
Profissional Documentos
Cultura Documentos
224 PDF
224 PDF
MONTES CLAROS
2006
CAETANO PEREZ CREPALDI
MONTES CLAROS
2006
CAETANO PEREZ CREPALDI
__________________________________
Prof. Msc. Clarimundo M. Moraes Júnior
Orientador
Departamento de Ciências da Computação
Universidade Estadual de Montes Claros
__________________________________
Prof. Msc. José Expedito de Freitas
Departamento de Ciências da Computação
Universidade Estadual de Montes Claros
__________________________________
Profª Msc. Marileé Patta e Silva
Departamento de Ciências da Computação
Universidade Estadual de Montes Claros
MONTES CLAROS
2006
Dedico à minha mãe, Suely, e à minha
namorada Isabela, sem as quais seria
impossível concluir este trabalho.
AGRADECIMENTOS
1. INTRODUÇÃO .................................................................................... 14
2. REDES DE PETRI............................................................................... 17
2.1. APRESENTAÇÃO......................................................................... 17
2.1.1. Elementos de uma RdP......................................................... 17
2.1.2. Evolução da Rede ................................................................. 17
2.2. CONCEITOS: FORMAL E GRÁFICO............................................ 20
2.2.1. Definição Formal ................................................................... 20
2.2.2. Rede Marcada........................................................................ 21
2.3. REPRESENTAÇÃO GRÁFICA...................................................... 22
2.4. REPRESENTAÇÃO MATRICIAL .................................................. 23
2.5. DEFINIÇÕES E REGRAS DE DISPARO ...................................... 24
2.5.1. RdP Pura ................................................................................ 24
2.5.2. Transição Sensibilizada........................................................ 25
2.5.3. Disparo de uma Transição.................................................... 26
2.5.4. Conflito e Paralelismo........................................................... 27
2.5.5. Seqüência de Disparo ........................................................... 28
2.5.6. Marcações Alcançáveis ........................................................ 29
2.6. PROPRIEDADES.......................................................................... 31
2.6.1. Propriedades Comportamentais .......................................... 31
2.6.2. Propriedades Estruturais...................................................... 33
2.7. INVARIANTES E COMPONENTES .............................................. 34
2.7.1. Invariantes de Lugar e Componentes Conservativos ........ 35
2.7.2. Invariantes de Transição e Componentes Repetitivos....... 35
2.8. TÉCNICAS DE ANÁLISE .............................................................. 35
2.8.1. Análise por Enumeração das Marcações ............................ 36
2.8.1.1. Árvore de Cobertura ......................................................... 36
2.8.1.2. Análise Através do Grafo.................................................. 37
2.8.2. Análise Estrutural.................................................................. 38
2.8.3. Análise por Redução............................................................. 38
2.8.3.1. Técnicas de Redução....................................................... 39
2.9. ASPECTOS DA MODELAGEM..................................................... 41
4.1. O SISTEMA................................................................................... 51
4.1.1. Definições .............................................................................. 51
4.1.2. Características e Funcionamento dos Componentes ........ 53
4.2. MODELAGEM ............................................................................... 54
4.2.1. Diagrama de Implantação ..................................................... 54
4.2.2. Diagrama de Estado .............................................................. 55
4.2.3. RdP......................................................................................... 56
4.2.3.1. Condições e Ações ........................................................... 56
4.2.3.2. Relações ........................................................................... 57
4.2.3.3. Representação Gráfica ..................................................... 58
4.2.3.4. Evolução da Rede............................................................. 59
5. CONCLUSÕES ................................................................................... 62
1. INTRODUÇÃO
Mesmo sendo a representação gráfica uma vantagem das RdP, a característica mais
relevante do modelo é o formalismo. Este aspecto garante uma grande vantagem
sobre os outros modelos, pois, é possível obter informações precisas sobre o
comportamento do sistema modelado através da análise de suas propriedades
(CARDOSO; VALLETE, 1997).
Além das RdP Temporizadas podemos citar outros modelos desenvolvidos a partir
do modelo original como as RdP Coloridas, RdP Hierárquicas, Rdp Generalizadas,
RdP com Capacidade Finita, RdP Contínuas e as RdP Estocásticas.
Para elaboração deste trabalho foi realizado primeiramente um estudo com base em
pesquisa bibliográfica e documental, foram utilizados como fonte de pesquisa livros,
artigos, dissertações de mestrado e teses de doutorado bem como materiais
16
O capítulo 4 apresenta um estudo de caso com a aplicação das Redes de Petri para
modelagem e análise de um sistema computacional, tomando como exemplo uma
simplificação de um sistema Cliente/Servidor.
2. REDES DE PETRI
2.1. APRESENTAÇÃO
Uma RdP é composta por quatro elementos, são eles: os lugares, que representam
uma condição, uma atividade, um estado parcial, uma posição geográfica ou um
recurso; as fichas, que indicam quando a condição associada ao lugar é verdadeira;
as transições, que representam um evento que ocorre no sistema e; os arcos, que
indicam os lugares de entrada ou saída para as transições, são representados
graficamente por um círculo, por um ponto no lugar, por um retângulo e por ligações
orientadas entre um lugar e uma transição, respectivamente (PENHA et al, 2004)
(CARDOSO; VALLETE, 1997).
Barros (1996) salienta que as transições são responsáveis por colocar ou retirar as
fichas dos lugares, ou seja, fazer com que o sistema passe do estado atual para o
próximo, e que os arcos ligados a cada transição indicam sobre qual lugar esta atua.
Um arco com origem em um lugar e término em uma transição (arco de entrada)
indica que a transição retira, quando ocorre o evento associado àquela transição
18
(disparo da transição), uma ficha desse lugar. E da mesma forma, um arco com
origem numa transição e fim num lugar (arco de saída), indica que a transição
coloca, quando do seu disparo, uma ficha nesse lugar. Enfim, os arcos demonstram
o sentido em que as fichas se deslocam de um lugar a outro, sempre passando por
uma transição.
Figura 2.3: RdP – Peso Associado aos Arcos (1) / PENHA et al, 2004
Figura 2.4: RdP – Peso Associado aos Arcos (2) / PENHA et al, 2004
Onde:
• mj = é o número de fichas do lugar pj.
22
Sendo:
• M(p1) = 0
• M(p2) = 0
• M(p3) = 1
Uma RdP pode ser vista como um grafo com dois tipos de nós: nós lugares e nós
transições; e orientado, definido por R = (P, T, Pré, Pós, M0), onde P é um conjunto
de lugares representado por círculos, T é um conjunto de transições representado
por barras, Pré é a relação de precedência aplicada sobre PxT, Pós é a relação de
poscedência aplicada sobre TxP, e M representa a marcação dos lugares através de
fichas (pontos pretos) no interior de cada lugar.
• Pré (pi, tj) > 0 Se existe um arco ligando o lugar pi a transição tj;
• Pré (pi, tj) = 0 Se não existe um arco ligando o lugar pi a transição tj;
23
• Pós (pj, ti) > 0 Se existe um arco da transição ti para o lugar pj;
• Pós (pj, ti) = 0 Se não existe um arco da transição ti para o lugar pj.
∀p ∈ P ∀t ∈ T Pré(p, t) Pós(p, t) = 0,
isto é, nenhuma transição possui, ao mesmo tempo, um mesmo lugar como saída e
como entrada. A figura 2.8 mostra um exemplo de RdP Pura e outro de uma RdP
Impura:
25
T
Para a marcação inicial M0 = [ 1 2 0 1 0] da figura 2.7, a transição t1 está
sensibilizada e a transição t2 não está sensibilizada pois:
• Para t1:
• M(p1) = 1;
• Pré(p1, t1) = 1;
• Pós(p1, t1) = 0.
Têm-se então:
M’(p1) = 1 - 1 + 0.
M’(p1) = 0.
s = t1 t2 t3 ... tn.
Mo M2.
Para a figura 2.10 tem-se a seguinte seqüência de disparo s = t1 t2 t3, um tiro nesta
seqüência leva, da marcação inicial M0 = [ 1 0 0] T, à mesma marcação M0:
29
M’ = M - Pré.S + Pós.S,
O conjunto das marcações que podem ser alcançadas através de uma seqüência de
disparo “s” a partir de uma marcação inicial é denominado de marcações
alcançáveis de uma RdP e é denotado por A(R, M):
Este conjunto pode ser representado na forma de um grafo denotado por GA(R, M).
Se existe uma transição t sensibilizada que permite evoluir de uma marcação Mi a
uma marcação Mj então, um arco orientado, etiquetado pela transição t, liga dois nós
deste grafo: Mi e Mj.
Mi Mj.
Através deste grafo é possível extrair quantos estados e marcações podem ser
alcançados em uma RdP e, permite definir que tipo de notação pode ser utilizada
para cada uma dessas marcações. As marcações são representadas por nós e os
disparos das transições por arcos, sendo a marcação inicial o nó raiz (PALOMINO,
2001).
A figura 2.11 mostra o grafo GA(R, M) para a RdP representada na figura 2.10:
Para este exemplo, a RdP possui um conjunto de marcações alcançáveis finito com
três marcações: (M0, M1, M2).
31
2.6. PROPRIEDADES
• Alcançabilidade
Se existir uma seqüência de disparos “s” que leve a uma marcação M’ a partir da
marcação inicial M0 então esta é uma marcação alcançável. Se todas as
marcações alcançáveis forem atingidas a partir da marcação inicial a RdP é dita
alcançável.
• Limitação
Considerando um número inteiro k qualquer, uma RdP é limitada se em cada um
dos lugares da rede a quantidade de fichas não ultrapassar o valor de k. Então, a
rede é dita k-limitada.
32
• Segurança
Esta propriedade complementa a propriedade Limitação. Uma RdP é dita segura
se para todas as marcações alcançáveis todos os lugares da rede possuírem no
máximo uma ficha cada um.
• Vivacidade
Indica que é possível disparar todas as transições a partir de qualquer uma das
marcações alcançável da rede. Isto é, indica a inexistência de transições mortas
e, conseqüentemente, que a RdP está livre de impasses (deadlocks). Porém, a
verificação irrestrita desta propriedade torna-se muito cara por isso, pode-se
adotar níveis para verificação da vivacidade em uma rede (MARRANGHELLO,
2005):
- Transição Viva Nível 4 (N4): Pode ser disparada ao menos uma vez,
em pelo menos uma seqüência de disparos, a partir de cada marcação
alcançável. É o nível mais restrito;
- Transição Viva Nível 2 (N2): Pode ser disparada k vezes, para um k >
1, em uma seqüência de disparos a partir da marcação inicial;
• Cobertura
Indica que para toda marcação M’, alcançável a partir da marcação inicial,
existe outra marcação M’’, com o número de fichas em cada lugar maior ou
igual ao lugar correspondente em M’’, alcançável a partir de M’.
• Persistência
Indica que, havendo mais de uma transição sensibilizada, o disparo de uma
não impede o disparo das outras.
• Reiniciabilidade
Uma RdP é dita reiniciável se, a partir de qualquer marcação acessível M’
pertencente à GA(R; M) existir uma seqüência de disparo “s” que possibilite à
rede retornar à sua marcação inicial M0.
• Justiça
Uma RdP é justa se, para duas transições quaisquer, o número de vezes que
uma é executada é finito em relação às vezes que a outra não é.
• Limitação
Se uma RdP é limitada estruturalmente para qualquer marcação inicial.
• Conservação
Indica que o número total de marcas na RdP não se modifica de acordo com
a evolução da rede, isto é, para todas as marcações alcançáveis a partir da
marcação inicial este número permanece constante.
• Repetitividade
Se existe uma seqüência de disparos, para qualquer marcação alcançável,
em que todas as transições são disparadas infinitas vezes então, a RdP é
repetitiva. Se apenas algumas transições, em determinada seqüência de
disparos, são disparadas infinitas vezes então a RdP é parcialmente
repetitiva.
• Consistência
Uma RdP é consistente se ao executar uma seqüência de disparos “s” , a
partir de uma marcação inicial M0, for possível retornar a esta marcação
disparando pelo menos uma vez cada transição da rede.
Quando, em uma RdP qualquer, a partir da marcação inicial M0, é verificada que,
para toda marcação pertencente ao conjunto de marcações acessíveis, a soma de
M(pi) com M(pj) seja igual a soma de M0(pi) com M(pj). Isto é, ao ser disparada uma
transição t, tendo como entrada o lugar pi e saída o lugar pj, a quantidade de fichas
nesses lugares não se altera.
A forma linear M(pi) + M(pj) = M0(pi) + M(pj) é chamada de invariante linear de lugar,
e o conjunto desses lugares forma um componente conservativo da rede
(CARDOSO; VALLETE, 1997).
Uma seqüência de disparos s qualquer que, após sua execução, não modifica a
marcação da rede é chamada de invariante de transição e corresponde a uma
seqüência cíclica.
Este método serve apenas para uma determinada marcação inicial, portanto, para
outra marcação inicial em uma mesma RdP é necessário a construção de um novo
grafo.
Este algoritmo cria um novo ramo para cada transição sensibilizada através da
marcação inicial. As marcações obtidas com esses disparos são calculadas dando
inicio a um novo processo para cada uma dessas marcações.
37
Caso seja encontrada, na construção de um novo ramo, uma marcação igual a outra
já calculada e para a qual todos os ramos sucessores já foram ou serão calculados,
o processo é então interrompido. O mesmo acontece se for encontrada uma
marcação estritamente superior a uma marcação do ramo que está sendo explorado,
neste é interrompida, também, a exploração da árvore, pois a rede pode não ser
limitada.
b) Sempre que existir uma marcação (nó do grafo) qualquer que não sensibilize
nenhuma transição (nó terminal), é sinal que após vários disparos de
transições a rede não evoluirá mais, entrando em deadlock;
38
Ainda em Palomino (2001) é definido que este tipo de análise utiliza a matriz de
incidência das RdP, vista no item 2.4, para verificação das propriedades estáticas da
rede e é restrita às RdP puras.
a) Uma RdP é limitada, se para todos os lugares da rede, estes lugares fazem
parte de um algum invariante de lugar;
Marranghello (2005, p. 16) ainda afirma que “os métodos de redução não permitem
por si só, a análise das propriedades da rede. Eles são transformações aplicadas a
determinada rede para simplificá-la”. Após alcançar uma rede mais simplificada,
através da técnica de redução, é necessário aplicar à rede uma das técnicas vistas
anteriormente como a análise por enumeração das marcações ou a análise
estrutural.
41
3.1. INTRODUÇÃO
Ainda exposto por Barros (1996, p. 39) que “o modelo original da RdP falha na
representação de duas importantes características: aspectos funcionais complexos,
tais como condições que determinam o fluxo de controle, e os aspectos de
temporização”.
3.2. ABREVIAÇÕES
É uma RdP onde pesos, inteiros positivos, são associados aos arcos. Ou seja, para
um arco, com peso igual a três, que liga um lugar p a uma transição t significa que: o
disparo de t só pode ocorrer se p possuir no mínimo três fichas, então são retiradas
as três fichas de p.
A figura 3.1 mostra um exemplo de RdP Generalizada, onde o arco p1 t1 tem peso
igual a três e o arco t1 p2 tem peso igual a um (quando o peso for igual o mesmo é
omitido). A transição t1 está sensibilizada pois, a lugar p1 possui exatamente o
número de fichas necessárias para dispará-la (três). Quando do disparo de t1 as três
fichas serão retiradas de p1 e será colocada apenas uma ficha em p2.
Sua principal característica é a limitação de fichas por lugar, isso é, a cada lugar é
associado um valor correspondente à quantidade de fichas que possam estar
presentes dentro do lugar.
3.3. EXTENSÕES
As RdP com arcos inibidores, também chamadas de RdP Estendidas, foi criada para
dar solução ao problema de priorização, encontrado quando duas transições estão
em conflito.
Diferencia-se da RdP Ordinárias pelo tipo de marcação, que passa a ser feita com
números reais positivos e não mais por números inteiros positivos. Os disparos das
transições ocorrem de forma contínua e para diferenciá-la mais facilmente das RdP
Ordinárias, normalmente, os lugares são representados por dois círculos. Já as
transições e os arcos mantêm suas respectivas representações.
São utilizadas em sistemas cuja modelagem não pode ser realizada com RdP
Ordinária ou quando o número de marcações de uma RdP Ordinária se torna
extremamente alto (PALOMINO, 1995).
Em uma das RdP apresentadas até agora possível saber qual transição será
disparada pelo simples fato de estar sensibilizada ou não mas não se sabe quando
isso irá ocorrer. Nas RdP Sincronizadas são associados às transições eventos
externos, que habilitam o disparo de uma transição, desde que esta esteja
sensibilizada pela fichas. A figura 3.3 mostra um exemplo de modelagem com RdP
Sincronizada.
Porém, Cardoso e Vallete (1997, p. 147) afirmam que “esta associação de tempo à
transição só tem sentido se a transição é interpretada como uma atividade e não
como um evento instantâneo”, já que existe um retardo no disparo da transição.
A figura 3.4 mostra a substituição de uma transição por uma seqüência transição-
lugar-transição. Neste exemplo a transição t’1 corresponde ao início da atividade, o
48
lugar p’ a atividade sendo executada, com duração igual a Tempo, e a transição t’’1
o fim da atividade.
Sendo p1 a atividade com duração igual a Tempo então, p’1 é a atividade sendo
executada, t’ é a indicação de que Tempo chegou ao fim e p’’1 a eventual espera
para outras atividades (CARDOSO; VALLETE, 1997).
É associado a cada transição um intervalo de tempo (tempo min, tempo max). Diferente
do que ocorre nas RdP T-Temporizadas, o disparo da transição é instantâneo mas,
para se concretizar, a transição deve estar sensibilizada por um período de no
mínimo igual a tempo min, e no máximo igual a tempo Max.
50
A figura 3.6 mostra o exemplo apresentado na figura 3.3, agora utilizando o modelo
de RdP Temporal. Neste exemplo uma impressora mantém seu status como “livre”
(lugar p1) por um período de 10 segundos ou até algum documento ser enviado para
impressão (entre 0 e 10 segundos). Havendo ou não solicitação de impressão, a
impressora muda seu status para “ocupada” (lugar p2) e o mantém por 10 segundos
(tempo médio de impressão), voltando logo após este período ao status de “livre” e
recomeçando o processo.
4.1. O SISTEMA
4.1.1. Definições
As saídas analógicas e digitais podem ser manipuladas pelo usuário via teclado, que
terá as seguintes opções: incrementar e decrementar cada saída analógica e setar e
ressetar cada saída digital. Os valores, para cada entrada e saída, analógica e
digital, são mostrados na tela do CLP a cada 1 segundo.
4.2. MODELAGEM
Foi escolhido para exemplificação o diagrama de estado devido sua linguagem ser
muito semelhante às RdP. Isso possibilitará uma comparação entre os dois tipos de
modelagem.
Através da figura 4.4 acima é possível concluir que o diagrama de estado é bastante
eficiente na representação dos estados do sistema, contudo, apenas em seu o
aspecto estático sem considerar a dinâmica do sistema.
4.2.3. RdP
CLP
CONDIÇÕES
P1 = PARADO
P2 = EXECUTANDO
P3 = DADOS LIVRES
P4 = LENDO DADOS E EXIBINDO NO MONITOR
P5 = ENVIANDO DADOS AO SERVIDOR
P6 = ALTERANDO DADOS ANALÓGICOS/DIGITAIS
AÇÕES
T1 = INICIAR
T2 = FINALIZAR
T3 = LER DADOS
T4 = ENVIAR DADOS AO SERVIDOR
T5 = ENCERRAR LEITURA E LIBERAR DADOS
T6 = ALTERAR DADOS
T7 = ENCERRAR ESCRITA E LIBERAR DADOS
Tabela 4.1: Condições e Ações do CLP
4.2.3.2. Relações
T1 T2 T3 T4 T5 T6 T7
P1 1 0 0 0 0 0 0
P2 0 1 0 0 0 0 0
P3 0 1 1 0 0 1 0
P4 0 0 0 1 0 0 0
P5 0 0 0 0 1 0 0
P6 0 0 0 0 0 0 1
Tabela 4.2: CLP - Matriz Pré
A tabela 4.3 mostra a relação das transições com seus respectivos lugares de saída
do componente CLP, definida anteriormente como matriz de saída Pós:
58
T1 T2 T3 T4 T5 T6 T7
P1 0 1 0 0 0 0 0
P2 1 0 0 0 0 0 0
P3 1 0 0 0 1 0 1
P4 0 0 1 0 0 0 0
P5 0 0 0 1 0 0 0
P6 0 0 0 0 0 1 0
Tabela 4.3: CLP - Matriz Pós
Um das principais vantagens das RdP é a sua representação gráfica pois, possibilita
uma análise visual simples dos estados do sistema quanto à sua dinâmica, ou seja,
é possível acompanhar a evolução do sistema através do modelo.
A figura 4.5 mostra a RdP do CLP para a marcação inicial M1 = [ 1, 0, 0, 0, 0, 0], esta
marcação indica que o sistema está parado e que, apenas a transição t1 está
sensibilizada:
5. CONCLUSÕES
A modelagem feita neste trabalho, apesar de não ter sido realizada para o sistema
todo, mostra a sua eficácia, principalmente no acompanhamento dinâmico do
subsistema escolhido. Vale ressaltar que o acompanhamento da dinâmica do
sistema através de um modelo compacto não é possível em boa parte das
ferramentas tradicionais.
REFERÊNCIA BIBLIOGRÁFICA