Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas...

68
Algoritmos Genéticos Algoritmos Genéticos Teresa B. Ludermir

Transcript of Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas...

Page 1: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Algoritmos Genéticos

Teresa B. Ludermir

Page 2: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Conteúdo

Introdução

O Algoritmo Genético Binário

Noções de Otimização

O Algoritmo Genético com Parâmetros Contínuos

Aspectos Práticos e Avançados

Aplicações

Page 3: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Introdução

Page 4: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Algoritmos Genéticos

São técnicas de busca e otimização.

É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Desenvolvido por John Holland (1975) e seus alunos.

Popularizado por David Goldberg (1989).

Page 5: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Teoria da Evolução

1859 - Charles Darwin publica o livro “A Origem das Espécies”:

.

Charles Darwin

“As espécies evoluem pelo

principio da seleção

natural e sobrevivência do

mais apto.”

Page 6: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Teoria da Evolução

1865- Gregor Mendel apresenta experimentos do cruzamento genético de ervilhas. Pai da genética.

A Teoria da Evolução começou a partir da conceituação integrada da seleção natural com a Genética.

.

Gregor

Mendel

Page 7: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Otimização

É a busca da melhor solução para um dado problema. Consiste em tentar vários soluções e usar a

informação obtida para conseguir soluções cada vez melhores.

Exemplo de otimização:

Telespectador através de ajuste na antena da televisão otimiza a imagem buscando várias soluções até alcançar uma boa imagem.

Page 8: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Otimização

As técnicas de otimização, geralmente,

apresentam:

Espaço de busca: onde estão todas as

possíveis soluções do problema;

Função objetivo: utilizada para avaliar as soluções produzidas, associando a cada uma delas uma nota.

Page 9: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Características dos

Algoritmos Genéticos

É um algoritmo estocástico (não é determinístico).

Trabalha com uma população de soluções simultaneamente.

Utiliza apenas informações de custo e recompensa. Não requer nenhuma outra informação auxiliar (como por exemplo o gradiente).

Page 10: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Características dos

Algoritmos Genéticos (II)

São fáceis de serem implementados em computadores.

Adaptam-se bem a computadores paralelos.

São facilmente hibridizados com outras técnicas.

Funcionam com parâmetros contínuos ou discretos.

Page 11: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Algoritmos Genéticos

(Conceitos Básicos)

AG manipula uma população de indivíduos.

Individuos são possíveis soluções do problema.

Os indivíduos são combinados (crossover) uns com os outros, produzindo filhos que podem sofrer ou não mutação.

As populações evoluem através de sucessivas gerações até encontrar a solução ótima.

Page 12: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Aplicações

Em problemas díficeis de otimização, quando não existe nenhuma outra técnica especifica para resolver o problema.

Otimização de funções numéricas em geral

Otimização combinatória

Problema do caixeiro viajante

Problema de empacotamento

Alocação de recursos (job shop schedulling)

Aprendizado de Máquina

Projetos

Page 13: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

O Algoritmo Genético

Binário

Page 14: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Algoritmo Genético Tradicional

1. Gerar a população inicial. 2. Avaliar cada indivíduo da população. 3. Enquanto critério de parada não for satisfeito

faça 3.1 Selecionar os indivíduos mais aptos. 3.2 Criar novos indivíduos aplicando os operadores crossover e mutação. 3.3 Armazenar os novos indivíduos em uma nova população. 3.4 Avaliar cada cromossomo da nova população.

Page 15: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problema 1

0

200

400

600

800

1000

0 5 10 15 20 25 30

2)( xxf

Problema: Use um AG

para encontrar o ponto

máximo da função:

x é inteiro

310 x

com x sujeito as seguintes

restrições:

Page 16: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Indivíduo

Cromossomo Estrutura de dados que representa uma possível

solução para o problema.

Os parâmetros do problema de otimização são representados por cadeias de valores.

Exemplos:

Vetores de reais, (2.345, 4.3454, 5.1, 3.4)

Cadeias de bits, (111011011)

Vetores de inteiros, (1,4,2,5,2,8)

ou outra estrutura de dados.

Page 17: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Individuo (II)

Aptidão

Nota associada ao indíviduo que avalia quão boa é a solução por ele representada.

Aptidão pode ser:

Igual a função objetivo (raramente usado na prática).

Resultado do escalonamento da função objetivo.

Baseado no ranking do indíviduo da população.

Page 18: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Cromossomo do Problema 1

Cromossomos binários com 5 bits: 0 = 00000

31 = 11111

Aptidão Neste problema, a aptidão pode ser a própria

função objetivo.

Exemplo:

aptidão(00011) = f(3) = 9

Page 19: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Seleção

Seleção

Imitação da seleção natural.

Os melhores indivíduos (maior aptidão) são selecionados para gerar filhos através de crossover e mutação.

Dirige o AG para as melhores regiões do espaço de busca.

Tipos mais comuns de seleção

Proporcional a aptidão.

Torneio.

Page 20: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

População Inicial do Problema 1

Probabilidade de seleção

proporcional a aptidão

Prob. de seleção x f ( x )

A 1 = 1 1 0 0 1 25 625 54,5%

A 2 = 0 1 1 1 1 15 225 19,6%

A 3 = 0 1 1 1 0 14 196 17,1%

A 4 = 0 1 0 1 0 10 100 8,7%

cromossomos

N

k k

ii

xf

xfp

1)(

)(

É aleatória (mas quando possível, o conhecimento da

aplicação pode ser utilizado para definir população inicial)

Pop.

inicial

Page 21: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Seleção proporcional

a aptidão (Roleta)

A1 = 1 1 0 0 1

A2 = 0 1 1 1 1

A2 = 0 1 1 1 1

A1 = 1 1 0 0 1

54,5%A1

8,7%A4

17,1%A3

19,6%A2

Pais selecionados

Page 22: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Seleção por Torneio

Escolhe-se n (tipicamente 2) indivíduos aleatoriamente da população e o melhor é selecionado.

Page 23: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Crossover e Mutação

Combinam pais selecionados para produção de filhos.

Principais mecanismos de busca do AG.

Permite explorar áreas desconhecidas do espaço de busca.

Page 24: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Crossover de 1 ponto

1 1 0 0 1

0 1 1 1 1

1 1 0 1 1

0 1 1 0 1

Pais

Filhos

O Ponto de corte é

escolhido aleatóriamente

O crossover é aplicado

com uma dada

probabilidade

denominada taxa de

crossover (60% a 90%)

Se o crossover é aplicado os pais trocam suas caldas

gerando dois filhos, caso contrário os dois filhos serão

cópias exatas dos pais.

Page 25: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Mutação

A mutação é aplicada com dada

probabilidade, denominada taxa

de mutação (~1%), em cada um

dos bits do cromossomo.

Mutação inverte os valores dos bits.

A taxa de mutação não deve ser nem alta nem baixa, mas o

suficiente para assegurar a diversidade de cromossomos na

população.

0 1 1 0 1

0 0 1 0 1

Antes da mutação

Depois

Aqui, apenas o 2o.bit

passou no teste de

probabilidade

Page 26: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

A primeira geração

do Problema 1

A1 = 1 1 0 0 1

A2 = 0 1 1 1 1

1 1 0 1 1

0 1 1 0 1

Pais

crossover mutação 1 1 0 1 1

0 0 1 0 1

Filhos

A2 = 0 1 1 1 1

A1 = 1 1 0 0 1

0 1 1 1 1

1 1 0 0 1

crossover mutação 1 0 1 1 1

1 1 0 0 1

Nova

pop.

Page 27: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

A primeira geração

do Problema 1 (II)

x f (x )prob. de

seleção

1 1 1 0 1 1 27 729 29,1%

2 1 1 0 0 1 25 625 24,9%

3 1 1 0 0 1 25 625 24,9%

4 1 0 1 1 1 23 529 21,1%

cromossomos

Page 28: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As demais gerações

do Problema 1

x f (x )

1 1 1 0 1 1 27 729

2 1 1 0 0 0 24 576

3 1 0 1 1 1 23 529

4 1 0 1 0 1 21 441

x f (x )

1 1 1 0 1 1 27 729

2 1 0 1 1 1 23 529

3 0 1 1 1 1 15 225

4 0 0 1 1 1 7 49

Segunda Geração

Terceira Geração

Page 29: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As demais gerações

do Problema 1 (II)

Quarta Geração

Quinta Geração

x f (x )

1 1 1 1 1 1 31 961

2 1 1 0 1 1 27 729

3 1 0 1 1 1 23 529

4 1 0 1 1 1 23 529

x f (x )

1 1 1 1 1 1 31 961

2 1 1 1 1 1 31 961

3 1 1 1 1 1 31 961

4 1 0 1 1 1 23 529

Page 30: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Outros Crossover´s

001011000001101010001110101011

010 011000101011

001001110001101

pai1

pai2

filho1

filho2

Crossover de 2-pontos

Considerado melhor que o crossover de 1 ponto.

Page 31: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Crossover de n-Pontos

0010100100011001100

1010011100101011001

101010010

0101001

001

001001110

0011011

100

pai1

pai2

filho1

fillho2

Crossover de 4-pontos

Page 32: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Crossover Uniforme

O filho1 tem 50% de chance de levar um bit do pai1 e 50% de chance de levar um bit de pai2

1 1 0 1 0 1 1 0 1 0

1 1 1 0 1 1 0 1 1 0

1 1 1 0 0 1 0 1 1 0

0 1 1 0 0 0 1 1 0 0

pai 1

pai 2

filho 1

Máscara de

bits aleatória

O filho2 leva o que sobra de pai1 e pai2

Page 33: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problema 2

0,1)10seno(x )( xxf

0,20,1 x

Achar o máximo da função utilizando Algoritmos Genéticos,

Restrita ao intervalo:

Page 34: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problema 2 (II)

Máximo global:

x = 1,85055

f(x) = 2,85027

x

f ( x )

= x

sen

(10

x )

+ 1

-1,0

0,0

1,0

2,0

3,0

-1,0 -0,5 0,0 0,5 1,0 1,5 2,0

Máximo global

Máximo local

Page 35: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problema 2 (III)

Função multimodal com vários pontos de máximo.

É um problema de otimização global (encontrar o máximo global)

Não pode ser resolvido pela grande maioria dos métodos de otimização convencional.

Há muitos métodos de otimização local, mas para otimização global são poucos.

Page 36: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

O Cromossomo Problema 2

Representar o único parâmetro deste problema (a variável x) na forma de um cromossomo:

Quantos bits deverá ter o cromossomo?

Quanto Mais bits melhor precisão númerica.

Longos cromossomos são difíceis de manipular.

Para cada decimal é necessário 3,3 bits

Cromossomo com 22 bits

1000101110110101000111

Page 37: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

O Cromossomo Problema 2 (II)

Decodificação

cromossomo = 1000101110110101000111

b10 = (1000101110110101000111)2 = 2288967

Valor de x precisa estar no intervalo [-1,0; 2,0]

12min)(maxmin 10

l

bx

637197,012

967.288.2)12( 1

22

x

Page 38: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As Gerações do Problema 2

x

f ( x )

= x

sen

o(1

0

x )

+ 1

.0

-1,0

-0,5

0,0

0,5

1,0

1,5

2,0

2,5

3,0

-1,0 -0,5 0,0 0,5 1,0 1,5 2,0

População Inicial

População gerada aleatóriamente

Page 39: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As Gerações do Problema 2 (II)

x

f ( x )

= x

sen

(10

x )

+ 1

.0

-1,0

-0,5

0,0

0,5

1,0

1,5

2,0

2,5

3,0

-1,0 -0,5 0,0 0,5 1,0 1,5 2,0

Primeira Geração

Pouca melhoria

Page 40: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As Gerações do Problema 2 (III)

x

f ( x )

= x

sen

(10

x )

+ 1

.0

-1,0

-0,5

0,0

0,5

1,0

1,5

2,0

2,5

3,0

-1,0 -0,5 0,0 0,5 1,0 1,5 2,0

Geração 25

A maioria dos indivíduos encontraram o máximo global

Page 41: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

As Gerações do Problema 2 (IV)

Geração

Fu

nçã

o o

bje

tiv

o

0,5

1,0

1,5

2,0

2,5

3,0

0 5 10 15 20 25

Média

Melhor

Na geração 15 o AG já encontrou o ponto máximo

Page 42: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Elitismo

O crossover ou mutação podem destruir a melhor indivíduo.

Por que perder a melhor solução encontrada?

Elitismo transfere a cópia do melhor indíviduo para a geração seguinte.

Page 43: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Elitismo no Problema 2 F

un

ção

ob

jeti

vo

2,0

2,2

2,4

2,6

2,8

3,0

10

AG com elitismo

AG sem elitismo

0 5 15 20 25

Geração

AG com elitismo é melhor ?

Page 44: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Critérios de Parada

Número de gerações.

Encontrou a solução (quando esta é conhecida).

Perda de diversidade.

Convergência

nas últimas k gerações não houve melhora da na aptidão

Média

Máxima

Page 45: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Terminologia

Indivíduo

Simples membro da população.

Cromossomo e Genoma e :

Coleção de genes

Estrutura de dados que codifica a solução de uma problema.

Genótipo

Na biologia, representa a composição genética

contida no Genoma. Nos AGs, representa a

informação contida no cromossomo ou

genoma.

Page 46: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Terminologia

Fenótipo:

Objeto ou estrutura construída a partir das informações do genótipo.

É o cromossomo decodificado.

Exemplo: Se o cromossomo codifica as dimensões de um edifício, então o fenótipo é o edifício construído.

Gene:

Codifica um simples parâmetro do problema

Page 47: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Exercício

Encontrar de x para o qual a função f(x) = x2 - 3x + 4 assume o valor mínimo.

Assumir que x [-10, +10]

Codificar X como vetor binário

Criar uma população inicial com 4 indivíduos

Aplicar Mutação com taxa de 1%

Aplicar Crossover com taxa de 60%

Usar seleção por torneio.

Usar 5 gerações.

Page 48: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Aspectos Práticos

Page 49: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Principais Tópicos

População Inicial

Funções Objetivo de Alto Custo

Critérios de Parada

Convergência Prematura

Diversidade

Tipos de Substituição

Problemas na Aptidão

Page 50: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

População Inicial (1/3)

Gerada Aleatoriatoriamente.

Gerada uniformente em uma grade.

Gerada com tendenciosidade para regiões promissoras do espaço de busca

Page 51: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

População Inicial (2/3)

Para garantir que toda posição da cadeia tem 0 e 1 na população:

1) Gera a primeira metade da população aleatoriamente.

2) Inverte todos os bits da primeira metade: tem-se a segunda metade.

1a. metade 2 ª metade

1011010 0100101

0111011 1000100

0001101 1110010

1100110 0011001

Page 52: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

População Inicial (3/3)

Seeding: insere a solução obtida por outro método de otimização na população inicial (garante que AG não fará pior do que o outro método)

Iniciar com uma larga população inicial e depois reduzir o tamanho.

Page 53: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Convergência Prematura (1/2)

O AG converge para um mínimo/máximo local.

Page 54: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Convergência Prematura (2/2)

Causas:

Excessivo números de filhos de um mesmo indivíduo (o superindividuo)

Perda de diversidade.

Genetic Drift

Desaparecimento de um determinado gene na população.

Ocorre principalmente em pequenas populações.

Alta pressão de seleção

Poder que faz com que os individuos com maior aptidão tenham mais descendentes.

Page 55: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Diversidade (1/2)

Combatendo a perda de diversidade

Aumentar a taxa de mutação.

Evitar cromossomos duplicatas na população.

Diminuir a pressão da seleção.

Page 56: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Diversidade (2/2)

Combatendo a perda de diversidade

Controlar o número de filhos do superdividuo (individuo com alta aptidão, mas não com aptidão ótima) usando:

Ranking.

Escalamento.

Seleção por torneio.

Page 57: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Tipos de Substituição

Substituição Geracional

Substituição Geracional com Elitismo

Substituição de Estado Uniforme

Page 58: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Substituição Geracional

Seja N o tamanho da população:

Os N pais são substituídos pelos N filhos em cada geração.

Os N pais são substituídos por N individuos do conjunto união de pais e filhos.

Comentário: o segundo caso aumenta a pressão de seleção.

Page 59: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Substituição Geracional

com Elitismo

Os k < N melhores pais nunca são substituidos.

Tipicamente k = 1

Aumentando k aumenta a pressão de seleção (risco de convergência prematura).

Page 60: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Substituição de

Estado Uniforme (1/2)

Em cada “geração” apenas 2 (ou 1) filhos são gerados e substituem:

Os 2 piores indivíduos da população.

Os pais.

Os 2 indivíduos mais velhos (i.e. que estão a mais tempo da população), pois já transmitiram os seus genes.

Taxa de crossover é geralmente alta (~1)

Page 61: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Substituição de

Estado Uniforme (2/2)

Alternativamente, k < N filhos são gerados e substituem os k piores indivíduos.

Evitar inserir um filho na população quando já existe uma duplicata dele na população.

Page 62: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problemas na Aptidão (1/3)

Aptidão negativa não funciona com a roleta

Aptidão excessivamente alta

Poucos individuos ocupando larga fatia da roleta Muitos individuos ocupando pequena fatia da roleta Causa convergência prematura

Solução: controlar o número de filhos do superindividuo.

.

Page 63: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problemas na Aptidão (2/3)

Resolução insuficiente para diferenciar os melhores dos piores individuos.

A seleção torna-se aleatória (Passeio ao Acaso).

Convergência lenta

Page 64: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Problemas na Aptidão (3/3)

Exemplo:

Soluções

Expandir o intervalo da aptidão (usando ranking)

Seleção por torneio

E 2000,102002

Cromossomo

Função

objetivo

Probabilidade

de seleção

A 2000,999588

B 2000,826877C 2000,655533

D 2000,400148

20,004%

20,002%

20,001%

19,998%

19,995%

Page 65: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Critérios de Parada

Atingiu um dado número de gerações ou avaliações.

Encontrou a solução (quando esta é conhecida).

Perda de diversidade.

Convergência: não ocorre melhora significativa na solução durante um dado número de gerações.

Page 66: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Funções Objetivo

de Alto Custo (1/3)

Em muitos problemas do mundo real o custo computacional do AG está concentrado na avalição do individuo.

Exemplo:

Simulação completa de um processo.

Um treinamento de uma rede neural.

Page 67: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Funções Objetivo

de Alto Custo (2/3)

Dicas para reduzir o números de reavaliações do indivíduo:

Evitar cromossomos iguais na população inicial.

Verificar se o filho já existe nas populações passadas e na atual.

Verificar se filho = pai (e.g. checar se crossover e mutação foi aplicado).

Manter a população com cromossomos distintos.

Page 68: Algoritmos Genéticosrso/ag-tbl.pdf · Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada

Algoritmos Genéticos

Funções Objetivo

de Alto Custo (3/3)

Simplificar a função objetivo (pelo menos nas gerações iniciais)

Usar um método de subida de encosta quando o AG já encontrou as regiões promissoras do espaço de busca (nas gerações finais).