UFRJ – COOPE 16/05/2012 Algoritmos Evolucionários Híbridos 1 Algoritmos Evolucionários Híbridos (Meméticos) Caio Fleming Ferreira de Carvalho Cunha Fellipe de Oliveira Pinto 16 de Maio de 2012
UFRJ – COOPE 16/05/2012Algoritmos Evolucionários Híbridos1 Algoritmos Evolucionários Híbridos (Meméticos) Caio Fleming Ferreira de Carvalho Cunha Fellipe
UFRJ COOPE 16/05/2012Algoritmos Evolucionrios Hbridos1
Algoritmos Evolucionrios Hbridos (Memticos) Caio Fleming Ferreira
de Carvalho Cunha Fellipe de Oliveira Pinto 16 de Maio de 2012
Slide 2
Ementa Objetivos Motivaes para hibridizao dos AEs. Introduo aos
algoritmos memticos. Busca local: Adaptao de Lamarck vs. de
Baldwin. Estrutura de um algoritmo memtico. Problemas de design
para algoritmos memticos: Diversidade, escolha de operadores e uso
de conhecimento. Exemplo de aplicao: Problema Timetabling
Referncias bibliogrficas. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos 2
Slide 3
Objetivos Discutir algoritmos baseados em AE, os quais so
incorporados a outros mtodos ou estruturas de dados incorporados a
eles, denominados Algoritmos Memticos (MA); Explicitar o raciocnio
por trs dos MAs; Mostrar as possveis combinaes dos AEs com outras
tcnicas; Fornecer os pontos para projetar adequadamente um
Algoritmo Hibrido; UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos 3
Slide 4
Motivaes para Hibridizao de AEs Problemas complexos podem ser
decompostos em sub- problemas, os quais podem ser resolvidos com
mtodos apropriados para cada um deles; Na verdade o AE puro no
exibe uma performance uniforme para uma ampla faixa de problemas.
Pode-se combinar heursticas especficas a um AE formando modelos
hbridos, alterando a performance global do mtodo; Pode-se obter
melhores resultados quando se possui conhecimentos especficos do
problema. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos4
Slide 5
Motivaes para Hibridizao de AEs O conhecimento especfico no
algoritmo hbrido varivel, podendo ser ajustada; UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos5 Faixa de problemas
Performance do mtodo Mtodos adaptados EA puro EA enriquecido com
conhecimento
Slide 6
Motivaes para Hibridizao de EAs AEs no so bons em encontrar a
soluo final, pois evoluem lentamente devido a natureza estocstica
dos operadores. Pode-se melhorar o algoritmo incorporando um passo
de busca local. A combinao de AEs com operadores de busca local que
atuam dentro do lao AE ou entregam conhecimento especfico de
instncias do problemas denominado Algoritmo Memtico; UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos6
Slide 7
Algoritmos Memticos Memes Genes Ideia de meme como agente que
pode transformar um candidato a soluo. A adio de uma fase de
aprendizagem (desenvolvimento) ao ciclo evolucionrio pode ser vista
como uma interao meme-gene. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos 7 Unidades de transmisso culturalUnidades de
transmisso biolgica
Slide 8
Busca Local Busca local um processo iterativo para examinar o
conjunto de pontos na vizinhana da soluo atual e a substituir por
um vizinho melhor, caso exista. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos8
Slide 9
Busca Local Componentes que afetam o algoritmo: Regra de
pivoteamento (lao interno) : steepest ascent busca entre todos os
vizinhos o mais apto, contar = n(i); greedy ascent busca o primeiro
vizinho que se mostra mais rpido, (contar = |n(i)|) ou (melhor!=
i); Regra de profundidade (lao externo): determina nmero de iteraes
da busca local; Pode ser aplicado a uma nica iterao (iteraes = 1)
ou contnua (contar = |n(i)| e melhor =i) ; Efeitos na performance
do algoritmo, tempo e qualidade; UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos9
Slide 10
Busca Local Funo geradora de vizinhana: n(i) - conjunto de
pontos que podem ser alcanados atravs da aplicao de algum operador
de movimento ao ponto i. Representao equivalente: Grafo no
direcionado G(v,e) v o conjunto de vrtices que representa todos
pontos no espao de busca, as solues em potencial. e o conjunto de
arestas que representa as possveis transies que podem ocorrer a
partir da aplicao de um nico operador. As arestas podem ser
direcionadas e ponderadas. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos10
Slide 11
Busca Local Definida pela combinao de vizinhana, n(x), e regra
de pivoteamento. Em que n(x) constitui o conjunto de pontos
alcanveis com aplicao do operador de movimento (fitness
landscapes), os quais afetam a eficincia e efetividade da busca
local. v = {a, b, c, d, e, f, g, h} n(g) = {c, f, h} e1 = {ab, ad,
ae, bc, bf, cd, cg, dh, fg, fe, gh, eh} simtrica e valores
equiprovveis UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos11 a b c d e f g h
Slide 12
Busca Local Pontos localmente timos para uma estrutura de
vizinhana podem no ser para outra, exceto se localmente timo.
Variaes: Pode-se aplicar a busca ao espao de busca ou espao de
solues; Ajustando o nmero de iteraes a serem realizadas pela busca
local; Busca local pode ser aplicada: - a populao total; - para o
indivduo mais apto; - para o indivduo menos apto; UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos12
Slide 13
Lamarckianismo e Efeito Baldwin Lamarckiano se as
caractersticas adquiridas durante seu tempo de vida so herdadas por
sua prole. ex: substituir o indivduo com vizinho mais apto.
Baldwiniano se o processo evolucionrio for guiado pelas adaptaes
favorveis sem que as modificaes nas aptides dos indivduos, devido a
aprendizagem ou desenvolvimento, se convertam em mudanas de
caractersticas genticas. ex: indivduo recebe aptido (mas no
gentipo) do vizinho mais apto. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos13
Slide 14
Estrutura de um Algoritmo Memtico UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos14 POP. INICIAL GRUPO DE
REPRODUO DESCENDENTE -Solues conhecidas -Heurstica -Inicializao
Seletiva -Busca Local Cruzamento Mutao Uso de informaes de um
problema especfico No operador Uso de informaes de um problema
especfico No operador Busca Local Seleo modificada de operadores
Seleo
Slide 15
Estrutura de um Algoritmo Memtico Inicializao Heurstica ou
Inteligente Um conhecimento existente pode ser incorporado ao AE na
fase de inicializao. benefcios por iniciar AEs com solues
existentes: Evitar a perda de esforo computacional refletindo
aumento de eficincia (velocidade); Direcionar busca para regies
promissoras do espao de busca levando a aumentar efetividade;
Dividir o esforo computacional entre inicializao heurstica e busca
evolucionria pode gerar melhores resultados do que gastar todo o
esforo em busca evolucionria apenas; UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos15
Slide 16
Estrutura de um Algoritmo Memtico Inicializao Heurstica ou
Inteligente Maneiras de se alterar a funo inicializao: Seeding
(Semeadura): semeia a populao com uma ou mais solues boas a partir
de outras tcnicas (tentativa e erro, heursticas usando informaes de
instncia especfica); Inicializao seletiva: gera-se grande nmero de
solues aleatrias e seleciona-se a populao inicial a partir delas: -
Realizar N torneios de tamanho k; - Selecionar um conjunto baseado
na fora e diversidade. Realizar busca local em cada membro da
populao (aleatoriamente), formando um conjunto de indivduos
localmente timos. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos16
Slide 17
Estrutura de um Algoritmo Memtico Inicializao Heurstica ou
Inteligente Maneiras de se alterar a funo inicializao: Empregar um
ou mais mtodos anteriores para identificar uma ou mais boas solues,
e ento clonar e aplicar mutao com altas taxas (mass mutation) para
formar um nmero de indivduos na vizinhana do ponto inicial. Efeito
de se variar a proporo da populao inicial : -Uso de pequena
propores das solues na populao inicial auxilia na busca gentica;
-Performance mdia melhora com o aumento da proporo; -Melhor
performance vem de uma populao inicial mais aleatria. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos17
Slide 18
Operadores inteligentes de variao incorporam conhecimento
especfico da instncia ou do problema, uma forma de introduzir
tendncia dentro dos operadores: Exemplo 1: Aumentar a probabilidade
de escolha de caractersticas mais compactas para emprego em um
classificador. Exemplo 2: Genes codificando instrues de
microprocessador de modo a serem agrupados em conjuntos de efeitos
similares. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios Hbridos18
Estrutura de um Algoritmo Memtico Hibridizao com Operadores de
Variao
Slide 19
Uso de conhecimento especfico do problema: Incorporao de uma
fase de busca local dentro de um operador de recombinao. Ex.:
Testar todas as possveis orientaes dos dois fragmentos de estrutura
de uma protena separados pelo ponto de cruzamento e pegar a mais
favorvel. Se nenhum ajuste possvel for encontrado escolhido outro
ponto de cruzamento. Uso de conhecimento especfico da instncia:
Operadores recebem heurstica muito especfica. Ex.: Operador DPX
para TSP, preserva a diversidade evitando convergncia prematura.
UFRJ COOPE 16/05/2012Algoritmos Evolucionrios Hbridos19 Estrutura
de um Algoritmo Memtico Hibridizao com Operadores de Variao
Slide 20
Consiste de uma ou mais fases de melhora no indivduo da populao
durante o ciclo AE; A busca Local atua sobre toda soluo criada pela
mutao ou recombinao, pode ocorrer em fases distintas do ciclo; UFRJ
COOPE 16/05/2012Algoritmos Evolucionrios Hbridos20 Estrutura de um
Algoritmo Memtico Busca Local na Sada de Operadores de Variao
Slide 21
Krasnogor para reduzir o pior caso de execuo, preciso escolher
uma busca local em que o operador movimento diferente dos
operadores da recombinao e mutao. Implica em diversificao dos
pontos gerados, a qual melhorada com altas taxas de mutao ou uso de
operadores com estruturas de vizinhana distintas UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos21 Estrutura de um
Algoritmo Memtico Busca Local na Sada de Operadores de Variao
Slide 22
Usado no mapeamento antes da avaliao da aptido; Ex: Uso de
conhecimento especfico da instncia dentro do decodificador ou da
funo de reparo. Problema da mochila. Uma linha comum destas
aproximaes fazer uso de heursticas existentes e informaes do domnio
onde possvel. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos22 Estrutura de um Algoritmo Memtico Hibridizao no
Mapeamento gentipo - fentipo
Slide 23
Problemas de Projetos em Algoritmos Memticos AMs no so solues
mgicas para problemas de otimizao. Deve-se tomar cuidado com:
Diversidade da populao. Escolha dos operadores. Uso do conhecimento
adquirido durante o processo de otimizao. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos23
Slide 24
Preservao de Diversidade O problema da convergncia prematura.
Tcnicas para combater este problema: - Usar somente uma proporo
pequena de boas solues conhecidas na populao inicial. - Usar
operadores de recombinao que so projetados para preservar
diversidade (como Merzs DPX). - Modificar operador de seleo para
prevenir duplicaes. - Usar um mtodo de Boltzmann (Simulated
anneling) para o operador de seleo ou o critrio de aceitao da busca
local. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios Hbridos24
Slide 25
Preservao de Diversidade Manuteno do sucesso de diversidade
para populao pode ser justificado: O cruzamento DPX de Merz
explicitamente gera indivduos que so eqidistantes para cada pai,
tendo a mesma distncia entre os pais. Operador adaptativo de
Boltzmann, por Krasnogor, usa critrio de aceitao de novo indivduo
baseado no cozimento simulado. A temperatura inversamente
proporcional diversidade da populao. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos25
Slide 26
Critrio de Boltzmann A dinmica induzida tal que: Populao
diversa - espalhamento da aptido alto, portanto temperatura baixa,
ento aceita apenas de movimentos melhores em relao aptido
(Explotao). Populao pouco dispersa, portanto, temperaturas altas,
mais provvel a aceitao de movimentos que pioram a aptido
(Explorao). UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos26
Slide 27
Escolha dos operadores O fator Principal no projeto de um AM :
- Escolha da heurstica de melhoramento ou do operador de movimento
da busca local. - A escolha do operador de movimento pode ter
efeito dramtico na eficincia e na efetividade da busca local. -
Vantagens em usar busca local com um operador de movimento que
diferente dos operadores de movimento usados pela mutao e pelo
cruzamento. - Podem-se disponibilizar mltiplos operadores de busca
local, escolhendo-se qual a ser aplicado em cada caso. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos27
Slide 28
Uso do Conhecimento AM concentram o uso e o reuso de
conhecimento ganho durante o processo de otimizao (automtico ou no)
Tabu search Lista de Pontos visitados mantido para proibir que o
Algoritmo retorne a estes (mantm a diversidade). A seleo/aceitao de
Boltzmann utiliza o espalhamento do gentipo da populao atual ou
passada, para deciso de aceitao de novas indivduos. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos28
Slide 29
Resumo sobre Algoritmos Hbrido So utilizados em diversos
problemas ; Pode envolver operadores de outros algoritmos ou
incorporar um domnio especfico do conhecimento do problema. AMs tm
se mostrado mais rpidos e mais precisos do que os AGs sobre alguns
problemas Deve-se controlar a escolha dos operadores e cuidar da
preservao da diversidade com o objetivo de fugir de timos locais.
UFRJ COOPE 16/05/2012Algoritmos Evolucionrios Hbridos29
Slide 30
Exemplo: Problema Timetabling Atribuio de horrios e salas para
cursos para restries: Hard: - Estudantes no podem ser atribudos a
mais de um curso ao mesmo tempo; - A sala deve satisfazer
caractersticas requeridas pelo curso; - O nmero de estudantes a
capacidade da sala; - No mais do que um curso atribudo a um horrio
por sala; Soft: - Um estudante tenha um curso no ltimo horrio; - Um
estudante tem mais do que 2 cursos consecutivos; - Um estudante tem
um nico curso em um dia; UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos30
Slide 31
O problema possui: -Um conjunto de N cursos; -45 horrios -Um
conjunto de R salas; -Um conjunto de F sala a -Um conjunto de M
estudantes; O objetivo do problema satisfazer a restrio hard e
minimizar a violao das restries soft. UFRJ COOPE
16/05/2012Algoritmos Evolucionrios Hbridos31 Problema
Timetabling
Slide 32
A tcnica usada um operador de mutao leve (light) por um
algoritmo de melhora interativa aleatria. Representao: direta, cada
gene contm informao sobre horrio e sala para um curso particular
(ci), i {1,..,N). Populao inicial: usa um algoritmo de construo que
gera timetables aleatrios, 100 indivduos. Seleo de indivduos para
nova populao: Roulette Wheel. Mutao: aleatria sobre 20% dos cursos
de 20% dos indivduos selecionados. Busca Aleatria: Randomised
Iterative Improvement Algorithm, sempre aceita uma soluo melhor e
uma pior com certa probabilidade (critrio de monte carlo ). Condio
de Terminao: Aps 200000 rodadas. UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos32
Slide 33
Problema Timetabling Algoritmo: UFRJ COOPE 16/05/2012Algoritmos
Evolucionrios Hbridos33 POPULAO SELEO MUTAO ROULETTE WHEEL BUSCA
LOCAL: Ramdomised iterative improvement GRUPO DE SELEO
Slide 34
Referncia Bibliografica Abdullah, Salwani, Burke, E. K., and
McCollum, Barry A Hybrid Evolutionary Approach to the University
Course Timetabling Problem. IEEE Congress on Evolutionary
Computation, pp. 1764 1768 (2007b). Burke, E. K., Newall, J. P. A
multi-stage evolutionary algorithm for the timetable problem. IEEE
Transactions on Evolutionary Computation, v. 3, n. 1, p. 63-74,
April 1999. UFRJ COOPE 16/05/2012Algoritmos Evolucionrios
Hbridos34