Algoritmo genético para formação de células de fabricação

Documentos relacionados
PROJETO DE ARRANJO FÍSICO MODULAR: UMA ABORDAGEM POR ALGORITMO GENÉTICO DE AGRUPAMENTO

Algoritmo genético de agrupamento para projeto de layout modular

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

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

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

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

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

Inteligência Artificial

Algoritmos Genéticos

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

3 Algoritmos Genéticos

1. Computação Evolutiva

TG: Tecnologia de Grupo (Group Technology)

Técnicas de Inteligência Artificial

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

2 MÉTODOS DE FORMAÇÃO DE CÉLULAS BASEADO EM ARRANJO MATRICIAL

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

Nova abordagem na geração de arranjo físico maximamente distribuído

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

Análise do desempenho dos arranjos físicos distribuídos operando sob roteamento de peças com flexibilidade de seqüenciamento

Introdução aos Algoritmos Genéticos

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

Algoritmo genético de agrupamento para formação de módulos de arranjo físico

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

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. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

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

4 Implementação Computacional

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

Técnicas de Inteligência Artificial

Max Pereira. Inteligência Artificial

4 Métodos Existentes. 4.1 Algoritmo Genético

Uma solução computacional para geração automática de peças com flexibilidade de processo para simulação

Tópicos Especiais em Informática Fatec Indaiatuba

3 Algoritmos Genéticos

FORMAÇÃO ESPONTÂNEA DE CÉLULAS FRACTAIS NA MAXIMIZAÇÃO DA DISTRIBUIÇÃO DE MÁQUINAS EM ARRANJOS FÍSICOS

Algoritmos Genéticos

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

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA

Escalonador de Ordens de Produção Utilizando Algoritmos Genéticos

Métodos de pesquisa e Optimização

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

ANÁLISE DO DESEMPENHO DOS ARRANJOS FÍSICOS DISTRIBUÍDOS OPERANDO SOB ROTEAMENTO DE PEÇAS COM FLEXIBILIDADE DE SEQÜENCIAMENTO

Algoritmos Genéticos e Evolucionários

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

COMPOSIÇÃO DE UMA CARTEIRA DE AÇÕES COM RISCO MÍNIMO E RETORNO ESPECIFICADO: UM ESTUDO UTILIZANDO ALGORITMO GENÉTICO E A FUNÇÃO SOLVER

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

Uma solução computacional para geração automática de peças com flexibilidade de processo para simulação

1. Computação Evolutiva

IA: Inteligência Artificial

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

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

Introdução a Algoritmos Genéticos

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

Utilizando um Algoritmo Genético para Encontrar os Zeros de uma Função Real

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

Modelos Evolucionários e Tratamento de Incertezas

O USO DE ALGORITMOS GENÉTICOS NA RESOLUÇÃO DE PROBLEMAS DE PROGRAMAÇÃO LINEAR RESUMO INTRODUÇÃO

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

Buscas Informadas ou Heurísticas - Parte II

TECNOLOGIA DE GRUPO. Introdução Aplicação da razão associação de objetos similares Biólogos; Bibliotecários classificação Manufatura

Algoritmos Genéticos

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES

Flexibilidade de Sequenciamento

INF 1771 Inteligência Artificial

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

Sistemas de Apoio à Decisão Optimização V 2.0, V.Lobo, EN/ISEGI, 2011

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

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

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

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos. Gustavo Pessin 2007

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

Uma abordagem para resolução do problema de localização de atividades econômicas

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

Um Estudo Empírico de Métodos Hiper-Heurísticos

Inteligência Artificial

INF 1771 Inteligência Artificial

3 Otimização Evolucionária de Problemas com Restrição

Organização de um sistema de produção em células de fabricação utilizando redes neurais

Lista de Exercícios - Modelagem de representação cromossômica e função fitness

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática

4 EXEMPLOS DE APLICAÇÕES DA MATRIZ EXPANDIDA

EEL - USP. Aula 2 Projeto do Produto, do processo e planejamento da produção. Prof. Dr. Geronimo

INF 1771 Inteligência Artificial

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

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

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

Sistemas Inteligentes if684. Germano Vasconcelos Página da Disciplina:

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

Aprendizado por Reforço usando Aproximação

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

4 Cálculo de Equivalentes Dinâmicos

Transcrição:

Algoritmo genético para formação de células de fabricação Eduardo Vila Gonçalves Filho (EESC-USP) evila@sc.usp.br José Hamilton Chaves Gorgulho Júnior (UNIFEI) gorgulhojunior@ig.com.br Ana Rita T. Terra Argoud (EESC-USP) arterra@sc.usp.br Resumo Este trabalho apresenta um algoritmo genético para o projeto de células de manufatura. São abordadas a geração da população inicial, a codificação dos cromossomos, os operadores de cruzamento e mutação bem como os procedimentos de correção dos descendentes. No final um exemplo de aplicação é apresentado e discutido. Palavras chave: Algoritmo Genético, Arranjo Físico, Células de Fabricação. 1. Introdução O projeto da disposição das máquinas no chão de fábrica requer, a princípio, a definição do tipo de arranjo físico adequado às necessidades da produção. Além dos arranjos tradicionais como posicional, por produto (linha), por processo (funcional) e celular pode-se citar os arranjos fractal (VENKATADRI et al., 1997) e modular (IRANI & HUANG, 1998). O arranjo físico celular é indicado quando se tem média variedade de peças e tamanho de lote pequeno a médio. Além disso, quanto mais estável for a demanda e quanto maior for a vida dos produtos fabricados mais adequado se torna o arranjo físico celular. A implantação de um arranjo celular requer a formação das células, isto é, definição de quais máquinas pertencerão a cada célula e a disposição das máquinas dentro da célula. Na fase final faz-se o planejamento da posição das células na área disponível no chão de fábrica e define-se como a célula irá trabalhar (número de operadores, seqüenciamento das peças, ferramental etc). O problema de formação de células é foco de muitas pesquisas e trabalhos. Dentre as várias técnicas e metodologias usadas para esta atividade este trabalho irá abordar o problema usando um Algoritmo Genético (AG). 2. Algoritmos genéticos Os algoritmos genéticos foram inspirados nos princípios da genética e evolução natural. Cada indivíduo da população é definido por um cromossomo que, por sua vez, é formado por uma seqüência de genes. As mutações genéticas e o cruzamento de indivíduos levam a uma nova combinação de genes (Figura 1). De acordo com J. H. Holland apud Suresh et al. (1995) essas alterações permitem que a população possa se adaptar e gerar indivíduos melhores. Seleção Reprodução (Cruzamento) População Antiga População Intermediária População Nova Mutação e Inversão Figura 1 Princípio de trabalho de um algoritmo genético. ENEGEP 2004 ABEPRO 506

Um dos primeiros trabalhos relacionados com a formação de células utilizando algoritmos genéticos foi publicado por Venugopal & Narendran (1992). Esses autores usaram como cromossomo uma seqüência de números (string). Cada posição do cromossomo corresponde a uma máquina. Os números que formam o cromossomo indicam a qual célula a máquina pertence. A Figura 2 mostra do lado esquerdo um cromossomo composto por 9 máquinas. A codificação do cromossomo usa os numerais de 1 até 3, indicando portanto o uso de 3 células. Do lado direito da Figura 2 as células relacionadas com essa codificação estão explicitadas para melhor compreensão. M1 M2 M3 M4 M5 M6 M7 M8 M9 (1 1 2 3 2 1 3 3 2) Célula 1: M1, M2 e M6 Célula 2: M3, M5 e M9 Célula 3: M4, M7 e M8 Figura 2 Codificação de cromossomo usada por Venugopal & Narendran (1992). Os autores definiram duas funções objetivo para avaliar os cromossomos a cada população: F 1 : minimização do volume de movimentos entre as células. F 2 : minimização da variação da carga total dentro da célula. As funções são dadas abaixo sem maiores explicações por limitação de espaço. Recomenda-se a leitura do artigo original para maiores detalhes (VENUGOPAL & NARENDRAN, 1992). n k F1 = N j y jl 1 (1) j= 1 l= 1 m k n xil ( wij mlj ) F2 = (2) i= 1 l= 1 j= 1 3. A proposta No projeto de um arranjo físico celular sempre nos confrontamos com dois problemas: o de formação das famílias de peças e o de formação dos correspondentes grupos de máquinas (células), onde essas famílias serão processadas. O algoritmo genético aqui proposto trata do problema de formação dos grupos de máquinas e assume que as peças serão designadas às células através de algum critério posterior. Por exemplo, podemos designar cada peça à célula que possuir o maior número de máquinas requeridas pela peça. Outra possibilidade seria utilizar um coeficiente de similaridade ou uma medida de distância (distância Hamming, Euclidiana etc) para determinar o grau de similaridade entre a peça e cada célula formada, alocando a peça à célula que apresentar o maior grau de similaridade com a peça. O algoritmo genético proposto neste trabalho pode ser explicado com base em cinco elementos: função objetivo, codificação do cromossomo, população inicial, processo de seleção e operadores dos cromossomos. Esses elementos são detalhados nos itens seguintes. 4. Função objetivo Neste trabalho propõe-se combinar as funções F 1 e F 2, como mostradas em (1) e (2), em uma única função objetivo. Dessa forma o algoritmo genético deverá minimizar a função F resultante: F= c 1. F 1 + c 2. F 2. As constantes c 1 e c 2 permitem refletir a importância de cada critério na formação das células. 2 ENEGEP 2004 ABEPRO 507

Foi necessário desenvolver um escalonamento para os valores de F 2 que são muito menores que F 1. O FatorEscala foi obtido dividindo a média de F 1 pela média de F 2. Dessa forma temse em (3) o valor da função objetivo para cada cromossomo: F i = c 1.F 1 + c 2. F 2. FatorEscala (3) É importante observar que o AG proposto neste trabalho poderia trabalhar com qualquer outra função objetivo. A escolha de F 1 e F 2 foi feita para se ter uma base de comparação de resultados. 5. Codificação do cromossomo A codificação adotada foi inspirada na codificação proposta por Falkenauer (1998). Cada cromossomo é representado por grupos de máquinas. A codificação usada na Figura 2, doravante denominada de Forma 1, é transformada em duas outras codificações denominadas Forma 2 e Forma 3. Como se pode observar na Figura 3, a Forma 2 apresenta diretamente as máquinas que compõem cada célula e que estão separadas pelo caractere /. Forma 1 Forma 2 Forma 3 (1 2 2 3 1 1 3 1 3) (1 5 6 8 / 2 3 / 4 7 9) (4 6 9) Célula 1 Célula 2 Célula 3 Figura 3 Codificação dos cromossomos. A codificação da Forma 3 indica que a primeira célula é formada pelas 4 primeiras máquinas, a segunda célula é formada por duas máquinas (6-4=2), que são a quinta e a sexta máquinas da Forma 2. Por fim o último numeral indica que a terceira célula é formada por 3 máquinas (9-6=3), ou seja, as três últimas máquinas da Forma 2. A Forma 3 é importante para o processamento do algoritmo. Todas as operações são feitas com os cromossomos na Forma 2. 6. Geração da população inicial A população inicial é gerada aleatoriamente. Cada indivíduo gerado é analisado para garantir que cada máquina pertença a somente uma célula (restrição 1) e que cada célula seja composta pelo menos por duas máquinas (restrição 2). Os parâmetros a serem informados são o número de tipos de máquinas disponíveis (M) e o número de células a serem formadas (K). O procedimento usado na geração da população inicial pode ser dividido em duas etapas: Etapa 1: Escolher aleatoriamente duas máquinas para cada célula entre as M máquinas disponíveis. Após isso tem-se 2K máquinas associadas e M-2K máquinas não associadas às células; Etapa 2: Escolher aleatoriamente uma máquina entre as máquinas restantes. Associar essa máquina a uma célula escolhida aleatoriamente. Repetir o passo 2 até que todas as máquinas estejam associadas às células. 7. Processo de seleção O processo de seleção irá se basear no valor da função objetivo obtido por cada cromossomo. Os cromossomos são classificados em ordem decrescente segundo seus valores. Para garantir que boas soluções não sejam perdidas no processo de seleção, as melhores soluções (em torno ENEGEP 2004 ABEPRO 508

de 5%) são transferidas integralmente para a nova população. Isso significa que 95% da população será submetida ao processo de seleção. O processo de seleção adotado foi o da roleta (Roulette Wheel) da forma proposta por Goldberg (1989). A cada cromossomo associa-se um valor de probabilidade dado pelo quociente entre o valor da função objetivo do cromossomo e a soma dos valores da função objetivo de todos os cromossomos da população. Valores maiores desse quociente indicam cromossomos mais adaptados e com maior possibilidade de serem escolhidos para sofrerem cruzamento. 8. Operadores dos cromossomos Foram definidos quatro operadores de cromossomos: cruzamento, mutação 1, mutação 2 e inversão. A mutação 1 e a inversão são operadores que não apresentam possibilidades de ferir as duas restrições já citadas. Já o cruzamento e a mutação 2 devem sofrer uma avaliação posterior para garantir que as restrições sejam obedecidas. Operador Cruzamento: assim que dois cromossomos são sorteados pela roleta aplica-se a probabilidade de cruzamento. Caso o cruzamento não ocorra os dois cromossomos são submetidos aos operadores de mutação 1 e 2 e transferidos para a nova população. Caso o cruzamento ocorra o seguinte procedimento é adotado: Passo 1: Definir o ponto de cruzamento sorteando um número inteiro aleatório entre 1 e K-1; Passo 2: Gerar os cromossomos filhos trocando os grupos de máquinas à direita do ponto de cruzamento na Forma 2. A Figura 4 apresenta dois cromossomos pai na Forma 2 e o resultado do cruzamento, assumindo que o ponto de cruzamento seja na segunda posição (ou seja, trocam-se os genes da terceira posição em diante). Pais (1 10 14 / 2 3 8 / 4 6 13 / 5 11 12 / 7 9 15) Filhos (1 10 14 / 2 3 8 ) / 3 10 / 4 5 11 12 / 6 9 13 14 (1 8 / 2 7 15 / 3 10 / 4 5 11 12 / 6 9 13 14) (1 8 / 2 7 15 / 4 6 13 / 5 11 12 / 7 9 15) Figura 4- Exemplo de cruzamento. Passo 3: Corrigir os cromossomos filhos evitando alterar os grupos que foram trocados. Com o cruzamento proposto, máquinas podem aparecer em mais de um grupo. Além disso, pode ocorrer de algum grupo ficar com apenas 1 máquina. A primeira correção consiste em remover as máquinas duplicadas, caso existam. A segunda correção é a alocação aleatória das máquinas faltantes, inicialmente nos grupos com apenas 1 máquina. Caso todos os agrupamentos possuam o número mínimo de máquinas então as máquinas faltantes são designadas aleatoriamente a qualquer grupo. A Figura 5 ilustra a correção de um cromossomo filho gerado na Figura 4. ENEGEP 2004 ABEPRO 509

1 10 14 2 3 8 3 10 4 5 11 12 6 9 13 14 Remoção das máquinas duplicadas: 3, 10 e 14. 1 2 8 3 10 4 5 1 12 6 9 13 14 Adição das máquinas faltantes: 7 e 15. Recodificação da Forma 3. 1 7 15 2 8 3 10 4 5 11 12 6 9 13 14 Figura 5 Correção do cromossomo filho 1. Operador Mutação 1: na aplicação desse operador, que ocorre na Forma 2, sorteiam-se aleatoriamente dois números inteiros entre 1 e K, que representarão os grupos que sofrerão mutação no cromossomo. Em seguida sorteia-se uma máquina de cada grupo escolhido. As máquinas são então trocadas. Nota-se que não ocorre alteração no número de máquinas dos grupos envolvidos e também não existe a possibilidade de duplicação ou falta de alguma máquina. Essa mutação é exemplificada na Figura 6. Grupos selecionados: 2 e 5 Elementos sorteados: grupo 2=1 e grupo 5= 3 Antes da mutação: (1 10 14 / 2 3 8 / 4 6 13 / 5 11 12 / 7 9 15) Depois da mutação: (1 10 14 / 15 3 8 / 4 6 13 / 5 11 12 / 7 9 2) Figura 6 - Exemplo da mutação 1. Operador Mutação 2: sorteia-se aleatoriamente um número inteiro entre 1 e K-1, que irá representar a fronteira entre dois grupos. Sorteia-se também uma direção (esquerda ou direita). A mutação consiste simplesmente em mover a fronteira uma posição na direção sorteada. Esse operador é aplicado somente se a restrição 2 não for violada. A Figura 7 ilustra essa mutação. Número inteiro sorteado: 3 Direção sorteada: direita Antes da mutação: (1 10 14 / 2 3 8 / 4 6 13 / 5 11 12 / 7 9 15) Depois da mutação: (1 10 14 / 2 3 8 / 4 6 13 5 / 11 12 / 7 9 15) Figura 7- Exemplo da mutação 2. Operador Inversão: este operador deve ser aplicado antes que o cruzamento ocorra. Sua probabilidade de ocorrência é baixa, mas quando ocorre, o primeiro cromossomo do par escolhido para cruzamento é reescrito de forma invertida, como mostra a Figura 8. ENEGEP 2004 ABEPRO 510

Antes da inversão: (1 10 14 / 2 3 8 / 4 6 13 / 5 11 12 / 7 9 15) Depois da inversão: (7 9 15 / 5 11 12 / 4 6 13 / 2 3 8 / 1 10 14) Figura 8- Exemplo do operador inversão. 9. O algoritmo proposto O algoritmo foi implementado em Visual Basic 6 para execução de testes e segue os passos apresentados pela Figura 9. Passo 1 Entrada de dados. Fornecer os valores dos parâmetros do Quadro 1 e os dados de tempos de fabricação, preparação (setup) e demanda para cada produto. Passo 2 Gerar a população inicial. Passo 3 Calcular o valor da função objetivo para cada elemento da população inicial. Passo 4 Reescrever cada cromossomo da população nas formas 2 e 3. Passo 5 Determinar as melhores soluções (5%) da população inicial e levar para a nova população. Passo 6 Selecionar os cromossomos para cruzamento usando o procedimento da roleta. Se o cruzamento não ocorrer vá para o Passo 7. Se o cruzamento for ocorrer aplique o operador de inversão seguido do operador de cruzamento. Corrija os cromossomos descendentes se necessário. Passo 7 Aplique os operadores de mutação aos cromossomos resultantes no Passo 6 se a probabilidade de mutação ocorrer. Passo 8 Calcule o valor da função objetivo para cada elemento da nova população. Passo 9 Substitua a população antiga pela nova. Passo 10 Teste se o número de gerações foi alcançado. Em caso afirmativo, mostre a melhor solução contida na população e termine o algoritmo. Em caso negativo volte ao passo 5. Figura 9 Algoritmo proposto. 10. Parâmetros Os parâmetros requeridos pelo algoritmo genético proposto estão apresentados no Quadro 1, juntamente com os valores usados no teste discutido na seção 11. Parâmetro Valor Número de peças 30 K (número de células a serem formadas) 3 Tamanho do cromossomo (tipos de máquinas disponíveis) 15 Número de elementos da população 40 Número de gerações a explorar 200 Probabilidade de cruzamento 0,85 Probabilidade de mutação 1 0,10 Probabilidade de mutação 2 0,05 Probabilidade de inversão 0,10 Quadro 1 - Parâmetros e valores típicos. ENEGEP 2004 ABEPRO 511

Observa-se pelo Quadro 1 que a probabilidade de cruzamento é bastante alta enquanto as probabilidades de mutação e inversão são muito menores. As mutações e a inversão procuram manter uma diversidade dentro da população de cada geração. 11. Exemplo de aplicação Vários testes foram realizados com diferentes números de máquinas e peças. Em virtude da limitação de espaço, comentaremos a aplicação do algoritmo na matriz contendo 15 máquinas e 30 peças utilizada por Venugopal & Narendran (1992). O Quadro 2 mostra a matriz inicial e o Quadro 3 mostra a matriz diagonalizada obtida pelo algoritmo proposto. O resultado é o mesmo que o apresentado pelos autores citados. Máquinas Peças 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 0.3 0.6 0.6 0.2 0.2 0.5 0.7 0.4 0.6 2 0.4 0.5 0.7 0.3 0.4 0.3 0.6 0.8 0.9 0.2 3 0.6 0.7 0.3 0.2 0.4 0.9 0.6 0.2 0.2 0.4 0.3 0.5 4 0.2 0.3 0.4 0.7 0.5 0.6 0.2 0.4 0.4 0.5 0.6 5 0.2 0.3 0.4 0.5 0.7 0.8 0.9 0.6 0.8 0.2 6 0.8 0.9 1 0.7 0.2 0.3 0.4 0.5 0.6 0.8 7 0.8 0.9 0.3 0.5 0.5 0.7 0.3 0.5 0.6 0.9 8 1.1 1.2 0.3 0.8 0.3 0.9 0.2 0.3 0.4 0.5 9 0.4 0.5 0.6 0.9 0.5 0.6 0.7 0.8 0.9 1 10 0.6 0.2 0.3 0.9 0.2 0.3 0.4 0.5 0.6 0.8 11 0.3 0.3 0.2 0.3 0.4 0.5 0.9 0.2 0.5 0.6 0.7 0.8 12 0.6 0.7 0.8 0.9 0.9 0.3 0.5 0.5 0.6 0.7 13 0.7 0.5 0.6 0.8 0.5 0.3 0.4 0.5 0.7 0.8 14 0.2 0.6 0.8 1 0.5 0.4 0.6 0.8 0.2 0.8 15 0.5 0.7 0.9 0.3 0.7 0.9 0.3 0.4 Demanda 155 150 148 160144158 152155 164 148140144145162170140156132172164144158155 152 140166 148 145144170 Quadro 2 Matriz peça-máquina inicial (VENUGOPAL & NARENDRAN, 1992). Máquinas Peças 1 3 6 7 8 9 10 11 17 19 2 5 12 14 16 18 20 22 26 27 4 13 15 21 23 24 25 28 29 30 1 0.3 0.6 0.6 0.2 0.2 0.5 0.7 0.4 0.6 2 0.4 0.5 0.7 0.3 0.4 0.3 0.6 0.8 0.9 0.2 3 0.6 0.7 0.2 0.4 0.9 0.6 0.2 0.2 0.3 0.5 0.4 0.3 7 0.8 0.9 0.3 0.5 0.5 0.7 0.3 0.5 0.6 0.9 10 0.6 0.2 0.3 0.9 0.2 0.3 0.4 0.5 0.6 0.8 4 0.2 0.3 0.7 0.6 0.2 0.4 0.4 0.5 0.6 0.4 0.5 5 0.2 0.3 0.4 0.5 0.7 0.8 0.9 0.6 0.8 0.2 6 0.8 0.9 1 0.7 0.2 0.3 0.4 0.5 0.6 0.8 8 1.1 1.2 0.3 0.8 0.3 0.9 0.2 0.3 0.4 0.5 9 0.4 0.5 0.6 0.9 0.5 0.6 0.7 0.8 0.9 1 11 0.3 0.3 0.2 0.3 0.4 0.5 0.9 0.2 0.5 0.6 0.7 0.8 12 0.6 0.7 0.8 0.9 0.9 0.3 0.5 0.5 0.6 0.7 13 0.7 0.5 0.6 0.8 0.5 0.3 0.4 0.5 0.7 0.8 14 0.2 0.6 0.8 1 0.5 0.4 0.6 0.8 0.2 0.8 15 0.5 0.7 0.9 0.3 0.7 0.9 0.3 0.4 Demanda 155 148158 152 155164 148 140156 172 150144144162140132164158166148 160145170 144155 152 140145144170 Quadro 3 Matriz peça-máquina diagonalizada (solução). ENEGEP 2004 ABEPRO 512

A Figura 10 mostra uma evolução típica dos valores de F 1 e F 2 durante o processamento do algoritmo no caso da matriz do Quadro 2. Observa-se que após um certo número de gerações o algoritmo converge para a solução ótima. Também foram realizados diversos testes com uma matriz composta por 50 máquinas e 150 peças (ZOLFAGHARI & LIANG, 1997). A solução deste problema consiste de 6 células e foi encontrada pelo AG após 7000 gerações (valor médio determinado após 30 aplicações do algoritmo). Explica-se o número maior de gerações pela extrema complexidade do problema. Atualmente, nenhum algoritmo exato pode resolver este problema em um tempo de computação adequado ou aceitável. Movimentos entre células Variação total de carga dentro da célula 35 30 Fitness F1 F 1 min F 1avg Fitness F2 25 20 15 10 F 2min F 2avg 5 7000 6000 5000 4000 3000 2000 1000 0 10 20 30 40 50 60 70 80 90 100 Geração 0 10 20 30 40 50 60 70 80 90 100 Geração Figura 10 Evolução dos valores de F 1 e F 2 em função do número de gerações. 12. Comentários finais O algoritmo proposto possui diversas características novas, sendo algumas delas inéditas tais como a geração da população inicial, a codificação dos cromossomos na forma de grupos em vez de máquinas individuais, os operadores de cruzamento e mutação que trabalham diretamente com os grupos e o procedimento de correção dos descendentes. As soluções encontradas nos testes realizados fornecem informações importantes sobre as possíveis células que podem ser implementadas. Porém, por se tratar de uma heurística não se pode garantir que a melhor solução tenha sido encontrada. É necessário rodar o algoritmo diversas vezes para se ter a certeza de termos encontrado a melhor solução. Também quando não se sabe o número de células é necessário variar esse valor como dado de entrada do algoritmo e comparar as diferentes soluções obtidas. Os testes realizados mostraram que o número de gerações necessárias para se obter uma boa solução aumenta com o aumento do número de máquinas e com o número de células desejado. Referências FALKENAUER, E. (1988) - Genetic algorithms and grouping. John Wiley & Sons Ltd. GOLDBERG, D. E. (1989) - Genetic algorithm in search, optimization, and machine learning. Addison-Wesley. IRANI, S. A & HUANG, H. (1998) - Layout modules: a novel extension of hybrid cellular layouts. ASME International Mechanical Engineering Congress & Exposition. Winter Annual Meeting of the ASME. Anahein, CA. November 15-20. SURESH, G.; VINOD, V. V. & SASHU, S. (1995) - A genetic algorithm for facility layout. International Journal of Production Research. Vol 33, n.11, p.3411-3423. VENKATADRI, U.; RARDIN, R. L. & MONTREUIL, B. (1997) - A design methodology for fractal layout organization. IEE Transactions. Vol 29, p. 911-924. VERNUGOPAL, V. & NARENDRAN, T. T., (1992) - A genetic algorithm approach to the machine-component grouping problem with multiple objectives. Computers in Industrial Engineering. Vol 22, n.4, p. 469-480. ZOLFAGHARI, S. & LIANG, M. (1997) - An objective-guided ortho-synapse Hopfield network approach to machine grouping problems. International Journal of Production Research. Vol.35, n.10, p.2773-2792. ENEGEP 2004 ABEPRO 513