Você está na página 1de 7
P.F. Alencar Estudante do Curso de Informatica da Universida- de de Fortaleza-UNIFOR A.V.R. Ribeiro Estudante de Curse de Informatica da Universida- de de Fortaleza - UNIFOR Bolsista do PIBIC/CNPG M.A. S. Freitas Prot. @ Coord. do Grupo de Pesquisas em Recur- sas Hidricos, Meio Ambi- ente e Computagdo ‘Aplcaga 0 Universtuaue de Fortaleza - UNIFOR 92 REVISTA FORTALEZA t Ne18 92.98 DEZ. 1997. MODELOS COMPUTACIONAIS BASEADOS NA BIOLOGIA: ALGORITMOS GENETICOS E REDES NEURAIS ARTIFICIAIS RESUMO Neste artigo sdo apresentados dois modelos computacionais ins- pirados na biologia, a saber, Algoritmos Genéticos e Redes Neurais Ariificiais. Os Algoritmas Genéticas imitam 0 pracesso de evoluedo bioldgica da Selegao Natural na busca de individuos mais aptos em uma determinada populacao, de modo que eles podem ser utilizados com bastante eficiéncia em problemas de otimizagdo. As Redes Neurais Artificiais, por sua vez, baseiam-se no processo de aprendizagem dos neur6nios, altamente paralelo, sendo muito iil na modelagem e previ- do de sistemas ndo-lineares complexos. E feito, ainda, um exemplo utilizando cada um dos modelos descritos. ABSTRACT 11 18 presented 1wo computational models based on biological mechanisms, which are: Genetic Algorithms and Artificial Neural Networks. Genetic Algorithms mimic biological evolution by means of natural selection in the search for better individuals of a population, therefore Genetic Algorithms are efficient optimizers. Artificial Neural Networke, atherwise, are haved an the process of the human neurons learning, i.e, massively parallel, and they are good approaches to modelling and forecasting complex non-linear systems. This paper also describes examples of applications of both systems. 4. INTRODUGAO- Durante os ultimos anos —_nos principios da evolugao natural temhavido um interesse crescente eno funcionamento dos neurénios na resolugao de problemas util- no cérebro. Os programas que se zando sistemas/programas base- _norteiamnos fundamentos da Te- ados na biologia, notadamente _oria da Evolugao Natural sao ge- hericamente denominados de Programas Evolutivos (PE). Tais sistemas, muito usados em problemas de otimizagdo, empregam uma populagao de possivels solugoes e por meio de diversos processos de selecdo, com base na aptidao dos individuos, e de ‘operagdes genéti- vas’ (acasalamento, recombinagao ou crossover, mutagao, etc.) buscam atingir a so- lugao 6tima de um determinado problema, AS primetras Estrategicas Evolutas (EE) remon- tam aos estudos de Ingo Rechenberg e Hans- Paul Schwefel, na década de 60, no Instituto de Mecanica dos riuidos na Universidade Técnica de Berlim, Alemanha, na busca de formas étimas de objetos em experimentos de tuneis de Verto (RECHENBERG, 1973; SCHWEFEL. 1981). Uma outra grande contribuigao neste campo deve-se a J. H. HOLLAND (1975) com 0 |ivro Adaptation in Natural and Artificial Systems. Um Programa Evolutivo, conforme MICHALEVICZ (1996) & um algoritmo Probabllistico que utiliza uma populagao de indi- viduos, P(t)=(x;', x3, .. . x, para a iteragdo t. Cada individuo representa uma solugao poten- ial do problema em questo. Cada solugao x, é avaliada de modo a se obter uma medida de sua ‘aptidio’. Uma nova populagao (teracao t+1) 6 formada pela selecdo dos individuos mais ap- tos (etapa de selego). Alguns individuos da nova Populagao sotrem transformagées (etapa de al- teragdo) através de operacdes genéticas (mu- tagbes, crossover, etc.) para originar novas so- lugées. Apés um determinado numero de aera- es 0 programa converge em direcdo a ‘solu- go étima’, Ja as Redes Neurais Arifciais (RNA) Sao sistemas baseados no atual entendimento do funcionamento dos sistemas nervosos bio- I6gicos, embora nealigencianda muita dae de- talhes biolégicos. As RNA so sistemas massivamente paralelos que tém a capacidade de encontrar relacdes em sistemas nao-linea- res complexos. 2, ALGORITMOS GENETICOS. Os Algoritmos Genéticos (AG) s&o exemplos de Programas Evolutivos que imitam a evolugao biolégica na procura por melhores individuos dentro de uma populagao variavel. Em geral, cles excuulain procuras atraves de um Conjunto de alternativas com o objetivo de en- Revista Tecnologia/Fortaleza/N? 18/P, 92-98/Dez 1997 contrar a melhor alternativa respeitando os cri- térios requeridos. Estes critérios sao expressos ‘em termos de uma fungao-objetivo que € referi- da como fitness function. Os Algoritmos Gené- ticos so eficientes otimizadores. Eles so for- mados pela criagao de uma populagao de in- luos representados por cromossomos. Os. cromossomos s&o representados normalmen- te por strings de comprimento fixo, andloaas aos cromossomos do nosso préprio DNA. A maio- tia das aplicagdes de Algoritmos Geneticos uti- lizam 0 cédigo binario ou 0 cédigo orey para for- mar seus cromossomos. 2.4 Analogi e a Genética © us Alyorlunos Geneticos © vuvabulativ uous Algoritmos Geneticos provém da Genética Natural. Assim fala-se , por exemplo, de individuos, cromossomos, genes, genstipo, fendtipo, ele. A tabela 1 a seguir apre- senta alguns desses paralelos: Aigoritmos Genéticos Genética Natural Stings Cromessomos Bits Caracteres Gens Fungdo-objetivo Fines Function Posigdo do sting Locus esrutua Gendtipo Conjunto de Parémetros Fendtipo Naotinearidade Epistase Tabela 1: Algoritmos Genéticos versus Genética Natural 2.2 Vantagens no Emprogo de Algoritmos Genéticos na Otimizacao Em problemas de otimizayao de peque- Ro porte existem diversos métodos classicos disponiveis (GILL et al,, 1978). Em resolugdio de problemas complexos e de grande porte os Algoritmos Genéticos tém se mostrado entre- tanto muito uteis e ageis. A seguir sao listadas algumas das vantagens da utlizacéio de AG em relagdo aos métodos tradicionais de otimizacdo: 93 © Os AGs partem de um conjunto de possiveis solugées (populagao) e nao de um Unico pon- to; * Os AGs utilizam diretamente a funcéo-objetivo (fitness function) e nao as derivadas 1a, ou 2a.; + So algoritmos randémicos @ utilizam paralelismo implicito; * Sao algoritmos robustos (simples e eficien- tes: explurativn vs. exploitation) 2.3 Operacées Genéticas ‘As operacdes genéticas sao importan- tes para que a populacao se diversifique e pre~ serve as caracteristicas de adaptago adquiri- das pelas geragbes anteriores. As mais usuais sho as descritas a seauir: * Populagao: um AG comega com a selecao randémica de uma populacao de n individuos dos 2" possiveis candidates. *Selegao: uma nova populagao de cromosso- mos é selecionada da populacdo inicial atra- ves da selegao de cromossomos com mais alto valor da fitness function, ou seja, individu- ‘os mais capazes. ‘*Mutagdo: Dado um cromossomo qualquer, un de seus bits € escolhido, com determinada probabilidade, para ser trocado simulando a mutagao. Exemplo: Antes: 1011010 Depois: 1011110 + Croasavar (Recombinacdo Genética): E fel- ta uma troca de cromossomos, entre os pa- res selecionados, a partir de uma certa posi- do na cadeia da bits Exemplo: Antes: 1011]011 Depois: 1011|110 1101)110 1101011 2.4 Um Algoritmo Genético De modo geral um Algoritmo Genético pode ser explicitado como a seguir. O fluxogra- ma equivalente pode ser visto na figura 1: 1, Selecionar uma populag&o inicial p* 2. Determinar para cada cromossomo xo valor da fitness function f(x). 3, Gerar uma nova populagdo por algum pro- cedimento de selegao natural. 4, Se os valores ja Satistazem o uiitetiv entae parar, sendo passo 5. 94 9. Proguzir uma populayav Ue nuevos cromossomos pt utilizando uma das operagées descritas. 6. Substituir a populacao pX pela populacao p*"? produzida em 4, aumentar uma uni- dade do valor de k e ir para passo 2 Tnicialzar uma ppopulagéo de Eromossomos, | ‘Evolir cada cromossomo da. |¢————— populagao. Colocionar o€ ero ‘Griar nova’ mossomos + aptos populagao de cromossomos, | + (0 ertario Nao de parada foi satisteito ? | sm Parar Figura 1: Fluxograma de um Algoritmo Genético (KLIP. 8 YUAN, 1905) 2.8 OS Gonceltos Sch Blocks lata © Building Cada inaiviauo pode ser currsiverady como representante de uma classe de individu- ‘08 com caracteristicas similares. Por exemplo: o individuo 1000101 pertence a classe de indivi- duos com o primeiro bit=1 € 0 simbolo que 0 representa é 1"*****. Cada classe e seu simbo- \o correspondente é chamada de schema (plu- ral: schemata). Schematas com comprimento paqueno, baixa ordem e fitness function acima da média irdo receber um aumento no numero de tentativas nas geracdes subsequentes. Tais schemates 90 denominadee de building blocks. Revista Tecnologia/Fortaleza’N® 18/P. 92-96/Dez. 1997

Você também pode gostar