ufrj – coope 16/05/2012algoritmos evolucionários híbridos1 algoritmos evolucionários híbridos...

34
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

Upload: internet

Post on 18-Apr-2015

108 views

Category:

Documents


1 download

TRANSCRIPT

  • Slide 1
  • 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