Vous êtes sur la page 1sur 3

PERFORMANCE ALGORITMO GENTICO PARA O PROBLEMA DAS 8 RAINHAS

Fabricio Fontenele Fernandes Universidade Federal do Cear Curso de Engenharia da Computao Campus Mucambinho Bloco das Engenharias Sobral-CE Brasil e-mail: fabriciovlw@hotmail.com

1. Introduo

Algoritmos Genticos so um ramo da computao evolucionria eles tentam representar atravs do estudo da gentica a criao de um algoritmo que consiga resolver o problema atravs de tal representao. O algoritmo pode ser resumido em algumas etapas sendo elas: Inicializao da populao, Avaliao da populao, teste para analisar se algum indivduo tem as caractersticas desejadas, seleo dos mais aptos, cruzamento, mutao e uma nova avaliao da populao e o processo se repete.

Por mais simples que parea existe uma grande complexidade na obteno de alguns elementos como uma representao cromossomial que seja adequada ao problema, no algoritmo em questo seria a utilizao de 8 cromossomos cada um representando uma posio da rainha.

2. Desempenho

Ficou notvel aps a criao do algoritmo e os testes com os parmetros de entrada que a sua adequao pode ajudar o programa a encontrar com eficincia a resposta que procuramos. Vamos em seguida comentar sobre cada um destes parmetros. Tamanho da populao: um dos parmetros chave do programa, uma populao muito pequena para o problema como 10 indivduos pode fazer com que o programa no encontre a resposta, pois a mesma vai acabar no tendo uma variao satisfatria nos genes que possa gerar um individuo que queremos ficando a cargo da taxa de mutao. E um experimento com uma populao de 10 indivduos cheguei a realizar 8000 geraes para encontrar a resposta. O que pude notar que uma populao de 100 indivduos tem em media uma boa probabilidade de achar uma resposta em um numero pequeno de interaes. Outra coisa identificada que um numero muito grande da populao como 1000 indivduos pode gerar de cara a resposta e assim nem utilizarmos de fato o algoritmo, j na primeira avaliao ele encontra os indivduos e acaba parando o algoritmo. Taxa de mutao: A escolha de uma taxa de mutao de suma importncia, pois em muitos casos ela que da o up necessrio que preciso para o individuo conseguir atingir a resposta esperada. Ao colocarmos taxas muito altas identifiquei que o programa comea a funcionar como uma busca aleatria, e taxas muito pequenas prejudicam o mesmo, pois impossibilitam a explorao de indivduos bem distintos. Aps realizar vrios testes acabei utilizando uma taxa de mutao de 1%. Crossover: Em teste efetuados identifiquei uma melhora ao utilizar o crossover de 2 pontos, no posso afirma que ele tem um desempenho muito superior que o de 1 ponto. Contudo os dois ao utilizar o algoritmo encontravam resultados de qualidade ao passar parmetros mais ajustados.

Numero de geraes: Este no foi um dos parmetros pedidos para analise mais achei de grande importncia menciona-lo. Dependendo do ajuste dos parmetros correto ou errado que citamos acima o numero de geraes pode ser enorme. Limita-lo uma boa estratgia para no ter que esperar grandes tempos por causa de parmetros desajustados. Em testes j cheguei a encontrar respostas aps a execuo de 8000 geraes levando um tempo considervel de uns 3 minutos. Com o ajuste adequado dos parmetros acima podemos reduzir ele drasticamente e acabar nem sendo necessria a utilizao de todas as geraes indicadas.

3. Concluso

Ficou claro que o ajuste dos parmetros importante para o desempenho do algoritmo e que sua adequao pode levar ele a encontrar respostas satisfatrias em tempos de execuo cabveis. Parmetros sem muita adequao podem fazer seu algoritmo demorar tempos considerveis.

Vous aimerez peut-être aussi