O PROBLEMA DE SCHEDULING EM JOB-SHOP

Slides:



Advertisements
Apresentações semelhantes
Unidade VII Algoritmos Genéticos
Advertisements

Algoritmos Genéticos Teresa B. Ludermir.
Busca Informada Parte 3 – Algoritmos Genéticos
Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ
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.
Origem O Problema de Steiner em Grafos é derivado do Problema Euclideano de Steiner, proposto na verdade por Fermat no século XVII. O problema em sua versão.
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008.
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.
Algoritmos Genéticos Alex F. V. Machado.
Métodos Heurísticos de Busca e Otimização
Computação Evolucionária
GRASP Greedy Randomized Adaptative Search Procedure
Adriano Joaquim de O Cruz
ÉLDMAN DE OLIVEIRA NUNES E AURA CONCI INSTITUTO DE COMPUTAÇÃO UFF
Implementação de AG no Balanceamento Interativo de Linhas de Montagem
Algoritmos Genéticos Marcone Jamilson Freitas Souza
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
Reconhecimento de Padrões Computação Evolutiva
Algoritmos Genéticos Jorge H. C. Fernandes Setembro de 1998.
Inteligência Artificial
Algoritmo Genético.
Algoritmos Genéticos Prof. Luis Otavio Alvares II/UFRGS
O PROBLEMA DE SCHEDULING EM JOB-SHOP
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Inteligência Artificial Câmpus de Uruguaiana - PUCRS
Algoritmos Genéticos Rômulo Ferreira Douro.
Apresentação Introdução à Programação Genética Título :
Algoritmos Genéticos - Capítulo 10 Representação Numérica
Eduardo do Valle Simões Renato Tinós ICMC - USP
INF 1771 – Inteligência Artificial
Métodos Populacionais
Problemas Numéricos com Representação por Números Reais
Controle de parâmetros em algoritmos evolucionários
Otimização Prof. Benedito C. Silva IRN UNIFEI
Inteligência Artificial I
Conceitos Dr Anderson Dias Cezar
Métodos Populacionais
Sistemas Inteligentes
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Anne Magály de PaulaCanuto DIMAp/UFRN
Algoritmos Evolutivos Algoritmos Genéticos Introdução
Algoritmos Genéticos Ricardo Prudêncio.
INF 1771 – Inteligência Artificial
PROBLEMA DO EMPACOTAMENTO
Inteligência Artificial
II. METODOLOGIA Ambas as antenas, PIFA modificada e BFMA, foram analisadas numericamente empregando as equações integrais dos potenciais em conjunto com.
Orientador: Dr. Marcos Marcelino Mazzucco
O PROBLEMA DE SCHEDULING EM JOB-SHOP
* Cadeias formadas por três símbolos: 0, 1, e * * O símbolo * (um curinga) significa 0 ou 1.
Resolução de problemas por meio de busca
Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos Aurora Pozo Pós-graduação em Informática, Pós-graduação em Métodos Numéricos.
Parcelas Espécies Definir áreas protegidas. cobertura.
Inteligência Artificial I
Optimização Os problemas de optimização têm como objetivo maximizar ou minimizar uma função definida sobre um certo domínio Optimizar (max ou min)
Revisão de Sistemas Inteligentes
Projeto de um Algoritmo Genético Híbrido para Planejamento Operacional de Curto Prazo de Minerações a Céu Aberto Robert Fabricio Subtil.
Algoritmos Genéticos Ricardo Prudêncio.
Inteligência Artificial
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.
Sistemas Inteligentes Algoritmos de Melhorias Iterativas (Otimização)
Algoritmos Genéticos ÝIntrodução ÝHistórico ÝAlgoritmo Genético Básico: 3Representação de um indivíduo 3Função de aptidão 3Operadores genéticos 3Critério.
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
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 Otimização por Algoritmos Genéticos: Introdução Prof. Marco Aurélio C. Pacheco.
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:

O PROBLEMA DE SCHEDULING EM JOB-SHOP SOLUÇÃO POR APROXIMAÇÃO Algoritmo genético: definições e características básicas Tópicos Especiais em Logística e Transportes Me. Rogério Malta Branco

Estrutura do trabalho 1. Introdução 1.2. O problema de job-shop scheduling 1.2.1. Representação por grafos disjuntivos 1.2.2. Construção de escalas 1.2.3. Representação binária 2. Técnicas para solucionar os JSSP 2.1. Soluções ótimas 2.2. Soluções aproximadas 2.2.1. Regras de despacho 2.2.2. Metaheurísticas 2.2.2.1. Algoritmos genéticos 2.2.2.2. Simulated annealing 2.2.2.3. Outros procedimentos de busca local e modelos híbridos 2.2.3. Outras soluções não ótimas 2.4. Conclusões 3. Algortimos genéticos 3.1 Conceitos básicos 3.2 Algoritmo genético simples 3.3 O procedimento de um algoritmo genetico simples 4 Um algoritmo genético simples no problema de scheduling de job-shop 4.1 Codificação genética de uma solução de schedule 4.2 Harmonização local 4.3 Harmonização Global 4.4 Forcing 4.5 Algoritmo genético simples para o Job-shop 4.6 Limitações para uma aproximação simples ......

Meta-heurísticas Simulated Annealing (tempera simulada) Colônia de formigas Tabu search Fast Local Search (Hill climbing) Guided Local Search (refinamento) Algoritmos genéticos

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Algoritmos genéticos Sua origem advém dos trabalhos desenvolvidos por John Holland (1962 e 1970). São métodos de busca probabilística inteligentes baseados em mecanismos de seleção e evolução natural. Holland (1972 e 1975) utilizou símbolos binários (0,1) em estruturas semelhantes aos cromossomos. GOLDBARG & LUNA(2000)

Algoritmos genéticos Os objetivos de Holland eram fundamentar uma teoria geral de sistemas de adaptação robusta. Acabou por encontrar um caminho de grande e imediata aplicação prática na determinação de máximos e mínimos de funções matemáticas. As operações com funções matemáticas facilitaram a utilização dos AGs no meio acadêmico. GOLDBARG & LUNA(2000)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Objetivo Tentar melhorar as qualidades genéticas de uma população através de um processo de renovação iterativa das populações SOUZA(2006)

Características Método de busca populacional, i.e, parte de um conjunto de soluções, aplicando sobre estes operadores que visam à melhoria desse conjunto Fundamentam-se em uma analogia com processos naturais de evolução, nos quais, dada uma população, os indivíduos com características genéticas melhores têm maiores chances de sobrevivência e de produzirem filhos cada vez mais aptos, enquanto indivíduos menos aptos tendem a desaparecer SOUZA(2006)

Características As características dos indivíduos, registradas em seus genes, são transmitidas para seus descendentes e tendem a propagar-se por novas gerações Características dos descendentes são parcialmente herdadas de seus pais (Crossover) e parcialmente de novos genes criados durante o processo de reprodução (Mutação) SOUZA(2006)

Representação Genótipo = {0,1}L Fenótipo 10010001 10010010 010001001 Codificação (representação) 10010001 10010010 010001001 011101001 Decodificação (representação inversa) EIBEN & SMITH (2006)

AG x Problema de Otimização Indivíduo Solução de um problema População Conjunto de soluções Cromossomo Representação de uma solução Gene Parte da representação de uma solução Crossover / Mutação Operadores de busca SOUZA(2006)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Estrutura de um AG básico Gere uma população inicial Avalie a população Critérios de parada satisfeitos? Sim Liste os melhores indivíduos Não Selecione os pais Crossover Mutação Avalie a população Defina a população sobrevivente Geração de uma nova população SOUZA(2006)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Função de aptidão Avalia os cromossomos (fitness) Em um problema de maximização pode ser a própria função objetivo Em um problema de minimização pode ser o complemento da função objetivo, ou seja, (-1*fobj) SOUZA(2006)

Função de aptidão : exemplo para problema de minimização Função: f(x,y)=x.sen(4x)+1.1 y sen(2.y) Domínio: 8<x<10 e 8<y<10 Precisão; 2 casas decimais >>x=8:0.05:10; >>y=x; >>[yy,xx] = meshgrid(y,x); >>fx=xx.*sin(4*xx)+1.1*yy.*sin(2*yy); >>meshc(xx,yy,fx); SARAMAGO (2003)

Função de aptidão I=10-8=2, mas com 2 casas decimais; I= 2.102casas = 2.100 = 200 intervalos; Cada gene irá representar estes intervalos; 27=128 < 200 < 28=256 Solução: empregar, para cada variável, 8 bits na representação de escalas de 200 inervalos. Cada gene é um vetor binário de m bits, sendo m função da precisão exigida. Baseado no exemplo de SARAMAGO (2003)

Função de aptidão Fase 1: Decodificação binária ex: 001100112 = 5110 Fase 2: Ajuste da escala (int p/ real) ex: x =13310 onde Sscale= 8 e Escale= 10 Baseado no exemplo de SARAMAGO (2003)

Função de aptidão 25510 10 Regra de 3: 255 – 2 133 – x X=2.133/255 Como a escala inicia em 8, faz-se o ajuste: X=1,04+8 X=9,04 13310 9,04 256inteiro 2real 010 08 Baseado no exemplo de SARAMAGO (2003)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Seleção de indivíduos: sobrevivência e morte Como selecionamos os cromossomos que devem sobreviver? Sobrevivem os que possuem os melhores níveis de aptidão? É importante permitir também a sobrevida de cromossomos menos aptos, do contrário o método ficaria preso em ótimos locais Elitismo SOUZA (2006)

Seleção de indivíduos Princípio básico para o direcionamento da evolução de uma dada população Utiliza uma função de avaliação para medir a aptidão de cada indivíduo Essa aptidão pode ser absoluta ou relativa Existem vários métodos de seleção SOUZA (2006)

Seleção de indivíduos: métodos Roleta Torneio Aleatório, etc... LOPES (2006)

Método da Roleta Coloca-se os indivíduos em uma roleta, dando a cada um uma “fatia” proporcional à sua aptidão relativa Roda-se a roleta. O indivíduo em cuja fatia a agulha parar permanece para a próxima geração Repete-se o sorteio tantas vezes quanto forem necessárias para selecionar a quantidade desejada de indivíduos LOPES (2006)

Roleta - Exemplo LOPES (2006) Indivíduo Aptidão Absoluta Aptidão Relativa 1 2 0,052631579 4 0,105263158 3 5 0,131578947 9 0,236842105 18 0,473684211 Total 38 LOPES (2006)

Seleção de indivíduos: métodos Roleta Torneio Aleatório, etc... LOPES (2006)

Método do Torneio Utiliza sucessivas disputas para realizar a seleção Para selecionar k indivíduos, realiza k disputas, cada disputa envolvendo n indivíduos escolhidos ao acaso O indivíduo de maior aptidão na disputa é selecionado É muito comum utilizar n = 3 LOPES (2006)

Torneio - Exemplo Indiv 1, Indiv 2, Indiv 4 Indiv 4 LOPES (2006)

Seleção de indivíduos: exemplo Gera-se n=6 (tam. população) números aleatórios. Observa-se que: r1 > q1; r1 > q2; r1 < q3; => C3 selecionado. De forma análoga, aplica-se os demais valores aleatórios gerados. São portanto selecionados: C3, C1, C3, C5, C5, C4. Depois de selecionados, dão origem a uma nova população, a ser submetida agora aos operadores genéticos CROSSOVER e MUTAÇÃO. Baseado no exemplo de SARAMAGO (2003)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Operadores genéticos CROSSOVER MUTAÇÃO SOUZA (2006)

Operadores genéticos Reprodução (crossover) Mutação Clonagem, etc...

Operador de Cruzamento Também chamado de reprodução ou crossover Combina as informações genéticas de dois indivíduos (pais) para gerar novos indivíduos (filhos) Versões mais comuns criam sempre dois filhos para cada operação LOPES (2006)

Operador de Cruzamento Operador genético principal Responsável por gerar novos indivíduos diferentes (sejam melhores ou piores) a partir de indivíduos já promissores Aplicado a cada par de indivíduos com alta probabilidade (normalmente entre 0,6 e 0,99) LOPES (2006)

Abordagens para Cruzamento Cruzamento Um-Ponto Cruzamento Multi-Pontos Cruzamento Uniforme LOPES (2006)

Cruzamento Um-Ponto 1 Pais Filhos 1 LOPES (2006)

Cruzamento Multi-Ponto 1 Pais Filhos 1 LOPES (2006)

Cruzamento Uniforme 1 Pais Máscara Filhos 1 LOPES (2006)

Cruzamento : exemplo Geram-se números aleatórios para cada novo indivíduo da população. Estima-se também um valor para probabilidade de cruzamento (Pc=0.25). Se randi > Pc então Indivíduo Ci não selecionado, Senão Indivíduo Ci selecionado. No exemplo acima selecionou-se C3 e C6. Gera-se, de forma aleatória o ponto K de corte: k=1+rand.[m-1)-1] Ou seja: k= 1 + 0,7. [(16-1)-1] = 1+0,7.14 = 10,8 = 11 Baseado no exemplo de SARAMAGO (2003)

Cruzamento : exemplo Baseado no exemplo de SARAMAGO (2003)

Operadores genéticos Reprodução (crossover) Mutação Clonagem, etc... LOPES (2006)

Operador de Mutação Operador randômico de manipulação Introduz e mantém a variedade genética da população Garante a possibilidade de se alcançar qualquer ponto do espaço de busca Contorna mínimos locais Opera sobre os indivíduos resultantes do processo de cruzamento LOPES (2006)

Operador de Mutação É um operador genético secundário Se seu uso for exagerado, reduz a evolução a uma busca totalmente aleatória Deve atuar com probabilidade baixa (normalmente entre 0,001 e 0,1) LOPES (2006)

Operador de Mutação 1 1 LOPES (2006)

Exemplo de Mutação Baseado no exemplo de SARAMAGO (2003)

Exemplo de Mutação Para a população final pós-operadores, o processo é reiniciado até ser encontrado o critério de parada. Baseado no exemplo de SARAMAGO (2003)

Estrutura Introdução Objetivo e características dos AGs Estrutura básica de um AG (fluxograma) Função de aptidão Seleção de indivíduos Operadores genéticos Parâmetros genéticos

Parâmetros Genéticos Tamanho da população Taxa de cruzamento Taxa de mutação Intervalo de geração Critério de parada LOPES (2006)

Referências EIBEN, A.E. & SMITH, J.E., Apresentação: Introduction to Evolutionary Computing: Genetic Algorithms, http://www.cs.vu.nl/~jabekker/ec0607/slides/Lecture03-Chapter3-GeneticAlgorithms.ppt ,acessado em 19/10/2006. GOLDBERG, D. Genetic algorithms in search, optimization and machine learning. Addison-Wesley, 1989. GOLDBARG, M. C. e LUNA, H. P. L., Otimização Combinatória e Programação Linear: modelos e algoritmos, Rio de Janeiro: Editora Campus, 2000. LOPES, L. R. M., Apresentação: Fundamentos de Algoritmos Genéticos, www.cos.ufrj.br/~ines/courses/cos740/leila/cos740/Algoritmos%20Geneticos.ppt ,acessado em 19/10/2006. PITTMAN, J. , Apresentação: Genetic Algorithm for Variable Selection, Universidade Duke, http://www.niss.org/affiliates/proteomics200303/presentations20030306/04% 20Jennifer.ppt acessado em 19/10/2006. SOUZA, M. J. F., Apresentação: Algoritmos genéticos. http://www.iceb.ufop.br/prof/marcone acessado em 19/10/2006.