Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Algoritmos Genéticos: Introdução e História, Notas de estudo de Algoritmos

Uma introdução básica aos algoritmos genéticos (ag), uma técnica de otimização global baseada em mecanismos de seleção natural e genética. O texto aborda a teoria da evolução, a história da computação evolucionária e os algoritmos genéticos, incluindo a representação cromossomial, a seleção de pais, o operador de crossover e o operador de mutação.

Tipologia: Notas de estudo

2010

Compartilhado em 19/12/2010

felipe-fubah-5
felipe-fubah-5 🇧🇷

4

(1)

9 documentos

1 / 20

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
ALGORITMOS GETICOS
Felipe Capovilla
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14

Pré-visualização parcial do texto

Baixe Algoritmos Genéticos: Introdução e História e outras Notas de estudo em PDF para Algoritmos, somente na Docsity!

ALGORITMOS GENÉTICOS

Felipe Capovilla

Introdução

 (^) Até o século XIX os cientistas mais proeminentes acreditavam em duas teorias principais: ◦ (^) Criacionismo (“Deus criou o universo da forma que ele é hoje”) ◦ (^) Geração espontânea (“a vida surge de essências presentes no ar”).  (^) Em torno de 1850 Charles Darwin visitou vários lugares e observou o seguinte: ◦ (^) animais da mesma espécie eram ligeiramente diferentes que seus parentes em outros ecossistemas diferentes ◦ (^) cada grupo era mais adaptado às necessidades e oportunidades oferecidas pelo seu ecossistema específico. ◦ (^) Conclusão : Teoria da Evolução das Espécies.

Breve Histórico

A Computação Evolucionária foi introduzida em 1960 por I. Rechenberg com seu trabalho " Estratégias de Evolução “.  Algoritmos genéticos (AG) foram inventados por John Holland , Isso resultou no livro de Holland " Adaption in Natural and Artificial Systems " publicado em 1975.  Em 1992 John Koza usou algoritmos genéticos para desenvolver programas para realizar certas tarefas. Ele chamou seu método de " programação genética " (PG).

Algoritmos Genéticos

 Algoritmos genéticos (GA) são um ramo dos

algoritmos evolucionários.

 Como tal podem ser definidos como uma

técnica de busca baseada no processo

biológico de evolução natural.

 Os algoritmos genéticos são técnicas

heurísticas de otimização global.

 São baseados em mecanismos de seleção

natural e genética.

Representação

Cromossomial

 (^) Ela consiste em uma maneira de traduzir a informação do nosso problema em uma maneira viável de ser tratada pelo computador. Representação mais comum: binária. ◦ (^) Mais simples e mais usada pelos praticantes da área dos algoritmos genéticos; ◦ (^) Um cromossomo nada mais é do que uma sequência de bits; ◦ (^) Cada gene é somente um bit; ◦ (^) O conceito representado por cada bit e/ou conjunto de bits é inerente ao problema.

Também chamada de função de custo.

A função de avaliação é a maneira utilizada para

determinar a qualidade de um indivíduo como solução

do problema em questão.

Usa todos os valores armazenados no cromossomo (os

parâmetros) e retorna um valor numérico, cujo

significado é uma métrica da qualidade da solução

obtida usando-se aqueles parâmetros.

A função de avaliação deve ser tal que se o

cromossomo c1 representa uma solução melhor do

que o cromossomo c2 , então a avaliação de c1 deve

ser maior do que a avaliação de c.

Função de Avaliação

Seleção de Pais

Método simples e muito adotado: método da roleta.

◦ Criamos uma roleta na qual cada

cromossomo recebe um pedaço proporcional

à sua avaliação.

◦ Selecionado será o indivíduo sobre o qual ela

parar.

Seleção de Pais

Exemplo:

Indivíd uo Avaliaç ão 0001 1 0011 9 0100 16 0110 36 Total 62 Pedaço da roleta (%) Pedaço da roleta (º) 1.61 5. 14.51 52. 25.81 92. 58.07 209. 100.00 360.

Operador de Crossover

 (^) Depois de selecionados dois pais pelo módulo de seleção de pais, um ponto de corte é selecionado (um ponto de corte constitui uma posição entre dois genes de um cromossomo).  (^) Depois de sorteado o ponto de corte, nós separamos os pais em duas partes: uma à esquerda do ponto de corte e outra à direita.  (^) É importante notar que não necessariamente estas duas partes têm o mesmo tamanho.  (^) O primeiro filho é composto através da concatenação da parte esquerda do primeiro pai com a parte direita do segundo pai.  (^) O segundo filho é composto através da concatenação das partes que sobraram (a metade esquerda do segundo pai com a metade à direita do primeiro pai).

Operador de Crossover

Graficamente:

1º Pai 2º Pai 1º Filho 2º Filho

Operador de Crossover e Mutação (a) (^) (b) Pai 1 Pai 2 Selecionamos um ponto de corte Pai 1 Pai 2 Depois do operador de crossover Filho 1 Filho 2 Depois do operador de mutação Filho 1 Filho 2 Gene alterado pela mutação (d) (c)

Sabemos que a cada atuação do nosso operador genético estamos criando dois filhos. São armazenados em um espaço auxiliar até que o número de filhos criado seja igual ao tamanho da população. Neste ponto o módulo de população entra em ação. Todos os pais são então descartados e os filhos copiados para cima de suas posições de memória, indo tornar-se os pais da nova geração.

Módulo de População

Conclusão

Os AG`s são sistemas de inspiração natural, especialmente adequados para problemas de procura. Não podem garantir soluções ótimas, mas podem ser utilizados em problemas de otimização. Devido as suas características de robustez e flexibilidade, os algoritmos genéticos irão ganhar uma maior atenção com o decorrer do tempo, principalmente pela rápida evolução dos computadores que tornarão as aplicações da técnica cada vez mais viáveis e engenhosas.

Referências

 (^) NUNES, M. Algoritmos Genéticos: Fundamentos e Aplicações. Artigo. Brasil, 2008. Disponível em: http://www.gta.ufrj.br/~marcio/genetic.html Acesso em: 27 nov. 2010.  (^) WHITLEY, D. Generic Algorithms. Artigo. Estados Unidos, 2006. Disponível em: http://xpusp.sourceforge.net/ga_tutorial.html Acesso em: 27 nov. 2010.  (^) LUCAS, D. C. Algoritmos Genéticos: uma Introdução. Artigo,. Brasil, 2002. Disponível em: <http://www.inf.ufrgs.br/~alvares/INF01048IA/ApostilaAlgoritmosG eneticos.pdf> Acesso em: 27 nov. 2010.  (^) OBTIKO. Introdução aos Algoritmos Genéticos. Disponível em: <http://www.obitko.com/tutorials/genetic-algorithms/portuguese/in troduction.php> Acesso em 28 nov. 2010.  (^) DEGASPERI, M. M. Inteligência Artificial. Artigo. Brasil, 2009. Disponível em <http://iaufes20092.pbworks.com/w/page/8625598/ AG%20-%20Quadro%20Cognitivo%207>.