Está en la página 1de 33

Fundamentos dos

Algoritmos Genticos

Por Luis R. M. Lopes

O que so?
Os Algoritmos Genticos so uma
classe de procedimentos, com
passos distintos bem definidos.
Essa classe se fundamenta em
analogias a conceitos biolgicos j
testadas exausto.
Cada passo distinto pode ter
diversas verses diferentes.

Para que servem?


Busca e Otimizao
Amplamente utilizados, com sucesso,
em problemas de difcil manipulao
pelas tcnicas tradicionais
Eficincia X Flexibilidade

Caractersticas Gerais
Utilizam uma codificao do conjunto de
parmetros (indivduos) e no com os
prprios parmetros (estados);
Vasculham vrias regies do espao de
busca de cada vez;
Utilizam informaes diretas de qualidade,
em contraste com as derivadas utilizadas
nos mtodos tradicionais de otimizao;
Utilizam regras de transio probabilsticas
e no regras determinsticas.

Fundamentos dos
Algoritmos Genticos
Quanto melhor um indivduo se adaptar
ao seu meio ambiente, maior ser sua
chance de sobreviver e gerar
descendentes.
(DARWIN, 1859)

Caractersticas Gerais
Algoritmos Genticos podem ser
considerados como mtodos que
trabalham com
Buscas Paralelas Randmicas
Direcionadas

Funcionamento
Fundamental
1. Gerar Populao Inicial
2. Descartar uma parte dos Indivduos

menos aptos
3. Aplicar operadores de reproduo
4. Aplicar operadores de mutao
5. Se o critrio de parada foi satisfeito,
encerrar. Seno, voltar ao passo 2.

Modelagem
Indivduos X Estados
Cada indivduo possui um cdigo
gentico
Esse cdigo chamado cromossomo
Tradicionalmente, um cromossomo
um vetor de bits
Vetor de bits nem sempre o ideal

Exemplo de Modelagem
Problema das N-Rainhas:
A

posio de cada rainha dada por uma


subcadeia do cromossomo
Exemplo para N = 4:

=
R1

01 11 00 10
R2

R3

R4

Operadores
Fundamentais
Seleo Natural
Manipulao Gentica por Mutao
Manipulao Gentica por Reproduo

Seleo Natural
Princpio bsico para o direcionamento
da evoluo de uma dada populao
Utiliza uma funo de avaliao para
medir a aptido de cada indivduo
Essa aptido pode ser absoluta ou
relativa
Existem vrios mtodos de seleo

Principais Mtodos de
Seleo Natural
Roleta
Torneio
Amostragem Universal Estocstica

Populao Exemplo
Indivduo Aptido Absoluta

Aptido Relativa

0,052631579

0,105263158

0,131578947

0,236842105

18

0,473684211

Total

38

Mtodo da Roleta
Coloca-se os indivduos em uma roleta,
dando a cada um uma fatia proporcional
sua aptido relativa
Depois roda-se a agulha da roleta. O
indivduo em cuja fatia a agulha parar
permanece para a prxima gerao
Repete-se o sorteio quantas vezes forem
necessrias para selecionar a quantidade
desejada de indivduos

Roleta - Exemplo

Mtodo do Torneio
Utiliza sucessivas disputas para realizar
a seleo
Para selecionar k indivduos, realiza k
disputas, cada disputa envolvendo n
indivduos escolhidos ao acaso
O indivduo de maior aptido na disputa
selecionado
muito comum utilizar n = 3

Torneio - Exemplo
Indiv 1, Indiv 2, Indiv 4

Indiv 4

Indiv 1, Indiv 2, Indiv 3

Indiv 3

Indiv 2, Indiv 3, Indiv 4

Indiv 4

Indiv 3, Indiv 4, Indiv 5

Indiv 5

Amostragem Universal
Estocstica - SUS
SUS Stochastic Universal Sampling
Semelhante Roleta, mas para
selecionar k indivduos utiliza k agulhas
igualmente espaadas, girando-as em
conjunto uma s vez
Apresenta resultados menos variantes
que a Roleta

SUS - Exemplo

Operador de Mutao
Operador randmico de manipulao
Introduz e mantm a variedade
gentica da populao
Garante a possibilidade de se alcanar
qualquer ponto do espao de busca
Contorna mnimos locais

Operador de Mutao
um operador gentico secundrio
Se seu uso for exagerado, reduz a
evoluo a uma busca totalmente
aleatria
Logo um indivduo sofre mutaes com
probabilidade baixa (normalmente entre
0,001 e 0,1)

Exemplo de Mutao
0

Operador de
Cruzamento
Tambm chamado de reproduo ou
crossover
Combina as informaes genticas de
dois indivduos (pais) para gerar novos
indivduos (filhos)
Verses mais comuns criam sempre
dois filhos para cada operao

Operador de
Cruzamento
Operador gentico principal
Responsvel por gerar novos
indivduos diferentes (sejam melhores
ou piores) a partir de indivduos j
promissores
Aplicado a cada par de indivduos com
alta probabilidade (normalmente entre
0,6 e 0,99)

Abordagens para
Cruzamento
Cruzamento Um-Ponto
Cruzamento Multi-Pontos
Cruzamento Uniforme

Cruzamento Um-Ponto
0

Pais

Filhos

Cruzamento Multi-Ponto
0

Pais

Filhos

Cruzamento Uniforme
Mscara

Pais

Filhos

Parmetros Genticos
Tamanho da populao
Taxa de cruzamento
Taxa de mutao
Intervalo de gerao
Critrio de parada

Aplicaes
Alocao de tarefas
Configurao de sistemas complexos
Seleo de Rotas
Problemas de Otimizao e de
Aprendizagem de Mquina
Problemas cuja soluo seja um estado
final e no um caminho

Aplicaes
So especialmente interessantes em
problemas difceis de otimizar de forma
convencional
Tcnicas tradicionais so mais difceis
de empregar
Se uma tcnica tradicional puder ser
empregada, normalmente acha melhor
soluo mais rpido

Aplicaes
Existem muitos problemas prticos aos
quais tcnicas determinsticas
tradicionais no podem ser aplicadas
Tcnicas tradicionais tm natureza
serial
Algoritmos Genticos tm natureza
paralela

Perspectivas Futuras
Computao
baseada em DNA
Cooperao e
competio entre
populaes
Vida vegetal
Desenvolvimento de
modelos tericos

Sistemas evolutivos
hbridos
Metodologia para a
configurao de
parmetros
Prova formal da
eficincia global dos
AGs

También podría gustarte