A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos Evolucionários Híbridos (Meméticos)

Apresentações semelhantes


Apresentação em tema: "Algoritmos Evolucionários Híbridos (Meméticos)"— Transcrição da apresentação:

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 /05/2012 Algoritmos Evolucionários Híbridos

2 Ementa Objetivos Motivações para hibridização dos AEs.
Introdução aos algoritmos meméticos. Busca local: – Adaptação de Lamarck vs. de Baldwin. Estrutura de um algoritmo memético. Problemas de design para algoritmos meméticos: – Diversidade, escolha de operadores e uso de conhecimento. Exemplo de aplicação: – Problema Timetabling Referências bibliográficas. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

3 Objetivos Discutir algoritmos baseados em AE, os quais são incorporados a outros métodos ou estruturas de dados incorporados a eles, denominados Algoritmos Meméticos (MA); Explicitar o raciocínio por trás dos MAs; Mostrar as possíveis combinações dos AEs com outras técnicas; Fornecer os pontos para projetar adequadamente um Algoritmo Hibrido; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

4 Motivações para Hibridização de AEs
Problemas complexos podem ser decompostos em sub-problemas, os quais podem ser resolvidos com métodos apropriados para cada um deles; Na verdade o AE puro não exibe uma performance uniforme para uma ampla faixa de problemas. Pode-se combinar heurísticas específicas a um AE formando modelos híbridos, alterando a performance global do método; Pode-se obter melhores resultados quando se possui conhecimentos específicos do problema. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

5 Motivações para Hibridização de AEs
Faixa de problemas Performance do método Métodos adaptados EA puro EA enriquecido com conhecimento O conhecimento específico no algoritmo híbrido é variável, podendo ser ajustada; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

6 Motivações para Hibridização de EAs
AEs não são bons em encontrar a solução final, pois evoluem lentamente devido a natureza estocástica dos operadores. Pode-se melhorar o algoritmo incorporando um passo de busca local. A combinação de AEs com operadores de busca local que atuam dentro do laço AE ou entregam conhecimento específico de instâncias do problemas é denominado Algoritmo Memético; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

7 Algoritmos Meméticos Memes Genes
Ideia de meme como agente que pode transformar um candidato a solução. A adição de uma fase de aprendizagem (desenvolvimento) ao ciclo evolucionário pode ser vista como uma interação meme-gene. Unidades de transmissão cultural Unidades de transmissão biológica UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

8 Busca Local Busca local é um processo iterativo para examinar o conjunto de pontos na vizinhança da solução atual e a substituir por um vizinho melhor, caso exista. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

9 Busca Local Componentes que afetam o algoritmo:
Regra de pivoteamento (laço interno) : steepest ascent – busca entre todos os vizinhos o mais apto, contar = n(i); greedy ascent – busca o primeiro vizinho que se mostra mais rápido, (contar = |n(i)|) ou (melhor!= i); Regra de profundidade (laço externo): determina número de iterações da busca local; Pode ser aplicado a uma única iteração (iterações = 1) ou contínua (contar = |n(i)| e melhor =i) ; Efeitos na performance do algoritmo, tempo e qualidade; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

10 Busca Local Função geradora de vizinhança:
n(i) - conjunto de pontos que podem ser alcançados através da aplicação de algum operador de movimento ao ponto i. Representação equivalente: Grafo não direcionado G(v,e) – v é o conjunto de vértices que representa todos pontos no espaço de busca, as soluções em potencial. – e é o conjunto de arestas que representa as possíveis transições que podem ocorrer a partir da aplicação de um único operador. As arestas podem ser direcionadas e ponderadas. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

11 Busca Local v = {a, b , c, d, e, f, g, h}
Definida pela combinação de vizinhança, n(x), e regra de pivoteamento. Em que n(x) constitui o conjunto de pontos alcançáveis com aplicação do operador de movimento (fitness landscapes), os quais afetam a eficiência 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} simétrica e valores equiprováveis h g e d a f c b UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

12 Busca Local Pontos localmente ótimos para uma estrutura de vizinhança podem não ser para outra, exceto se localmente ótimo. Variações: Pode-se aplicar a busca ao espaço de busca ou espaço de soluções; Ajustando o número de iterações a serem realizadas pela busca local; Busca local pode ser aplicada: - a população total; - para o indivíduo mais apto; - para o indivíduo menos apto; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

13 Lamarckianismo e Efeito Baldwin
Lamarckiano se as características adquiridas durante seu tempo de vida são herdadas por sua prole. ex: substituir o indivíduo com vizinho mais apto. Baldwiniano se o processo evolucionário for guiado pelas adaptações favoráveis sem que as modificações nas aptidões dos indivíduos, devido a aprendizagem ou desenvolvimento, se convertam em mudanças de características genéticas. ex: indivíduo recebe aptidão (mas não genótipo) do vizinho mais apto. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

14 Estrutura de um Algoritmo Memético
POP. INICIAL GRUPO DE REPRODUÇÃO DESCENDENTE -Soluções conhecidas -Heurística -Inicialização Seletiva -Busca Local Cruzamento Mutação Uso de informações de um problema específico No operador Busca Local Seleção modificada de operadores Seleção UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

15 Estrutura de um Algoritmo Memético Inicialização Heurística ou Inteligente
Um conhecimento existente pode ser incorporado ao AE na fase de inicialização. benefícios por iniciar AEs com soluções existentes: – Evitar a perda de esforço computacional refletindo aumento de eficiência (velocidade); – Direcionar busca para regiões promissoras do espaço de busca levando a aumentar efetividade; – Dividir o esforço computacional entre inicialização heurística e busca evolucionária pode gerar melhores resultados do que gastar todo o esforço em busca evolucionária apenas; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

16 Estrutura de um Algoritmo Memético Inicialização Heurística ou Inteligente
Maneiras de se alterar a função inicialização: Seeding (Semeadura): semeia a população com uma ou mais soluções boas a partir de outras técnicas (tentativa e erro, heurísticas usando informações de instância específica); Inicialização seletiva: gera-se grande número de soluções aleatórias e seleciona-se a população inicial a partir delas: - Realizar N torneios de tamanho k; - Selecionar um conjunto baseado na força e diversidade. Realizar busca local em cada membro da população (aleatoriamente), formando um conjunto de indivíduos localmente ótimos. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

17 Estrutura de um Algoritmo Memético Inicialização Heurística ou Inteligente
Maneiras de se alterar a função inicialização: Empregar um ou mais métodos anteriores para identificar uma ou mais boas soluções, e então clonar e aplicar mutação com altas taxas (mass mutation) para formar um número de indivíduos na vizinhança do ponto inicial. Efeito de se variar a proporção da população inicial : -Uso de pequena proporções das soluções na população inicial auxilia na busca genética; -Performance média melhora com o aumento da proporção; -Melhor performance vem de uma população inicial mais aleatória. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

18 Estrutura de um Algoritmo Memético Hibridização com Operadores de Variação
Operadores inteligentes de variação incorporam conhecimento específico da instância ou do problema, uma forma de introduzir tendência dentro dos operadores: Exemplo 1: Aumentar a probabilidade de escolha de características mais compactas para emprego em um classificador. Exemplo 2: Genes codificando instruções de microprocessador de modo a serem agrupados em conjuntos de efeitos similares. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

19 Estrutura de um Algoritmo Memético Hibridização com Operadores de Variação
Uso de conhecimento específico do problema: Incorporação de uma fase de busca local dentro de um operador de recombinação. Ex.: Testar todas as possíveis orientações dos dois fragmentos de estrutura de uma proteína “separados” pelo ponto de cruzamento e pegar a mais favorável. Se nenhum ajuste possível for encontrado é escolhido outro ponto de cruzamento. Uso de conhecimento específico da instância: Operadores recebem heurística muito específica. Ex.: Operador DPX para TSP, preserva a diversidade evitando convergência prematura. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

20 Estrutura de um Algoritmo Memético Busca Local na Saída de Operadores de Variação
Consiste de uma ou mais fases de melhora no indivíduo da população durante o ciclo AE; A busca Local atua sobre toda solução criada pela mutação ou recombinação, pode ocorrer em fases distintas do ciclo; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

21 Estrutura de um Algoritmo Memético Busca Local na Saída de Operadores de Variação
Krasnogor – para reduzir o pior caso de execução, é preciso escolher uma busca local em que o operador movimento é diferente dos operadores da recombinação e mutação. Implica em diversificação dos pontos gerados, a qual é melhorada com altas taxas de mutação ou uso de operadores com estruturas de vizinhança distintas UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

22 Estrutura de um Algoritmo Memético Hibridização no Mapeamento genótipo - fenótipo
Usado no mapeamento antes da avaliação da aptidão; Ex: Uso de conhecimento específico da instância dentro do decodificador ou da função de reparo. Problema da mochila. Uma linha comum destas aproximações é fazer uso de heurísticas existentes e informações do domínio onde possível. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

23 Problemas de Projetos em Algoritmos Meméticos
AMs não são “soluções mágicas” para problemas de otimização. Deve-se tomar cuidado com: –Diversidade da população. –Escolha dos operadores. –Uso do conhecimento adquirido durante o processo de otimização. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

24 Preservação de Diversidade
O problema da convergência prematura. Técnicas para combater este problema: - Usar somente uma proporção pequena de boas soluções conhecidas na população inicial. - Usar operadores de recombinação que são projetados para preservar diversidade (como Merz’s DPX). - Modificar operador de seleção para prevenir duplicações. - Usar um método de Boltzmann (Simulated anneling) para o operador de seleção ou o critério de aceitação da busca local. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

25 Preservação de Diversidade
Manutenção do sucesso de diversidade para população pode ser justificado: O cruzamento DPX de Merz explicitamente gera indivíduos que são eqüidistantes para cada pai, tendo a mesma distância entre os pais. Operador adaptativo de Boltzmann, por Krasnogor, usa critério de aceitação de novo indivíduo baseado no cozimento simulado. A temperatura é inversamente proporcional à diversidade da população. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

26 Critério de Boltzmann A dinâmica induzida é tal que:
População é diversa - espalhamento da aptidão é alto, portanto temperatura é baixa, então aceita apenas de movimentos melhores em relação à aptidão (Explotação). População é pouco dispersa, portanto, temperaturas altas, mais provável a aceitação de movimentos que pioram a aptidão (Exploração). UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

27 Escolha dos operadores
O fator Principal no projeto de um AM é: - Escolha da heurística de melhoramento ou do operador de movimento da busca local. - A escolha do operador de movimento pode ter efeito dramático na eficiência e na efetividade da busca local. - Vantagens em usar busca local com um operador de movimento que é diferente dos operadores de movimento usados pela mutação e pelo cruzamento. - Podem-se disponibilizar múltiplos operadores de busca local, escolhendo-se qual a ser aplicado em cada caso. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

28 Uso do Conhecimento AM concentram o uso e o reuso de conhecimento ganho durante o processo de otimização (automático ou não) Tabu search – Lista de Pontos visitados é mantido para proibir que o Algoritmo retorne a estes (mantém a diversidade). A seleção/aceitação de Boltzmann utiliza o espalhamento do genótipo da população atual ou passada, para decisão de aceitação de novas indivíduos. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

29 Resumo sobre Algoritmos Híbrido
São utilizados em diversos problemas ; Pode envolver operadores de outros algoritmos ou incorporar um domínio específico do conhecimento do problema. AMs têm se mostrado mais rápidos e mais precisos do que os AGs sobre alguns problemas Deve-se controlar a escolha dos operadores e cuidar da preservação da diversidade com o objetivo de fugir de ótimos locais. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

30 Exemplo: Problema “Timetabling”
Atribuição de horários e salas para cursos para restrições: Hard: - Estudantes não podem ser atribuídos a mais de um curso ao mesmo tempo; - A sala deve satisfazer características requeridas pelo curso; - O número de estudantes ≤ a capacidade da sala; - Não mais do que um curso é atribuído a um horário por sala; Soft: - Um estudante tenha um curso no último horário; - Um estudante tem mais do que 2 cursos consecutivos; - Um estudante tem um único curso em um dia; UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

31 Problema “Timetabling”
O problema possui: -Um conjunto de N cursos; -45 horários -Um conjunto de R salas; -Um conjunto de F sala a -Um conjunto de M estudantes; O objetivo do problema é satisfazer a restrição hard e minimizar a violação das restrições soft. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

32 Problema “Timetabling”
A técnica usada é um operador de mutação leve (light) por um algoritmo de melhora interativa aleatória. Representação: direta, cada gene contém informação sobre horário e sala para um curso particular (ci), i {1,..,N). População inicial: usa um algoritmo de construção que gera timetables aleatórios, 100 indivíduos. Seleção de indivíduos para nova população: Roulette Wheel. Mutação: aleatória sobre 20% dos cursos de 20% dos indivíduos selecionados. Busca Aleatória: Randomised Iterative Improvement Algorithm, sempre aceita uma solução melhor e uma pior com certa probabilidade (critério de monte carlo ). Condição de Terminação: Após rodadas. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

33 Problema “Timetabling” Algoritmo:
POPULAÇÃO SELEÇÃO MUTAÇÃO ROULETTE WHEEL BUSCA LOCAL: Ramdomised iterative improvement GRUPO DE SELEÇÃO UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos

34 Referência 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 (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 , April 1999. UFRJ – COOPE /05/2012 Algoritmos Evolucionários Híbridos


Carregar ppt "Algoritmos Evolucionários Híbridos (Meméticos)"

Apresentações semelhantes


Anúncios Google