• Nenhum resultado encontrado

Explorando o uso de abstrações na implementação de controladores para sistemas a eventos discretos

N/A
N/A
Protected

Academic year: 2021

Share "Explorando o uso de abstrações na implementação de controladores para sistemas a eventos discretos"

Copied!
58
0
0

Texto

(1)

UNIVERSIDADE TECNOL ´OGICA FEDERAL DO PARAN ´A DEPARTAMENTO ACAD ˆEMICO DE INFORM ´ATICA

CURSO DE ENGENHARIA DE COMPUTAC¸ ˜AO

MARCELO ROSA

EXPLORANDO O USO DE ABSTRAC

¸ ˜

OES NA

IMPLEMENTAC

¸ ˜

AO DE CONTROLADORES PARA

SISTEMAS A EVENTOS DISCRETOS

TRABALHO DE CONCLUS ˜AO DE CURSO

PATO BRANCO 2016

(2)

MARCELO ROSA

EXPLORANDO O USO DE ABSTRAC

¸ ˜

OES NA

IMPLEMENTAC

¸ ˜

AO DE CONTROLADORES PARA

SISTEMAS A EVENTOS DISCRETOS

Trabalho de Conclus ˜ao de Curso de graduac¸ ˜ao, apresentado `a disciplina de Trabalho de Conclus ˜ao de Curso 2, do Curso de Engenharia de Computac¸ ˜ao do Departamento Acad ˆemico de Inform ´atica - DAINF - da Universidade Tecnol ´ogica Federal do Paran ´a -UTFPR, C ˆampus Pato Branco, como requisito parcial para obtenc¸ ˜ao do t´ıtulo de Engenheiro de Computac¸ ˜ao

Orientador: Prof. Dr. Marcelo Teixeira Coorientador: Prof. Dr. Gustavo Weber Denardin

PATO BRANCO 2016

(3)

TERMO DE APROVAÇÃO

Às 8 horas e 30 minutos do dia 08 de dezembro de 2016, na sala V103, da Universidade Tecnológica Federal do Paraná, Câmpus Pato Branco, reuniu-se a banca examinadora composta pelos professores Marcelo Teixeira (orientador), Gustavo Weber Denardin (coorientador), Cesar Rafael Claure Torrico e Marco Antonio de Castro Barbosa para avaliar o trabalho de conclusão de curso com o título Explorando o uso de abstrações na implementação de controladores para sistemas a eventos discretos, do aluno Marcelo Rosa, matrícula 1436244, do curso de Engenharia de Computação. Após a apresentação o candidato foi arguido pela banca examinadora. Em seguida foi realizada a deliberação pela banca examinadora que considerou o trabalho aprovado.

______________________________ ______________________________

Marcelo Teixeira Gustavo Weber Denardin

Orientador (UTFPR) Coorientador (UTFPR)

______________________________ ______________________________ Cesar Rafael Claure Torrico Marco Antonio de Castro Barbosa

(UTFPR) (UTFPR)

______________________________ ______________________________ Beatriz Terezinha Borsoi Pablo Gauterio Cavalcanti

Coordenador de TCC Coordenador do Curso de

Engenharia de Computação A Folha de Aprovação assinada encontra-se na Coordenação do Curso.

Ministério da Educação

Universidade Tecnológica Federal do Paraná Câmpus Pato Branco

Departamento Acadêmico de Informática Curso de Engenharia de Computação

(4)

RESUMO

ROSA, Marcelo. Explorando o uso de abstrac¸ ˜oes na implementac¸ ˜ao de controladores para sistemas a eventos discretos. 2016. 57 f. Trabalho de Conclus ˜ao de Curso 2 - Curso de Engenharia de Computac¸ ˜ao, Universidade Tecnol ´ogica Federal do Paran ´a, C ˆampus Pato Branco. Pato Branco, 2016.

Na Teoria de Controle Supervis ´orio (TCS) de Sistemas a Eventos Discretos, o refinamento de eventos tem sido explorado para simplificar a tarefa de modelagem. As Aproximac¸ ˜oes complementam essa abordagem como uma alternativa para reduzir o esforc¸o na s´ıntese. Apesar das vantagens na etapa de modelagem e s´ıntese, refinamentos n ˜ao cobrem diretamente a fase de implementac¸ ˜ao. Em geral, controladores obtidos com ou sem refinamentos s ˜ao implementados com o mesmo custo de hardware. Este trabalho prop ˜oe uma arquitetura descentralizada que estende os ganhos provenientes dos refinamentos da s´ıntese para implementac¸ ˜ao. A abordagem proposta separa supervisor e distinguidor em duas estruturas distintas, as quais se comunicam de tal forma que o resultado da ac¸ ˜ao de controle sobre a planta ´e equivalente a vers ˜ao centralizada, por ´em com custo de implementac¸ ˜ao reduzido. Al ´em disso, ´e apresentada uma alternativa para implementar o comportamento do distinguidor utilizando um modelo gen ´erico composto por dois estados, o qual espera-se estender para qualquer distinguidor.

Palavras-chave: Sistema a eventos discretos, Controle Supervis ´orio, Distinguidores, Implementac¸ ˜ao.

(5)

ABSTRACT

ROSA, Marcelo. Exploring the use of abstractions in the implementation of controllers for discrete event systems. 2016. 57 f. Trabalho de Conclus ˜ao de Curso 2 - Curso de Engenharia de Computac¸ ˜ao, Universidade Tecnol ´ogica Federal do Paran ´a, C ˆampus Pato Branco. Pato Branco,

In the Supervisory Control Theory (SCT) of Discrete Event Systems, the refinement of events has been explored to simplify the modeling task. Approximations complement this approach as an alternative to reduce effort in synthesis. In spite of the advantages in the modeling and synthesis step, refinements do not directly cover the implementation phase. In general, controllers obtained with or without refinements are implemented with the same hardware cost. This paper proposes a decentralized architecture that extends the gains from the refinements of the synthesis to implementation. The proposed approach separates supervisor and distinguisher in two distinct structures, which communicate in such a way that the result of the control action on the plant is equivalent to the centralized version, but with reduced implementation cost. In addition, an alternative to implement the distinguisher behavior is presented using a generic two-state model, which is expected to extend to any distinguisher.

Keywords: Discrete-Event Systems, Supervisory Control, Distinguishers, Implementation.

(6)

LISTA DE FIGURAS

Figura 1: Exemplo de Aut ˆomato Finito . . . 20

Figura 2: Modelagem da planta de um SED . . . 24

Figura 3: Modelagem de uma especificac¸ ˜ao . . . 25

Figura 4: Fluxo de controle . . . 27

Figura 5: Exemplo de um SED . . . 30

Figura 6: Modelos para os subsistemasM1 eM2 . . . 30

Figura 7: Modelo global do sistema . . . 31

Figura 8: Modelo da especificac¸ ˜ao de controleE . . . 31

Figura 9: Diagrama de blocos interac¸ ˜ao deD e G . . . 34

Figura 10: Arquitetura de controle supervis ´orio com distinguidor predit´ıvel . . . 35

Figura 11: Modelo do distinguidorHy = H1f HxfHn . . . . 38

Figura 12: Modelos deEdU eEdO . . . 39

Figura 13: Modelos para as plantasG1 aeG 2 a . . . 39

Figura 14: Implementac¸ ˜ao descentralizada de controladores . . . . 47

(7)

LISTA DE TABELAS

1 Resultado da s´ıntese para o PCS e PCS-D - estados (transic¸ ˜oes) 40 2 Resultado da s´ıntese para o PCS, PCS-D e PCS-D com

aproximac¸ ˜oes - estados (transic¸ ˜oes) . . . 45 3 Comparac¸ ˜ao do uso de mem ´oria . . . 46 4 Delay da comunicac¸ ˜ao mestre-escravo . . . 54

(8)

SUM ´ARIO

1 INTRODUC¸ ˜AO . . . . 9

1.1 CONSIDERAC¸ ˜OES INICIAIS . . . 9

1.2 OBJETIVOS . . . 12

1.2.1 Objetivo Geral . . . 12

1.2.2 Objetivos Espec´ıficos . . . 12

1.3 JUSTIFICATIVA . . . 13

2 REFERENCIAL TE ´ORICO . . . 16

2.1 SISTEMAS A EVENTOS DISCRETOS . . . 16

2.2 MODELAGEM DE SISTEMAS A EVENTOS DISCRETOS . . . 17

2.2.1 Teoria de aut ˆomatos e linguagens . . . 18

2.2.2 Operac¸ ˜oes sobre aut ˆomatos e linguagens . . . 20

2.2.3 Modelagem de SED usando aut ˆomatos . . . 23

2.3 TEORIA DE CONTROLE SUPERVIS ´ORIO . . . 26

2.3.1 Exemplo de um sistema a eventos discretos . . . 29

2.4 TEORIA DE CONTROLE SUPERVIS ´ORIO COM DISTINGUIDORES 32 2.4.1 Construc¸ ˜ao de um distinguidor . . . 35

2.4.2 Exemplo de um SED com Distinguidor . . . 37

2.4.3 Aproximac¸ ˜oes no PCS-D . . . 41

2.4.4 Exemplo de aproximac¸ ˜oes em PCS-D . . . 44

3 RESULTADOS . . . 46

3.1 ARQUITETURA PROPOSTA . . . 47

(9)

3.2.1 Implementado um sistema de controle para o exemplo . . . 50 3.2.1.1 Supervisor . . . 50 3.2.1.2 Distinguidor . . . 52 3.3 ASPECTOS DE IMPLEMENTAC¸ ˜AO . . . 53 4 CONCLUS ˜AO . . . 55 REFER ˆENCIAS . . . 56

(10)

9 1 INTRODUC¸ ˜AO

Este de Trabalho de Conclus ˜ao de Curso (TCC) explora um aspecto pertinente em projetos de automac¸ ˜ao a eventos discretos, que ´e a complexidade enfrentada na etapa de s´ıntese e implementac¸ ˜ao de um controlador. A literatura vem abordando v ´arios aspectos relacionados `a simplificac¸ ˜ao do processo de s´ıntese e, neste trabalho, o objetivo ´e propagar esses m ´etodos de simplificac¸ ˜ao tamb ´em para as etapas de implementac¸ ˜ao.

Este cap´ıtulo apresentar ´a uma vis ˜ao geral sobre o assunto e a contextualizac¸ ˜ao em termos de pesquisas e estudos na ´area, bem como a inserc¸ ˜ao deste trabalho no assunto. Em seguida, s ˜ao apresentados os objetivos e a justificativa da pesquisa

1.1 CONSIDERAC¸ ˜OES INICIAIS

Dentre as v ´arias metodologias existentes para a obtenc¸ ˜ao de l ´ogicas de controle para Sistemas a Eventos Discretos (SEDs) (CASSANDRAS; LAFORTUNE, 2008), a Teoria do Controle Supervis ´orio (TCS), proposta por Ramadge e Wonham (1989), ganha destaque. Sua estrutura fundamental ´e baseada na teoria de Aut ˆomatos Finitos (AFs) e Linguagens e sua ess ˆencia ´e fornecer um mecanismo formal capaz de descrever a s´ıntese de controladores ´otimos, ou seja, controladores que possuem a propriedade de atuar sobre o modelo de um SED de forma minimamente restritiva, n ˜ao-bloqueante e em conson ˆancia com um conjunto de especificac¸ ˜oes.

Na TCS, a planta do sistema ´e modelada por um conjunto de AFs, cuja composic¸ ˜ao resulta no modelo do comportamento do sistema sem qualquer intervenc¸ ˜ao externa ou ac¸ ˜ao de controle. Esse modelo ´e denominado como planta em malha aberta.

(11)

1.1 Considerac¸˜oes iniciais 10 um conjunto de AFs, cuja composic¸ ˜ao ´e denominada especificac¸ ˜ao. Da associac¸ ˜ao entre planta e especificac¸ ˜ao emerge um modelo que representa o comportamento desejado para o sistema sob controle, isto ´e, o sistema em malha fechada.

Em alguns casos, o comportamento que se espera do sistema sob controle pode n ˜ao ser consistente com o comportamento que pode ser controlado na pr ´atica em um SED. Isso porque alguns eventos, como o final de operac¸ ˜ao de um equipamento pode ser proveniente de um impulso sobre o qual n ˜ao se tem controle, por exemplo, uma queda de energia. Se o controlador n ˜ao ´e capaz de distinguir a natureza da ocorr ˆencia de tal evento, ent ˜ao ele pode mascarar uma situac¸ ˜ao de controlabilidade que na verdade ´e inconsistente em relac¸ ˜ao ao sistema real. Nesse sentido, a TCS define o particionamento do conjunto de eventos de um SED conforme a natureza como ocorrem na planta. Esse particionamento permite que se calcule, do comportamento esperado, o subcomportamento que mais se aproxima do esperado e, ao mesmo tempo, que respeita o conjunto de especificac¸ ˜oes. Se esse subcomportamento for ainda n ˜ao bloqueante, ent ˜ao ele ´e dito ser ´otimo.

A entidade da TCS respons ´avel por aplicar a ac¸ ˜ao de controle sobre a planta, de tal forma que implementa o comportamento control ´avel do sistema, ´e denominada supervisor. O supervisor observa os eventos poss´ıveis na planta e define quais devem ser, de fato, habilitados. Desse modo, os eventos poss´ıveis na planta e que n ˜ao pertence ao conjunto de eventos habilitados do supervisor, s ˜ao inibidos pela ac¸ ˜ao de controle.

Apesar das vantagens da TCS no processo de obtenc¸ ˜ao de controladores ´otimos, alguns aspectos limitam a aplicac¸ ˜ao da TCS em escala industrial. Dois desses aspectos ser ˜ao abordados neste trabalho e est ˜ao intimamente relacionados ao conceito de informac¸ ˜ao. O grau de informac¸ ˜ao dispon´ıvel no modelo de um SED, quando elevado (TEIXEIRA et al.,

(12)

1.1 Considerac¸˜oes iniciais 11 envolvida no processo de s´ıntese do supervisor enquanto que, por outro lado, um baixo grau de informac¸ ˜ao (CUNHA; CURY, 2007) tende a aumentar a dificuldade enfrentada na tarefa de modelar as especificac¸ ˜oes a serem cumpridas pelo sistema em malha fechada (CURY et al., 2015).

Esses aspectos fomentam extens ˜oes da TCS. Uma delas ´e baseada no refinamento de informac¸ ˜oes sobre um conjunto de eventos que pertencem ao sistema. Implicitamente, dispor de mais informac¸ ˜oes acerca de um mesmo evento tende a simplificar a tarefa de modelagem (TEIXEIRA, 2013;

TEIXEIRA et al., 2014;CURY et al., 2015).

No entanto, para utilizar esse conjunto de eventos refinados, ´e necess ´ario agregar ao sistema refinado uma estrutura extra denominada distinguidor, proposto inicialmente por Bouzon et al. (2008). O distinguidor ´e uma entidade capaz de mapear cada cadeia de eventos originais em cadeias compostas por eventos refinados, e dar a elas uma sem ˆantica particular (TEIXEIRA, 2013).

A literatura (CURY et al., 2015) demonstra que o uso de distinguidores

permite modelar especificac¸ ˜oes complexas de controle, de uma forma mais simples e, ainda assim, levar a uma soluc¸ ˜ao de controle equivalente a soluc¸ ˜ao do Problema de Controle Supervis ´orio (PCS) original. Mas, mostrou-se que somente o uso do distinguidor n ˜ao gera diretamente vantagens computacionais na s´ıntese, uma vez que os ganhos obtidos com a simplificac¸ ˜ao das especificac¸ ˜oes s ˜ao compensados com a adic¸ ˜ao do modelo do distinguidor

`a planta.

Indiretamente, contudo, ´e poss´ıvel simplificar tamb ´em o processo de s´ıntese ao utilizar uma aproximac¸ ˜ao para o modelo distinguido (TEIXEIRA, 2013). O conceito de aproximac¸ ˜ao se utiliza da ideia de que, em certas condic¸ ˜oes, o modelo do distinguidor pode ser removido momentaneamente da s´ıntese do controlador, provendo assim ganhos computacionais, e devolvido ao modelo do controlador para fins de implementac¸ ˜ao (TEIXEIRA, 2013). E imagin ´avel,´

(13)

1.2 Objetivos 12 ent ˜ao, que poss´ıveis economias computacionais se limitem ao procedimento de s´ıntese, apenas.

1.2 OBJETIVOS

Os objetivos apresentados nessa proposta se dividem em objetivo geral que representa o resultado final desse trabalho, e objetivos espec´ıficos que define os passos necess ´arios para que se alcance a conclus ˜ao do TCC.

1.2.1 OBJETIVO GERAL

Investigar como o refinamento de informac¸ ˜oes providas por sensores pode beneficiar a modelagem, a s´ıntese e a implementac¸ ˜ao de controladores para sistemas de automac¸ ˜ao a eventos discretos.

1.2.2 OBJETIVOS ESPEC´IFICOS

• Fundamentar os conceitos de Sistemas a Eventos Discretos;

• Fundamentar a Teoria de Controle Supervis ´orio de Sistemas a Eventos Discretos;

• Fundamentar o problema de s´ıntese de controladores para SEDs envolvendo o refinamento e a distinc¸ ˜ao de eventos;

• Fundamentar o problema de s´ıntese de controladores para SEDs envolvendo o uso de aproximac¸ ˜oes para modelos refinados;

• Avaliar os aspectos te ´oricos que se permeiam entre o uso de distinguidores e a vers ˜ao do problema resolvidas por meio de aproximac¸ ˜oes;

• Aplicar abordagem no contexto de um exemplo de um sistema de controle para um processo industrial;

(14)

1.3 Justificativa 13 • Quantificar teoricamente os ganhos provenientes da abordagem em

termos de esforc¸o de modelagem e complexidade computacional;

• Explorar os aspectos de implementac¸ ˜ao de um controlador sintetizado atrav ´es da abordagem investigada;

• Implementar o sistema de controle para o exemplo de modo tal que reflita a economia computacional provida em teoria.

1.3 JUSTIFICATIVA

Pesquisas recentes (TEIXEIRA et al., 2014; CURY et al., 2015) t ˆem mostrado que a obtenc¸ ˜ao de controladores para alguns tipos de processos industriais esbarra em quesitos de complexidade, tais que tornam o problema intranspon´ıvel (intrat ´avel) sem o uso de inovac¸ ˜oes te ´oricas e tratamento algor´ıtmico avanc¸ado. Diante disso, uma alternativa apresentada para simplificar o processo de s´ıntese de controladores para SEDs ´e o uso de distinguidores aliado ao conceito de aproximac¸ ˜ao (CURY et al., 2015;

BOUZON et al., 2008).

Por ´em, mesmo simplificando o processo de s´ıntese de supervisores, a implementac¸ ˜ao do sistema de controle ainda requer a intersec¸ ˜ao completa entre o supervisor e o modelo distinguidor. Ou seja, o supervisor ´e obtido atrav ´es de um processo simplificado, mas precisa, inevitavelmente, ser associado ao distinguidor para fins de implementac¸ ˜ao. Isso porque, sem o modelo do distinguidor, a estrutura do supervisor ´e n ˜ao-determin´ıstica em relac¸ ˜ao aos eventos (sinais) que ocorrem na planta. Isso implicaria que, ap ´os a ocorr ˆencia de determinado evento do sistema, o supervisor n ˜ao saberia qual ac¸ ˜ao de controle tomar perante a inst ˆancia desse evento sem o auxilio do modelo do distinguidor. Diante disso, ´e sugerido em Teixeira (2013), compor o supervisor com o modelo do distinguidor, o que de fato resolve o problema de implementac¸ ˜ao de um supervisor determin´ıstico. Contudo, isso acaba gerando

(15)

1.3 Justificativa 14 um novo problema, que ´e a complexidade computacional da implementac¸ ˜ao, j ´a que a composic¸ ˜ao entre supervisor e distinguidor ´e um procedimento cuja complexidade ´e de ordem exponencial, no pior caso. Assim, os benef´ıcios provenientes do uso do distinguidor n ˜ao se propagariam para o processo de implementac¸ ˜ao.

Dessa forma, esse trabalho investigou alternativas de como supervisor e distinguidor poderiam ser implementados em estruturas distintas.

Se ambos os modelos n ˜ao compartilham da mesma estrutura de implementac¸ ˜ao, a tend ˆencia ´e a de que n ˜ao haja necessidade de comp ˆo-los a priori, o que reduziria substancialmente a complexidade computacional das etapas pr ´e-implementac¸ ˜ao, que ´e evidenciada na literatura (CURY et al., 2015;

TEIXEIRA, 2013).

Entretanto, se beneficiar de duas estruturas distintas para implementar dois modelos que a rigor s ˜ao dependentes, implica em comunicar tais estruturas, a fim de que a depend ˆencia de dados entre eles seja tratada. Por exemplo, dada a ocorr ˆencia de um evento original na planta, a estrutura do supervisor pode habilitar mais de um refinamento desse mesmo evento. Como ele n ˜ao incorpora o mecanismo de distinc¸ ˜ao, necessita consultar a estrutura do distinguidor para definir qual dos refinamentos ´e de fato eleg´ıvel.

Nesse sentido, esse trabalho tamb ´em desenvolve um mecanismo de comunicac¸ ˜ao entre o hardware que implementa os comandos do supervisor e o hardware que implementa o distinguidor. A ideia ´e a de que, dada a ocorr ˆencia de evento original na planta, o supervisor informa se as m ´ascaras de tal evento s ˜ao ou n ˜ao eleg´ıveis sob controle, tal como ocorre na TCS convencional. Caso n ˜ao sejam, o evento original ´e desabilitado. No entanto, caso sejam eleg´ıveis, se faz necess ´ario saber quais m ´ascaras sobrevivem `a distinc¸ ˜ao. Para isso, um request ´e disparado ao distinguidor, que ent ˜ao retorna de maneira predit´ıvel qual dos eventos de fato sobrevive.

(16)

1.3 Justificativa 15 distinguidor, pretende-se ainda estender tal abordagem para o contexto da implementac¸ ˜ao den m ´odulos distinguidores. A construc¸ ˜ao de um distinguidor, ao contr ´ario da representac¸ ˜ao de especificac¸ ˜oes complexas, leva a uma estrutura modular. Assim, este trabalho pretende tirar proveito dessa modularidade para reduzir a complexidade de implementac¸ ˜ao do sistema de controle. A ideia ´e a de que a coordenac¸ ˜ao entre o supervisor e cada m ´odulo do distinguidor ocorra de maneira an ´aloga a uma comunicac¸ ˜ao broadcast. Ou seja, toda a vez que o supervisor requisitar o distinguidor, ele lanc¸a um broadcast com eventos a serem distinguidos, o que por sua vez vai acionar todos e somente os m ´odulos para os quais tais eventos s ˜ao eleg´ıveis no atual contexto de distinc¸ ˜ao (ap ´os o presente prefixo). O m ´odulo (que, por construc¸ ˜ao, ´e ´unico) capaz de distinguir tal evento fornece ent ˜ao a distinc¸ ˜ao necess ´aria a estrutura do supervisor. Desse modo, espera-se o mesmo efeito do distinguidor sem, contudo, envolver a composic¸ ˜ao com o supervisor, em nenhum momento. Como resultado estima-se que os benef´ıcios do uso de distinguidores se propaguem, tamb ´em, para as etapas de implementac¸ ˜ao.

(17)

16 2 REFERENCIAL TE ´ORICO

2.1 SISTEMAS A EVENTOS DISCRETOS

A definic¸ ˜ao de sistema ´e apresentada de diversas maneiras na literatura. Dentre elas, Ogata (2010, p. 3) define que um sistema ´e a associac¸ ˜ao de componentes que atuam em conjunto, a fim de realizar um determinado objetivo, n ˜ao sendo limitado a algo f´ısico. Logo o conceito de sistema pode ser estendido a fen ˆomenos abstratos e din ˆamicos. J ´a para HAYKIN e Veen (2001, p. 22), um sistema ´e uma entidade capaz de manipular um ou mais sinais de forma a realizar uma determinada func¸ ˜ao, resultando em novos sinais. Alguns exemplos de aplicac¸ ˜oes que comp ˜oem um sistema s ˜ao: a automac¸ ˜ao da manufatura, a rob ´otica, redes de comunicac¸ ˜ao e de computadores, sistemas operacionais, entre outros.

De um modo geral, os sistemas t ˆem em comum a propriedade de serem compostos por um conjunto de estados, denominado de espac¸o de estados, tal que cada estado representa o status do sistema em determinada circunst ˆancia, e transic¸ ˜oes de estados respons ´aveis pela evoluc¸ ˜ao do sistema entre os estados. A distinc¸ ˜ao entre diferentes sistemas recai sobre o fato de como ocorrem essas transic¸ ˜oes de estados, podendo essas serem dirigidas pelo tempo ou a eventos (TEIXEIRA, 2013).

Os sistemas de interesse deste trabalho t ˆem a caracter´ıstica de perceberem o ambiente no qual est ˜ao inseridos atrav ´es de est´ımulos/sinais ass´ıncronos, denominados eventos, e seu comportamento comp ˜oem um conjunto de estados enumer ´avel. Um evento pode ser identificado como sendo uma ac¸ ˜ao especifica como, por exemplo, o in´ıcio e o fim de uma tarefa, mas n ˜ao o tempo transcorrido. Desta forma, estando em um estado, a ocorr ˆencia de um evento implica na transic¸ ˜ao para um novo estado ou n ˜ao, no qual o sistema permanece at ´e a ocorr ˆencia de um novo evento e assim sucessivamente. Estas mudanc¸as de estados se caracterizam por serem abruptas, podendo ser vis´ıvel

(18)

2.2 Modelagem de Sistemas a Eventos Discretos 17 ou n ˜ao a um observador externo (CURY, 2001, p. 9). Sistemas que apresentam

essas caracter´ısticas s ˜ao denominados com Sistemas a Eventos Discretos (SEDs) (CASSANDRAS; LAFORTUNE, 2008, p. 30).

2.2 MODELAGEM DE SISTEMAS A EVENTOS DISCRETOS

O processo de se realizar experimentos sobre a estrutura real ´e a maneira mais eficaz de an ´alise de um sistema, tendo como base o grau de precis ˜ao do resultados obtidos. Contudo, esse processo nem sempre ´e poss´ıvel, seja devido a complexidade ou mesmo a indisponibilidade da estrutura real do sistema. Desse modo, uma alternativa ´e a de representar um sistema atrav ´es de um modelo, que permite a abstrac¸ ˜ao de caracter´ısticas irrelevantes de seu comportamento em determinado contexto, de modo a facilitar a compreens ˜ao e manipulac¸ ˜ao do mesmo (OGATA, 2010; TEIXEIRA, 2013).

Os sistemas que possuem sua din ˆamica guiada pelo tempo, geralmente s ˜ao representados por equac¸ ˜oes diferenciais, enquanto que os SEDs s ˜ao mais naturalmente represent ´aveis por meio de diagramas de transic¸ ˜ao de estados, que permitem representar formal e intuitivamente o enlace entre os elementos evento, transic¸ ˜ao e estado, descritores fundamentais do comportamento de um SED.

Dentre os v ´arios formalismos existentes para se representar SEDs destacam-se as Redes de Petri, a Teoria de Filas e a Teoria de Aut ˆomatos e Linguagens. Por ´em, nenhum desses formalismos ´e aceito de forma un ˆanime ou como padr ˜ao na tarefa de se estabelecer modelos para SEDs, tendo em vista que cada formalismo possui caracter´ısticas e finalidades distintas nessa tarefa (CURY, 2001;TEIXEIRA, 2013).

Este trabalho adota como formalismo de modelagem a Teoria de Aut ˆomatos e Linguagens, tamb ´em usado na s´ıntese de controladores ´otimos para SEDs (CURY, 2001, p. 12).

(19)

2.2 Modelagem de Sistemas a Eventos Discretos 18 2.2.1 TEORIA DE AUT ˆOMATOS E LINGUAGENS

Em um SED modelado por um aut ˆomato, a evoluc¸ ˜ao no modelo mapeia a trajet ´oria do sistema e ´e dada pela ocorr ˆencia consecutiva e finita de eventos, o que gera uma cadeia. Desta forma, o conjunto de cadeias geradas descrevem o comportamento do sistema. Com isso, seria l ´ogico pensar que modelar um SED nada mais ´e do que descrever tais cadeias, e que por sua vez, processar operac¸ ˜oes sobre o modelo consiste em manipular suas cadeias (TEIXEIRA, 2013).

O conjunto de todos os eventos que comp ˜oem um SED ´e denominado alfabeto, denotado por Σ um alfabeto finito e n ˜ao-vazio. E Σ∗

denota o conjunto de todas as cadeias finitas poss´ıveis de serem composta por eventos deΣ, incluindo a cadeia vazia denotada por ε, a qual representa a sequ ˆencia com nenhum evento (RAMADGE; WONHAM, 1989).

Uma linguagemL sobre um alfabeto Σ, ´e um subconjunto de cadeias emΣ∗

, isto ´e,L ⊆ Σ∗

, que determina quais s ˜ao as cadeias poss´ıveis de serem formadas com eventos emΣ (CASSANDRAS; LAFORTUNE, 2008).

De modo geral, as classes de linguagens regulares e n ˜ao-regulares, se distinguem de acordo com o grau de recursos necess ´ario para expressar tais linguagens. Uma linguagem ´e dita ser regular quando pode ser expressa por um conjunto finito de elementos, mesmo que o n ´umero de cadeias que comp ˜oem essa linguagem possa ser infinito. No caso contr ´ario, uma linguagem ´e n ˜ao-regular quando nem sempre ´e poss´ıvel expressa-l ´a por meio de um conjunto finito de elementos (CASSANDRAS; LAFORTUNE, 2008).

Uma vez que a modelagem de um SED geralmente compreende um conjunto finito de elementos, onde o comportamento desses elementos podem ser representados por um conjunto de cadeias finitas, a escolha das linguagens regulares se torna natural (TEIXEIRA, 2013).

(20)

2.2 Modelagem de Sistemas a Eventos Discretos 19 de um Aut ˆomato Finito (AF) (CASSANDRAS; LAFORTUNE, 2008). Um aut ˆomato

finito ´e um diagrama de transic¸ ˜ao de estados, que permite modelar diversos problemas, atrav ´es de um m ´etodo pr ´atico e intuitivo (TEIXEIRA, 2013;

CASSANDRAS; LAFORTUNE, 2008). A definic¸ ˜ao formal de um AF se da por meio de uma 5-tuplahΣ, Q, q◦

, Qω, →i, tal que:

• Σ ´e o alfabeto finito;

• Q ´e conjunto finito de estados; • qo ∈ Q ´e estado inicial;

• Qw ⊆ Q ´e o subconjunto de estados marcados;

• →⊆ Q × Σ × Q ´e a relac¸ ˜ao de transic¸ ˜ao de estados. Denota-se por q1

σ

→ q2, a transic¸ ˜ao do estado q1 para o estado q2,

proveniente a ocorr ˆencia do eventoσ ∈ Σ.

Uma das poss´ıveis maneiras de se representar graficamente um aut ˆomato ´e atrav ´es de um grafo dirigido, onde os n ´os representam os estados e as arestas representam as transic¸ ˜oes entre os estados. A transic¸ ˜ao de estado ´e desencadeada diante a ocorr ˆencia de um determinado evento, associado a ela. O estado inicial ´e identificado por uma seta uniconectada apontando para ele e os estados marcados por c´ırculos duplos, cuja sem ˆantica define um estado de aceitac¸ ˜ao. De modo geral, o termo estado de aceitac¸ ˜ao est ´a associada a id ´eia de tarefa completa (TEIXEIRA, 2013). Um exemplo de AF representado por meio de um grafo ´e mostrado na Figura 1, tal que Σ = {α, β}, Q = {q0, q1}, qo = q0,

Qw = {q

0} e a func¸ ˜ao de transic¸ ˜ao de estados ´e dada por q0 α → q1, q1 α → q1 e q1 β → q0.

A linguagem definida sobre um aut ˆomatoG se divide em linguagem gerada e linguagem marcada, definidas respectivamente por

L(G) = {s ∈ Σ∗

(21)

2.2 Modelagem de Sistemas a Eventos Discretos 20 Lw(G) = {s ∈ Σ

|qo → q ∈ Qs w}.

A linguagem L(G) representa o conjunto de todas as cadeias poss´ıveis de serem geradas em G, enquanto que Lw(G) o conjunto de

todas as cadeias que alcanc¸am um estado marcado, tal que Lw(G) ⊆ L(G)

(CASSANDRAS; LAFORTUNE, 2008). Para o exemplo apresentado na Figura 1,

a linguagem gerada ´e o conjunto das cadeias ǫ e todas que iniciam com uma sequ ˆencia de α terminando ou n ˜ao por um β, e a linguagem marcada ´e o conjunto que cont ´em as cadeias da linguagem gerada com excec¸ ˜ao das cadeias que n ˜ao terminam comβ.

α

α

β

q0 q1

Figura 1 – Exemplo de Aut ˆomato Finito

2.2.2 OPERAC¸ ˜OES SOBRE AUT ˆOMATOS E LINGUAGENS

Uma vez que linguagens s ˜ao conjuntos, por definic¸ ˜ao, ent ˜ao todas as operac¸ ˜oes sobre conjuntos, como por exemplo a uni ˜ao e intersecc¸ ˜ao, est ˜ao definidas. Al ´em dessas, outras operac¸ ˜oes podem ser definidas sobre as linguagens a fim de lidar com os elementos do tipo cadeias de eventos (CURY, 2001;CASSANDRAS; LAFORTUNE, 2008;TEIXEIRA, 2013).

Um aspecto importante definido sobre as cadeias, s ˜ao as operac¸ ˜oes morfol ´ogicas, que tem como principio estudar a forma/estrutura de cadeias. Desta forma, seja Σ um alfabeto e s = pqr uma cadeia qualquer, com p, q, r ∈ Σ∗

, ent ˜ao:

(22)

2.2 Modelagem de Sistemas a Eventos Discretos 21 • q ´e uma subcadeia de s;

• r ´e um sufixo de s.

A concatenac¸ ˜ao entre duas linguagens L1 eL2, tal que L1, L2 ⊆ Σ∗,

´e denotada por L1L2, e definida por

L1L2 = {s ∈ Σ ∗

|(s = s1s2) ∧ (s1 ∈ L1) ∧ (s2 ∈ L2)}.

O prefixo-fechamento de uma linguagem L ⊆ Σ∗

, cuja notac¸ ˜ao ´eL, tal que

L = {s ∈ Σ∗

|(∃t ∈ Σ∗

), st ∈ L}.

O prefixo-fechamentoL consiste na linguagem que cont ´em todos os prefixos de todas as cadeias contidas emL. De modo geral L ⊆ L.

Logo, se L for prefixo-fechada, ent ˜ao L = L e qualquer prefixo de qualquer cadeia de L, tamb ´em ´e um elemento de L. Por exemplo, seja o alfabetoΣ = {a, b}, e as linguagens L1 = {ε, a, b, ab, aba, ba} e L2 = {ε, a, b, aba}.

Logo,L1 ´e prefixo-fechada, pois todos os prefixo de L1s ˜ao elementos deL1. J ´a

L2n ˜ao ´e prefixo-fechada, uma vez que nem todos prefixos deL2s ˜ao elementos

deL2, exemplo, o prefixoab.

Outra operac¸ ˜ao ´util no contexto de aut ˆomatos e linguagens ´e a composic¸ ˜ao s´ıncrona, cuja notac¸ ˜ao ´e k. Essa operac¸ ˜ao pode ser definida tanto para aut ˆomatos quanto para linguagens e espera-se que ela preserve a equival ˆencia de resultados nas duas vers ˜oes (WONHAM, 2002). Por praticidade esse trabalho define somente a operac¸ ˜ao k para aut ˆomatos.

Dado dois aut ˆomatos A = hΣA, QA, q ◦

A, QωA, →Ai e B = hΣB, QB, q ◦ B,

B, →Bi, a composic¸ ˜ao s´ıncrona resulta no aut ˆomato

A k B = (ΣA∪ ΣB, QA× QB, (qAo, qBo), QwA× QwB, →),

(23)

2.2 Modelagem de Sistemas a Eventos Discretos 22 • (qA, qB) σ → (q′ A, q ′ B), se σ ∈ ΣA∩ ΣB; • (qA, qB) σ → (q′ A, qB), se σ ∈ ΣA\ ΣB; • (qA, qB) σ → (qA, q′B), se σ ∈ ΣB\ ΣA.

Em palavras, dada a ocorr ˆencia de um evento habilitado em ambos aut ˆomatos, a evoluc¸ ˜ao de estado ocorre de maneira s´ıncrona em ambos os modelos. Caso contr ´ario, quando o evento est ´a habilitado em somente um dos aut ˆomatos a evoluc¸ ˜ao de estado ocorre de maneira ass´ıncrona, ou seja, de maneira independente em cada aut ˆomato e somente o aut ˆomato que reconhece o evento evolui de estado (CURY, 2001;TEIXEIRA, 2013).

A definic¸ ˜ao de produto s´ıncrono pode ser naturalmente estendida a n aut ˆomatos. Assim, sejam os aut ˆomatos Gi = hΣi, Qi, q

i, Qωi, →ii, para i =

1, 2, · · · , n, um modelo global G ´e dado por meio da composic¸ ˜ao s´ıncrona

G = n n i=1 Gi, tal que Σ = n [ i=1 Σi.

J ´a os comportamentos gerado e marcado resultantes da operac¸ ˜ao de composic¸ ˜ao entren aut ˆomatos s ˜ao mostrados em Wonham (2002), como

L(G) = n n i=1 L(Gi) e Lw(G) = n n i=1 Lw(Gi).

Dessa forma, a composic¸ ˜ao s´ıncrona permite que se trabalhe com cada modelo Gi separadamente, de modo que esses modelos possam ser

compostos posteriormente, e por consequ ˆencia levando ao modelo global do sistema (G).

Algumas propriedades importantes sobre um dado aut ˆomatos G = hΣG, QG, q

◦ G, Q

ω

G, →Gi, est ˜ao relacionadas ao conceito de acessibilidade. Essas

propriedades s ˜ao definidas como:

• Estado acess´ıvel: Um estadoq ∈ QG ´e dito ser acess´ıvel se ∃s ∈ Σ ∗

(24)

2.2 Modelagem de Sistemas a Eventos Discretos 23 queqo

G s

→ q.

• Aut ˆomato acess´ıvel: G ´e dito ser acess´ıvel se q ´e acess´ıvel, ∀q ∈ QG.

• Aut ˆomato co-acess´ıvel: G ´e dito ser co-acess´ıvel se cada cadeia s ∈ L(G) ´e prefixo de uma cadeia marcada. Ou seja, se cada s ∈ L(G) pode ser completado por algum t ∈ Σ∗

tal que st ∈ Lw(G), isto ´e, qo G

st

→ q tal que q ∈ Qw

G. Ou ainda, seL(G) = Lw(G).

• Aut ˆomato n ˜ao-bloqueante: G ´e dito ser n ˜ao-bloqueante se ´e co-acess´ıvel. • Aut ˆomato Trim: G ´e dito ser trim, se ele ´e acess´ıvel e co-acess´ıvel.

A propriedade de n ˜ao-bloqueio de aut ˆomatos, esta relacionado ao conceito de acessibilidade, desta forma o comportamento gerado por um aut ˆomato G, ´e dito ser n ˜ao-bloqueante se e somente se o aut ˆomato ´e co-acess´ıvel.

2.2.3 MODELAGEM DE SED USANDO AUT ˆOMATOS

Tendo em mente a noc¸ ˜ao de sistema, e tomando aut ˆomatos como forma de modelar SEDs, o primeiro passo a ser realizado ´e a modelagem dos componentes do sistema, geralmente um conjunto de itens de uma m ´aquina, resultando em um conjunto de AFs. Logo, a composic¸ ˜ao s´ıncrona dos elementos desse conjunto leva ao comportamento geral do sistema, sendo este denominado como planta. A planta do sistema est ´a em malha aberta quando o comportamento do sistema n ˜ao sofre nenhuma ac¸ ˜ao de controle.

Um exemplo simples de um SED modelado por AFs (Figura 2) seria considerar a operac¸ ˜ao de duas m ´aquinas, M1 e M2, modeladas

respectivamente porG1 eG2, tal que a composic¸ ˜ao s´ıncrona entre as m ´aquinas

resulte no modelo da planta em malha aberta G = G1 k G2. O comportamento

das m ´aquinasM1 eM2 ´e descrito em termos de eventos de in´ıcio (a e c) e final

(25)

2.2 Modelagem de Sistemas a Eventos Discretos 24 d c a b a b d c d b c a G1 G2 G= G1k G2

Figura 2 – Modelagem da planta de um SED

O comportamento de uma planta em malha aberta, em geral, n ˜ao atende ao comportamento que se espera na pr ´atica, quando em operac¸ ˜ao, ou seja, L(G) permite cadeias indesej ´aveis na planta. Uma maneira de resolver isso seria evitar a ocorr ˆencia de tais cadeias, por meio de um conjunto de restric¸ ˜oes sendo este denominado de especificac¸ ˜ao. As especificac¸ ˜oes de controle s ˜ao modeladas de forma an ´aloga `a planta, mas com o intuito de representar uma ac¸ ˜ao proibitiva no sistema, de modo que observa os eventos poss´ıveis na planta e desabilita os eventos que s ˜ao considerados proibidos em determinado contexto.

Nesse sentido, Teixeira et al. (2015) apresentam uma metodologia para auxiliar no processo de modelagem das especificac¸ ˜oes. Essa metodologia parte da definic¸ ˜ao de um conjunto de especificac¸ ˜oes para uma planta G, denotado porE =

n

f

i=1

Ei, onde cada modelo de especificac¸ ˜aoEipode ser obtido

atrav ´es dos seguintes passos:

(i) Interpretar a especificac¸ ˜ao descrita em forma textual;

(ii) identificar o evento σ ∈ Σ a ser desabilitado. Neste caso, σ representa a ac¸ ˜ao que deve ser proibida na planta. Uma boa pr ´atica, tendo em mente a simplicidade e modularizac¸ ˜ao, ´e que cada modelo da especificac¸ ˜ao desabilite somente um evento;

(iii) identificar o(s) evento(s)σ′

∈ Σ que imediatamente precedem σ; (iv) construir o AF Ei que, somente ap ´osσ′, habiliteσ;

(26)

2.2 Modelagem de Sistemas a Eventos Discretos 25 (v) habilitar σ′ em todos os estados

q ∈ QRi.

Vale salientar que o processo de modelagem do conjunto de especificac¸ ˜oes para um planta G, denotado por E =

n

f

i=1

Ei, ´e um processo

emp´ırico e est ´a diretamente associado ao grau de experi ˆencia e a familiaridade que o engenheiro/projetista possui do sistema.

Um fato importante a se observar, quando se est ´a modelando Ei,

´e que as cadeias que pertencem ao comportamento do sistema n ˜ao t ˆem que necessariamente ser mapeadas no AF a partir do estado inicial, umas vez que essas, de fato, est ˜ao habilitadas emL(G). Logo, tudo que se deve saber a priori dessas cadeias, ´e o ´ultimo evento do prefixo deσ, ou seja, um σ′ ∈ Σ.

Desta forma, a associac¸ ˜ao das especificac¸ ˜oes ao modelo da planta que pode ser dada por composic¸ ˜ao s´ıncrona, resulta em um modelo que representa o comportamento esperado do sistema sob controle, isto ´e, o sistema em malha fechada.

Um exemplo de especificac¸ ˜ao relacionada a planta G (Figura 2), seria a restric¸ ˜ao de preced ˆencia de in´ıcio de operac¸ ˜ao entre as m ´aquinas (a partir do estado inicial), de forma que M2 s ´o possa iniciar ap ´os o fim de

operac¸ ˜ao deM1. Em outras palavras, a especificac¸ ˜ao deve proibir a ocorr ˆencia

de cadeias que contenham prefixo que iniciam com o evento c. A Figura 3 contextualiza essa especificac¸ ˜ao.

b b

c

E

Figura 3 – Modelagem de uma especificac¸˜ao

No estado inicial, o evento c est ´a sendo proibido j ´a que se deseja estabelecer a preced ˆencia de inicio de M1 em relac¸ ˜ao a M2, e o evento que

(27)

2.3 Teoria de controle supervis ´orio 26 precedec ´e o evento b que est ´a habilitado. Por analogia, b ≡ σ′ e

c ≡ σ.

2.3 TEORIA DE CONTROLE SUPERVIS ´ORIO

O comportamento esperado de um sistema sob controle, obtido pela composic¸ ˜ao da planta (G) e suas especificac¸ ˜oes (E), modela a ac¸ ˜ao de controle de E sobre G, que em alguns casos pode n ˜ao ser consistente com o comportamento control ´avel de um SED na pr ´atica. Essa inconsist ˆencia se d ´a pelo fato de E poder estar desabilitando eventos que n ˜ao podem ser diretamente desabilitados emG.

A falha/quebra de um equipamento em uma linha de produc¸ ˜ao ´e um exemplo desse tipo de evento, que tem a particularidade de ser espont ˆaneo e n ˜ao depender de qualquer pol´ıtica de controle. Logo, para evitar essa inconsist ˆencia seria necess ´ario estabelecer uma maneira de distinguir a natureza da ocorr ˆencia dos eventos que comp ˜oem o sistema, de tal forma que a ac¸ ˜ao de controle tenha conhecimento de quais eventos podem ser desabilitados ou n ˜ao na planta.

Nesse sentido, a TCS (RAMADGE; WONHAM, 1989) particiona o conjunto de eventos da planta de um SED, tal que Σ = Σc ∪ Σu, onde Σc

denota o conjunto de eventos control ´aveis, cuja a ocorr ˆencia pode ser inibida na planta, e Σu denota o conjunto de todos os eventos n ˜ao-control ´aveis, os

quais n ˜ao podem ser diretamente desabilitados.

A entidade da TCS que efetivamente implementa a ac¸ ˜ao de controle na planta ´e o supervisor. Formalmente, um supervisorS ´e um mapa S : L(G) → 2Σ, associada a uma linguagem

LS ⊆ Lw(G) que, ap ´os qualquer cadeia s ∈

L(G), observa eventos eleg´ıveis em G e informa, dentre eles, quais devem ser, de fato, habilitados. Assim, a ac¸ ˜ao de controle deS sobre G, denotada por S/G consiste em habilitar eventos do conjunto S(s) ∈ Σ. A estrutura de supervis ˜ao que interage com a planta de forma a fechar a malha de controle, ´e ilustrada na Figura 4.

(28)

2.3 Teoria de controle supervis ´orio 27 G S σ∈ Σ S(s) ⊆ Σ Eventos eleg´ıveis Eventos habilitados

Figura 4 – Fluxo de controle

Assume-se que eventosσ ∈ Σ ocorrem espontaneamente na planta. Quando σ ´e observado, ap ´os uma cadeia qualquer s ∈ L(G), o supervisor S atualiza o conjuntoS(s) de eventos habilitados. Os eventos poss´ıveis na planta que n ˜ao pertencem a S(s) s ˜ao justamente aqueles que est ˜ao sendo inibidos pela ac¸ ˜ao de controle.

O conjunto de cadeias de L(G) que sobrevive sob controle representa o comportamento gerado em malha fechada, e ´e dado pela linguagem L(S/G). O comportamento marcado em malha fechada, por sua vez, ´e dado por Lω(S/G) = L(S/G) ∩ L

S. Nesse caso, S ´e definido como

um tipo especial de supervisor, denominado marcador, cuja ac¸ ˜ao de controle sobreG (S/G) al ´em de habilitar eventos do conjunto S(s) ⊆ Σ, tamb ´em marca cadeiass ∈ LS.

Um supervisor S ´e dito ser n ˜ao-bloqueante quando L(S/G) =(S/G). Dessa maneira, sempre que uma cadeia sobrevive sob controle, essa

cadeia ´e um prefixo de uma cadeia marcada. Assim, garante-se que a evoluc¸ ˜ao do sistema sob controle sempre leva a completar uma tarefa e, logo, o sistema controlado nunca bloqueia.

Diante a essas definic¸ ˜oes Ramadge e Wonham (1989) enunciam o Problema de Controle Supervis ´orio como:

Seja uma plantaG, com eventos em Σ, e uma especificac¸ ˜ao E ⊆ Σ∗

, definindo um comportamento desejado K = E ∩ Lω(G), deve-se encontrar um

(29)

2.3 Teoria de controle supervis ´orio 28 Encontrar uma soluc¸ ˜ao para o PCS passa, sobretudo, pelo conceito de controlabilidade. Uma linguagem K ⊆ Σ∗

´e dita ser control ´avel em relac¸ ˜ao aL quando

KΣu∩ L ⊆ K.

Ou seja, ap ´os qualquer prefixo deK, se um evento n ˜ao-control ´avel ´e observado emL, a cadeia resultante continua sendo um prefixo de K. Garante-se, ent ˜ao, que nenhum evento n ˜ao-control ´avel, poss´ıvel em L, esteja sendo desabilitado pela ac¸ ˜ao de controle.

A controlabilidade de uma linguagem n ˜ao vazia K ⊆ Lω(G) ´e uma

condic¸ ˜ao necess ´aria e suficiente para a exist ˆencia de um supervisor marcador n ˜ao-bloqueanteS, tal que Lω(S/G) = K. Nesse caso, S, tal que Lω(S/G) = K,

pode ser implementado por um aut ˆomato V , tal que K = Lω(V ) ∩ Lω(G) e

K = L(V ) ∩ L(G). A ac¸ ˜ao de controle de S ´e implementada pela desabilitac¸ ˜ao de eventos poss´ıveis emL(G), os quais n ˜ao s ˜ao poss´ıveis em L(V ), ap ´os uma cadeias ∈ L(S/G). A func¸ ˜ao de marcac¸ ˜ao corresponde a marcar cadeias que s ˜ao marcadas em ambosV e G.

Quando K n ˜ao atende `a condic¸ ˜ao de controlabilidade, torna-se necess ´ario que se calcule a sub-linguagem control ´avel que mais se aproxima deK, i.e., a m ´axima linguagem control ´avel.

Seja C(K, G) = {L ⊆ K | L ´e control ´avel em relac¸ ˜ao a L(G)}. C(K, G) possui um elemento supremo ´unico, denotado por supC(K, G), o qual representa a m ´axima linguagem control ´avel, i.e., a sub-linguagem control ´avel que mais se aproxima de K. Assim, supC(K, G) pode ser associado ao comportamento menos restritivo poss´ıvel de ser implementado por um supervisor n ˜ao-bloqueante S sobre G, de maneira a respeitar o conjunto de especificac¸ ˜oes.

Ent ˜ao S, tal que Lω(S/G) = supC(K, G) e L(S/G) = supC(K, G), ´e

uma soluc¸ ˜ao ´otima para o PCS. CasosupC(K, G) n ˜ao possa ser obtido, implica que o PCS n ˜ao possui soluc¸ ˜ao.

(30)

2.3 Teoria de controle supervis ´orio 29 O c ´alculo do elemento supremosupC(K, G) ´e um processo interativo que consiste em basicamente identificar e remover maus estados do aut ˆomato E que representa a especificac¸ ˜ao K. Um estado x ´e dito ser mau estado se, ap ´os a ocorr ˆencia de alguma cadeia s ∈ Σ∗

, existeµ ∈ Σu, tal que G s

→ x → eµ E → x. Ou seja, se ap ´os a ocorr ˆencia de uma cadeia s, definida tanto na plantas quanto na especificac¸ ˜ao, resulte em um estado x em ambos os modelos, tal que somente a planta habilite um evento n ˜ao-control ´avel a partir desse estado, ent ˜ao esse ´e dito ser um mau estado emE.

O algoritmo que calcula o S = supC(K, G), dado sobre os aut ˆomatos G = hΣG, QG, q

G, QωG, →Gi e E = hΣE, QE, q ◦

E, QωE, →Ei, tal que

(E) = K ⊆ Lω(G), ´e definido pelos seguintes passos:

(i) Identificar maus estados emE. Caso n ˜ao existam, S = E e fim.

(ii) Remover maus estados em E. Caso existam, atualize E, eliminando os maus estados identificados.

(iii) Testar o bloqueio em E. Calcule a componente trim de E. Uma componente ´e trim se ´e acess´ıvel e co-acess´ıvel. Volte ao passo 1.

Como resultado obt ´em-se o comportamento em malha fechada minimamente restritivo e n ˜ao-bloqueante, tal que Lω(S) = supC(E) e

L(S) = Lω(S), logo, essa ´e uma soluc¸ ˜ao ´otima para o PCS.

2.3.1 EXEMPLO DE UM SISTEMA A EVENTOS DISCRETOS

Considere como exemplo de um SED uma pequena f ´abrica (Figura 5) composta por duas m ´aquinas, M1 e M2, operando de maneira

sequencial, tal que as duas m ´aquinas s ˜ao interligadas por um buffer B capaz de suportar a estocagem de at ´e n pec¸as empilhadas, adotando a pol´ıtica Last In, First Out (LIFO) de empilhamento.

(31)

2.3 Teoria de controle supervis ´orio 30 1 2 3 4 M1 M2 a b c d B n

Figura 5 – Exemplo de um SED

O principio b ´asico de funcionamento de cada m ´aquina ´e que dada a ocorr ˆencia de um eventoσi ∈ {a, c}, a m ´aquina Mi carrega uma pec¸a e realiza

uma operac¸ ˜ao sobre a mesma, ao finalizar a operac¸ ˜ao a m ´aquina descarrega automaticamente a pec¸a e essa ac¸ ˜ao est ´a associada a um eventoβi ∈ {b, d}.

A Figura 6 apresenta os aut ˆomatosG1 eG2, modelando respectivamente M1 e

M2.

G1 a G2

b

c

d

Figura 6 – Modelos para os subsistemas M1e M2

Os eventos a e c modelam o in´ıcio de operac¸ ˜ao de M1 e M2,

respectivamente, enquanto b e d, o final. O modelo global do sistema, apresentado na Figura 7, ´e obtido pela composic¸ ˜ao s´ıncrona G = G1 k G2,

com o conjunto de eventosΣ = {a, b, c, d}, onde ´e assumido que Σc = {a, c} e

Σu = {b, d}.

O objetivo de controle para esse exemplo, consiste em evitar o underflow e overflow no buffer, ou seja, que M1 descarregue pec¸as no buffer

quando estiver cheio, eM2 retire pec¸as quando o buffer estiver vazio. Para isso

obt ´em-se o modelo da especificac¸ ˜aoE com n+1 estados (Figura 8), onde cada estado marcado, exceto o inicial, representa a ocupac¸ ˜ao de uma posic¸ ˜ao deB. No estado inicial, um eventoc ´e proibido, j ´a que a ocorr ˆencia desse antes de um eventob resultaria no underflow. Ap ´os o empilhamento de n pec¸as, um evento b ´e desabilitado, pois a ocorr ˆencia de mais um evento b levaria `a

(32)

2.3 Teoria de controle supervis ´orio 31 G a a b b c c d d

Figura 7 – Modelo global do sistema

E 0 1 2

...

n n

b b b

c c

c

Figura 8 – Modelo da especificac¸˜ao de controle E

condic¸ ˜ao de overflow.

Diante ao modelo da planta G e do modelo da especificac¸ ˜ao E, o pr ´oximo passo ´e obter o comportamento desejado para o sistema sob controle, ou seja, K = G k E. Contudo, o comportamento desejado nesse caso ´e inconsistente com o comportamento control ´avel do sistema na pr ´atica, uma vez que E esta desabilitando b, um evento n ˜ao-control ´avel, no estado que representa a n- ´esima posic¸ ˜ao do buffer. Para resolver tal inconsist ˆencia, o supervisor obtido pelo c ´alculo de supC(K, G), desabilita a n- ´esima primeira inst ˆancia (contida em uma cadeia) do evento a na planta de forma a evitar os maus estados contido em K. Em outras palavras, como n ˜ao ´e poss´ıvel desabilitar diretamente a ocorr ˆencia de b que leva ao overflow, o supervisor desabilita o evento imediatamente anterior, que levaria `a ocorr ˆencia deb, nesse caso, o a. Ainda em outras palavras: se n ˜ao ´e poss´ıvel evitar que uma ac¸ ˜ao termine, ent ˜ao nem a inicie.

(33)

2.4 Teoria de controle supervis ´orio com distinguidores 32 2.4 TEORIA DE CONTROLE SUPERVIS ´ORIO COM DISTINGUIDORES

O uso de distinguidores na TCS tem como objetivo facilitar a tarefa de modelagem de especificac¸ ˜oes de controle, podendo ainda, em certos casos diminuir a complexidade da s´ıntese de uma soluc¸ ˜ao para o PCS. Os distinguidores foram inicialmente propostos por Bouzon et al. (2008), os quais foram pensados como tipos especiais de sensores que ao serem associados ao modelo de um SED, permitem prover mais informac¸ ˜oes sobre certos eventos que pertencem ao sistema. J ´a Teixeira (2013), apresentou uma vers ˜ao estendida da abordagem de distinguidores na TCS.

Considere um SED modelado com eventos em Σ, refinar tais eventos na abordagem com distinguidores, em geral, ´e considerar que cada evento σ ∈ Σ torna-se uma m ´ascara para um conjunto n ˜ao-vazio de eventos refinados, denotado por∆σ. Os eventos refinados que comp ˜oem esse conjunto

s ˜ao escolhidos de forma a identificar diferentes inst ˆancias que a m ´ascara (σ) pode ocorrer na planta. Ent ˜ao, Σ ´e um conjunto de m ´ascara para o alfabeto refinado∆ = ∆c∪ ∆u, onde∆c = S σ∈Σc ∆σ e u = S σ∈Σu ∆σ ( TEIXEIRA, 2013; CURY et al., 2015).

A relac¸ ˜ao entre os alfabetos Σ e ∆ ´e definida por um mapa mascarador Π : ∆∗

→ Σ∗

, definido indutivamente por Π(ǫ) = ǫ,

Π(tδ) = Π(t)σ, para t ∈ ∆∗

, δ ∈ ∆σ e σ ∈ Σ.

Ou seja, Π ´e um mapa que relaciona cada cadeia de eventos refinados em∆∗

, `a respectiva cadeia m ´ascaras emΣ∗

. A definic¸ ˜ao deΠ, pode ser naturalmente estendida para qualquer linguagemLd⊆ ∆∗ por

Π(Ld) = {s ∈ Σ ∗

|∃t ∈ Ld, Π(t) = s}.

(34)

2.4 Teoria de controle supervis ´orio com distinguidores 33 s ≤ t, ent ˜ao Π(s) ≤ Π(t). Isto ´e, se s ´e um prefixo de t, ap ´os aplicar o mapa Π em ambas as cadeias de eventos refinados, a relac¸ ˜ao de prefixo entre as cadeias ainda permanece no dom´ınio do alfabeto Σ. Al ´em disso, Π comuta com o prefixo-fechamento, ou seja, paraLd ⊆ ∆

, Π(Ld) = Π(Ld).

O mapa mascarador inverso Π−1

: Σ∗

→ 2∆∗

´e definido por Π−1(s) = {t ∈ ∆∗

|Π(t) = s}.

An ´alogo ao mapa mascarador, o Π−1 tamb ´em pode ser estendido

para qualquer linguagemL ⊆ Σ∗

por Π−1(L) = {t ∈ ∆∗

|Π(t) ∈ L}.

Definidos os mapeamentos, o efeito de um distinguidorD : Σ∗

→ 2∆∗ sobre uma linguagemL ⊂ Σ∗

pode ser ilustrado por: D(L) = Π−1(L) ∩ Ld.

O distinguidor D leva as cadeias do dom´ınio de Σ∗

para cadeias refinadas no dom´ınio de∆∗

, atrav ´es do mapaΠ−1, e distingue a ocorr ˆencia das

cadeias refinadas por meio de uma linguagem Ld.

Nesse caso, Ld ´e uma linguagem distinguidora, definida por Ld =

Ld ⊆ ∆ ∗

. Uma vez que Ld ´e prefixo-fechada, por definic¸ ˜ao, e o mapa Π −1

´e um caso particular deD, ent ˜ao LdeΠ

−1

(L) s ˜ao n ˜ao-conflitantes, para qualquer linguagem L ⊆ Σ∗

. Essa propriedade ´e formalizada pela condic¸ ˜ao necess ´aria e suficiente, definida porΠ−1(L) ∩ L

d= Π−1(L) ∩ Ld (TEIXEIRA, 2013).

Note queLd pode estar associada, por exemplo, `a distinc¸ ˜ao de cada

cadeia em Σ∗

por todas as poss´ıveis cadeias em ∆∗

; ou `a distinc¸ ˜ao de cada cadeia emΣ∗

por exatamente uma cadeia em∆∗

.

Isso leva `a classificac¸ ˜ao de distinguidores, que est ´a relacionada com a cardinalidade do conjunto de cadeias geradas em ∆∗

(35)

2.4 Teoria de controle supervis ´orio com distinguidores 34 Σ∗

. Essa classificac¸ ˜ao se divide em predit´ıvel e n ˜ao-predit´ıvel. Dizer que um distinguidor D : Σ∗

→ ∆∗

´e predit´ıvel, significa que para todo s ∈ Σ∗

´e sempre verdade que |D(s)| = 1, ou seja, se ap ´os a ocorr ˆencia de uma cadeia r ∈ Ld

exista um, e apenas um evento refinado habilitado para cada m ´ascaraσ ∈ Σ, de modo a permitir queLdpossa sempre predizer a pr ´oxima distinc¸ ˜ao de qualquer

m ´ascara. Quando D ´e n ˜ao-predit´ıvel implica em |D(s)| > 1 para algum s ∈ Σ∗

(TEIXEIRA, 2013).

Considerando um SED, cujo comportamento ´e modelado por aut ˆomatoG, o efeito de um distinguidor D sobre G ´e dado por

D(L(G)) = Π−1

(L(G)) ∩ Ld;

D(Lω(G)) = Π−1

(Lω(G)) ∩ L d.

Um diagrama de blocos que contextualiza a interac¸ ˜ao entre o distinguidor e a planta (G) ´e apresentada na Figura 9.

σ∈ Σ G Π−1 Distinguidor ∆σ⊆ ∆ Ld δ∈ ∆′⊆ ∆σ

Figura 9 – Diagrama de blocos interac¸ ˜ao de D e G

Nesse diagrama, assume-se que a cada ocorr ˆencia deσ ∈ Σ em G, esse evento ´e mapeado em um subconjunto∆σ de refinamentos, por meio do

mapa Π−1, que por sua vez s ˜ao filtrados pela linguagem

Ld, a qual define de

fato quais deles s ˜ao habilitados na planta.

Nesse contexto, Gd ´e aut ˆomato tal que L(Gd) = D(L(G)) e

(G

d) = D(Lω(G)), e Ed denota uma especificac¸ ˜ao definida em ∆. Os

requisitos expressos por Ed usando as informac¸ ˜oes adicionais providas pelo

distinguidor devem se referir aos mesmos requisitos expressos por E em Σ, tal que Ed ∩ Lω(Gd) = Kd = D(K), onde K = E ∩ Lω(G). Nesse caso, a

especificac¸ ˜aoK ⊆ Lω(G) seria dada por K = Π(E d∩ Π

−1

(Lω(G)) ∩ L d).

(36)

2.4 Teoria de controle supervis ´orio com distinguidores 35 Ent ˜ao, o problema de controle com distinguidor (PCS-D) consiste em encontrar um supervisor n ˜ao-bloqueante Sd : ∆∗ → 2∆, tal que Lω(Sd/Gd) ⊆

Kd. Pode ser demonstrado (TEIXEIRA, 2013) que, se um distinguidor D ´e

predit´ıvel, ent ˜ao

Π(supC(Kd, Gd)) = supC(K, G);

supC(Kd, Gd) = D(supC(K, G)).

A Figura 10 contextualiza a arquitetura do problema de controle supervis ´orio com distinc¸ ˜ao predit´ıvel de eventos.

s G Π D Π(Sd) Sd Π(Sd)(s) Sd(t) t

Figura 10 – Arquitetura de controle supervis ´orio com distinguidor predit´ıvel

Ap ´os uma cadeias ∈ L(G) ser observada na planta G, o distinguidor predit´ıvel D identifica a cadeia t ∈ L(Gd) correspondente a s, tal que D(s) = t.

Ent ˜ao, o supervisor Sd define o conjunto Sd(t) de eventos habilitados ap ´os a

cadeia t. Por fim, Π(Sd) mapeia esse conjunto de eventos refinados para os

eventos originais correspondentes, o que permite que a ac¸ ˜ao de controle para o alfabeto original seja implementada sobreG.

2.4.1 CONSTRUC¸ ˜AO DE UM DISTINGUIDOR

Resta saber como representar um distinguidor D. Essa ´e uma tarefa de modelagem que, portanto, depende da capacidade do engenheiro, o que torna inconveniente esquematiz ´a-las por completo. Ainda assim Teixeira

(37)

2.4 Teoria de controle supervis ´orio com distinguidores 36 (2013), prop ˜oem um guia para o desenvolvimento de um distinguidor. Esse guia descreve os seguintes passos:

(i) Identificac¸ ˜ao de um conjunto inicial de eventos σ ∈ Σ a serem refinados: identificar quais eventos em Σ, quando refinados, poderiam simplificar a modelagem de uma especificac¸ ˜ao de controle;

(ii) Definic¸ ˜ao das inst ˆancias de refinamentos δ ∈ ∆σ: a partir do passo

anterior, deve-se determinar quais inst ˆancias devem ser associadas a cada um dos eventos selecionados para o refinamento. Tais inst ˆancias representam diferentes circunst ˆancias que o evento original pode ocorrer. Assim, cada inst ˆancia tamb ´em carrega uma sem ˆantica particular, a qual deve ser implementado pelo modelo do distinguidor;

(iii) Complementac¸ ˜ao do conjunto∆: a partir de um dado conjunto de eventos a serem refinados (m ´ascaras) e seus respectivos conjuntos de inst ˆancias (refinamentos), a construc¸ ˜ao de um modelo que distingue a ocorr ˆencia de tais inst ˆancias pode depender de outros refinamentos. De fato, o significado de uma certa inst ˆancia de um evento pode se concretizar somente quando o sentido de outro evento ´e conhecido. Ent ˜ao, tal evento deve ser refinado e suas inst ˆancias serem distinguidas. Logo, ´e necess ´ario revisitar os passos (i) e (ii), e assim definir corretamente o alfabeto∆;

(iv) Modelagem do distinguidor : neste passo, se constr ´oi um modelo que estabelece as interdepend ˆencias entre as inst ˆancias de refinamentos em ∆. Esse processo consiste na definic¸ ˜ao de um aut ˆomato Hd, tal que

a linguagem associada desse descreve a linguagem distinguidora, isto ´e, L(Hd) = Ld. O modelo Hd, ´e naturalmente simples no aspecto de

(38)

2.4 Teoria de controle supervis ´orio com distinguidores 37 2.4.2 EXEMPLO DE UM SED COM DISTINGUIDOR

Para fins de comparac¸ ˜ao ´e utilizado o mesmo sistema apresentado na Figura 6. Abordar esse exemplo com o uso de distinguidor, consiste em primeira inst ˆancia construir o modelo do distinguidor. Para essa tarefa ´e utilizado o guia supracitado, que resulta em:

(i) Identificac¸ ˜ao de um conjunto inicial de eventos a serem refinados: Definir um modelo para a especificac¸ ˜aoE, de modo que venha evitar o underflow e overflow consiste em saber quando o buffer est ´a vazio ou cheio, ou seja, ter o conhecimento de quantas pec¸as est ˜ao presentes no buffer. Diante disso, ´e natural a escolha dos eventosb e c, que respectivamente inserem e removem pec¸as no buffer (B), para serem refinados, uma vez que isso permite a simplificac¸ ˜ao da especificac¸ ˜aoE.

(ii) Definic¸ ˜ao das inst ˆancias de refinamentos: Baseado no passo anterior ´e essencial refinar os eventos b e c, de forma que cada inst ˆancia refinada de b passe a identificar a ac¸ ˜ao de inserir uma pec¸a em uma posic¸ ˜ao de B, enquanto que cada inst ˆancia refinada de c passe identificar a ac¸ ˜ao de remover uma pec¸a de determinada posic¸ ˜ao deB.

Desse modo, considere∆b = {b1, bx, bn, bn+1} e ∆c = {c0, c1, cx, cn} tal que

c0 e bn+1 expressam o underflow e overflow, respectivamente. Os outros

refinamentos representam as posic¸ ˜oes intermedi ´arias.

(iii) Complementac¸ ˜ao de ∆: Os eventos a e d n ˜ao requerem refinamentos, ent ˜ao ∆a = {a} e ∆d = {d}. Logo, o alfabeto refinado de Σ ´e dado por ∆ = ∆a∪ ∆b∪ ∆c ∪ ∆d.

(iv) Modelagem do distinguidor : Um distinguidor que implementa a relac¸ ˜ao entre os refinamentos em∆ ´e apresentado na Figura 11.

O modelo Hy distingue os eventos refinados dos conjuntos b e

∆c, no estado inicial o modelo distingue o eventoc0 dos demais refinamentos da

(39)

2.4 Teoria de controle supervis ´orio com distinguidores 38 H1 : Hx : Hn: b1 bx bx bx bx bx bn bn bn+1 c0 c1 c1 c cx x cx cx cx cn · · ·

Figura 11 – Modelo do distinguidor Hy

= H1fHxfHn

m ´ascara c, ainda nesse estado, distingue b1 dos outros refinamentos de

b. No pr ´oximo estado, distingue o evento c1, dos demais refinamentos de

c, e bx dos demais refinamentos deb. Este comportamento ´e estendido

de maneira an ´aloga, para os outros refinamentos de b e c nos demais estados deHy.

Observe que a ´unica restric¸ ˜ao que o modelo proposto imp ˜oe ´e a preced ˆencia entre os eventos do conjunto de refinamentos associado a m ´ascara, por ´em isso n ˜ao altera a equival ˆencia do comportamento do sistema refinado em relac¸ ˜ao ao definido em Σ. Essa equival ˆencia ´e mantida pelo fato de que, em cada estado do modelo ao menos uma inst ˆancia dos eventos que se deseja distinguir est ´a habilitada. Mais que isso, nesse exemplo, o modelo Hy habilita exatamente uma ´unica

inst ˆancia dos eventos que se deseja distinguir em cada estado.

Ap ´os construir os modelos que implementam a sem ˆantica dos conjuntos ∆b e c, resta obter o modelo do distinguidor D, denotado por H

d = Hy k H, onde(H∆ ) = ∆∗ e L(Hd) = Ld. O modelo H ∆ ´e um aut ˆomato composto por um ´unico estado, sendo esse um estado marcado, contendo uma transic¸ ˜ao em autolac¸o, rotulada com os eventos de ∆, complementando o alfabeto em Hd. Para este exemplo em

particular, o modelo de Hd possui n + 1 estados. Como esse modelo

preserva, em cada estado, um ´unico refinamento habilitado para cada m ´ascara, ent ˜ao esse modelo representa um distinguidor pred´ıtivel.

Fazendo uso dos eventos refinados em ∆, a especificac¸ ˜ao E (Figura 8 da p ´ag.31) pode ser representada por dois aut ˆomatos Eu

d e EdO

(Figura 12), cujos comportamentos preservam o mesmo requisito de controle, ou seja, underflow e overflow, tal que Ed = EdU k EdO corresponde a

(40)

2.4 Teoria de controle supervis ´orio com distinguidores 39 especificac¸ ˜aoE em ∆. O fato de Edpreservar a mesma sem ˆantica de requisito

de controle que E, resulta que, caso n ˜ao se conhec¸a o modelo E, uma forma de obt ˆe-lo ´e atrav ´es deE = Π(Ed k Hd).

EU d EdO c0 c1 c1 cn cn b1 b1 bn bn bn+1 Figura 12 – Modelos de EdU e EdO O modelo EU

d desabilita no estado inicial um evento c0, j ´a que sua

sem ˆantica est ´a associada a remover uma pec¸a deB quando seu status ´e vazio, portanto a ocorr ˆencia desse evento resultaria no underflow. J ´a o modelo EO d

ap ´os um eventobn(buffer cheio), desabilita o eventobn+1cujo o significado est ´a

associada a inserc¸ ˜ao de uma pec¸a quandoB est ´a cheio.

Note que, para estabelecer um modelo de especificac¸ ˜ao equivalente com uso de distinguidor, o esforc¸o da modelagem diminui significativamente, uma vez que cada modelo que comp ˜oem Ed ´e composto de dois estados

(valor constante, independente do n ´umero de posic¸ ˜oes de B), enquanto que no dom´ınio de Σ o n ´umero de estados do modelo da especificac¸ ˜ao E ´e dado porn + 1, onde n ´e n ´umero de posic¸ ˜ao de B.

Para obter os modelos equivalentes deG1 eG2 em∆, basta aplicar

o mapa Π−1, tal que G1

a = Π−1(G1) e G2a = Π−1(G2). Esses modelos s ˜ao

apresentados na Figura 13. G1 a G 2 a a b1, bx, bn, bn+1 c0, c1, cx, cn d

Figura 13 – Modelos para as plantas G1 ae G

2 a

(41)

2.4 Teoria de controle supervis ´orio com distinguidores 40 simples fato de substituir cada m ´ascara, em cada transic¸ ˜ao, pelo seu respectivo conjunto de refinamentos.

O modelo global refinado ´e dado pela composic¸ ˜ao Ga = G1a k

G2

a, ou ainda, Ga = Π−1(G). Por ´em, Ga ´e dito ser um modelo amb´ıguo,

ou n ˜ao-determin´ıstico, em relac¸ ˜ao a escolha de qual evento refinado deve ser habilitado dada a ocorr ˆencia de sua m ´ascara. Tal inconveniente pode ser solucionado associando-se o modelo Ga a Hd a fim de eliminar o

n ˜ao-determinismo de Ga. Assim, resultando no modelo da planta distinguida,

denotada porGd = Π−1(G) k Hd.

Agora, resta sintetizar uma soluc¸ ˜ao ´otima para o PCS-D para o exemplo proposto. Essa soluc¸ ˜ao pode ser obtida usando o mesmo o algoritmo apresentado na sec¸ ˜ao 2.3, considerando os seguintes modelos:

(i) a planta distinguidaGd= Gak Hd, tal queL(Gd) = Π−1(L(G)) ∩ Ld;

(ii) a especificac¸ ˜aoEd = EdU k EdO;

(iii) o comportamento desejado Kd= Ed∩ Lω(Gd).

Como resultado, a soluc¸ ˜ao ´otima ´e o supervisorSd = supC(Kd, Gd),

modelado por um aut ˆomato Vd tal que Lω(Vd) = Sd. A Tabela 1 apresenta

uma comparac¸ ˜ao entre os modelos usados para s´ıntese do PCS e PCS-D, e suas respectivas soluc¸ ˜oes. Essa comparac¸ ˜ao ´e contextualizada em n ´umero de estados e transic¸ ˜oes que comp ˜oem cada modelo.

Tabela 1 – Resultado da s´ıntese para o PCS e PCS-D - estados (transic¸ ˜oes)

G E K V

4 (8) n + 1 (2n) 4n + 4 (8n + 4) 4n + 2 (8n)

Gd Ed Kd Vd

4n + 4 (8n + 8) 4 (20) 4n + 4 (8n + 4) 4n + 2 (8n) Como pode ser analisado, as especificac¸ ˜oes s ˜ao modeladas em ∆ por um n ´umero de estados constante, independente do tamanho do buffer,

(42)

2.4 Teoria de controle supervis ´orio com distinguidores 41 enquanto que, em Σ, essa complexidade cresce em func¸ ˜ao da capacidade do buffer. Por outro lado, observe que tal simplificac¸ ˜ao n ˜ao se propaga para a etapa de s´ıntese. De fato, os modelos K e Kd, bem como os supervisores

(V e Vd), possuem o mesmo n ´umero de estados. Isso se deve ao fato de

que, na abordagem com distinguidores, os ganhos obtidos na simplificac¸ ˜ao da especificac¸ ˜ao s ˜ao compensados pela adic¸ ˜ao do modelo do distinguidor na planta. Em geral, ´e esperado que a complexidade de s´ıntese seja equivalente.

Sumarizando, pode-se dizer que as vantagens do uso de distinguidores, como apresentados at ´e aqui, se resumem a simplificar a modelagem de especificac¸ ˜oes complexas sem alterar o resultado de s´ıntese. Tal simplificac¸ ˜ao pode ser decisiva para viabilizar a soluc¸ ˜ao de problemas complexos de controle. No entanto, tamb ´em ´e verdade que o uso direto de distinguidores n ˜ao prov ˆe economias computacionais no processo de s´ıntese, o que seria esperado de uma abordagem focada em simplificac¸ ˜ao de modelos. Uma alternativa para explorar vantagens computacionais de modelos distinguidos ´e apresentada a seguir e sustenta a principal proposta deste trabalho.

2.4.3 APROXIMAC¸ ˜OES NO PCS-D

No sentido de propagar os benef´ıcios providos pelo uso de um distinguidor para o processo de s´ıntese, o conceito de aproximac¸ ˜ao ´e proposto em Cury et al. (2015). Em determinados casos, uma aproximac¸ ˜ao pode levar a uma soluc¸ ˜ao de controle computada com menos ˆonus computacional preservando, ao mesmo tempo, os benef´ıcios de um distinguidor.

A ideia b ´asica por tr ´as de uma aproximac¸ ˜ao ´e fazer o uso de especificac¸ ˜oes modeladas em ∆, mas substituir a planta distinguida Gd por

uma aproximac¸ ˜aoGa, com menor n ´umero de estados. A construc¸ ˜ao de um Ga

mais simples do queGdimplica, inevitavelmente, em usar um modelo de planta

(43)

2.4 Teoria de controle supervis ´orio com distinguidores 42 e requer uma sistem ´atica pr ´opria.

Em Cury et al. (2015) os autores sistematizam a construc¸ ˜ao de Ga

como se segue. Sejam Da e D dois distinguidores tais que Ld ⊆ Lda ⊆ ∆ ∗

e tal que D ´e predit´ıvel. Por inclus ˜ao, todas as cadeias que sobrevivem em Ld

tamb ´em sobrevivem em Lda. A diferenc¸a ´e que Lda pode talvez habilitar mais

cadeias do que aquelas emLd. ´E imagin ´avel que, tendo que distinguir menos,

um aut ˆomato Hda modelando Lda seja mais simples do que Hd modelando Ld,

em termos de n ´umero de estados.

Assim, quando aplicado a uma planta G, Da produz uma

aproximac¸ ˜aoGa = Da(G) para Gd = D(G), com L(Ga) = Da(L(G)) e Lω(Ga) =

Da(Lω(G)).

Resta definir, ent ˜ao, como modelar um distinguidor Hda que modele

Lda de maneira tal que possa ser associado `a planta G para produzir

uma aproximac¸ ˜ao que leve a um processo de s´ıntese computacionalmente vantajoso, preservando-se a otimidade do controlador. Nesse sentido, observe queHd ´e modular, por construc¸ ˜ao, como ilustrado no exemplo anterior. Ent ˜ao,

qualquer composic¸ ˜ao de sub-modelos deHd leva a um modelo de distinguidor

Hda que modelaDa, uma vez queLd ⊆ Lda. Ou seja, a construc¸ ˜ao deHda pode

se dar simplesmente desconsiderando partes do modeloHd.

Um caso particular que respeita a inclus ˜ao Ld ⊆ Lda e que define

um limite da aproximac¸ ˜ao ´e quando Hda = Hd, o que implica na igualdade Ld

e Lda. Naturalmente, esse caso remete a uma aproximac¸ ˜ao que n ˜ao prov ˆe

simplificac¸ ˜ao na s´ıntese, ainda que preserve os benef´ıcios de modelagem. Nesse caso, Ga ´e um modelo com o mesmo n ´umero de estados de Gd. No

limite oposto,Hda = H

implica que

Lda = ∆ ∗

, o que remete a uma aproximac¸ ˜ao possivelmente vantajosa em s´ıntese. Nesse caso, Ga = Π−1(G) ´e um modelo

com o mesmo n ´umero de estados deG.

Na pr ´atica, o processo de s´ıntese envolvendo aproximac¸ ˜oes parte do caso em queGa = Π−1(G) uma vez que esse tende a ser mais vantajoso, i.e.,

(44)

2.4 Teoria de controle supervis ´orio com distinguidores 43 a aproximac¸ ˜ao ´e a vers ˜ao mais ``relaxada´´ poss´ıvel de Gd. No entanto, pode

ser mostrado (CURY et al., 2015) que, em certos casos, tal aproximac¸ ˜ao pode n ˜ao levar a uma soluc¸ ˜ao ´otima de controle. Para esses casos, aproximac¸ ˜oes intermedi ´arias podem ser obtidas atrav ´es da composic¸ ˜ao incremental de qualquer m ´odulo de Hd, at ´e que resulte na soluc¸ ˜ao ´otima. Em (AGUIAR et al.,

2013) ´e apresentada uma heur´ıstica que sugere quais partes do distinguidor s ˜ao necess ´arias `a s´ıntese.

Mostra-se agora como uma soluc¸ ˜ao para PCS-D pode ser encontrada usando uma aproximac¸ ˜aoGaparaGd.

Dados Gd eEd, como no PCS-D, sejaGa uma D-aproximac¸ ˜ao para

Gd. ParaKa = Ed∩ Lω(Ga), se supC(Ka, Ga) e Ld forem n ˜ao-conflitantes, ent ˜ao

um supervisor Sa, implementando supC(Ka, Ga) ∩ Ld, ´e uma soluc¸ ˜ao para o

PCS-D, tal que

supC(Ka, Ga) ∩ Ld ⊆ supC(Kd, Gd).

Embora Sa seja uma soluc¸ ˜ao control ´avel e n ˜ao-bloqueante para o

PCS-D, essa soluc¸ ˜ao pode ser mais restritiva do que a soluc¸ ˜ao supC(Kd, Gd)

(caso da inigualdade). Essa restric¸ ˜ao ´e derivada do fato de que, com a aproximac¸ ˜ao, o processo de s´ıntese disp ˜oe de menos informac¸ ˜oes sobre a planta, i.e., as informac¸ ˜oes contidas nos eventos podem em geral ser amb´ıguas, o que leva o supervisor a se precaver de sequ ˆencias que possam interferir na controlabilidade e/ou no n ˜ao-bloqueio.

Para estimar quando uma soluc¸ ˜ao ´e mais restritiva, basta comparar o n ´umero de estados dos modelos que implementam supC(Ka, Ga) ∩ Ld e

supC(Kd, Gd). No entanto, para isso, ´e necess ´ario que se calcule efetivamente

supC(Kd, Gd), o que pode n ˜ao ser vi ´avel computacionalmente. Ali ´as, uma das

finalidades das aproximac¸ ˜oes ´e justamente evitar tal c ´alculo. Assim, uma forma de verificar se a soluc¸ ˜ao implementada porSa ´e ´otima, sem a necessidade de

Referências

Documentos relacionados

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

atendimento integral ao portador de fissura de lábio e/ou palato, referente às ações e serviços odontológicos nos três níveis de atenção a saúde (primário, secundário

Os métodos clássicos de determinação dos coeficientes, que possuem boa qualidade de estimativa e grande estabili- dade, têm alto custo computacional no problema de super-resolução;

Plantio: Março (sementes), outubro e novembro (estacas) Característica botânica: Planta subarbustiva, perene.. Os ramos são

O fato da contagem total de hemócitos no experimento com o agroquímico Talcord não ter sido diferente significativamente entre o controle e os dois tratamentos onde os

Inicialmente, destacamos os principais pontos de convergência: • O papel tático e operacional exercido pela área de TI dos Câmpus é claramente identificável, tanto nos

Antes de caminhar efetivamente ao encontro de métodos e mecanismos que nos levem a solucionar os problemas de ajustamento e inclusão dos jovens oriundos das “tribos” juvenis urbanas

Our contributions are: a set of guidelines that provide meaning to the different modelling elements of SysML used during the design of systems; the individual formal semantics for