Escolar Documentos
Profissional Documentos
Cultura Documentos
Parmetros
1. PROBLEMA
GAs so indicados em problemas complexos de otimizao- onde se busca uma soluo melhor: :
muitos parmetros e variveis; mal estruturados: com condies e restries, difceis de serem modeladas matematicamente; grandes espaos de busca onde no possvel a busca exaustiva.
2. REPRESENTAO
descrever o espao de busca relevante ao problema; codificar geneticamente a essncia do problema: evoluo do cdigo evoluo da soluo
ser compatvel com os operadores (crossover e mutao) representao adequada sucesso, evoluo
2. REPRESENTAO
Mtodo de Soluo
Numrico Ordem Grupo Inteiro Misto
Representao
Binrio, Real Lista Vetor Inteiro Ex: Real e Ex: Lista
Aspectos importantes: variveis do problema (x1 , x2 , ... , xt ) domnio de valores: xi (mni, mxi) em R preciso: p casas decimais (mxi-mni)x10p diferentes solues
domnio de xi
mni Preciso 1/10p mxi
Representao: k1 bits x1
onde,
k2 bits x2
...
kt bits xt
2k i (mxi-mni)x10p
Preciso = (mxi-mni) 2k i - 1
Decodificao para Real: xi real = xi bin .(mxi-mni) + mni ________ 2k i - 1 se xibin=(0 0 ... 0) se xibin=(1 1 ... 1) xi real = mni xi real = mxi
REPRESENTAO BINRIA simples de criar e manipular produz bons resultados facilita aplicaes de operadores fcil decodificao numrica ( inteiro,real ) facilita a demonstrao de teoremas porm, nem sempre adequada
3. DECODIFICAO
Construir a soluo para o problema a partir de um cromossoma: Cromossomas representam solues. Cromossoma 0011011 0011011 ADBCE Transformao bin inteiro Soluo x=27 x=2,1 x [0,10]
1 casa decimal
x=27 x 10/27 -1
3Km
A B C
cidades
7Km
1Km 4Km
E
3Km
ADBCE ( dist.=18)
4. AVALIAO
Elo entre o algoritmo gentico e o problema . f(cromossoma) = medida numrica de aptido Chances de seleo so proporcionais aptido.
f(i)
f(j)
j= 1
6. TCNICAS
- Tcnicas de Representao - Tcnicas de Inicializao da Populao - Tcnicas de Eliminao da Populao Antiga - Tcnicas de Reproduo - Tcnicas de Seleo de Genitores - Tcnicas de Aptido - Tcnicas de Parametrizao - Tcnicas de Elitismo - Tcnicas de Seleo de Operadores
7. PARMETROS
Sistemas de Desenvolvimento
ICADEMO Genesis, Genesys WinGenesis GENOCOP GeneHunter Evolver 4.0 Escapade Sugal Bibliotecas especficas (C, Pascal, etc)
TNA/C++,
l l l l l l l l l
Algoritmos Genticos
Exemplos GA1-1 a GA6-1 l Especificao de tcnicas e parmetros por mdulos:
l
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina todos Troca da gerao Roleta Aptido a avaliao Nenhuma Nenhuma 100 4000 Use todos Crossover 1 ponto & Mutao 0,008 0,65 nenhuma
GA1-1
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Tcnica de Elitismo: Population Size: Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Funo F6
Funo F6(x,y)
F6(x,0)
1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0
-100
- 50
50
100
Caractersticas da F6
Objetivo: Maximizar F6 l Uma nica soluo tima: F6(0,0)=1 l Difcil de otimizar: vrios mnimos locais
l
Representao
l l
2 Variveis: x, y l Domnio: x,y [-100, +100] l Preciso: 4 a 5 casas decimais 6 7 l log2 2x10 Ki log2 2x10
l
Exemplo
l l l l l l
Cromossoma:
00001010000110000000011000101010001110111011
Dividido em x e y:
0000101000011000000001 1000101010001110111011
Subtrados de mn:
x=-92,11420824866492 e y=8,248688757106959
Aplicados a F6(x,y):
F6(x,y)=0,5050708
Mdulo de Populao
l
Aleatria
Elimina todos
Tcnica de Reproduo:
Troca da gerao
Tcnica de Aptido:
Aptido a avaliao
Roleta
Parmetros
l
Tamanho da Populao:
pop_size
Exemplo 100
Nmero de Geraes:
num_ger
40
Total de Indivduos:
total_ind = pop_size x num_ger
4000
Parmetros
l
Tamanho da Populao:
pop_size
Exemplo 1000
Nmero de Geraes:
num_ger
4
Total de Indivduos:
total_ind = pop_size x num_ger
4000
Parmetros
l
Tamanho da Populao:
pop_size
Exemplo 10
Nmero de Geraes:
num_ger
400
Total de Indivduos:
total_ind = pop_size x num_ger
4000
l l
Encontre a soma da aptido de todos os membros da populao AT= Ai (0 i pop_size-1) Gere um nmero aleatrio 0 rand AT Pegue o primeiro membro da populao Ik cuja aptido somada s aptides dos membros precedentes maior ou igual a rand. Ai rand (i < k)
Exemplo da Roleta
Cromossoma Aptido
Ai
1 8 8
2 2 10
3 17 27
4 7 34
5 2 36
6 12 48
7 11 59
8 7 66
9 3 69
10 7 76
23 3
49 7
76 10
13 3
1 1
27 3
57 7
1 8
2 2
3 17
4 5 7 2
6 12
7 11
8 7
9 3
10 7
8 10
27
34 36
48
59
66 69
76
Mdulo de Reproduo
l
Use todos
Mutao
l l
Troca cada gene de um cromossoma se o teste de probabilidade for verdadeiro Taxa Mutao: 0,8% (0,008)
Teste Verdadeiro troca bit Teste Falso mantm
Cromossoma
Nmero Aleatrio
Novo Cromossoma
1 1 0
0 1 0
1 0 1
0 0,801 0,102 0,266 0,373 1 0 0,128 0,96 0,005 0,84 1 0 0,768 0,473 0,894 0,001 0
0 1 0
1 1 1
0 0 1
Crossover
l l
Partes de dois cromossomas genitores so trocadas a partir de uma posio escolhida aleatoriamente Taxa de Crossover : 65%
Teste Verdadeiro Efetua Cruzamento Teste Falso Copia os Genitores
P1 P2 F1 F2
1 0
0 0
1 1
1 1
0 0
1 0
1 0
0 0
1 1
1 1
0 0
0 1
Evoluo X Convergncia
l
Crossover: acelerador do processo de busca tira proveito das solues mais promissoras Mutao operador exploratrio dispersa a populao pelo espao de busca Convergncia (causas): populao com indivduos muito similares no h mais evoluo:
timo encontrado ou convergncia prematura (mnimo local)
Anlise de Desempenho
l l l
Melhor de um Experimento (valor) Curva dos Melhores por Gerao Curva da Mdia de Melhores de Vrios Experimentos
Mdia de Experimentos
l l
l l
Calcula a mdia dos melhores indivduos por gerao em vrios experimentos. Mede o desempenho do GA em encontrar uma soluo melhor na gerao seguinte GAs so estocsticos: desempenho varia a cada experimento So necessrios muitos experimentos para se conhecer o desempenho mdio do modelo de GA.
A(t) =
Ae (t) #_Experimentos
1 e #_Experimentos
t: gerao Ae(t): aptido do melhor indivduo em t no experimento e A(t): mdia em #_Experimentos das aptides dos melhores indivduos a cada gerao t
Mdia de Experimentos
Experimentos Melhores nas geraes 1a. 2a. 3a. 4a. Mdia 1 0,6 0,5 0,8 0,5 0,60 2 0,7 0,5 0,8 0,7 0,68 3 0,7 0,6 0,9 0,7 0,73 4 0,8 0,6 0,9 0,8 0,78
Mdia de Experimentos
Avaliao 1,00 0,50 0,00 1 2 3 4 5 Experimentos
Aptido A(t)
Usamos o nmero de dgitos 9 aps o ponto decimal para distinguir avaliaes muito prximas de 1,00 . Exemplo:
Avaliao dgitos 9
2 0 4
49
ICADEMO
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina todos Troca da gerao Roleta Aptido a avaliao Nenhuma Nenhuma 100 4000 Use todos Crossover 1 ponto & Mutao 0,008 0,65 nenhuma
GA1-1
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Tcnica de Elitismo: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State s/ duplicados Roleta Normalizao Linear (100 a 1) Nenhuma Nenhuma 100 4000 Use todos Crossover 1 ponto & Mutao 0,04 0,8 nenhuma
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Tcnica de Elitismo: Population Size : Total de Indivduos:
GA2-1 a GA2-5
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover:
Tcnica de Parametrizao:
Medida de Aptido
l
Medida de Aptido
l
l l l
Formato F6 = formato F6 elevada Melhor cromossoma para F6 = melhor para F6 elevada Avaliao de F6 elevada = avaliao F6 + 999 Todavia, GA 1-1 para F6Elevada no apresenta desempenho algum.
PORQUE?
Aptido = Avaliao
Ai = fi : aptido do indivduo i
pi = Ai/ AT = fi / fJ : chances de seleo de I h pop_size sorteios, ento Di = pi x pop_size = (fi x pop_size) / fJ = Di = fi / fAV : nmero provvel de sorteios de i, ou nmero de descendentes na prxima gerao
l l
F6 avaliao best 0,979 worst 0,066 average 0,514 Dbest = 1,905 Dworst = 0,128 forte presso seletiva em favor do melhor
l l
F6 Elevada avaliao best 999,979 worst 999,066 average 999,514 Dbest = 1,0005 Dworst = 0,9996 melhor e pior cromossomas vo gerar o mesmo nmero de descendentes
O efeito da seleo quase nulo porque as avaliaes esto relativamente muito prximas. .
Tcnicas de Aptido
l
Aptido a Avaliao
Ai = fi
Exemplo: Ai = 999,979
Windowing
subtrair uma constante dos valores de fi
Normalizao Linear
atribuir valores a Ai baseados no rank do cromossoma
Windowing
l l
Obtenha a avaliao mnima na populao. Atribua a cada cromossoma I uma aptido igual a: Ai = (f i - Amn) Opcionalmente, atribua uma aptido mnima de sobrevivncia, maior que a aptido mnima calculada, como garantia de reproduo para os cromossomas menos aptos. Exemplo: Ai = (999,979 - 999,066)= 0,913
Normalizao Linear
l l l
Coloque os pop_size cromossomas em ordem decrescente de avaliao (i=1 o menos apto). Crie aptides, partindo de um valor mn e crescendo linearmente at o valor mx. Os valores de mx e mn (ou a constante de incremento) so parmetros da tcnica.
x (i - 1)
Exemplo Comparativo
Rank dos cromossomas Avaliao original Aptido avaliao Normalizao Linear, taxa=10 Normalizao Linear, taxa=20 Windowing
5 9 9 50 81 8
4 8 8 40 61 7
3 7 7 30 41 6
2 4 4 20 21 3
1 1 1 10 1 0
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina todos Troca da gerao Roleta Normalizao Linear (100 a 1) Nenhuma Nenhuma 100 4000 Use todos Crossover 1 ponto & Mutao 0,008 0,65 nenhuma
GA2-1
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Tcnica de Elitismo: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Elitismo
l
Melhor cromossoma de P(t) copiado em P(t+1), aps o mutao e crossover. Reduz o efeito aleatrio do processo seletivo. Garante que o melhor indivduo da prxima gerao melhor ou igual ao da gerao anterior.
l l
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina todos Troca da gerao Roleta Normalizao Linear (100 a 1) Nenhuma Copia o melhor 100 4000 Use todos Crossover 1 ponto & Mutao 0,008 0,65 nenhuma
GA2-2
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Tcnica de Elitismo: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Representao Binria Reproduo com substituio da populao Elitismo Normalizao Linear Crossover de 1 ponto e Mutao
Algoritmo de partida em aplicaes Apresenta bom desempenho em vrios problemas
l l
Substituio parcial de indivduos a cada gerao (mais elitista) Bons indivduos (material gentico) so preservados, garantindo mais chances de reproduo Mtodo: Crie n filhos (seleo+crossover+mutao) Elimine os n piores membros da populao Avalie e introduza os filhos na populao GAP = frao da populao que trocada valor de GAP determina relao entre exploitation e exploration
38 6 121 88 58 17
avaliaes de P(t)
crie n novos
substitua os n piores
avaliaes de P(t+1)
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State Testar de 5 em 5 Roleta Normalizao Linear (100 a 1) Nenhuma 100 4000 Use todos Crossover 1 ponto & Mutao 0,008 0,65 nenhuma
GA2-3
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Gap Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Substituio parcial de indivduos com excluso de duplicados Evita os duplicados que so mais frequentes com steady state (populaes mais estticas) Maior eficincia do paralelismo de busca, garantindo pop_size indivduos diferentes Descendentes duplicados so desprezados Maior overhead para teste de igualdade
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State s/ duplicados Testar de 5 em 5 Roleta Normalizao Linear (100 a 1)
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Gap Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Population Size : Total de Indivduos:
GA3-1 a GA 3-3
Interpolar taxa de incremento (de 0,2 a 1,2) 100 4000 Roleta Crossover Uniforme Mutao 0,04 0,8 Interpolar Pesos dos Operadores de (70 30) a (50 50)
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
Crossover de 2 Pontos
l l l
Semelhante ao crossover de 1 ponto 2 pontos so escolhidos aleatoriamente Crossover de 1 ponto no consegue combinar todos os padres de dois genitores
1 0 0 0 1 1 1 0 0 1 0 1 1 0 0 1 1 1 1 1 0 1 1 0 1 0
P1 P2
1 0
pontos de corte P1 P2 F1 F2
1 0
1 0
1 0
1 0
0 0
0 0
1 1
1 1
1 0
0 1
0 1
1 0
0 1
1 0
1 0
0 1
0 1
1 0
1 1
1 1
1 1
1 1
0 1
0 1
1 0
1 0
1 0
1 0
Crossover Uniforme
l l
A contribuio de cada genitor decidida aleatoriamente por um padro Capacidade de combinar quaisquer padres
1 0
1
P1 P2 Padro F1 F2
0 1
1
0 0
0
1 1
1
0 1
0
1 0
0
1 1
1
Operadores Independentes
Determinados GAs podem incorporar diversos operadores genticos. l Operadores no devem ser usados todos, com a mesma intensidade, a cada fase da evoluo ( por ex: mais crossover no incio e mais mutao no final da evoluo ). l Uma roleta sorteia um operador a cada reproduo. l Pesos (chances) dos operadores, iniciais e finais, e taxa de interpolao so parmetros do algoritmo.
l
OP4
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State s/ duplicados Testar de 5 em 5 Roleta Normalizao Linear (100 a 1) Nenhuma 100 4000 Roleta Crossover 2 pontos Mutao Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao: Pesos 0,01 0,7 Nenhuma (50 50)
GA3-1
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Gap Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores:
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State s/ duplicados Testar de 5 em 5 Roleta Normalizao Linear (100 a 1) Nenhuma 100 4000 Roleta Crossover Uniforme Mutao Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao: Pesos 0,01 0,7 Nenhuma (50 50)
GA3-2
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Gap Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Population Size : Total de Indivduos:
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores:
Desempenho
l
Aspectos importantes:
convergncia do GA proximidade dos melhores cromossomas a um mnimo local diversidade da populao valores dos parmetros do GA Exemplo: variao da aptido dos operadores durante evoluo.
30 25 20 15 30 25 20
30 25 20 15 10 5 0 1
6 66
2 3 4 5
6 66
6 7 8
10 5 0 1 2 3
6 66 6 6
4 5 6 7 8
6 6
9 10 11 12 13 14 15
15 10 5 0 1 2 3 4 5 6 7 8
66 6 6 6 6
9 10 11 12 13 14 15
9 10 11 12 13 14 15
Incio:
Crossover Mutao
Meio:
Crossover Mutao
Fim:
Crossover Mutao
Interpolao de Parmetros
l
Consiste na variao dos valores dos parmetros do GA durante a execuo, de modo a alcanar maior desempenho. Parmetros:
taxa de crossover taxa de mutao taxa incremento da normalizao da aptido aptido dos operadores
Interpolao define:
valores inicial e final do parmetro e frequncia de ajuste.
Mdulo de Avaliao
Funo de Avaliao: Funo binria F 6 Binria 44 bits Aleatria Elimina o ltimo Steady State s/ duplicados Testar de 5 em 5 Roleta Normalizao Linear (100 a 1)
GA3-3
ICADEMO
Mdulo de Populao
Tcnica de Representao: Tcnica Inicializao da Populao: Tcnica Eliminao da Populao: Tcnica de Reproduo: Gap Tcnica de Seleo de Genitores: Tcnica de Aptido: Tcnica de Parametrizao: Population Size : Total de Indivduos:
Interpolar taxa de incremento (de 0,2 a 1,2) 100 4000 Roleta Crossover Uniforme Mutao
Mdulo de Reproduo
Tcnica de Seleo de Operadores: Operadores: Taxa Mutao: Taxa Crossover: Tcnica de Parametrizao:
grfico
0,01 0,7 Interpolar Pesos dos Operadores de (70 30) a (50 50)