Problemas Numéricos com Representação por Números Reais

Slides:



Advertisements
Apresentações semelhantes
«Forte do Bom Sucesso (Lisboa) – Lápides 1, 2, 3» «nomes gravados, 21 de Agosto de 2008» «Ultramar.TerraWeb»
Advertisements

IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Programação em Java Prof. Maurício Braga
Unidade VII Algoritmos Genéticos
AULA 8 Profa. Sandra de Amo GBC053 – BCC
Palestras, oficinas e outras atividades
Vamos contar D U De 10 até 69 Professor Vaz Nunes 1999 (Ovar-Portugal). Nenhuns direitos reservados, excepto para fins comerciais. Por favor, não coloque.
Celso C. Ribeiro Caroline T. Rocha
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
Nome : Resolve estas operações começando no centro de cada espiral. Nos rectângulos põe o resultado de cada operação. Comprova se no final.
Estatística Descritiva Aula 02
SISTEMAS DE EQUAÇÕES.
Curso de ADMINISTRAÇÃO
PARTIÇÃO DE BENDERS Secundino Soares Filho Unicamp.
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
Implementação de AG no Balanceamento Interativo de Linhas de Montagem
Arquivos Seqüenciais Inhaúma Neves Ferraz
EXPRESSÕES ARITMÉTICAS
EXPRESSÕES ARITMÉTICAS
Otimização de Funções Contínuas via Algoritmos Genéticos Adaptado do trabalho realizado por: Frederico Heitor Mônica do Amaral.
Otimização de Funções Contínuas via Algoritmos Genéticos
Rodrigo Geraldo Ribeiro Denis Pinto Pinheiro Camila Leles Rezende
Classificação e Pesquisa de Dados
FUNÇÃO MODULAR.
Mecânica dos Sólidos não Linear
Listas Encadeadas.
PROGRESSÕES JUDITE GOMES
ESTATÍSTICA.
Renda até 2 SM.
Calculada a solução óptima
MECÂNICA - ESTÁTICA Cabos Cap. 7.
Diagnósticos Educativos = Diagnósticos Preenchidos 100% = 1.539
Bolha Posição de máx. W2 Ponto de Estagnação
Algoritmos Culturais.
CATÁLOGO GÉIA PÁG. 1 GÉIA PÁG. 2 HESTIA PÁG. 3.
Resolução de problemas por meio de busca
PROCESSOS PRINCIPAIS Alunos - Grau de Satisfação 4971 avaliações * Questões que entraram em vigor em 2011 ** N.A. = Não Aplicável Versão: 07/02/2012 INDICADORES.
Trabalho sobre Cor Thiago Marques Toledo.
Celso C. Ribeiro Caroline T. Rocha
Coordenação Geral de Ensino da Faculdade
Funcionários - Grau de Satisfação 2096 avaliações
1/40 COMANDO DA 11ª REGIÃO MILITAR PALESTRA AOS MILITARES DA RESERVA, REFORMADOS E PENSIONISTAS - Mar 06 -
Projeto Medindo minha escola.
Introdução e Busca Cega
ENGA78 – Síntese de Circuitos Digitais
1 2 Observa ilustração. Cria um texto. Observa ilustração.
PROGRAMAÇÃO MATEMÁTICA MÉTODO SIMPLEX
Anne Magály de PaulaCanuto DIMAp/UFRN
Estatística Aula 9 – 28/02/2011.
ANÁLISE ESTATÍSTICA II
Algoritmos Evolutivos Algoritmos Genéticos Introdução
1 Aplicações do Fecho Regular. 2 A interseção de uma linguagem livre de contexto e uma linguagem regular é uma linguagem livre de contexto livre de contexto.
Olhe fixamente para a Bruxa Nariguda
Máquina de Turing Universal
NOÇÕES DE PROBABILIDADE
Equipe Bárbara Régis Lissa Lourenço Lucas Hakim Ricardo Spada Coordenador: Gabriel Pascutti.
Algoritmos Genéticos Ricardo Prudêncio.
PROBLEMA DO EMPACOTAMENTO
Planilha Eletrônica - Excel
Inteligência Artificial
Compras – Planejamento de Estoque
Algoritmos Genéticos Ricardo Prudêncio.
Inteligência Artificial
1 Algoritmos Genéticos em Otimização de Planejamento l Planejamento ocorre em todas as atividades e envolve: PLANEJAMENTO Recursos Tarefas Tempo Objetivos.
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:

Problemas Numéricos com Representação por Números Reais Prof. Marco Aurélio C. Pacheco

Algoritmos Genéticos Otimização Combinatorial São problemas onde a busca da solução depende da avaliação de diversas combinações (ORDEM) dos elementos considerados Problema do Caixeiro Viajante Problemas de Planejamento Industrial Problemas de Alocação de Recursos Grafos representam relações de precedência e valores: Colorir, Particionar, Percorrer

Problema de Colorir o Grafo I-P peso índice 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4 Regras: Colorir os nós do grafo de modo a maximizar a soma total dos pesos. Pares de nós conectados por um arco não podem possuir a mesma cor

Algoritmo Guloso Considera apenas uma das possíveis soluções, colorindo os nós em ordem decrescente de peso. Nós em ordem decrescente de peso: (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Algoritmo Guloso Considera apenas uma das possíveis soluções, colorindo os nós em ordem decrescente de peso. Nós em ordem decrescente de peso: (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Algoritmo Guloso Considera apenas uma das possíveis soluções, colorindo os nós em ordem decrescente de peso. Nós em ordem decrescente de peso: (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4 Solução Ótima p/ 1 cor: (9, 4, 2)   Pi = 32

Algoritmo Guloso Considera apenas uma das possíveis soluções, colorindo os nós em ordem decrescente de peso. Nós em ordem decrescente de peso: (9, 7, 8, 4, 2, 6, 5, 1, 3) Solução Ótima p/ 2 cores: (9, 4, 2) e ( 7, 6, 5)   Pi = 32 + 26 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Aplicando o Algoritmo Guloso Nós em ordem decrescente de peso: (7, 3, 4, 1, 6, 5, 2) 2-8 1-12 3-14 6-10 7-15 4-13 5-9

Aplicando o Algoritmo Guloso Nós em ordem decrescente de peso: (7, 3, 4, 1, 6, 5, 2) Algoritmo Guloso começa e para no nó 7 2-8 1-12 3-14 6-10 7-15 4-13 5-9

Aplicando o Algoritmo Guloso Nós em ordem decrescente de peso: (7, 3, 4, 1, 6, 5, 2) Soluções Ótimas: 1 cor: (1, 5, 3) 2 cores: (2, 4, 6) 2-8 1-12 3-14 6-10 7-15 4-13 5-9

Características do Problema A modificação dos pesos, número de cores e arcos, altera radicalmente a solução do problema. Estratégias como o algoritmo guloso não funcionam bem para todos os problemas de colorir o grafo. Heurísticas (Ex: avaliar número de arcos ou pesos de nós vizinhos antes colorir um nó) podem não ser eficientes para grandes espaços de busca. Algoritmos Genéticos oferecem uma solução (sub-ótima ou ótima) para qualquer problema de colorir o grafo.

Componentes de um Algoritmo Genético 1. Problema 2. Representação 3. Decodificação 4. Avaliação 5. Operadores 6. Técnicas 7. Parâmetros

Tentando a Representação Binária Cada nó do grafo é representado por um campo (gene) no cromossoma: Símbolo do Campo  Cor do nó Podemos usar a representação binária. Para apenas 1 cor : 0  não colorido 1  colorido Cromossoma  0 1 0 1 1 0 0 0 1 Nó 1 2 3 4 5 6 7 8 9 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Avaliando Representação Binária C é um cromossoma ILEGAL. Inicialização, crossover e mutação vão gerar soluções ilegais. Seria necessário um módulo reparador de cromossomas ou eliminá-los. Além disso, representação binária permite soluções sub-ótimas: C  0 1 0 1 0 0 0 0 0 Nó 1 2 3 4 5 6 7 8 9 C ainda poderia ter o nó 6, ou 8 ou 9 colorido e ser legal. 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Representação Baseada em Ordem Algoritmo Guloso representa solução por lista ordenada GA Híbrido  Técnicas de GA + Algoritmo Guloso Algoritmo Guloso: Cria uma lista de nós (ordem decrescente de peso) Constrói a solução: atribui ao próximo nó da lista uma cor legal Algoritmo Genético Cria uma lista (nós em ordem qualquer)

Exemplo Cromossoma = lista C1 (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Exemplo Cromossoma = lista C1 (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Exemplo Cromossoma = lista C1 (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Exemplo Cromossoma = lista C1 (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Exemplo Cromossoma = lista C1 (9, 7, 8, 4, 2, 6, 5, 1, 3) 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Exemplo Cromossoma = lista C1 C2 C3 resultam na solução ótima p/ 1 cor: (9, 4, 2)   Pi = 32 Informação codificada é a ordem relativa dos nós 1-5 9-15 8-10 7-13 4-9 5-6 6-7 2-8 3-4

Operadores Genéticos Testando o Crossover de 1 ponto: F1 (9, 7, 8, 4, 2, 3, 5, 1, 8) F2 (2, 6, 7, 4, 9, 6, 5, 1, 3) Descendentes são cromossomas ilegais: nós repetidos e ausência de determinados nós. Crossover e mutação devem garantir uma lista válida de todos os nós

Modelagem do Algoritmo Genético 1. Problema Problema de Colorir o Grafo 2. Representação Permutação dos índices dos nós 3. Decodificação Da esquerda para direita, atribui uma cor válida ao próximo nó 4. Avaliação  Pi 5. Operadores Crossover Uniforme Baseado em Ordem Mutação por Embaralhamento

Crossover Uniforme Baseado em Ordem Recombina ordem e posição dos genes Dados dos genitores P1 e P2,, criar descendente F1; Gere um padrão de bits do comprimento dos genitores; Preencha F1, copiando o genitor P1 nas posições em que o padrão é igual a “1”; Faça uma lista dos elementos de P1 associados com os bits “0” do padrão; Permute estes elementos de modo que eles apareçam na mesma ordem em que aparecem em P2 ; Preencha as lacunas de F1 com os elementos ordenados no passo anterior;

Exemplo P1 P2 Padrão F1 F2 Elementos de P1 associados a “0”: 1, 4, 7, 8. Ordenados segundo P2 : 8, 4, 7, 1 Elementos de P2 associados a “1”: 6, 4, 7, 5. Ordenados segundo P1 : 4, 5, 6, 7 F1 F2

Mutação por Embaralhamento Seleciona aleatoriamente uma sub-lista do cromossoma Embaralha sub-lista

GA6-1 Módulo de Avaliação  Função de Avaliação: Avaliador do problema de colorir o grafo  Pi Módulo de População  Técnica de Representação: Lista de nós  Técnica Inicialização da População: Permutação aleatória Técnica Eliminação da População: Elimina o último Técnica de Reprodução: Steady State s/ duplicados Gap Testar de 5 em 5 Técnica de Seleção de Genitores: Roleta Técnica de Aptidão: Normalização Linear (100 a 1) Técnica de Parametrização: Interpolar taxa de incremento (0,2 a 1,2) Population Size: 100 Total de Indivíduos: 4000 Módulo de Reprodução Técnica de Seleção de Operadores: Roleta  Operadores: Crossover Uniforme Baseado em Ordem  Mutação por Embaralhamento  Técnica de Parametrização: Interpolar Pesos dos Operadores  de (60 40) a (30 70) GA6-1

Problema de Colorir o Grafo Grafo com 100 nós  100! permutações diferentes 3 cores possíveis Listagem descreve o grafo através de: (índice_n, peso, (lista de nós conectados)) (1 62 (20 58 74 82)) (2 183 (6 12 20 28 29 32 51 53 70 79 84 94)) (3 247 (1 18 24 33 50 88 92)) .................... ........... (99 254 (29 52 53 67 75 80 84 89)) (100 145 (15 20 22 29 34 44 60 87))

Busca Aleatória Muitas vezes não temos como comparar os resultados obtidos por um GA. Nestes casos, podemos usar a busca aleatória como base de comparação. Gera-se uma curva média de desempenho para a busca aleatória com o mesmo número de tentativas que o GA. Um GA com desempenhando abaixo da busca exaustiva deve provavelmente conter erros de modelagem e/ou programação.

Busca Aleatória procedure busca_aleatória begin t = 0 ; primeira geração inicializa P(t) ; população inicial aleatória avalia P(t) ; calcula f(i) p/ cada indivíduo salva_melhor de P(t) ; salva melhor indivíduo while (not total_indivíduos) do t = t + 1 ; próxima geração inicializa P(t) ; população aleatória avalia P(t) ; calcula f(i) p/ cada indivíduo compara_melhor P(t) com melhor P(t-1) salva_melhor end

Resultados do GA 6-1 GA 6-1 é em média 7,4% melhor que a busca aleatória após 4000 tentativas: média GA 6-1= 10300; média busca aleatória=9600 GA 6-1 é em média 7,4% melhor que a Algoritmo Guloso: máximo do Alg. Guloso= 9590 GA 6-2 com pop_size=1200 e total_indivíduos=10000 encontrou avaliação=10594

Conclusões Lista Solução Decodificador Representação baseada em ordem ocorre na maioria dos problemas reais que envolvem planejamento Representação estabelece ordem de alocação Lista ordenada não corresponde diretamente a um grafo colorido Decodificador transforma cromossoma em solução e permite implementar regras restritivas do problema sem alterar o GA Lista Solução Decodificador