SOES #37 - Algoritmo Genético

Page 1

Introdução ●

● ●

Segundo Liden (2008), Os algoritmos genéticos (AG) são uma técnica de busca baseada na biologia evolutiva. São algoritmos estocásticos Trabalha com população onde cada indivíduo é uma solução Espaço de Busca Global


Porque Aprender? ●

Dispensa o uso de métodos matemáticos como o gradiente do hill climbing

O algoritmo mais usado no SBES é um AG

Relativamente fácil de compreender.

Fácil interação com outras técnicas


Pseudocódigo 1. Gerar população inicial //Pode-se usar outro algoritmo para gerar 2. Avaliar cada indivíduo 3. While (critério da parada não for satisfeito) do 1. Selecionar os indivíduos mais aptos 2. Criar novos indivíduos aplicando os operadores genéticos crossover e mutação 3. Armazenar os novos indivíduos em uma nova pupulação 4. Avaliar cada indivíduo da nova população


Cromossomo ●

Cada Indivíduo tem um cromossomo

Pode ser representado por: –

Vetores de reais (2.54, 3.43, 9,1, 3.1415)

Cadeia de bits (11100011011)

Vetores de inteiros (1, 4 ,2, 19)

Etc...


Seleção ●

Tipos de Seleção mais comuns –

Seleção por Roleta proporcional a aptidão

Seleção por torneio


Seleção ●

Seleção Por Roleta –

População inicial → f(x) = x²

A probabilidade da seleção é dada por:


Seleção


Seleção - Torneio Indivíduos

Aptidão

A1

625

A2

225

A3

196

A4

100

TORNEIOS

Pais selecionados

A4 x A1

A1

A3 x A2

A2

A2 x A4

A2

A3 x A3

A3


Crossover ●

Taxa de Crossover: É a probabilidade de acontecer o crossover (Caso não aconteça, os filho serão cópias exatas do pai).


Mutação ●

Taxa de Mutação: É a probabilidade de acontecer a mutação (~ 1%) bit a bit.


Funcionamento ●

Maximize a função f(x) = x². Tal que x pertence aos inteiros && 0 ≤ x ≤ 31.


Funcionamento ●

Cromossomo terá 5 bits, pois o numero máximo que ele conseguirá representar será (11111) = (31) .


Funcionamento


Funcionamento


Funcionamento ●

Geração 1


Funcionamento


Funcionamento


Crossover de 2 pontos

d


Crossover Uniforme


Problema 2 ●

Maximizar a seguinte função

Com restrição: -1 ≤ x ≤ 2.


Decodificação do cromossomo ● ●

● ●

Quanto maior o número de bits, maior a precisão Para o exemplo usaremos um cromossomo de 22 bits Exemplo: 1000101110110101000111 O número máximo que L bits pode representar em binário podem representar é dado por:


Decodificação do cromossomo


Gerações do problema 2


Gerações do problema 2


Gerações do problema 2


Comparativo ●

Na 15ª Geração o AG encontrou a melhor solução


Critérios de parada ●

Perca de diversidade

Numero de Gerações

Encontrou a solução

Convergência –

Nas ultimas k gerações não houve melhoria na aptidão


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.