Utilizando redes de Petri multiplexadas na síntese de ... · 40. - Simpósio Brasileiro de...

6
40. SBAI - Simpósio Brasileiro de Automação Inteligente, São Paulo, Sp, 08-10de Setembrodê 1999 Utilizando redes de Petri multiplexadas na síntese de supervisores de sistemas a eventos discretos E.M.M. Costa [email protected] A.M.N.Lima [email protected] Laboratório de Instrumentação Eletrônica Departamento de Engenharia Elétrica Universidade Federal da Paraíba 58109-970 Campina Grande. PB. Brasil. Caixa Postal 10.053 Fax: ++55-83-3101015 Assim, dividimos o artigo como se segue: na seção 2. apresen- tamos as noções de RP LzTr, RPFHT e CTL; na seção 3 intro- duzimos o conceito de RPM e suas linguagens; na seção 4 apre- sentamos o uso das RPM na TCS e os algoritmos de modelagem . e síntese; na seção 5 exemplificamos seu uso e. concluímos este trabalho na seção 6. na fase de síntese do supervisor (Barroso 1996, Sreenivas and Krogh 1992, Sreenivas 1997). Assim, apresentamos aqui uma nova classe de RP, denominada de Rede de Petri Multiplexada (RPM) (Costa 1998), a qual pode compactar várias transições em uma única. com uma função associada, onde os arcos são independentes, definindo uma multiplexação sobre os mesmo em seu disparo. Logo, nossa motivação para seu uso. são as vantagens dela ter as mesmas características (expressividade), das RP LugarfTransição (LzTr), podendo ser usada nos mesmos desígnios ; dar-nos uma visão do sistema tendo uma transição como uma central comandando suas partes; compactar em fór- mulas lógicas as funções de uma RP com Função de Habili- tação de Transições (RPFHT). nas subfunções; modelagem di- reta com as partes de SEDs, que apresentam compartilhamento; compactar várias transições em uma única, sem perda de infor- mação, facilitando a visualização. e manter a abordagem de Bar- roso (Barroso 1996). na síntese de supervisores (modificação mínima nos algoritmos de síntese: AMArA e ACGS. onde. só há mudanças de transições t por subfunções 7). Também, as linguagens de RP são válidas para a RPM. podendo usar tanto as linguagens formais (Hopcroft and Ullman 1979), como a lógica temporal (LT) (Emerson and Halpern 1986. Abadi and Manna 1987. Fix and Grumberg 1996. Galton 1987. Grumberg and Long 1994. Iwanska 1996. Heljanko May, 1997, Knight and Passino 1990. McMillan 1992. Nicola and Vaandrager 1995, Ostroff 1989, Racloz and Buchs 1997. Sakalauskaité 1996. Uchihira and Honiden 1990) na especificação de comportamen- tos. No caso da LT,especificamente a CTL, não há modificação no algoritmo APLT. desenvolvido por Costa (Costa 1997). 2 PRELIMINARES Resumo - Entre os paradigmas usados na modelagem e síntese de Sistemas a Eventos Discretos. as Redes de Petri tomaram-se de grande utilidade. A lógica temporal. por sua vez. tornou-se usual pela sua grande abrangência. substituindo as linguagens formais na especificação de comportamentos. Sendo assim. ap- resentamos aqui. as Redes de Petri Multiplexadas. introduzindo- as na modelagem. análise e síntese de SEDs, juntamente com a C'IL na especificação de comportamentos. para resolver o prob- lema de controle supervisório. Keywords : Redes de Petri, Controle Supervisório, Lógica Tem- poral. Sistemas a Eventos Discretos 1 INTRODUÇÃO Dentre os paradigmas utilizados para a primeira fase da res- olução do problema de controle na Teoria de Controle Super- visório (TCS) (Ramadge and Wonham 1982. Wonham 1987. Ramadge 1989. Ramadge and Wonham 1989. Kumar et ai. 1992). a modelagem. temos as Redes de Petri (RP) (Reisig 1985. Murata 1989. Reisig 1992). Estas são ferramentas matemáticas e gráficas que apresentam muitas vantagens em modelagem e síntese de supervisores de Sistemas a Eventos Discretos (SED) (Zhou and DiCesare 1993. DiCesare et ai. 1993. Evans 1993, Freedman 1991. Holloway et alo 1997. Jensen and Rozenberg 1991. Kumar and Holloway 1996. Proth and Xie 1996. Peterson 1981. Desrochers and Al-Jaar 1995. Zhou and DiCesare 1993. Giua and DiCesare 1994. Balemi et alo 1992). desde que. seu desenvolvimento teórico se modelou às necessidades bási- cas como temporização (Cofrancesco et ai. 1991. Baccelli et ai. 1992. Cohen et ai. 1995. Gaubert et ai. 1995. Gaubert and Mairesse 1997. Felder et ai. 1995. Nicol and Mao 1991. Cofer and Garg 1995.Figueiredo 1994). controle de evolução dinâmica (Krogh 1987. Papelisand Casavant 1992). linguagens (Jantzen 1987, Lilius June , 1993. Lilius September, 1994) e compactação de subsistemas semelhantes (Jensen 1992. Lilius 1995). Elas já foram utilizadas tanto na primeira fase da resolução do problema de controle supervisório (PCS), quanto nas outras duas: pela característica de definição de uma linguagem associada, para a especificação de comportamentos (Costa 1997. Uchihira and Honiden 1990, Jantzen 1987). e peJas características de controle. 533 Definição 1 Uma rede RP=(P.T, A ,K,W ,M o ) de onde: Petri é uma sextupla P={PltP2•...'Pm} é um

Transcript of Utilizando redes de Petri multiplexadas na síntese de ... · 40. - Simpósio Brasileiro de...

40. SBAI - Simpósio Brasileiro deAutomação Inteligente, São Paulo, Sp,08-10de Setembrodê 1999

Utilizando redes de Petri multiplexadas na síntese de supervisores desistemas a eventos discretos

E.M.M. [email protected]

[email protected]

Laboratório de Instrumentação Eletr ônicaDepartamento de Engenharia Elétrica

Universidade Federal da Paraíba 58109-970 Campina Grande. PB. Brasil. Caixa Postal 10.053Fax: ++55-83-3101015

Assim, dividimos o artigo como se segue: na seção 2. apresen-tamos as noções de RP LzTr, RPFHT e CTL; na seção 3 intro-duzimos o conceito de RPM e suas linguagens; na seção 4 apre-sentamos o uso das RPM na TCS e os algoritmos de modelagem. e síntese; na seção 5 exemplificamos seu uso e. concluímos estetrabalho na seção 6.

na fase de síntese do supervisor (Barroso 1996, Sreenivas andKrogh 1992, Sreenivas 1997). Assim, apresentamos aqui umanova classe de RP, denominada de Rede de Petri Multiplexada(RPM) (Costa 1998), a qual pode compactar várias transiçõesem uma única. com uma função associada, onde os arcos sãoindependentes, definindo uma multiplexação sobre os mesmoem seu disparo. Logo , nossa motivação para seu uso. são asvantagens dela ter as mesmas características (expressividade),das RP LugarfTransição (LzTr), podendo ser usada nos mesmosdesígnios ; dar-nos uma visão do sistema tendo uma transiçãocomo uma central comandando suas partes ; compactar em fór-mulas lógicas as funções de uma RP com Função de Habili-tação de Transições (RPFHT). nas subfunções; modelagem di-reta com as partes de SEDs, que apresentam compartilhamento;compactar várias transições em uma única, sem perda de infor-mação, facilitando a visualização. e manter a abordagem de Bar-roso (Barroso 1996). na síntese de supervisores (modificaçãomínima nos algoritmos de síntese: AMArA e ACGS. onde. sóhá mudanças de transições t por subfunções 7). Também, aslinguagens de RP são válidas para a RPM. podendo usar tantoas linguagens formais (Hopcroft and Ullman 1979), como alógica temporal (LT) (Emerson and Halpern 1986. Abadi andManna 1987. Fix and Grumberg 1996. Galton 1987. Grumbergand Long 1994. Iwanska 1996. Heljanko May, 1997, Knightand Passino 1990.McMillan 1992. Nicola and Vaandrager 1995,Ostroff 1989, Racloz and Buchs 1997. Sakalauskaité 1996.Uchihira and Honiden 1990) na especificação de comportamen-tos. No caso da LT, especificamente a CTL, não há modificaçãono algoritmo APLT. desenvolvido por Costa (Costa 1997).

2 PRELIMINARES

Resumo - Entre os paradigmas usados na modelagem e síntesede Sistemas a Eventos Discretos. as Redes de Petri tomaram-sede grande utilidade . A lógica temporal. por sua vez. tornou-seusual pela sua grande abrangência. substituindo as linguagensformais na especificação de comportamentos. Sendo assim. ap-resentamos aqui. as Redes de Petri Multiplexadas. introduzindo-as na modelagem. análise e síntese de SEDs, juntamente com aC'IL na especificação de comportamentos. para resolver o prob-lema de controle supervisório.

Keywords : Redes de Petri, Controle Supervisório, Lógica Tem-poral. Sistemas a Eventos Discretos

1 INTRODUÇÃODentre os paradigmas utilizados para a primeira fase da res-olução do problema de controle na Teoria de Controle Super-visório (TCS) (Ramadge and Wonham 1982. Wonham 1987.Ramadge 1989. Ramadge and Wonham 1989. Kumar et ai.1992). a modelagem. temos as Redes de Petri (RP) (Reisig 1985.Murata 1989. Reisig 1992). Estas são ferramentas matemáticase gráficas que apresentam muitas vantagens em modelagem esíntese de supervisores de Sistemas a Eventos Discretos (SED)(Zhou and DiCesare 1993. DiCesare et ai. 1993. Evans 1993,Freedman 1991. Holloway et alo 1997. Jensen and Rozenberg1991. Kumar and Holloway 1996. Proth and Xie 1996. Peterson1981. Desrochers and Al-Jaar 1995. Zhou and DiCesare 1993.Giua and DiCesare 1994. Balemi et alo 1992). desde que.seu desenvolvimento teórico se modelou às necessidades bási-cas como temporização (Cofrancesco et ai. 1991. Baccelli etai. 1992. Cohen et ai. 1995. Gaubert et ai. 1995. Gaubert andMairesse 1997. Felder et ai. 1995. Nicol and Mao 1991. Coferand Garg 1995. Figueiredo 1994). controle de evolução dinâmica(Krogh 1987. Papelisand Casavant 1992). linguagens (Jantzen1987, Lilius June , 1993. Lilius September, 1994) e compactaçãode subsistemas semelhantes (Jensen 1992. Lilius 1995). Elas jáforam utilizadas tanto na primeira fase da resolução do problemade controle supervisório (PCS), quanto nas outras duas: pelacaracterística de definição de uma linguagem associada, paraa especificação de comportamentos (Costa 1997. Uchihira andHoniden 1990, Jantzen 1987). e peJas características de controle.

533

Definição 1 Uma redeRP=(P.T,A,K,W ,Mo)

deonde:

Petri é uma sextuplaP={PltP2•...'Pm} é um

40. SBAI - SimpósioBrasileirode Automação Inteligente, São Paulo, SP, 08-10 de Setembrode 1999

conjunto finito de lugares; T={t1,t2,"" tn} é um conjunto finito que), F (eventualmente),A (necessariamente), E (possível-de transições; A Ç(P x T)U(T x pré um conjunto de arcos; mente) e G (sempre). As regras básicas de construção são:K:P -+ NU{oo} é a função de capacidade; W:A -+ N+ é a i) uma proposição atômicapEProp é uma fórmula; ii), se],

. função de ponderação; Mo:P -+ N é a função de marcação g são fórmulas, também são [Ug,f /\ g, »], X g. Ff abre-inicial, que satisfaz Vp E P:Mo(p)5: X(p). via trueUf; Gf abrevia -.F-./; I V 9 abrevia -.(-.1/\ -.g);

I:::> 9 abrevia -'1 V9 e I<=? 9 abrevia (f :::> g) /\ (9 :::> f).Estrutura de RP, Erp=(P,T,A,K,W) é uma rede sem marcaçãoinicial . As regras de disparo de transições para sua evoluçãodinâmica são:

Definição 2 A variação da marcação da rede de Petri segue asseguintes regras de disparo das transições:

1. Uma transição t é dita estar habilitada (pronta para disparar)em uma marcação M se e s6 se Vp E P que é entrada det:W(p,t) 5: M(P) e Vp E P que é saída de t:M(p) 5:K(P)-W(t,p);

2. Uma transição habilitada pode ou não disparar;

3. O disparo de uma transição t E T, habilitada na mar-cação M , é instantânea e resulta em uma nova mar-cação M' da rede dada pela equação M'(P)=M(P)-W(p,t)+W(t,p),'v'p E P;

4. A ocorrência do disparo de t , que modifica a marcaçãoM da rede para uma nova marcação M', é denotada porM[t)M' .

Definição 3 Uma rede de Petri com Função de Habilitação deTransição, é uma qu ádrupla RPFHT=(Erp,I,Mo,ip) em queE rp é uma estrutura de RP; l:T -+ é a função que eti-queta as transições, onde é um alfabeto; Mo é a marcaçãoinicial e ...,t/>m}:R(Erp.Mo) -+{O,l} é a função de ha-bilitação das transições, que mapeia o conjunto de marcaçõesalcançáveis em °ou 1;Sua regra de disparos de transições é:

Definição 4 O estado, ou marcação, de uma RPFHT varia deacordo com a seguinte regra de disparo das transições:

1. Uma transição tj é dita habilitada (para disparar) em M see s6 se Vp E P que é entrada de tj :W(p, tj) 5: M(P); VpEP que é saída de tj:M(p) 5: K(P)-W(P, tj) ; t/>j=l;

2. Uma transição habilitada pode ou não disparar;

3. O disparo de uma transição tj E T , habilitada na marcaçãoM , é instantânea e resulta em uma nova marcação M' dadapela equação M'(P)=M(P) -W(p,tj)+W(tj,p),Vp E P;

4. A ocorrência do disparo de tj, que modifica a marcaçãoM da rede para uma nova marcação M', é denotado porM[t)M'.

Definição 5 Computation Tree Logic - CTL

1. Sintaxe: Fórmulas CTL são construídas a partir de um con-junto de proposições atômicasProp={Pl ,...}, conectivosl6gicos V, /\, -. e operadores temporais X (próximo), U (até

534

2. Semântica: X I é lido como I é verdadeiro no próx-imo estado, [U9 é lido como I é verdadeiro até que 9seja verdadeiro, AI é lido como I é necessariamente ver-dadeira e AOI é lido como necessariamente I é sempreverdadeira (ver (Racloz and Buchs 1997, McMillan 1992,Costa 1997)).

3 REDES DE PETRI MULTIPLEXADAS

Definição 6 Uma Rede de Petri Multiplexada, é uma quin-tupla RPM=(Erp,RA,RT,Mo,iI!)onde: E rp é uma estru-tura de RP; RA:A -+ é a função que etiqueta os ar-cos, onde é um alfabeto; RT : T -+ é a funçãoque etiqueta as transições; Mo é a marcação inicial eiI!={1/Jv...,'l/Jd:R(Erp, Mo, RA, RT) -+{O,l} é a função de ha-bilitação das transições para o conjunto de arcos da rede.

As funções 'l/Jk, são funções referentes às transições t», com-postas por subfunções TI(M(Pj),Wiai), formadas por if. .. then(:::}), dependentes da marcação do lugarPj, que o arcoai (arco entre uma transição e um lugar), e ui; é o peso destearco. Os índices i, i. k e Lsão as cardinalidades de A, P, T e T

respectivamente, onde 1depende de T entre os lugares e os ar-cos a que estas subfunções se ligam. Então, 'l/Jk é definida por'ljJk(TI(M(Pj),Wiai))=V TI(lv.f(Pj),Wiai).

I

Com a introdução das funções de multiplexagem, ahabilitaçãode uma transição para um conjunto de arcos que a ela se liga édada por:

Definição 7 A marcação de uma Rede de Petri Multiplexada,varia de acordo com a seguinte regra de disparos de transições:

1. Uma transição tk é dita estar habilitada (para disparar)na marcação M, para um arco ai, se e somente se:VPj E P que é entrada de tk:W(Pj, tk) 5: M(pj),VPj E P que é saída de tk:M(Pj) 5: K(pj)-W(tk,Pj) e'l/Jk(TI(M (Pj ),Wiai) )=1

2. Uma transição tk habilitada, pode ou não disparar;

3. O disparo de uma transição tk E T, habilitada na marcaçãoM, é instantânea e resulta em uma novamarcaçãoM', dadapela equação M'(pj)=M(pj)-W(Pj,tk)+W(tk,pj),'v'Pj EP;

4. A ocorrência do disparo de tk, que modifica a marcaçãoM da rede para uma nova marcação M', é denotada porM[tk)M'.

Observamos que, nesta nova classe de RP, a marcação da redevaria com a função da transição que define quais arcos devem.ser acionados, de um conjunto de lugares para outro. Assim,esta rede difere das demais, por que, quando uma transição dis-para, não depende de todo o conjunto de lugares de entrada e de

40. SBAI - Simpósio Brasileirode Automação Inteligente, São Paulo, SP, 08-10de Setembrode-1999

·'(a)

RPM

.',.,11,1 lJ (ç)

Figure 1: Exemplo 1

P,

saída da transição e toda transição tem uma função lógica associ-ada. Se esta não aparece, a mesma tem valor sempre verdadeiro(7/J=I), e está semprehabilitada para todos os seus arcos. Comeste valor, o lugar que recebe um arco tem capacidade infinita,se não for declarado. De outra forma, a função capacidade nor-malmente é definida na própria função 7/J. Todas as propriedadesdas RP Ltrr são válidas para as RPMs, só que em relação às sub-funções T que compõem as funções 7/J. Também, vemos que aRPM pode incluir uma função de habilitação de transição comoumaRPFHT.

Na figura I(a), temos uma RPM, com suas equivalentes RPFHT(fig. 1(b» e RP Lffr (fig. 1(c». Na RP Lffr. temoscapacidade em alguns lugares, o que impede das transiçõesh e ts dispararem, quando esta marcação é alcançada. NaRPFHT, as funções ligadas a estas transições são definidas portpl=[M(Pd<4] e tps=[M(P4)<5], e garantem suas desabili-tações, eliminando a função de capacidade. Na RPM, temos umacompactação das transições da rede . As funções definidas parasuas transições são dadas por

7/Js={(M(P4)=4 VM(ps)=O) =} tS:-.(a6 1\ as)} e,

7/J2={(M(pI)=3 =} -.t2)V(M(ps)=O =} t2:-.aS)} .

Vemos que as funções das transições t2 e ts (7/J-i e 7/Js respec-tivamente), são constituídas por subfunções T, formadas por=}, que dependem das marcações em alguns lugares, e dos ar-cos ligados a estas transições. Então , as funções eliminam afunção de capacidade e compactam a rede. Assim, na marcaçãoMo = [2000]T, as transições habilitadas são tI e t2. e t2 valesó para o arco'a4, o que equivale a transição tI da RPFHT, ena marcação M = [OOI4]T, as transições habilitadas são tz e

535

ts, onde ts desabilita os arcos a6 e as, procedendo ao que faz afunção tps da RPFHT.

3.1 Linguagens de RPMsUma RPM tem uma linguagem associada representada por se-qüências de disparos das transições, associando as palavras comas subfunções dadas em suas transições, juntamente com tran-sições (caso sempre 7/J=I). definindo um caminho que nos levade uma marcação para outra, denotada por M[S>M' , onde Sé uma palavra, pertencente ao conjunto de transições t E T ede subfunções T E 7/J. formada de acordo com as regras 'da teo-ria de linguagens formais. Na figura 2 temos uma RPM e sualinguagem.

4 TCS E ALGORITMOSA idéia apresentada por Barroso (Barroso 1996). é sintetizar umsupervisor para um SED modelado por uma RP LzTr, onde, coma análise da árvore de alcançabilidade da mesma, gerada peloAMArA, e com a especificação de comportamento, determi-namos funções de habilitação de transições, pelo ACaS, paracriar a RPFHTsupervisora que tem a mesma estrutura da RPque modela o SED. Assim, usando o mesmo procedimento, euma RPM como modelo do sistema, criamos outra RPM queirá supervisioná-lo. Logo, modelamos o SED e, a partir deste,geramos a árvore de alcançabilidade, definimos a 'tarefa a serexecutada em CTL, como feito em Costa (Costa 1997), e sinte-tizamos o supervisor, resolvendo o PCS. Logo, os algoritmos demodelagem e síntese por RPM, são: .

Algoritmo 1 AlgoritmoparaModelagemde SEDs

1. Para cada parte (máquinas, esteiras, buffers, lugares de ar-mazenamento de recursos, lugares de entrada de materialpara processamento, lugares de saída do produto final, etc.)do SED, crie um lugar;

2. Para cada evento, crie uma subfunção T, da seguinte forma:

a) Coloque as condições que levam o evento a acontecer;b) Determine quais as subfunções que irão formar as mul-

titransições associadas;

c) Coloque os arcos que ligam o evento às partes do sis-tema no acontecimento do mesmo, com as respecti-vas multitransições e una os lugares com a transição tpelos respectivos arcos;

d) Una as subfunções T com funções lógicas OR (V) e façaa função 7/Jk' referente a cada multitransição;

3. Coloque a marcação inicial para o sistema.

Algoritmo 2 Algoritmoda Arvorede Alcançabilidade

.Passo 1) Rotule a marcação inicial Mode raiz e sinalize-a comf1ova;

Passo 2) Enquanto houver marcações nova, faça:

1. Escolha uma nova marcação M ;

40. SBAI - SimpósioBrasileiro deAutomação Inteligente, São Paulo, Sp,08-10de Setembro de 1999

2. Se M for idêntica a outra marcação no caminho da raiz até O passo 5 se processa da seguinte forma:M, sinalize-a com antiga e vá para uma outra marcação;

3. Se nenhuma transição que tenha uma função 'I/J que estejacom todos os valores de suas subfunções 7 falsos em M, 'sinalize-a como bloqueada;

4. Enquanto existirem transições com funções respectivas 'I/J esubfunções 7 verdadeiras em M, para cada transição habil-itada, faça o seguinte:

i) Obtenha a marcação M' que resulta do disparo da tran-sição t com um valor verdadeiro em uma das sub-funções 7 de 'I/J em M ;

ii) Se no caminho da raiz até M' existir umamarcaçãoMiltal que M'(p) M"(P) para cada lugar p eM' :f=Mil , então substitua M' (P) por w para cada p tal queM'(P»M"(P);

ili) Introduza M' como um nó, desenhe um arco com ró-tulo t (caso sua função associada 'I/J sempre tiver valorpadrão 1), ou 7 (caso a transição t tenha uma função 'I/Jcomposta por subfunções 7), de M para M' e etiqueteM' com nova; .

Neste algoritmo usamos t quando sua função associada é sem-pre 'I/J=1 (não há etiquetamento da função na transição). Casocontrário, colocamos a subfunção que muda a marcação.

Algoritmo 3 Algoritmo para a Construção da Suprema Lin-guagem Controlável

1. Criar uma lista dinâmica, lista-bloc, e incluir na mesma os'estados ou marcações bloqueadas, incluindo as marcaçõesdo tipo não-permitida, onde M:M[tj>O é uma marcaçãobloqueada e M :M(Pi)=W é uma marcação não-permitida;

20Adicionar à lista-bloc os estados, não marcados, cuja únicatransição habilitada, se disparada, leva o sistema a um es-tado bloqueado, ou seja, M:M[tj>M', tj é única tran-sição habilitada em M,M rt Qm e M' Elista-bloc ;

3. Criar uma lista, lista-perigo, com os estados antecessoresdos elementos (estados) da lista-bloc, juntamente com oevento que os liga, desde que o antecessor não esteja nalista-bloco Esses eventos deverão estar sempre desabili-tados quando o sistema se encontrar nesses estados, ou .seja, 3{3 E L:cJl(tj)={3 e M[tj>M', eM rtlista-bloc eM' Elista-bloc;

4. Adicionar à lista-perigo os estados nos quais exista pelomenos uma transição habilitada, etiquetada por um eventonão controlável, cujo disparo da transição leve o sis-tema para uma marcação na lista-bloc, ou seja 30: EL:u,l(tj)=O: e M[tj>M',M' Elista-bloc;

5. Dada a especificação desejada para o sistema, encontre asuprema linguagem controlávet- SupC(L);

6. Adicionar à lista-perigo os estados e seus respectivos even-tos de saída a serem desabilitados para que a linguagemexecutada, desde que estes estados não estejam ainda nalista-perigo, ou seja, 3{3 E I: cJl(t j )={3 e M[tj>M', eM rtlista-perigo eM' rt G(Sup C(L)) .

536

Algoritmo 4 Passo 5 do ACGS

• Dados o gerador trim e o gerador H (especificação), faça:

I. Adicione à lista-bloc os estados que não satisfazemL:(H (x)) n s, ç L: (x);

2. Para cada estado xi, na lista-bloc, adicione à lista-bloc :

a) os estados zq : (30'u E L:u)Xi=Ç(lTu,Xj);b) os estados Xk : (30'c E L:c) Xi=Ç (O'c,Xk)/\Xk rt Xm /\

1L:(Xk)l=l; .

3. Encontre a componente acessível do gerador resultante.

Temos que, neste algoritmo falamos de transições, e não de sub-funções. Porém, da mesma maneira que dizemos que uma tran-sição está habilitada, é para um determinado conjunto de sub-funções 7 que a compõe, o mesmo deve ser visto considerando-se as funções 'I/J das transições.

5 EXEMPLO DE APLICAÇÃOSeja o sistema de manufatura, visto na figura 3(a), o qual é umambiente em que temos um braço robótico central (megatran- .sição t) programado para estar levando itens de um lugar paraoutro, usando recursos do sistema (lugar P7) , executando tare-fas. Pelo algoritmo 1, modelamos o sistema por uma RPM (fig.3(b». Podemos ver como a RPM nos dá a forma de ver o sis-tema igual ao ambiente real, resolvendo a primeira fase do PCS.·Vemos no modelo, que o sistema tem seis usuários e oito recur-sos disponíveis, onde os usuários compartilham estes recursos(que são indistinguíveis), e estes são limitados a um máximo decinco por usuário. Então, as fichas do lugarP1 são as peças queserão processadas pelas outras estações (lugares ]J2,P3,P4,P5 eP6), e o lugar P7 contém as ferramentas para processar os itens(fichas em P1). Temos que, para o fim do processamento de umapeça, o SED está com cinco ferramentas em uso. Após o tér-mino deste, todas elas são devolvidas. Também vemos que maisde uma peça pode ser processada em paralelo. Mas, para o es-tado inicial do sistema, Mo=[6000008]T, temos um bloqueio seseguirmos a seqüência 7172717271717373727371, onde seu es-tado será M'=[l203000]T, e neste a função

'Ij; = («M(P1) 1/\M(P7) 1) => t : a1/\ a12/\ a3)V1/\ MCP7} 2) => t : a2/\ 2a12/\ as)V

«M(P3) 1) => t : a4 /\ all /\ a7)V«M(P4) 1/\M(P7) 3) => t : a6 /\ 3a12 /\ a9)V«M(ps) 1) => t : as /\ 5all /\ alO)}

da transição t é falsa para todas as subfunções que a compõe (71,... , 7S, respectivamente).

o algoritmo 2 nos dá a árvore de alcançabilidade deste modeloque tem 162 marcações distintas alcançáveis. Nosso interesse,é a marcação M=[0000068]T, isto é, todos os usuários com-pletaram a tarefa . Logo, damos como especificação de compor-tamento: todas as peças devem ser processadas, até no máx-imo, duas em paralelo . Em CTL, temos Al71/\ G/(71U7'i) /\X(-"T1UA/75).

40. SBAI - SimpósioBrasileirode Automação Inteligente, São Paulo, Sp,08-10 de Setembrode'1999A execução do ACGS (algoritmo 3), dá-nos a lista-perigo vistana figura 4. Nela, temos todos os estados que não podem MlquWI 0"""",,2ser alcançados, os quais levam o sistema a bloqueio. Pela es- O . Opecificação de comportamento dada, vemos que a mesma nãose encontra na lista-perigo, o que quer dizer que temos uma R gseqüência aceitável que não leva o sistema a bloqueio se a 8 'OlUqoW' (a)

subfunção TI for modificada, de tal forma que a RPM siga ==sempre uma das seqüências: (TITIT2T2TSTST4TST4TS)* ou Bnço-

(TITIT2T2TST4TSTST4TS)* ' D

Figure 4: Lista das marcações e eventos a serem desabilitados

Figure 3: Sistema de manufatura com um braço robótico e mo-deloemRPM

Eventos a Mmtaç6es Eventos. MIlC3Ç6cs IdtsabiliUt plp2D3p4pSp6p1 dcs:1bili1U pl p2p3p4pSp6p7 l

2 4 0 0 0 0 4 2 310002

I23 10 0 02 23 0 1 0 0 32301003 I 3 I O O I 2

"1 1400014 11 1 3 O 1 O I 3I 3 1 O O I 2 03100221 3 O I O I 3 030102311110 2 2 O I I I O 3 21 1 02023 0 10 20 33

I I I I O 2 2110 20 23

u'::.f<' 1:'1 't1

(b)

Isaac Newton Institute (Cambridge UniversityPress l. Gunawar-dena Ed.).

Costa, E. M. M. (1997). Contribuiçãoao uso da lógica temporal na es-pecifica ção de comportamentosde sistemas a eventos discretos.Master's tbesis. UniversidadeFederal da Paraíba · Campus II -CampinaGrande, Paraíba, BR.

Costa,E. M. M. (1998).Sintese de Supervisores para Sistemas a Even-tos Discretos: Uma Abordagem via Redes de Petri Multiplexadas.Relatório de Projetoe Pesquisa. UniversidadeFederal da Paraíba,COPELE,CampinaGrande, PB, Brasil.

Desrocbers,A. A. and R. Y. Al-laar (1995). Applications ofPetri Netsin Manufacturing Systems: Modeling, Control, and PerformanceAnaiysis. IEEE Press.

DiCesare, F., G. Harbalakis, l. M. Protb, M. Silva and F. B. Vernadat(1993) . Practice of Petri Nets in Manufacturing, Cbapman andHall .

Emerson, E. A. and J. Y.Halpem (1986). "sometimes" and "not never"revisited: on brancbingversus linear time temporallogic. JournaloftheACM33(1),151-178. .

Evans, J. B. (1993). The Devnet: a Petri Netfor Discrete Event Simula-tion . Springer-Verlag.

Felder,M., A. Gargantini and A. Morzenti (1995). A tbeory of imple-mentationand refinementin timedpetri nets.Tecbnicalreporto Po-IitecnicodiMilano.

6 CONCLUSÃO

REFERÊNCIAS BIBLIOGRÁFICAS

Logo, ficamos com uma nova RPM, igual na estrutura, mas quetem só a subfunção TI diferente no valor de teste sobre o lugarP7, dada pOfTl=(M(pl) => t :al A a12 A as.Esta, impede que o sistema pare de operar, fazendo a tarefacomo requerido. Com isto, vemos que a RPM pode ser us-ada na mesma abordagem de Barroso (Barroso 1996) utilizandocomo especificação de comportamentos, a CTL, como em Costa(Costa 1997). Vemos também, que a estrutura para análise vi-sual não aparenta simplicidade, pois que a rede trabalha como seestivéssemos numa central de comandos, nos comunicando comcada parte do sistema, onde mandamos e recebemos mensagens.

Introduzimos aqui o uso da RPM na resolução do PCS, ondeencontramos, como em todos os métodos, vantagens como: amesma expressividade, das RP Llfr, a visualização do sistemacomo um sistema centralizado enviando comandos às partes dosistema, a compactação em fórmulas lógicas das funções dehabilitação de .transições das RPFHT, modelagem direta comas partes de' SEDs que apresentam compartilhamento, a com-pactação de transições sem perdas de informação, facilitando avisualização, e abordagem igual a de Barroso (Barroso 1996) , nasíntese de supervisores, desde que os algoritmos de sín tese nãotêm grandes diferenças, além de podermos usar tanto as lingua-gens formais como a CTL na especificação de comportamentose, desvantagens, as quais são em termos de análise de evoluçãodinâmica, pois há a necessidade da avaliação das funções dastransições', como as RP de alto nível. Logo, temos que o uso daRPM é também um paradigma válido para a TCS.

Abadí, M. and Z.Manna (1987). Temporal logic programming. Pro-ceedings 1987 Symposium on Logic Programming pp. 4-16.

Baccelli, F., G. Coben and B. Gaujal (1992). Recursive equations andbasic properties of timed petri nets. Discrete Event DynamicalSystems: Theory and Applications pp. 415-439.

Balerni, S., Kozák, P. and R.Smedinga, Eds.) (1992). Discrete Event. Systems: Modeling and Control. Birkhãuser - Proceedings of a

Joint WorksbopHeld in Prage.

Barroso,G. C. (1996). UmaNovaAbordagem para a Síntese de Super-visoresde Sistemas a EventosDiscretos. PhD thesís.UniversidadeFederalda Paraíba - Campusn.Campina Grande, Paraíba - BR.

Cofer, D. D. and V. K. Garg (1995). Supervisory control of real timediscrete-event systems sing lattice tbeory. IEEE Transactions 011

AutomaticContro141(2), 199-209.

Cofrancesco, P., A. Cristoforetti and R. Scattolini (1991). Petri netsbasedapproacbto softwaredevelopment for real-timecontrol.IEEProceedings-D Control The01Y and Applications 138(5), 474-478.

Coben, G., S. Gaubert and J. P. Quadrat (1995). AIgebraic systemanalysis of timed petri nets. In : Idempotency - Collection of the

537

40. SBAI - SimpósioBrasileirode Automação Inteligente, São Paulo, Sp,08-10de Setembrode 1999

Figueiredo, J. C. A. (1994) . Redes de Petri com Temporização Nebu- Murata,T. (1989) . Petri nets: Properties, analysis and applications.Pro-. losa. PhD thesis. Universidade Federal da Paraíba - Campus II. ceedingsofthe IEEE 77(4), 541-580.

CampinaGrande, Paraíba - BR. Nicol, D. M. and W. Mao (1991). Automated parallelization of timed. Fix, L. and O. Grumberg (1996). Verification of temporal properties. petrí-net simulations. In: Proceedingsofthe 1991WinterSimula-

Ioumal ofLogic antiComputation 6(3), 343- 361. tion Conference.Freedman, P. (1991). Time, petri nets, and robotics.IEEE Transactions Nicola, R. De and F. Vaandrager (1995). Three logics for branching

on AutomaticControI7(4), 417-433. bisimulation. Joumal ofthe ACM 42(2),458-487.

Galton, A. (1987). Temporal Logics anti their Applications. Academic Ostroff, J. S. (1989) . Temporal Logic for Real-Time Systems. ResearchPress. Studies Press Lld.

Gaubert, S. and J. Mairesse (1997) . Modeling and analysis of timedpetri nets using heaps of pieces. Toappear on the IEEE Transac-tions on AutomaticControl.

Gaubert, S., J. P. Quadrat andG. Cohen (1995) . Asymptotic throughputof continuous timed petri nets. In: Proc. Of the 34th Conferenceon Decisionand Control, New Orleans.

Giua, A. and F. DiCesare (1994) . Blocking and controllability of petrinets in supervisorycontroI.IEEETransactionsonAutomaticCon-troI39(4), 818-823.

Grumberg, O. and D. E. Long (1994 ). Model checking and modularverification. ACM Transactions on Programming LanguagesantiSystems 16(3), 843-871.

Heljanko,K. (May, 1997) . Model checking the branching time temporallogic ctl. TechnicalReport 45. Helsinki University of Technology- Otaniemi, Finland.

Holloway, L. E., B. H. Krogh and A. Giua (1997). A survey of petrinet methods for controlled discrete event systems. DiscreteEventSystems: Theory andApplications pp. 131-190.

Hopcroft, J. E. and J. D. Ullman (1979 ). Introductionto AutomataThe-ory, Languages and Computation.Addison-Wesley, USA.

Iwanska, L. (1996) . Natural (language) temporal logic: Reasoningabout absolute and relative time. Intemational Journal ofExpertSystems 9(1) , 113-149.

Jantzen, M. (1987). Language theory of petri nets, central models andtheir properties. In: Advances in Petri Nets, Lectures Notes inComputerSciences. pp. 397-412.

Jensen, K. (1992) . Coloured Petri Nets - Basic Concepts, AnalysisMethods and Practical Use. VoI. 1 : Basic Concepts, Springer-Verlag.

Jensen, K. and G. Rozenberg (1991) . High Levei PetriNets Theory andApplications.Springer Verlag.

. Knight,J. F.andK.M. Passino (1990). Decidabilityfor a temporallogicused in discrete-event system analysis. IntemationaI JoumaI ofControI52(6), 1489-1506.

Krogh, B. H. (1987) . Controlled petri nets and maximally permissivefeedback logic. In: 25th AnnuaI Allerton Conference. Universityoflllinois Urbana, USA. pp. 317-326.

Kumar,R. and L. E.Holloway (1996). Supervisory control of determin-istic petri nels with regular specification languages. IEEE Trans-actions onAutomaticControI41(2), 245-249.

Kumar, R., V. Garg and S. I. Marcus (1992). On supervisory controlof sequential behaviors, IEEE Transactionson Automatic ControI37(12), 1978-1985.

Lilius, J. (1995). On The Structure of High-Level Nets. PhD thesis.Helsinki Universityof Technology - Otanierni, Finland.

Lilius, J. (June, 1993). A sheaf semantics for petri nets. Technical Re-port 23. Helsinki UniversityofTechnology - Otaniemi, Finland.

Lilius, J. (September, 1994). On the folding of algebraic nets, TechnicalReport30. HelsinkiUniversityofTechnology - Otaniemi, Finland.

McMillan, K. L. (1992). Symbolic Model Checking: An Approach tothe State Explosion Problem. PhD thesis. Carnegie Mellon Uni-versity.

538

Papelis,A. andT. L.Casavant (1992) . Specification and analysis ofpar-allelldistributedsoftware and systems by petri nets with transitionenabling functions. IEEE Transactions on Software Engineering18(3),252-261.

Peterson, J. L. (1981). PetriNet TheoryantiModeling ofSystems.Pren-tice Hall.

Proth, J-M and X. Xie (1996). PetriNets: A Toolfor Design andMan-agementofManufacturingSystems. John Wileye Sons Ltd.

RacIoz, P. and D. Buchs (1997) . Symbolic proof of ctl formulae overpetri nets. Technical reporto C.U.I. University of Geneva.

Ramadge, P. J. G. (1989). Some tractable supervisory control prob-lems for discreteevent systems modeled by büchi automata. IEEETransactions on Automatic CdntroI34(l), 10-19.

Ramadge, P. J. G. and W.M. Wonham (1982). Supervision of discreteevent processes. Procedings of21st Conference on DecisionantiControlpp. 1228-1229.

Ramadge, P. J. G. and W.M. Wonham (1989). The control of discreteevent systems.Proceedingsofthe IEEE 77(1),81-98.

Reisig, W. (1985) . PetriNets: an Introduction.Springer-VerlagBerlinHeidelberg.

Reisig, W. (1992). A Primer in PetriNet Design. Springer-Verlag.Sakalauskaité, J. (1996) . Nonclasual resolution system for branching

temporal logic. Technical reportoInstitute of Matematics and In-formatic. Lithuania.

Sreenivas, R. S. (1997). On the existence of supervisory policies thatenforces liveness in discrete-event dynarnic systems modeled bycontrolled petri nets, IEEE Transactions on Automatic ControI42(7), 928-945.

Sreenivas, S. R. and B. H. Krogh (1992). On petri net models of in-finite state supervisors. IEEE Transactionson Automatic Control37(2),818-823.

Uchihira, N. and S. Honiden (1990) . Verificationand synthesis of con-current programs using petri nets and temporal logic. Technicalreporto Institute for NewGeneration Computer Technology.

Wonham,P.J. G. Ramadge E W.M. (1987) . Modular feedback logic fordiscrete event systems. SIAMJoumaI ofControlandOptimization25(5), 1202-1218.

Zhou, MC. and F. DiCesare (1993). Petri Net Synthesis for DiscreteEvent ControlofManufacturing Systems. KluwerAcademicPub-Iishers.