Representação por Números
Reais
l
Cromossomas expressam valores através de
números reais (ponto flutuante) e não em binário
l
Para apresentarmos essa representação vamos
introduzir o conceito de hibridização em Gas.
Algoritmos Genéticos Híbridos
l
Consiste na construção de um GA inspirado no
“algoritmo de otimização em uso” em determinado
problema (se houver).
Alg.. Híbrido = Alg
Alg
Alg.. Em Uso + Alg
Alg.. Genético
l
Hibridizar:
– Adotar REPRESENTAÇÃO em uso
– Adaptar OPERADORES
– Adotar HEURÍSTICAS de otimização
1
Vantagens
Modelo incorpora o conhecimento no domínio do
problema;
Resulta num sistema mais familiar para o usuário;
Algoritmo em uso pode fornecer “sementes” para o
GA, garantindo soluções melhores.
Novos operadores devem estar alinhados com a
filosofia de GAs: recombinação e mutação
l
l
l
l
– Crossover: recombinação de sub-partes de indivíduos
– Mutação: variações globais ou locais para manter
agitada a variedade genética
Representação por Números
Reais
Cromossomas são estruturas contendo números reais.
l
l
Hibridizando com “algoritmo em uso” para a
otimização da função f6 (x,y)
“Algoritmo em uso” ≡ Busca Exaustiva de x e y reais
•Gera x e y ∈ ℜ aleatoriamente;
•Calcula f6 para o par (x,y);
•Salva (x,y) e f6(x,y);
•Retorna a melhor avaliaç
avalia ção se tempo esgotado;
•Retorna ao primeiro passo;
2
Hibridização
l
Representação:
Lista de Reais : (x,y)
l
Avaliação:
f6(x,y) real
l
Inicialização:
Números reais aleatórios
l
Operadores Genéticos:
Crossover e Mutação e
Operadores inspirados no problema
Crossover
l
l
l
Cromossoma é uma lista de reais: (x,y)
Crossover de 1 ou 2 pontos ou Uniforme sobre lista:
Exemplo: Crossover Uniforme Problema com 4 variáveis
P1 ≡ (x1 , y1 , t 1 , z 1 )
F1 ≡ (x2 , y1 , t1 , z 2 )
è
P2 ≡ (x2 , y2 , t 2 , z 2 )
Padrão ≡ 0 1 1 0
F2 ≡ (x1 , y2 , t2 , z 1 )
3
Crossover de Média
l
Cruzamento específico para o problema
l
Se dois cromossomas são promissores, a média de
seus valores reais pode levar a uma melhor solução
P1 ≡ (x1 , y1 )
è
F1 ≡ ( (x
(x1 +x2 )/2, (y
( y1 + y2 )/2)
P2 ≡ (x2 , y2 )
l
A média entre dois valores pode resultar em valores
mais próximos do valor desejado.
Crossover de Média
l
Crossover aritmético é uma combinação linear de dois
vetores (genitores) P1 e P2 na geração t:
F1 = a . P1 + (1(1-a) P2
F2 = a . P2 + (1
(1--a) P1
l
l
a =rand
=rand ∈ [0, 1] : crossover uniforme
a =f(t)
: crossover não-uniforme
(depende da idade da popula ção)
4
Mutação
l
Mutação de real
– substitui cada número real em um cromossoma por um
número real aleatório (se teste probabilidade=TRUE)
l
(x1, y1)
Creep
è
(x1, yrand)
– busca uma solução próxima através de ajustes
aleatórios em ambas as direções (+ e -)
(x1, y1)
è
(x1 ± ∆ x, y1± ∆ y)
∆ ≡ pequeno ou grande
Creep - Método de Ajuste 1
Xt + ∆ (máx - Xt) se bit sorteado =0
l
Xt+1 =
Xt - ∆ (Xt - mín) se bit sorteado =1
máx e m ín = limites do dom ínio de x
l ∆ (s) = s . rand
rand = número aleatório ∈ [0, p], pó 1
l
O ajuste varia com o valor de p:
se p = pequeno
è
ajuste menor
se p = grande
è
ajuste maior
5
Creep - Método de Ajuste 2
l
Xt + ∆ (t, máx- Xt)
se bit sorteado =0
Xt - ∆ (t, Xt -mín)
se bit sorteado =1
Xt+1 =
t= geração; m áx e m ín = limites do dom ínio de x.
(1 - t/ T) b
l
∆ (t, s) = s . ( 1 - rand
l
rand = número aleatório ∈ [0, p], pó 1
l
T = número máximo de gerações
)
b = grau de dependência com o n úmero da geração
l
A probabilidade de ∆ (t, s) ser pr óximo de zero
aumenta com o nú
nú mero de geraç
gerações.
Creep - Método de Ajuste 2
∆ (t, s)
∆ (t, s)
s
s
t/ T=0,50; b=2
1 rand
l
t/ T=0,90; b=2
1
rand
O operador busca uniformemente no espaço no
início da evolução (t=pequeno), e mais localmente no
final da evolução (t=grande)
6
l
l
Módulo de Avaliação
é Função de Avaliação:
Módulo de População
é Técnica de Representação:
Lista de números reais
é Técnica Inicialização da População:
Números reais aleatórios
Técnica Eliminação da População:
Elimina o último
Técnica de Reprodução:
Steady State s/ duplicados
Gap
l
Função F6 real
GA5-1
Testar de 5 em 5
Técnica de Seleção de Genitores:
Roleta
Técnica de Aptidão:
Normalização Linear (100 a 1)
Técnica de Parametrização :
Interpolar taxa de incremento (0,2 a 1,2)
Population Size :
100
Total de Indivíduos:
4000
Módulo de Reprodução
Técnica de Seleção de Operadores:
Roleta
é Operadores:
Crossover Uniforme de Lista
é
Crossover de Média
é
Mutação de Número Real
é
Creep ∆ pequeno
é
Creep∆
∆ grande
é Técnica de Parametrização:
Interpolar Pesos dos Operadores
é
de (10 40 10 30 10) a (10 20 0 40 30)
7
Binária x Reais
l
Representação dos genes por números reais (ponto flutuante) é mais
adequada em problemas de otimização de parâmetros com variáveis sobre
domínio contínuo;
l
Especialmente em grandes domínios onde a representação binária requer um
longo cromossoma:
Ex: 100 variáveis, [-500,500], 4 casas decimais è 2400 bits
l
Representação por reais é mais rápida na execução;
l
Representação por reais oferece maior precisão (depende do computador);
l
Desempenho pode ser melhorado com operadores específicos ao problema;
l
Representação por reais tem a propriedade que dois pontos próximos um ao
outro no espaço de representação, estão também próximos no espaço do
problema;
l
Representação por reais evita Hamming Cliffs.
Distância de Hamming
l
Rep. Binário
Valor Real
C1 = 0 1 1 1 1 1
31
C2 = 1 0 0 0 0 0
32
è distância = 6
l
Rep. Real
Valor Real
C1 = 31
31
C2 = 32
32
è distância = 1
8
Download

Representação por Números Reais Algoritmos Genéticos Híbridos