• Nenhum resultado encontrado

Controle supervisório de sistemas a eventos discretos, usando redes de Petri coloridas

N/A
N/A
Protected

Academic year: 2018

Share "Controle supervisório de sistemas a eventos discretos, usando redes de Petri coloridas"

Copied!
124
0
0

Texto

(1)
(2)

Dissertação de Mestrado apresentada ao PPGETI -Programa de Pós - Graduação em Engenharia de Teleinformática, da Universidade Federal do Ceará, como parte dos requisitos para obtenção do grau de Mestre em Engenharia de Teleinformática.

(3)

Esta Dissertação foi julgada adequada para a obtenção do título de Mestre em Engenharia de Teleinformática e aprovada em sua forma …nal pelo PPGETI -Programa de Pós-Graduação em Engenharia de Teleinformática da Universidade Federal do Ceará.

Aprovada em 09 de Agosto de 2011.

Banca Examinadora

Prof. Dr. Giovanni Cordeiro Barroso (Orientador) UFC - Universidade Federal do Ceará

Prof. Dr. José Tarcísio Costa Filho UFC - Universidade Federal do Ceará

Prof. Dr. Paulo Eigi Miyagi

EPUSP - Escola Politécnica da Universidade de São Paulo

Prof. Dr. José Renato de Brito Sousa

(4)

A Deus, autor e consumador da vida.

Ao meu orientador Prof. Dr. Giovanni Cordeiro Barroso, pela orientação efetiva, compreensão, incentivo e valiosa colaboração.

Ao Prof. Dr. Paulo Eigi Miyagi pelas correções e sugestões, em detalhes, apresentadas para esse trabalho.

Ao Prof. Dr. José Renato de Brito Sousa pelos apontamentos que muito contribuiram.

Ao Prof. Dr. José Tarcísio Costa Filho por valiosas críticas.

Aos Professores que desde o início desse projeto estiveram me ajudando a compor essa Dissertação.

Aos meus pais Francisco Ru…no de Menezes e Terezinha de Alencar Menezes, pelo esforço ao me mostrar o caminho da educação.

A minha esposa Paula e meus …lhos Luã, Levi e Larissa, por tudo que …zeram em meu favor, pela compreensão por tê-los privado da minha presença em vários momentos importantes de suas vidas e pela paciência nos dias difíceis provocados pelo trabalho constante.

Aos colegas de Mestrado e do COGEST pelo bom humor, ambiente de estudo e descontração.

A Universidade Estadual Vale do Acaraú pelo privilégio do crescimento acadêmico e pro…ssional.

(5)

A minha querida esposa, Paula Wanda

e meus …lhos, Luã,

Levi e

(6)
(7)

Esse trabalho propõe um novo método para síntese de supervisores em sistemas a eventos discretos, utilizando redes de Petri coloridas, baseado no contexto da teoria de controle supervisório. Como aspecto principal, tem-se a formalização teórica e a prova matemática do método para síntese desses supervisores, denominado Restrições de Controle sobre Cores Decompostas (RCCD). Além disso, como consequência, é apresentado um método para redução do número de lugares de controle denominadoFusão de Controladores (FC). Os métodos RCCD e FC são uma extensão do trabalho de Moody e Antsaklis, que propõem, originalmente, um Teorema comprovando a síntese de supervisores usando redes de Petri ordinárias e, dessa forma, são propostas aqui as extensões desse Teorema, para o contexto das redes de Petri coloridas. Nesse caso, explora-se a decomposição da matriz de incidência de uma rede de Petri colorida para de…nir lugares de controle que não são con‡itantes em suas ações, usando o soft CPNTools como ferramenta. A seguir, é realizada a fusão desses lugares de controle, obtidos com o RCCD, com a aplicação do método FC, em que o lugar de controle encontrado, denominado supervisor resultante da fusão, atende as mesmas restrições e contribui com a mesma performance de controle do sistema.

(8)

This work proposes a new method for synthesis of supervisors in discrete event systems using coloured Petri nets, based in the theory of supervisory control. As a main aspect, there is the theoretical and formal mathematical proof of the method for synthesis of supervisors, called Control Constraints on Decomposed Colors (CCDC). In addition, as a consequence, it is presented a method for reducing the number of control places called Fusion of Controllers (FC). The CCDC and FC methods are an extension of the work of Moody and Antsaklis, they propose, originally a theorem proving the synthesis of supervisors using Petri nets thus are proposed here extensions of this theorem to the context of coloured Petri nets. In this case, it is explored the decomposition of the incidence matrix of a coloured Petri net to de…ne control places that are not con‡icting in their actions, using the soft CPNTools. The following is realized the fusion of these control places obtained with CCDC, with the aplication of the FC method. The obtained place is called the resulting fusion supervisor, where it is found the same constraints and contributes with the same control system performance.

(9)

ADR Applied Data Research, Inc

COLSET Conjunto de cores

CPN Coloured Petri Nets

CPNTools Computer Tool for Coloured Petri Nets

DATA Conjunto de …chas associadas a dados do tipo string.

FC Fusão de Controladores

INT, INT1, INT2 Conjunto de …chas associadas a números inteiros. RCCD Restrições de Controle sobre Cores Decompostas

RP Rede de Petri

RPs Redes de Petri

RPC Rede de Petri Colorida

RPCs Redes de Petri Coloridas

RPFHT Rede de Petri Função de Habilitação de Transição. SDVCs Sistemas Dinâmicos de Variáveis Contínuas

SED Sistema a Eventos Discretos SEDs Sistemas a Eventos Discretos TCS Teoria de Controle Supervisório

(10)

t Tempo.

y(t) Vetor de saída em um sistema invariante no tempo.

v Vetor de entrada.

g(v) Transformação aplicada no vetor de entrada.

y(t ) Deslocamento temporal da saída.

u(t ) Deslocamento temporal da entrada.

c1;c2 Constantes.

Q Espaço ou conjunto de estados.

qn Estado n.

R Conjunto dos números reais. C Conjunto dos números complexos.

qn(t) Estado n em relação ao tempo t:

Q(t) Conjunto de estados em relação ao tempo t:

N Conjunto dos números naturais.

; ; ; Eventos em um sistema.

dq

dt Derivada de q em relação a t:

(q;t) Função de transição que associa um estado q ao tempot: Conjunto não-vazio de símbolos denominado alfabeto. jsj Comprimento de uma palavra s.

Palavra nula.

=

2 Não pertinência.

Conjunto de todas as palavras que são formadas com os símbolos.

+ Conjunto de todas as palavras excluindo a palavra nula.

(11)

Está contido ou é igual.

Lm Linguagem marcada.

Lm Pre…xo-fechamento da linguagem marcada. (q) Conjunto de eventos associados a estados.

n; sn Repetição do símbolo e da palavra s por n vezes.

; s Repetição do símbolo e da palavra s um número arbitrário de vezes, inclusivezero.

A Autômato.

Função de transição de estados.

q0 Estado inicial.

Qm Q Conjunto de estados marcados. Função de transição estendida.

Lm(A) Linguagem marcada do autômatoA. do autômatoA.

^ Condição aditiva "e".

G GeradorG.

L(G) Conjunto de palavras do geradorG.

L(G) Pre…xo-fechamento deL(G). Lm(G) Linguagem marcada do geradorG.

Ac(G) Gerador acessível.

Co(G) Gerador coacessível.

t Transição em uma rede de Petri.

m Número de transições.

p Lugar de uma rede de Petri.

N =hP; T; I; Oi Representação de uma rede de Petri.

P Conjunto de lugares.

(12)

O Função que especi…ca os arcos orientados das

transi-ções para os lugares.

I(pj; ti) Arco orientado de um lugarpj para uma transição ti.

O(pj; ti) Arco orientado de uma transiçãopj para um lugar ti.

M Marcação de uma rede de Petri.

M0 Marcação inicial de uma rede de Petri.

M(p) Marcação relativa ao lugar p.

M0 Marcação alcançável a partir de M.

C Matriz de incidência de uma rede de Petri. w Matriz que identi…ca as transições habilitadas.

v Vetor de inteiros positivos de dimensão n - p-invariante.

T Transposição de matriz.

kvk Conjunto de lugares correspondentes aos elementos não nulos em um p-invariante v>0.

c Vetor característico.

w Vetor de inteiros positivos de dimensão m -t-invariante. kwk Conjunto de transições correspondentes a elementos não

nulos em um t-invariante w>0.

P Conjunto …nito de lugares em uma RPC. T Conjunto …nito de transições em uma RPC. A Conjunto de arcos orientados em uma RPC..

S Conjuntos …nitos de cores não vazios em uma RPC. V Conjunto …nito de variáveis associadas aos conjuntos

de cores uma RPC.

Col Função que associa um conjunto de cores a lugares em uma RPC.

(13)

G(q) Conjunto ativo de eventos.

c Conjunto de eventos controláveis. u Conjunto de eventos não controláveis.

; Conjunto vazio.

S=G Sistema supervisionado.

L(S=G) Linguagem gerada pelo sistema supervisionado.

Lm(S=G) Linguagem marcada do sistema supervisionado.

Lm(S=G) Pre…xo-fechamento da linguagem marcada do sistema supervisionado.

K Subconjunto da linguagem marcada. K" Suprema sublinguagem controlável. Cont(E) Conjunto das linguagens controláveis. supCont(E) Suprema sublinguagem controlável em E. E0

Subconjunto da linguagem marcada.

z1; z2 Números inteiros.

b Matriz cujos elementos são os números de …chas com

restrições em uma RP.

Ms Variável associada a um inteiro positivo.

Cc Matriz de incidência do controlador.

L Matriz que indica os lugares com restrições em uma RP.

Mc0 Marcação inicial do controlador. D Matriz de incidência de uma RPC.

Dxn Parcela da matriz D decomposta, associada à variável xn.

C Matriz de referência de incidência em uma RPC.

Cxn Parcela da matriz C decomposta, associada à variável xn.

CC Matriz de incidência do supervisor numa RPC.

(14)

MC0 Marcação inicial do supervisor numa RPC.

B Matriz cujos elementos são as somas das …chas de restrições com as …chas complementares de ‡uxo.

18a

1” Uma …cha a1 do conjunto de cores do tipo string.

++ União de conjuntos de …chas em RPC. _ União de …chas em RPC.

M0 Marcação inicial do supervisor resultante de fusão.

D Matriz de incidência do supervisor resultante de fusão.

X

(15)

Abreviaturas e Siglas ix

Símbolos e Notações x

Lista de Figuras xviii

Lista de Tabelas xxi

1 Introdução 1

1.1 Motivação . . . 1

1.2 Objetivo . . . 2

1.3 Estrutura da Dissertação . . . 2

2 Conceitos Preliminares 4 2.1 Sistemas . . . 4

2.2 Sistemas a Eventos Discretos . . . 8

2.2.1 A Modelagem de SEDs . . . 10

2.3 Estrutura de Controle Supervisório em SEDs . . . 14

2.3.1 Síntese de Supervisores . . . 16

2.4 Linguagens Formais . . . 17

2.4.1 Linguagens Regulares . . . 19

2.5 Autômato . . . 20

2.6 Gerador . . . 23

(16)

3 Redes de Petri 26

3.1 Conceito . . . 28

3.2 Representação de Redes de Petri . . . 29

3.3 Propriedades das Redes de Petri . . . 35

3.3.1 Propriedades Comportamentais . . . 35

3.3.2 Propriedades Estruturais . . . 37

3.4 Redes de Petri Coloridas . . . 39

3.4.1 Associação de Cores às Fichas . . . 40

4 O Controle Supervisório 44 4.1 Teoria de Controle Supervisório . . . 44

4.2 Teoria de Controle Supervisório Utilizando Redes de Petri . . . . 51

4.2.1 Métodos de Síntese de Supervisores Utilizando Redes de Petri . . . 53

5 Síntese de Supervisores em SEDs Utilizando RPCs 61 5.1 O Método RCCD . . . 62

5.1.1 Contextos no RCCD . . . 67

5.2 Fusão de Controladores em RPCs . . . 75

5.2.1 Particularidade do Método FC . . . 82

6 Considerações Finais 85 Referências Bibliográ…cas 87 A Veri…cação dos Métodos RCCD e FC Observando Espaço de Estado Utilizando o CPNTools 2.2.0 93 A.1 Espaço de Estado do sistema associado à RPC não controlada na Figura 5.5 repetida na Figura A.1 . . . 93

(17)
(18)

2.1 Classi…cação dos sistemas. . . 6

2.2 Evolução de um sistema com variáveis discretas. . . 9

2.3 Evolução de um sistema com variáveis contínuas. . . 10

2.4 Arquitetura de controle de um SED. . . 15

2.5 Representação grá…ca de um autômato. . . 21

2.6 Componente ajustada (trim) de um gerador. . . 25

3.1 Topologias em redes de Petri - Relações de causalidade: (a) sequenciamento; (b) con‡ito; (c) concorrência; (d) sincronização; (e) junção; (f) confusão. . . 30

3.2 Exemplo de rede de Petri. . . 33

3.3 Rede de Petri com bloqueio. . . 36

3.4 Rede de Petri - Ilustração de alcançabilidade. . . 36

3.5 Rede de Petri viva, limitada e reversível. . . 37

3.6 Problema dos …lósofos modelado por uma rede de Petri. . . 42

3.7 Problema dos …lósofos modelado por uma rede de Petri colorida. . 42

4.1 Gerador representando uma máquina com três estados. . . 46

4.2 Gerador da Figura 4.1 com o evento desabilitado. . . 48

4.3 Controle supervisório em malha fechada. . . 48

4.4 Rede de Petri controlada. . . 54

4.5 Rede de Petri com livelock e deadlock. . . 56

(19)

4.6 Gerador da especi…cação c = ft4; t5g, nc = ft1; t2; t3; t6; t7g e

Qm =fq2g do sistema com livelock e deadlock. . . 56

4.7 Rede de Petri supervisora com função de habilitação de transição. 57 4.8 Rede de Petri não controlada de MOODY e ANTSAKLIS (1998). 59 4.9 Rede de Petri controlada pelo método dos invariantes de lugar de

MODODY e ANTSAKLIS (1998). . . 60

5.1 Rede de Petri colorida não controlada do Exemplo 1. . . 68 5.2 Rede de Petri colorida controlada com cores associadas aos arcos

por uma única variável. . . 70 5.3 Rede de Petri colorida não controlada onde as expressões dos arcos

são de…nidas por mais de uma variável. . . 71 5.4 Rede de Petri colorida controlada onde as expressões dos arcos

são de…nidas por mais de uma variável. . . 74 5.5 Rede de Petri colorida não controlada com conjunto de cores

diferentes com variáveis distintas associadas aos arcos. . . 77 5.6 Rede de Petri colorida controlada com conjuntos de cores

diferentes com variáveis distintas associadas aos arcos. . . 80 5.7 Rede de Petri colorida controlada com o supervisorpcr resultante

da fusão dos controladores pc5 epc6 da Figura 5.6. . . 81

5.8 Rede de Petri colorida controlada com cores associadas aos arcos por uma única variável. . . 82 5.9 Rede de Petri colorida controlada pelo supervidor pcr1 resultante

de fusão dos lugares de controle na Figura 5.8. . . 83

A.1 Rede de Petri colorida não controlada com conjunto de cores diferentes com variáveis distintas associadas aos arcos. . . 94 A.2 Espaço de Estado associado à RPC não controlada na Figura A.1. 94 A.3 Rede de Petri colorida controlada com conjuntos de cores

(20)

A.4 Espaço de Estado associado à RPC controlada na Figura A.3. . . 98 A.5 Rede de Petri colorida controlada com o supervisorpcr resultante

da fusão dos controladores pc5 epc6 da 5.6. . . 101

(21)

2.1 Classi…cação dos modelos de SEDs. . . 16

(22)

Introdução

1.1 Motivação

A teoria de controle supervisório (TCS) desenvolve-se a partir de (RAMADGE e WONHAM, 1982), (RAMADGE e WONHAM, 1987) e (RAMADGE e WONHAM, 1989). A mesma surge da necessidade de uma formalização sistemática para a restrição e implementação de controle em sistemas a eventos discretos (SEDs). Nessa teoria um SED é modelado por um autômato cujo comportamento é descrito por linguagens formais geradas do mesmo.

Os fundamentos que compõem a TCS são: controlabilidade de uma linguagem, existência do supervisor e existência de máxima linguagem controlável e o problema de controle resume-se em encontrar o supervisor, tal que, associado ao sistema, gere a linguagem especi…cada. Entretanto, alguns inconvenientes são evidenciados ao se usar autômatos de estado como ferramenta para modelagem de SEDs, tais como o crescimento exponencial do número de estados quando o sistema é de grande porte e a pouca visibilidade grá…ca que limita seu uso a sistemas de menor complexidade.

Diante disso, vários autores propõem uma abordagem da TCS utilizando como ferramenta as redes de Petri (RPs), descritas em (MURATA, 1989) e

(23)

(PETERSON, 1981), onde se ganha no recurso da visualização grá…ca e na complexidade na síntese de supervisores. Dessa forma, o estudo de linguagens da TCS com RPs, descritas por (JENSEN e KRISTENSEN, 2009), permite caracterizar a classe de problemas de controle que podem ser resolvidos através de modelos utilizando essa ferramenta, ou seja, a classe dos problemas para os quais um supervisor em rede de Petri (RP) existe. Nesse contexto, as redes de Petri coloridas (RPCs), como uma ferramenta poderosa para modelagem de SEDs, através de funções associadas aos arcos, oferecem a condição para modelagem de sistemas de grande porte sem prejuízo de visualização grá…ca e maior recurso de análise.

Nesse trabalho, são estudados SEDs modelados por RPCs tendo como referência a TCS, no projeto de um supervisor. Além disso, são usadas técnicas de análise em RPs a …m de provar que o supervisor possui as propriedades desejadas.

1.2 Objetivo

Como objeto central dessa dissertação, apresenta-se a formalização e comprovação do método denominado Restrições de Controle sobre Cores Decompostas (RCCD), para síntese de supervisores em SEDs utilizando RPC, proposto por (PRATA et al., 2008) sem formalização e, como extensão, é apresentado o método para minimização do número de controladores (lugares de controle da RPC), desses supervisores, denominado Fusão de Controladores (FC).

1.3 Estrutura da Dissertação

(24)

apresenta-se a formalização teórica e a prova matemática do método RCCD e como consequência apresenta-se o método FC com contextos e particularidades. No Capítulo 2 (Conceitos Preliminares) apresenta-se um conjunto de conteúdos que servem de base a esse texto, enfocando conceitos e referências que dão suporte ao estudo da TCS utilizando RPs em SEDs.

No Capítulo 3 (Redes de Petri) objetiva-se esclarecer sobre a topologia das RPs e como esta topologia pode favorecer na modelagem de sistemas dinâmicos a eventos discretos, através de de…nições e propriedades concernentes às RPs ordinárias e RPs de alto nível, com foco nas RPCs.

No Capítulo 4 (O Controle Supervisório com Redes de Petri) apresenta-se um esboço da TCS com a de…nição de autômatos, geradores e descrição da solução do problema de controle supervisório, segundo a teoria. Além disso, menciona-se, segundo a literatura, diferentes abordagens da TCS utilizando RPs, com foco no método para síntese de supervisores utilizando invariantes de lugar de MOODY e ANTSAKLIS (1998).

No Capítulo 5 (Síntese de Supervisores em SEDs Utilizando RPCs) apresenta-se o objeto desapresenta-se trabalho em dois momentos principais:

1. A formalização teórica e a prova matemática do método RCCD, com contextos de aplicações utilizando RPCs.

2. A formalização teórica e a prova matemática do método FC para supervisores de…nidos no RCCD, com contextos de aplicações utilizando RPCs.

(25)

Conceitos Preliminares

2.1 Sistemas

Para estabelecer o conceito de sistema, parte-se de uma idéia intuitiva a …m de que seja assimilado a essência e aplicabilidade do termo em seus vários níveis e contextos. No entanto, pode-se propor três de…nições representativas inseridas na literatura por CASSANDRAS e LAFORTUNE (2008):

1. Uma agregação ou conjunto de coisas que se combinam por natureza ou por manipulação de forma integral ou todo complexo (Encyclopedia Americana).

2. Uma interação ajustada ou interdependente de ítens que formam um todo uni…cado (Webster’s Dictionary).

3. Uma combinação de componentes que agem juntos para executar uma função impossível com quaisquer das partes individualmente (IEEE Standard Dictionary of Eletrical and Electronic Terms).

Os sistemas de automação construídos pelo homem são denominados Sistemas Dinâmicos a Eventos Discretos, ou simplesmente Sistemas a Eventos

(26)

Discretos (SEDs). De acordo com (RAMADGE e WONHAM, 1982), esse tipo de sistema surge, geralmente, quando se realiza a modernização de um processo industrial substituindo, onde possível, a tecnologia analógica pela tecnologia digital. Esses sistemas não são descritos por equações diferenciais, as quais são normalmente utilizadas para descrever os sistemas dinâmicos de variáveis contínuas (SDVCs). De fato, os SEDs exibem características especí…cas em sua evolução dinâmica que exigem outros paradigmas de representação. Assim, para estudar os SEDs é necessário, numa primeira etapa, localizar esse tipo de sistema numa classi…cação genérica com o intuito de destacar suas características peculiares.

Em seu trabalho, MONTGOMERY (2004) de…ne sistemas como uma parte limitada do universo que pode ser caracterizada por meio de um conjunto …nito de variáveis que podem ser associadas às grandezas físicas que as identi…ca univocamente. Num contexto mais amplo, sistemas são conjuntos de elementos, materiais ou imateriais, entre os quais se pode de…nir uma relação e que operam com uma estrutura organizada.

(27)

instante podem ocorrer mudanças de estados em vários subsistemas.

A temporização das atividades realizadas nos diversos componentes pode ser complexa e, consequentemente, a descrição de suas interações pode se tornar difícil. Dessa forma, o estudo dos sistemas requer o desenvolvimento de modelos que permitam analisar o comportamento das variáveis e de…nir suas características.

Os sistemas podem ser classi…cados de diversas formas. Na Figura 2.1 ilustra-se um tipo de classi…cação que é adequada para o enfoque adotado nessa dissertação, segundo CASSANDRAS e LAFORTUNE (2008).

Figura 2.1: Classi…cação dos sistemas.

Estático e Dinâmico

Nos sistemas estáticos a saída é independente dos valores passados da entrada. Nos sistemas dinâmicos, a saída depende dos valores passados da entrada. O comportamento dos sistemas dinâmicos é, em geral, descrito por meio de equações diferenciais, diferentemente dos sitemas estáticos.

Variante no Tempo e Invariante no Tempo

Um sistema invariante no tempo satisfaz à condição:

(28)

onde, y(t) é o vetor de saída, g(v) representa a transformação que o sistema realiza em u(t) que é o vetor aplicado como entrada. A invariância no tempo signi…ca que o deslocamento temporal da entrada,u(t ), resulta num mesmo deslocamento temporal da saída, y(t ), sem afetar a transformaçãog(v).

Lineares e Não-Lineares

Um sistema linear satisfaz ao princípio da superposição que pode ser expresso a partir da condição:

g(c1u1+c2u2) = c1g(u1) +c2g(u2): (2.2)

Nessa expressão, u1 e u2 são dois vetores de entrada; c1 e c2 são constantes e

g(v) representa a transformação que o sistema realiza sobre um vetor aplicado na sua entrada.

Estado Contínuo e Estado Discreto

Em sistemas de estado contínuo os componentes do vetor de estado

Q= (q1; ; qi; ; qn)T (2.3) são variáveis reais ou complexas, ou seja,

qi 2R_qi 2C;i= 1; ; n (2.4) Em sistemas de estado discreto, as componentes do vetor de estado são variáveis inteiras.

Dependente do Tempo e Dependente de Eventos

(29)

Determinísticos e Estocásticos

Um sistema é dito estocástico se uma ou mais de suas variáveis for aleatória. Nesse caso, o vetor de estado do sistema é descrito por um processo estocástico e uma abordagem probabilística é necessária para caracterizar o comportamento do sistema.

Tempo Contínuo e Tempo Discreto

Um sistema é dito de tempo contínuo se as suas componentes do vetor de estado

Q(t) = (q1(t); ; qi(t); ; qn(t))T (2.5) são de…nidas a qualquer instante de tempo, ou seja,

8t 2R;9qi(t) ;i= 1; ; n (2.6) Num sistema de tempo discreto os componentes do vetor de estado são de…nidas somente em certos instantes de tempo, ou seja,

8t 2N;9qi(t) ;i= 1; ; n (2.7) Nesse caso, os instantes de tempo são, em geral, de…nidos por um processo de amostragem. A linha tracejada na Figura 2.1 de…ne a classe dos SEDs, contextualizado nesse trabalho onde, mais especi…camente, serão tratados os sistemas dinâmicos, invariantes no tempo, não lineares, de estado discreto e dirigidos por eventos.

2.2 Sistemas a Eventos Discretos

(30)

Um evento pode ser identi…cado como uma ação proposital, uma ocorrência espontânea ou o resultado de uma veri…cação de uma condição. Na Figura 2.2 é apresentada a evolução dinâmica de um SED onde os eventos são representados com os símbolos , e , os estados do sistema por q1, q2, q3 e q4 e a evolução

do tempo por t1, t2, t3 e t4.

Figura 2.2: Evolução de um sistema com variáveis discretas.

Em seu trabalho, CURY (2001) descreve essa trajetória a…rmando que um mesmo evento pode ter efeitos diferentes, dependendo do estado em que ocorre. Se o evento está no estado q1 e ocorre o evento , o próximo estado será q4

e se ocorre em q3, volta-se para q1, dessa forma, a trajetória pode continuar

inde…nidamente. No entanto, considera-se …nito o número de eventos que podem ocorrer nos sistemas tratados. Além disso, como referencial inicial, costuma-se distinguir um dos estados do sistema dos demais, o qual recebe o nome de estado inicial. Este é o estado em que o sistema se encontra antes de ocorrer o primeiro evento. Na prática, em geral, é possível forçar um sistema a voltar a esse estado inicial, antes de começar sua utilização para um determinado …m, processo denominado de reinicialização.

(31)

diferenciais. O espaço de estados de um SED é limitado a um conjunto enumerável, ao passo que o espaço de estados é contínuo e in…nito nos sistemas contínuos, representados na Figura 2.2 e 2.3, respectivamente.

Figura 2.3: Evolução de um sistema com variáveis contínuas.

Em geral, num espaço de estados contínuos, a mudança de estado ocorre a cada instante, tendo o seu comportamento descrito pela função, na Equação 2.8, que relaciona o estado (variável dependente) ao tempo (variável independente), tal que,

dq

dt =f(q;t); (2.8)

em que f é a função de transição que associa um estado q a uma determinada

marca de tempo t (contexto da teoria de controle tradicional).

2.2.1 A Modelagem de SEDs

(32)

Em outras palavras, um modelo que é extremamente detalhista pode dar uma boa visão do funcionamento do sistema, no entanto, pode gerar custos computacionais e operacionais inviáveis, por outro lado, quando se tem um modelo com abstração maior, isso pode interferir numa análise mais precisa do mesmo.

Concernente aos SEDs, pode-se encontrar muitos recursos disponibilizados para modelagem em acordo com as características dos mesmos, no entanto, nenhum tornou-se de…nitivo. Pode-se obter um grau de aprofundamento com os seguintes autores, entre outros, dentre os paradigmas mais conhecidos para esse …m:

Cadeias de Markov (CAO e HO, 1990).

Teoria das Filas (CAO e HO, 1990).

Processos Semi-Markovianos (CAO e HO, 1990).

Álgebra de Processos (MILNER, 1980).

Álgebra de Dióides (LIBEAUT, 1996).

Álgebra Max-Plus (GAUBERT e MAIRESSE, 1995).

Álgebra Min-Plus (TERRASSON et al., 1997).

Álgebra de Caminhos (GAUBERT, 1999).

Redes de Petri (JENSEN e KRISTENSEN, 2009), (JENSEN, 1992), (MURATA, 1989), (PETERSON, 1981), (REISIG, 1992).

(33)

Veri…cação de SEDs

Técnicas e ferramentas que facilitem a análise dos SEDs são cada vez mais necessárias, devido à grande variedade de implementações dos mesmos, entre os quais, os sistemas de manufatura e protocolos de comunicação. Dessa forma surge a atividade relacionada à veri…cação de sistemas, que supre essa necessidade em meio ao crescimento da complexidade e importância desses sistemas (BRAGA, 2006). Algumas técnicas importantes na veri…cação de sistemas envolvem simulação, testes, veri…cação formal e model checking (KATOEN, 1999).

Simulação

A simulação é uma técnica que faz uso de cenários escolhidos de forma aleatória por um usuário ou ferramenta. Normalmente é útil para uma quali…cação inicial do sistema em análise mas pode deixar espaços para falhas, quando da observação de detalhes mais minuciosos, fato que surge da incapacidade de simular todas as etapas em contextos diversos.

Testes

Os testes podem ser a maneira mais acessível na veri…cação de sistemas. O princípio é o mesmo da simulação com a diferença de se usar o sistema real ao invés do sistema virtual. Dessa forma, tendo as mesmas características da técnica anterior, os testes limitam-se apenas em evidenciar a presença de erros e nunca as razões de sua ausência.

Veri…cação Formal

(34)

explicitadas como requeridas no início. Todo esse procedimento é fator de di…culdade dessa técnica na automação das provas.

Model Checking

Model checking é uma categoria especí…ca de veri…cação formal, que possui menor interação com o usuário durante o processo, onde dados um modelo de estados …nitos de um sistema e uma propriedade lógica requerida, inspeciona sistematicamente se essa propriedade é verdadeira para aquele modelo. Normalmente é realizada uma busca exaustiva em espaço de estados se o modelo é …nito. Quando um erro é reconhecido, a ferramenta apresenta um contra-exemplo, no qual o modelo se comporta de forma indesejada. O principal problema nesse tipo de veri…cação é a explosão de estados em sistemas maiores. Nessa Dissertação faz-se uso da simulação de SEDs, modelados por RPCs, para a ilustração da formulação teórica e prova matemática dos métodos RCCD e FC, no intuito de veri…cação e avaliação desses métodos.

As Propriedades Veri…cadas em SEDs

As propriedades veri…cadas em um SED são classi…cadas em famílias, que levam a técnicas e procedimentos de acordo com a característica do sistema, que pode oferecer situações próprias para serem resolvidas pelo projetista ou pelo usuário. Dentre as propriedades principais tem-se:

Alcançabilidade

Veri…ca se um determinado estado é possível de ser alcançado a partir de um dado estado inicial.

Segurança

(35)

Vivacidade

Veri…ca se o sistema executará todas as ações programadas a partir de qualquer situação já prevista.

Justiça

Em um SED, sob certas condições, veri…ca se uma situação irá ou não ocorrer com frequência in…nita.

Ausência de deadlock

Veri…ca se um SED nunca poderá estar numa situação onde a sua evolução seja interrompida, ou seja, é necessário que dado um certo estado alcançado, sempre deverá existir um estado seguinte a ser alcançado.

Reversibilidade

Veri…ca se é possível, a partir de um dado estado inicial, estabelecer uma sequência de estados que coloca o sistema de volta nesse mesmo estado inicial.

2.3 Estrutura de Controle Supervisório em

SEDs

Segundo ZHOU e DICESARE (1993), a estrutura de controle em um SED pode ser vista em dois níveis:

1. Controle supervisório ou controle relacionados a eventos. 2. Controle de processos tradicional.

Tal estrutura pode ser visualizada através do exemplo simples da arquitetura apresentada na Figura 2.4.

(36)

Figura 2.4: Arquitetura de controle de um SED.

1. Controle centralizado, onde um computador hospedeiro é usado para realizar e sincronizar as atividades relacionadas aos eventos e controlar os processos de baixo nível.

2. Controle distribuído, onde os componentes de um sistema podem ser vistos como sub-sistemas independentes que se comunicam entre si, de modo a cooperarem na solução do problema de controle. Um controlador supervisório, ou simplesmente supervisor, tem que coordenar as tarefas assíncronas entre os componentes distribuídos para satisfazer os requisistos do sistema.

(37)

Modelos Temporizados Não Temporizados

Lógicos Autômatos Temporizados Autômatos

Redes de Petri Temporizadas Redes de Petri

Algébricos Álgebra Max-Plus Álgebra de Processos

Análise de Desempenho Cadeias de Markov Teoria das Filas

Redes de Petri Estocásticas

Tabela 2.1: Classi…cação dos modelos de SEDs.

habilitando ou desabilitando eventos controláveis, que são eventos que estão sujeitos a interferências externas.

A TCS tem a vantagem de separar explicitamente o sistema a ser controlado (open loop dinamics) do controlador em si (feedback control) e, dessa forma, apresentar as condições necessárias e su…cientes para a existência do supervisor. Para os SEDs, os problemas compucionais advindos da solução de síntese de supervisores são frequentemente complexos, pois o número de estados em um sistema real cresce exponencialmente com o número de constituintes do sistema. Os modelos para SEDs podem ser classi…cados em temporizados e não temporizados, conforme permitam ou não considerar os instantes de tempo em que ocorrem os eventos e também em algébricos, lógicos e de análise de desempenho, conforme sejam orientados ao uso, asserções lógicas ou à formulação probabilística, respectivamente. Na Tabela 2.1 são apresentados os modelos baseados nos critérios citados.

2.3.1 Síntese de Supervisores

(38)

todos os eventos em um sistema real são observáveis.

Dentre os formalismos conhecidos, para a modelagem e controle de SEDs, as redes de Petri (RPs) têm sido utilizadas na TCS por (BARROSO, 1996), (BARROSO et al., 1995), (GIUA e DICESARE, 1992), (GIUA e DICESARE, 1994a), (GIUA e DICESARE, 1994b), (GIUA e DICESARE, 1995), (HOLLOWAY e KROGH, 1990), (HOLLOWAY e KROGH, 1992), (INAN e VARAIYA, 1988) e (SREENIVAS e KROGH, 1992), entre outros. Algumas das vantagens de se utilizar RPs são:

A estrutura de uma RP não requer uma enumeração explícita de todos os estados do sistema e em muitos casos podem ser utilizadas técnicas de análise, baseadas somente na estrutura da rede, que permitem uma boa solução para o problema de controle.

O modelo da RP cresce linearmente com o número de componentes do sistema modelado.

Uma RP supervisora contém sua ação de controle implícita na própria estrutura. Nesse caso, o modelo em malha fechada do sistema controlado pode ser construído e analizado usando-se as mesmas técnicas de análise para as RPs usadas na modelagem.

2.4 Linguagens Formais

Nessa seção são apresentados conceitos básicos de linguagens formais, segundo (HOPCROFT e ULLMAN, 1979) e (RAMADGE e WONHAM, 1987).

De…nição 2.2 Alfabeto é um conjunto não-vazio de símbolos, representado por uma letra grega maiúscula, em geral .

(39)

De…nição 2.4 O comprimento de uma palavra s, denotado por jsj, é igual ao

número de símbolos que a compõem.

De…nição 2.5 A palavra nula, representada por , é a única palavra de comprimento nulo.

Observação 2.1 2= , pois é uma palavra e não um símbolo de . De…nição 2.6 Dado um alfabeto , de…nem-se dois conjuntos, tais que:

+=[ k = 1[ 2[ 3[ (2.9)

=[ k= 0[ 1[ 2[ (2.10)

Nesse caso, + é o conjunto de todas as palavras que podem ser formadas

com os símbolos do alfabeto e difere de + apenas por incluir a palavra

nula, ou seja:

= +[ f g: (2.11)

Formalmente, um conjunto de palavras formadas por símbolos de um alfabeto é denominado Linguagem L.

De…nição 2.7 O pre…xo-fechamento ou simplesmente fechamento de L, é dado por:

L=fu:9v 2 ^uv 2Lg: (2.12) Como consequência tem-se que L L. Assim, quando L = L então L é dita

pre…xo-fechada, ou simplesmente fechada.

De…nição 2.8 A linguagem pre…xo-fechada que representa o comportamento lógico de um SED é denominada linguagem gerada do sistema.

(40)

De…nição 2.9 A linguagem que representa o conjunto de tarefas que um SED é capaz de executar é denominada linguagem marcada do sistema.

Um SED que produz as palavras contidas numa linguagem marcada Lm, também produzirá as palavras contidas emLm. Nesse caso, pode-se dizer que:

Lm Lm L=L (2.13)

Os autômatos, como de…nido anteriormente, não são capazes de representar a linguagem gerada do sistema. A solução para esse problema está em se permitir que a função de transição seja de…nida apenas para alguns pares (evento, estado) do conjunto (q) Q.

2.4.1

Linguagens Regulares

As expressões regulares são sequências de símbolos obtidas pela aplicação repetitiva de um conjunto de regras de formação. Usualmente tem-se:

nesnrepresentam, respectivamente, a repetição do símbolo e da palavra

s porn vezes.

es representam, respectivamente, a repetição do símbolo e da palavra s um número arbitrário de vezes, inclusive zero.

O símbolo+é empregado como o operador lógicoou, indicando uma opção

entre duas ou mais possibilidades.

Essa notação permite escrever notações …nitas para linguagens formadas por um número in…nito de palavras.

Por exemplo, sejam, = f ; g e L uma linguagem pre…xo-fechada onde os símbolos e ocorram alternadamente, sendo que ocorre primeiro. A linguagem Lpode ser representada da forma:

(41)

Isso quer dizer que, ( )pode ocorrer um número arbitrário de vezes, inclusive zero, logo após pode ocorrer ou então a palavra nula , ou seja, nada. Note que L é um subconjunto próprio da linguagem = f g , a qual inclui as palavras e , que não são palavras da linguagem L.

2.5 Autômato

De…nição 2.10 Um autômato determinístrico …nito ou simplesmente autômato é uma quíntupla

A= (Q; ; ; q0; Qm) (2.15)

em que:

Q é o conjunto de estados q.

é o alfabeto ou conjunto de símbolos .

: Q !Q é a função de transição de estados. q0 2Q é o estado inicial.

Qm Q é o conjunto de estados marcados.

De…nição 2.11 Dado um autômatoA= (Q; ; ; q0; Qm), a função de transição

: Q !Q é tal que:

( ; q) = q e ( ; q) =q0, para q; q0 2Q e 2 (2.16) Nesse caso, diz-se que q0 é um estado do autômato A se é uma entrada

aceita porA.

Gra…camente, um autômato é representado por um par G = (V; A),

(42)

vértices desenhados com linhas duplas e o estado inicial é identi…cado por uma seta.

Figura 2.5: Representação grá…ca de um autômato.

Considere o autômato representado na Figura 2.5. Nesse caso:

=f ; g

Q=f0;1;2g

( ;0) = 2; ( ;0) = 1; ( ;1) = 2; ( ;1) = 0; ( ;2) = 2; ( ;2) = 1

q0 = 0

Qm= 2

Conhecidas a função de transição e o estado atual de um autômato, é possível determinar seu estado após processar um dado símbolo. Em se desejando processar uma sequência ou cadeia de símbolos, ou seja, uma palavra, pode-se simplesmente repetir espode-se procedimento para cada um dos símbolos que a compõem. No entanto, é conveniente estender a de…nição da função de transição para processar palavras.

De…nição 2.12 Dado um autômato A(Q; ; ; q0; Qm), a função de transição

estendida, denotada por , é a função

(43)

onde:

( ; q) =q e (s ; q) = ( ; (s; q); para q2Q e s2 (2.18) De…nida essa função, pode-se determinar qual será o estado do autômato após processar uma palavra sobre seu alfabeto, a partir de uma dado estado. Dependendo da palavra escolhida, o estado alcançado poderá ou não pertencer ao conjunto de estados marcados.

De…nição 2.13 Dado um autômato A = (Q; ; ; q0; Qm), diz-se que A

reconhece a palavra s2 se, e somente se, (s; q0)2Qm.

O autômato apresentado na Figura 2.5 reconhece todas as palavras sobre o alfabeto =f ; g que terminam com o símbolo .

O conjunto de palavras aceitas, ou reconhecidas, por um autômato A é

de…nido da seguinte forma:

De…nição 2.14 Dado um autômatoA = (Q; ; ; q0; Qm), a linguagem marcada

(linguagem aceita ou linguagem reconhecida) de A, denotada por Lm(A), é:

Lm(A) =fs:s2 ^ (s; q0)2Qmg (2.19)

Observação 2.2 O autômato da Figura 2.5 reconhece a linguagemf( ) g.

(44)

Um autômato pode ser …nito ou in…nito, determinístico ou não determinístico. Um autômato …nito consiste de um conjunto …nito de estados, designados por Q e um conjunto de transições de estado designado por , que

ocorrem a partir de símbolos de entrada escolhidos de um alfabeto . Oestado inicial do autômato designado por q0, é o estado em que este se encontra antes

de ler o primeiro símbolo. Alguns estados do autômato são designados por estados …nais ou estados marcados Qm. Assim, um autômato ao reconhecer as

palavras, quando processadas, é levado a um estado marcado. Por outro lado, um autômato que possui in…nitos estados é denominado autômato in…nito.

Se para cada símbolo de entrada existe uma transição de saída de cada estado, diz-se que o autômato é determinístico. De outra forma, se existem duas ou mais transições de saída de um estado que podem ocorrer a partir de um mesmo símbolo, entãoo autômato é não determinístico.

2.6 Gerador

De…nição 2.15 Um gerador é uma quíntupla G= (Q; ; ; q0; Qm), em que Q,

, , q0 e Qm se apresentam como na de…nição 2.11.

A diferença entre autômato e gerador é que a função de transição é total no primeiro, de…nida para todo par ( ; q) 2 Q, enquanto no segundo a função

de transição é parcial, de…nida para um subconjunto de eventos para cada estado do gerador.

Em um gerador G = (Q; ; ; q0; Qm), associa-se a cada estado q 2 Q o

conjunto de eventos, de…nidos (q), dado por:

(q) = f : 2 ^ ( ; q)!g (2.20) em que ( ; q)!signi…ca que é de…nido para o par ( ; q).

(45)

função de transição.

Dessa forma, a função de transição estendida, denotada por , é uma função : Q !Q, tal que:

( ; q) =q

(s ; q) = ( ; (s; q)) para q2Q e s2 sempre que

q0 = (s; q) e ( ; q0)estiverem ambas de…nidas.

Como nos autômatos, a função de transição estendida será denotada simplesmente por . Assim, o conjunto de palavras que o gerador G pode

processar, forma a linguagemL(G), tal que,

L(G) = fs:s2 ^ (s; q0)!g (2.21)

Seguindo o mesmo contexto, pode-se admitir que L(G) é pre…xo-fechada, denotada por

L(G) =L(G), (2.22)

ou seja, cada palavra emL(G) tem seu pre…xo contido emL(G).

O conjunto de estados marcados em um gerador G de…ne a linguagem marcada Lm(G), tal que,

Lm(G) = fs :s2 ^ (s; q0)2Qmg. (2.23)

Portanto, um SED com linguagem gerada L e linguagem marcada Lm pode ser representado por um gerador G, tal que, L(G) =L e Lm(G) =Lm. Assim, os geradores conseguem representar ambas as linguagens associadas a um SED, o que não era possível no caso dos autômatos.

Na estrutura de um gerador pode-se ter:

1. G=Ac(G), denominado gerador acessível, em que a componente acessível

(46)

2. G = Co(G), denominado gerador coacessível, em que a componente

coacessível apresenta apenas os estados em que, a partir deles, é possível atingir um estado marcado.

Dessa forma, um gerador G é dito ajustado ou trim, quando é, ao mesmo

tempo, acessível e coacessível.

Figura 2.6: Componente ajustada (trim) de um gerador.

O gerador apresentado na Figura 2.6 é acessível, pois a partir de q0 existe

sempre uma sequência de eventos que pode levar o sistema de q0 para qualquer

estado do mesmo. O gerador não é coacessível, pois a partir do estado q3 não

existe nenhuma sequência de eventos que possa levar o sistema a um estado marcado, no casoq2. A componente ajustada (trim) do gerador, ou seja, acessível

(47)

Redes de Petri

Nesse Capítulo são apresentados o histórico, conceitos e de…nições inerentes às RPs, além de suas propriedades comportamentais e estruturais que dão suporte a esse trabalho, segundo (BARROSO, 1996), (MARRANGHELLO, 2005) e (PORTUGAL, 2006).

As RPs foram criadas a partir da tese de doutorado de Carl Adam Petri, intitulada Kommunication mit Automaten (Comunicação com Autômatos), apresentada à Universidade de Bonn em 1962. Desde o princípio, as RPs objetivaram a modelagem de sistemas com componentes concorrentes.

As primeiras aplicações de RPs aconteceram em 1968, no projeto norte-americano Information System Theory, da ADR (Applied Data Research, Inc.). Muito da teoria inicial, da notação e da representação de RPs foi desenvolvido neste projeto e foi publicado em seu relatório …nal. Este trabalho ressaltou como as RPs poderiam ser aplicadas na análise e na modelagem de sistemas com componentes concorrentes.

Em relação às aplicações, as RPs atingiram áreas como a modelagem de componentes de hardware, controle de processos, linguagens de programação, sistemas distribuídos e protocolos de comunicação. Na década de setenta, surgiram RPs capazes de modelar características temporais determinísticas,

(48)
(49)

3.1 Conceito

Uma RP pode ser usada como ferramenta grá…ca, para auxiliar na visualização de um problema. Fichas (ou marcas) são usadas nestas redes para simular a dinâmica e as atividades concorrentes do sistema, tornando mais fácil para os projetistas a compreensão a respeito de seus sistemas, facilitando a utilização das técnicas de análise.

Segundo REISIG (1992), as RPs são ferramentas com grande poder de modelagem grá…ca, com fundamentos matemáticos …rmemente incorporados que representam um sistema como um conjunto de entidades ativas e passivas interagindo. As entidades ativas são chamadastransições, dado que as transições são os entes que ”disparam” e as passivas são chamadas de lugares, pois elas simplesmente de…nem as condições de disparo.

As RPs incorporam as características tanto das máquinas de estado …nito quanto de grafos direcionados bipartidos. Elas podem expressar transições de estado causadas por eventos, como também, atividades processadas em paralelo. É um modelo classi…cado como estado-evento, com cada evento possuindo pré-condições que vão permitir sua ocorrência e pós-pré-condições decorrentes desta, as quais podem também ser pré-condições de outros eventos.

(50)

3.2 Representação de Redes de Petri

Uma RP é representada por um grafo orientado bipartido que permite modelar as propriedades estáticas de um SED, constituído de dois tipos de nós (PETERSON, 1981):

as transições, que correspondem aos eventos que caracterizam as mudanças de estado do sistema e são simbolizadas por retângulos ou barras;

os lugares, que correspondem às condições que devem ser certi…cadas para que os eventos ocorram e são simbolizados por círculos.

Arcos direcionados ponderados (associados a pesos) ligam os nós de tipos diferentes, isto é, transições a lugares e lugares a transições. Um arco orientado não representa um componente do sistema, mas simboliza o relacionamento entre os componentes.

Os ítens usados para representar a dinâmica do sistema são chamados de …chas. As …chas são representadas por pontos dentro dos lugares. A presença ou ausência de uma …cha em um lugar pode indicar, por exemplo, se uma condição associada a este lugar é verdadeira ou falsa.

A RP é um formalismo com grande poder de expressividade, que permite a modelagem de uma grande classe de sistemas dinâmicos a eventos discretos, representando com facilidade todas as relações de causalidade entre processos em situações de sequencialidade, con‡ito, concorrência, sincronização, junção e confusão, topologias ilustradas na Figura 3.1:

Sequência – A execução sequencial se caracteriza por um conjunto de transições (t1; t2; :::; tm), m > 1, que devem disparar em sequência,

começando port1 (transição inicial) e terminando portm (transição …nal). A Figura 3.1a ilustra um exemplo. Neste caso, a transiçãot4 é a transição

…nal e só poderá disparar após o disparo det3, que por sua vez só disparará

(51)
(52)

Con‡ito – Um con‡ito surge em um conjunto de transições (t1; t2; :::; tm),

m > 1, quando ao existir duas ou mais dessas transições habilitadas a ocorrer, a ocorrência de qualquer uma delas desabilita todas as outras. A Figura 3.1c exempli…ca este caso, com o disparo da transição t1

desabilitando a transição t2, ou vice-versa.

Concorrência – A concorrência se caracteriza por um conjunto de transições (t1; t2; :::; tm), m > 1, que podem disparar independentemente

umas da outras. Na Figura 3.1b as transições t2 e t3 são concorrentes.

A concorrência é um importante atributo de interações de Sistemas Dinâmicos a Eventos Discretos.

Sincronização – A sincronização pode ocorrer de duas formas, tais que:

1. Ocorre em um conjunto de transições (t1; t2; :::; tm), m > 1, que podem

disparar concorrentemente umas das outras, mas estão associadas à mesma transição sucessora (através de seus lugares de saída) que não pertence a este conjunto. Neste caso, apenas o disparo de todas as transições deste conjunto poderá habilitar a transição sucessora, exemplo da Figura 3.1d.

2. Ocorre em um conjunto de transições (t1; t2; :::; tm), m > 1, que podem

disparar concorrentemente umas das outras, mas estão associadas à mesma transição predecessora (através de seus lugares de entrada) que não pertence a este conjunto. Neste caso, apenas o disparo da transição predecessora poderá habilitar todas as transições desse conjunto, como na Figura 3.1c.

Junção – A junção se caracteriza por um conjunto de transições (t1; t2; :::; tm), m > 1, que são concorrentes entre si, tal que o disparo

(53)

elas. A Figura 3.1e mostra um exemplo, onde a transiçãot3poderá ocorrer

após o disparo tanto det1 quanto de t2.

Confusão – A confusão é a existência de concorrência e de con‡ito em uma mesma transição. Na Figura 3.1f, a transição t1 é concorrente a t5, mas

ambas estão em con‡ito comt2, caracterizando a confusão.

De…nição 3.1 Uma RP com n lugares em transições pode ser representada por

uma quádrupla N =hP; T; I; Oi, tal que:

P =fp1; p2; ; png é um conjunto de lugares;

T = ft1; t2; ; tmg é um conjunto de transições, com P [ T = ; e

P \T =;;

I : P T !N, é a função de entrada ou pré-incidência que especi…ca os

arcos orientados dos lugares para as transições;

O : T P ! N é a função de saída ou pós-incidência que especi…ca os

arcos orientados das transições para os lugares, onde N é o conjunto dos

números naturais e m; n2N.

(54)

que contenha um ponto representa um lugar que contêm uma …cha. Na Figura 3.2 é mostrado um exemplo de RP.

Figura 3.2: Exemplo de rede de Petri.

Uma marcação é uma atribuição de …chas aos lugares de uma RP. Uma …cha é um conceito primitivo em RPs (assim como lugares e transições). Essas …chas residem nos lugares. O número e a posição das …chas mudam durante a execução de uma RP, de acordo com PETERSON (1981).

De…nição 3.2 Uma marcação M de uma RP N = hP; T; I; Oi é uma função do conjunto de lugares ao conjunto de números inteiros não negativos, isto é,

M :P !N.

De…nição 3.3 Uma RP marcada é uma dupla hN; M0i, em que N é uma RP e

M0 é uma marcação inicial.

(55)

entidades em …las. A distribuição de …chas sobre a RP é de…nida pela marcação da RP. É a marcação da RP que de…ne o estado corrente do sistema modelado. As regras a seguir são usadas para comandar o ‡uxo das …chas:

Regra de Habilitação: Uma transição t2T é dita estar habilitada se cada

lugar de entrada p de t contêm pelo menos um número de …chas igual ao peso do arco orientado conectando pa t, isto é,

M(p)> I(p; t) 8 p2P (3.1)

Regra de Disparo: Um disparo de uma transição habilitada t remove de

cada lugar de entradapo número de …chas igual ao peso do arco orientado

conectando p a t. Ela deposita em cada lugar de saída p o número de

…chas igual ao peso do arco orientado conectando t a p. A habilitação da

transição t gera para esta transição a expectativa de disparo, cabendo ao

controlador da rede o direito de disparar as transições habilitadas na ordem em que achar convenientes.

O disparo det emM gera uma nova marcação, isto é:

M(p)0 =M(p) +O(p; t) I(p; t); 8p2P: (3.2) Nesse caso, a marcação M0 é dita ser alcançável de M. O conjunto de

alcançabilidade de N é o conjunto de todas as marcações alcançáveis da rede

N a partir deM0.

Somente transições habilitadas podem disparar, por esta razão, o número de …chas em cada lugar permanece sempre não negativo quando uma transição é disparada. Uma transição disparada nunca poderá remover uma …cha que não está lá.

(56)

de transição de destino ou saída. Note que uma transição de origem está incondicionalmente habilitada e que uma transição de destino consome …chas, mas não as produz.

Um par composto por um lugar p e uma transição t é chamado de ciclo próprio (self loop), se pé tanto o lugar de entrada e o lugar de saída de t. Uma

RP é dita ser pura se ela não contêm ciclos próprios.

3.3 Propriedades das Redes de Petri

Dois tipos de propriedades podem ser estudados com RPs (MURATA, 1989):

Propriedades que dependem do estado inicial, ou da marcação, denominadas propriedades comportamentais ou dependentes de marcação.

Propriedades independentes da marcação inicial, isto é, dependentes apenas da topologia da rede, denominadas propriedades estruturais.

A seguir serão de…nidas as propriedades mais relevantes para esse trabalho, considerando a hN; M0i, as quais são detalhadas por (CARDOSO e VALETI,

1997) e (MURATA, 1989).

3.3.1 Propriedades Comportamentais

As propriedades comportamentais dependem da marcação inicial e estão ligadas à evolução da rede.

1. Um lugar p2P é k limitado se8 M 2 hN; M0i;9k2N :M(p) k. 2. Uma hN; M0i é k limitada sep é k limitado, 8 p2 N. Em particular,

N é segura se ela é 1 limitada.

3. Uma hN; M0i éviva, Figura 3.5, se a partir de qualquer estado alcançável

(57)

conceito de vivacidade relaciona-se com a ausência de bloqueios. Exemplo de RP com bloqueio é mostrado na Figura 3.3.

Figura 3.3: Rede de Petri com bloqueio.

4. Uma marcação M0

é um estado de passagem (home state) se para cada marcação M 2 hN; M0i, M

0

é alcançável a partir de M (Figura 3.4).

Figura 3.4: Rede de Petri - Ilustração de alcançabilidade.

(58)

Figura 3.5: Rede de Petri viva, limitada e reversível.

3.3.2 Propriedades Estruturais

As propriedades estruturais estão ligadas a topologia da rede e são independentes da marcação inicial M0. Dada uma RP, essas propriedades podem ser

caracterizadas em termos da matriz de incidênciaCe suas equações e inequações

associadas.

Dada uma RP commtransições enlugares, sua matriz de incidênciaC =cij é uma matriz (n m)de…nida por:

C(pi; tj) = cpi;tj =O(pi; tj) I(pi; tj) (3.3)

A equação fundamental de RPs é estabelecida em função da matriz de incidência:

M0 =M0+Cw (3.4)

em que, M0 é a marcação inicial, C é a matriz de incidência, w é a matriz que

identi…ca as transições habilitadas eM8 é a marcação desejada. Dessa forma, pode-se estabelecer as propriedades:

(59)

qualquer marcação inicialM0, todas as suas transições são vivas para M0.

Para tanto, uma transiçãotj éviva para uma marcação inicialM0 se, para

toda marcação acessível Mi, existe uma sequência de disparo que contém

a transiçãotj, a partir de M0.

2. Controlabilidade – Uma RP é dita ser completamente controlável se uma marcação qualquer é alcançada a partir de qualquer outra marcação.

3. Limitação Estrutural – Uma RP é denominada estruturalmente limitada se ela é limitada para qualquer marcação inicialM0.

4. Conservação – Uma RP viva é conservativa se, e somente se, existe um vetorv de inteiros positivos, tal que, vTC = 0;v6= 0.

5. Repetitividade – Segundo MURATA (1989), uma RP com n lugares é

repetitiva se, e somente se, existe um vetor w de inteiros positivos, tal que,Cw 0;w6= 0.

6. Consistência – Segundo MURATA (1989), uma RP com n lugares é

consistente se, e somente se, existe um vetor w de inteiros positivos, tal que, Cw = 0;w 6= 0. Caso contrário, a RP é inconsistente. Um sistema é consistente (inconsistente) se sua modelagem em RP é consistente (inconsistente).

7. Um p-invariante (lugar invariante) é um vetor de inteiros positivos v de dimensão n que satisfaz à equação vTC = 0.

(60)

Os invariantes de lugar correspondem aos conjuntos de lugares aos quais a soma de …chas permanece constante para todas as marcações alcançáveis pela rede.

A análise por invariantes é fundamental para a compreensão desse trabalho. Em particular, a análise dos invariantes pode colaborar para a validação lógica de um modelo desenvolvido em RPs.

9. Um t-invariante é um vetor de inteiros positivos w de dimensão m que satisfaz à equação Cw= 0. Dada uma sequência de disparo e cseu vetor característico. Sendo c = w um t-invariante, e sendo M0 uma marcação inicial de uma RP e M uma marcação alcançável a partir de M0, tem-se

M =M0.

10. O conjunto de transições correspondentes a elementos não nulos em um t-invariante w>0 é denominado suporte deste invariante ou componente repetitivo estacionário e é denotado por kwk. Um suporte é minimal se não existe outro invariantew1, tal que,w1(p) w(p), para todo p.

3.4 Redes de Petri Coloridas

Em seu trabalho, BARROSO (1996) comenta que a utilização de RPs para descrever sistemas reais grandes, torna clara a necessidade de tipos de redes mais poderosas para modelar tais sistemas, a …m de facilitar a visualização e consequentemente o entendimento dos mesmos.

As redes de Petri coloridas (RPCs) possuem o mesmo poder de descrição e análise das RPs. Assim, todos os sistemas modelados por RPs podem ser modelados por RPCs, mas de forma muito mais compacta, onde as similaridades e diferenças das subredes podem ser observadas com maior facilidade.

(61)

De…nição 3.4 Uma RPC associada a uma marcação inicial é uma nônupla

Nc =hP,T,A,S,V,Col,Gd,E,Inii (3.5) em que:

P é um conjunto …nito de lugares;

T é um conjunto …nito de transições tal que P\T=;;

A P T[T P é um conjunto de arcos orientados;

S é um conjunto …nito de conjuntos de cores não vazios.

V é um conjunto …nito de variáveis associadas aos conjuntos de

cores, tal que, V ar(v)2 8 v 2V.

Col : P ! é uma função associada ao conjunto de cores que atribui um conjunto de cores para cada lugar.

Gd: T ! EXP RV é uma função de guarda que atribui uma guarda para cada transição t, tal que, Gd(t) é booleana.

E : A ! EXP RV é uma função de expressão de arco que atribui uma expressão de arco para cada arco a, tal que, E(a) =Col(p), em que

p é o lugar conectado pelo arco a.

Ini : P ! EXP R; é uma função de inicialização que atribui uma expressão de inicialização para cada lugar p, tal que, Ini(p) = Col(p).

3.4.1 Associação de Cores às Fichas

(62)

cada transição se associa um conjunto de cores que corresponde às diferentes maneiras de disparar uma transição.

Nos casos mais simples, quando todos os processos possuem rigorosamente a mesma estrutura e são independentes uns dos outros, as cores das transições são diretamente associadas aos processos e o conjunto de cores dos lugares e das transições são idênticos.

O conjunto de cores de uma transição indica as diferentes maneiras de como ela pode disparar. Cada cor de transição, nesse caso, corresponde a uma das transições da rede ordinária equivalente, ou seja, cada transição da rede ordinária que é dobrada numa transição da rede colorida vai corresponder a uma cor do conjunto de cores.

O problema dos cinco …lósofos chineses sentados ao redor de uma mesa que alternadamente pensam e comem é apresentado como exemplo de um sistema modelado por RPC. Tal modelo descreve como uma série de processos (…lósofos) compartilha recursos comuns (palitos). O Jantar dos Filósofos é um dos exemplos tradicionais usados para ilustrar novos conceitos na área de sincronização e simultaneidade.

Para cada …lósofo comer é necessário que ele pegue o palito que está à sua direita e o que está à sua esquerda. Com isso os vizinhos, da direita e da esquerda, …cam impossibilitados de comer até que o …lósofo que está comendo volte a pensar, ou seja, até que os palitos em uso sejam devolvidos à mesa. Nesse instante, qualquer …lósofo que tenha os palitos à disposição pode pegá-los e começar a comer.

(63)

Figura 3.6: Problema dos …lósofos modelado por uma rede de Petri.

cores FIL, referente aos …lósofos, e mais uma …cha ao conjunto de cores PAL, referente aos palitos.A mesma situação, na RP da Figura 3.6, traria o acréscimo

Figura 3.7: Problema dos …lósofos modelado por uma rede de Petri colorida.

de três lugares e duas transições para a rede, o que certamente traria mais di…culdades de visualização e posterior análise do problema.

(64)
(65)

O Controle Supervisório

Toda teoria e resultados da TCS está baseada na teoria de linguagens e autômatos, portanto, os modelos de SEDs apresentados não se limitam àqueles representados por geradores …nitos, embora os resultados computacionais mais precisos e de…nitivos se limitem àqueles representados por geradores …nitos. Nesse Capítulo são apresentados, além de aspectos da TCS, alguns métodos de síntese de supervisores que constam na literatura sobre o controle supervisório utilizando RPs, com menção das abordagens que servem de fundamento a esse trabalho, com ênfase ao método dos invariantes de lugar de MOODY e ANTSAKLIS (1998).

4.1 Teoria de Controle Supervisório

O problema do controle supervisório é de um modo geral resolvido pela TCS, que separa o sistema a ser controlado (open loop dynamics) do controlador (feedback control) e envolve a modelagem, especi…cação do comportamento e síntese do supervisor. A síntese de um supervisor é realizada para um dado modelo de sistema com o objetivo de satisfazer uma especi…cação de comportamento desejada para esse sistema. Dessa forma, o supervisor é um agente externo que

(66)

possui habilidade de observar os eventos gerados pelo sistema e in‡uenciar no seu comportamento através de entradas de controle. Em malha fechada, a ação de controle do supervisor garante que o funcionamento do sistema esteja de acordo com uma especi…cação dada.

Em seu trabalho, (BARKAOUI et al., 1997) consideram o gerador

G= (Q; ; ; q0; Qm) (4.1)

associado às duas linguagens L eLm, tal que:

representa o conjunto de todas as sequências …nitas em , incluindo a sequência nula (ou vazia) ;

Qé o conjunto de estados de G;

: Q !Q é a função de transição de estados, tal que, ( ; q) =q e

( ; q) =q0, ondeq; q0 2Q e 2 ;

q0 2Q é o estado inicial de G e

Qm Q é o conjunto de estados marcados. Assim, pode-se de…nir:

L=L(G) = fs2 : (q0; s) é de…nidag; (4.2)

Lm =Lm(G) =fs2L(G) : (q0; s)2Qmg: (4.3)

Por de…nição, G, é ditonão-bloqueante (trim) quando

L(G) = Lm(G), (4.4)

caso contrário, é ditobloqueante.

(67)

transições possíveis, identi…cadas pelos eventos do alfabeto = f ; ; ; g. O

modelo permite concluir que a máquina parte do estdo de repouso, de onde pode passar ao estado ativo ( ) e deste voltar ao repouso ( ) ou então sofrer uma pane ( ) e entrar em manutenção, de onde voltará eventualmente à condição de repouso ( ). A linguagem gerada L(G) é mo conjunto de todas as palavras obtidas partindo-se do estado inicial R e seguindo o grafo. A expressão regular que representa essa linguagem pode ser escrita como:

L(G) = ( + ) ( + + ). (4.5) Note que o único estado marcado de G é o estado inicial. Isso signo…ca que a linguagem marcada Lm(G) compreende as palavras que representam um ciclo completo no grafo, seja pelo caminho ou pelo caminho :

Lm(G) = ( + ) . (4.6)

Figura 4.1: Gerador representando uma máquina com três estados.

(68)

tarefa completa. Assim, nessa interpretação, tem-se que um gerador coacessível e o sistema por ele representado são ditos não-bloqueantes.

Uma situação a ser considerada é que G pode alcançar um estado em que

o conjunto ativo de eventos G(q) ;q 2 Q, tal que, (q; s) é de…nida, G(q) é vazio, com q =2 Qm, ou seja, o sistema completa uma tarefa, porém, uma tarefa

não desejável. Nesse caso, con…gura-se uma situação de impasse em que nenhum outro evento pode ser executado como sequência. Tal estado é denominado deadlock.

Um outro caso é quando G entra em um ciclo de estados sem terminar a

tarefa especi…cada ou quando ele entra em um ciclo de estados não marcados sem transição para sair do ciclo. Tal ciclo de estados é denominadolivelock.

Particionando em dois subconjuntos disjuntos obtém-se:

c, o subconjunto formado pelos eventos controláveis do sistema (eventos que podem ser impedidos de acontecer, através de controle);

u, o subconjunto formado pelos eventos não controláveis do sistema (eventos que não podem ser desativados por controle).

Dessa forma:

= c [ u, (4.7)

c\ u =;. (4.8)

Com essa partição do alfabeto de eventos, podem-se descrever características de sistemas físicos. Assim, o início da operação de uma máquina e o envio de uma mensagem num sistema de comunicação sãoeventos controláveis, enquanto que uma pane, uma perda de mensagem ou o término de operação de uma máquina, sãoeventos não-controláveis. Observe gerador da Figura 4.2.

(69)

Figura 4.2: Gerador da Figura 4.1 com o evento desabilitado.

não-proibido", dado como um subconjunto de L(G). Esse controle pode ser

alcançado conectando o sistema em malha com um supervisorS (um controlador

externo), como na Figura 4.3, sob a restrição queSnunca desabilitará umevento

não-controlável. (S é u habilitado).

Figura 4.3: Controle supervisório em malha fechada.

O sistema resultante em malha fechada é denotado por S=G, nesse caso, a linguagem gerada

L(S=G) L(G) (4.9)

e sua linguagem marcada

Lm(S=G) Lm(G) (4.10)

consistem exatamente das sequências marcadas deGque estão sob o controle de S, tal que,

Lm(S=G) = L(S=G)\Lm(G): (4.11)

(70)

não-proibido" é dado como um subconjunto deLm(G). Assim, uma propriedade importante que S deve satisfazer é ser um supervisor próprio, dessa forma, o sistema sob supervisão S=G é não-bloqueante, ou seja,

L(S=G) = Lm(S=G) (4.12)

Uma vez que as sequências marcadas representam as tarefas concluídas ou registram a realização de alguma operação em particular (por escolha de modelagem), o bloqueio signi…ca que o sistema controlado não pode terminar a execução das tarefas desejáveis.

Dada uma linguagem K Lm(G) existe um supervisor S não-bloqueante

para G, tal que,Lm(S=G) = K se, e somente se,K for controlável.

Quando a linguagem especi…cada K não satisfaz as condições exigidas, ou

seja,K não éLm(G) f echada, nemL(G) controlavel, é necessário encontrar uma sublinguagem K" K, a qual é sempre possível e satisfaz todas as condições restritivamente. Essa linguagem é denominadaSuprema Sublinguagem Controlável K" ou supCont(E), tal que, Cont(E) é o conjunto de linguagens controláveis em K E . Considerando E0

Lm(S=G) E, o problema do controle supervisório possui solução se, e somente se, Cont(E) possui um elemento supremosupCont(E) E0

. Nessas condições,supCont(E)representa o comportamento menos restritivo possível para se implantar no sistema G,

satisfazendo as especi…caçõesE0

eE, segundo CURY (2001). Assim, S é ótimo, tal que,

Lm(S=G) = supCont(E). (4.13) Vários autores têm demonstrado a TCS usando RPs e linguagens. Dentre as abordagens mais conhecidas na literatura tem-se:

No contexto das RPs ordinárias

Imagem

Figura 2.1: Classi…cação dos sistemas.
Figura 2.2: Evolução de um sistema com variáveis discretas.
Figura 2.3: Evolução de um sistema com variáveis contínuas.
Figura 2.6: Componente ajustada (trim) de um gerador.
+7

Referências

Documentos relacionados

Compostos contendo as funcionalidades semicarbazona e tiossemicarbazona também são amplamente pesquisados quanto às suas atividades biológicas, e tem apresentado excelentes

Com efeito, os resultados das análises das propostas envolvendo a produção de gêneros e tipos textuais Oficina de produção e das atividades envolvendo a oralidade Sobre o texto

A formação de dois grupos referentes aos períodos seco e chuvoso dentro de Rio Formoso, supõe que as mudanças climáticas e suas consequências exercem influência nas

Esse tipo de razão está presente nas ações positivas para com os outros, por exemplo, como descrito no livro que inspirou o filme “Pay it forward” (HYDE, 2014) (tradução:

Esta pesquisa estabelece um diálogo entre O cuidado de si em Michel Foucault e a Filosofia Ubuntu: “Eu sou porque nós somos”, no âmbito das teorias contemporâneas

Tendo em vista os fatos supracitados, e com a necessidade de melhorar o processo de ensino/aprendizagem nos cursos de EaD, este trabalho justifica-se por buscar desenvolver

Para vericar a ecácia da utilização da história da matemática como recurso didático no ensino de polinômios foi realizada uma pesquisa com alunos da 1ª série do curso técnico

As relações hídricas das cultivares de amendoim foram significativamente influenciadas pela a deficiência hídrica, reduzindo o potencial hídrico foliar e o conteúdo relativo de