You are on page 1of 31
| concnesro muse oS MEORAS | Il CONGRESSO BRASILEIRO DE REDES NEURAIS IIT ESCOLA DE REDES NEURAIS ‘CURITIBA. 29/0UT A OTNOWTIORS Motivagao, Fundamentos e Aplicagoes de Algoritmos Genéticos Julio Tanomaru! Universidade de Tokushima ‘Tokushima 770 Japao nail; tanomaru@is .tokushima-u.ac.jp Darwin frequently understood things far more clearls than loth his supporters end his opponents, including those of the present doy. Exnst Mayr [102] 1 Introdugio As pesquisas sobre modelos computacionais in. {eligentes tam, nes tltimos anos, se caracterizado pela tendéncia em buscar inspiragéo na natureza, conde existe um sem-niimero de exemplos vivor de rocessos que podem ser ditos “inteligentes”. Para Cientistas de computagio, mateméticos e engenb ros, muitas das solugdes que 8 mic-natureza en- controu para complexos problemas de adaptacdo fornecem modelos interessantissimos. Embora no se possa afirmar que tais solugSes sejam todas étimas, nio hi a menor dtivida de que os proces- sos naturais, em particular os relacionados dire- tamente com os seres vivos, sejams soberbamente bem concebidos ¢ adequados ao nosso mundo. Fisicos, bidlogos ¢ outros cientistas tentam des- vendar os principios que regem os fendmenos da natureza, enquanto que os mateméticos, cientis- tas de computaséo ¢ engenheiros buscam idéias {que possam ser copiadas ou pelo menos imitadas, € entao aplicadas a problemas que a ciéncia atual ‘ainda néo consegue resolver satisfatoriamente, Por ‘exemplo, o fenomeno de anelamento em metais, a enorme capacidade de processamento do sis- tema nervoso central de animais superiores ob- tida através da acao paralela de uma complexe rede de neuronios lentos ¢ ruidosoe, e © processo TEinderece: Department of Information Science and In sclligens Systems, Faculty of Engineering, The University of ‘Tokushima, 21 Minami-jouanjima, Tokushims, 770, Japan. ‘Phone: +81-886-567488, FAX: +81-880-967455 eatocéstico de evolugdo natural, forneceram ins- piragdo para os paradigmes de computegio de- nominados Anclamento Simulade [1, 88], Redes Neurais (ou Newronais) Artifcieis (6, 70}, € Com- putaséo Evoluciondria (EC), respectivamente. Em termos computacionais, CE incorpora uma das metiforas mais apelativas: CE encara a teoria de evolugio Darwiniana como um proceso adap- tativo de otimizagdo, sugerindo um modelo em que populagdes de estruturas computacionais evoluem de modo @ melhorar, em média, o desempenho geral da populagio com respeito a um dado pro- blema, ou seja, a “adequabilidade” da popul com respeito a0 ambiente. ‘Atuslmente, CE engloba um mimero crescente de paradigmas e métodos, dos quais os mais im- pportantes sao os Algoritmes Genéticos (AGs) (33, 36, 37, 56,75, 78, 141], Programagao Evolucionitia (PE) (45), Estratégias Evolucionéries (BE) (123, 124), Programasio Genética (PG) (90, 91], ¢ Sis- temas Classificadores (SCs) (14, 23, 76, 156), entre outros. De fato, SCs and PG podem ser vistas ‘como aplicagses eepeciais de AGs, enquanto que PE e Es foram desenvolvidas independentemente dos AGs, e somente agora comegam e interagir. De modo geral, téenicas em CE dao origem aos cha- mados Algoritmos Evolucionérios (AEs). ‘Algoritmos Genéticos sio as mais difundidas ¢ eotudadas téenieas de CE, pela sus flexibilidade, relativa simplicidade de implementasio, e eficécia em realizar busca global’ em ambientes adversos, Este artigo introduz as motivagbes © conctitos fundamentais da teoria dos Algoritmos Genéticos (AGe ou “GAs”, a abreviatura em inglés), bem como um mimero de aspectos avangados que vi- sam a aumentar sua eficiéncis. Exemplos de aplicagées representativas, bem como aspectos de implementagio prética so também abordadcs. 2 Algoritmos Genéticos: Motivagao 2.1 Busca e Otimizacio Uma grande parte dos problemas cientificos pode ser formulada como problemas de busca ¢ o mizacéo: basicamente, existe uma série de fatores influenciando desempenho de um dado sistema, e tais fatores podem assumir um nimero limitado ou ilimizado de valores, e podem ser sujeites a certas restrigées. © objetivo € encontrar a melhor com- binagSo dos fatores, ou seja, a combinagio de fato- res que proporcione o melhor desempenho possivel para o sistema em questo. Em termos técnicos, © conjunto de todas as combinagbes possiveis para os fatores constitui o chamado espaco de busca. Nao € dificil perceber que existe uma dualidade entre os conctitos de busca ¢ otimizagio, de tal modo que todo problema de busca pode ser considerado tum probleme de otimizagao e vice-versa. “Sem perda de generalidade, consideremes so- mente problemas de maximizacéo'. Dada uma fungio J : R" — Re um espago de busca SCR", © problema de otimizago pode ser formulado as- sim: maximizar f(z) |z € 5. a) Em termos de um problema de busca, o mesmo problema pode ser escrito: encontrar 2° | f(z") > f(z), VeES.| (2) A Tango J(.) pode ser derivével ou no, uni- ov multidimensional, ¢ 0 espago de busca Spode ser continuo ou discreto, finito ou infinito, concavo ou convexo, O problema é chamado unimodal quando ha somente um ponto maximo z* no expago de busca, ou multimodal em caso contraric. Além disso, a fungao f(-) pode ser estacionéria ou nbo- estacionaria, isto é, variavel com 0 tempo. 2.2 Métodos de Otimizasio ‘Numa classificagio grosseira, ha essencialmente trés correntes de métodos gerais de otimizaséc: métodos probabilisticos, numérices e enumerati- vos. Ha ainda um grande mimero de métodos hibridos. Em. primeiro lugar, deixemos os métodos aleatérios de lado e comecemos pelos métodos numéricos, que podem ser dividides em analiticas ou baseados em céleulo numérico. Os métodos analiticos de otimizacdo sio aplicdveis basica- mente quando a funsao f(-) é explicitamente co- hecida e derivavel ou pode ser aproximada por *Problemas de maximizagho podem ser convertidos em problemas de minimizacdo e viceveri, através de atilcioe hem simples como, por exemplo, multipliear « fancio por a alguma fungéo derivével até © grau dexejado de preciséo, Neate caso, basta resolver as equagées aque resultam de igualar as derivadas da funcio a zero dentro do espago de busca. ‘Jd em relagio aos métodos baseades em eilculo numérico, quando os espaco de busca € linear €, portanto, convexo, técnicas de Pesquisa Ope- racional como 0 método simples, s80 suficien- tes (72, 85, 139]. Jé em ambientes naclineares, vécnicas de gradiente ou de estatistica de alta or dem sio geralmente empregadas (69, 80, 97, 100} Em métodos de gradiente, a idéia essencial ¢ tomar uum ponto partida e calcular © ponto seguinte com base no gradiente local, da funsio a ser ctimizada [97]. Métodos de Newton requerem ainda as se- undas derivadas parciais. Métodos de gradiente conjugado [69], quase-Newtonianos, ¢ extratégias de métrica variavel [119] aproximam a informacio das derivadas iterativamente. Embora scjam comumente empregados, tais métados somente sio capazes de encontrar étimos locais, e sic ineficazes para otimizagéo de fungoes multimedais, como a ilustrada na Fig. 1. Além disso, em problemas de otimizacic combinatoria em espacos discretos, geralmente @ funso @ ser otimizada é nao somente multimodal, mas também nio-diferencidvel ¢/ou nio-continva, Figura 1: Exemplo de uma fungio mukimodel. Métodos enumerativos de otimizagio exami- nam cada ponto do espago de busca, um por um, fem busca dos pontos times. A idéia pode ser intuitiva, mas € obviamente impratica quando hé ‘um niimero infinito ou extremamente grande de pontos a examinar. Por outro lado, os métodos probabilisticos sio meétodos que empregam a idéia de busca proba- bilistica, o que nio quer dizer que sejam métodos totalmente baseados em sorte, como ¢ 0 caso dos chamados métodos aleatérios. Por exemplo, ‘a técnica conhecida como anelamento simulado ‘que, como © nome indies, simula o fendmeno de aN ‘anelamento, ou seja, 0 resftiamento por etapas de liges metélicas derretidas, usa o conceito de transicées probabilistices. A idéia é que, a al- tas temperaturas, as moléculas se comportam de ‘modo aloatério, transitando tanto para estados de ‘maior como de menor energia; & medida que a temperatura abaixe, porém, a probabilidade das moléculas saltarem temporariamente para esta- dos de maior energia diminui. Essa técnica tem sido empregada com sucesso para a otimizagio global de fungSes multimodais, mas ainds apre- senta muitos problemas, como o excessivamente longo tempo de processamento, dificil escolba de parametros ¢ catratégins de resfriamente, etc. 2.3 Otimizagao na Natureza e AGs Vista de forma global, a evolugio natural im- plementa mecanismos adaptatives de otimizacio que, embora estejam longe:de serem uma forms de busca aleatéria, com certeza envolvem aleato- riedade. E esse tipo de busca inteligente, mas no deterministica, que os AGs tentam imitar. Embora Charles Darwin tenha formulado a ‘Teoria da Evolucéo no final do século passado [29], foi sé recentemente que se tentou idealizar um mo- delo matematico do processo evolutivo. Nos anos 60, Jobn Holland, de Univ. de Michigan, comegou 1a definir as bases de algoritmos de otimizagao de inspiracao genética, Seu trabalho culminow na pu- Dlicagéo do livro Adeplogie cm Sistemas Naturais - Arlificieis em 1975 [75]. O livro, que é hoje muito citado mas pouguissimo lido, foi pouco divulgado nna época, em grande parte devido ao estilo pesado, com notagio insossa e excessivamente complexa. Felizmente Holland ¢ seus muitos discfpulos, quase todos seus alunos de pés-graduaséo, continuaram sua Tinha de investigagio, publicando resultados com alguma timidez mas com perseveranca. ‘A grande popularidade que o> AGs atingiram recentemente se deve a dois importantes fatores: a ublicagéo de um livro tutorial sobre AGs [56] por um dos alunes de doutorado de Holland, David Goldberg, um pesquisador extremamente ativo € comexcelente potencial didatico, e &s Conferéncies Internacionais sobre Algoritmos Genéticos (IC- GAs), que tem se realizado a cada dois anos nes Estados Unidos desde 1985. Os AGs pertencem a classe dos métodes pro- bebilisticos de busca e otimizacéo, embora no se- jamaleatérios. Usa-se o conceito de probabilidade, ‘mas AGs nao sio estiipidas buscas aleatérias, Pelo contrério, AGs tentam dirigir a busca para regies do capago onde € “provével” que os pontos étimos estejam, 3 Fundamentos dos AGs 3.1 Uma Defi Sem afirmar que esta é a melhor possivel, aqui arriscamos a seguinte definigao para AGs: Algoritmes Genéticos (AGs) sto métodos computecionais de busca baseados nos imecanismos de evoltcdo natural ¢ na genética. Em AGs, uma populesio de possfveis solugées pare o probleme em questéo evolui de acordo com operedo- res prolabilisticos concebides a partir de metéforas bioléyicas, de modo que hi wma tendéncia de gue, na médie, os indivfduos representem solusécs coda vez melkerss & medida que 0 processo evolulive continua 3.2. Caracteristicas Primérias De modo geral, AGs tém as seguintes carac- teriticas (68, 75, 103, 141] © AGs operam nume populagio(conjunto) de pontes, ¢ nio a partir de um ponto isolado. ‘¢ AGs operam num espago de solugées codifica- das, ¢ ndo no espago de busca diretamente. © AGs necessitam somente de informasso s0- bre o valor de uma fungio objetivo para cada ‘membroda populagao, e nao requerem deriva- das ou qualquer outro tipo de conhecimento. ‘¢ AGs usam transigies probabilisticas, ¢ ndo re- gras deterministicas. 3.3 Representagio Cromossomica © primeiro passo para aplicacdo de AGs a um problema qualquer € representar cada possivel solugio = no espace de busca como uma seqiiéncia de simbolos » gerados a partir de um dedo al- fabeio finite A. No caso mais simples, use-se 0 alfabeto binério A = {0,1}, mas no caso geral tanto o método de representacéo quanto alfaberc genético dependem de cada problema. Usando algumas das metaforas extremamente simplistas, mas empregadas pelos tedricos € prati- cantes de AGs com fregiiéncia, cada seqiiéncia corresponde a um cromossomo, e cada elemento de 6 & equivalente a um gene. Como cada gene pode assumir qualquer valor do alfabeto 4, cada elemento de A é equivalente a um alelo, ot seja, ‘um valor possivel para um dado gene. A posigio de ‘um gene num cromossomo, ou seja, o indice dentro da seqiiéncia, corresponde a um locus génito, ‘Além disso, na maior parte dos AGs assume-se que cada individuo seja constituide de um tinico eromossomo, raaio pela qual ¢ comum wsarem-s¢ (08 Lermos individao e cromossomo indistintamente em trabalhos cientificos ¢ livros-textos. A grande maioriados AGs propostes na literatura usar uma populesao de mimero fixo de individuos, com cro- mossomos também de tamanko constante, 34 Fluxo Basico ‘Tendo definido 2 representagio cromossomica para.o problema, gera-se um conjunto de possiveis solugdes, chamadas de solurées-candidatas. Um conjunto de solugSes codificadas de acordo com a representacao selecionada corresponde a uma po- Pulaséo de individuos, P(0). AGs sao algoritmmos iterativos, ¢ a cada iteragéo a populagio € modi- ficada, Cada iteragio de um AG é denominada uma geragée, embora nem todos os individuos de ‘uma populagéo sejam necessariamente “filhes" de individuos da populagio na iterago anterior. De- signando cada gerac8o por um indice t, o fuxo geral de um AG simples ¢ ilustrado na Fig. 2. Procedure Algoritmo Genético begin t-0 inicializar P(t) avaliar P(O) while (not Condigéo-Terminal) do begin tettl selecionar P(t) a partir de P(t — 1) recombinar e mutar P(t) avaliar P(t) ond Figura 2: Fluxo bisico de um algoritmo genético simples com trés operadores: sele¢io, recom- binaséo € mutagao. 3.5 Inicializacio Na maior parte das aplicagdes, a populagio ini- cial de N individuos € gerada aleatoriamente ov através de algum processo heuristic. Como no caso biclégica, nao ha evolucio sem variedade. Ou seja, a teoria da selegdo natural ou “ici do mais forte” necessita de que oo individuos tenham diferente graus de adaptacéo ao ambiente em que vive. De acordo, € importante que populaglo inicial eubra a maior dres possivel do espago de busca. 3.6" Avalingao e Adequabilidade AGs necessitam da informagio do valor de uma funcio objetivo para cada membro da populacéo, que deve ser um valor ndo-negativo. Nos casos mais simples, usa-se justamente o valor da fungio ‘que se quer meximizar. A funcdo objetivo dé, para cada individuo, ume medide de quéo bem edap- tado ao ambiente ele esta, ou seja, quanio maior o valor da funcéo objetivo, maiores so as chances do individuo sobreviver no ambiente reproduzi passando parte de seu material genético a geracdes osteriores, ‘A avalisgio de cada individvo recults num va- lor que, em inglés, é denominado “fitness”. Na falta de tradugio melhor, este autor enprega 0 termo adequebilidade neste trabalho. 3.7 Selegéo © mecanismo de selesio em AGs emia os pro- cessos de reprodugio assexueda e selecéo natural. Em gerel, gora-se uma populasio tempoviria de individuos extraidos com probabilidade groporcio- nal a adequabilidade relativa de cada individuona populagéo, ou seja, a probabilidade de selegio de uum cromossomo s ¢ dada por ie (9) se Dales) onde o(:) € a fungdo de adequabilidade. Usando @ probabilidade acima, selecionam-se NN individuos, Neste processo, individuos com baixa adequabilidade terdo alta probablidade de desaparecerem da populasio, ou saja, serem extin- tos, ao passo que individuos adequados terao gran- des chances de sobreviverem. Ume representasio pictérica do proceso de selegio é mortra Fig. 3. (3) 3.8 Recombinacio © processo de recombinagéo é um processo 9¢- xuado — on seja, envolve mais de um individue— ‘que emula o fendmeno de “crossover”, a sroca de fragmentos entre pares de cromessomos. Na forma mais simples, trata-se um processo aleatério que ‘corre com probabilidade fixa prec qu: deve ser ‘especificada pelo usuario. © processo de resom- binacao ¢ ilustrado conceitualmente na Fig, 4. 3.9 Mutacio © processo de mutagéo em AGs é equivalente a busca aleatéria. Basicamente, selecioaa-se uma posigéo num cromossomo ¢ mude-se © valor do gene correspondeate aleatoriamente para um outro alelo possivel. O processo ¢ geralmente controlado Extingio w 4 |2ex & l@ a ifs Figura 3: Processo de seleco para uma populacSo de 8 individuos, resultando na extingéo de 2 deles. Por outro lado, individuos de alta adequabilidade tem alta probabilidade de receber eSpias. (=) Figura 4: Processo de recombinagé por um parimetro fixo Pmut Ue indica 2 proba- bilidade de um gene softer mutacio. O processo é ilustrade no Fig. 5. —--—- Mutagio — > Figura 5: Processo de mutagio. 3.10 Condigées de Término Como estamos tratando de problemas de oti- mizacéo, 0 ideal seria que o algoritmo terminasse assim que © ponto time fosse descoberto. Jno caso de fungées multimodais, um ponto étimo pode ser o suficiente, mas pode haver situacdes ‘onde todos ou © maior ntimero possivel de pontos Stimos sejam desejados. Um problema pratico é que, na maioria dos casos de interesse, no se pode afirmar com cexteza se um dado ponto timo cor- responde a um étimo global. Como conseqiiéncia, normalmente usa-se o critério do ntimero maximo de geragice ou um tempo limite de processamento para parar um AG. Outro critério plausivel é pa- rar 0 algoritmo usando a idéia de estagnacio, ou seja, quando néo se observa melhoris da populagao depois de varias geragées consecutivas 3.11 Outros Comentérios Como se vé nas Figs. 3-5, 0 processo de selesio corte a0 nivel do individuo, ao passo que recom- binagio e mutagio ocorrem ao nivel cromossomico. Embora populacdes na natureza tenham mimero varidvel de individuos, na grande maioria dos AGs © tamanho da populasio ¢ fixo, por questées de simplicidade e facilidade de implementacio em computador. 4 Exemplo de Execucao Esta segio ilustra a execugio de um simples AG com umn exemplo prético consistindo da otimizagéo de uma fungio multimodal de uma variével real. 4.1 Definicéo do Problema Consideremos um problema de maximizagio de uma fungéo f: R—+ 8 dada por He) = co0(202) — HEL 2 te no intervalo -2 < z < 2. A fungéo é ilustrada na Fig. 6. Como se pode ver, trato-se de uma fungo nao-linear com nada menos que 13 picos no intervalo de interesse, sendo um correspondente ae maximo global, ou ponte étimo, 2" m= 1,88920. Portanto, (4) A(z") = 1,73752 > f(z), V-2* 0(3,), foi de 17,9153. A adequabilidade relativa de cada individuo da populacao é entao facilmente caleu- Jada como: (20) 4.9 Exemplos de Resultados ‘A adequabilidade relativa de eada individuo da uma medida da probabilidade do individuo sobre- viver ao processo de selegic. O métode de seleso mais conhecido ¢ 0 chamado méodo de roleta, em que se imagina uma roleta ficticia num cas- sino fatidieo onde, com base na adequabilidade de cada individuo relativamente & populagio, decide- se se ele deve morrerou sobreviver ¢ produzir des- cendentes. A roleta é girada e uma esfora é ‘jo- gada” cada vez que se necessita selecionar um in- dividuo. Uma caracteristica fundamental da roleta rétulo. 2,_1(8(%)_Mesp_, mi -0,1035 0,0068 0 a 1.6675 0,8338 1 23 1,98091,9809 2 a4 (26667 1,3396 1 ‘Tabela 2: Resultados da selegio de alguns in- dividuos da populacdo inicial. 6 que cada cavidade (“casa”) corresponde a um in- dividuo, sendo a area da cavidade proporcional & adequabilidade, de modo que individuos de maior adequabilidade tm maior probabilidade de serem selecionados. Exemplo de uma roleta aparece na Fig. 7, usando a populagio de individuos da Fig. 3. Como se trata de um processo probabilistico, individuos no sio necessariamente selecionados de acordo com os valores de adequabilidade relativa. Con- tudo, pode-se estimar 0 niimero de cépias de um dado individuo, mesp, multiplicando-se a sua ade- quabilidade relativa pelo tamanho da populagio. Figura 7: Exemplo de roleta para selecao. Para os cromossomos da Tabela 1, a Tabela 2 mostra a adequabilidade relative, o mimero espe- rado de cépias devido ao processo de selecio e ‘© niimero de e5pias realmente obtides através do método da roleta, not. Neste exemplo, os re sultados concordaram com os valores preditos. O. proceso de selecio resulta numa populagéo tem- pordria de N individuos ‘Terminado © processo de selegéo, certos cro mossomos s30 extraidos aos pares da popalagio resultante para recombinacéo. Na simulacao, a probabilidade de um cromesiomo sofrer recom binagio, prec, foi fixa em 0,8 e empregou-se 80- mente recombinasao aleaiéria de um ponto. Neste proceso, primeizo os cromossomos da populaséo so pareados aleatoriamente, Em seguida, usando prec decide-se se cada par deve ou néo softer r= combinagéo. Em caso afirmativo, escolhe-se um onto de corte aleatoriamente, ¢ efetua-se a troca de segmentos correspondentes, Por exemplo, suponhamos que a eépia do cro- mossomo #2 seja pareada com a cépia de a4, € que se tenha decidido que 0 par deve softer re- combinagao, Gera-se entio um mimero aleatério entre 1 e €(a) — 1, onde &(s) dé 0 comprimento da seqiiéncia , ou s¢ja, 16 no ceso deste exemplo. Esse miimero é usado para indicar em que posicic (0s cromossomos devem ser cortados ¢ entéo re- ‘combinados. Por exemplo, ve for decidido que os Ailtimos 5 bits devem ser trocados entre as c6pias de a2 84 (cromossomos pais), os cromossomos filhos resultantes serio: 1110101100010101 e 1000111000001010 que poderio ou nao ser melhores (ter melhor ade- quabilidade) que 0s pais. (© processo de mutasao pode ocorrer depois de ou 20 mesmo tempo que a recombinagio. No ‘caso deste exemplo, fixou-se a probabilidade de mutagdo Pmyt em 0.01 pare cada gene de modo que, em média, Prout Ms) x V = 8 bits deve sofrer mutacao a cada geracao. Obviamente, em s€ tratando de mutasdo puramente aleat ‘mossomo resultante poderd ter ou no maicr valor de adequabilidade. 4.6 Resultados Finais Partindo-se de uma populagéo de N = 50 in- dividuos gerados aleatoriamente, usando o método da roleta para selegio e com probabilidades de re- combinagao e mutacao fixadas em 0,8 e 0, 01, res- pectivamente, o maximo global foi encontrado com 1a desejada precisiode 4 casas decimais na geracio de miimero 48. A Fig. 8 mostra os valores da fungio f(-) para o melhor ¢ 9 pior individu da populagéo, bem como o valor médio, para um to- tal de 50 geracoes, Como fica claro na figura, este simples AG teve sucesso em obter © étimo global do f()) em poveas gerasées. ws 20 2 30 aS was 50 Figura 8: Exemplo de roleta para sele;lo. Neste caso, termincu-se a execucio do AG depois de 50 geragies, © adotou-se 0 procedi- mento de sempre memorizar © melhor individuo obtido, independentemente do individuo estar ou no presente na populagio. ‘Terminado o algo- ritmo, decodifica-se este melhor individuo de volta ‘a0 espazo de busca original. No caso deste si mule¢io, o melhor individuo, obtido na geragiode niimero 48, foi emelbor — 3910100010011111 com adequabilidade a(smelbor) — 5,7373 Decodificando- jor eromossomo kee! payne melhc melhor — 2 = 1,8893 ‘que corresponde ao maximo global com a dese reciséo. No total, as 48 geragieo equivaleram a 48 x 80 = 2.400 individuos averiguados, represen- tendo 3,06% do espaco de busca de 2'* possiveis seqiiéncias. Considerando-se que tudo o que foi feito consistiu em avaliar individuos, selecioné- los com uma roleta ficticia, trocar partes de seqiiéncias © mudar um ou outro bit eventual- ‘mente, 0s resultados podem parecer surpreenden- tes, Na realidade, existem muites variantes me!ho- radas do algoritmo usado neste simulagao, e resul- tados ainda miais expressivos podem ser obtidos, ilustrando © poder dos algoritmos genéticos. Em termos de tempo de processamento, o programa uusado aqui foi escrito em C, e 50 geragoes consu- miram aproximadamente 0,2s em uma estacao de trabalbo SUN-4 4.7 Detalhes de Implementagio Ajimplementago do AG usado nesta simulasio é direta, e pode ser feita sem problemas em qual ‘quer linguagem de programacao como Pascal ou C. Seqiéncias binérias podem ser representadas fa- cilmente como arranjos de inteiros, caracteres, ou mesmo usando uma representaso mais econémica de 1 bit para cada gene. Em méquinas convencio- nais onde um inteiro é representado por 2 bytes ¢ um cardcter por 1, eada cromossomo ocuparia 32 bytes de memaria ne primeiro caso, 16 bytes no segundo, e somente 2 bytes como mapeamento “I bit = 1 gene”. Este mapeamento faz um uso mais eficaz da memria disponivel, mas tomna os proces- 505 de codificasio decodificagéo um pouco mais complexos. 5 Problemas Praticos dos AGs 5.1 Papel dos Operadores Em AGs simples como o descrito na Fig. 2, © papel dos operadores seleséo, recombinaso, ¢ mutacio pode ser visto da seguinte maneira sim- plista: © processo de selecio copia individuos da opulagao de modo proporcional & adequabilidade relative; recombinagéo combina pedagos de ma- terial genético, na esperanga de que individuos melhores que os pais sejam obtidos; finalmente, mutagio garante que todo o repertério genético ‘esteja representado na sinfonia evolutiva, ou seja, garante que nenbum alelo desaparesa para sempre da populagéo. Se nio houvesse © processo de selegio, os ACs, além de perderem grande parte do caracter evolu- tivo, seriam processos ineficientes similares a bus- cas aleatérias, Sem recombinagéo, haveria #0- mente busca aleatéria a partir dos melhores ele- mentos da populagao. Combinades, os process2s de selecio e recombinagéo tealizam uma espécie de busca local nas proximidades dos melhores in- dividuos da populagéo. Finalmente, sem mutagio 08 AGs efetuariam busea usando somente a in: formasao contida na populagio, e nio teriam como repor material genético perdido durante o processo de selegio. Por exemple, se © ponte étime de ums fungio exigisse que os trés iltimos elementos de ‘um cromossomo binério sejam 101, uma condigio necessiria para que um AG sem mutagio tivesse sucesso seria que pelo menos tum individuo da po- ulasao inicial tivesse a subseqiéncia 101 nas de- vidas posigées. Mesmo assim, sem mutagio essa subseqiiéncia poderia desaparecer por completo da populagio devido & selecio, e © AG no poderia otimizar a fungio. Com mutagdo esse problema é, pelo menos em principio, contornado. 5.2. Determinacio de Parametros Num AG bisico, 0 usuario deve definir 0 tama- rho da populacio, V, além das probabilidades de recombinagao ¢ mutagio, respectivamente, prec € Pmut- Em AGs mais sofisticados, hi ainda mais ‘parémetros, comprometendo parte da robustez dos algoritmos. Infelismente, nio ba regras claras pare a escolha desses parimetros. Quanto ao parametro WV, a intuigio indica que “quanto mais, melhor”, ume vez que, em altima anilise, com uma populagio infinits cobrindo todo ‘0 espaco de busca, a solugdo dtima seria obtide nna primeira gerasdo, Na pritica, é dbvio, temos ‘que nos consignar com populacées finitas. Par- ido da andlise de esquemas, Goldberg concluiu que, pare cromossomes binérios de comprimento £,0 tamanho étimo deve ser uma fungio exponen cial de ¢ [52]. Na pratica, valores da ordem de 50 a 200 cromossomos resolvém a maior parte dos problemas, mas populagées maiores podem ser ne- ‘cessérias para problemas mais complexos, como © caso de geragio automitica de programas [90]. Em [126], consideram-se problemas onde peque- nas populasdes so necessérias, geralmente em ca- 05 em que a avalingSo de um cromossomo é ex- cessivamente lenta, Nesses casos, propée-se um método intuitivo de escolha da populagio inicial de mode que os cromoseomos representem a maior ‘ea possivel no expago de busca. Em relacéo as probabilidades de recombinacio € mutagio, estudos empiricos [96] tem mostrado que bons resultados geralmente sio obtidos com alto valor de prec (> 0,7) € baixo valor para Pmut (geralmente < 0,01). Métodos adaptativos sio apresentados na proxima sega 5.3 Eros de Amostragem A scleséo implementada pelo método da ro- leta € sujeita a erros de amostragem. Por exem- plo, na idéia proposta é totalmente aceitével que, nume populagéo de, digames, 100 individuos, exe- tamente 100 cépias do pior individuo sejam ob- tidas. Erros de amostragem podem resultar na perda de informagao genética importante e a resul- tados de baixa qualidade. Métodos de atenuagio desses ertos so revisados na préxima seca 5.4 Convergéncia Prematura Usando © modelo do AG simples para 2 oti- mizaséo de fungGes multimodais, um fendmeno que se obscrva comumente ¢ que’o AG converge muito rapidamente (em umas poucas dezenas de gerasbes) para um ponte de alta qualidede, mas io 0 étimo global, num fendmeno denominado convergéncia prematura, Por exemplo, suponhamos que na populagio inicial um dado individuo préximo de um étimo local, mas nao global, tenha um valor de adequa- bilidade muito maior que o restanie da populacéo. Devido ao processo de selegio, tal super-individuo tera varios descendentes na préxima geragio. Em ‘casos extremos, individuos préximos ao étimo glo- bal mas com baixa adequabilidade relativa, po- dem ser completamente extintos, 0 que geralmente resulta em convergéncia da populacgo para um timo local nlo-global. Assim sendo, converyéncia prematura esta inti- mamente relacionada com a perda de diversidade da populagic. Em CE, diversidade é um concsito abstrato que indica o grau em que as mais diversas regides do espaco de busca esto representadas na populagio, ou seja. 0 quéo variada ¢ a populaséo, 5.5 Balanco Exploracio-Exploracio Um dilema fundamental em AGs é 0 cha. mado balanso exploracac-ezploragéo. —_Infeliz- mente, a tradugéo para o portugués perde a su- tileza do original ex inglés, “balance expleration- exploitation”, que seria o balanco entre “explorar” no sentido de investigar regidcs desconhecidas do expaso de busca, ¢ “explorar” no sentido de usu- fruir do conhecimento genético de individuos de popula Basicamente, recombinagéo usa a bagagem ‘genética de individuos, ao paso que mutacao faz uma busca alestéria no espago de busca. Deste modo, recombinagio “exploits” individues, e rea- liza uma busca local, enquanto que mutacéo “ex- plores" novas regides, realizando uma busca glo- bal. Muita “exploragio= exploitation’ e pouca “exploragao= exploration” acelera a convergencia, mas pode tornar a busca demasiadamente loca- lizada, ineficaz para ambientes multimodais; no caso oposto, a busca pode ficar desordenada e assemelhar-se a uma busca aleatéria, 5.6 Tempo de Processamento ‘Um obsticulo a grande parte das aplicagdes praticas dos AGs € 0 excessivo tempo de processa- mento, Em geral, a culpa néo é dos AGs em si, mas do problema em questio. Geralmente AGs conse- guem obter solugoes no minimo sub-6timas inves- tigando apenas ume fragio do espago de busca, Quando 0 espago de busca é demasindamente am- plo, porém, a busca genética pode ser excessiva- mente lent Em minha experiéncia, a maior parte do tempo de processamento em aplicagées de AGs é gasta na computagio da adequabilidade dos in- dividuos. Por exemplo, se um cromossomo repre- senta parametros da asa de um avido, o célcule da adequabilidade pode requerer uma anilise de elementos finitos que pode levar horas num com- putador. Possiveis solucGes so os AGs paralelos, que so descrites na préxima soso. 5.7 Problemas Enganadores Em [94], quatro razées que podem evitar que um AG encontre o étimo global de uma fungie fo-" ram citadas: a) representagao cromossmica niio- apropriada, b) grandes eros de amostragem, c) feito deatrutive da recombinasao, e d)o problema & enganader (“deceptive”, em inglés). Problemas enganadores, que surgem principalmente com c1o- moosomos binarios, enganam a busca genética ¢ tendem a fazer 0 AG convergir para uma solucio que nio é globalmente dtima, Nesses problemas, ha frogmentos cromosssmicos que tém alta ade- ‘quabilidade em separado mas que, juntos, formam uma solugéo néo-tima (35, 05, 94). ‘Uma estratégia para enfrentar problemas en- ganadores ¢ aplicar uma transformacao do espaco de busca, de modo que o problema se torne mais, ficil para AGs. Em [04], um método usando uma transformacao linear é descrito. Outra idéia s80 es AGs bagungades (“messy GAs”) [58], que S80 ceficazes para muitos problemas enganadores. 6 Varingdes de AGs Conforme explicade na secio anterior, o AG simples descrito acima softe de varios problemas. Para aumentar a eficiéncia da busca genética, desde ha varios anos a literatura técnica tem sido jinundada por um mimero enorme de variagSes de AGs, e algumas das técnicas mais eficazes sio apre- sentades aqui. 6.1 Escalamento de Adequabilidade A escolba de uma fungdo de adequabilidade apropriada para cada problema é fundamentsl. Em problemas de maximizacio onde a fungao a ser otimizada da sempre valores reais € positivos, hd uma tentagio natural em se usar essa funsio como uma medida de adequabilidade®, o que nem sempre € uma estratégia inteligente. © mapeamento funsée objetive — funs. quabilidede deve ser feito com enidado. meiro lugar, por uma questo semantic: sante que a adequabilidade de um individuo seja tal que, quanto mais alta, maiores sejam as chan- ces de sobrevivencia‘, Em segundo lugar, varios, mitodos de selesao exigem que os valores de ade- quabilidade sejam sempre positivos, como é evi- dente no método da roleta. Problemas de minimizagéo podem ser conver- tidos facilmente em problemas de maximizacio através de uma simples mudanga de sinal. Valo- res negatives de adequabilidade podem ser obtidos somando-se um certo valor minimo a todos 0s va- lores crus de adequabilidade. ‘Nas primeiras geragées da execusdo de um AG, € interessante que a selecio nao seja um processo iuuito rigoroso, de modo que mesmo individuos de baixa qualidade relativa tenham alguma chance de evoluir. Em jargao técnico, € interessante que & pressdo seletiva seja baixa no inicio de processo evolutivo. Quando a populagio ja esta madura, depois de muitas geragées, os individuos tendem a ter valores de adequabilidade muito préximos, 0 ‘que acaba dificultando que os melhores individuos se destaquem na populagao. Em outras palavras, nas iiltimas geragées ¢ interessante aumentar & pressio seletiva. ‘A presso seletiva esta implicitamente rela cionada com a diversidade da populagdo. Alta pressio seletiva tende a fazer a diversidade cair rapidamente, levando a populacio a convergir em poucas geracées, o que pode resultar em con- vergéncia prematura. Por outro Indo, uma baixa ressdo seletiva pode tomar 0 processo de busca Tesn cocolhe @ pelerida neste artigo como “adequabill dade crus”. “Alguns autores (por exemplo, Kezs [90)), estranhe mente preferiram comomper 0 significado do voedbulo, © Durcam individuos de baixa adequsbilidade. itivamente lento. ~ 6.1.1 Escalamento Linear Uma meneira fécil de se controlar a pressio se. letiva é 0 escalamento da funcao de adequabili- dade. Goldberg propés 0 seguinte mapeamento linear (56) al) = af() +8 ay conde (-) ¢ f(+) so as fungies de adequabilidede «¢ objetivo (ou adequabilidade erua), respectiva- mente, € @ € §) sao coeficientes determinados para cada geragéo, Dados os valores minimo, médio € méximo de f()) ¢ um parametro 7 indicando a razio desejada entre a adequabilidade do melhor individuo e a adequabilidade média, « € f sio cal culedos assim: mirene Yow fow 02 ie, imap pes « en p = — timed enti aa) sendo (14) “Tined“fmin ‘Traduzindo em palavras, a idéia expressada na Eq. (13) € efetuar © mapeamento linear de modo {que individuos de adequabilidade erua média con- tinuem na média apés 0 escalamento © que, se possivel, 0 maximo valor da adequabilidade cace- lada seja igual ao valor médio vezes 7. Se, porém, ‘esta dltima condicdo implicar em valores negativos de adequabilidade, conforme verificado em (12), entio of coeficientes a ¢ ff sio determinados de ‘modo a mapear o minimo valor de adequabilidade crua para o valor 0 (Bq. (14). Valores de 7 en- tre 1,2¢ 2 sio recomendados. Métodos de esc lamento evitam que alguns super-indivfduos domni- nem a populagio no inicio da busca, ¢ goralmente produzem melhores resultados na otimizagio de funcoes multimodais. 6.1.2 “Janela” de Adequabilidade Neste método, subtrai-se 0 menor valor da ade quabilidads crua de todos os valores antes do processo de selecio, de modo que o pict in- dividuo fica impossibilitado de ter descendentes na préxima geragic. Este método é de imple mentagio simplissima, ¢ diminui um pouco a presséo seletiva, embora ndo seja tio eficaz quanto ¢ eacalamento linear. 6.1.3 Graduagio De modo evitar variades indesejéveis na pressdo scletive, Baker propés uma medida de adequabili- dade parcialmente desassociada da fungio objetivo [12], Os cromossomos sao ordenados de acordo com os valores da fungéo objetivo, de modo que 0 primeito cromossomoseja 0 melhor, o segundo seja © segundo melher, ¢ assim por diante; ou seja, os cromossomes sio graduados (“ranked”) ¢ os valo- tes de adequabilidade sio atribuidos baseados so- mente na ordem, Por exemplo, numa populagio de 100 in- dividuos, um método simples seria atribuir ade- quabilidade 100 para o melhor individuo, 99 para © seguinte, e assim por diante. A eficacin desse método é ainda polémica den- tro da comunidade dos AGs [56, 153], mas mui- tas implementagSes priticas de AGs possuer essa opcio de método de selesao. 6.1.4 Corte o De modo a evitar que individuos muito rains se Jam reproduzides por erros de amostragem, um método simples ¢ “cortar’ todos os pontos cuja adequobilidade seja menor que a média por mais do que um valor fixe, especifieado em termos do desvio padrao(geralmente representado pela letra ‘o’). Por exemplo, podese atribuir adequabili dade = 0 para todos os individuos com adequa- bilidade menor que a média menos duas vezes 0 Aesvio padrao, 6.1.5 “Nicho” ¢ Compartilhamento O processo seletivo na maior parte dos AGs & ex- tremamente impiedoso: todos os individuos com- petem entre si, sempre favorecendo os individuos mais “fortes” da populagio, Na natureza, con- tudo, espécies distinsas e que tenham diferentes apéis (nichos) ecolégicos nao compete entre si © podem conviver num mesmo ambiente. Essa idéia levou ao conceito de compariilha- mento (“sharing”) [55], em que a adequabilidade dos individues ¢ modificada de tal modo a dimi- nuir o nivel de competigéo entre individuos que estejam distantes no espage de busca. Por exem- plo, Goldberg ¢ Richardson propuseram a seguinte fungio de adequabilidade Sas pena (ls ~ 5 I) onde || z — y || denota a distancia Euclidiana entre 08 pontes, © X(-) é a fungéo de compartilhamento, que deve ser uma fungio decrescente da distancia centre os pontos. E comum que A(-) seja escalada de modo a resultar em 1 para a menor distancia en- aCe) (as) tre dois individuos da populagio e 0 para a maior distancia. Na otimizagéo de uma funséo multimodal, o compartilhamento resulta na formacao de subpo- pulagées de individuos concentrados nos picos de fungéo. Sem compartilbamento, a tendéncia do ‘AG seria convergit para um tinico pico, nio neces- sariamente o mais alto. Além disso, o mimero de individuos em cade subpopulaséo é proporcional & altura relativa dos pico correspondente, conforme indicedo na Fig. 9 nbmero de indviduos fungio objetivo Figura 9: AG com compartilhamento. Subpo- ulagbes se concentram préximo aos pices, con- forme indicam os histogramas. Contra esse método pesam es fator de que o céleulo das distancias requer considerével tempo de processamento (O(N?/2)), € 8 pratica demons tza que as subpopulasdes, embora préximas sos 6timoslocais, geralmente nao convergem para eles, 6.2 Selegi gem com Baixo Erro de Amostra. DeJong [36] realizou um arduo estudo empirico de vérios métodos de selegao. 6.2.1 Modelo do Valor Esperado Neste modelo, &s vezes tarnbém denominado amos- tragem estecistice sem reposigao, primeiramente para cada individuo caleula-se 0 miimero esperado de cépias a partir do valor da adequabilidade re- Iativa computada pela Eq. 3. Em seguida, cada ‘vez que um individuo é selécionado (pelo método da roleta, por exemplo), subtrai-se 1 do corres- pondente miimero de cépias. Se esse mimero for negativo ou nulo, o correspondente individuo fica proibido de ser eelecionado novarnente. Assim, garante-se que o niimero de cépias que cada in- dividuo recebe néo pode exceder 1+ a parte inteira do niimero esperado de cépias, Método de Selegio 40,8 [Oes 1 Ooul Oa? O86 4 1,6 |0a5 2 1ou2 1a3 025 eg 1,2 [085 1 iou2 1a3 O05 4 1,0 [0a5 1 1 1 a8 4% 0,4 [025 0 Ooul Oaz 0 Tabela 3: Nuimero de cépias para varios métodos de sclegéo, R= roleta, D = deterministica, E = esperado, RE = resto estocéstico, T i 6.2.2 Modelo de ministica Amostragem Deter- Como no método anterior, primeiro caleula-se 0 mimeto esperado de cépias para cada individuo. De modo deterministico, elocam-se cépias corres ondentes as partes inteiras dos valores esperados. AAs partes fraciondrias s20 entao colocadas em o dem decrescente, ¢ as cépias restantes 80 ento extraidas a partir do topo dessa lista, uma a uma Ou seja, a selegio ¢ totalmente deterministica, sem depender da sorte. 6.2.3 Modelo de Resto Estocéstico Igual 20 caso anterior, mas as partes fracionérias dos muimercs de cépias espetadas sao usades para compor ums roleta, a partir da qual as eSpias 109- tantes sio selecionadas. 6.2.4 Modelo de Torneio Estocéstico Neste método, usa-se © método da roleta para ex- ‘trair um par de individuos por vet, mas apenes 0 melhor de cada par (o de maior valor de adequa- Ddilidade) é realmente selecionado. Varios outros métodes podem ser imaginades Nio existe um consenso sobre 0 melhor mais justo método de selegéo, mas eu tenho usedo 0 ‘modelo do reate eatocistico com sucesso, A Ta- bela 3 indica o niimero de cépias obtidas para cada método de selegdo para uma pequena populagio de 'N =5 individuos com adequabilidades a(1) = 4, a(a1) = 8, a(s) = 5, a(s1) = 5, € a(s1) = 2,0 que dé uma média de 5. E evidente que 0 métode de roleta, embora amplamente utilizado, da margem a potencialmente nocivos erros de amostragem, 6.3 Outros Modeloe Populacionais ‘Ao invés de somente produzir uma nova po- pulagio e substituir a populagéo anterior, existem varias altemativas. DeJong propés substituir ape- nas uma fragéo da populagéo por iterago[36), mas isso 96 vern a aumentar 0 nimero de parametros ‘que 0 ususrio tem de escolher. Eliminacao de Duplicatas Modelos como o AG simples descrito na Fig. 2 permitem répida perda de diversidade na pratic Para atenuar esse fenomenc, uma alternativa ébvia € climinar possibilidade de duplicates ne po- pulagio[33]. Se, por exemplo, houver cromossomos duplicados depois de executados os processos de selegéo, recombinaséo, ¢ mutagéo, entSe ao dupli- cata sio eliminadas ¢ novos cromossomos sao = rados para completar a populacdo. Obviamente, 0 tempo de processamento de cada geragio aumenta devido & necessidade se comparar cada individuo como restante da populscéo. 6.3.1 6.3.2 Estratégias Blitistas Neste modelo, amplamente utilizado, garante-se que os melhores individuos de uma geracao sem- pre aparecerao na geracao seguinte, Ou seja, se a dite de populagéo corrente no estiver presente na préxima populagio em decorréncia de alguma coperagéo genética, ent&o os elementos ausentes so inseridos artificialmente no lugar dos piores individuos. © método mais comum de elitismo supervisiona apenas o melhor individuo da po- pulegio, mas para grandes populagdes pode eer in- teressante garantir que, digamos, os dea melhores individuos sempre estejam presentes ua préxima gerogio. 6.3.3 Reprodugio de Estado Estével Ao invis de substituir toda a populacdo de uma ‘yer, este modelo pressupde que somente alguns in- dividucs devam ser trocados a cada geragio[153, 143, 33, 144}. No caso mais simples, insere-se apenas um individuo por vez no lugar do pior in- ividue de populagéo atual. 6.3.4 Modelo de Geracio Continua AA idéia basica deste modelo € permitir a sobre. Vivéncia dos “pais” de boa qualidade. Conforme indieado na Fig. 10, primeiro a populagio atual € copiada’, e uma outra populacdo temporétia é gerada através de recombinagSo © utagio. A partir de uma populagio atual de N individuos, lum total de 2/V individuos s30 assim geradcs. Fi- nalmente, 1 individuos so selecionsdos a partir dos 2N usando-se um método de selesao qualquer [103, 145]. Embora seja apelativo, este méiodo re- quer o dobro de computagies de adequabilidade por geracio. TObviaments tatese de uma edpia virwual, pois na ‘priticn nko hd necentidade de duplicar-ee cada individu + mutago Figura 10: Modelo de geracio continua. A po- Pulagio seguinte € sclecionada a partir da po- pulagéo atual ¢ de individuos gerados por recom- binacao e mutacao 6.3.5 Genocidio Periédico Em problemas praticos, muitas vezes 0 tempo de compitaséo nos obriga a usar pequenas po- ulagées. Isso, porém, pode implicar amostrs- gem imparcial na populacao inicial, além de rapida. perda de diversidade. Nesses casos, um proced- mento de facil implementagio é © genocidio (mi- nha tradugo do inglés “decimation”, em que, de tempos em tempos, a populagéo de V individues € sumentada para, digamos, 10 e, em seguida, novamente reduzida para NV individuos através de uma selesio rigorosa que “mata” 9N individucs ‘em excesso. Os individuos adicionais podem ser gerados por recombinagéo, mutacéo, ou simples- mente aleatoriamente, Emboraseja apelativa, esta idéia introduz uma série de novos problemas, como a freqiiéncia ideal de genocidio, em quanto se deve aumentar a poptlagio e como, ete. 6.3.6 Super-Selecio Neste método, divide-se uma grande populagio em. subpopulagdes de acordo com o nivel de adequabi- lidade, ¢ fixa-se o percentual de individuos a serem gerados a partir de cada subpopulagio, de modo @ amenizar erras de amostragem ¢ acslerar a con- vergéncia. Por exemplo, pode-se dividir uma po- pulagio de 2.000 individuos em 3 subpopulagaes, a primeira contendo os 100 melhores, a segunda ou- 10s 400 ¢ a terceira, os 1.500 piores individuos, e entio gerar-se 500, 700, ¢ 1.200 individues a partir das primeira, sezunda, ¢ terceira subpopulacées, respectivamente [90]. 6.4 Melhores Cédigos Os chamados “Cédigos de Gray” fornecem uma atraeate alvernativa a0s eddigos bindrios po- sicionais discutides até agora. Nos eddigos de Gray, mimeros consecutivos sio representados por seqiiéncias que diferem num tnico bit [50]. Por ‘exemplo, os mimeros de 0 a 7 so repreentados em trés bits por {000, 001, 010, 011, 100,101, 110,111) usando 0 cédigo binério posicional, © por {000,001, 011, 010,110,111, 101, 100} nos eédigos de Gray mais simples* Holistien propés 0 uso de cédigos de Gray em AGs aplicados & otimizagéo de funsées{70], © ou- ‘tras aplicacées demonstram que esses e6digos de fato minimizam o fendmenos das colines de Ham- ming [145]. A conversio entre e5digos binarios po- sicionais e os de Gray € um processo simples, que pode ser facilmente incluido em qualquer AG [120] Em virias aplicagSes cromossomes binsrios nto sto apropriados. Ha muitos AGs propestos na lite- ratura onde os gendtipos envolvem ntimeros intei- 0s [103, 147, 148, 149] ou mtimeres reais (103, 148] 6.5 AGs Paralelos e Distribufdes Conforme explicado anteriorments, um dos pontos fraces des AGs ¢ a baixa vdocidade de execusio, problema que € particularmente enfa- tizado com grandes populacées. Desée o fim da década passada, vérios modelos de implementagio de AGs em computadores paralelos ox em redes de computadores tam sido propostes [28, 108, 109, 110, 116, 146) Hé basicamente duas categorias de AGs parale- Jos: os AGs insulares (que usam 0 modde da ilha) ¢ cot AGs celulares, muitas vezes referider como AGs massivamente paralelos ou AGs de granularidade fina [60], mas que podem ser considezedos como uma subclasse de automata celulares (25, 151, 155] 6.5.1 AGs Insulares Estes sio talvez os modelos mais simples ¢ apela- tivos, em que a populacéo é particionada em sub- populasdes ¢ cada subpopulagio de individuos € atribuida a-um processador de um computador paralelo com memséria distribuida. Cada proces- sador executa um AG convencional ex sua sub- populagio, mas periodicamente envi eépias dos melhores individuos para um processador vizinh recebendo cépias dos melhores indiviéuos do visi- mho em troca. As cépias recebidas s30, em geral, usadas para substituir os piores elemeatos de sub- populagio, e 0 processo continua até que algum critério de término seja satisieito. Esse proceso de troca de individuos entre subpopulagées “ilha- das” & denominado migraséo, conforme ilustrado na Fig. 11 E eridente que o tempo de processameato em AGs creses com o tamanho da poptlagio. As- “"Tla, ma realidade, miltiplos obdigor de Gray, mas ot escriton no texto aio ot mals comuns Figura 11: Esquema de um AG insular num com- putador hiperciibico de quarta dimensao. (a) Cada processador tem sua prépria subpopulagéo © exe cuita um AG. (b) Os melhores individuos de cada subpopulagio migram periodicamente para pro- cessadores vizinhes. sim sendo, pequenas subpopulagdes tendem a con- vergir repidamente quando isoladas, espelhando a hipatese evolucionista conhecida como Eguilibrios Pontuados, em que se propde aue 0 processo evo- Jutivo néo seja gradual, mas sim ocorra aos saltos [39]. O uso da migracéo visa a dar um cardcter global 8 busca, perturbando 0 equilibrio de cada subpopulasio[28]. Aceleracéo quase linear em relacaoao miimero de processadores empregados foi relatada por ‘Ts nese usando um computador paralelo com rede hipercabica [146]. Eu também tenho investigado AGsinsulares, © obtive resultados similares usando um computador com 512 processadores conectados numa malha toroidal. © extudo de estratégias eficientes de parale lizagio, como a estimagio da freqiiéncia ideal de migracdo, etc., ainda so assuntos abertos a inves- tigacio. 6.5.2 AGs Celulares ‘Outros paradigmas de AGs paralelos tam sido pro- postos, notadamente por Miiblenbein, cuja idéia bésica é ter uma tinica populagdo em que cada individuo realize busca local por “hill-climbing” (0) Figura 12: Esqueme de um AG celular mam com- putador paralelo de malha toroidal. (a) Cada pro- cessador tem apenss um individuo © equivale & uma maquina estocdstiea de estados finitos. (b) Cada processador executa selecao e recombinacao em sua vizinhanga, [108, 109, 110] em sua vizinhanga. Neste modelo, ilustrado na Fig. 12, idealmente cada processador de um computador massiva- mente paralelo controla um sé individuo. A po- pulagéo é distribuide numa superficie geogrifica virtual, na maioria das vezes correspondendo a uma malha retangular, que pode ou na0 refle tir o padrio de conectividade dos processadores. Cada processador seleciona um elemento em sua vizinhanga, executa as operacies de recombinagao ¢ mutagdo com algum outro vizinho, e escolhe ‘© melhor entre os filhos resultantes. Como nfo hh necessidade de globalizasio do processamento, a busca se torma assincrona e a populagio to- tal tende a manter um bom nivel de diversidade [108, 109, 110}, 6.6 Operadores Melhorados Um grande nimero de operadores genéticos tem sido proposto na literatura. Na grande maio- ria, tratam-se de operadores especificas para um dado problema e uma dada representa;o cro- mess6mica (103, 197], mas hé também operadores de uso geral. 6.6.1 Variagdes de Recombinagéo ‘Uma variante de recombinaséo ¢ fazer 0 parea- mento dos cromossomos de acordo com o grau de adequabilidade, ao invés do simples partamento aleatéric. Ou seja, individuos de alta qualidade Pareiam com outros individuos de alta qualidade, ¢ vice-versa. Esta idéia geralmente aumenta a ve- locidade de convergéncia 8s custas de perda de po- der de busca global. Outra alternativa de recombinacao ¢ 0 uso de dois ou mais pontes de corte [86, 56, 140]. In- felizmente, a eficisncia desses operadores é ainda assunto de debate, Por outro lado, a recombinagéo uniforme, pro- posta originalmente por Syswerda [143] tem ga- nho muitos adeptos ultimamente, por ser supe- rior & recombinagéo de um ou dois pontos. A idéia foi originalmente desenvolvida para cromos- ‘somos bindrios, mas existem extensdes para outros dominios. Com recombinacéo uniforme, primeiro gers-se um padrio binério aleatério do mesmo comprimento dos cromossomos. Este padrio é entéo interpretado de modo que cada ‘I’ indica que ‘0s genes correspondentes nos ecromossomos pais de- ‘Yer ser trocados, ao passo que ‘0's indicam que os genes correspondentes nao sio trocados. Por exemplo, tomemos dois eromoscomes 4 10101010 € 82 = 11110000, e suponhamos que © seguinte padrao de recombinagao srec = 01100110 tenha sido gerado aleatoriamente. Por conso- guinte, da esquerda para a direita, os segundo, terceiro, sexto € sétimo genes devem ser troca- dos, resultando nos cromossomos 8; = 11101000 82 = 10110010. 6.6.2 Operadores Adapt: Até 0 momento, a busca de operadores adaptati- vos de uso geral no produziu muitos resultades. Um mitodo pelos menes conceitualmente interes- sante ¢ 0 de otimizar os parametros de um AG usando um outro AG, chamado de meta-AG [62]. © método, originalmente proposto por Grefens- {ette, tem tide uns poucos seguidores, mas peca pela ineficiéncia. Uns poucos outros métodos tem sido desenvolvidos, masem geral tém baixo desem- penbo [1393]. Em [11] sugerese 0 uso dos cédiges de Gray com probabilidade de mutacao constante e igual a 1/, onde € € © comprimento de um cro- mossomo em bits, para problemas de otimizagio de fungdes unimodais com cromossomos binéios, Para fangSes multimodais, contudo, ergumenterse que é neceasario variar a probabilidade de mutagio de modo a evitar étimos locais, mas néo se chega a nenbuma conclusio mais concreta, 6.6.3 Mais Operadores Outros operadores incluem, entre outros, per- mutagéo (56, 114], inversio (75, 56], ¢ dipleidismo [138]. Infelizmente, ni existe uma base tedzica de ‘auais s80 os melhores operadores ¢ quando aplicé- los a problemas préticos gerai 6.7 Computadores Genéticos O advento de dispositivos légicos programaveis, particularmente os FPGAs [6], aumentou consi- deravelmente as possibilidades de implementagao em “hardware” de muitos algoritmos, com ganhos de até 3 ordens de magnitude em velocidade de execugdo em relago aos mesmos algoritmas exe- cutados em “software” [24]. Uma tentativa pio- neira de implementacéo de um AG em “bard- ware" usando técnicas de “pipelining” e parale- lismo é descrita em [132]. Atualmente, ex meu laboratério o protétipo de um computador para- lelo do tipo SIMD (“singleinstruction-mul:iple- data”), especifico para aplicagieo de AGs, eoté sendo desenvolvido, 7 Areas de Aplicagao 7.1 Problemas Clissicos Muitos problemas clissicos de otimizacio com- binatéria sio NP, ou seja, no-polinomiais, indi- cando que o espaso de busca eresce exponencial- mente com as dimensoes do problema [84, 85, 95] Exemplos clissicos incluem © problema do ven- dedor ambulante (PVA ou “traveling salesman problem”, TSP) (93, 95], 0 problema da mechila (“knapsack problem"), © problema do depésito (‘bin packing”) [95], roteamento de veiculos [22], ete Embora se acredite que os problemas consi- derados NP sio ¢ serdo sempre intrataveis, nao importa quanto a ciéncia de computagio evo- Tua, ha um resultado interessante que diz que, 3 um algoritmo ¢ficiente para um dado problema NP existir, entao o algotitmo podera ser modifi- cado para resolver todos os outros problemas NP também [84]. Por conseguinte, é sempre interes- sante aplicar técnicas de otimizacao a problemas NP cléssicos, de modo que se possa ter uma idéia do potencial de cada método para resolver proble- ‘mas combinatoriais que aparecem na pratica. No caso do PVA, hd um vendedor ambulante que deve visitar um conjunto de cidades, « vol- tar a origem cobrindo a menor distancia possivel. Coda cidade deve ser visitada uma ¢ 55 uma vez. ‘Um PVA com n cidades tem espago de busca com (n=1)!/2 possiveis rotas, o que dé um mimeto for- midével mesmo para poucas cidades. Para n = 30, ‘ha um total de 4,42 x 10° rotas distintas. Com ‘um computador capaz de analisar um milhao de rotas por segundo, busca exaustiva iria levar nada menos que © equivalente a 107 veres a idade do ‘universo! A literature € repleta de sclugdes para casos com até alguns milhares de cidades (03, 06]. AGs ‘com representacéo apropriada e operadores es- pecificos tém sido aplicados a problemas de di- menses mais modestas (tipieamente problemas com umas poucas dezenas de cidades), com rela- tivo sucesso (61, 83, 114] 7.2, Planejamento de Tarefas Este € um campo interessante importante na prética, © problema mais representative € 0 chamado “Job-shop scheduling”, grosscira ‘mente traduzido aqui como planejamento de tare- fas numa fébrica. Neste problema, hé uma fébrica com méquinas capazes de executar uma série de ‘operacdes especificas. A fébrica recebe encomen- das de produtos que consomem um determinade tempo de cada miquina, e hi operagbes que de- ‘vem ser executadas em seqiiéncia. O problema é ‘como plancjar o uso das maquinas de modo a dar conta das encomendas no menor tempo possivel, evitando também que maquinas fiquem ociosas du- ante o processo. Este problema tem side reselvide or AGs com relativo sucesso [27, 32, 42, 111], em- bora exija uma representacio cromossomica e ope- radores relativamente sofisticados. 7.2.1 Outros Problemas de Planejamento Outros exemplos de uso de AGs para solugio de problemas de planejamento incluem: planeja- mento de hordrios de provas numa universidade [41], planejamento de mao-de-obra [148, 149], 10 teamento de veiculos [21, 150]. Devido & comple- xidade € restrigdes desses problemas, gerelmente nnecessirio desenvolver representagées ¢ operado- res sofisticados que embutam conhecimento sobre © problema a ser resolvido [63] 7.3. Sintese de Redes Neurais Entre as muitas configuragées existentes para redes neurais artifciais, a arquitetura mais popu- lar é 0 perceptron mulli-cemadas (PMC) (“multi- layer perceptron” ), devido a sua simplicidade, fle xibilidade, e amplo campo de aplicagao [131]. Con- ‘tudo, aplicacées praticas de MLP envolvem etapas altamente experimentais, com cansativos ¢ inefi- lentes processes de tentativa ¢ erre. Primeiro, deve-se especifiear a arquitetura do PMC, 0 mimero de camadas, nés (neuronios), € © padrio de conectividade entre os nés. Depois, & necessirio especificar os parimetros de aprendi- ‘agem, os pes0s iniciais, e entao efetuar o treino, geralmente usando um método de gradiente, Este roceaso é lento, depende de sorte e procedimen- tos heuristicos, e deve ser repetido até que o dese- do grau de desempenho scja atingido. Hé vérios problemas Sbvios com tal procedimento. Para me- Ihoré-lo, AGs tem sido propostos com trés objeti- ‘vos distintos: determinazéo dos pesos de um PMC de configuragao conhecida, determinagio da confi- gura¢éo de um PMC para resolver um dado pro- blema, e determinagéo da configuragio € pescs. 7.3.1 AGs para Aprendizagem Geralmente o treino de PMCs é realizado por al- gum método de gradiente, quase sempre uma ve riante da regra dea, usando o algoritmo de pre- pagazéo retrdgrade (“backpropagation”) para o célculo de derivadas parciais (131). Embora esse método seja eficaz em muitos ce- 05, algoritmos de gradiente somente buscam um mfnimo local da superficie de erros de um PMC, ¢ geralmente tal superficie € extremamente com- plexa ¢ multimodal. Com 0 objetivo de proporcionar uma busca mais global, AGs podem ser empregados para de- terminagio dos pesos de um PMC de configuracio especificada (87, 107, 154]. Nesse caso, uma po- de PMCs de meoma arquiteturs é usad: cada PMC com seus pesos constitu um ividuo. Os pesos podem ser representados por Tongas seqiiéncias bindriss ou mtimeros resis. A avaliagio de cada individuo é feita com base num conjunto de padrdes para teste, de modo que a adequabilidade seja uma fungao decrescente do erro quadritico. ‘Testes conduzidos com proble- ‘mas simples de reconhecimento de padrées produ- ziram resultados incondlusivos. Em [87], Kitano mestrou experimentalmente que AGs sio mais len- tos que algoritmos répidos para treino de PMCs, como © ‘quickprop” [40], ¢ propos usar AGs 20- mente para busca global no inicio do treino, e entao ‘um método de gradiente convencional para busca local. 7.3.2 AGs para Determinagio da Arquite- tura ‘Uma outra aplicagao interessante de AGs é a de terminagio de boas arquiteturas de PMCs para ‘ums determinada tarefa, Em (67, 68], cada in- dividuo corresponde & planta de um PMC, ou seja, © mimero de camadas, niimeto de nés por ca- mada e padrao de conectividade s8o representados Por seqiiéncias binétias, ee busea opera entic no espaco das arquiteturas de PMCs. Além disso, os arametros de aprendizagem usando a regra delta também foram codificados nos cromossomos, Nao somente a representacio cromossémica ¢ os operadores genéticos se tornam relativamente ‘complexos, mas 0 proceso de avaliagio de cada in- dividuo consome muito tempo é até questionavel Para avaliaglo, PMCs com pesos gerados aleato- riamente so construidos para cade individuo, ¢ treinados usando-se um conjunto de padrées de treino, Depois disso, cada PMC € avaliado usando- 2 um outro conjunto de padrdes de teste. Somente depois, a adequabilidade de cada individuo é esti- mada usando-se informagio referente & velocidade de convergéncia, erro de reconhecimento, etc. Este esquema é ilustrado na Fig. 13. Pop. de arquiteruras Figura 13: Determinagio de arquiteturas de PMCs usando um AG. Cada individuo da populagao cor- responde & planta de um PMC, e conjuntos de padrées de treino e teste sio usades para avalicr ‘ada individuo. Em testes com problemas simples, boas at quiteturas foram determinadas para minimiza;so do erro de reconhecimento, aceleragéo ds con- ‘vergencia, € assim por diante. Mais interessante, ‘© método permite a descoberta de padrdes de co- nectividade que geralmente nio slo investigados em processos de tentativa e erro (67, 68). Hé uns ‘outros poucos mtodos propostos com a mesma filosofia [104] 1.3.3. AG para Sintese Total de um PMC Numa proposta ainda mais ousada, Meniezzo propés um AG para gerar no somente a arquite. ura, mas também todos os pesos de um PMC em [99]. Neste caso, eada individuo da populagio cor- responde a uma complera seqiéncia binéria, onde hé bits para indicagéo da granularidade (preciso deo pesos), conectividade (se uma dada conexio existe ou no) ¢ cada peso de um PMC que ad- mite conexdes entre camiadas néo adjacentes ‘Combinando tradicionais operadores de recom- binagio e mutagio, devidamente modificados de modo a sempre dar origem a PMCs visveis, com um operador AG-simplex (17), que acentua 0 po- der de busca global dos AGs, Maniezzo conseguiu resultados interessantes com simples problemas de aprendizado de fungdes Idgicas e controle de um robo. ‘Uma de minhas pesquisas atuais visa 0 uso de um computador paralelo em dois niveis: 1) deter- minacao de arquitetiuras de redes neuronais recor- rentes usando um AG; ¢ 2) determinagéo dos pe- 08 das melhores redes determinadas em 1) através de um procedimento hibrido combinando AGs métodos de gradiente, 7.3.4 Mais AGs para Redes Nourais Outras aplicagées incluem, por exemplo: sintese de redes “fuzzy” [43], sintese de redes nevronais recorrentes [4], determinagio de pesos de redes neuronais facilmente implementaveis em “hard- ware” (26), sintese de redes Booleanes (Iégicos) 60], sintese de PMCs com erescimento antomatico [127],-e determinacéo da topologia de uma rede neuronal de Kehonen (mapa auto-organizante (89) (117) 4 Outras Aplicagses de AGs Outras aplicacées incluem, por exemplo: * Otimizagao de fungdes de um objetivo (94, 20] ou multi-objetives (47). + Anilise de dados: “clustering” [19} * Controle de processos: determinasio de parametros para controle timo [92, 112], controle inteligente de um péndulo invertide [113], identifieagio de sistemas nic-lineares (31). ‘© Robética: determinasdoda trajetéria de mo- vimento de bragos mecanicos [30], projeto ¢ controle de robas [31], © Problemas de transporte linear e ndo-linear og}. Maquinas de estados finitos pare jogos [10]. Modelos econdmicos: modelos do processo de inovacéo, estratégias de concorréncia (3, 77]. Modelcs ecolbgicos: relagdes de simbiose, hospedeiro-parecita, ete, (73, 116, 123). Modelos do sistema imanclégico [16].

You might also like