• Nenhum resultado encontrado

Proposta de uma Abordagem Adaptativa para. Detecção e Classificação de Falhas em Sistemas Dinâmicos

N/A
N/A
Protected

Academic year: 2021

Share "Proposta de uma Abordagem Adaptativa para. Detecção e Classificação de Falhas em Sistemas Dinâmicos"

Copied!
79
0
0

Texto

(1)

Programa de Pós-Graduação em Modelagem Computacio-nal e Sistemas

Proposta de uma Abordagem Adaptativa para

Detecção e Classificação de Falhas em Sistemas Dinâmicos

Dissertação submetida à banca avaliadora designada pelo Colegiado do Programa de Pós-Graduação em Modelagem Computacional e Sistemas da Universidade Estadual de Montes Claros, como parte dos requisitos exigidos para a obtenção do título de Mestre em Modelagem Computacio-nal e Sistemas.

por

Laércio Ives Santos

Orientador: Prof. Dr. Marcos Flávio Silveira Vasconcelos D’Angelo Coorientador: Prof. Dr. Reinaldo Martinez Palhares

(2)

Centro de Ciências Exatas e Tecnológicas

Programa de Pós-Graduação em Modelagem Computacional e Sistemas

Proposta de uma Abordagem Adaptativa para Detecção e

Classificação de Falhas em Sistemas Dinâmicos

Autor: Laércio Ives Santos

Orientador: Prof. Dr. Marcos Flávio Silveira Vasconcelos D’Angelo

Coorientador: Prof. Dr. Reinaldo Martinez Palhares

Dissertação submetida à banca avaliadora, designada pelo Colegiado do Programa de Pós-Graduação em Modelagem Computacional e Sistemas da Universidade Estadual de Montes Claros, como parte dos requisitos exigidos para a obtenção do título de Mestre em Modelagem Computacio-nal e Sistemas.

Banca Examinadora

Marcos Flávio S. V. D’Angelo, Dr. - Orientador . . . . DCC-UNIMONTES Reinaldo Martinez Palhares, Dr. - Coorientador . . . DELT-UFMG Renato Dourado Maia, Dr. . . DCC-UNIMONTES Nilton Alves Maia, Dr. . . DCC-UNIMONTES

Montes Claros, MG Dezembro-2015

(3)

S237p Proposta de uma abordagem adaptativa para detecção e classificação de falhas em sistemas dinâmicos [manuscrito] / Laércio Ives Santos. – 2015.

66 f. : il.

Bibliografia: f. 60 - 66.

Dissertação (mestrado) Universidade Estadual de Montes Claros -Unimontes, Programa de Pós-Graduação em Modelagem Computacional e Sistemas/PPGMCS, 2015.

Orientador: Prof. Dr. Marcos Flávio Silveira Vasconcelos D’Angelo. Coorientador: Prof. Dr. Reinaldo Martinez Palhares.

1. Sistema - falhas - detecção – classificação. 2. Exame de partículas. 3. Agrupamento de padrões. I. D’Angelo, Marcos Flávio Silveira Vasconcelos. II. Palhares, Reinaldo Martinez. III. Universidade Estadual de Montes Claros. IV. Título.

(4)
(5)
(6)

As tarefas de Detecção e Classificação de falhas em processos ou sistemas são importantes, pois podem ser vistas como ações preventivas, podendo evitar desde perdas de materiais até acidentes envolvendo seres humanos. Nesse contexto, este trabalho apresenta uma proposta de uma nova abordagem adapativa para detecção e classificação de falhas em sistemas dinâ-micos, baseada em duas etapas: na primeira etapa a abordagem proposta utiliza métodos clássicos para detecção de falhas e na segunda etapa, propõe variações em algoritmos de agrupamento como ferramentas para classificação de falhas. Para verificar a eficiência da abordagem, ela foi aplicada em dois problemas: um sistema de Acioamento de Máquina de Corrente Contínua e o Processo Industrial Teneessee Eastman. Dessa forma, os resultados obtidos pela abordagem proposta são comparados com resultados obtidos por outras abor-dagens. De modo geral, a abordagem proposta obteve bons resultados, o que sugere que a mesma é promissora para realizar as tarefas de detecção e classificação de falhas em duas classes de sistemas dinâmicos.

Palavras-chave: Detecção de falhas, Classificação de falhas, Enxame de Partículas,

Agru-pamento de padrões.

Abstract

The tasks of fault Detection and Classification are importants in process or systems, why can be seen as preventive actions, they can avoid losses from materials to accidents involving humans. Thus, this work presents a proposal a new adaptative approach for fault detection and classification in dinamic systems, two-step-based: in the first step, the approach use classic methods in detection phase and in second proposes changes in clustering algorithms as fault classification tools. The approach is applied in two problems for tests of your efficiency: a DC drive system and the Tennessee–Eastman industrial process. The results of proposed approach were compared with results of others. Generally, the approach received good results and this suggests that they is promising for fault detection and classification in two class of dinamic systems.

Keywords: Fault detection, Fault classification, Particle Swarm, Clustering patterns.

(7)

A Deus, pois sempre concedeu vida, saúde, força e fé em todos os momentos de minha vida.

Ao meu orientador Prof. Marcos Flávio, pelos ensinamentos, pelo exemplo de pesquisador e pela amizade.

Ao meu coorientador Prof. Reinaldo Martinez Palhares pelos ensinamentos.

Aos demais professores do PPGMCS pelos ensinamentos e dedicação ao ministrar as disciplinas, que sem dúvida foram muito importantes para a realização dessa pesquisa.

Aos meus pais e irmãos que de longe sempre estiveram torcendo pelo meu sucesso. À minha sogra Adélia, à minha irmã Aline, e às primas Ana Gabriela e Ana Jéssica, pois no momento em que mais precisei de tempo para dedicar à pesquisa, cuidaram de meu filho como se fosse o bem mais precioso que existe e de fato é o bem mais precioso que existe em minha vida.

Aos colegas do PPGMCS, pela amizade e apoio nesses quase dois anos de estudo. Aos colegas e direção do IFNMG-Campus Montes Claros pelo apoio dado durante todo o curso.

À Késsia, minha esposa, pela paciência, compreensão, apoio incondicional e pelo amor que tem por mim, pois, sem dúvida, boa parte dos méritos conquistados eu devo a ela.

(8)

Lista de Figuras vi

Lista de Tabelas viii

Acrônimos ix

1 Introdução 1

1.1 Caracterização do Problema e Motivação . . . 1

1.2 Objetivos . . . 2

1.3 Metodologia . . . 3

1.4 Artigos Publicados em Anais de Eventos . . . 4

1.5 Organização do Trabalho . . . 4

2 Abordagem Proposta 5 2.1 Fundamentos Importantes . . . 5

2.1.1 Particle Swarm Optimization(PSO) . . . . 6

2.1.2 Construtive Particle Swarm Clustering(cPSC) . . . . 8

2.1.3 Subtractive Clustering (SC) . . . . 10

2.2 Abordagem Adaptativa para Classificação de Falhas . . . 12

2.3 Análise de Sensibilidade do Algoritmo cPSC modificado . . . 20

3 Aplicações 26 3.1 Aplicação no Sistema de Acionamento para o Motor C.C. . . 26

3.1.1 Modelo do Benchmark do Motor C.C. . . . 27

3.1.2 Modelo da Carga Mecânica . . . 30

3.1.3 Modelo dos Conversores Estáticos . . . 30

3.1.4 Modelagem das Falhas para o Sistema de Acionamento C.C. . . 30

3.1.5 Modelo Geral das Falhas no Sistema de Acionamento C.C. . . 33

3.1.6 Resultados de Simulações do Sistema de Acionamento C.C. . . 35

3.1.7 Sistema de Detecção e Classificação de falhas no Acionamento C.C. . 35

3.1.8 Resultados . . . 39 iv

(9)

3.2 Aplicação da abordagem proposta no Sistema de Controle de Processo Indus-trial Tennessee Eastman . . . . 44 3.2.1 Sistema de Controle de Processo Industrial Tennessee Eastman . . . 45 3.2.2 Sistema de Detecção e Classificação de Falhas no Tennessee Eastman 51 3.2.3 Resultados . . . 53

4 Considerações Finais 58

(10)

1.1 Esquema geral da Abordagem Proposta . . . 3

2.1 Movimentação de uma partícula no PSO . . . 8

2.2 Mecanismo de movimentação de uma partícula no cPSC . . . 11

2.3 Funcionamento do Algoritmo SC . . . 13

2.4 Processo de clonagem de partículas . . . 15

2.5 Processo de poda de partículas . . . 16

2.6 Passos do algoritmo cPSC modificado . . . 18

2.7 Passos do algoritmo cPSC modificado em classes alternadas . . . 19

2.8 Esquema geral da abordagem para classificação de falhas . . . 20

2.9 Funcionamento da Abordagem Proposta . . . 21

2.10 Disposição dos dados gerados para realizar a análise da sensibilidade do algo-ritmo cPSC modificado . . . 22

2.11 Evolução da Taxa de acerto e da quantidade de partículas para o parâmetro γ1 24 2.12 Evolução da Taxa de acerto e da quantidade de partículas para o parâmetro ε1 25 3.1 Representação do sistema de acionamento C.C. . . 27

3.2 Diagrama de blocos do sistema de acionamento C.C. . . 28

3.3 Representação do sistema de acionamento C.C. para falhas nos atuadores. . . 31

3.4 Representação do sistema de acionamento C.C. para os diversos tipos de falhas. 35 3.5 Corrente de armadura, corrente de campo e velocidade para falha do tipo desconexão do conversor de armadura. . . 36

3.6 Corrente de armadura, corrente de campo e velocidade para falha do tipo desconexão do conversor de campo. . . 37

3.7 Esquema geral de um sistema de FDI utilizando observadores. . . 39

3.8 Resíduos gerados pelo observador de Luenberger. . . 40

3.9 Esquema da metodologia para detecção e classificação de falhas no Aciona-mento C.C. . . 41

3.10 Evolução da Taxa de acerto em cada situação . . . 43

3.11 Evolução da Quantidade de Partículas em cada situação . . . 44

3.12 Disposição dos valores de taxas de acerto em cada configuração do algoritmo 45 3.13 Disposição das quantidades de partículas em cada configuração do algoritmo 46 3.14 Diagrama do processo Tennessee Eastman . . . . 47

(11)
(12)

2.1 Resultado da análise do termo ω . . . . 23

3.1 Resumo das Falhas no sistema de acionamento C.C. . . 34

3.2 Resumo dos resultados após 100 execuções do algoritmo cPSC . . . 41

3.3 Resumo dos resultados do algoritmo cPSC com a primeira alteração . . . . 42

3.4 Resumo dos resultados do algoritmo cPSC com a segunda alteração . . . 42

3.5 Resumo dos resultados do algoritmo cPSC com as primeira e segunda altera-ções . . . 42

3.6 Resumo dos resultados do algoritmo cPSC com as primeira e segunda altera-ções e com Estagnação de Partículas . . . 42

3.7 Resumo dos resultados da abordagem completa . . . 43

3.8 Variáveis manipuladas do Sistema Tennessee Eastman . . . . 48

3.9 Medições Contínuas do Processo Tennessee Eastman . . . . 49

3.10 Medições Amostradas do Processo Tennessee Eastman . . . . 50

3.11 Falhas no Processo Tennessee Eastman . . . . 52

3.12 Taxa de acerto (%) e quantidade de partículas geradas pelo classificador pro-posto por falha . . . 54

3.13 Taxa de acerto (%) do classificador por falha sem as classes 9 e 14 . . . 55

3.14 Comparação da taxa de acerto(%) da abordagem proposta com PCA . . . . 56

3.15 Comparação da taxa de acerto(%) da abordagem proposta com SVM . . . . 57

(13)

1. FDI – Fault Detection and Isolation. 2. C.C. – Corrente Contínua.

3. AGNES – Agglomerative Nesting. 4. DIANA – Divisive Analysis. 5. SOM – Self-Organized Maps.

6. PAM – Partitioning Around Medoids. 7. CLARA – Clustering Large Applications. 8. AG – Algoritmo Genético.

9. PSO – Particle Swarm Optimization.

10. cPSC – Construtive Particle Swarm Clustering. 11. PSC – Particle Swarm Clustering.

12. SC – Subtractive Clustering.

13. QTA – Análise Qualitativa de Tendências. 14. SVM – Support Vector Machine.

15. PCA – Principal Component Analysis.

(14)

Introdução

1.1

Caracterização do Problema e Motivação

Atualmente existe um grande esforço de pesquisadores para se desenvolver métodos ca-pazes de detectar falhas em sistemas dinâmicos de forma segura. Essa detecção pode evitar perdas de materiais, desastres ambientais e até mesmo acidentes envolvendo seres humanos. Tal demanda deu origem à necessidade de sistemas com a capacidade de supervisão que inte-gram os sistemas de FDI (Fault Detection and Isolation) aplicados em processos e sistemas. Assim, a detecção de falhas pode ser vista como uma ação preventiva.

As falhas tratadas neste trabalho podem ser definidas como um afastamento da variável observada, ou do parâmetro calculado associado com o processo, em relação à faixa de valores aceitáveis. Assim, os três principais tipos de falhas em sistemas dinâmicos são: falhas abruptas, falhas incipientes e falhas intermitentes (Simani et al., 2003). As falhas abruptas acontecem em um pequeno intervalo de tempo e resultam em grandes desvios nas condições normais do processo; enquanto as falhas incipientes acontecem de forma gradativa e podem demorar muito tempo para serem detectadas; já falhas intermitentes ocorrem repetidamente nos sistemas e são modeladas como uma combinação de impulsos com diferentes amplitudes em diferentes instantes de tempo.

Nesse sentido, para resolver o problema de detecção e classificação de falhas em sistemas dinâmicos, várias abordagens são encontradas na literatura. Essas abordagens se dividem em Abordagens Qualitativas(Venkatasubramanian et al., 2003a) (Venkatasubramanian et al., 2003b) e Abordagens Quantitativas (Venkatasubramanian et al., 2003c). Os métodos basea-dos em abordagens quantitativas se baseiam em analisar resíduos de sinais provenientes de modelos matemáticos com sinais reais (Li et al., 2015), isto é, comparam os valores

(15)

tâneos das variáveis de estado do processo, medidas por sensores, com valores calculados analiticamente a partir do modelo (Takahashi and Peres, 1999) (Kalman, 1960) (Chen and Patton, 2012) (Ploix and Adrot, 2006) (Isermann, 1984) (Gao et al., 2008) (Ahmadizadeh et al., 2014). Já métodos baseados em abordagens qualitativas utilizam um conjunto de re-lações causais. Um exemplo é o uso de uma base de conhecimento para extrair informações sobre o estado de operação do processo ou sistema (Fábrega et al., 2014) (Jiang et al., 2013) (D’Angelo and Costa Jr, 2001) (Baccarini et al., 2011) Silva et al. (2012) Li et al. (2013) (D’Angelo et al., 2014) (Ding, 2014) (Inacio et al., 2015) (Lemos et al., 2013). Outro exemplo de abordagens qualitativas são os modelos baseados em Análise Qualitativa de Tendências (QTA) (Maurya et al., 2007) (Lemos, 2007) (Baccarini et al., 2010) (D’Angelo et al., 2011a). Considerando que as etapas de um sistema de FDI são detecção e classificação de falhas, neste trabalho é apresentada uma metodologia adaptativa para detecção e classificação de falhas. Com a finalidade de ilustrar a eficiência da metodologia, ela será aplicada em um sistema de acionamento de uma máquina de corrente contínua C.C., benchmark apresentado em (D’Angelo et al., 2010) e em um sistema de controle de um processo industrial apresentado em (Downs and Vogel, 1993).

A principal motivação deste trabalho está fundamentada na importância das tarefas de-tecção e classificação de falhas, pois falhas não detectadas e/ou não classificadas corretamente podem causar graves consequências, como: acidentes, impactos ambientais e perdas de bens materiais. Portanto, a implementação de sistemas capazes de detectar e classificar falhas com rapidez e precisão, minimizando tais impactos, se faz necessária (Venkatasubramanian, 2005). E ainda, apesar de existirem diferentes abordagens para a classificação de falhas em sistema dinâmicos, um único método pode não ser adequado para atender todos os requisitos de uma aplicação (Venkatasubramanian, 2005), devido a qualidade dos resultados desses mé-todos depender da qualidade das informações fornecidas. Uma forma de melhorar o sistema de detecção e classificação de falhas é propor abordagens que integrem características de mais de um método, superando assim as limitações existentes nas estratégias quando usadas de forma individual.

1.2

Objetivos

Este trabalho tem como objetivo principal propor uma abordagem capaz de detectar e classificar falhas. Para tanto, a abordagem proposta classifica falhas de forma adaptativa, visando maximizar a taxa de acerto e minimizar a quantidade de protótipos utilizados para representar as classes.

Este trabalho está fundamentado nos seguintes objetivos específicos:

(16)

existentes na literatura.

• Propor modificações em algumas das metodologias existentes, para tentar conseguir melhorias em seus resultados.

• Avaliar a metodologia proposta, comparando seus resultados com resultados de outras metodologias.

1.3

Metodologia

Com o objetivo de tratar o problema de detecção e classificação de falhas em sistemas dinâmicos, essa dissertação propõe uma metodologia capaz de detectar e classificar falhas utilizando variáveis do processo. A detecção será feita por uma abordagem tradicional e, quando alguma falha ou a hipótese de falha ocorrer, o classificador de falhas é acionado e os valores das variáveis do processo são passados a ele para que o mesmo determine qual falha ocorreu. A Figura 1.1 ilustra o esquema geral da metodologia.

Figura 1.1: Esquema geral da Abordagem Proposta

Para classificação de falhas de forma adaptativa, foi proposta uma técnica de agrupa-mento que se baseia nos trabalhos apresentados em (Chiu, 1996) e (Prior and de Castro, 2010), classificando falhas em duas etapas. Na primeira etapa, o método Subtractive Clus-tering (Chiu, 1996) encontra, de forma determinística, os protótipos dos grupos/classes. Na segunda etapa, uma versão do algoritmo cPSC (Prior and de Castro, 2010), adaptada para classificação de falhas, toma como valores iniciais para cada partícula os protótipos encon-trados na primeira etapa. Nessa etapa as partículas podem se clonar ou serem eliminadas de acordo com alguns critérios. As principais modificações feitas na versão proposta em (Prior and de Castro, 2010) estão relacionadas à métrica utilizada na obtenção da similaridade, aos

(17)

critérios de clonagem das partículas e acrescentado um novo mecanismo de estagnação de partículas. A abordagem será melhor explicada na Seção 2.2.

1.4

Artigos Publicados em Anais de Eventos

1. L. I. Santos, Marcos F.S.V. D’Angelo, L. M. Costa and R. M. Palhares. Uma Abor-dagem Adaptativa para Classificação de Falhas em Sistemas Dinâmicos. In: Simpósio Brasileiro de Automação Inteligente, 2015, Natal-RN.

2. L. I. Santos, Marcos F.S.V. D’Angelo and R. M. Palhares. Proposta de uma Aborda-gem Adaptativa para Classificação de Falhas em Sistemas Dinâmicos. In: Encontro Nacional de Modelagem Computacional e Engenharia de Materiais, 2015, Salvador-BA.

1.5

Organização do Trabalho

A parte restante deste trabalho é composta por mais 3 capítulos. No Capítulo 2 a abordagem proposta para classificação de falhas em sistemas dinâmicos é apresentada e, para fundamentá-la, é feita uma breve revisão sobre o algoritmo de otimização Particle Swarm Optimization e sobre os algoritmos de agrupamento Construtive Particle Swarm Clustering e Subtractive Clustering. No Capítulo 3 a abordagem proposta é aplicada em dois estudos de caso e os resultados obtidos são comparados com resultados de outras abordagens. Finalmente, no Capítulo 4 são discutidas as considerações finais.

(18)

Abordagem Proposta

Neste capítulo a abordagem proposta para classificação de falhas é apresentada. Para isso, alguns conceitos importantes sobre técnicas de agrupamento e Otimização por Enxame de Partículas são abordados.

2.1

Fundamentos Importantes

A tarefa agrupamento, ou Clustering, consiste na separação de padrões em grupos, de maneira que padrões pertencentes a um mesmo grupo tenham características similares e padrões pertencentes a grupos diferentes tenham características diferentes. Para tanto, uma métrica de similaridade é utilizada para comparar um padrão com outro ou parâmetros que definem os grupos. As métricas mais utilizadas são: distância Euclideana, distância de Hamming, distância de Mahalanobis, Medida do Cosseno, dentre outras.

Na literatura podem-se encontrar diversos trabalhos que abordam técnicas utilizadas para realizar a tarefa de agrupamento. Basicamente, elas podem ser divididas em Hierár-quicas e Particionais. Algoritmos baseados em técnicas HierárHierár-quicas dividem os padrões de forma sucessiva, com o objetivo de produzir uma representação hierárquica dos grupos, o que facilita a visualização de cada etapa do agrupamento, em contra partida, os padrões não podem mudar de grupo no decorrer do processo. Alguns algoritmos como Agglomera-tive Nesting(AGNES) (Kaufman and Rousseeuw, 1990a) (Mann and Kaur, 2013) e Divisive Analysis(DIANA) (Kaufman and Rousseeuw, 2009) (Sabitha et al., 2014) podem ser usados como exemplos de métodos hierárquicos. Ambos utilizam uma matriz de dissimilaridade entre grupos para realizar o agrupamento. Já nos algoritmos Particionais, os padrões podem mudar de grupo no decorrer do processo. Tais algoritmos são mais indicados para se

(19)

lhar com grandes quantidade de padrões. Eles se baseiam na minimização de uma função de custo, em que os padrões são agrupados em um número k de grupos. Uma das principais desvantagens dos métodos particionais está na obrigatoriedade de se escolher um valor a priori para k e ainda no fato de esse valor influenciar diretamente na qualidade do agrupa-mento gerado. Como exemplos desse tipo de método, pode-se destacar: k-means (MacQueen et al., 1967) (Hartigan, 1975) (Hartigan and Wong, 1979) (Tzortzis and Likas, 2014) (Xie et al., 2011) (Kettani et al., 2015), Self-Organized Maps(SOM) (Kohonen, 1990) (Kohonen, 2013) (Cao et al., 2012) (Pasa et al., 2015), Partitioning Around Medoids(PAM) (Kaufman and Rousseeuw, 1990b) (Van der Laan et al., 2003) (Handl and Knowles, 2005) (Park and Jun, 2009) (Singh and Chauhan, 2011), Clustering Large Applications(CLARA)(Kaufman and Rousseeuw, 1990b) (Ng and Han, 2002) (Zhang and Couloigner, 2005).

Alguns algoritmos, que são inspirados no processo de evolução natural, são denominados Algoritmos Evolucionários por que evoluem uma população de estruturas (indivíduos, partí-culas, vetores, programas e etc), buscando encontrar soluções que otimizem alguma função de custo (Fogel, 1994). Nesse contexto, alguns desses métodos são utilizados para realizar a tarefa de agrupamento a partir de um conjunto de padrões. Um dos principais Algoritmo Evolucionário, é o Algoritmo Genético (AG), no qual uma população é formada por estru-turas denominadas indivíduos e cada indivíduo representa uma solução possível para um problema de otimização. Um indivíduo é uma estrutura de dados codificada em binário ou por uma string denominada cromossomo. De uma maneira geral, esse tipo de codificação é utilizada para permitir o funcionamento dos operadores de mutação e cruzamento na ten-tativa de encontrar indivíduos geneticamente melhores. Além desses dois operadores, em um AG ainda existem os operadores de recombinação e seleção. Na literatura podem-se encontrar diversos trabalhos que utilizam AG para realizar a tarefa de agrupamento(Hall et al., 1999) (Goldberg and Holland, 1988) (Liu et al., 2011) (Chang et al., 2012) (Agustín et al., 2012) (Wikaisuksakul, 2014). Geralmente esses métodos buscam encontrar um con-junto de indivíduos que, ao final da execução do algoritmo, se tornem protótipos de grupos, minimizando a soma das dissimilaridades entre padrões e indivíduos/grupos mais similares. Outra classe de métodos evolucionários que recentemente estão tomando as atenções de pesquisadores são os algoritmos baseados em enxames de partículas. E, nesse contexto, o Particle Swarm Optimization (PSO)(Kennedy, 2010) tem se destacado. Dessa forma, a próxima subseção apresenta o algoritmo de Otimização PSO, utilizado como base para desenvolver os algoritmos PSC e cPSC que são bases do presente trabalho.

2.1.1

Particle Swarm Optimization

(PSO)

No PSO as estruturas evoluídas são denominadas partículas e elas representam uma solução possível de alguma função objetivo, assim como os indivíduos nos AGs. O PSO

(20)

é um algoritmo de otimização baseado na teoria do comportamento social de bandos de pássaros (partículas). Segundo essa teoria, um pássaro faz uso de sua própria experiência e da experiência do bando para encontrar comida (Kennedy, 2010). De forma que, uma partícula para se movimentar deve seguir três princípios:

• Inércia: Tendência a se movimentar na direção adotada na iteração anterior;

• Memória: Tendência a se movimentar na direção da melhor solução encontrada pela partícula até a iteração atual (P best);

• Cooperação: Tendência a se movimentar na direção da melhor solução encontrada pelo grupo de partículas até a iteração atual (Gbest).

Para se movimentar pelo espaço de busca, uma partícula possui posição e velocidade. A cada iteração a posição é atualizada (movimentação de partícula) utilizando a velocidade calculada na iteração anterior. A velocidade de uma partícula i na iteração t, dada por Vi(t),

é obtida por:

Vi(t + 1) = Vi(t) + ρ1C1(P besti− Xi) + ρ2C2(Gbest − Xi) (2.1)

Utilizando o valor obtido em (2.1), é calculada uma nova posição para a partícula (Xi(t+

1)):

Xi(t + 1) = Xi(t) + Vi(t + 1) (2.2)

Sendo: Xi(t) a posição da partícula i na iteração t, P besti a melhor solução encontrada

pela partícula i até a iteração t, Gbest a melhor solução encontrada pelo grupo de partículas até a iteração t, C1 e C2 são pesos definidos para os fatores de memória e de cooperação, respectivamente, e ρ1 e ρ2 são valores aleatórios, gerados de uma distribuição uniforme no intervalo [0,1], e são utilizados para inserir características estocásticas ao algoritmo.

Os termos C1e C2ponderam a influência dos fatores de memória e cooperação da seguinte maneira: se o termo C1 for maior que o termo C2, a partícula terá mais chances em se mover na direção do P best do que na direção do Gbest, e se o termo C2 for maior que o termo C1, a partícula terá mais chances em mover na direção do Gbest do que na direção do P best.

A Figura 2.1 ilustra como os termos P best e Gbest influenciam na movimentação da partícula X. Nela, o vetor X(t + 1), nova posição da partícula, é a soma dos vetores X(t) e V(t + 1).

O algoritmo PSO é executado da seguinte maneira:

(21)

Figura 2.1: Movimentação de uma partícula no PSO 2. Avalie cada partícula;

3. Atualize, caso necessário, os valores para os termos P best e Gbest; 4. Atualize a velocidade de cada partícula, de acordo com (2.1); 5. Atualize as posições das partículas de acordo com (2.2);

6. Repita do passo 2 ao passo 5 até que se atinja algum critério de parada;

De outra maneira, quando aplicado a tarefa de agrupamento (Van der Merwe and En-gelbrecht, 2003) (Cui et al., 2005) (Omran et al., 2005)(Zhan et al., 2009) (Agrawal et al., 2008) (Cohen and de Castro, 2006)(Karaboga and Ozturk, 2011), as partículas do PSO são evoluídas afim de se tornarem, ao final, protótipos de grupos.

Nas subseções 2.1.2 e 2.1.3 serão apresentados os algoritmos Construtive Particle Swarm Clustering (Prior and de Castro, 2010) e Subtractive Clustering (Chiu, 1996) com o objetivo de fundamentar o sistema de classificação de falhas proposto na seção 2.2.

2.1.2

Construtive Particle Swarm Clustering

(cPSC)

Em (Cohen and de Castro, 2006) é apresentado o algoritmo de agrupamento PSC (Par-ticle Swarm Clustering). Inspirado no PSO, o PSC utiliza um termo de auto-organização (Kohonen, 1990) no mecanismo de movimentação de partículas, além dos termos de memória

(22)

e cooperação. No PSC cada padrão de entrada é apresentado ao enxame de partículas e a partícula com maior similaridade com o padrão se move na direção dele. A movimentação da partícula é influenciada pelos termos Memória, Cooperação e de Auto-organização. En-tretanto, assim como na maioria dos algoritmos de agrupamento baseado em partição, no PSC a quantidade (k) de grupos deve ser definida a priori.

No PSC a velocidade de uma partícula é atualizada com:

Vv(t + 1) = ωVv(t) + ϕ1⊗(P bestvj(t) − Xv(t)) + (2.3)

ϕ2⊗(GbestJ(t) − Xv(t)) + ϕ3⊗(Yj− Xv(t))

Na expressão (2.3): ω é o termo de inércia utilizado para evitar que partículas com ve-locidades muito altas se desloquem para fora do universo de discurso. Os termos ϕ1, ϕ2 e ϕ3 são vetores de pesos aleatórios, gerados por uma distribuição uniforme no intervalo [0,1], utilizados para ponderar os termos de: memória, cooperação e auto-organização, respectiva-mente, de cada partícula. O operador ⊗ representa uma mutiplicação elemento a elemento dos vetores. O P best representa a melhor posição da partícula (maior similaridade) em re-lação ao padrão de entrada, e o Gbest representa a melhor posição de todas as partículas em relação ao padrão de entrada. Inicialmente, o P best é definido como a posição inicial de cada partícula, a medida que a partícula se movimenta, a posição atual e o P best daquela partícula são comparados e, caso a posição atual possua maior similaridade que o P best em relação ao padrão de entrada, tal posição passa a ser o P best. Já o Gbest é atualizado tomando sempre o melhor P best para um determinado padrão de entrada.

Baseado no PSC, o algoritmo Construtive Particle Swarm Clustering (cPSC) foi proposto, diferenciando-se na capacidade de encontrar, de forma automática, o número de grupos, visto que no PSC essa informação era um parâmetro de entrada. Para resolver essa deficiência do algoritmo PSC, (Prior and de Castro, 2010) propõe o cPSC que, inspirado em (de Castro et al., 2003), adiciona os operadores de crescimento (clonagem) e poda de partículas, fazendo com que ao final de sua execução exista um "número ótimo" de grupos.

O crescimento das partículas acontece da seguinte maneira: durante a execução do al-goritmo, é determinado o nível de concentração de cada partícula do enxame como sendo a quantidade de padrões de entrada que essa partícula representa. Se o nível de concentração de uma determinada partícula for maior que zero, essa partícula se torna candidata a ser clonada; se a similaridade de uma partícula candidata com o padrão de entrada de maior similaridade com essa mesma partícula for maior que um limiar ε, então a partícula será clonada. Essa nova partícula (clone) será posicionada entre a partícula clonada e o padrão de entrada de maior similaridade. Já no processo de poda, é verificado o nível de concen-tração das partículas. Se uma partícula mantiver seu nível de concenconcen-tração igual a zero por um número de iterações maior do que um limiar pré-definido, então ela será eliminada do enxame.

(23)

1. Tome os padrões de treinamento.

2. Inicialize k partículas de forma aleatória.

3. Para cada padrão, determine a partícula de maior similaridade (partícula vencedora). 4. Atualize os termos P best e Gbest da partícula vencedora, caso necessário.

5. Atualize a velocidade da partícula vencedora de acordo com (2.3).

6. Atualize a posição da partícula vencedora utilizando: Xv(t + 1) = Xv(t) + Vv(t + 1).

7. Determine o nível concentração de cada partícula do enxame. 8. Elimine partículas com níveis de concentração iguais a zero.

9. Clone partículas com níveis de concentração maiores que zero e similaridades com o padrão mais similar maiores que ε.

10. Diminua o valor de ω por alguma função linear.

11. Repita do passo 3 ao passo 10 até que algum critério de parada seja satisfeito.

Afim de ilustrar a movimentação das partículas, para que elas se tornem protótipos de grupos, foram gerados dados de treinamento e uma partícula. O processo é ilustrado na Figura 2.2, em que tem-se os padrões de entrada (na cor vermelha), dispostos afastados da partícula (na cor preta) e a medida que os padrões são apresentados ao algoritmo cPSC, a partícula se aproxima deles. Ao final, a partícula está situada próxima ao centro do conjunto de padrões.

2.1.3

Subtractive Clustering

(SC)

O método Subtractive Clustering (SC), apresentado em (Chiu, 1996), busca um conjunto de protótipos que minimize a soma das distâncias de cada padrão ao protótipo mais próximo. Para isso, utiliza um mecanismo de subtração dos potenciais dos protótipos. Inicialmente, todos os padrões são tomados como possíveis protótipos e um valor (Pi) do potencial de cada

protótipo é determinado utilizando a expressão:

Pi = nc X j=1 e− 4 ra2kXi−Xjk 2 (2.4)

(24)

0 0.5 1 1.5 2 2.5 3 0 1 2 3 (a) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 (b) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 (c) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 (d) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 (e) 0 0.5 1 1.5 2 2.5 3 0 1 2 3 (f)

Figura 2.2: Mecanismo de movimentação de uma partícula no cPSC

Sendo: nc a quantidade de protótipos inicial (quantidade de padrões de treinamento) e ra o raio, quanto maior seu valor menor a quantidade de protótipos encontrados (Naresh

et al., 2008).

Quando, os potenciais de todos os protótipos forrem determinados, o protótipo com maior valor de P é selecionado para ser o primeiro protótipo (X

1). Em (2.4) percebe-se que protótipos em regiões mais densas têm maiores chances de serem selecionados.

A próxima etapa do agrupamento diminui o valor dos potenciais de todos os protótipos de acordo com: Pi = Pi− P1∗e −4 r2 b kXi−X1∗k 2 (2.5) Sendo: P

1 o potencial do primeiro protótipo, Xi a posição do i-ésimo protótipo, X1∗ a posição do primeiro protótipo, rb o raio entre os protótipos X1∗ e Xi e geralmente se utiliza

1.25ra (Chiu, 1996).

Nessa etapa, os potenciais de todos os protótipos próximos do protótipo X

1 diminuem em maior intensidade que de protótipos mais distantes. Com isso, a possibilidade do protótipo X1∗ ser selecionado em uma próxima iteração passa a ser zero e de protótipos próximos de X

(25)

Na versão utilizada neste trabalho, o SC separa os padrões de treinamento, de acordo com a classe, e para cada classe executa os passos a seguir (Santos et al., 2015b):

1. Tome todos os padrões como protótipos do grupo.

2. Para cado protótipo é calculado o potencial(Pi) utilizando (2.4);

3. Selecione o protótipo com maior potencial, P

1 = Max(P ); 4. Recalcula Pi para todos os protótipos de acordo com (2.5);

5. O processo termina quando P < f1P1∗ para todos os protótipos;

O termo f1 representa uma fração predefinida do potencial de P1∗ e quanto maior seu valor menor a quantidade de protótipos selecionada.

A Figura 2.3 ilustra o funcionamento do Algoritmo SC em 4 iterações (Figuras 2.3(a), 2.3(b), 2.3(c) e 2.3(d)). Nessa Figura, protótipos na cor vermelha possuem alto potencial e, consequentemente, alta probabilidade de serem selecionados. Já protótipos na cor verde, possuem baixo potencial. O protótipo selecionado em cada iteração, é representado pela cor azul. Na primeira iteração (Figura 2.3(a)) é selecionado o primeiro protótipo, que se localiza em uma região de grande densidade. Na segunda iteração (Figura 2.3(b)) é selecionado o segundo protótipo. Observe que o potencial dos protótipos tomados como altos na primeira iteração, são baixos na segunda iteração. Isso acontece devido ao mecanismo de subtração dos potenciais.

O problema desse método é que nem sempre os padrões, tomados como protótipos dos grupos, representam exatamente os centros dos grupos. Isso por que o protótipo selecionado tem a mesma coordenada de um dos padrões de treinamento e a escolha é influenciada por protótipos que estão em regiões mais concentradas.

A próxima seção apresenta a abordagem proposta neste trabalho para classificação de falhas. Essa abordagem é baseada nos algoritmos SC e cPSC.

2.2

Abordagem Adaptativa para Classificação de

Fa-lhas

O objetivo principal deste trabalho, é propor uma abordagem, para classificação de falhas, que seja capaz de criar novos protótipos para representar uma mesma classe na tentativa

(26)

3 3.2 3.4 3.6 3.8 4 4.2 4.4 3 3.2 3.4 3.6 3.8 4 4.2 4.4 (a) Alto Potencial Baixo Potencial Centro Selecionado 3 3.2 3.4 3.6 3.8 4 4.2 4.4 3 3.2 3.4 3.6 3.8 4 4.2 4.4 (b) Alto P Baixo P Centro Novo Centro 3 3.2 3.4 3.6 3.8 4 4.2 4.4 3 3.2 3.4 3.6 3.8 4 4.2 4.4 (c) Alto P Baixo P Centro Novo Centro 3 3.2 3.4 3.6 3.8 4 4.2 4.4 3 3.2 3.4 3.6 3.8 4 4.2 4.4 (d) Alto P Baixo P Centro Novo Centro

Figura 2.3: Funcionamento do Algoritmo SC

de aumentar a taxa final de acerto, de forma significativa sem, no entanto, aumentar sig-nificativamente a quantidade de protótipos. Para alcançar esse objetivo, o trabalho propõe modificações no algoritmo cPSC para maximizar a taxa de acerto e minimizar a quantidade de protótipos, inserindo características supervisionadas, tendo em vista que o cPSC é um algoritmo de agrupamento (aprendizado não supervisionado), ou seja, o rótulo (classes) dos padrões de entrada não são levados em consideração na formação dos grupos.

A primeira modificação foi feita na obtenção da similaridade entre uma partícula e o padrão de entrada. Na versão proposta em (Prior and de Castro, 2010) a métrica de si-milaridade utilizada foi a medida do Cosseno. Já na versão proposta aqui, foi utilizada a distância Euclideana, visto que os dados utilizados para treinamento e teste da abordagem são contínuos. Quando uma partícula concentra uma quantidade razoável de padrões de en-trada e tem uma baixa taxa de acerto, essa partícula tende a diminuir a taxa de acerto final do algoritmo. Dessa forma, a clonagem da partícula possibilita o aumento da taxa de acerto das duas partículas (clonada e clone), pois a partícula clone poderá representar padrões de classes diferentes das classes dos padrões representados pela partícula clonada. Conside-rando tal fato, a segunda modificação foi realizada no critério de crescimento das partículas e na forma como a clonagem é feita. Os critérios de crescimento utilizados foram o nível de

(27)

concentração e a taxa de acertos, visto que os dados, aqui tratados, eram rotulados. Se uma determinada partícula possui nível de concentração maior que um limiar ε1 e taxa de acertos menor que γ1 então a partícula será clonada. A partícula clonada gera uma nova partícula e essa sofre uma pequena alteração na direção de uma de suas variáveis (Santos et al., 2015a). Na terceira modificação, foi introduzido o conceito de estagnação de partículas, que consiste em não movimentar partículas com taxas de acertos e níveis de concentrações considerados bons (Santos et al., 2015b). Portanto, caso uma partícula possua nível de concentração maior que um limiar ε2 e taxa de acerto maior que um limiar γ2 tal partícula não será movimen-tada naquela iteração do algoritmo. Esse mecanismo foi introduzido porque, no decorrer da apresentação dos padrões às partículas, as regiões com grandes concentração de padrões tendem a atrair mais partículas, e se nessas regiões os padrões pertencem a muitas classes, a taxa de acerto das partículas atraídas diminuirá.

As Figuras 2.4 e 2.5 ilustram o funcionamento dos operadores de clonagem e poda de partículas, respectivamente.

A Figura 2.4(a) ilustra a situação em que uma partícula possui alto nível de concentração e baixa taxa de acertos, a Figura 2.4(b) ilustra o momento que a clonagem acontece. Na Figura 2.4(a) existem 3 classes e apenas duas partículas, por ela, percebe-se que a partícula 2 concentra uma quantidade de padrões maior que a partícula 1. Porém, a partícula 1 concentra padrões de apenas uma classe (classe 1) e possui uma taxa de acerto maior que a partícula 2, que concentra padrões de duas classes (classes 2 e 3). Portanto, a partícula 2 é clonada. Quando acontece a clonagem, a partícula 3 (clone) passa a concentrar parte dos padrões que eram concentrados pela partícula 2 (clonada) e isso pode aumentar a taxa de acerto final do algoritmo, e também, pode melhorar a disposição das partículas em relação aos padrões, fazendo a partícula clone ir para o centro do grupo da classe 3.

A Figura 2.5 ilustra o funcionamento do mecanismo de poda de partículas. Nela, os pontos na cor vermelha representam os padrões e nas cores azul e preta as partículas. Na Figura 2.5(a), observa-se, claramente, que todos os padrões estão concentrados em apenas uma das partículas (Partícula 1) já que ela é a mais similar a todos os padrões. Sendo assim, a partícula 2 deve ser eliminada do enxame, o que é mostrado na Figura 2.5(b).

Os passos necessários para execução do algoritmo cPSC modificado (com as 3 modifica-ções) são:

1. Tome os padrões de treinamento. 2. Gere k partículas de forma aleatória;

3. Para cada padrão de entrada encontre a partícula vencedora que é aquela que possue o maior valor de similaridade com o padrão.

(28)

0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3 (a) Classe 1 Classe 2 Classe 3 Partícula 1 Partícula 2 0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3 (b) Classe 1 Classe 2 Classe 3 Partícula 1 Partícula 2 Partícula 3

Figura 2.4: Processo de clonagem de partículas 5. Atualize a velocidade da partícula vencedora de acordo com:

Vv(t+1) = ωVv(t)+ϕ1⊗(P bestvj(t)−Xv(t))+ϕ2⊗(GbestJ(t)−Xv(t))+ϕ3⊗(Yj−Xv(t))

6. Atualize a posição da partícula vencedora utilizando a expressão: Xv(t + 1) = Xv(t) +

Vv(t + 1).

7. Calcule o nível de concentração e a taxa de acerto de cada partícula do enxame 8. Elimine partículas com níveis de concentração iguais a zero.

9. Clone partículas com níveis de concentração maiores que ε1 e taxas de acerto menores que γ1.

10. Marque como estagnada todas as partículas com níveis de concentração maior que ε2 e taxas de acertos maiores que γ2.

11. Diminua o valor de ω por alguma função linear.

(29)

0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3 (a) Padrões Particula 1 Particula 2 0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3 (b) Padrões Particula

Figura 2.5: Processo de poda de partículas

O nível de concentração de uma partícula é obtido como a razão entre a quantidade de padrões que essa partícula concentra (a partícula é a mais similar ao padrão dentre todas as partículas) e a quantidade total de padrões. Esse valor é utilizado também na obtenção da taxa de acertos. Essa taxa é obtida sendo a razão entre a quantidade de padrões pertencentes à classe majoritária, dentre todas as classes existentes nos padrões que a partícula concentra, e a quantidade total de padrões concentrados pela partícula.

Os passos necessários para calcular o nível de concentração das partículas são: 1. Faça iguais a 0 os níveis de concentração de todas as partículas;

2. Tome um padrão de treinamento;

3. Encontre a partícula de maior similaridade com o padrão (P T Rv);

4. Incremente em 1 o nível de concentração de P T Rv;

5. Marque o padrão como concentrado em P T Rv;

6. Repita do passo 2 ao 5 até verificar todos os padrões;

(30)

1. Tome uma partícula (P RTj) do enxame;

2. Usando todos os padrões (Nj) concentrados naquela partícula obtenha a classe

majo-ritária;

3. encontre a quantidade de padrões concentrados na partícula que pertencem à classe majoritária (NmaxCj);

4. Calcule a taxa de acertos da partícula, como: T axaj = N maxCN j

j

5. Repita do passo 1 ao 4 até calcular as taxas de acertos de todas as partículas;

Para ilustrar o funcionamento do cPSC modificado foram gerados dados artificiais e exe-cutado o algoritmo. Esse processo é ilustrado na Figura 2.6, onde existem dados pertencentes a 3 classes com as cores vermelha, verde e preta e ainda as partículas na cor azul. O processo se inicia com apenas duas partículas geradas (Figura 2.6(a)). Logo em seguida a partícula mais próxima dos dados se move em direção aos dados da classe de cor preta (Figura 2.6(b)). Como essa partícula passa a concentrar todos os dados, ela possui alto nível de concentração e baixa taxa de acertos. Portanto, ela é clonada, gerando uma nova partícula. As partículas continuam sendo clonadas até que a taxa de acertos de cada partícula seja maior que o limiar pré-definido (γ1) ou que seu nível de concentração não ultrapasse um limiar (ε1). Pode-se observar que a partícula que concentra dados da classe de cor preta não se movimenta desde o passo 3 (Figura 2.6(c)), isso acontece por conta do mecanismo estagnação de partículas, já que essa partícula possui nível de concentração e taxa de acertos considerados bons pelo algoritmo.

Ainda pela Figura 2.6, pode-se perceber a eliminação de partículas do segundo (Figura 2.6(b)) para o terceiro passo (Figura 2.6(c)). Note que da Figura 2.6(b) para a 2.6(c) a quantidade de partículas diminui de três para duas. Isso acontece por que a partícula eliminada não é a mais similar a nenhum dos dados dentre as 3 partículas do enxame.

Outro teste foi realizado com o cPSC modificado para classificar dados, na situação em que dados de uma mesma classe estão separados por dados de outra(s) classe(s), como acontece com os dados da Figura 2.7, nessa Figura, os dados pertencentes à classe 1 (cor vermelha) estão separados pelos dados das classes 2 e 3, cores verde e preto, respectivamente. Inicialmente o algoritmo gera 3 partículas, já que são 3 classes existentes nos dados. Na Figura 2.7(b) as partículas já se organizam de forma que uma delas concentra parte dos dados da classe 1, outra dados da classe 2 e a ultima concentra dados tanto da classe 3 quanto os demais dados da classe 1. Como a terceira partícula concentra dados de mais de uma classe, ela possui uma baixa taxa de acertos, portanto, deve ser clonada, gerando uma quarta partícula que concentra os demais dados da classe 1.

(31)

1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (a) 1 2 3 4 5 6 7 0 2 4 6 (b) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (c) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (c) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (d) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (e)

Figura 2.6: Passos do algoritmo cPSC modificado

De forma geral, algoritmo cPSC modificado consegue encontrar partículas que são pro-tótipos dos grupos existentes nos padrões e ainda com uma boa taxa de acertos. Porém, quando existem muitas classes ou elas não estão totalmente separadas, o algoritmo pode demorar a encontrar uma disposição das partículas que represente uma boa taxa de acertos, fazendo com que o algoritmo, na tentativa de melhorar a taxa de acertos, aumente a quan-tidade de partículas em função da utilização do operador de clonagem. Como a abordagem deve maximizar a taxa de acertos e minimizar a quantidade de partículas, um mecanismo para estimar o enxame de partículas inicial foi utilizado. Esse mecanismo consiste em utilizar o algoritmo SC para gerar os protótipos dos grupos em cada classe utilizando os padrões de treinamento. Assim, na abordagem proposta, as partículas não mais são geradas de forma aleatória, passando a ser os protótipos encontrados pelo algoritmo SC (Santos et al., 2015b). A Figura 2.8 mostra o esquema geral da abordagem proposta.

A Figura 2.9 ilustra o funcionamento da abordagem proposta para classificação de falhas (SC + cPSC Modificado), na qual os dados utilizados são rotulados para fins de comparação do SC com a abordagem proposta completa e para que o processo de movimentação de partículas fique mais claro. Na Figura 2.9, observe que as partículas encontradas pelo SC (Figura 2.9(a)) são movimentadas durante a execução do algoritmo cPSC modificado

(32)

1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (a) 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (b) 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (c) 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (d) 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (e) 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 0 2 4 6 (f)

Figura 2.7: Passos do algoritmo cPSC modificado em classes alternadas

(Figuras 2.9(b) a 2.9(f)). Isso acontece por que, inicialmente, elas não possuem boas taxas de acertos (95% no total). Já no fim da execução, Figura 2.9(f), todas possuem taxas de acertos iguais a 100%. Observe, ainda, que as partículas não são inicializadas (Figura 2.9(a)) exatamente nos centros de cada grupo/classe. Por exemplo, a segunda partícula, para a classe de cor vermelha, canto superior direito, inicialmente está concentrando dados da classe de cor preta, e isso faz a taxa de acerto diminuir, sendo assim, o cPSC modificado, busca encontrar uma melhor disposição para essa partícula, de modo que sua taxa de acertos aumente.

A ideia básica da abordagem é, a partir dos medoides (protótipos) encontrados pelo SC, inicializa as partículas do cPSC modificado. O SC pode conseguir uma boa taxa de acertos com um número de protótipos relativamente pequeno inicialmente. Dessa forma, cabe ao cPSC modificado tentar, movimentando, clonando e podando essas partículas, encontrar uma melhor disposição para elas, de modo que a taxa de acertos aumente e a quantidade de protótipos geradas pelo SC não aumente em grandes proporções.

(33)

Figura 2.8: Esquema geral da abordagem para classificação de falhas

2.3

Análise de Sensibilidade do Algoritmo cPSC

mo-dificado

Para aplicar a abordagem proposta em problemas de classificação de falhas, deve-se definir os seguintes parâmetros: ω, ε1, γ1, ε2 e γ2, todos pertencentes ao algoritmo cPSC modificado. Por isso, uma análise da sensibilidade do algoritmo em relação a esses parâmetros é necessária. Dessa forma, nessa seção será feita uma análise simplificada da influência desses parâmetros na taxa de acerto e quantidade de partículas geradas pelo algoritmo. Para isso, foram gerados dados artificiais e simulada a execução do algoritmo com vários valores para os parâmetros.

Foram gerados 200 pontos artificiais, distribuídos uniformemente em 4 classes. A Figura 2.10 apresenta a disposição desses pontos.

Em todos os testes, o algoritmo foi executado 100 vezes e a melhor taxa de acerto e a quantidade de partículas correspondente foram amostradas.

O parâmetro ω foi o primeiro a ser analisado. Para isso, aos parâmetros ε1, γ1, ε2 e γ2 foram fixados os seguintes valores: 0,5; 50; 0,95 e 49. O algoritmo foi executado com os valores para ω listados na tabela 2.1.

(34)

1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (a) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (b) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (c) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (d) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (e) 1 1.5 2 2.5 3 3.5 4 4.5 5 1 2 3 4 5 (f)

Figura 2.9: Funcionamento da Abordagem Proposta

Os resultados mostram que para valores de ω entre 0,01 e 0,7 a taxa de acertos varia de 88% a 94%, porém para os valores de ω sendo 0,001 e 0,9 as taxas são 66% e 75%, respectivamente. Com relação à quantidade de partículas, a mesma variou de 4 a 8 em todos os testes. Isso mostra que o parâmetro ω influencia na taxa de acertos final do cPSC modificado porém não exerce influência na quantidade de partículas geradas.

O segundo parâmetro a ser analisado foi o γ1 (taxa acertos de uma partícula para que ela seja clonada). Para os testes foram utilizados valores fixos para os demais parâmetros(ω=0,5; ε1=50; ε2=0,95 e γ2=49) e o parâmetro γ1 variando com os valores: 0,1; 0,2; 0,3; 0,4; 0,5; 0,6; 0,7; 0,8; 0,9; 0,95; 0,96; 0,97; 0,98; 0,99. O resultados são apresentados na Figura 2.11, por ela verifica-se que o parâmetro analisado exerce grande influência na quantidade de partículas geradas. Quanto maior seu valor, maior a quantidade de partículas, e ainda, o parâmetro γ1 exerce uma pequena influência na taxa de acertos. Isso acontece, porque o parâmetro γ1 foi criado, exatamente, para que algoritmo tente aumentar sua taxa de acertos final criando novas partículas para que elas concentrem padrões de outras regiões.

Para analisar a influência do parâmetro ε1, foram realizados testes com valores no inter-valo [10, 190], variando de 10 em 10 e fixado inter-valores para os demais parâmetros. A Figura 2.12 apresenta as evoluções da taxa de acertos e da quantidade de partículas, pela Figura nota-se que para o parâmetro ε1 o algoritmo se comporta de maneira contrária em relação ao

(35)

1 1.5 2 2.5 3 3.5 4 4.5 1 1.5 2 2.5 3 3.5 4 4.5 Classe 1 Classe 2 Classe 3 Classe 4

Figura 2.10: Disposição dos dados gerados para realizar a análise da sensibilidade do algo-ritmo cPSC modificado

parâmetro γ1, implicando na diminuição tanto da taxa de acertos quanto da quantidade de partículas. O parâmetro ε1, assim como o γ1, é usado como critério de clonagem, do seguinte modo: quando uma partícula possui nível de concentração maior que ε1 ela será clonada, ou seja, quanto menor o valor de ε1, mais partículas poderão ser clonadas, o que tende a aumentar a quantidade de partículas e consequentemente a taxa de acertos.

Os testes, tanto no parâmetro ε2 quanto no γ2, mostraram que os parâmetros não in-fluenciam nem na taxa de acertos final nem na quantidade de partículas para essa base de dados. Isso acontece por que as classes da base de dados estão, relativamente, bem separa-das. Intuitivamente, pode-se perceber que: valores pequenos de ε2 e grandes de γ2 induzem o algoritmo a aceitar baixas taxas de acertos, tendo em vista, que as partículas vão parar de movimentar quando atingir tais limiares; para valores grandes de ε2 e pequenos de γ2 pode ocorrer uma alta taxa de acertos e grande quantidade de partículas, já que partículas com baixa concentração têm mais chances de ter alta taxa de acertos; para valores grandes de ε2

(36)

Tabela 2.1: Resultado da análise do termo ω ω Acerto (%) Partículas 0,001 66 8 0,010 88 7 0,030 93 6 0,050 91 5 0,070 91,50 5 0,100 91 5 0,200 93,50 5 0,300 89,50 6 0,400 94 6 0,500 92 5 0,600 89 5 0,700 90 5 0,800 88,50 4 0,900 75 5

e grandes de γ2 induz uma alta taxa de acertos, porém, podem não existir partículas que se encaixem em tais condições.

(37)

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.8 0.82 0.84 0.86 0.88 0.9 0.92 0.94 Parâmetro % Acerto

Evolução da Taxa de Acerto

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 4 5 6 7 8 9 Parâmetro Quantidade de Partículas

Evolução da Quantidade de Partículas

(38)

0 50 100 150 200 0 10 20 30 40 Parâmetro Quantidade de Partículas

Evolução da Quantidade de Partículas

0 50 100 150 200 0.88 0.9 0.92 0.94 0.96 Parâmetro % Acerto

Evolução da Taxa de Acerto

(39)

Aplicações

Para testar a eficiência da abordagem proposta, a mesma será aplicada em dois pro-blemas. O primeiro será o Sistema de Acionamento para o Motor de Corrente Contínua C.C. (D’Angelo et al., 2010) e o segundo será no sistema de controle de processo indus-trial apresentado em (Downs and Vogel, 1993). Assim, a próxima seção apresenta o modelo de acionamento C.C., apresentado em (D’Angelo et al., 2010) e compara os resultados da aplicação da abordagem proposta nesse problema com os resultados da versão original do cPSC. A segunda seção será utilizada para apresentar o segundo problema e os resultados da aplicação da abordagem proposta comparados com outras duas abordagens.

3.1

Aplicação no Sistema de Acionamento para o

Mo-tor C.C.

O sistema de acionamento C.C. é composto por duas fontes de alimentação, converso-res estáticos controlados, uma máquina de corrente contínua e uma carga mecânica, como ilustrado na Figura 3.1. O diagrama de blocos do sistema completo, incluindo o controle, é ilustrado na Figura 3.2. O controlador de velocidade, tipo proporcional integral, fornece o valor da corrente de armadura de referência. O controle da corrente da armadura é feito através da variação da tensão de alimentação. Esta tensão é função do ângulo de disparo do conversor, fornecido pelo controlador de corrente. A malha de campo, além de proporcionar o controle da corrente, permite que o sistema de acionamento opere à velocidade acima da nominal com potência constante, via enfraquecimento de campo (Bose, 1986).

Na Figura 3.1, va representa a tensão de alimentação do circuito da armadura, vf d a

(40)

Figura 3.1: Representação do sistema de acionamento C.C.

tensão de alimentação do circuito de campo, ia a corrente do circuito de armadura, if d a

corrente do circuito de campo, e na Figura 3.2, ωr a velocidade mecânica de rotação em

rad/s, αf d o ângulo de disparo do conversor do circuito de campo e αa o ângulo de disparo

do conversor do circuito de armadura. Sendo que as variáveis indexadas por n são referentes a valores nominais da máquina.

A corrente de campo de referência é calculada da seguinte forma: if d =      inf d, para ωr≤ ωn r, inf d ωn r ωr , para ωr> ωnr (3.1)

3.1.1

Modelo do Benchmark do Motor C.C.

A máquina de corrente contínua possui o campo (excitação) independente da armadura, como mostrado na Figura 3.1. Considerando as correntes ia e if d e a velocidade ωr como

variáveis de estado, o modelo dinâmico para a máquina funcionando como motor é dado pela equação 3.2.                  dia dt = 1 La (va− raia− ea) dif d dt = 1 Lf d (vf d− rf dif d) dωr dt = 1 Jm (Tem− Bmωr− TL) (3.2)

sendo ra a resistência do circuito da armadura, rf d a resistência do circuito de campo, La a

(41)

Figura 3.2: Diagrama de blocos do sistema de acionamento C.C.

o conjugado eletromagnético, TL o conjugado mecânico exigido pela carga, Bm o coeficiente

de atrito viscoso, Jm o momento de inércia do sistema motor/carga, ea = Laf dif dωr é a

força-contra-eletromotriz da armadura, e Laf d a indutância mútua armadura/campo.

Definem-se as variáveis de estado x1 = ia, x2 = if d e x3 = ωr, sendo a representação em

espaço de estados do sistemas não-linear dada em (3.3).

˙x = Ax(t) + Bu(t) (3.3) y(t) = Ix(t), y(t) ∈ R3 sendo: A=          −ra LaLaf d La x3(t) 0 0 −rf d Lf d 0 Laf d Jm x2(t) 0 − Bm Jm          B =        1 La 0 0 0 1 Lf d 0 0 0 −1       

(42)

u=    va(t) vf d(t) TL   

Um modelo discreto para o sistema (3.3) é dado em (3.4). Para obtê-lo foi usada a mesma metodologia adotada em (Silvino et al., 1993). Todas as variáveis de estado são medidas, isto é, y(t) = Ix(t).

   x1(k + 1) x2(k + 1) x3(k + 1)    =    a1 a2(k) 0 0 a3 0 a4(k) 0 a5       x1(k) x2(k) x3(k)    +    b1 0 0 0 b2 0 0 0 d1       va(k) vf d(k) TL(k)    (3.4) y(k) = Ix(k), y(k) ∈ R3 sendo: a1 = a1(ra, La) = era Lah; a3 = a3(rf d, Lf d) = erfd Lfdh; a2(k) = a2(ra, La, rf d, Lf d, x3(k)) = 1 rf dLa− raLf d [Laf dLf d(a3− a1)x3(k) +(raLf da1 − rf dLaa3)]; a5 = a5(Bm, Jm) = eBm Jmh; a4(k) = a4(Bm, Jm, x2(k)) = Laf d(1−a 5) Bm x2(k); b1 = b1(ra, La) = 1−ara1; b2 = b2(rf d, Lf d) = 1−ar 3 f d d1; d1 = d1(Bm, Jm) = −1−aBm5.

(43)

3.1.2

Modelo da Carga Mecânica

O modelo da carga mecânica é estabelecido pela equação de conjugado. Considerou-se uma carga genérica, cujo conjugado é dado por:

TL = C0+ C1ωr+ C2ωr2 (3.5)

3.1.3

Modelo dos Conversores Estáticos

Os dois conversores, do circuito de armadura e do circuito de campo, são do tipo Ponte de Graetz a Tiristor. Adota-se o modelo estático para computar a tensão de saída em função do ângulo de disparo (Bose, 1986) como descrito em (3.6):

va= 2.34Voacos αa e vf d = 2.34Vof dcos αf d (3.6)

3.1.4

Modelagem das Falhas para o Sistema de Acionamento C.C.

Do ponto de vista de classificação de falhas, o sistema de acionamento C.C. pode ser dividido em três grandes grupos: atuadores (conversores da armadura e do campo); planta ou processo (máquina C.C.) e sensores (medidores de corrente e velocidade).

A seguir serão discutidas como as falhas relacionadas a estes três grupos são modeladas.

Falhas em Atuadores

Os tipos de falhas que podem ocorrer nos conversores estáticos são, por exemplo, a queima de componentes nos circuitos de potência e/ou comando, todavia, no contexto de máquina C.C., as duas falhas mais graves são curto-circuito e desconexão do conversor. Estas falhas podem ser modeladas pelas chaves ideais CHaa, CHaf d, CHcca e CHccf d, como apresentado

na Figura 3.3.

Associam-se os seguintes parâmetros as suas respectivas falhas, a saber:

Desconexão do conversor de armadura, kaa ∈ {0, 1}, sendo que a desconexão é dada

por kaa = 0.

Desconexão do conversor do campo, kaf d ∈ {0, 1}, sendo que a desconexão é dada

por kaf d= 0.

Curto-circuito do conversor de armadura, kcca ∈ {0, 1}, sendo que o curto-circuito é

(44)

Figura 3.3: Representação do sistema de acionamento C.C. para falhas nos atuadores. • Curto-circuito do conversor do campo, kccf d ∈ {0, 1}, sendo que o curto-circuito é

indicado por kccf d = 1.

Os estados das chaves CHi, para i = aa, afd, cca, ccfd, são indicados da seguinte forma:

aberta se ki = 0 e fechada se ki = 1.

Considerando que uma falha de alimentação é caracterizada por uma corrente nula, e um curto-circuito por uma tensão nula, tem-se que o modelo para falhas no circuito de alimentação da máquina é dado em (3.7).

   x1(k + 1) x2(k + 1) x3(k + 1)   =    kaaa1 kaaa2(k) 0 0 kaf da3 0 a4(k) 0 a5       x1(k) x2(k) x3(k)    +    b1 0 0 0 b2 0 0 0 d1       kaa¯kccava(k) Kaf d¯kccf dvf d(k) TL(k)    (3.7)    y1(k) y2(k) y3(k)   =    1 0 0 0 1 0 0 0 1       x1(k) x2(k) x3(k)    sendo ¯ki = 1 − ki.

Falhas em Componentes da Planta

(45)

• curto-circuito entre espiras no circuito de armadura; • curto-circuito entre espiras no circuito de campo; • falha no sistema de ventilação;

• falha de lubrificação.

As duas primeiras falhas podem ser representadas pelas variações nas resistências e in-dutâncias da armadura e do campo. E estas variações são modeladas pelos parâmetros a seguir:

• kra

ca[0, 1] indica a variação na resistência de armadura, ra, quando ocorre

curto-circuito entre espiras no enrolamento de armadura. • kLa

ca[0, 1] indica a variação na indutância de armadura La quando ocorre

curto-circuito entre espiras no enrolamento de armadura. • krf d

cf d[0, 1] indica a variação na resistência do campo rf d quando ocorre curto-circuito

entre espiras no enrolamento do campo. • kLf d

cf d[0, 1] indica a variação na indutância do campo Lf dquando ocorre curto-circuito

entre espiras no enrolamento do campo.

A falha no sistema de ventilação se traduz em variações simultâneas da resistência de armadura e do campo, provocadas pela elevação de temperatura da máquina. Por outro lado, uma lubrificação deficiente dos mancais pode ser modelada por uma variação do coeficiente de atrito.

Os parâmetros que representam estas duas falhas são: • Falha no sistema de ventilação é indicada por kra

f v, variação na resistência ra, e k rf d

f v ,

variação na resistência rf d.

Falha de lubrificação dos mancais é indicada por kf l, que é variação no coeficiente de

atrito Bm.

O modelo que incorpora somente as falhas em componentes da planta é apresentado em (3.4), onde no cálculo dos coeficientes a1 , a2(k), a3, a4(k), b1, b2 e d1, os parâmetros nominais são substituídos por (3.8).

               raf = krcaak ra f vra Lfa = kcaLaLa rf df = krf d cf dk rf d f v rf d Lff d = kLf d cf dLf d Bf m = kf lBm (3.8)

(46)

Falhas de Sensores

Aqui serão consideradas falhas (desligamentos) dos sensores de corrente (armadura e campo) e de velocidade, modeladas pelos parâmetros:

• kifa ∈ {0, 1}, sendo que {0} indica falha no sensor da corrente de armadura. • kiff d ∈ {0, 1}, sendo que {0} indica falha no sensor da corrente de campo.

• kf

ωr ∈ {0, 1}, sendo que {0} indica falha no sensor de velocidade da máquina.

Com relação ao modelo das falhas nos sensores, este difere do modelo representado pela equação 3.4 somente com relação a saída, isto é:

   y1(k) y2(k) y3(k)   =     kifa 0 0 0 kfif d 0 0 0 kf ωr        x1(k) x2(k) x3(k)   

3.1.5

Modelo Geral das Falhas no Sistema de Acionamento C.C.

Considerando os três tipos de falhas abordados anteriormente (veja Tabela 3.1), o modelo completo é descrito em (3.9). Sendo que os coeficientes com sobrescrito f são computados substituindo os parâmetros nominais da máquina por seu respectivo valor de falha como apresentado em (3.8)). O circuito representativo deste modelo é mostrado na Figura 3.4.

   x1(k + 1) x2(k + 1) x3(k + 1)   =     kaaaf1 kaaaf2(k) 0 0 kaf da f 3 0 af4(k) 0 af5        x1(k) x2(k) x3(k)    +     bf1 0 0 0 bf 2 0 0 0 df 1        kaakccava(k) kaf dkccf dvf d(k) TL(k)    (3.9)    y1(k) y2(k) y3(k)   =     kifa 0 0 0 kfif d 0 0 0 kf ωr        x1(k) x2(k) x3(k)   

(47)

Váriáveis Parâmetro(s) Definição

Tipo de Falha Afetadas Indicador(es) do(s)

da Falha Parâmetro(s)

abertura do enrolamento de armadura ia= 0 kaa {0, 1}

abertura do enrolamento de campo if d= 0 kaf {0, 1}

curto-circuito do conversor de armadura va= 0 kcf a {0, 1}

curto-circuito do conversor de campo vf d= 0 kcf a {0, 1}

curto-circuito entre espiras no enrolamento de armadura rae La kcara e kLcaa [0, 1]

curto-circuito entre espiras no enrolamento de campo rf d e Lf d kcfrf d e kLcff d [0, 1]

falha no sistema de ventilação rae rf d kf vra e krf vf d [1, ∞)

falha de lubrificação nos mancais Bm kf l [1, ∞)

falha no sensor de corrente de armadura ia kfia {0, 1}

falha no sensor de corrente da fonte if d kfif d {0, 1}

falha no sensor de velocidade ωr kωfr {0, 1}

Referências

Documentos relacionados

Dentre as misturas binárias estudados foi possível observar que a associação entre prednisona e ciclobenzaprina é provavelmente a mais instável devido ao aquecimento, dados este

Foram considerados critérios de inclusão: 1) alegação de crime sexual de estupro, confor- me artigo 213 do Código Penal brasileiro, ou de estupro de vulnerável, artigo 217-A;

Mais uma vez, à semelhança do que se verificou nas estimativas da altura significativa, verificou-se que a utilização do SWAN em modo não estacionário não

Escola Básica do Vale da Amoreira nº1 Escola Básica do Vale da Amoreira nº2 Escola Secundária da Baixa da Banheira Escola Técnica Profissional da Moita.. Associação de Pais

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

O estudo múltiplo de casos foi aplicado para identificar as semelhanças e dissemelhanças na forma como as empresas relacionam seus modelos de negócios e suas

Nesta Dissertação, foi desenhado um modelo para rastreio e identificação de compostos com atividade antimicobacteriana e/ou inibitória de efluxo, usando duas