Algoritmos genéticos e escalonamento de tarefas Job-shop: uso de regras de despacho na formação da população inicial

Tamanho: px
Começar a partir da página:

Download "Algoritmos genéticos e escalonamento de tarefas Job-shop: uso de regras de despacho na formação da população inicial"

Transcrição

1 Algoritmos genéticos e escalonamento de tarefas Job-shop: uso de regras de despacho na formação da população inicial Resumo Me. Rogério Malta Branco (UFSC/UTFPR) rmbranco@utfpr.edu.br Dr. Sérgio Fernando Mayerle (UFSC) mayerle@deps.ufsc.br Dr. Antônio Sérgio Coelho (UFSC) coelho@deps.ufsc.br O presente trabalho versa sobre a aplicação de método heurístico baseado em técnica evolutiva na busca por soluções quase-ótimas do problema de agendamento de tarefas Jobshop, de natureza combinatória e pertencente a classe NP-árduo. Construída mediante escolha de critério de formação, a população inicial pode ser elaborada de forma clássica aleatória, bem como nas propostas hibridas gulosa ou mista. Também os agendamentos são construídos por procedimentos geradores ativos e sem espera, garantindo a factibilidade das soluções. São aplicados testes envolvendo combinações de populações iniciais, taxas de reprodução e mutação e algumas considerações são apresentadas referentes a aplicação do sistema proposto em problemas. Palavras-chave: Algoritmos genéticos, Regras de despacho, Escalonamento em job-shop. 1. Introdução O problema de escalonamento de tarefas em Job-Shop (Job-shop Schedulling Problem - JSSP), consiste em um grupo de tarefas e um grupo de máquinas, que executam uma tarefa por vez. Cada tarefa é uma seqüência de operações, cada qual de tempo ininterrupto de certa magnitude, em uma dada máquina. O objetivo é alocar as operações nas máquinas no menor tempo total possível, ou seja, menor makespan. Os JSSP s e casos de escalonamentos similares são problemas de otimização combinatória, classificados como problemas NP-hard (GOLDBARG E LUNA, 2000). Apesar de existirem métodos exatos, é quase impossível resolvê-los desta forma, exceto para exemplos relativamente pequenos do problema. CARLIER E PINZON (1989) apresentam uma forma baseada em branch and bound. O emprego destas técnicas é somente de relevância teórica dada sua complexidade exponencial de tempo de execução (BRAUNE et al.,2004). Dentre as diversas técnicas envolvidas na solução dos JSSP, restringe-se o problema aos AGs e suas variantes. Muito utilizados em problemas de scheduling, esta técnica heurística demonstra maior versatilidade ante outras, dada a facilidade na codificação do espaço do problema (STORER et al 1995). Este é baseado em uma população, onde cada indivíduo passará pelas etapas tripartites do algoritmo como parte da busca por soluções ótimas: seleção, crossover e mutação (GOLDBERG, 1989). Na proposição de um algoritmo, o seu tempo de processamento computacional é fundamental e aliar a uma boa população inicial poderá significar o aumento da performance geral do método proposto. O emprego de técnicas de formação tanto aleatória como através de regras de despacho são avaliadas e comparadas. Ainda uma terceira forma de geração, conjugada das duas anteriores é considerada: geração de indivíduos de forma mista. Objetiva-se formar uma população inicial que possibilite uma convergência rápida, mas não prematura. Quanto aos operadores genéticos do algoritmo evolutivo proposto, a seleção de indivíduos emprega o método da roleta, proposto por Goldberg (1989). O operador crossover OX Order Crossover, também apresentado por Goldberg (1989), troca material genético entre os selecionados e também mantém a ordem de execução das tarefas herdadas dos pais, colaborando na formação de indivíduos válidos para o job-shop scheduling problems (JSSP).

2 Com bons resultados nos casos teóricos clássicos, a busca por soluções em casos reais fica ainda mais eminente, onde os processos produtivos reais são os verdadeiros beneficiários do aprimoramento das técnicas de solução dos JSSP. 2. O problema de agendamento em Job-shops Extensamente abordados na literatura, estes problemas de escalonamento de tarefas envolvendo m máquinas e n tarefas tem sido solucionados por técnicas exatas e heurísticas. YAMADA e NAKANO (1995) definem um agendamento como sendo a ordenação das operações que devem ser processadas numa máquina, considerando restrições de precedência. Nos JSSP, qualquer ordem de processamento para as tarefas nas máquinas é permitida. Para cada tarefa, as operações devem ser processadas em uma dada ordem nas máquinas, podendo ser diferente conforme a tarefa. A ordem das tarefas não é a mesma para todas as máquinas. YAMADA e NAKANO (1997) apresentam os Job-shops como um grupo de n tarefas {J j } 1 j n a serem processadas em um conjunto de m máquinas {M v } 1 v m. Cada tarefa tem uma seqüência tecnológica de máquinas á ser processadas. A execução da tarefa J j na máquina M v consiste na operação O j v. Tal operação requer a exclusividade de uso da máquina M v por um tempo de processamento necessariamente ininterrupto de duração P jv. É, portanto, um problema com um grupo de tempos a completar para cada operação {O jv } 1 j n, 1 v m que satisfaça as restrições do problema C={ C 1, C 2,..., C c }. O tempo para completar todas estas tarefas é chamado de makespan L. Minimizá-lo, é operar a mais utilizada função objetivo dos problemas JSSP (VÀZQUEZ e WHITLEY, 2000). Uma vez que o JSSP é de natureza combinatória, tem associado certas características. Tanto LENSTRA et al. (1977) já havia classificado este problema como NP-hard. Sua intratabilidade é enfatizada mencionando-se problemas, como o 10x10 proposto por FISHER E THOMSON (1963) só solucionado por CALIER E PINZON (1989), após uma série de algoritmos possíveis já terem sido tentados. 3. Representações dos JSSP Um scheduling comumente é visto sob a forma de grafo, onde os seus nós são as operações com atributo igual ao tempo de processamento (P ij ). Acrescentam-se os nós partida e chegada, com P ij =0. As restrições de precedência são arcos direcionais, apontando da operação atual para sua sucessora. As restrições de máquinas são arcos bidirecionais (disjuntivos). Selecionando uma de suas duas direções de forma que não ocorram ciclos no grafo, reduz-se, destas para restrições de precedência. Estando o grafo totalmente orientado, encontrar o makespan é calcular o maior caminho entre a partida e a chegada. Assim, o JSSP reduz-se a encontrar, mediante trocas de orientações dos arcos no caminho mais longo, uma onde o makespan é mínimo. (AYDIN E FOGARTY, 2004). Na Tabela 1 tem-se um exemplo de solução para um JSSP de dimensão 3x3. Os dados indicam as rotas para cada tarefa através de cada uma das máquinas, além dos tempos de processamento de cada operação (na Tabela 1, entre parênteses). Tarefa Rotas de operações (tempo de processamento) 1 1(3) 2(3) 3(3) 2 1(2) 3(3) 2(4) 3 2(3) 1(2) 3(1) Fonte: YAMADA e NAKANO (1997) Tabela 1 Problema JSSP 3x3

3 YAMADA e NAKANO (1997) fazem uso também do gráfico de Gantt como forma conveniente de representar uma solução para os JSSP. Outrossim, os JSSP, vistos sob a forma de problemas de ordenação (como os Traveling Salesman Problem-TSP), têm um agendamento representado pela permutação de tarefas em cada máquina, ou seja, permutações m-particionadas com dimensões equivalentes as operações a serem realizadas, denominada matriz de sequencia de tarefas. 3. As classes de agendamento para o JSSP No tocante a factibilidade, existem algumas classificações para os schedulings, que são: inadmissíveis, semi-ativos, ativos e sem-atraso. Nos schedulings inadmissíveis, ocorrem excessos de tempos de inatividade que podem ser reduzidos pelo avanço de operações. Nos semi-ativos, não ocorrem tempos inativos, mas podem ser melhorados com ao avanço de operações sem atraso de outras. Já a diferença dos semi-ativos para os ativos, estes últimos são schedulings ótimos, pois não apresentam tempos de inatividade e nenhuma das operações poderá ser finalizada antes que outra operação seja atrasada. 4. Regras de prioridade de despacho (RPD) O método tradicional de controle dos job-shops é o uso das regras de prioridade de despacho, as RPD s. Definidas por políticas de sequenciamento que ordenam as tarefas a serem processadas em máquinas, em geral são consideradas como técnicas aproximativas, e como tal não garantem obter soluções exatas, contudo apresentam condições de obter bons resultados, próximos das soluções ótimas. JAIN e MEERAN (1998) traçam comparativos entre diversas técnicas de solução para o JSSP. Dentre os métodos abordados, citam as RPD s como base dos primeiros procedimentos aproximativos aplicados aos JSSP, evidenciando sua fácil implementação, com baixa necessidade de poder computacional para implementação. BERTEL e BILLAUT (2004), além de MATTFELD e BIERWIRTH (2004) apresentam algumas regras aplicadas ao JSSP, como por exemplo a FCFS (first come first served), a SPT (shortest process time), a RD (random), ou mesmo a MOPNR (most operations remaining ). JAIN e MEERAN (1998) apud CHANG et al. (1996) apresentam que, em estudo para avaliar 42 regras de prioridade dominantes em modelo de programação linear inteira, a regra Shortest Processing Time (SPT) demonstrou melhor performance. Já outra regra, a Longest Processing Time (LPT) obteve a pior média. Estes métodos determinísticos são bastante efetivos na resolução de problemas combinatórios de menor complexidade, mas ainda assim falham com grandes espaços de busca ou quando estes são multi-dimensionados. 5. Algoritmos genéticos Diante da sua grande aplicação na solução de problemas de classe NP-completa, os Algoritmos Genéticos (AGs) compõe uma técnica heurística que consiste na busca de soluções baseadas em mecanismos da seleção natural e genética. Os AG s têm características distintas das demais heurísticas: operam em um conjunto de pontos (população) e não a partir de pontos isolados; atuam em um espaço de soluções codificadas e não diretamente no espaço de busca e necessita como informação, somente o valor de uma função objetivo (fitness); usam transições probabilísticas e não regras determinísticas (GOLDBARG e LUNA, 2000). Apesar de aleatórios, não apresentam caminhadas aleatórias direcionadas. Em suas iterações (gerações), exploram informações históricas para encontrar novos pontos de busca. Em um AG clássico, ao criar uma população inicial, calcular-se o valor de fitness para cada indivíduo. Operadores genéticos são aplicados a indivíduos selecionados probabilisticamente, com base nos seus fitness, e uma nova geração de indivíduos é criada. A evolução à novas gerações também conduz inserções de cromossomos através de operadores genéticos.

4 Operadores genéticos comumente utilizados, o crossover e a mutação atuam na formação de novas populações. O crossover determina o mecanismo de combinação de dois cromossomos existentes e cria dois filhos e a mutação, promove mudanças randômicas nos genes, para escapar de máximos locais e garantir acesso a qualquer solução do espaço. Os cromossomos com melhores fitness terão mais chances na seleção. Cada individuo gerado poderá ou não ser inserido na população. Dependendo dos critérios adotados para tanto, pode ocorrer de substituírem seus pais ou mesmo serem descartados. Pode-se, por exemplo, considerar a inserção de indivíduos que obtiverem fitness inferiores ao menor encontrado na população atual, variando o tamanho total da população até certo valor ou não. Os procedimentos de seleção, crossover, mutação e posteriormente a avaliação dos individuos gerados e sua inserção irá se repetir até que o critério de finalização seja atingido. Um exemplo de AG clássico é ilustrado por COELHO et al (2006), que empregou-os no agrupamento de células de um sistema flexível de manufatura (FMS). O tamanho da população é um dos principais fatores de controle de um algoritmo genético, entretanto, é preciso considerar ainda a probabilidade de ocorrência de mutações, o número de gerações, além do número de gerações sem melhoras no seu melhor fitness, por exemplo. 7. Representação genética das soluções Formar uma população consiste em compor cromossomos, ou seja, soluções codificadas. Se os cromossomos forem representações inapropriadas, o AG poderá apresentar dificuldades para encontrar boas soluções. Na realidade, as representações são muito dificultosas em problemas de natureza combinatória, pois operações de crossover aplicadas em AGs podem, nestes casos, conduzir a soluções infactíveis (HERRMANN et al,1995). YAMADA (1995) apresenta a representação binária como forma de codificação de solução, onde cada indivíduo representa um agendamento de operações em recursos produtivos, mas este método construtivo pode gerar indivíduos em desacordo com as seqüências tecnológicas definidas para o problema, ou seja, indivíduos ilegais. Uma formação factível corresponde a um schedule executável, que na visão de grafos orientados, não contém ciclos. YAMADA e NAKANO (1997) ainda apresentam técnicas de harmonização efetivas na correção de indivíduos tidos como ilegais. Além de representações clássicas (binárias), diversas outras são utilizadas, empregando códigos mais complexos. Uma outra forma, simbólica, consiste em considerar o cromossomo como sendo uma lista de operações a ser executada. Em cada lócus do cromossomo encontrarse-ia a tarefa a executar. A tarefa descrita no primeiro alelo é escalonada primeiro; a do segundo ídem, salvaguardadas as condições de precedência entre operações de mesma tarefa. Observa-se que todas as escalas serão válidas e ativas (WALL, 1996). Tem-se o genótipo (seqûencia de operações) e o fenótipo (agendamento). Assim, cada posição do cromossomo tem descrita a tarefa,operação,máquina. É somente através do genótipo que se possibilita calcular o makespan do cromossomo gerado. 8. Metodologia adotada Partindo-se por definir o problema a ser solucionado, optou-se por operar com o problema ABZ6 de dimensões 10x10, de Adams, Balas and Zawack (1988). Com objetivo de avaliar o comportamento das diferentes opções de geração da população inicial ante a possibilidade de solucionar um problema, serão observadas cinco evoluções, desde populações totalmente aleatórias, totalmente gulosas até o caso onde adotou-se 50% de gulosidade. Considerando as características intrínsecas dos AGs, as análises serão feitas considerando-se probabilidades de reprodução nas ordens de 20, 40 e 80%. Da mesma forma, considerando a

5 taxa de mutação, serão adotadas outras três análises para cada problema: 2, 5 e 10%. Acredita-se que, com as combinações geradas destes parâmetros será possível observar como cada população inicial poderá evoluir e como cada parâmetro influencia nesta evolução. A fim de observar as condições iniciais, o software criado em linguagem object Pascal, no Delphi 7.0 irá permitir observar a dispersão dos makespans, bem como o gráfico evolutivo para as gerações seguintes a inicial Os agendamentos O agendamento é um processo de alocação das atividades conforme a disponibilidade das máquinas em um dado instante de tempo. A seguir serão melhor descritos os procedimentos realizados para agendamento das operações, formando agendamentos ativos e sem espera. No sistema desenvolvido, os agendamentos são de natureza paralela, ou seja, as máquinas trabalham em paralelo na execução das operações e são analisadas simultaneamente no instante de tempo t. Cada máquina, durante o agendamento, possui o seu tempo de disponibilidade, ou seja, tempo em que está disponível para ser agendada uma operação. Partindo inicialmente de zero, este tempo é incrementado conforme uma próxima máquina desocupe, e assim por diante, até não haverem mais operações para agendar. O tempo final de finalização de todas as tarefas é o makespan. Encontrar o menor destes valores entre vários agendamentos é o objetivo do AG aplicado ao JSSP. Para que não ocorram agendamentos com espera, ao iniciar o processo, as primeiras operações de cada tarefa já são imediatamente candidatas a alocação. Em caso de conflito, conforme critério de despacho (FCFS, aleatório, guloso ou misto) será distribuído prioridades para execução e posterior sequenciamento. O tempo t avança, partindo de 0s. Não havendo mais operações elegíveis à agendar em cada máquina em t corrente, há o avanço do tempo. Novas análises de operações agendáveis serão feitas e posteriormente suas colocações nos sequenciamento. O novo valor de t é dado, considerando-se as operações em curso. Aquela que primeiro finalizar irá indicar o novo valor de t. O ciclo de inserção de operações no agendamento reinicía-se então A população inicial A população, para os AG s consiste no espaço de busca que está sendo pesquisado, logo, no tocante a população inicial tem-se codificadas as soluções iniciais do JSSP em estudo. Assim sendo, é preciso construir tais indivíduos a fim de compor tal conjunto inicial de soluções, onde a partir desta dar-se-ão as evoluções na busca por melhores resultados. O critério aleatório atua sobre as operações concorrentes ao agendamento, definindo prioridades aleatórias para cada uma. A mais prioritária irá ingressar no gendamento. Da mesma forma, os critérios gulosos irão atuar priorizando as tarefas com menor tempo de operação (uso da regra de prioridade de despacho SPT). O critério misto leva em conta uma probabilidade de escolha para o método guloso. Atua gerando uma população com caracteríticas de ambas as formações, conforme a probabilidade definida pelo usuário. Estando todas as operações agendadas e finalizadas, encerra-se o scheduling do indivíduo e passa-se a criar outro para a população até que completada a capacidade da população inicial. 9. Testes e análise dos resultados Conforme a metodologia do trabalho, foram geradas as populações iniciais. As soluções foram comparadas com o valor ótimo encontrados na literatura. Em um primeiro instante são observadas as populações iniciais geradas e posteriormente, serão observados os resultados na busca da solução ótima para cada um. As análises considerarão a proximidade com o valor ótimo, bem como o tempo gasto para encontrá-lo.

6 9.1. Considerações sobre a formação da população inicial A seguir serão tratadas algumas observações referentes à formação das populações iniciais para os JSSP anteriormente mencionados. O artigo Diferentes critérios de formação da população inicial De uma maneira geral, as populações iniciais nos algoritmos genéticos têm basicamente sua construção alicerçada em critérios aleatórios, ou seja, as operações são definidas aleatorioamente e indivíduos são assim constituídos. Nos procedimentos do algoritmo de formação em uso tem-se a etapa de agendamento operando em conjunto, o que impede que ocorram infactibilidades nos indivíduos. Assim, em populações geradas com critérios meramente aleatórios, pode-se prever a diversidade da população ante critérios puramente gulosos. Tal diversidade, ao mesmo tempo que permite explorar mais regiões do espaço de busca, também imprime maior tempo de convergência. Entretanto, operar somente com o critério guloso, praticamente não existirá diversidade entre os indivíduos, dado que é feita a escolha da operação a ser agendada na máquina frente ao conjunto de operações agendáveis da máquina, somando-se com a propriedade de ter o menor tempo de processamento dentre as candidatas. Tal procedimento irá gerar uma população inicial de indivíduos idênticos em aptidão, tendendo a uma possível convergência rápida e prematura, prejudicando a evolução natural. Isto pode ser visto nos gráficos de população gerada da figura 1(a) e (b) respectivamente. (a) (b) Figura 1 Dispersão dos makespans dos indivíduos gerados para população aleatória (a) e gulosa (b). Como o objetivo é avaliar o comportamento das três diferentes formações no processo de busca da solução ótima para o problema, foram criadas três populações, considerando a probabilidade α=1, α=0,5 e α=0, ou seja, totalmente gulosa, semi-gulosa e aleatória pura. Basicamente pode-se adiantar que, observada a necessidade de aleatoriedade e também gulosidade na geração da população inicial, associada a sua importância na busca de soluções com uso de AGs, a formação de indivíduos empregando critérios totalmente aleatórios ou totalmente gulosos irá servir de balisamento no processo de avaliação dos resultados considerando valores intermediários para a taxa de gulosidade. No presente estudo, tal taxa intermediária denota 50% de aleatoriedade e gulosidade, e denomina-se semi-aleatória. Neste último tipo de formação, a população inicial irá assumir caracteríticas tanto aleatórias quanto gulosas (proporcionalmente a taxa de gulosidade α). Somado ao caso do problema ABZ6, para o valor α=50%, os resultados obtidos pelo algoritmo genético híbrido mostram-se satisfatórios, uma vez que a população inicial não é muito diversificada e tampouco muito homogênea, o que pode facilitar a convergência do algoritmo para boas soluções, na Figura 2. Figura 2 Dispersão dos makespans dos indivíduos gerados para população semi-aleatória.

7 Como pôde-se observar nas dispersões das populações criadas o critério de formação da semi-gulosa parece permitir bons elementos de partida para o AG, permitindo acelerá-lo Considerações sobre a busca de soluções A seguir serão tratadas algumas observações referentes à busca de soluções e desenvolvimento dos AGs, onde fefiniu-se três taxas para seleção e posterior aplicação do operador de crossover: 20, 40 e 80%. Da mesma forma, o operador mutação é aplicado posteriormente ao operador crossover, de acordo com uma probabilidade, ou seja, a taxa de mutação. Novamente, mais três categorias de análise foram definidas: 2%, 5% e 10%. Após organizar as informações obtidas durante o a busca por solução com o AG. Foram cinco execuções praticamente simultâneas. De posse das três populações iniciais geradas para o problema, cada uma é submetida a nove combinações de parâmetros de reprodução e mutação. Os tempos foram registrados após iterações, se não atingido o valor ótimo. A partir do critério de resultados médios, tem-se a indicação da formação A80_2 (Aleatória, taxa de reprodução 80% e mutação 2%) como tendo a melhor média e também apresentando o menor makespan de todos os ensaios. O custo computacional da melhor execução foi de aproximadamente 47s, por volta da geração O erro em relação ao ótimo é de 0,42%. Para mesmo erro, a G50_80_2 tardou 175s aproximadamente, ficando com a segunda melhor média. Portanto, os melhores resultados médios foram obtidos nas populações Aleatória_80%_2% e Semi-gulosa_80%_2%, que também alcançaram o melhor makespan. No tocante ao parâmetro taxa de reprodução, observa-se que, na média das evoluções e considerando os três casos de formação de população, para este problema em específico torna-se mais interessante operar com taxas maiores, na ordem de 80% como foi o caso. Salienta-se que os melhores resultados médios foram encontrados utilizando-se este parâmetro como base do AG. A taxa de mutação em 10% não se mostrou muito interessante, pois na média todas as evoluções convergiram para makespans com erro percentual maior que quando utilizando taxas menores deste operador. As convergências foram mais lentas. Observando-se os resultados obtidos, considera-se que escolher entre operar com taxas de 2 ou 5% para este problema é um pouco mais complexo, pois na média das evoluções, conduziram a resultados muito próximos. Contudo uma vantagem é dada a taxa de 2% pois pode-se constatar que os melhores resultados foram obtidos com o uso desta taxa. Acredita-se que operar com valores na ordem de 2 a até 5% possam ser bem aceitos para este problema em específico. 10. Considerações finais O artigo apresenta o problema de sequenciamento de atividades, mais precisamente a classe Job-shop. Para tanto foi aplicado um algoritmo genético que utiliza regras de prioridade e despacho somente na formação das populações iniciais, visando analisar a possível melhora na convergência para os casos propostos. As regras testadas são: aleatória e SPT. A representação do problema se dá pela forma simbólica, onde cada lócus do individuo aponta uma operação a ser alocada no processo de agendamento. O problema clássico escolhido da literatura teve uma boa convergência quando comparados com os resultados ótimos, ou seja, apresentou um erro de 0,42% em relação ao makespan ótimo encontrado. Assim, pode-se considerar que os procedimentos de solução do AG implementado mostraram-se eficientes, haja visto a magnitude do erro, tanto, com a formação de população aleatória ou semi-gulosa, com baixas taxas de mutação e grandes probabilidades de seleção formaram bons resultados. Cabe aqui ressaltar que, apesar de se dispor de taxas de mutação durante a execução e de

8 aleatoriedade na formação de um cromossomo, durante o agendamento as restrições de precedências incutidas na função que o faz não permitir grandes variações, pois isto geraria soluções infactíveis. Como os agendamentos ativos são compostos segundo estas regras, pouca flexibilidade é concedida nestas formações. Salienta-se ainda que altas cargas de gulosidade não são indicadas para compor soluções iniciais para o JSSP, mas ao contrário, é de fundamental importância avaliar como está a disperssão dos valores dos indivíduos. Muitas vezes atribui-se certa aleatoriedade na formação e esta vêm por não surtir qualquer efeito. Assim, controlar a aleatoriedade pode ser uma estratégia vantajosa a medida que os problemas crescem, mas em excesso, podem prender a mínimos locais e, ao invéz de acelerar o processo, podem obrigar a inúmeras outras evoluções e, se as mutações não atuarem satisfatoriamente, nem garantir bons resultados, somando-se os elevados custos de processamento que isto pode acarretar. Referências BERTEL, S. e BILLAUT, J.-C., A genetic algorithm for an industrial multiprocessor flow shop scheduling problem with recirculation. European Journal of Operational Reseach, 159, p , BRAUNE, R., WAGNER, S., AFFENZELLER, M., Applying Genetic Algorithms to the Optimization of Production Planning in a Real-World Manufacturing Environment. Cybernetics and Systems 2004, p Austrian Society for Cybernetic Studies, 2004 CALIER, J. e PINSON, E., An algorithm for solving the Job-Shop Problem, Management Science, 35, p , COELHO, A. S., BRANCO, R. M. e RODRIGUES, G. S., Aprimoramento da produtividade de sistemas de manufatura e aplicação de algoritmos genéticos na solução de problemas de agrupamentos celulares, Revista Produção Online, Florianópolis, v.6, n.3,p.116, set./dez., 2006 EL-BOURI, A, AZIZI, N., ZOLFAGHARI, S., A comparative study of a new heuristic based on adaptive memory programming and simulated annealing: The case of job shop scheduling, European Journal of Operational Research 177, , GOLDBERG, D. E., Genetic Algortihms in Search, Optimization, and Machine Learning, 1 ed. USA, New York:Addison-Wesley Publishing Company, Inc, 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, HERRMANN, J., LEE, C-Y e HINCHMAN, J., Global job shop scheduling with a genetic algorithm, Produt and operations management, v.4, n.1, JAIN, A. S. e MEERAN, S., A state-of-the-art review of job-shop scheduling techniques, Technical Report, University of Dundee, Dundee, Scotland, UK, MATTFELD, D. C. e BIERWIRTH, C., An efficient algorithm for job shop scheduling with tardiness objectives. European Journal of Operational Reseach, 155, p , STORER, R. H., WU, S. D., VACCARI, R., Problem and Heuristic Space Search Strategies for Job Shop Scheduling, ORSA Journal on Computing, 7, 4, Fall, p , YAMADA, T. e NAKANO R., A Genetic Algorithm with Multi-Step Crossover for Job-Shop Scheduling Problems. First IEE/IEEE International Conference on Genetic ALgorithms in Engineering Systems: Innovations and Applications (GALESIA 95), p , Sheffield, UK, September YAMADA, T. e NAKANO R., Genetic Algorithms for Job-Shop Scheduling Problems. Proceedings of Modern Heuristic for Decision Support, p , Londres, Março de 1997.

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR ALGORITMOS GENÉTICOS Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Introdução Algoritmos Genéticos são algoritmos heurísticos de busca, que utilizam regras

Leia mais

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

Modelos Evolucionários e Tratamento de Incertezas

Modelos Evolucionários e Tratamento de Incertezas Ciência da Computação Modelos Evolucionários e Tratamento de Incertezas Aula 01 Computação Evolucionária Max Pereira Motivação Se há uma multiplicidade impressionante de algoritmos para solução de problemas,

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Características Gerais, operadores, algoritmo.

Leia mais

ESTÁGIOS DOMINANTES FLEXÍVEIS EM SISTEMAS DE PRODUÇÃO FLOW SHOP HÍBRIDOS

ESTÁGIOS DOMINANTES FLEXÍVEIS EM SISTEMAS DE PRODUÇÃO FLOW SHOP HÍBRIDOS ESTÁGIOS DOMINANTES FLEXÍVEIS EM SISTEMAS DE PRODUÇÃO FLOW SHOP HÍBRIDOS João Vitor Moccellin Departamento de Engenharia de Produção Escola de Engenharia de São Carlos, Universidade de São Paulo. Av. Trabalhador

Leia mais

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Algoritmos Genéticos Algoritmos Genéticos (AGs) constituem um mecanismo de busca adaptativa que se baseia no princípio Darwiniano de seleção natural e reprodução genética [101]. AGs são tipicamente empregados

Leia mais

Pesquisa Operacional Aplicada à Mineração

Pesquisa Operacional Aplicada à Mineração Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II-b Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação

Leia mais

OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS

OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS C. de O. GONÇALVES 1, E. M. QUEIROZ 2, F. L. P. PESSOA 2, F. S. LIPORACE 3, S. G. OLIVEIRA 3 e A. L. H. COSTA 1

Leia mais

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados Agenda PCS / PCS 09 Inteligência Artificial Prof. Dr. Jaime Simão Sichman Profa. Dra. Anna Helena Reali Costa Busca Local e Problemas de Otimização. Introdução. Busca Local I. Subida da Encosta (Hill-Climbing)

Leia mais

Buscas Informadas ou Heurísticas - Parte III

Buscas Informadas ou Heurísticas - Parte III Buscas Informadas ou Heurísticas - Parte III Prof. Cedric Luiz de Carvalho Instituto de Informática - UFG Mestrado em Ciência da Computação / 2006 BUSCA SMA* (Simplified Memory-Bounded A*) BUSCA SMA* (Simplified

Leia mais

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP Gilson Rogério Batista, Gideon Villar Leandro Universidade Regional do Noroeste do Estado do Rio

Leia mais

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng.

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. Metahuerísticas: Algoritmos Genéticos Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 8) Meta-heurísticas Classificação de métodos heurísticos: os métodos

Leia mais

Algoritmo Genético e Busca Local para o problema Justin-Time Job-Shop Scheduling

Algoritmo Genético e Busca Local para o problema Justin-Time Job-Shop Scheduling Algoritmo Genético e Busca Local para o problema Justin-Time Job-Shop Scheduling Rodolfo P. Araujo, André G. dos Santos, José E. C. Arroyo Departamento de Informática Universidade Federal de Viçosa (UFV)

Leia mais

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva Computação Evolutiva Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Autor: Adilmar Coelho Dantas 1, Orientador: Márcia Aparecida Fernandes 1 1 Programa de Pós-Graduação em

Leia mais

Métodos de pesquisa e Optimização

Métodos de pesquisa e Optimização Métodos de pesquisa e Optimização Victor Lobo Importância para os SAD Definir o caminho a tomar depois de se ter trabalhado os dados 1ª Fase: Analisar os dados disponíveis Visualização OLAP, relatórios

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial Algoritmos Genéticos Texto base: Stuart Russel e Peter Norving - Inteligência Artificial junho/2007 Algoritmo Genético Uma variante da busca em feixe estocástica Estado sucessor gerado pela combinação

Leia mais

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP 1 Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 2 Introdução http://www.formula-um.com/ Como

Leia mais

4 Métodos Existentes. 4.1 Algoritmo Genético

4 Métodos Existentes. 4.1 Algoritmo Genético 61 4 Métodos Existentes A hibridização de diferentes métodos é em geral utilizada para resolver problemas de escalonamento, por fornecer empiricamente maior eficiência na busca de soluções. Ela pode ser

Leia mais

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 1 2 Introdução Evolução natural http://www.formula-um.com/

Leia mais

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Francisco Henrique de Freitas Viana Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento de Informática

Leia mais

ALGORITMO GENÉTICO COM BUSCA LOCAL APLICADO AO PROBLEMA DE JUST-IN-TIME JOB-SHOP SCHEDULING

ALGORITMO GENÉTICO COM BUSCA LOCAL APLICADO AO PROBLEMA DE JUST-IN-TIME JOB-SHOP SCHEDULING ALGORITMO GENÉTICO COM BUSCA LOCAL APLICADO AO PROBLEMA DE JUST-IN-TIME JOB-SHOP SCHEDULING Rodolfo Pereira Araujo Universidade Federal de Viçosa Av. P.H. Rolfs, s/n, DPI Campus UFV 36.570-000 Viçosa,

Leia mais

Introdução aos Algoritmos Genéticos

Introdução aos Algoritmos Genéticos Introdução aos Algoritmos Genéticos Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Algoritmos Genéticos: Introdução Introduzidos

Leia mais

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível

Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível Antonio G. RODRIGUES, Leandro T. HOFFMANN e Arthur T. GÓMEZ Universidade do Vale

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Aula 6 Algoritmos Genéticos M.e Guylerme Velasco Roteiro Introdução Otimização Algoritmos Genéticos Representação Seleção Operadores Geneticos Aplicação Caixeiro Viajante Introdução

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Roteiro Introdução Algoritmos Genéticos Otimização Representação Seleção Operadores Genéticos Aplicação Caixeiro Viajante Introdução Algoritmos Genéticos (AGs), são métodos de otimização

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições Problema de Satisfação de Restrições Exemplos de PSR (CSP, Constraint Satisfaction Problem) Busca genérica aplicada a PSRs Backtracking Verificação forward Heurísticas para PSRs Problema de Satisfação

Leia mais

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR Problema de Satisfação de Restrições Problema de Satisfação de Restrições Exemplos de PSR (CSP, Constraint Satisfaction Problem) Busca genérica aplicada a PSRs Backtracking Verificação forward Heurísticas

Leia mais

Sistemas de Produção em Fluxo

Sistemas de Produção em Fluxo Uma introdução a problemas de sequenciamento em sistemas de produção em fluxo Faculdade de Ciências da Universidade do Porto 18 de Janeiro de 2012 Sumário Introdução Literatura (Makespan) Pesquisa Local

Leia mais

Programação da produção em sistema no-wait flow shop com minimização do tempo total de fluxo

Programação da produção em sistema no-wait flow shop com minimização do tempo total de fluxo Programação da produção em sistema no-wait flow shop com minimização do tempo total de fluxo Lucas Yamada Scardoelli (EESC/USP) scarty@terra.com.br R. General Glicério, 340, Centro, CEP 15900-000, Taquaritinga,

Leia mais

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Introdução São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

Problemas de otimização

Problemas de otimização Problemas de otimização Problemas de decisão: Existe uma solução satisfazendo certa propriedade? Resultado: sim ou não Problemas de otimização: Entre todas as soluções satisfazendo determinada propriedade,

Leia mais

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos 46 4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos Para definir a representação de um modelo para problemas de planejamento

Leia mais

IF-705 Automação Inteligente Algoritmos Evolucionários

IF-705 Automação Inteligente Algoritmos Evolucionários IF-705 Automação Inteligente Algoritmos Evolucionários Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

Sequenciamento de Tarefas

Sequenciamento de Tarefas Sequenciamento de Tarefas Programa: Introdução; Sequenciamento numa única máquina; Sequenciamento em máquinas paralelas; Problemas de shop scheduling; Extensões; 1 Introdução Problemas de sequenciamento/escalonamento

Leia mais

5 VNS com Filtro e Reconexão por Caminhos

5 VNS com Filtro e Reconexão por Caminhos 5 VNS com Filtro e Reconexão por Caminhos A metaheurística VNS (Variable Neighborhood Search) foi proposta por Mladenović e Hansen [40] e possui como idéia básica a mudança de vizinhanças realizada da

Leia mais

UMA COMPARAÇÃO EMPÍRICA DE OPERADORES DE CROSSOVER PARA O PROBLEMA DE JOB SHOP COM DATAS DE ENTREGAS

UMA COMPARAÇÃO EMPÍRICA DE OPERADORES DE CROSSOVER PARA O PROBLEMA DE JOB SHOP COM DATAS DE ENTREGAS XXX ENCONTRO NACIONAL DE ENGENHARIA DE PRODUÇÃO Maturidade e desafios da Engenharia de Produção: competitividade das empresas, condições de trabalho, meio ambiente. São Carlos, SP, Brasil, 12 a15 de outubro

Leia mais

UMA ABORDAGEM AO PROBLEMA DE SEQUENCIAMENTO EM UMA MÁQUINA COM PENALIDADES POR ANTECIPAÇÃO E ATRASO DA PRODUÇÃO POR MEIO DE ALGORITMOS EVOLUTIVOS

UMA ABORDAGEM AO PROBLEMA DE SEQUENCIAMENTO EM UMA MÁQUINA COM PENALIDADES POR ANTECIPAÇÃO E ATRASO DA PRODUÇÃO POR MEIO DE ALGORITMOS EVOLUTIVOS UMA ABORDAGEM AO PROBLEMA DE SEQUENCIAMENTO EM UMA MÁQUINA COM PENALIDADES POR ANTECIPAÇÃO E ATRASO DA PRODUÇÃO POR MEIO DE ALGORITMOS EVOLUTIVOS Renato da Silva Ramos Discente do curso de Ciência da Computação

Leia mais

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo Estruturas de Dados II Prof. a Mariella Berger Caixeiro Viajante 1. Objetivo O objetivo deste trabalho é implementar diferentes soluções para o problema clássico do Caixeiro Viajante. 2. Introdução O Problema

Leia mais

1_1 1_2 2_1 1_ _ _ Fonte: Autor

1_1 1_2 2_1 1_ _ _ Fonte: Autor 75 7. Resultados Os resultados aqui apresentados utilizam o modelo proposto na Seção 6.2, resolvido através do software de otimização AIMMS para os problemas com Datas prometidas. Já para o problema sem

Leia mais

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan Exemplo de Aplicação de Algoritmos Genéticos Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br cear.ufpb.br/juan Estrutura do Algoritmo Genético Algoritmo genético Inicio t = 0 inicializar P(t)

Leia mais

Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante

Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante 1 Resumo Neste trabalho será realizada a codificação do algoritmo genético para a solução do problema do

Leia mais

Max Pereira. Inteligência Artificial

Max Pereira. Inteligência Artificial Max Pereira Inteligência Artificial Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora da teoria da evolução das espécies iniciada pelo Naturalista inglês Charles

Leia mais

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações AG Simples/Canônico (AGS) AG introduzido por Holland Funciona bem para problemas de otimização simples e/ou de pequenas dimensões A maior parte da teoria dos AGs está baseada no AGS Utilidade didática

Leia mais

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva Estratégias Evolutivas EEs Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br www.cear.ufpb.br/juan Estratégias Evolutivas Desenvolvidas por Rechenberg e Schwefel, e estendida por Herdy, Kursawe

Leia mais

ESTUDO DE REGRAS DE SEQUENCIAMENTO PARA MINIMIZAÇÃO DO ATRASO EM AMBIENTE FLOW SHOP COM TEMPOS DE SETUP

ESTUDO DE REGRAS DE SEQUENCIAMENTO PARA MINIMIZAÇÃO DO ATRASO EM AMBIENTE FLOW SHOP COM TEMPOS DE SETUP ESTUDO DE REGRAS DE SEQUENCIAMENTO PARA MINIMIZAÇÃO DO ATRASO EM AMBIENTE FLOW SHOP COM TEMPOS DE SETUP Tatiane Carvalho Silva (UFG ) tatiane_economiaufg@hotmail.com Helio Yochihiro Fuchigami (UFG ) heliofuchigami@yahoo.com.br

Leia mais

4. Modelo Co-evolucionário para Otimização da Programação da Produção.

4. Modelo Co-evolucionário para Otimização da Programação da Produção. 56 4. Modelo Co-evolucionário para Otimização da Programação da Produção. 4.1. Introdução. O modelo proposto para solucionar este problema é um modelo coevolucionário cooperativo formado por duas espécies.

Leia mais

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden GA Conceitos Básicos Capítulo 3 Prof. Ricardo Linden Algoritmos Evolucionários Algoritmos evolucionários usam modelos computacionais dos processos naturais de evolução como uma ferramenta para resolver

Leia mais

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples Introdução Inspiração biológica Histórico da computação evolutiva Algoritmo evolutivo simples Programação evolutiva Estratégias evolutivas Algoritmos genéticos Abordagem unificada de algoritmos evolutivos

Leia mais

UM MODELO DE PROGRAMAÇÃO INTEIRA MISTA PARA A PROGRAMAÇÃO DA PRODUÇÃO EM FLOWSHOP HÍBRIDO COM BUFFERS LIMITADOS

UM MODELO DE PROGRAMAÇÃO INTEIRA MISTA PARA A PROGRAMAÇÃO DA PRODUÇÃO EM FLOWSHOP HÍBRIDO COM BUFFERS LIMITADOS UM MODELO DE PROGRAMAÇÃO INTEIRA MISTA PARA A PROGRAMAÇÃO DA PRODUÇÃO EM FLOWSHOP HÍBRIDO COM BUFFERS LIMITADOS Pedro Luis Miranda Lugo Universidade Federal de São Carlos Departamento de Engenharia de

Leia mais

1 Introdução 1.1 Motivação

1 Introdução 1.1 Motivação 13 1 Introdução 1.1 Motivação O planejamento de tarefas é um trabalho de resultados economicamente importantes mas de uma dificuldade computacional muito grande. Os problemas de planejamento podem ser

Leia mais

Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições

Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições > REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10 1 Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições Jarbas Silva Abstract Neste

Leia mais

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR INTRODUÇÃO À COMPUTAÇÃO EVOLUTIVA Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Computação Evolutiva Ramo da ciência da computação que propõe um paradigma

Leia mais

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia Elétrica INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL Aula 06 Prof. Vitor Hugo Ferreira Representação por cromossomos Codificação

Leia mais

Algoritmos Branch e Bound para o problema de sequenciamento em uma única máquina

Algoritmos Branch e Bound para o problema de sequenciamento em uma única máquina Trabalho apresentado no XXXV CNMAC, Natal-RN, 2014. Algoritmos Branch e Bound para o problema de sequenciamento em uma única máquina Carlos E. Ferreira Instituto de Matemática e Estatística, IME, USP 05508-090,

Leia mais

Um Modelo Baseado na Busca Tabu Aplicado ao Problema do Escalonamento do Job-shop com Setup e Data de Entrega

Um Modelo Baseado na Busca Tabu Aplicado ao Problema do Escalonamento do Job-shop com Setup e Data de Entrega Um Modelo Baseado na Busca Tabu Aplicado ao Problema do Escalonamento do Job-shop com Setup e Data de Entrega Gilberto Irajá Müller 1, Antonio Gabriel Rodrigues 1, Arthur Tórgo Gómez 1 1 Universidade do

Leia mais

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Busca Competitiva Para Ambientes multiagentes...

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

Implementação de um escalonador de processos em GPU

Implementação de um escalonador de processos em GPU Implementação de um escalonador de processos em GPU Guilherme Martins guilhermemartins@usp.br 6 de abril de 2017 Guilherme Martins (guilhermemartins@usp.br) Implementação de um escalonador de processos

Leia mais

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados Otimização Jaime Arturo Ramírez Conteúdo 1. Introdução 2. Analogia de mecanismos de seleção natural com sistemas artificiais 3. Algoritmo genético modelo 4. Um GA simples 5. Representação, genes e cromossomos

Leia mais

Problema do vendedor: uma abordagem via algoritmos genéticos

Problema do vendedor: uma abordagem via algoritmos genéticos Problema do vendedor: uma abordagem via algoritmos genéticos Dandara de Almeida Machado 1, Juliana Verga Shirabayashi 1 1 Universidade Federal do Paraná (UFPR) Campus Jandaia do Sul dandaraalmeidaa@gmail.com;

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C01 Simulated Annealing (20/11/07). C02 Busca Tabu (22/11/07). C03 Colônia

Leia mais

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos SCC-230 Inteligência Artificial Thiago A. S. Pardo Solange O. Rezende 1 Computação Evolutiva (CE) Trata de sistemas para a resolução de problemas

Leia mais

UMA ABORDAGEM MULTIAGENTE PARA A SOLUÇÃO DE PROBLEMAS DO TIPO JOBSHOP

UMA ABORDAGEM MULTIAGENTE PARA A SOLUÇÃO DE PROBLEMAS DO TIPO JOBSHOP XXIX ENCONTRO NACIONAL DE ENGENHARIA DE PRODUÇÃO. UMA ABORDAGEM MULTIAGENTE PARA A SOLUÇÃO DE PROBLEMAS DO TIPO JOBSHOP Carlos Alberto dos Santos Passos (CTI) carlos.passos@cti.gov.br Vitor Massaru Iha

Leia mais

Prática 00. Total 04. Pré-requisitos. No. De Créditos 04

Prática 00. Total 04. Pré-requisitos. No. De Créditos 04 Disciplina Otimização Combinatória Departamento Carga Horária Semanal MINISTÉRIO DA EDUCAÇÃO E CULTURA PRÓ-REITORIA DE GRADUAÇÃO 1 PROGRAMA DE DISCIPLINA Departamento de Computação Teórica Pré-requisitos

Leia mais

Uma heurística para o problema sequenciamento de tarefas com restrições adicionais em um centro de distribuição

Uma heurística para o problema sequenciamento de tarefas com restrições adicionais em um centro de distribuição Trabalho apresentado no XXXVII CNMAC, S.J. dos Campos - SP, 2017. Proceeding Series of the Brazilian Society of Computational and Applied Mathematics Uma heurística para o problema sequenciamento de tarefas

Leia mais

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos https://eventos.utfpr.edu.br//sicite/sicite17/index Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos RESUMO Stéfanie Caroline Pereira Dekker stefanie.c.dekker@gmail.com Universidade Tecnológica

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Departamento de Computação - UEL Disciplina Anual Assunto Aula 19 ACO - Ant Colony Optimization 2 de 15 Sumário Problema do Caixeiro

Leia mais

3 Computação Evolucionária

3 Computação Evolucionária 34 3 Computação Evolucionária Computação Evolucionária compreende diversos algoritmos inspirados no princípio Darwiniano da evolução das espécies e na genética. São algoritmos probabilísticos, que fornecem

Leia mais

METAHEURÍSTICA Encontrar soluções boas ou até mesmo ótima

METAHEURÍSTICA Encontrar soluções boas ou até mesmo ótima METAHEURÍSTICAS METAHEURÍSTICA Encontrar soluções boas ou até mesmo ótima Consiste em aplicar iterativamente uma heurística subordinada (busca local) Tem algum mecanismo para escapar de ótimos locais (vales)

Leia mais

Heurística Shifting Bottleneck

Heurística Shifting Bottleneck Universidade de São Paulo Instituto de Matemática e Estatística Departamento de Ciência da Computação Mac5758/0461 - Introdução ao Escalonamento e Aplicações Heurística Shifting Bottleneck Alunos: Leandro

Leia mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Prof. Dilermando Piva Jr. ((Compilação de diversas fontes na Internet)) Principal motivação para o estudo da computação evolutiva Otimização de processos complexo e que possuem um grande número de variáveis

Leia mais

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO)

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Eros Moreira de Carvalho Gabriel Silva Ramos CI209 - Inteligência Artificial BCC - Bacharelado em Ciência da Computação DInf - Departamento

Leia mais

Otimização com Algoritmos Evolutivos

Otimização com Algoritmos Evolutivos Otimização com Algoritmos Evolutivos Francisco Pereira (xico@dei.uc.pt) ELBCE 2016 (Setembro 2016) Resumo Problem Optimization Method Solution } Algoritmos Evolutivos } Propriedades e funcionamento } Exemplos

Leia mais

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização Algoritmos Genéticos Otimização São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin. Desenvolvido por John

Leia mais

Estratégias de Escalonamento em um Ambiente de Job-shop

Estratégias de Escalonamento em um Ambiente de Job-shop Estratégias de Escalonamento em um Ambiente de Job-shop Gilberto Irajá Müller 1, Arthur Tórgo Gómez 1 1 Universidade do Vale do Rio dos Sinos UNISINOS PIPCA - Programa Interdisciplinar de Pós-Graduação

Leia mais

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS Uma visão geral dos GAs Um algoritmo genético é uma classe de algoritmo de busca. O algoritmo procura uma solução dentro de um espaço para um problema de otimização.

Leia mais

Otávio Moura do Nascimento Leandro de Moraes

Otávio Moura do Nascimento Leandro de Moraes Otávio Moura do Nascimento Leandro de Moraes Job Shop m tarefas, divididas em n operações, devem ser executadas em k máquinas diferentes Cada máquina pode executar somente uma operação de cada vez As operações

Leia mais

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 Metaheurística: São técnicas de soluções que gerenciam uma interação entre técnicas de busca local e as estratégias de nível superior para criar um processo de

Leia mais

6 ESCALONAMENTO DE CPU

6 ESCALONAMENTO DE CPU 6 ESCALONAMENTO DE CPU O escalonamento de CPU é ponto chave da multiprogramação. Ela permite que haja mais de um processo em execução ao mesmo tempo. Em ambientes com um único processador, o escalonador

Leia mais

Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante

Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante Gabriel Freytag Guilherme Arruda Rogério S. M. Martins Edson L. Padoin Universidade Regional do Noroeste do Estado do Rio Grande

Leia mais

Algoritmo busca tabu para a minimização do tempo de processamento e atrasos de entrega em sistemas de produção flowshop permutacional

Algoritmo busca tabu para a minimização do tempo de processamento e atrasos de entrega em sistemas de produção flowshop permutacional Algoritmo busca tabu para a minimização do tempo de processamento e atrasos de entrega em sistemas de produção flowshop permutacional Marcio Leite (UCAM-Campos) mleite@lenep.uenf.br José Elias Cláudio

Leia mais

1.1 Descrição do problema A programação genética (PG) é uma meta-heurística utilizada para gerar programas de computadores, de modo que o computador

1.1 Descrição do problema A programação genética (PG) é uma meta-heurística utilizada para gerar programas de computadores, de modo que o computador 1 Introdução 1.1 Descrição do problema A programação genética (PG) é uma meta-heurística utilizada para gerar programas de computadores, de modo que o computador possa resolver problemas de forma automática

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS Metaheurísticas de Buscas ALGORITMOS GENÉTICOS (AG) Popularizados por John Holland podem ser considerados os primeiros modelos algorítmicos

Leia mais

SEQUENCIAMENTO DA PRODUÇÃO EM JOB-SHOPS COM O AUXÍLIO DE GRIDS COMPUTACIONAIS

SEQUENCIAMENTO DA PRODUÇÃO EM JOB-SHOPS COM O AUXÍLIO DE GRIDS COMPUTACIONAIS SEQUENCIAMENTO DA PRODUÇÃO EM JOB-SHOPS COM O AUXÍLIO DE GRIDS COMPUTACIONAIS Luiz Rossi de Souza (CEFET) luizrrossi@gmail.com Diego Moreira de Araujo Carvalho (CEFET) d.carvalho@ieee.org Rafael Garcia

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 1.7. Outras Metaheurísticas Populacionais 1.7.1. Metaheurísticas Populacionais

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Algoritmos Genéticos David Menotti www.inf.ufpr.br/menotti/ci171-182 Hoje Algoritmos Genéticos 2 Objetivos Introduzir os principais

Leia mais