JULIANO FABIANO DA MOTA
META-HEUR´ISTICAS BASEADAS EM POPULAC¸ ˜AO PARA O TREINAMENTO DE REDES NEURAIS DE BASE RADIAL NO CONTEXTO DE INTELIG ˆENCIA
COMPUTACIONAL: TEORIA E IMPLEMENTAC¸ ˜OES
CURITIBA 2012
META-HEUR´ISTICAS BASEADAS EM POPULAC¸ ˜AO PARA O TREINAMENTO DE REDES NEURAIS DE BASE RADIAL NO CONTEXTO DE INTELIG ˆENCIA
COMPUTACIONAL: TEORIA E IMPLEMENTAC¸ ˜OES
Tese apresentada ao Curso de P ´os-Graduac¸ ˜ao em M ´etodos Num ´ericos em Engenharia, Area de´ Concentrac¸ ˜ao Programac¸ ˜ao Matem ´atica, do Departa- mento de Matem ´atica, Setor de Ci ˆencias Exatas e do Departamento de Construc¸ ˜ao Civil, Setor de Tecnolo- gia, Universidade Federal do Paran ´a, como parte das exig ˆencias para a obtenc¸ ˜ao do t´ıtulo de Doutor em Ci ˆencias.
Orientador: Prof. Dr. Paulo Henrique Siqueira Co-Orientadora: Profa. Dra. Luzia Vidal de Souza
CURITIBA 2012
JULIANO FABIANO DA MOTA
META-HEUR´ISTICAS BASEADAS EM POPULAC¸ ˜AO PARA O TREINAMENTO DE REDES NEURAIS DE BASE RADIAL NO CONTEXTO DE INTELIG ˆENCIA
COMPUTACIONAL: TEORIA E IMPLEMENTAC¸ ˜OES
Tese aprovada como requisito parcial para a obtenc¸ ˜ao do grau de Doutor em Ci ˆencias, ´area de concentrac¸ ˜ao Programac¸ ˜ao Matem ´atica no Programa de P ´os-Graduac¸ ˜ao em M ´etodos Nu- m ´ericos em Engenharia, do Departamento de Matem ´atica, Setor de Ci ˆencias Exatas e do Departamento de Construc¸ ˜ao Civil, Setor de Tecnologia, Universidade Federal do Paran ´a, pela seguinte banca examinadora:
Orientador: Prof. Dr. Paulo Henrique Siqueira
Programa de P ´os-Graduac¸ ˜ao em M ´etodos Num ´ericos em Engenharia, UFPR
Co-Orientadora: Profa. Dra. Luzia Vidal de Souza
Programa de P ´os-Graduac¸ ˜ao em M ´etodos Num ´ericos em Engenharia, UFPR
Profa. Dra. Deise Maria Bertholdi Costa Programa de P ´os-Graduac¸ ˜ao em M ´etodos Num ´ericos em Engenharia, UFPR
Profa. Dra. Sonia Isoldi Marty Gama Muller Programa de P ´os-Graduac¸ ˜ao em
Engenharia de Produc¸ ˜ao, UFPR
Profa. Dra. Angela Olandoski Barboza Universidade Tecnol ´ogica Federal do Paran ´a, UTFPR
Curitiba, 07 de dezembro de 2012.
A Deus.
Aos meus pais, irm ˜a e `a minha esposa, Franciely, por todo amor, incentivo e por torcerem tanto por mim.
Aos meus amigos Adriano, Gislaine, Solange e Tatiane, pelo companheirismo, pelo apoio dado nos momentos dif´ıceis e pelas risadas, principalmente das “piadinhas gen ´ericas” que sempre surgiam.
A D. Aparecida, por ter me recebido t ˜ao bem em sua casa durante os quatro anos de` doutorado.
Ao meu orientador, Professor Paulo, pelos ensinamentos, amizade, motivac¸ ˜ao e dedicac¸ ˜ao ao meu trabalho, sempre apresentando valiosas sugest ˜oes.
A minha co-orientadora, Professora Luzia, pelo aprendizado proporcionado durante nos-` sos semin ´arios e pelas valiosas contribuic¸ ˜oes dadas ao trabalho.
Ao Professor Anselmo Chaves Neto, pelo apoio e incentivo e por sempre ter acreditado na
“Turma de Campo Mour ˜ao”.
A Universidade Federal do Paran ´a, pela oportunidade de cursar o doutorado.`
Aos professores do Programa de P ´os-Graduac¸ ˜ao em M ´etodos Num ´ericos em Engenharia, pelos ensinamentos transmitidos durante as disciplinas.
A Maristela Bandil, uma das pessoas mais simp ´aticas e gentis que j ´a conheci, pela alegria` e efici ˆencia com as quais realiza seu trabalho. E como se n ˜ao bastasse tudo isso, faz um caf ´e maravilhoso!
A Universidade Estadual do Paran ´a, Campus Campo Mour ˜ao, por me proporcionar condi-` c¸ ˜oes necess ´arias para concluir este curso.
Finalmente, `a Fundac¸ ˜ao Arauc ´aria, pelo apoio financeiro.
adquira um sentimento, um senso pr ´atico daquilo que vale a pena ser empreendido, daquilo que ´e belo, do que ´e moralmente correto. A n ˜ao ser assim, ele se assemelhar ´a, com seus conhecimentos profissionais, mais a um c ˜ao ensinado do que a uma criatura harmoniosamente desenvolvida.
Deve aprender a compreender as motivac¸ ˜oes dos homens, suas quimeras e suas ang ´ustias para determinar com exatid ˜ao seu lugar exato em relac¸ ˜ao a seus pr ´oximos e `a comunidade.
Albert Einstein em “Como Vejo o Mundo”.
Um dos problemas da modelagem de uma RBFNN -Radial Basis Neural Network, Rede Neural de Base Radial, consiste em determinar os pesos da camada de sa´ıda, geralmente represen- tados por uma matriz retangular. Uma abordagem que tem ganho alguma notoriedade recente- mente na resoluc¸ ˜ao desse problema ´e a criac¸ ˜ao de modelos h´ıbridos baseados na combinac¸ ˜ao de Meta-heur´ısticas, que s ˜ao modelos gerais para soluc¸ ˜ao de problemas de otimizac¸ ˜ao, como alternativa ao m ´etodo tradicional de realizar a pseudo-invers ˜ao da matriz com os valores de ativac¸ ˜ao da camada intermedi ´aria. Nesta pesquisa, duas destas Meta-heur´ısticas, Algoritmos Gen ´eticos e Nuvem de Part´ıculas (Particle Swarm Optmization) s ˜ao implementadas a fim de comparar seus desempenhos com o m ´etodo tradicional e tamb ´em ´e proposta a mudanc¸a da representac¸ ˜ao dos indiv´ıduos de uma populac¸ ˜ao, em Algoritmos Gen ´eticos, com a conse- quente adaptac¸ ˜ao operadores para algoritmos gen ´eticos cont´ınuos em que os indiv´ıduos s ˜ao matrizes, como ´e o caso do problema de calcular a matriz de pesos de uma RBFNN. Al ´em disso, essas t ´ecnicas tamb ´em s ˜ao comparadas com a FDLF - Func¸ ˜ao Discriminante Linear de Fisher na classificac¸ ˜ao de padr ˜oes. Para fins de validac¸ ˜ao da hip ´otese levantada, foi realizado um experimento com seis bancos de dados e os resultados mostraram que as abordagens mais eficientes foram o treinamento tradicional das RBFNN e a FDLF, j ´a a modificac¸ ˜ao pro- posta se mostrou t ˜ao consistente quanto o Algoritmo Gen ´etico tradicional no que diz respeito
`a efici ˆencia ao encontrar soluc¸ ˜oes.
Palavras-chave: Redes Neurais de Base Radial, Algoritmos Gen ´eticos, Nuvem de Part´ıculas, Sistemas H´ıbridos.
One of the issues of modeling a RBFNN - Radial Basis Neural Network is to determine the weights matrix of the output layer, wich is generally represented by a rectangular matrix. One of the existing approaches that has gained some notoriety recently in solving this problem is to create hybrid models based on a combination of Metaheuristcs, which are general models for solving optimization problems, as an alternative to the traditional method of performing the pseduoinversion the hidden layer activation values matrix. In this research two of these Me- taheuristcs, Genetic Algorithms (GA) and Particle Swarm Optmization (PSO) are implemented in order to compare their performance with the traditional method and also a new kind repre- sentation of individuals in a population for genetic algorithms is proposed. This caused the adaptation of the continuous genetic operators in genetic algorithms with matricial individuals, specially for calculating the weights matrix of a RBFNN. Also a comparison of all these techni- ques with the LDFF - Linear Discriminant Fisher Function For is provided. Trying to validating the research hypothesis an experiment was designed using six diffrerent databases and results shows that the traditional training method of RBFNN and the Fisher LDF was more effective than the others techniques. The new proposed GA individuals representation was equally con- sistent with the traditional GA in finding solutions.
Key-words: Radial Basis Function Neural Networks, Genetic Algorithms, Particle Swarm Opti- mization, Hybrid Systems.
–
FIGURA 1 SISTEMAS BASEADOS EM IC . . . 17 –
FIGURA 2 REPRESENTAC¸ ˜AO DO NEUR ˆONIO BIOL ´OGICO . . . 18 –
FIGURA 3 REPRESENTAC¸ ˜AO DO NEUR ˆONIO ARTIFICIAL . . . 19 –
FIGURA 4 REPRESENTAC¸ ˜AO DA ARQUITETURA DE UMA RBFNN . . . 22 –
FIGURA 5 SELEC¸ ˜AO AUTO-ORGANIZADA DE CENTROS . . . 24 –
FIGURA 6 SEPARAC¸ ˜AO DE PADR ˜OES DOPERCEPTRON E RBFNN . . . 25 –
FIGURA 7 ALGORITMO GEN ´ETICO ORIGINAL . . . 34 –
FIGURA 8 CRUZAMENTO GEN ´ETICO DE UM PONTO . . . 39 –
FIGURA 9 TOPOLOGIAS PARA O ALGORITMO PSO . . . 44 –
FIGURA 10 ALGORITMOGBEST - MELHOR INDIV´IDUO . . . 46 –
FIGURA 11 ALGORITMOLBEST - MELHOR INDIV´IDUO LOCAL . . . 47 –
FIGURA 12 CONFIGURAC¸ ˜AO DE INDIV´IDUOS PARA RBFNN-AG . . . 62 –
FIGURA 13 REPRESENTAC¸ ˜AO DE UM INDIV´IDUO EM AG TRADICIONAL . . . 68 –
FIGURA 14 REPRESENTAC¸ ˜AO DE UM INDIV´IDUO EM AG MATRICIAL . . . 69 –
FIGURA 15 OPERADOR CTH . . . 72 –
FIGURA 16 OPERADOR CTV . . . 72 –
FIGURA 17 OPERADOR CPH . . . 73 –
FIGURA 18 OPERADOR CPV . . . 74 –
FIGURA 19 ALGORITMO DO EXPERIMENTO . . . 82
–
TABELA 1 TABELA MANOVA . . . 54 –
TABELA 2 DISTRIBUIC¸ ˜AO DO L ˆAMBDA DE WILKS . . . 55 –
TABELA 3 T´IPICA MATRIZ DE CONFUS ˜AO DE UM CLASSIFICADOR (2 CLASSES) 57 –
TABELA 4 CARACTER´ISTICAS DOS BANCOS DE DADOS . . . 60 –
TABELA 5 RESULTADOS DA APLICAC¸ ˜AO DA MANOVA . . . 83 –
TABELA 6 MELHORES CONFIGURAC¸ ˜OES DAS T ´ECNICAS . . . 84 –
TABELA 7 MELHORES CONFIGURAC¸ ˜OES PARAAGRBF EAGRBF MOD . . . 87 –
TABELA 8 PCC M ´EDIO, TE M ´EDIO E QI M ´EDIO POR BANCO DE DADOS . . . 87
1 INTRODUC¸ ˜AO . . . 12
1.1 OBJETIVOS . . . 13
1.2 CONTRIBUIC¸ ˜OES . . . 14
1.3 ESTRUTURA DO TRABALHO . . . 14
2 REVIS ˜AO DE LITERATURA . . . 16
2.1 REDES NEURAIS ARTIFICIAIS . . . 17
2.1.1Redes Neurais de Base Radial . . . 20
2.1.2O Projeto de uma RBFNN . . . 28
2.2 COMPUTAC¸ ˜AO EVOLUCION ´ARIA . . . 32
2.2.1Algoritmos Gen ´eticos . . . 33
2.3 INTELIG ˆENCIA DO ENXAME . . . 41
2.3.1Nuvem de Part´ıculas . . . 42
2.4 SISTEMAS DIFUSOS . . . 49
2.5 M ´ETODOS ESTAT´ISTICOS . . . 50
2.5.1Func¸ ˜ao Discriminante Linear de Fisher . . . 50
2.5.2An ´alise de Vari ˆancia Multivariada . . . 53
2.5.3Teste de Mann-Whitney . . . 55
2.5.4CoeficienteKappade Cohen . . . 56
2.6 TRABALHOS RELACIONADOS . . . 57
3 MATERIAL E M ´ETODO . . . 60
3.1 MATERIAL . . . 60
3.1.1Bancos de Dados Utilizados nos Experimentos . . . 60
3.1.2Hardware eSoftware Utilizados . . . 60
3.2 M ´ETODO . . . 61
3.2.2Adaptac¸ ˜ao Proposta . . . 68
3.2.3 Implementac¸ ˜ao Computacional . . . 76
3.2.4Descric¸ ˜ao do Experimento . . . 81
4 RESULTADOS E DISCUSS ˜AO . . . 83
4.1 AN ´ALISE DE VARI ˆANCIA MULTIVARIADA . . . 83
4.2 AN ´ALISE DA MELHOR CONFIGURAC¸ ˜AO ISOLADAMENTE . . . 83
4.3 COMPARAC¸ ˜AO ENTREAGRBF EAGRBF MOD . . . 87
5 CONSIDERAC¸ ˜OES FINAIS . . . 89
5.1 CONCLUS ˜OES . . . 89
5.2 SUGEST ˜OES PARA TRABALHOS FUTUROS . . . 92
REFER ˆENCIAS . . . 93
H ´a tempos os cientistas tentam desenvolver m ´etodos para prever valores em problemas de classificac¸ ˜ao para uma melhor tomada de decis ˜ao em cen ´arios de incerteza. Uma gama de m ´etodos matem ´aticos e estat´ısticos j ´a foi desenvolvida e, por este motivo, busca-se melhorar cada vez mais os m ´etodos j ´a existentes bem como o desenvolvimento de novos m ´etodos que reduzam o custo computacional, oferec¸am melhores resultados no que diz respeito ao desempenho do modelo ou ambos.
Todos os m ´etodos existentes j ´a oferecem muitas opc¸ ˜oes quanto `a velocidade e qualidade da previs ˜ao ou classificac¸ ˜ao. A tarefa mais dif´ıcil, que todo pesquisador anseia, ´e desenvolver um m ´etodo que consiga elevada acur ´acia o mais r ´apido poss´ıvel, dada a necessidade de rapi- dez na eraon-lineem que a sociedade se encontra. Por “elevada acur ´acia” entende-se o me- nor erro poss´ıvel, num problema de previs ˜ao, e o maior percentual poss´ıvel de classificac¸ ˜oes corretas, para o caso de um problema de classificac¸ ˜ao.
A id ´eia de criar um grupo de modelos matem ´aticos que simule os neur ˆonios humanos ´e considerada, por muitos cientistas, brilhante e extremamente ´util para os respons ´aveis pela tomada de decis ˜ao nas mais diversas ´areas do conhecimento. Tais modelos s ˜ao as Redes Neurais Artificiais. Segundo Haykin (2001), uma rede neural ´e uma m ´aquina de processa- mento paralelo que pode transformar conhecimento experimental em informac¸ ˜oes utiliz ´aveis na pr ´atica, por exemplo, no aux´ılio `a tomada de decis ˜ao.
O subgrupo de modelos de Redes Neurais Artificiais mais difundido na literatura ´e aquele das baseadas no tipo de arquiteturafeed-forward(alimentada adiante) ao qual pertencem, por exemplo, oPerceptrone as Redes Neurais de Base Radial, sendo a primeira, mais conhecida e difundida entre os cientistas da ´area e a ´ultima um dos focos deste trabalho.
Uma Meta-heur´ıstica ´e um M ´etodo Heur´ıstico para resolver, de forma gen ´erica, proble- mas de Pesquisa Operacional, normalmente da ´area de Otimizac¸ ˜ao Combinat ´oria, Reconhe- cimento de Padr ˜oes ou Previs ˜ao de S ´eries Temporais. Entretanto, tamb ´em ´e poss´ıvel utilizar
uma Meta-heur´ıstica para Problemas de Otimizac¸ ˜ao de Func¸ ˜oes.
Geralmente, as Meta-heur´ısticas s ˜ao inspiradas em outras ci ˆencias, como ´e o caso das pr ´oprias Redes Neurais Artificiais, dos Algoritmos Gen ´eticos, Simulated Annealing, Col ˆonia de Formigas, Nuvem de Part´ıculas, entre outros, formando assim um sistema com regras matem ´aticas inspiradas em sistemas, apriori, n ˜ao matem ´aticos .
Como ocorre com outras t ´ecnicas matem ´aticas e estat´ısticas, ´e poss´ıvel a formac¸ ˜ao de Sistemas H´ıbridos baseados em Meta-heur´ısticas, combinando as estrat ´egias de duas ou mais dessas t ´ecnicas. Ademais, este campo de estudo tem ganho alguma notoriedade re- centemente, como ´e poss´ıvel observar pela quantidade de trabalhos publicados sobre este tema (Sec¸ ˜ao 2.6). Existem tamb ´em m ´etodos estat´ısticos para a classificac¸ ˜ao de padr ˜oes, sendo que o mais conhecido ´e a FDLF - Func¸ ˜ao Discriminante Linear de Fisher, descrita no Cap´ıtulo 2.
Um dos principais problemas a ser resolvido na modelagem de uma Rede Neural de Base Radial ´e o c ´alculo da matriz de pesos da camada intemedi ´aria, que ´e a ´unica camada presente numa rede desse tipo al ´em da camada de sa´ıda.
1.1 OBJETIVOS
A pesquisa de Mota et al. (2012) compara dois m ´etodos de treinamento de uma RBFNN, um ´e considerado tradicional, que se baseia na pseudo-invers ˜ao de uma matriz retangular e o outro utiliza Algoritmos Gen ´eticos, convertendo esta matriz em indiv´ıduos de uma populac¸ ˜ao gen ´etica, buscando encontrar a matriz ´otima (ou quase- ´otima) atrav ´es de selec¸ ˜ao natural e operadores gen ´eticos, mais especificamente os propostos por Michalewicz, Logan e Swami- nathan (1994).
Nesse contexto, os principais objetivos deste trabalho s ˜ao:
• propor uma nova maneira de representac¸ ˜ao dos indiv´ıduos em Algoritmos Gen ´eticos, para o caso em que as soluc¸ ˜oes do problema s ˜ao matrizes ao inv ´es de vetores;
• propor uma extens ˜ao dos operadores de Michalewicz, Logan e Swaminathan (1994) para esse novo modo de representac¸ ˜ao representac¸ ˜ao;
• comparar o desempenho de seis abordagens para a classificac¸ ˜ao de padr ˜oes em seis bancos de dados dispon´ıveis nawebque atenderam os crit ´erios de aplicac¸ ˜ao dos m ´eto- dos, sendo:
– a Func¸ ˜ao Discriminante Linear de Fisher;
– o treinamento de uma RBFNN tradicional (pseudo-invers ˜ao);
– duas abordagens de treinamento de uma RBFNN baseadas em Algoritmos Gen ´e- ticos, sendo que a primeira ´e um Algoritmo Gen ´etico Tradicional utilizando os ope- radores de Michalewicz, Logan e Swaminathan (1994) e a segunda ´e a adaptac¸ ˜ao proposta neste trabalho;
– duas abordagens de treinamento de uma RBFNN utilizando a Metaheur´ıstica “Nu- vem de Part´ıculas”, sendo uma abordagem com cada uma de suas duas variantes mais conhecidas: gbest elbest.
1.2 CONTRIBUIC¸ ˜OES
As contribuic¸ ˜oes deste trabalho s ˜ao:
• Uma verificac¸ ˜ao emp´ırica da efici ˆencia de duas t ´ecnicas de Intelig ˆencia Computacional para o treinamento de uma RBFNN e uma t ´ecnica estat´ıstica para fins de classificac¸ ˜ao de padr ˜oes;
• Uma nova maneira de representar e “enxergar” os indiv´ıduos de uma populac¸ ˜ao gen ´etica e, consequentemente, a extens ˜ao dos operadores propostos por Michalewicz, Logan e Swaminathan (1994);
1.3 ESTRUTURA DO TRABALHO
Para que os objetivos elencados possam ser alcanc¸ados e a hip ´otese principal possa ser verificada, preceitos b ´asicos sobre Intelig ˆencia Computacional, Redes Neurais de Base Radial, Func¸ ˜ao Discriminante Linear de Fisher, Algoritmos Gen ´eticos e Nuvem de Part´ıculas s ˜ao apresentados e uma verificac¸ ˜ao experimental ´e realizada. Todas estas etapas do trabalho est ˜ao divididas em cap´ıtulos, da seguinte maneira:
• No Cap´ıtulo 2, s ˜ao apresentados, de maneira breve, os principais sistemas da Inte- lig ˆencia Computacional (IC), afim de indicar sua classificac¸ ˜ao como ´area de conheci- mento, explicitar as t ´ecnicas que a comp ˜oem e discutir como estas t ´ecnicas podem ser utilizadas de maneira isoladas ou com a criac¸ ˜ao de sistemas h´ıbridos. Tamb ´em est ˜ao contemplados os conceitos relativos `as Redes Neurais de Base Radial, destacando suas caracter´ısticas e estrat ´egias de modelagem e treinamento e conceitos essenciais sobre a Func¸ ˜ao Discriminante Linear de Fisher (FDLF), ambas no contexto de classificac¸ ˜ao de padr ˜oes e os conceitos relacionados `as duas Meta-heur´ısticas de Busca Baseadas em Populac¸ ˜ao citadas anteriormente: Algoritmos Gen ´eticos e Nuvem de Part´ıculas;
• O Cap´ıtulo 3, trata das estrat ´egias utilizadas para criar uma Meta-heur´ıstica H´ıbrida ba- seada em Redes Neurais de Base Radial e Algoritmos Gen ´eticos e Nuvem de Part´ıculas, s ˜ao apresentados detalhes sobre o experimento realizado
• O Cap´ıtulo 4 traz a an ´alise estat´ıstica dos resultados obtidos e apresenta uma discuss ˜ao acerca desses resultados;
• Finalmente, o Cap´ıtulo 5 traz as conclus ˜oes da pesquisa e sugest ˜oes para trabalhos futuros.
Para Engelbrecht (2007), “um grande impulso no desenvolvimento de novos algoritmos ´e a crescente complexidade dos problemas que surgem a cada dia”. Assim como enxerga-se problemas mais complexos a cada dia, numa velocidade quase equivalente os cientistas s ˜ao capazes de desenvolver m ´etodos para resolver tais problemas. Esse desenvolvimento, por vezes, ocorre com o desenvolvimento de algoritmos, uma vez que o advento do computador tem como um de seus objetivos auxiliar em tarefas complexas para que antes eram realizadas manualmente.
Uma das vertentes na busca pela automatizac¸ ˜ao de tarefas complexas ´e a criac¸ ˜ao de m ´etodos e sistemas baseados na intelig ˆencia natural e biol ´ogica que Engelbrecht (2007) deno- mina como “Sistemas Inteligentes”. Basicamente existem quatro grandes grupos de sistemas inteligentes: Redes Neurais Artificiais, Computac¸ ˜ao Evolucion ´aria, Intelig ˆencia do Enxame e Sistemas Difusos. Vale salientar que juntamente com L ´ogica; Sistemas Especialistas; Ra- cioc´ınio Baseado em Casos e Dedutivo; e M ´aquinas de Sistemas de Aprendizagem Simb ´olica, os Sistemas Inteligentes pertencem ao campo de estudo denominado Intelig ˆencia Artificial (IA).
Os quatro sistemas mais conhecidos baseados em Intelig ˆencia Computacional (IC) s ˜ao:
As Redes Neurais Artificiais (RNAs), a Computac¸ ˜ao Evolucion ´aria (CE), a Intelig ˆencia do En- xame (IE) e os Sistemas Difusos (SD). Tais sistemas podem ser utilizados como ´unica aborda- gem a um problema, dependendo de suas caracter´ısticas, ou podem ainda serem combinados formando sistemas h´ıbridos.
A Figura 1 ilustra esta ideia de relacionamento desses quatro modelos por meio de se- tas, podendo haver relac¸ ˜oes entre seus mecanismos internos. Tamb ´em ´e poss´ıvel visuali- zar a indicac¸ ˜ao da interac¸ ˜ao dos quatro grupos de sistemas com os M ´etodos Estat´ısticos que, essencialmente, s ˜ao utilizados para tratamento dos dados e validac¸ ˜ao de testes, por isso a diferenciac¸ ˜ao com linhas pontilhadas, embora haja m ´etodos estat´ısticos tanto para a
Classificac¸ ˜ao de Padr ˜oes quanto para a previs ˜ao de S ´eries Temporais.
RNAs CE
SD IE
M´etodos Estat´ısticos
FIGURA1: Sistemas Baseados em IC
Os quatro grupos de sistemas aqui mencionados s ˜ao inspirados na Biologia. As RNAs s ˜ao baseadas no sistema neurol ´ogico humano, os modelos de CE, por sua vez s ˜ao inspirados da Teoria da Evoluc¸ ˜ao, a IE ´e baseada em organismos que vivem em col ˆonias ou enxames, como o pr ´oprio nome sugere e os SD t ˆem suas origens em como os organismos interagem com o ambiente em que vivem.
2.1 REDES NEURAIS ARTIFICIAIS
Segundo Engelbrecht (2007), o c ´erebro humano ´e um computador complexo, paralelo e n ˜ao linear que tem a habilidade de aprender, memorizar e generalizar a partir de exemplos. ´E capaz de realizar tarefas como o reconhecimento de padr ˜oes, o controle motor e a percepc¸ ˜ao em muito menos tempo do que qualquer computador.
Para Silva, Spatti e Flauzino (2010), os cientistas possuem o sonho antigo de construir um mecanismo aut ˆonomo, que seja dotado de intelig ˆencia. Possivelmente a principal motivac¸ ˜ao para este anseio seja a complexidade do funcionamento do c ´erebro humano, sua capacidade de processamento, adaptac¸ ˜ao, entre outras habilidades.
As Redes Neurais Artificiais (RNAs) s ˜ao, portanto, um grupo de modelos matem ´aticos/com- putacionais inspirados no funcionamento do sistema neurol ´ogico humano, como ´e poss´ıvel ver
em Silva, Spatti e Flauzino (2010) e Engelbrecht (2007). Para Haykin (2001), uma Rede Neu- ral (RN) se assemelha ao c ´erebro em dois aspectos: possui um processo de aprendizagem a partir do ambiente em que est ´a inserida e o conhecimento adquirido fica armazenado nas conex ˜oes entre os neur ˆonios.
Para Silva, Spatti e Flauzino (2010), Haykin (2001) e Fausett (1994), as principais carac- ter´ısticas ben ´eficas das RNAs s ˜ao:
• capacidade de absorver a n ˜ao linearidade nos dados de entrada;
• capacidade de mapeamento de entrada-sa´ıda;
• adaptabilidade `a modificac¸ ˜oes do meio ambiente;
• resposta `a evid ˆencias;
• contextualizac¸ ˜ao natural da informac¸ ˜ao por meio da interac¸ ˜ao entre neur ˆonios;
• toler ˆancia a falhas, para o caso de implementac¸ ˜ao emhardware;
• possibilidade de implementac¸ ˜ao em larga escala;
• uniformidade de representac¸ ˜ao e;
• analogia neurol ´ogica.
A estrutura de um neur ˆonio biol ´ogico est ´a apresentada na Figura 2 e a de um neur ˆonio arti- ficial na Figura 3. A unidade b ´asica de nosso c ´erebro apresenta uma regi ˜ao onde informac¸ ˜oes s ˜ao processadas (corpo celular), algumas entradas (dendritos) e uma sa´ıda (ax ˆonio). Os im- pulsos el ´etricos recebidos nos dendritos s ˜ao processados e o resultado deste processamento
´e colocado no ax ˆonio.
FIGURA2: Representac¸ ˜ao do Neur ˆonio Biol ´ogico
φ ( · )
x
1x
2x
nEntradas
...
w
·1w
·2w
·nPesos Sin´apticos
1 b
·y
·Bias
Sa´ıda Fun¸c˜ao de Ativa¸c˜ao
P
Soma
FIGURA 3: Representac¸ ˜ao do Neur ˆonio Artificial
Na Figura 3, os valores denotados por xi s ˜ao informac¸ ˜oes provenientes do ambiente ex- terno denominadas n ´os de entrada. Se compararmos com o neur ˆonio biol ´ogico da Figura 2, a conex ˜ao entre os vetoresxie os pesos wi·,i=1, . . . ,n, ´e realizada pela sinapse que termina por conectar o ambiente externo ao neur ˆonio, por meio de seus dentritos, os quais s ˜ao res- pons ´aveis por receber os sinais de entrada dos neur ˆonios. As sinapses s ˜ao uma regi ˜ao de contato muito pr ´oximo entre os dentritos e outras c ´elulas, inclusive outros neur ˆonios.
Os dentritos conduzem os sinais de entrada para o corpo celular, que no neur ˆonio artificial
´e representado pela soma e func¸ ˜ao de ativac¸ ˜ao, fazendo o papel do n ´ucleo de processamento do neur ˆonio. O valor representado pory· ´e a sa´ıda (resultado), que acusa o n´ıvel de ativac¸ ˜ao de um neur ˆonio artificial. No neur ˆonio biol ´ogico, essa func¸ ˜ao ´e desempenhada pelo ax ˆonio. A ligac¸ ˜ao entre o terminal axional de um neur ˆonio e os dentritos de outro neur ˆonio ´e feita tamb ´em pela sinapse.
No neur ˆonio artificial as sinapses recebem multiplicadores (pesos) que podem ser ini- bit ´orios (negativos) ou excitat ´orios (positivos). No esquema representado na Figura 3, os pe- sosw· eb· representam esses pesos, sendo que os pesosb· s ˜ao adicionados `a rede apenas para aumentar seus graus de liberdade, causando um relaxamento no modelo matem ´atico, o valor de suas entradas ´e sempre “1”, por este ser o elemento neutro da multiplicac¸ ˜ao.
Com relac¸ ˜ao `a aplicabilidade das RNAs, vale salientar que ´e poss´ıvel modelar problemas de ´areas como Ci ˆencias Exatas, Sociais, Humanas, entre outras ´areas via Redes Neurais. As principais tarefas associadas a uma RNA s ˜ao a classificac¸ ˜ao, o agrupamento de padr ˜oes e a previs ˜ao de S ´eries Temporais.
Entretanto, como ´e poss´ıvel ver em Siqueira, Scheer e Steiner (2005), o roteamento de ve´ıculos e a designac¸ ˜ao tamb ´em s ˜ao problemas pass´ıveis de resoluc¸ ˜ao por uma abordagem via RNAs. Mais exemplos de aplicac¸ ˜oes podem ser encontrados em Silva, Spatti e Flauzino (2010), Engelbrecht (2007), Haykin (2001) e Fausett (1994).
Os cinco grupos de RNAs mais citados na literatura s ˜ao:
• RNAs de camada ´unica como, por exemplo, a Rede de Hopfield;
• de camada m ´ultipla como oPerceptronde M ´ultiplas Camadas (MLP);
• redes de Elman e a de Jordan que trabalham com a ideia de recorr ˆencia;
• Mapas Auto-organiz ´aveis, sendo a mais conhecida a rede de Kohonen e;
• redes alimentadas adiante combinadas com mapas auto-organiz ´aveis como, por exem- plo, as Redes Neurais de Base Radial (RBFNN).
As Redes Neurais de Base Radial ouRadial Basis Function Neural Networks (RBFNNs), que s ˜ao o foco dessa pesquisa, suas caracter´ısticas, m ´etodos para definic¸ ˜ao de seus par ˆame- tros e seus m ´etodos tradicionais de treinamento est ˜ao descritos a seguir.
2.1.1 Redes Neurais de Base Radial
Uma Rede Neural de Base Radial (RBFNN) ´e do tipo alimentada adiante e possui ape- nas duas camadas, sendo uma a intermedi ´aria e a ´ultima a camada de sa´ıda. Na camada intermedi ´aria as func¸ ˜oes de ativac¸ ˜ao dos neur ˆonios s ˜ao ditasfunc¸ ˜oes de base radial. A se- guir, ser ˜ao apresentadas as principais caracter´ısticas das RBFNNs, mas antes vejamos alguns conceitos preliminares.
Func¸ ˜oes de Base Radial e a Interpolac¸ ˜ao Exata
Uma RBF - Radial Base Function (Func¸ ˜ao de Base Radial) ´e definida por Haykin (2001) como qualquer func¸ ˜ao que satisfac¸a a Equac¸ ˜ao 2.1. Dizemos que uma func¸ ˜ao ´e de base
radial quando seus valores funcionais s ˜ao iguais aos valores funcionais das normas de seus argumentos.
f(x) = f(kxk) (2.1)
Em outras palavras, uma func¸ ˜ao ´e de base radial quando seu valor funcional depende ape- nas da dist ˆancia de seu argumento `a origem. Algumas dessas func¸ ˜oes, comumente utilizadas, s ˜ao apresentadas nas equac¸ ˜oes 2.2–2.4.
f(x) =e−βx2,paraβ>0(gaussiana) (2.2)
f(x) =p
x2+β2,paraβ >0(multiquadr ´atica) (2.3)
f(x) =xk,parak=1,3, . . . (spline poliarm ˆonica) (2.4) De acordo com Powell (1988), a abordagem que busca aproximar func¸ ˜oes por meio de combinac¸ ˜oes lineares de func¸ ˜oes de base radial consiste em introduzir um conjunto comn= 1,···,N func¸ ˜oes base centradas num pontoxn, uma para cada observac¸ ˜ao amostral, tomando a formaφ(kx−xnk) em que φ(.) ´e uma RBF. Ent ˜ao, cada func¸ ˜ao base depende apenas da dist ˆancia(kx−xnk)e a aproximac¸ ˜ao toma a forma definida pela Equac¸ ˜ao 2.5,
h(xn) =
N
∑
n=1
wn·φ(kx−xnk), (2.5)
em quewns ˜ao os pesos da combinac¸ ˜ao linear. Considerando esta abordagem para resolver o problema de interpolac¸ ˜ao exata na Equac¸ ˜ao 2.6, em quet(xn)s ˜ao os valores alvo eh(xn)s ˜ao os resultados do modelo de interpolac¸ ˜ao temos,
h(xn) =t(xn). (2.6)
Combinando as Equac¸ ˜oes 2.5 e 2.6, temos
N n=1
∑
wn·φ(kx−xnk) =t, (2.7)
que podemos representar matricialmente por,
φ·w=t, (2.8)
em quet = (t1,t2, . . . ,tn), w= (w1,w2, . . . ,wn) e φ ´e uma matriz quadrada. A soluc¸ ˜ao formal para 2.8 ´e dada na Equac¸ ˜ao 2.9 e para func¸ ˜oes multiquadr ´aticas, multiquadr ´aticas inversas e gaussianas, respectivamente, a matrizφ ´e invert´ıvel.
w=φ−1·t (2.9)
Redes Neurais de Base Radial e sua Arquitetura
O processo de aprendizagem desta rede tem suas bases na teoria da Programac¸ ˜ao N ˜ao Linear. A arquitetura de uma RBFNN ´e composta por apenas duas camadas al ´em dos n ´os de entrada. Tem-se uma camada escondida, que possui func¸ ˜oes de base radial como func¸ ˜oes de ativac¸ ˜ao, e uma camada de sa´ıda, que possui func¸ ˜oes lineares como ativac¸ ˜ao. A Figura 4 ilustra este tipo de rede.
x
1c
1c
2c
s.. . .. .
w11 w21 wp1 w12
w22 wp2
w1s w2s wps
φ
1φ
2φ
sy
1y
2y
pw10
w20
wp0
1
1
1
FIGURA4: Representac¸ ˜ao da arquitetura de uma RBFNN
Cada neur ˆonio da camada escondida possui um vetor associado, chamado de centro do neur ˆonio, o qual define o centro do campo receptivo daquele neur ˆonio. Geralmente tais vetores s ˜ao armazenados numa matrizC, chamada de matriz de centros dos neur ˆonios. Estes vetores exercem alguma influ ˆencia sobre o desempenho da rede. A seguir, alguns m ´etodos ser ˜ao brevemente apresentados.
Par ˆametros de uma RBFNN
Nesta sec¸ ˜ao ser ˜ao apresentadas algumas das estrat ´egias mais utilizadas para a determi- nac¸ ˜ao dos par ˆametros de uma RBFNN que s ˜ao, essencialmente tr ˆes: os Centros do campo receptivo dos neur ˆonios, o grau de abertura do raio da Func¸ ˜ao de Base Radial e a Matriz de Pesos Sin ´apticos entre a camada intermedi ´aria e a de sa´ıda.
Selec¸ ˜ao dos Centros dos Neur ˆonios
A tarefa de selecionar os centros (ou vetores centr ´oides) dos neur ˆonios ´e, essencialmente, um problema de agrupamento de padr ˜oes. H ´a algumas estrat ´egias cl ´assicas descritas em Haykin (2001) e uma breve discuss ˜ao sobre estas estrat ´egias ´e apresentada a seguir.
Centros Fixados Aleatoriamente
Esta ´e a maneira mais simples e menos custosa computacionalmente de selecionar os centros. Embora seja simples, ´e considerada por Haykin (2001) como a abordagem “mais sensata”, pois a cada experimento uma parte diferente da matriz de observac¸ ˜oes ´e utilizada e, por este motivo, a matriz de centros passa a conter uma boa representac¸ ˜ao do espac¸o de entrada. O m ´etodo consiste em escolher uma das seguintes opc¸ ˜oes:
(a) tomar valores aleat ´orios de um intervalo dado, sendo que a escolha deste intervalo,
certamente, influencia o desempenho do algoritmo;
(b) escolher aleatoriamente, dentre os valores observados, os centros, podendo obter boas representac¸ ˜oes do conjunto de treinamento no que diz respeito aos pontos “medianos”, dependendo das caracter´ısticas do problema e, consequentemente, da distribuic¸ ˜ao dos dados.
A limitac¸ ˜ao deste m ´etodo reside na necessidade de um conjunto de treinamento grande para que um desempenho satisfat ´orio seja alcanc¸ado. O padr ˜ao mais usado ´e aquele que uti- liza 60% para treinamento, 20% para validac¸ ˜ao e 20% para teste. Uma mudanc¸a nesse padr ˜ao deve ser feita de maneira cuidadosa, pois o modelo pode perder capacidade de generalizac¸ ˜ao.
Selec¸ ˜ao Auto-organizada de Centros
Descrito em Haykin (2001) e tamb ´em em Silva, Spatti e Flauzino (2010), este m ´etodo de selec¸ ˜ao de centros consiste em aplicar a ideia b ´asica do algoritmo SOM -Self Organizing Map (Mapa Auto-organiz ´avel), proposto por Kohonen (1998) e descrito na Figura 5.
1. Gerar valores rand ˆomicos (distintos), ou escolher aleatoriamente, dentre os valores observados, os centros iniciais;
2. Nan- ´esima iterac¸ ˜ao, tomar uma amostra do conjunto de treinamento;
3. Para cada vetor de entrada, encontrar o centro que possui menor dist ˆancia euclidiana ou, equivalentemente, o centro com o qual o vetor de entrada produz o maior produto interno;
4. Para o centro vencedor, atualizar sua localizac¸ ˜ao segundo a regra:
c(novo) =c(anterior) +η(x−c)
em queη∈(0,1) ´e uma taxa de aprendizagem,x ´e o vetor de entrada ec ´e o centro vencedor;
5. Voltar ao Passo 2 at ´e que n ˜ao haja modificac¸ ˜oes significativas na matriz de centros.
FIGURA5: Selec¸ ˜ao auto-organizada de centros
A diferenc¸a deste algoritmo para o algoritmo SOM cl ´assico ´e justamente a aus ˆencia de um
“mapa” de neur ˆonios, ou seja, nenhuma vizinhanc¸a ´e sequer considerada na atualizac¸ ˜ao dos neur ˆonios. Isso equivale a dizer que ´e um algoritmo SOM com o princ´ıpioWinner Takes All
(O Vencedor Leva Tudo) pois somente o neur ˆonio vencedor ´e atualizado. Uma descric¸ ˜ao do princ´ıpioWinner Takes All, aplicado ao problema de designac¸ ˜ao usando uma rede recorrente, pode ser encontrado em Siqueira, Scheer e Steiner (2005).
Selec¸ ˜ao Supervisionada de Centros
Esta ´e a forma mais gen ´erica de se realizar a selec¸ ˜ao de centros. A ideia ´e ajustar os neur ˆonios na matriz de centros considerando aprendizagem por correc¸ ˜ao de erro e, desse modo, a RBFNN se assemelha aoPerceptron cl ´assico. Um candidato natural para resolver este problema ´e o algoritmo conhecido como descida do gradiente, que ´e utilizado para mini- mizar uma func¸ ˜ao de custo/erro.
Grau de de Abertura do Raio do Campo Receptivo
O raio de abertura do campo receptivo de uma RBF ´e o par ˆametro que define a capacidade que a func¸ ˜ao tem de agrupar padr ˜oes. Vale ressaltar que ao contr ´ario doPerceptron, o qual separa os padr ˜oes por meio da construc¸ ˜ao de hiperplanos, uma RBFNN classifica os padr ˜oes por meio de regi ˜oes hiperelipsoidais.
(a) Perceptron Multicamadas (b) Rede Neural de Base Radial
FIGURA6: Separac¸ ˜ao de padr ˜oes doPerceptrone RBFNN
E poss´ıvel observar na Figura 6 que esta estrat ´egia de agrupamento pode ser mais efici-´ ente do que a construc¸ ˜ao dos hiperplanos. Segundo Haykin (2001), o campo receptivo de uma
RBF ´e dado por uma matriz de covari ˆanciaΣe ´e poss´ıvel identificar tr ˆes diferentes cen ´arios de sua influ ˆencia sobre a forma, tamanho e orientac¸ ˜ao do campo receptivo:
1. Σ=σ2·I , onde I ´e a matriz identidade e σ2 ´e uma vari ˆancia comum. Neste caso, o campo receptivo ´e uma hiperesfera;
2. Σ=diag(σ12,σ22, . . . ,σp2), quando forem considerados p exemplos para o treinamento.
Neste caso, o campo receptivo consiste numa hiper-elipse com a extens ˜ao dos j- ´esimos eixos determinados porσj, com j=1, . . . ,p;
3. Σ ´e uma matriz n ˜ao-diagonal. Nesse caso, comoΣ ´e uma matriz definida positiva, por ser uma matriz de covari ˆancias, pode ser decomposta em:
Σ=QTΛQ
em queΛ ´e uma matriz diagonal eQ ´e uma matriz ortonormal de rotac¸ ˜ao. Neste caso, a matrizΛdetermina a forma e o tamanho do campo receptivo enquantoQdetermina sua orientac¸ ˜ao.
Vale salientar que o tamanho do raio de abertura influencia diretamente no tamanho do campo receptivo de um neur ˆonio. O ideal ´e que o raio de abertura n ˜ao cause sobreposic¸ ˜ao nem disjunc¸ ˜ao excessiva dos campos receptivos, pois em ambos os casos a rede pode ter dificuldades em classificar padr ˜oes que est ˜ao perto dos limites dos campos receptivos.
Segundo Braga e Ludermir (2007), v ´arias heur´ısticas vem sendo propostas para a definic¸ ˜ao do raio de abertura das RBFNNs. Uma delas define cada σj como sendo a m ´edia das dist ˆancias euclidianas entre cada centro e seu vizinho (centro) mais pr ´oximo, ou seja, se con- siderarmos pneur ˆonios na camada intermedi ´aria, consequentemente com pcentros, sendod a dist ˆancia euclidiana, os valores deσj s ˜ao dados pela Equac¸ ˜ao 2.10.
σj=min(di6=j(ci,cj))parai=1, . . . ,pe j=1, . . . ,p. (2.10) Outra heur´ıstica, encontrada em Silva, Spatti e Flauzino (2010) e Braga e Ludermir (2007), considerando n exemplos de treinamento e p neur ˆonios na camada intermedi ´aria, atribui a
cadaσj a m ´edia das dist ˆancias dosN≤n vetores de entrada mais pr ´oximos ao centrocj do que aos outros centros. A equac¸ ˜ao 2.11 representa esta heur´ıstica.
σj= 1 N
N i=1
∑
d(xi,cj)para j=1, . . . ,p,. (2.11) em quexi ´e um dos vetores de entrada mais pr ´oximos decj ed ´e a dist ˆancia euclidiana. Esta
´ultima heur´ıstica mostrou um desempenho adequado em Mota et al. (2012), no sentido de proporcionar percentuais de acerto na classificac¸ ˜ao acima de 80%.
C ´alculo da Matriz de Pesos
SejaX⊂Rm×na matriz de observac¸ ˜oes contendonobservac¸ ˜oes emvari ´aveis:
X=
x11 . . . x1n ... . .. ... xm1 . . . xmn
O valor de ativac¸ ˜ao dos- ´esimo neur ˆonio da camada escondida depende da dist ˆancia eu- clidiana quadr ´atica entre a entradaxie o centrocj, ondecj∈C ´e o centro dom- ´esimo neur ˆonio.
Ent ˜ao, de acordo com a abordagem cl ´assica, treinar uma RBFNN ´e, de fato, calcular a matriz de pesos,
w=
w10 w11 . . . w1s
w20 w21 . . . w2s
... . .. ... ...
wp0 wp1 . . . wps
de maneira a ajustar aos alvostcaday, como podemos ver na Equac¸ ˜ao 2.12,
yr=w0rφ0r+
s
∑
k=1
wkrφ ||xi−C||
. (2.12)
Resolver o problema da Equac¸ ˜ao 2.12 ´e equivalente a resolver a Equac¸ ˜ao 2.8. A ´unica
diferenc¸a ´e a forma deφ, que em 2.12 ´e retangular. Ou seja, treinar uma RBFNN ´e equivalente a resolver um sistema n ˜ao linear retangular contendo func¸ ˜oes de base radial.
Entretanto, existem, pelo menos, mais duas abordagens: uma baseada em correc¸ ˜ao de erro, que pode ser encontrada em Silva, Spatti e Flauzino (2010) e a outra, na qual esta pesquisa est ´a focada, que ´e a utilizac¸ ˜ao de Meta-heur´ısticas de busca para o c ´alculo dos pesos, produzindo um sistema h´ıbrido, como por exemplo em Mota et al. (2012). A criac¸ ˜ao de Metodologias H´ıbridas com RBFNNs e Meta-heur´ısticas de busca baseadas em populac¸ ˜ao est ´a descrita no Cap´ıtulo 3.
2.1.2 O Projeto de uma RBFNN
Uma vez que sua arquitetura ´e pr ´e-definida, sendo uma rede alimentada adiante, projetar uma RBFNN consiste em definir os seguintes aspectos:
• Separac¸ ˜ao e Tratamento dos Dados: separar os exemplos que ser ˜ao utilizados no treinamento, validac¸ ˜ao (caso haja) e testes da RBFNN, bem como realizar um tratamento estat´ıstico de dados visando identificar padr ˜oes que possam atrapalhar o desempenho da rede por serem muito at´ıpicos, quando comparados com o restante dos padr ˜oes;
• Topologia: consiste em definir a quantidade de neur ˆonios na camada intermedi ´aria e da camada de sa´ıda;
• Func¸ ˜ao de Ativac¸ ˜ao da Camada Intermedi ´aria: novamente, como a func¸ ˜ao de ativac¸ ˜ao da camada de sa´ıda tamb ´em ´e pr ´e-definida, como sendo a linear pura, existe apenas a necessidade de escolher a func¸ ˜ao de ativac¸ ˜ao de cada neur ˆonio na camada escondida;
• Selec¸ ˜ao dos Centros: escolher o m ´etodo de selec¸ ˜ao dos centros que melhor defina suas localizac¸ ˜oes;
• Raio de Abertura: escolher o m ´etodo para definir a amplitude do campo receptivo de cada neur ˆonio na camada intermedi ´aria e;
• C ´alculo da Matriz de Pesos: escolher o m ´etodo para o c ´alculo da matriz de pesos entre a camada intermedi ´aria e a camada de sa´ıda;
Separac¸ ˜ao e Tratamento dos Dados
H ´a dois processos de separac¸ ˜ao dos exemplos para treinamento, teste e validac¸ ˜ao co- nhecidos comohold-out e validac¸ ˜ao cruzada pass´ıveis de aplicac¸ ˜ao `as RBFNNs. Ambos os procedimentos utilizam-se de sorteios aleat ´orios para definir quais exemplos pertencem a cada grupo, sendo que seus tamanhos s ˜ao pr ´e-definidos.
Hold-out
O hold-out, em problemas de classificac¸ ˜ao, consiste em dividir os exemplos amostrais em tr ˆes grupos: treinamento, validac¸ ˜ao e testes. Na maioria das pesquisas os percentuais encontrados para cada conjunto s ˜ao 60–20–20, respectivamente, sendo o padr ˜ao 70–15–15 uma segunda opc¸ ˜ao adequada. Nesta abordagem, a Rede Neural em quest ˜ao ´e treinada enquanto o percentual de acerto no conjunto de validac¸ ˜ao estiver aumentando, uma vez que este ´e utilizado como auxiliar na medida de capacidade de generalizac¸ ˜ao da rede.
A segunda abordagem dohold-out, aplic ´avel em problemas de previs ˜ao em S ´eries Tempo- rais (ST), consiste em dividir os exemplos amostrais em dois grupos: treinamento e testes. No caso das ST, os exemplos s ˜ao ordenados de acordo com sua disposic¸ ˜ao no tempo, ou seja, a escolha aleat ´oria de quais exemplos pertencer ˜ao a cada grupo n ˜ao se aplica a esse caso.
Os percentuais mais encontrados na literatura para treinamento e teste s ˜ao 90–10, respecti- vamente.
Validac¸ ˜ao Cruzada
A Validac¸ ˜ao Cruzada consiste em dividir os exemplos amostrais em k grupos de mesmo tamanho (ou aproximadamente iguais), sorteando aleatoriamente exemplos para integrar os grupos, e para executar os seguintes procedimentos:
1. Sortear um dos k grupos de mesmo tamanho (ainda n ˜ao sorteado) e defin´ı-lo como conjunto de testes;
2. treinar a rede com osk−1grupos restantes;
3. verificar a capacidade de generalizac¸ ˜ao da rede no conjunto de testes;
4. Voltar ao passo um at ´e que todos os grupos tenham figurado como conjunto de testes.
Nesse procedimento, o percentual de acerto da rede que mede sua capacidade de gene- ralizac¸ ˜ao ´e a m ´edia aritm ´etica simples dos percentuais de acerto em todos os conjuntos de testes.
Func¸ ˜ao de Ativac¸ ˜ao
A escolha da func¸ ˜ao de ativac¸ ˜ao na camada escondida de uma RBFNN n ˜ao possui um m ´etodo espec´ıfico. De forma emp´ırica, faz-se necess ´aria a realizac¸ ˜ao de testes iniciais para verificar qual func¸ ˜ao apresenta melhor ajuste aos dados. A func¸ ˜ao mais utilizada na literatura
´e a Gaussiana, dada na Equac¸ ˜ao 2.2. Vale ressaltar que os neur ˆonios da camada escondida podem utilizar func¸ ˜oes de ativac¸ ˜ao distintas.
Selec¸ ˜ao dos Centros
A selec¸ ˜ao dos centros (ou centr ´oides) consiste em definir quais vetores ser ˜ao os centros do campo receptivo de cada neur ˆonio na camada escondida. Em geral, qualquer algoritmo de agrupamento executar ´a bem esta tarefa, uma vez que a selec¸ ˜ao de centr ´oides ´e um problema cl ´assico dek-medianas.
Raio de Abertura
O raio de abertura da func¸ ˜ao de ativac¸ ˜ao delimita a amplitude do campo receptivo do neur ˆonio em quest ˜ao. Novamente n ˜ao h ´a apenas um m ´etodo para a realizac¸ ˜ao dessa tarefa nem relac¸ ˜ao conhecidaa priorientre a distribuic¸ ˜ao dos dados e a escolha do m ´etodo, podendo ser um dos descritos anteriormente.
E necess ´ario que sejam realizados alguns testes preliminares para verificar qual m ´etodo´ mostra tend ˆencia em produzir melhores resultados. Pode haver melhores resultados com m ´etodos diferentes, em conjuntos de dados de uma mesma ´area de estudo.
Matriz de Pesos
Na abordagem cl ´assica das RBFNNs, o c ´alculo da matriz de pesos, que ´e o treinamento da rede em si, consiste em pseudo-inverter a matriz com os valores de ativac¸ ˜ao dos neur ˆonios da camada intermedi ´aria.
Estrat ´egias para a Definic¸ ˜ao da Topologia
Conforme mencionado anteriormente, o treinamento de uma RBFNN consiste na pseudo- invers ˜ao da matriz com os valores de ativac¸ ˜ao dos neur ˆonios da camada escondida e a definic¸ ˜ao de sua topologia utiliza a mesma ideia principal do treinamento de uma Rede Neural.
Na maioria dos trabalhos encontrados na literatura o procedimento adotado ´e o seguinte:
executa-se um processo iterativo, aumentando a quantidade de neur ˆonios enquanto o de- sempenho do conjunto de validac¸ ˜ao estiver melhorando. O “treinamento” deve ser abortado quando houver uma determinada quantidade de decr ´escimos no desempenho do conjunto de validac¸ ˜ao. Esses decr ´escimos s ˜ao chamados de “falhas de validac¸ ˜ao”. Adota-se, ent ˜ao, como capacidade de generalizac¸ ˜ao da rede, o percentual de acertos no conjunto de testes corres- pondente `a iterac¸ ˜ao em que foi encontrado o melhor resultado no conjunto de validac¸ ˜ao.
2.2 COMPUTAC¸ ˜AO EVOLUCION ´ARIA
A princ´ıpio, a Matem ´atica e a Biologia s ˜ao duas Ci ˆencias com sistematizac¸ ˜oes e abor- dagens diferentes com um ´unico objetivo em comum, aparentemente, de fazer parte de uma gama de conhecimentos necess ´arios `a compreens ˜ao do Universo. Entretanto, o surgimento de problemas mais espec´ıficos e complexos fez surgir uma parceria sistematizada incialmente por Holland (1975) entre a Teoria da Evoluc¸ ˜ao, proposta por Charles Darwin e a ´Algebra Li- near, posteriormente a Inform ´atica veio fazer parte deste grupo, fornecendo ferramentas para a implementac¸ ˜ao destes modelos.
A Computac¸ ˜ao Evolucion ´aria (CE) tem como princ´ıpio b ´asico modelar a evoluc¸ ˜ao natural.
Para que isso seja poss´ıvel, segundo Rutkowski (2008) e Engelbrecht (2007), ´e necess ´ario le- var em considerac¸ ˜ao os principais conceitos de sobreviv ˆencia: adaptac¸ ˜ao e aptid ˜ao. Para isso, os indiv´ıduos melhores adaptados ao meio sobrevivem e t ˆem chance de passar os c ´odigos gen ´eticos que garantiram sua sobreviv ˆencia aos seus descendentes e os menos adaptados t ˆem maior probabilidade de morrer e perder esta chance, como afirmam Holland (1975) e Goldberg (1989).
Essencialmente, a CE consiste em modelar uma populac¸ ˜ao de indiv´ıduos e fazer com que esta populac¸ ˜ao se reproduza por meio de cruzamentos, gerando descend ˆencia, e evolua por meio de mutac¸ ˜ao, sendo levados em considerac¸ ˜ao os princ´ıpios de selec¸ ˜ao natural. Existem diferentes classes de algoritmos j ´a desenvolvidos, em Engelbrecht (2007) est ˜ao listados os principais deles:
• Algoritmos Gen ´eticos (AG): T ˆem como principal objetivo modelar a evoluc¸ ˜ao gen ´etica;
• Programac¸ ˜ao Gen ´etica: S ˜ao baseados em AG, mas os indiv´ıduos s ˜ao programas com- putacionais, em vez de vetores, e tais programas s ˜ao representados em ´arvores;
• Programac¸ ˜ao Evolucion ´aria: ´e uma derivac¸ ˜ao da simulac¸ ˜ao de comportamento adap- tativo na evoluc¸ ˜ao, tamb ´em chamado de Evoluc¸ ˜ao Fenot´ıpica;
• Estrat ´egias Evolucion ´arias: orientam-se pela modelagem dos par ˆametros que contro- lam a variac¸ ˜ao na evoluc¸ ˜ao;
• Evoluc¸ ˜ao Diferencial: difere dos AGs apenas no mecanismo utilizado para a reproduc¸ ˜ao;
• Evoluc¸ ˜ao Cultural: modela a evoluc¸ ˜ao da cultura de uma populac¸ ˜ao e como como esta cultura influencia a evoluc¸ ˜ao gen ´etica e fenot´ıpica dos indiv´ıduos;
• Co-evoluc¸ ˜ao: nesta abordagem, inicialmente s ˜ao gerados indiv´ıduos “burros” que coo- peram ou competem entre si, com o objetivo de adquirir as caracter´ısticas necess ´arias para sobreviver.
Segundo Engelbrecht (2007), a CE tem sido utilizada com sucesso em v ´arios problemas do mundo real, tais como: Minerac¸ ˜ao de Dados, Otimizac¸ ˜ao Combinat ´oria, Diagn ´ostico de Falhas, Classificac¸ ˜ao e Agrupamento de Padr ˜oes, Quadro de Hor ´arios e Previs ˜ao de S ´eries Temporais.
2.2.1 Algoritmos Gen ´eticos
Os Algoritmos Gen ´eticos (AG) fazem parte de uma sub ´area da Intelig ˆencia Computaci- onal (IC) conhecida como Computac¸ ˜ao Evolucion ´aria (CE), juntamente com outras t ´ecnicas, tais como: a Programac¸ ˜ao Gen ´etica (PG), Programac¸ ˜ao Evolucion ´aria e Evoluc¸ ˜ao Diferencial.
Nesta sec¸ ˜ao os conceitos principais sobre os algoritmos gen ´eticos s ˜ao apresentados, bem como as principais caracter´ısticas e operadores dos AG cont´ınuos, que fazem parte do foco deste trabalho.
Princ´ıpios Fundamentais
Os Algoritmos Gen ´eticos (AG) conforme descrito em Goldberg (1989) e Holland (1975) s ˜ao, basicamente, um conjunto de algoritmos baseados nos princ´ıpios de biologia evolutiva enunciados por Charles Darwin em seu livro intitulado A Evoluc¸ ˜ao das Esp ´ecies. Em sua abordagem cl ´assica, os AGs utilizam strings vetoriais como candidatos `a soluc¸ ˜ao de um pro- blema de otimizac¸ ˜ao.
Os princ´ıpios considerados na elaborac¸ ˜ao de um AG s ˜ao a selec¸ ˜ao natural, hereditarie- dade, mutac¸ ˜ao e a recombinac¸ ˜ao (crossover). Quando s ˜ao traduzidos para a linguagem ma- tem ´atica, tais princ´ıpios se transformam em operadores gen ´eticos de cruzamento e mutac¸ ˜ao,
j ´a a selec¸ ˜ao natural se transforma numa regra de decis ˜ao. A Figura 7 apresenta o algoritmo gen ´etico b ´asico, em sua forma gen ´erica e resume seu funcionamento.
Sejag=0o contador de gerac¸ ˜oes;
Criar e inicializar uma populac¸ ˜ao de tamanho pr ´e-definido;
Enquantonenhum crit ´erio de parada for satisfeitofac¸a;
Avalie ofitness(aptid ˜ao) de cada indiv´ıduo da populac¸ ˜ao;
Selecione os indiv´ıduos;
Realize a reproduc¸ ˜ao para gerar descend ˆencia;
Selecione a nova populac¸ ˜ao;
Avance para a nova gerac¸ ˜ao, ou seja,g=g+1;
Fim Enquanto
FIGURA7: Algoritmo Gen ´etico Original
Vale ressaltar que, inicialmente, a base num ´erica bin ´aria (representac¸ ˜ao bin ´aria) foi con- siderada para implementac¸ ˜ao e aplicac¸ ˜ao dos Algoritmos Gen ´eticos na literatura. Contudo, hoje ´e bastante comum encontrarmos aplicac¸ ˜oes em que a base num ´erica decimal ´e utilizada, podendo utilizar valores inteiros e/ou reais (Algoritmos Gen ´eticos Cont´ınuos).
A escolha da base decimal em vez da base bin ´aria se justifica pela maior proximidade entre soluc¸ ˜oes ligeiramente diferentes, uma vez que, na base bin ´aria, uma pequena variac¸ ˜ao no vetor de resposta pode ocasionar uma mudanc¸a radical na direc¸ ˜ao de busca, podendo ocasionar perdas maiores na func¸ ˜ao objetivo do que na base decimal.
Os componentes da configurac¸ ˜ao de um AG s ˜ao:
1. uma func¸ ˜ao de aptid ˜ao;
2. uma populac¸ ˜ao inicial de tamanho predefinido;
3. um operador de selec¸ ˜ao de pares para a reproduc¸ ˜ao;
4. os operadores de reproduc¸ ˜ao;
5. crit ´erios de medida de converg ˆencia, ou crit ´erios de parada.
Func¸ ˜ao de Aptid ˜ao (Fitness)
Segundo Goldberg (1989) e Engelbrecht (2007), a Func¸ ˜ao de Fitness (FF) (aptid ˜ao) ´e, possivelmente, o componente mais importante de um Algoritmo Evolucion ´ario (AE), conse- quentemente, de um AG. Uma FF tem como principal tarefa mapear a representac¸ ˜ao de um cromossomo (indiv´ıduo), a um valor escalar, geralmente real, ou seja:
F:CI→R (2.13)
ondeF ´e a FF eCrepresenta o cromossomoI-dimensional.
Considerando o fato de que cada indiv´ıduo representa uma potencial soluc¸ ˜ao ´otima, de acordo com crit ´erios pr ´e-definidos, para o problema, uma FF tem, como consequ ˆencia de sua func¸ ˜ao primordial, quantificar o qu ˜ao bom um indiv´ıduo ´e, o qu ˜ao perto a soluc¸ ˜ao est ´a do ´otimo.
A maioria dos operadores gen ´eticos fazem uso da FF como crit ´erios internos de operac¸ ˜ao.
Uma FF deve ser um bom modelo matem ´atico do problema, isto ´e, deve refletir todos os crit ´erios para ser otimizada e, inclusive, deve levar em considerac¸ ˜ao as restric¸ ˜oes do pro- blema, conforme afirmam Goldberg (1989) e Engelbrecht (2007). A inclus ˜ao das restric¸ ˜oes numa FF pode ser feita por meio de penalizac¸ ˜oes. Vale observar que as restric¸ ˜oes podem ser incorporadas em outras etapas do AG, como nos operadores de cruzamento e mutac¸ ˜ao.
Populac¸ ˜ao Inicial
Uma populac¸ ˜ao inicial, de tamanho pr ´e-definido, equivale a gerar soluc¸ ˜oes para o pro- blema em quest ˜ao. Geralmente, esta etapa consiste em gerar aleatoriamente vetores (in- div´ıduos) que estejam no espac¸o de soluc¸ ˜oes. Para garantir a diversidade gen ´etica e repre- sentatividade do espac¸o de busca, apriori, a ´unica restric¸ ˜ao nesta operac¸ ˜ao ´e a de que os indiv´ıduos sejam distintos.
Segundo Engelbrecht (2007), se houver informac¸ ˜oes dispon´ıveis sobre quais caracter´ısticas s ˜ao desej ´aveis nos elementos da populac¸ ˜ao inicial ´e poss´ıvel criar heur´ısticas que levem isso
em considerac¸ ˜ao. Entretanto, ´e necess ´ario ponderar que esta estrat ´egia pode levar `a con- verg ˆencia prematura e a um ´otimo local, uma vez que indiv´ıduos que poderiam contribuir para melhoria da populac¸ ˜ao, por diversidade gen ´etica, podem n ˜ao ser selecionados para a populac¸ ˜ao inicial.
Com relac¸ ˜ao ao tamanho da populac¸ ˜ao inicial, n ˜ao existe um consenso do que pode ser considerada uma populac¸ ˜ao inicial “grande” ou “pequena”. Entretanto, quase um un´ıssono na literatura ´e a afirmac¸ ˜ao de que uma populac¸ ˜ao inicial pequena, embora diminua o tempo computacional de execuc¸ ˜ao do algoritmo, pode requerer mais gerac¸ ˜oes para convergir e levar a um ´otimo local, enquanto que uma populac¸ ˜ao inicial grande requer menos iterac¸ ˜oes para convergir e t ˆem mais chances de chegar ao ´otimo global.
E claro que a falta de diversidade em populac¸ ˜oes iniciais pequenas pode ser amenizada´ aumentando-se a taxa de mutac¸ ˜ao, mas n ˜ao h ´a garantias de que esta estrat ´egia resolva seu problema de miopia, ou seja, o tropec¸o em ´otimos locais.
Operadores de Selec¸ ˜ao
Segundo Holland (1975) e Engelbrecht (2007), os Operadores de Selec¸ ˜ao (OS) para a reproduc¸ ˜ao t ˆem a func¸ ˜ao de garantir que os melhores indiv´ıduos de uma populac¸ ˜ao sejam destacados. Alguns dos OS a serem considerados s ˜ao: Selec¸ ˜ao Rand ˆomica, Selec¸ ˜ao Propor- cional, Selec¸ ˜ao via Torneio, Selec¸ ˜ao Baseada em Ranqueamento e Elitismo, os quais est ˜ao descritos a seguir:
• Selec¸ ˜ao Rand ˆomica: na qual os indiv´ıduos s ˜ao selecionados sem crit ´erio algum. In- div´ıduos bons e ruins t ˆem a mesma chance de passar seu c ´odigo gen ´etico `as gerac¸ ˜oes futuras;
• Selec¸ ˜ao Proporcional: a chance de um indiv´ıduo ser selecionado para se reproduzir ´e proporcional a seufitnesse expresso em probabilidade, de acordo com a Equac¸ ˜ao 2.14,
Prob(C) = F(C)
∑Nn=1F(C) (2.14)
em que Prob(C)representa a probabilidade de um indiv´ıduo ser selecionado eF(C) ´e o fitness de cada um dosNindiv´ıduos da populac¸ ˜ao;
• Selec¸ ˜ao via Torneio: Nesta modalidade,k<Nindiv´ıduos s ˜ao pr ´e-selecionados aleatori- amente e apenas o indiv´ıduo que possui o melhorfitness ´e escolhido para se reproduzir;
• Selec¸ ˜ao Baseada em Ranqueamento: Este tipo de selec¸ ˜ao usa a ordenac¸ ˜ao emran- king dofitness para determinar a probabilidade de selec¸ ˜ao de um indiv´ıduo. Isso quer dizer que a selec¸ ˜ao de um indiv´ıduo, por este m ´etodo de selec¸ ˜ao, independe do valor real do fitness. Essa estrat ´egia garante que nenhum indiv´ıduo da populac¸ ˜ao, n ˜ao im- portando a magnitude de sua aptid ˜ao, dominar ´a o processo no sentido de sempre ser escolhido para gerar descendentes.
• Elitismo: O Elitismo ´e um operador de selec¸ ˜ao que se preocupa em definir quais indiv´ıduos sobreviver ˜ao para a pr ´oxima gerac¸ ˜ao (sem sofrer mutac¸ ˜ao), selecionando assim os poss´ıveis indiv´ıduos que poder ˜ao, eventualmente, gerar descend ˆencia duas gerac¸ ˜oes `a frente da atual. A selec¸ ˜ao pode ser baseada nos melhoresfitness ou qual- quer um dos crit ´erios mencionados anteriormente.
Operadores de Reproduc¸ ˜ao
Existem, essencialmente dois operadores de reproduc¸ ˜ao a serem considerados: crossing- overoucrossover (cruzamento) e mutac¸ ˜ao. Aqui um indiv´ıduo ´e considerado melhor adaptado ou “bom” se o valor de seufitnessfor adequado. Por outro lado ´e considerado “ruim” se o valor de seufitness for inadequado.
O objetivo principal dos operadores de reproduc¸ ˜ao ´e gerar descendentes, de indiv´ıduos previamente selecionados, utilizando-se os operadores gen ´eticos citados anteriormente.
O objetivo dos operadores de cruzamento ´e a combinac¸ ˜ao de materiais gen ´eticos j ´a exis- tentes a fim de obter novos indiv´ıduos que sejam compostos pelas melhores caracter´ısticas de seus geradores, formando assim um indiv´ıduo bem adaptado, isto ´e, com um valor adequado defitness. Segundo Engelbrecht (2007), pode-se escolher a substituic¸ ˜ao dos geradores (pais)
por sua descend ˆencia (filhos), caso osfitness dos pais sejam menos adequados do que dos filhos.
A mutac¸ ˜ao ´e o processo de modificar randomicamente os valores dos genes nos in- div´ıduos. O principal objetivo desse grupo de operadores gen ´eticos ´e o de introduzir mate- rial gen ´etico novo na populac¸ ˜ao, com o intuito espec´ıfico de aumentar o espac¸o de busca por soluc¸ ˜oes. Segundo Holland (1975) e Engelbrecht (2007) a mutac¸ ˜ao de uma populac¸ ˜ao geral- mente ocorre a uma baixa probabilidade (0,01–0,1) para tentar evitar que indiv´ıduos melhores adaptados percam as caracter´ısticas que os tornam bons.
Crit ´erios de Parada
Diversos crit ´erios de parada para um algoritmo com essas caracter´ısticas podem ser apli- cados:
• quando ofitness do melhor indiv´ıduo alcanc¸ar determinado valor;
• quando houver uma certa quantidade de indiv´ıduos iguais (ou muito parecidos) na po- pulac¸ ˜ao;
• quando atingir uma certa quantidade de gerac¸ ˜oes (iterac¸ ˜oes);
• quando o melhor indiv´ıduo n ˜ao for superado ap ´os uma certa quantidade de gerac¸ ˜oes.
Entre algumas aplicac¸ ˜oes de AG, pode-se citar o trabalho de Wang e Kong (2011) que utilizaram como crit ´erio de parada o evento do melhor indiv´ıduo n ˜ao ser superado ap ´os uma quantidade de gerac¸ ˜oes. Mais especificamente, o crit ´erio de parada escolhido foi o de pa- rar o algoritmo ap ´os o melhor indiv´ıduo n ˜ao ser superado mais de0,1% em 5000 gerac¸ ˜oes.
Tamb ´em, Hoffmann, Medina e Wolisz (2011) utilizaram o crit ´erio da quantidade de gerac¸ ˜oes, assumindo que o algoritmo convergiu ap ´os 5000 gerac¸ ˜oes.
Algoritmos Gen ´eticos Cont´ınuos e Operadores de Michalewicz
Conforme mencionado anteriormente, j ´a existem in ´umeras abordagens via AG que utili- zam valores cont´ınuos, os denominados Algoritmos Gen ´eticos Cont´ınuos. Para maiores escla- recimentos sobre os operadores cl ´assicos desenvolvidos para AG bin ´ario/discreto, ´e poss´ıvel consultar Holland (1975) e Goldberg (1989).
Uma das pesquisas que utiliza a representac¸ ˜ao real foi realizada por Michalewicz, Logan e Swaminathan (1994) que sistematizou tr ˆes operadores de cruzamento (Crossover) e quatro operadores de mutac¸ ˜ao, descritos a seguir.
Crossover Simples
Dados dois indiv´ıduos, ocrossover simples consiste em sortear aleatoriamente um ponto de cruzamento e, a partir daquele ponto, ocorre a troca de genes entre os pais. A Figura 8 ilustra a ideia do ponto de cruzamento e a mistura gen ´etica que acontece entre os pais para gerar os filhos.
1,5 9,2 31,2 6,8
0,8 7,4 1,3 5,7
1,5 9,2 31,2
6,8 0,8 7,4 1,3
5,7
Pais Filhos
FIGURA8: Cruzamento gen ´etico de um ponto
Crossover Aritm ´etico
Dados dois indiv´ıduosp1ep2para o cruzamento, ocrossover aritm ´etico consiste em gerar os elementos,
c1=βp1+ (1−β)p2ec2=βp2+ (1−β)p1comβ∼U(0,1). (2.15) Vale ressaltar que este operador n ˜ao ultrapassa os intervalos(p1,p2).
Crossover Heur´ıstico
Dados dois indiv´ıduos p1 e p2 para o cruzamento, tal que a aptid ˜ao de p1 ´e menos ade- quada do que a de p2, este operador ´e a extrapolac¸ ˜ao linear entre os geradores,
c=p1+β(p2−p1)ondeβ∼U(0,1). (2.16)
Mutac¸ ˜ao Uniforme
Dado um indiv´ıduo p, com S={1, . . . ,s} genes, este operador sorteia um gene j∈S e o substitui por um n ´umero aleat ´orio oriundo de uma distribuic¸ ˜ao uniforme, ou seja,
ci=
U(ai,bi), sei= j
pi, caso contr ´ario.
(2.17) Os valores ai e bi representam os limites do intervalo permitido para o indiv´ıduo p em sua i- ´esima componente, caso haja alguma restric¸ ˜ao de factibilidade ou simplesmente de intervalo de busca.
Mutac¸ ˜ao de Limite
Dado um indiv´ıduo p, comS={1, . . . ,s}genes, este operador substitui um gene j∈Spor um dos limites do intervalo fact´ıvel[ai,bi], caso haja alguma restric¸ ˜ao de factibilidade ou apenas
intervalo de busca, onder∼U(0,1),
ci=
ai, ser<0,5ei= j bi, ser>0,5ei= j pi, caso contr ´ario .
Mutac¸ ˜ao N ˜ao-uniforme Simples e M ´ultipla
Dado um indiv´ıduo p, comS={1, . . . ,s}genes, este operador substitui um gene j∈Spor um n ´umero extra´ıdo de uma distribuic¸ ˜ao n ˜ao-uniforme,
pi=
pi+ (bi−pi)f(G), ser1<0,5ei= j pi−(pi−ai)f(G), ser1≥0,5ei= j
pi, caso contr ´ario . com,
f(G) =
r2
1− G Gmax
b
,
sendoGa gerac¸ ˜ao atual,Gmax o n ´umero m ´aximo de gerac¸ ˜oes er1,r2∼U(0,1). Al ´em disso, os valoresai ebis ˜ao os limites do intervalo fact´ıvel. A aplicac¸ ˜ao da mutac¸ ˜ao n ˜ao-uniforme em todos os genes deste indiv´ıduo ´e chamada de mutac¸ ˜ao n ˜ao-uniforme m ´ultipla.
2.3 INTELIG ˆENCIA DO ENXAME
A Intelig ˆencia do Enxame (IE) ´e uma ´area de estudo que tem suas origens nas col ˆonias, tamb ´em chamados de enxames, de seres vivos. S ˜ao v ´arios os seres vivos que se beneficiam da vida em sociedade, alguns destes inspiraram algoritmos de otimizac¸ ˜ao. Os exemplos mais encontrados na literatura s ˜ao: p ´assaros, abelhas e formigas.
Segundo Abraham, Guo e Liu (2006), a t ´ecnica conhecida comoParticle Swarm Optimi- zation (PSO), traduzida para o portugu ˆes como “Nuvem de Part´ıculas”, tem sua inspirac¸ ˜ao no estudo do comportamento de pequenos grupos (blocks) de p ´assaros e ´e um m ´etodo de otimizac¸ ˜ao global.
A PSO ´e um m ´etodo de busca baseado em populac¸ ˜ao no qual os indiv´ıduos (part´ıculas) s ˜ao agrupadas num enxame (nuvem). Cada part´ıcula representa um candidato `a soluc¸ ˜ao do problema, em geral um vetor. Num sistema baseado em PSO, cada part´ıcula se movimenta no espac¸o de busca, atualiza sua posic¸ ˜ao, de acordo com sua pr ´opria experi ˆencia e, tamb ´em, levando em considerac¸ ˜ao a experi ˆencia do grupo.
Assim como em outros m ´etodos, a medida de otimalidade de uma soluc¸ ˜ao ´e baseada numa func¸ ˜ao de aptid ˜ao (fitness) do indiv´ıduo, podendo variar sua medida desej ´avel de acordo com o significado de tal func¸ ˜ao para o problema em quest ˜ao. Ainda segundo Engelbrecht (2007), as aplicac¸ ˜oes da PSO incluem agrupamento, como em Marini e Walczak (2011) e Lin e Tzeng (2010), otimizac¸ ˜ao de estruturas mec ˆanicas, ver Omkar et al. (2009) e Li et al. (2007) e, consequentemente, a soluc¸ ˜ao de sistemas lineares.
Outra col ˆonia que encontramos na natureza ´e a de formigas. A maneira como esses inse- tos encontram o menor caminho at ´e uma fonte de comida por meio do dep ´osito de ferom ˆonios, como uma trilha deixada aos indiv´ıduos da col ˆonia, inspirou o algoritmo de otimizac¸ ˜ao conhe- cido comoAnt Colony Optimization(ACO) ou “Col ˆonia de Formigas”.
Segundo Engelbrecht (2007), a aplicac¸ ˜ao primordial do algoritmo ACO ´e a determina- c¸ ˜ao da rota mais curta, entretanto, h ´a outras aplicac¸ ˜oes tais como: roteirizac¸ ˜ao de ve´ıculos, Lee et al. (2010) e Yu, Yang e Yao (2009), problemas de quadro hor ´ario e colorac¸ ˜ao de ima- gens, a classificac¸ ˜ao de padr ˜oes, como podemos ver em Villwock, Steiner e Siqueira (2011) e aplicac¸ ˜ao em minerac¸ ˜ao de dados oriundos da Internet como ´e poss´ıvel observar em Abraham, Guo e Liu (2006).
Em suma, a Intelig ˆencia do Enxame ´e um campo de estudo ainda jovem e emergente, como ponderam Bonabeau, Corne e Poli (2010). Ademais, segundo Engelbrecht (2007), h ´a muito potencial nesta ´area da IA e as aplicac¸ ˜oes iniciais, `a sua ´epoca de publicac¸ ˜ao, se mos- traram promissoras.
2.3.1 Nuvem de Part´ıculas
O algoritmo PSO -Particle Swarm Optimization, ou “Nuvem de Part´ıculas” ´e um algoritmo de busca baseado em populac¸ ˜ao que simula o comportamento social de p ´assaros num bando.