Algoritmo Genético - Inf

Propaganda
Algoritmo Genético
Algoritmo Genético
Proposto por John Holland(1975)
 Metáfora

Resolução de Problema
Algoritmos Genéticos
Problema
Ambiente /Função de
Avaliação
Solução Candidata
Indivíduo/Cromossomo
Qualidade
Fitness

Inspiração na Teoria da Evolução proposta
por Darwin
Motivação

Problemas não solúveis em tempo
polinomial
◦
◦
◦
◦

Caixeiro viajante
Roteamento de veículos
Coloração de Grafos
Horário de Universidade
O algoritmo é capaz de encontrar uma
solução que fuja ao censo comum
◦ Projeto de antenas
Projeto de Antenas
Antena gerada em um AG
Antena gerada por um especialista
Algoritmo Genético

Inspiração
◦ A Origem das Espécies [Charles Darwin
1859]

principais pontos:
◦ existe uma variação no grau de adaptação dos
indivíduos ao meio em que vivem (ambiente)
◦ a variação no grau de adaptação é hereditária
◦ pelo resultado da seleção natural (luta pela
sobrevivência), os indivíduos mais adaptados
terão maior chance de gerar descendentes
Algoritmo Genético
Gerar População Inicial
Avaliação da População
Eliminação dos Menos Aptos
Avaliação da População
Mutação
Cruzamento
Seleção
Critério de
parada
F
V
Fim do Processo
Caracterização do Cromossomo
O cromossomo deve ser uma solução
codificada para o problema
 Podendo ser uma string, matriz, uma
variável qualquer
 A representação depende do tipo de
problema a ser manipulado
 É inicializada uma população destes
cromossomos aleatoriamente

Caracterização do Cromossomo

Representação Binária
1

1
0
0
1
0
1
0
0
Representação simbólica
A

1
J
D
I
B
E
D
G
F
H
Representação de valores reais
4
3,7
1
3
2,3
5
6
8,9
5
8
Função de Fitness
Indica o grau de resolução do problema
pelo cromossomo
 Maior dificuldade do AG

◦ Caixeiro viajante  distância percorrida
◦ Coloração dos grafos  número de cores
adjacentes
◦ Roteamento de veículos  tempo, distancia,
gasto financeiro
◦ Horário de aula  ???
Seleção
Os selecionados são indicados para uma
área de cruzamento
 Aqueles que possuírem maior fitness tem
maior chance se passar suas
características para seus descendentes
 Uma seleção muito rigorosa acaba com a
diversidade da população, podendo fazer
com que uma característica seja perdida.

Seleção

Seleção por torneio
Cromossomo
1
1
1
0
0
Aptidão
1
0
1
0
0
5
0
1
1
1
1
8
X
1

1
0
1
1
Seleção por Roleta
Cromossomo 5
Cromossomo 4
3
5
Cromossomo 0
7
10 Cromossomo 1
13
Cromossomo 3 5
10
Cromossomo 2
Cruzamento
Operação onde os cromossomos
previamente selecionados trocam
características para gerar novos
cromossomos
 Processo o qual caracteriza um
Algoritmo Genético
 Os cromossomos “pais” não devem ser
perdidos

Cruzamento

Cruzamento com 1 ponto de corte
1
1
1
0
0
1
0
1
0
0
Cromossomo1
1
1
0
1
1
0
1
1
1
1
Cromossomo 2
1
1
1
1
1
0
1
1
1
1
Cromossomo 3
1
1
0
0
0
1
0
1
0
0
Cromossomo 4

Cruzamento com 2 pontos de corte
1
1
1
0
0
1
0
1
0
0
Cromossomo 1
1
1
0
1
1
0
1
1
1
1
Cromossomo 2
1
1
1
1
1
0
0
1
0
0
Cromossomo 3
1
1
0
0
0
1
1
1
1
1
Cromossomo 4
Cruzamento

Parcialmente mapeado (PMX)
Mapeamento
01
02
I
A
B
D
E
H
H->E
D
I
E
G
J
A
J
C
I
B
E
D
G
F
H
Cromossomo 1
G
F
B
A
D
H
I
J
C
E
Cromossomo 2
A->I->D->B
B
G
C
A
D
H
I
J
F
Cromossomo 3
J->G
G->J
J
E->H
F
A
I
B->D->I->A
B
E
D
G
C
H
Cromossomo 4
Cruzamento

Cruzamento com valores reais
f ( x, y )  a  x  (1  a)  y
◦ Onde  : 0    1.
  = 0,5
4
3,7
1
4,5
6,4
0
f (4;4,5)  0,5  4  (1  0,5)  4,5
4,25
5,05
0,5
Mutação


Chance individual de um cromossomo sofrer
alteração genética
Visa inserir na população uma característica
nova ou perdida no processo
◦ Se for favorável poderá ser disseminada na
população
◦ Se for prejudicial deverá ser eliminada pela
seleção


Manter a diversidade da população
Este valor deve ser menor que 5%
Mutação
Mutação


1
1
1
0
0
1
0
1
0
0
1
1
1
0
0
0
0
1
0
0
Mutação por permutação
G
F
C
A
D
H
I
J
B
E
G
F
C
A
B
H
I
J
D
E
Critério de Parada
Número de Gerações
 Variabilidade da população
 Valor solução ótima atingida

Parâmetros Finais de um AG
Numero da população
 Numero de indivíduos a ser selecionados
 Taxa de Reprodução
 Taxa de Mutação
 Parâmetro de parada

Linhas de Pesquisas
Aplicação em problemas reais
 Algoritmos Híbridos

◦
◦
◦
◦
◦
Algoritmos Genéticos + Teoria dos Jogos
Algoritmos Genéticos + Lógica Fuzzy
Algoritmos Culturais + Algoritmos Genéticos
Redes Neurais + Algoritmos Genéticos
Vida artificial
Algoritmos Genéticos + Teoria dos
Jogos
Teoria dos jogos influencia o fitness dos
cromossomos nas etapas de seleção
 Visa aumentar a variabilidade da
população e retardar a convergência
 Uma maior variabilidade na população
aumentam as chances de surgir soluções
melhores

Teoria dos Jogos

Dilema do prisioneiro
Jogador 2
Jogador 1

Cooperar (C)
Trair(D)
Cooperar(C)
(3,3)
(1,5)
Trair(D)
(5,1)
(1,1)
Estratégias
◦
◦
◦
◦
Sempre Trair
Sempre cooperar
Aleatório
Tit-for-tat
Teoria dos Jogos
420
430
420
-40
380
430
-60
370
21/28
Alteração da Teoria dos jogos
Gerar População Inicial
Avaliação da População
Eliminação dos Menos Aptos
Avaliação da População
Mutação
Cruzamento
Seleção
Critério de
parada
F
V
Fim do Processo
Download