População inicial - GAs e MAs Aleatória ou com uma heurística de construção válido para GAs e MAs –perturbação para gerar diferentes indivíduos. –perturbação.

Slides:



Advertisements
Apresentações semelhantes
Parte II - Sistemas de Aprendizado: Overview Seminários 2007 – 2º Semestre Maíra Gatti.
Advertisements

Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008.
CONCEITOS BÁSICOS DA META-HEURÍSTICA TABU SEARCH
Fundamentos dos Algoritmos Genéticos Alex F. V. Machado.
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
GRASP Greedy Randomized Adaptative Search Procedure
Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná
PROBLEMA DE ROTEAMENTO DE VEíCULOS COM DIVISÃO DE ENTREGA
Árvores.
Grafos – Parte 1 Projeto e Análise de Algoritmos Aline Vasconcelos
Dárlinton B. Feres Carvalho
Algoritmos Genéticos Marcone Jamilson Freitas Souza
Computação Evolutiva: Programação Genética
Computação Evolutiva: Estratégias Evolutivas
Algoritmos Genéticos Jorge H. C. Fernandes Setembro de 1998.
Inteligência Artificial
WAR STORY Stripping Triangulations Luciana Oliveira e Silva
Otimização por Colônias de Formigas – ACO (Ant Colony Optimization)
Algoritmos Genéticos Rômulo Ferreira Douro.
Algoritmos Genéticos - Capítulo 10 Representação Numérica
INF 1771 – Inteligência Artificial
Métodos Populacionais
Problemas Numéricos com Representação por Números Reais
Meta - heurísticas Prof. Aurora
Otimização Prof. Benedito C. Silva IRN UNIFEI
Informática Teórica Engenharia da Computação
Aula prática 6 Vetores e Matrizes
Otimização por Colônia de Formigas (ACO)
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Desempenho de Algoritmos Genéticos
Tópicos em otimização combinatória
Otimização Inteira 5a. Aula Franklina.
Conceitos Básicos Alysson e Franklina 2ºs/
Traveling Salesman Problem: Alguns métodos heurísticos
Métodos Populacionais
Introdução aos Agentes Inteligentes Busca Cega (Exaustiva)
Introdução aos Agentes Inteligentes Busca Heurística (Informada)
Algoritmos de Busca Local
Algoritmos Evolutivos Algoritmos Genéticos Introdução
Tópicos Avançados em Inteligência Artificial
Técnicas de Busca Heurística Problemas da IA complexos demais para serem solucionados por técnicas diretas: criam-se técnicas de busca aprorpiados; chamados.
Algoritmos Genéticos Ricardo Prudêncio.
Disciplina Análise de Algoritmos BCC-UFU Profa. Sandra de Amo
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Inteligência Artificial
Orientador: Dr. Marcos Marcelino Mazzucco
Busca Combinatorial e Métodos de Heurística
Inteligência Artificial
Provas Datas: – P1 : 18/09/2014 – P2: 18/11/2014 – Exame : 09/12/2014.
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Análise de Algoritmos Informações Gerais da Disciplina
Problemas NP-completos e Programação Dinâmica
Algoritmos de aproximação
Algoritmos FPT para o Problema da k-Cobertura por Vértices
Artigo: Berth allocation planning in the public berth system by genetic algorithms Akio Imai, Etsuko Nishimura, Stratos Papadimitriou, Heurística.
Problemas em DLS, são todos NP-Hard ? Pela definição anterior, a resposta é `Não´. Vejamos alguns: O TSP é um problema DLS. Seja n o número de arestas.
Algoritmos Genéticos Ricardo Prudêncio.
Inteligência Artificial
Mailson Felipe da Silva Marques Johnson Cordeiro Sarmento
Computação Evolutiva Nome dado ao estudo de algoritmos cuja inspiração é o processo de evolução natural das espécies. Origem: trabalho de um pesquisador.
Como ir do tableau da base (j 1,...j s-1,j s, j s+1....j m ) para o da base (j 1,...j s-1,k, j s+1....j m ) lembrando que : na coluna associada à x ji.
Algoritmos Genéticos Uma visão geral do método Cláudio M. N. A. Pereira.
Taís Sineiro Herig Laboratório de Genômica e Expressão / UNICAMP
1 Algoritmos Genéticos em Otimização de Planejamento l Planejamento ocorre em todas as atividades e envolve: PLANEJAMENTO Recursos Tarefas Tempo Objetivos.
Busca Heurística Prof. Valmir Macário Filho. 2 Busca com informação e exploração Capítulo 4 – Russell & Norvig Seção 4.1 Estratégias de Busca Exaustiva.
Métodos Populacionais. Mantém um conjunto de soluções candidatas e não só uma solução Cada solução será modificada e avaliada Hill-Climbing paralelos.
1 Problemas Numéricos com Representação por Números Reais Prof. Marco Aurélio C. Pacheco.
Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 10 Algoritmos Genéticos Max Pereira.
Transcrição da apresentação:

População inicial - GAs e MAs Aleatória ou com uma heurística de construção válido para GAs e MAs –perturbação para gerar diferentes indivíduos. –perturbação anterior nos dados de entrada da heurística -> construção de diferentes soluções. nos MAs Efeitos transitórios... –Causa: ótimos locais dos processos de busca podem ser bons, mas muito “distantes” entre eles.

Estrutura da População Idéia básica: Aproveitar o ‘isolamento por distância´ entre indivíduos para diminuir o problema de perda de diversidade. Conceito importante: deriva genética (“random genetic drift”) migração Tarefa: veja o que acontece se num GA que você tenha já implementado para um problema X a função de fitness é constante para todo fenótipo...

Políticas de reprodução em MAs Escolha dos pais totalmente aleatória. Aleatória mais relacionada com o valor de fitness Otimalidade de Pareto. Crise de diversidade modifica a seleção. quando há estrutura, migração pode ser uma boa alternativa (ver por exemplo os artigo de Martina Gorges-Schleuter, Mülhenbein, Markus Schwem).

13 agentes  2 cromossomos  Pocket e Current. para todo agente, pocket é sempre melhor que current. agentes 2, 3, e 4 são a sua vez líderes e subordinados. se pocket subordinado melhor que pocket do líder então troca de solução pocket de 1 terá a melhor solução solução pocket/fitness solução current/fitness Exemplo de uma estrutura de população

PocketPropagation() e um processo de migração. Agentes usavam três diferentes heurísticas (2-opt, one-city insertion, e two-city insertion ). Soluções modificavam-se ao subir na hierarquia –exemplo: agentes 10 -> 3 -> 1... –Transputers (necessidade e inspiração) solução pocket/fitness solução current/fitness Moscato - Tinetti (`92, MA para o TSP)

Recombinação com “personalidade” ou “behaviour” Berretta & Moscato, in “New Ideas in Optimization”, Corne, Glover, and Dorigo (eds.), McGraw-Hill, `99 »R e um operador de recombinação “parametrizado” conciliador : R(A [ ], B [ ] ) -> [x 0 1 x x] -> yc rebelde:R(A [ ], B [ ] ) -> [1 x x 1 0] -> yr bajulador:R(A [ ], B [ ] ) -> [0 x x 0 1] -> yb Propriedade:d(yc,A)  d(A,B) para tudo yc Notar que para yr = [ ] d(yr,A) = 5, então em geral o comportamento “rebelde” e “bajulador” não satisfazem a propriedade acima. Em geral GAs só têm tipo conciliador -> perda de diversidade

Recombinação com “behaviours” para o TSP ? »R e um operador de recombinação “parametrizado” conciliador : input (A, B) -> [arcos em A  B] -> yc rebelde:input (A,B) -> [arcos em B-A] -> yr bajulador:input (A,B) -> [arcos em A-B] -> yb Propriedade:d(yc,A)  d(A,B) para tudo yc ainda é válida ? Caso 1: d(A,B) = n - |A  B| onde ‘n´ é o número de cidades. Caso 2: d(A,B) = n - # de “corners comuns”

DPX para o TSP (Merz & Freisleben, `96) Objetivo: Recombinação que colabora com uma busca local poderosa (baseada no algoritmo de Lin-Kernighan) Problema: Mínimos locais do algoritmo de Lin-Kernighan têm muitas arestas semelhantes. Recombinações que não tenham em conta esse fato dão MAs com grandes perdas de diversidade (performance ruim). Solução:Proibir arestas em (A-B)  (B-A) ! Incluir todas as arestas em (A  B) Propriedade:d(y,A) = d(A,B) Resultado: Excelente! (com estruturas de dados adicionais)

Strategic Edge Crossover Introduzido por Norman & Moscato, ´92 baseado no Edge Recombination (Whitley, ´91) Composto por quatro fases: é seleção de dois tours A e B para recombinação; é construção do EdgeMap; é geração das strings provenientes de arcos de A e B; é união destas para obter um novo tour factível. é Karp´s patching heuristic !!

SAX, o seu ArcMap (Buriol, França, & Moscato)

CreateString e PatchString Strings provenientes de arcos de A e B: geradas pelo procedimento chamado CreateString. Algoritmo PatchString: factibiliza a rota.

MFNNRER (Holstein & Moscato, `98) MFNNRER = Multiple Fragment with Nearest Neighbour Repair Edge Recombination 1) Procure todas as arestas em S=A  B e as inclua no filho 2) Ordenar as arestas em (A  B) - S = (A-B)  (B-A) em ordem crescente de comprimento (desempate aleatório). 3) Começando pela primeira da lista, tente colocá-las no filho considerando: a) nenhuma cidade deve ter três arestas incidentes nela. b) não deve ser formado um “subtour” 4) Rodar Nearest Neighbour tendo como “input” as cidades que só tem grau 0 ou 1 nas cadeias formados no passo 3.

Por que tantos tipos de recombinação ? Na verdade, todas os tipos de recombinações respondem a uma estratégia mais geral. 1) Procure algum tipo de semelhança entre as duas soluções A e B, chame de S=A  B esse conjunto e o inclua no filho 2) Defina dois conjuntos S(in) e S(out) de características desejadas e não desejadas (eles podem ser vazios). 3) Restrito a observar a presença dos elementos de S, tente achar uma nova solução factível do problema que maximize (respectivamente, minimize) os elementos de S(in) (respectivamente, S(out)).

Por que tantos tipos de recombinação ? (continuação) Nos exemplos anteriores: MFNNRER foi usado no contexto de um MA com uma busca local muito simples (2-opt). SAX está sendo estudado num MA com uma busca local que é restrita a uma vizinhança do (3-opt). SAX e MFNNRER tentam priorizar as arestas presentes nas duas soluções pais. Fato: dois tours 2-opt tem em média 66 % de arestas comuns (“sede” de intensificação). DPX explicitamente proíbe as arestas que não estão na interseção (“sede” de diversidade pela busca local LK).

Novos problemas de otimização combinatória !! A recombinação pode então ser vista como uma forma heurística de resolver aproximadamente um novo tipo de problemas de otimização combinatória !!! THIRD (BETTER-THAN-WORST) HAMILTONIAN CYCLE Instância: Grafo G(V,E,W), e dois ciclos C1 e C2 em G, com C1  C2, e sem perda de generalidade Long(C1)  Long(C2). Pergunta:  algum outro C´, ciclo hamiltoniano em G, com C´  C1 e Long(C´) < Long(C2) ? Complexidade computacional desconhecida !!! (NP-completo ?) Isto significa.... Temos emprego garantido ! (não só MAs ajudam a resolver problemas NP-hard... No mesmo processo ajudamos a criar novos !!)

Velhos conhecidos na otimização combinatória É muito provável que a recombinação também possa fazer refletir sobre a relevância de “velhos conhecidos” problemas de otimização combinatória !!! RESTRICTED HAMILTONIAN CYCLE (RHC) Instância: Grafo G(V,E) e um caminho Hamiltoniano P em G. Pergunta:  algum ciclo hamiltoniano em G ? Complexidade computacional conhecida !!! É NP-completo... (veja Papadimitriou & Steiglitz, Combinatorial Optimization, Chapter 19, pp ). Isto significa.... Talvez exista alguma Karp-redução de RHC a nosso problema anterior que mostre que ele é NP-Completo.

MAs for Single Machine Scheduling (with set-up times and due dates) Mendes, França, Moscato O Problema é definido como: Input: n tarefas tem que ser processadas em uma máquina. p = {p 1,..., p n } ( vetor de tempos de processamento para cada tarefa). d = {d 1,..., d n } (vetor de datas de entrega ). –[Sij], n x n, matriz de inteiros, where Sij is the tempo de setup que a maquina precisa para começa a processar a tarefa j depois de ter completado a tarefa i. Task: Achar a permutação do conjunto de tarefas que minimize a seguinte função-objetivo onde c k é o chamado “completion time” para a tarefa k.

Algoritmo Memético baseado em busca local Initialize population Pop Return the best solution in Pop While not stop criterion do While not stop criterion do Evaluate Pop Recombine Parents Select Parents from Pop Optimize Pop

Algoritmo Memético para o SMS - Detalhes de implementação Representação -> vetor de inteiros [1,...,n] (permutações) Recombinação -> OX (Order Crossover) Pai A Pai B Filho inicial (Pai A) (Pai B) (Pai B) (Pai B) (Pai B) Filho final (Pai B)

Algoritmo Memético para SMS - Detalhes de implementação Mutação ->Troca de posição de tarefas –Exemplo  Original Mutado Função de Fitness onde T i e o atraso total para a solução i na população.