You are on page 1of 13

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

Ana Rita Tiradentes Terra Argoud Eduardo Vila Gonalves Filho Alexandre Jos Tiberti

Resumo
O projeto de arranjo fsico modular tem como base o agrupamento de mquinas em mdulos a partir de subseqncias de operaes comuns a um conjunto de peas. No mtodo proposto por Huang (2003), os mdulos de arranjo fsico so gerados por anlise de agrupamentos. O presente trabalho apresenta uma forma alternativa gerao de mdulos de arranjo fsico, atravs de algoritmo gentico de agrupamento (AGA). O AGA permite ao usurio especificar a priori o nmero desejado de mdulos (problema de K-agrupamentos), e tambm trabalhar de forma que o nmero e a formao dos mdulos sejam variveis de deciso do problema (problema de agrupamento automtico). Uma caracterstica importante do AGA sua flexibilidade, pois fornece a possibilidade ao usurio de interagir com o mtodo de soluo atravs da escolha de diferentes codificaes do cromossomo, de medidas de similaridade para comparao de seqncias de operaes e de mtodos de gerao da nova populao. Para tal foram desenvolvidos dois operadores de cruzamento e trs operadores de mutao. No exemplo apresentado, os mdulos de arranjo fsico gerados pelo AGA e o arranjo fsico final da fbrica foram comparados aos de Huang (2003) e houve importante reduo da distncia total percorrida pelo conjunto de peas, demonstrando a eficcia do algoritmo gentico de agrupamento. Dessa forma, os resultados apontaram o AGA como uma alternativa gerao de mdulos de arranjo fsico em projeto de arranjo fsico modular.
Palavras-chave: Arranjo fsico modular. Algoritmos genticos. Agrupamento. Manufatura.

1 Introduo
O projeto de arranjo fsico em manufatura trata da disposio fsica das mquinas, equipamentos, reas de suporte produo e reas para pessoal (TOMPKINS et al., 2003). O correto projeto do arranjo fsico decisivo para a sobrevivncia e sucesso de uma empresa, pois permite a racionalizao do espao, minimizao da movimentao de materiais e de pessoas, levando reduo de custos e aumento da eficincia do sistema produtivo. Novos tipos de arranjo fsico como o gil, fractal, modular e distribudo tm despertado grande interesse entre os pesquisadores, seja em metodologia de projeto, em formas de avaliao de desempenho ou em comparaes com arranjos fsicos tradicionais (BENJAAFAR et al., 2002). A prtica tradicional da indstria usar uma amostra de produtos para projetar o tipo de arranjo fsico da fbrica. Por exemplo, para produtos padronizados e com grande volume de demanda usa-se arranjo fsico em linha, para produtos com caractersticas similares de projeto e processo constri-se o arranjo fsico celular, e produtos com baixo volume de demanda e sem similaridade aparente so processados em arranjo fsico funcional. O arranjo fsico modular, tema deste trabalho, no assume a priori padres de fluxo e critrios para agrupamento de mquinas, como nos arranjos celular, funcional e em linha. O arranjo fsico modular identifica os padres de fluxo existentes na fbrica e gera um arranjo, chamado mdulo, para cada fluxo de materiais. Uma das vantagens do arranjo fsico modular possibilitar o encadeamento de operaes e com isso diminuir a movimentao de peas na fbrica. O primeiro trabalho encontrado sobre arranjo fsico modular foi o de Shahrukh A. Irani e Heng Huang apresentado em 1998 (IRANI; HUANG, 1998). Em continuidade ao trabalho de 1998, Huang (2003) props
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

394

Argoud et al.

um procedimento para projeto de arranjo fsico modular. Os dados de entrada necessrios para o projeto de arranjo fsico modular so o conjunto de peas com a seqncia de operaes, a quantidade produzida de cada pea e os tempos de processamento de cada operao. Neste procedimento, os mdulos de arranjo fsico so gerados a partir de agrupamento de subseqncias de operaes atravs de anlise de agrupamentos. Para tal, Huang (2003) usou um mtodo de agrupamento hierrquico aglomerativo com mtodo da mdia das distncias para regra de ligao. Segundo Cole (1998), mtodos de agrupamento hierrquico possuem algumas desvantagens: a) eles so indicados para pequenos conjuntos de dados, devido necessidade de armazenar e atualizar constantemente matrizes de similaridade; b) se um elemento for alocado incorretamente a um grupo, em um estgio inicial, ele permanecer no mesmo grupo at o trmino do processo. No h chance para que o elemento procure pelo grupo correto; e c) os resultados refletem o grau com que os dados se ajustam estrutura formal do mtodo de agrupamento. O objetivo deste trabalho foi desenvolver uma alternativa gerao dos mdulos de arranjo fsico de Huang (2003). No presente trabalho, os mdulos so gerados a partir do agrupamento de subseqncias de operaes atravs de algoritmo gentico de agrupamento (AGA). Para aplicao do procedimento proposto por Huang (2003), o usurio deve especificar o nmero desejado de mdulos (grupos de mquinas), ou seja, o nmero de grupos conhecido e usado como parmetro para se encontrar a soluo. Entretanto, quando se define o nmero de grupos, podem ser gerados agrupamentos artificiais. Geralmente, o algoritmo rodado vrias vezes, para depois escolher a soluo que parea melhor ou que tenha a interpretao mais significativa. Para isso deve-se ter conhecimento do domnio do problema. Dessa forma, esses algoritmos realizam busca pela soluo em um espao relativamente pequeno (HRUSCHKA, 2001). O algoritmo gentico de agrupamento (AGA) desenvolvido neste trabalho permite ao usurio tanto especificar a priori o nmero desejado de mdulos (problema de K-agrupamentos), como trabalhar de forma que o nmero e a formao dos mdulos sejam variveis de deciso do problema (problema de agrupamento automtico). Alm disso, o AGA altamente flexvel, pois possibilita ao usurio interagir com o mtodo de soluo atravs da escolha de diferentes codificaes do cromossomo, de medidas de similaridade e de mtodos de gerao da nova populao.
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

2 Metodologia de pesquisa
Segundo a classificao dos tipos de pesquisa apresentada por Marconi e Lakatos (1985), esta pesquisa de natureza aplicada com carter experimental. Para seu desenvolvimento faz-se uso de pesquisa bibliogrfica. A Figura 1 a seguir apresenta um fluxograma com as etapas do desenvolvimento desta pesquisa.

3 Algoritmos genticos
Um algoritmo gentico (AG) um mtodo de busca e otimizao inspirado no princpio de seleo natural

Pesquisa bibliogrfica exploratria sobre projeto de arranjo fsico em manufatura - Tipos tradicionais: posicional, produto, celular, processo - Ferramentas computacionais de apoio ao projeto e para validao do mesmo

Pesquisa bibliogrfica sobre algoritmos genticos

Pesquisa bibliogrfica sobre novas tendncias de arranjos fsicos em manufatura: celular hbrido, fractal, distribudo, gil, modular

Pesquisa bibliogrfica sobre algoritmos genticos aplicados ao projeto de arranjo fsico

Pesquisa bibliogrfica sobre arranjo fsico modular

Definio da lacuna Estudar forma alternativa para gerao de arranjo fsico modular

Desenvolver procedimento para gerar mdulos de arranjo fsico atravs de algoritmos genticos

Implementao computacional do algoritmo gentico (AG)

Verificao e validao (AG)

Experimentao (AG)

Gerao do arranjo fsico modular final

Anlises e concluses

Redao final

Figura 1. Fluxograma de desenvolvimento da pesquisa.

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

395

e sobrevivncia dos indivduos mais aptos, descoberto pelo fisiologista Charles Darwin e descrito em seu livro A Origem das Espcies, de 1859. Algoritmos genticos foram introduzidos por John Holland, em 1975, e popularizados por David Goldberg, em 1989. Segundo Goldberg (1989), as principais caractersticas de um algoritmo gentico (AG) so: a) trabalha com a codificao do conjunto de parmetros em uma string; b) realiza busca a partir de uma populao de pontos (possveis solues) e no de um ponto nico; c) usa informao da funo objetivo (funo de aptido) para efetuar busca por melhores solues; e d) usa regras de transio probabilsticas (escolha aleatria) para guiar a busca em regies do espao com maior chance de melhoria. Muitos termos usados em algoritmos genticos so originados da biologia. O Quadro 1, a seguir, sumariza os principais termos segundo Lacerda, Carvalho e Ludermir (2002). Um AG inicia com uma populao de indivduos (cromossomos) que representam possveis solues do problema a ser resolvido. A populao avaliada e cada cromossomo recebe uma nota, denominada aptido. Os melhores cromossomos (mais aptos) so selecionados e os piores descartados. Os selecionados podem sofrer cruzamento e mutao, gerando descendentes para a prxima gerao. O processo continua at que uma soluo satisfatria seja encontrada (LACERDA; CARVALHO; LUDERMIR, 2002). Este processo ilustrado na Figura 2.

Os principais elementos de um algoritmo gentico so: codificao, populao inicial, funo de aptido, seleo, operadores genticos, gerao da nova populao, critrio de parada e parmetros. A seguir apresentado o algoritmo gentico de agrupamento (AGA) desenvolvido e detalhado cada um daqueles elementos.

4 O algoritmo gentico de agrupamento


O algoritmo gentico de agrupamento (AGA) realiza o agrupamento de subseqncias de operaes e gera os mdulos bsicos de arranjo fsico. O AGA segue os passos do Quadro 2, a seguir. A determinao das subseqncias comuns, descrita no passo 2 do Quadro 2 feita de acordo com o algoritmo apresentado em Huang (2003). A matriz de similaridade entre subseqncias de operaes comuns descrita no passo 3 calculada a partir da escolha pelo usurio de um dos coeficientes de similaridade: coeficiente baseado na distncia de Levenshtein (TAM, 1990), coeficiente LCS mais longa subseqncia comum (ASKIN; ZHOU, 1998) ou coeficiente Merger (HUANG, 2003). 4.1 Codificao do cromossomo A codificao refere-se forma pela qual o cromossomo representa uma soluo. O AGA permite a seleo de uma entre trs formas de codificao do cromossomo, R1, R2 ou R3. As codificaes R1 e R2 foram inspiradas nos trabalhos de Tseng e Yang (2001) e de Garai e Chaudhuri (2004), e a codificao R3 no de Hruschka (2001). Nas trs codificaes, o gene representa uma subseqncia comum (conjunto de mquinas). O valor do gene indica o mdulo ao qual a subseqncia pertence. R1: Inteiros e zeros. Esta codificao usada quando o usurio especifica o nmero desejado de mdulos ou grupos (K). O tamanho do cromossomo equivale ao nmero de subseqncias comuns. Seja o exemplo com 8 subseqncias e 4 grupos. (2 0 0 3 1 0 4 0) S1 S2 S3 S4 S5 S6 S7 S8 As subseqncias S1, S4, S5 e S7 foram sorteadas e receberam aleatoriamente valores de 1 a 4. Essas subse-

Quadro 1. Analogia de termos entre algoritmos genticos e a biologia. Adaptado de Lacerda et al. (2002). Termo Cromossomo ou indivduo Gene Algoritmos genticos (AG) Conjunto de genes de String que representa um organismo. uma soluo para o problema. Unidade de hereditaParmetro codificado riedade transmitida no cromossomo, ou pelo cromossomo e que seja, um elemento da controla as caractersti- string. cas do organismo. Composio gentica Informao contida contida no cromossono cromossomo. mo. Manifestao fsica de Estrutura construda a um gene no organismo, partir do gentipo. por exemplo, pele lisa ou rugosa. Uma das formas alter- Valores que o gene nativas de um gene. pode assumir. Biologia

Reproduo (cruzamento) Seleo Populao antiga Populao intermediria Populao nova

Gentipo

Fentipo

Mutao

Alelo

Figura 2. Princpio de trabalho de um algoritmo gentico. (GONALVES FILHO et al., 2004).


Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

396

Argoud et al.

Quadro 2. Algoritmo gentico de agrupamento (AGA). (ARGOUD, 2007). Passo 1: Passo 2: Passo 3: Passo 4: Entrada de dados: peas e seqncia de operaes. Encontre as subseqncias de operaes (mquinas) consecutivas comuns entre todos os pares de seqncia. Gere a matriz de similaridade entre subseqncias comuns. Escolha a forma de codificao do cromossomo (R1, R2 ou R3) e o mtodo de aplicao dos operadores genticos (probabilstico ou faixa percentual).

Passo 5: Gere a populao inicial. Passo 5.1: Defina intervalo para o valor de K (nmero de grupos). Passo 5.2: Inicie o indivduo. Passo 5.2.1: Plante as sementes nos grupos. Passo 5.2.2: Agrupe as demais subseqncias de acordo com a codificao do cromossomo usada: se codificao R1 ou R2 faa itens a) e b); se R3, faa o item c). a) para cada subseqncia no agrupada (Di), procure pelo grupo (Gj) com o qual Di possua a maior similaridade mdia (Sim) e insira Di em Gj; b) repita o item a) at que todas as subseqncias sejam agrupadas. Mostre os agrupamentos formados. V para o passo 6; e c) cada subseqncia no agrupada (Di) inserida em um grupo escolhido aleatoriamente. Mostre os agrupamentos formados. V para o passo 6. Passo 6: Passo 7: Passo 8: Passo 9: Calcule o valor da funo de aptido para cada cromossomo. Teste o critrio de parada. Em caso afirmativo, mostre os cromossomos em ordem decrescente de aptido e termine o algoritmo. Em caso negativo v para o passo 8. Determine as melhores solues (regra do elitismo) da populao atual e leve para a nova populao. Faa os passos 9 a 15 at que se complete a nova populao. Selecione os cromossomos para cruzamento usando o procedimento da roleta.

Passo 10: Se o mtodo de aplicao dos operadores for probabilstico v para o passo 11, se for faixa percentual v para o passo 13. Passo 11: Aplique o operador de cruzamento caso o cruzamento ocorra. Corrija os cromossomos descendentes se necessrio. Passo 12: Aplique os operadores de mutao nos descendentes se a probabilidade de mutao ocorrer. V para o passo 15. Passo 13: Aplique o operador de cruzamento aos x% (taxa de cruzamento) primeiros cromossomos sorteados e corrija os descendentes se necessrio. Passo 14: Aplique os operadores de mutao ao restante dos cromossomos sorteados, respeitando as taxas de cada mutao e a ordem de seleo. Passo 15: Adicione os descendentes nova populao. Passo 16: Substitua a populao atual pela nova e retorne ao passo 6.

qncias funcionaro como sementes de agrupamentos iniciais. Os grupos sero formados pelas seguintes subseqncias sementes: grupo 1: S5; grupo 2: S1; grupo 3: S4 e grupo 4: S7. R2: Esta codificao usada quando o nmero de mdulos no especificado pelo usurio, ou seja, quando o algoritmo resolve o problema de agrupamento automtico. O usurio apenas especifica um valor mnimo e mximo para K (nmero de grupos). A diferena em relao R1 est na adio de um gene na ltima posio do cromossomo, indicando o nmero de grupos do cromossomo especfico. Seja o exemplo com 8 subseqncias. O nmero de grupos (K) sorteado aleatoriamente no intervalo 1 K 8. No exemplo, K = 4: (2 0 0 4 1 0 3 0 4) S1 S2 S3 S4 S5 S6 S7 S8 K os grupos sero formados pelas seguintes subseqncias de sementes, sorteadas aleatoriamente: grupo 1: S5; grupo 2: S1; grupo 3: S4 e grupo 4: S7. A designao dos
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

genes zerados aos grupos, nas codificaes R1 e R2, feita de acordo com procedimento descrito na seo 3.2. R3: Grupo-rtulo. Esta codificao tambm usada em problemas de agrupamento automtico. A diferena em relao R2 est no fato de que em R3 todas as subseqncias so designadas aos grupos aleatoriamente. Seja o exemplo com 8 subseqncias e nmero de grupos (K) variando no intervalo 1 K 8. Suponha que o valor sorteado de K seja 3. (2 1 2 1 3 3 2 1 3) S1 S2 S3 S4 S5 S6 S7 S8 K Os grupos sero formados pelas subseqncias: grupo 1: S2, S4, S8; grupo 2: S1, S3, S7 e grupo 3: S5, S6. 4.2 Populao inicial A populao inicial formada por um conjunto de cromossomos, ou indivduos, que representam possveis solues do problema. No AGA, a gerao da populao inicial feita conforme os passos a seguir. Passo 1: Definio do valor de K (nmero de grupos)

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

397

O nmero de grupos (K) deve variar entre um valor mnimo e mximo definido pelo usurio, ou seja, Kmin K Kmx. Conforme a codificao do cromossomo, R1, R2 ou R3, algumas restries devem ser respeitadas. a) restrio 1: Kmin = Kmax para a codificao R1. Como K fixo, todos os indivduos tero o mesmo nmero de grupos. b) restrio 2: Kmin Kmax para codificaes R2 ou R3. Sorteie o nmero de grupos (K) para cada indivduo aleatoriamente conforme distribuio uniforme entre Kmin e Kmax. Para a funo de aptido largura da silhueta mdia, detalhada adiante, Kmin 2 e Kmax NSubseq. Passo 2: Iniciao de um indivduo Neste passo so formados os grupos em cada cromossomo, do seguinte modo: a) plante as sementes nos grupos. Selecionam-se K subseqncias aleatoriamente e coloca-se uma em cada grupo, para garantir que haja ao menos uma subseqncia por grupo; e b) agrupe as demais subseqncias de acordo com a codificao do cromossomo. Para codificaes R1 ou R2: para cada subseqncia no agrupada (Di) procure pelo grupo (Gj) com o qual Di possua a maior similaridade mdia (Sim), e insira Di em Gj. A similaridade mdia calculada pela Equao 1:
Sim(Gj, Di ) = 1 M [x, Di ] Gj x Gj

Para a codificao R3, cada subseqncia no agrupada (Di) inserida em um grupo escolhido aleatoriamente. Passo 3: Classificao dos indivduos Os indivduos so classificados do modo a seguir, para posteriormente serem selecionados para cruzamento e/ou mutao. a) calcule o valor de aptido para cada indivduo; b) ordene os indivduos em ordem decrescente dos valores de aptido e guarde os valores de melhor e pior aptido; e c) calcule a mdia dos valores de aptido. 4.3 Funo de aptido O papel da funo de aptido em um algoritmo gentico avaliar a qualidade da soluo. A funo de aptido largura da silhueta mdia, empregada no AGA, foi proposta por Kaufman e Rousseeuw (1990). Ela trabalha com dissimilaridades entre elementos de um conjunto de dados. A largura da silhueta mdia maximiza a homogeneidade interna de cada grupo e a heterogeneidade entre grupos distintos. Aplicada ao projeto de arranjo fsico modular, a homogeneidade dentro de cada mdulo pode ser obtida pela minimizao das dissimilaridades entre suas subseqncias. A heterogeneidade entre diferentes mdulos pode ser medida pela maximizao da dissimilaridade mdia entre as subseqncias. Considere uma subseqncia i qualquer do conjunto de dados. Para definir a silhueta s(i), primeiro definimos A, o grupo ao qual a subseqncia pertence e calculamos: a) a(i) = dissimilaridade mdia de i em relao a todas as outras subseqncias de A; e b) agora considere qualquer grupo C diferente de A e definimos: d(i, C) = dissimilaridade mdia da subseqncia i em relao a todas as subseqncias de C. Depois de calcular d(i, C) para todos os grupos com C A, selecionamos a menor delas (Equao 2): b(i) = min d(i,C), C A (2)

(1)

em que: Di = subseqncia no agrupada; x = subseqncia do grupo Gj; |Gj| = nmero de elementos do grupo Gj; M = valor da similaridade na matriz de subseqncias de operaes. Este procedimento de agrupamento de subseqncias foi inspirado nos trabalhos de Tseng e Yang (2001) e Garai e Chaudhuri (2004), que realizaram um pragrupamento do conjunto de dados com o objetivo de reduzir o tempo computacional do algoritmo. Entretanto, esses autores trabalharam com distncia do centride e implementaram o mtodo do vizinho mais prximo. O procedimento aqui proposto, para R1 ou R2, visa formar agrupamentos iniciais com o intuito de guiar o algoritmo gentico a partir de boas solues iniciais. Dois casos especiais devem ser considerados para as codificaes R1 e R2. Quando a subseqncia Di possui similaridade igual a zero para com todas as outras subseqncias e o nmero de grupos (K) do cromossomo menor que o mximo, ou seja, Sim (Di) = 0 e K < Kmax. Neste caso deve ser criado um novo grupo para Di. Quando Sim (Di) = 0 e K = Kmax, ou seja, no se pode criar novo grupo, pois K est no mximo. Neste caso, Di inserida em um grupo existente aleatoriamente.

O grupo B para o qual esta dissimilaridade mnima [d(i, B) = b(i)] chamado de vizinho da subseqncia i. a segunda melhor escolha da subseqncia i. Note que b(i) depende da capacidade dos grupos em diferir de A, portanto, as silhuetas no so definidas para K =1 (quando houver apenas um grupo). A largura da silhueta de cada subseqncia i definida pela Equao 3:
s(i ) = b(i ) a(i ) max{a(i ), b(i )}

(3)

Propriedades de s(i): a) 1 s(i) 1; b) s(i) = 0 quando A = {i1} (o grupo A possuir apenas uma subseqncia); e c) 2 K NSubseq (nmero de subseqncias comuns).
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

398

Argoud et al.

Quando s(i) muito prxima do valor 1 significa que a dissimilaridade interna, a(i), muito menor que a menor dissimilaridade externa, b(i). Portanto podemos concluir que a subseqncia i est bem classificada em seu grupo. Quando s(i) se aproxima de zero, a(i) e b(i) so aproximadamente iguais, portanto no est claro se a subseqncia i deveria ficar em A ou em seu vizinho B. J quando a silhueta s(i) est prxima do valor 1, ento a(i) muito maior que b(i), o que significa que a subseqncia i est mal classificada no grupo A. Ela est muito mais prxima de B do que de A. A mdia de s(i) para i = 1,2,..., n, ou seja, para todas as subseqncias, chamada largura da silhueta mdia para o conjunto de dados e a funo de aptido usada no algoritmo gentico de agrupamento (Equao 4). Funo de aptido (FA) = s(i) (4)

Este valor, s(i), usado para seleo do melhor valor de K (nmero de grupos), que acontece quando s(i) for mximo (KAUFMAN; ROUSSEEUW, 1990). 4.4 Operadores genticos Neste trabalho foram desenvolvidos dois operadores de cruzamento e trs de mutao. A aplicao dos operadores ir depender da codificao do cromossomo. Para a codificao R1, na qual o usurio determina o nmero desejado de mdulos, somente podem ser aplicados um dos operadores de cruzamento e o operador de mutao 3. Para as codificaes R2 ou R3, nas quais o nmero de mdulos formado um resultado do algoritmo, podem ser aplicados um dos operadores de cruzamento e os operadores de mutao 1, 2 e 3. 4.4.1 Operador de cruzamento Recombinao com Correo Aleatria O operador de cruzamento denominado Recombinao com Correo Aleatria foi adaptado de Hruschka (2001), que desenvolveu um algoritmo gentico de agrupamento e o aplicou a vrias bases de dados, entre elas Iris Plants Database (classes de plantas), Australian Credit Appoval Database (carto de crdito), Wiscosin Breast Cancer Database (dados sobre cncer) e dados meteorolgicos. De um modo simplificado, alguns grupos do pai A so copiados no pai B, e vice-versa, formando dois descendentes, C e D. As principais contribuies deste operador, que o fazem diferir do operador de Hruschka (2001) so: a) Hruschka (2001) trabalhou com centride como medida de proximidade. No presente trabalho, foi usada como medida de proximidade a menor das dissimilaridades mdias da subseqncia i para com cada grupo contido no descendente, ou seja, b(i) = min d(i,Gj). O uso desta medida detalhado adiante.
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

b) a introduo do mecanismo de correo dos descendentes para evitar cromossomos invlidos. A seguir apresentado um exemplo que ilustra a ao do operador. Sejam dois cromossomos pais, A e B, com codificao R3, constitudos de 8 subseqncias comuns: A - 1 1 2 3 1 4 3 3 n de grupos, KA = 4 B - 1 2 3 1 1 4 4 3 n de grupos, KB = 4 O nmero de grupos no est representado no cromossomo. Para o cromossomo A o grupo 1 composto pelas subseqncias S1, S2 e S5, o grupo 2 pela subseqncia S3, o grupo 3 pelas subseqncias S4, S7 e S8 e o grupo 4 pela subseqncia S6. Escolha aleatoriamente t (1 t KA) grupos de A para copiar em C (descendente). Por exemplo, selecione os grupos 1 e 2 de A (em negrito), ou seja, t = {1,2}: A-11231433 B-12311443 Estes grupos modificam os grupos 1, 2 e 3 de B. O grupo 4 de B no modificado. A-11231433 B-12311443 Os genes de B sublinhados tambm sero modificados no descendente C. Copie os genes selecionados de A, ou seja, {1,2}, em C: C-11201000 Os genes completados com zero em C indicam posies com potencial para receber genes no alterados de B, ou representam genes que sero reposicionados no grupo mais prximo. Por exemplo, o grupo 4 de B copiado em C, pois no foi mudado. Os grupos 1 e 3 de B (sublinhados) sero reposicionados no grupo mais prximo. Assim: C-11201440 Para reposicionamento dos genes zerados em C primeiro calcula-se a dissimilaridade mdia da subseqncia i (gene zerado) para com cada grupo (Gj) contido no descendente C. O gene zerado ser reposicionado no grupo com o qual possuir a menor das dissimilaridades mdias, ou seja, b(i) = min d(i,Gj), com 1 j k. k o nmero de grupos do cromossomo. Para gerar o descendente D feito o processo inverso. Copie em D todos os genes de B que foram alterados. Assim: D-12311003 Os genes completados com zero em D indicam posies com potencial para receber genes no alterados de A, ou representam genes que sero reposicionados no grupo mais prximo. Por exemplo, o grupo 4 de A copiado em D, pois no foi mudado. O grupo 3 de A no copiado (foi mudado), ento o gene zerado de D ser reposicionado no grupo mais prximo. Assim: D-12311403

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

399

4.4.1.1 Mecanismo de correo dos descendentes Aps o cruzamento, algumas correes devem ser feitas nos descendentes para evitar inconsistncia. So elas: a) reidentificao dos grupos. Ao criar os descendentes devem-se reidentificar os grupos, pois o grupo 1 do pai A diferente do grupo 1 do pai B; e b) verificao do nmero mnimo e mximo de grupos. O nmero de grupos do descendente deve estar entre o nmero de grupos mnimo e mximo estabelecido pelo usurio, ou seja, Kmin K Kmx. Duas situaes podem ocorrer. Situao 1: Quando K < Kmin. Nesta situao preciso criar grupos. O seguinte procedimento deve ser adotado: a) escolha aleatoriamente um grupo que possua no mnimo duas subseqncias; b) selecione um ponto de partio aleatoriamente e divida o grupo, gerando dois novos grupos; c) repita o procedimento at se atingir o nmero de grupos mnimo permitido (Kmin). Situao 2: Quando K > Kmax. Nesta situao preciso extinguir grupos. O seguinte procedimento deve ser adotado: a) selecione um grupo aleatoriamente; b) distribua cada subseqncia do grupo selecionado para o grupo que possuir a menor dissimilaridade mdia: b(i) = min d(i,Gj), ou seja, a menor das dissimilaridades mdias da subseqncia i para com cada grupo Gj do cromossomo; e c) repita o procedimento at se atingir o nmero de grupos mximo permitido (Kmax). 4.4.2 Operador de cruzamento ponto nico de grupo O operador de cruzamento denominado ponto nico de grupo age nos grupos de subseqncias comuns. Este operador foi inspirado no trabalho de Gonalves Filho e Tiberti (2006). As principais contribuies referentes ao operador Ponto nico de Grupo para este trabalho, que o fazem diferir do operador de Gonalves Filho e Tiberti (2006) so: a) no operador ponto nico de grupo houve a preocupao em preservar nos descendentes o mesmo nmero de grupos dos cromossomos pais. Para tal foi definido um procedimento para verificao e preenchimento de grupos vazios; b) em Gonalves Filho e Tiberti (2006) os genes representam mquinas, enquanto no presente trabalho, subseqncias comuns; c) neste trabalho as correes nos descendentes so realizadas na poro do cromossomo que foi trocada,

enquanto que em Gonalves Filho e Tiberti (2006) foram realizadas na parte fixa do cromossomo; d) para Gonalves Filho e Tiberti (2006), em um grupo no pode haver menos que duas mquinas. Neste trabalho no h esta restrio quanto s subseqncias; e) introduo de critrio para designao de elementos (subseqncias) faltantes (passo 6 do exemplo a seguir); e f) na implementao deste operador no foi necessrio usar as formas 2 e 3 de codificao do cromossomo, propostas por Gonalves Filho e Tiberti (2006). Os grupos e os elementos dos grupos so identificados automaticamente a partir da codificao original do cromossomo, definida na seo 3.1. Entretanto, no passo 1 do exemplo a seguir, a forma 2 de Gonalves Filho e Tiberti (2006) foi usada para facilitar a visualizao da ao do operador. Sejam dois cromossomos, A e B, com 5 e 3 grupos, respectivamente, ou seja, KA = 5 e KB = 3. A-12313454 B-11231233 Para o cromossomo B, o grupo 1 composto pelas subseqncias S1, S2 e S5, o grupo 2 pela subseqncia S3 e S6, e o grupo 3 pelas subseqncias S4, S7 e S8. Passo 1: Expresse a codificao original em termos de grupos. Os cromossomos A e B so re-escritos da forma: A-14/2/35/68/7 B-125/36/478 O primeiro grupo do cromossomo A formado pelas subseqncias S1 e S4, o segundo grupo pela subseqncia S2, e assim por diante. As barras representam a separao entre os grupos. Passo 2: Gere um nmero aleatrio inteiro entre 1 e k-1, sendo k o nmero de grupos do cromossomo pai com menos grupos. Este valor define o ponto do cruzamento. No exemplo, como B possui o menor nmero de grupos, o ponto de cruzamento escolhido aleatoriamente entre 1 e 2. Suponha que o valor 2 seja escolhido. Passo 3: Os descendentes so gerados trocando os grupos com rtulo superior ao ponto de cruzamento. Portanto, os grupos trocados sero: grupos 3, 4 e 5 de A e grupo 3 de B.
A-14/2/35/68/7 B-125/36/478 C-14/2/478 D-125/36/35/68/7

Passo 4: Excluso de subseqncias repetidas. Esta troca de grupos pode violar a restrio de que cada subseqncia esteja em apenas um grupo. Para corrigir este problema, as subseqncias que foram trocadas e que j estejam presentes na parte fixa do cromossomo descendente so excludas (subseqncias sublinhadas).
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

400

Argoud et al.

C-14/2/478 D-125/36/35/68/7 Portanto, a subseqncia 4 no descendente C e as subseqncias 3, 5 e 6 no descendente D so excludas. Assim: C-14/2/78 D-125/36//8/7 Passo 5: Preenchimento de grupos vazios. Aps a excluso das subseqncias, caso haja grupo vazio no descendente, o que no permitido, escolha aleatoriamente uma subseqncia sem grupo (no presente no cromossomo) e a designe ao grupo vazio. Repita este procedimento at que os grupos vazios sejam preenchidos. No descendente D, h um grupo vazio. Ento, a subseqncia 4 ainda sem grupo, ser designada ao grupo vazio. Assim, os descendentes so reescritos na forma: C-14/2/78 D-125/36/4/8/7 Passo 6: Designao de subseqncias faltantes. Se ainda houver subseqncia sem grupo, insira-a no grupo com o qual possua menor dissimilaridade mdia. No descendente C, as subseqncias 3, 5 e 6, ainda sem grupo, sero designadas aos grupos conforme a menor dissimilaridade mdia. No descendente D no h mais subseqncias a serem designadas. Passo 7: Verificao de grupos vazios. Caso ainda haja grupos vazios (o nmero de subseqncias sem grupo no foi suficiente), escolha aleatoriamente um grupo com mais de duas subseqncias e retire aleatoriamente uma subseqncia para ser colocada no novo grupo. 4.4.3 Operadores de mutao Aplicada ao problema de agrupamento, a mutao corresponde a mover um objeto de um grupo para outro grupo. Como realizar a mutao depende da codificao do cromossomo (COLE, 1998). No presente trabalho foram desenvolvidos trs operadores de mutao. Os operadores de mutao 1 e 2 foram inspirados no trabalho de Hruschka (2001) e os operadores de mutao 3 no trabalho de Cole (1998). As principais contribuies referentes aos operadores de mutao desenvolvidos, que os fazem diferir dos operadores dos autores supra citados, so: a) a forma de insero dos objetos (subseqncias) nos grupos pelo operador de mutao 1. Hruschka (2001) os insere no grupo com centride mais prximo. No presente trabalho as subseqncias so inseridas no grupo com a menor dissimilaridade mdia; b) a forma de escolha das sementes no operador de mutao 2. Em Hruschka (2001) as sementes so os objetos mais prximos e mais distantes do centride. No presente trabalho as sementes so as subseqncias com menor e maior dissimilaridade mdia para com as subseqncias do mesmo grupo; e
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

c) o operador Move aleatrio semelhante ao de Cole (1998), com a diferena de que neste trabalho o grupo selecionado deve possuir no mnimo dois objetos (subseqncias). Operador mutao 1 (merge): opera em cromossomos que satisfazem restrio K > Kmin. Este operador elimina aleatoriamente um grupo e insere suas subseqncias nos demais grupos. Cada subseqncia inserida no grupo com o qual possuir a menor dissimilaridade mdia: b(i) = min d(i,Gj), ou seja, a menor das dissimilaridades mdias da subseqncia i para com cada grupo Gj do cromossomo. A mutao 1 faz diminuir o nmero de grupos. Operador mutao 2 (break): opera em cromossomos que satisfazem a restrio K < Kmax. Este operador divide um grupo selecionado aleatoriamente (com no mnimo dois elementos) em dois novos grupos. A semente do primeiro subgrupo ser a subseqncia com menor a(i), ou seja, menor dissimilaridade mdia da subseqncia i em relao s outras subseqncias do grupo selecionado. A semente do segundo subgrupo ser a subseqncia com maior a(i). Feito isso, as subseqncias restantes do grupo selecionado so deslocadas para os subgrupos mais prximos. O subgrupo mais prximo ser aquele com menor dissimilaridade mdia: b(i) = min d(i,Gj), ou seja, a menor das dissimilaridades mdias da subseqncia i para com cada grupo Gj do cromossomo. Os demais grupos ficam intactos. A mutao 2 faz aumentar o nmero de grupos. Operador mutao 3 (move): A mutao 3 preserva o nmero de grupos (K), mas muda o tamanho de dois grupos. Selecione aleatoriamente uma subseqncia de um grupo com no mnimo dois elementos. Mova esta subseqncia para qualquer outro grupo aleatoriamente. 4.5 Processo de seleo e gerao da nova populao A seleo o processo de escolha dos cromossomos mais aptos para sofrerem a ao dos operadores genticos (cruzamento e mutao). A gerao da nova populao refere-se ao modo de insero dos descendentes na populao. A cada gerao, os N pais (N o tamanho da populao) so substitudos por (N - m) filhos, conforme os passos a seguir. Passo 1: Regra do elitismo. Para garantir que as boas solues permaneam de uma gerao para outra e no sejam perdidas no processo de seleo, os m melhores cromossomos podem ser copiados integralmente para a nova gerao. O usurio pode selecionar a porcentagem de cromossomos copiados, com 0 m < N, em que N o tamanho da populao. O restante da populao submetida ao processo de seleo pela roleta para, em seguida, sofrer cruzamento e/ou mutao. Passo 2: Inicia a roleta para selecionar os indivduos

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

401

O processo detalhado de seleo pela roleta descrito a seguir. a) faa a normalizao do valor de aptido de cada indivduo. - segundo Lacerda, Carvalho e Ludermir (2002), os indivduos podem apresentar valores de aptido muito prximos. Quando isto ocorre, o processo de seleo pode se tornar praticamente aleatrio, como se cada indivduo possusse uma estreita faixa na roleta. Para evitar que isso ocorra, feita uma normalizao dos valores da aptido. No presente trabalho foi definido um fator para normalizao (Fat), calculado pela diferena entre os valores de aptido do melhor e do pior indivduo, dividida pelo nmero de indivduos da populao (Equao 5):
Fat = (melhor aptido pior aptido) N

Passo 3: Gere os (N-m) indivduos restantes da nova populao Os indivduos restantes totalizam (N m), sendo N o nmero de indivduos da populao e m o nmero de indivduos copiados pela Regra do elitismo. Os indivduos restantes da nova populao so gerados com base em um dos mtodos descritos a seguir, selecionados pelo usurio. 4.5.1 Mtodo probabilstico Este o mtodo tradicional (GOLDBERG, 1989) de aplicao dos operadores de cruzamento e mutao, conforme suas taxas de probabilidade. O mtodo obedece s seguintes etapas: a) selecione dois indivduos (pais) aleatoriamente pela roleta (item c) do passo 2; b) aplique o operador de cruzamento para gerar dois descendentes, caso a probabilidade de cruzamento ocorra, caso contrrio, os dois descendentes sero apenas cpias de seus pais; e c) aplique os operadores mutao 1, mutao 2 e mutao 3 em cada descendente, se a probabilidade de mutao ocorrer. O operador aplicado quando sua taxa de probabilidade for maior ou igual a um valor (x) gerado aleatoriamente entre 0 e 1 (limites das taxas de probabilidade). Seja o exemplo, com as seguintes taxas de probabilidade definidas pelo usurio: Pcruzamento = 0,80; Pmutao 1 = 0,05; Pmutao 2 = 0,05; e Pmutao 3 = 0,10. Suponha que para o cruzamento, x seja igual a 0,673 (gerado aleatoriamente). Portanto, o cruzamento ir ocorrer, pois 0,80 > 0,673. 4.5.2 Mtodo faixa percentual O mtodo faixa percentual foi proposto por Hruschka (2001). Os operadores de cruzamento e mutao so aplicados em um determinado nmero de indivduos sorteados aleatoriamente, conforme as etapas: a) sorteie (N - m) indivduos aleatoriamente pela roleta (item c) do passo 2; b) nos primeiros x% (taxa de cruzamento) indivduos sorteados, aplique o operador de cruzamento entre o 1 e o ltimo indivduo, seguido do 2 com o penltimo, e assim por diante; caso x% seja um nmero mpar, apenas copie o indivduo central (sem par) para a nova populao; e c) aplique os operadores de mutao nos indivduos restantes: Para codificao R1: aplica-se o operador de mutao 3 em todos os indivduos restantes. As mutaes 1 e 2 no so aplicadas para essa codificao. Para codificaes R2 ou R3: aplicam-se todas as mutaes (1, 2 e 3), respeitando a ordem de seleo e as taxas de cada mutao.
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

(5)

b) calcule a probabilidade de seleo para cada indivduo. - a probabilidade de seleo (Pi) de cada indivduo equivale a uma determinada faixa da roleta, e dada pela Equao 6: Pi = (N i).Fat + Fat, com 1 i N (6)

- i a posio de cada indivduo na populao ordenada (do melhor para o pior). Isso far com que os indivduos com melhor aptido tenham maior chance de seleo, pois possuiro maior faixa da roleta. Caso Fat = 0 (zero) assume-se Fat = 1/N, em que N o tamanho da populao. A constante Fat foi adicionada ao segundo termo da Equao 6 para permitir que mesmo os indivduos com piores classificaes tenham uma pequena chance de seleo. c) selecione os indivduos aleatoriamente pela roleta. - a roleta montada na forma de um vetor (r) com (N+1) elementos, sendo N o nmero de indivduos da populao. Cada elemento r[i] corresponde a uma faixa (intervalo) da roleta equivalente probabilidade de seleo do i-simo indivduo da populao (Pi), sendo o valor extremo do intervalo calculado pela Equao 7: r[i] = r[1 + 1] + Pi, para 1 i N (7)

E, ainda, r[N+1] = 0. O procedimento adotado para seleo de um indivduo : a) gera-se um nmero aleatrio (x) entre 0 e r[1] (comprimento da roleta), isto , 0 x < r[1]; e b) o vetor r varrido em busca de um ndice i cujo valor x esteja entre r[i] e r[i + 1], isto , r[i + 1] x < r[i], em que i a posio do indivduo selecionado.

402

Argoud et al.

Seja o exemplo com as seguintes taxas de probabilidade definidas pelo usurio: Pcruzamento = 0,50; Pmutao1 = 0,25; Pmutao2 = 0,25 e Pmutao3 = 0,00. Neste exemplo, a primeira metade dos cromossomos sorteados pela roleta sofre cruzamento, pois Pc = 0,50. O primeiro cromossomo sorteado cruzado com o n/2, em que n representa o nmero de cromossomos sorteados, o segundo cromossomo com [(n/2)-1] e assim por diante. No exemplo, a mutao 1 aplicada aos cromossomos que pertencem ao intervalo [(n/2)+1, 3n/4] e a mutao 2 aplicada aos cromossomos que pertencem ao intervalo [(3n/4)+1, n]. A mutao 3 no aplicada, pois Pmutao 3 = 0,00. Independente do mtodo usado, por probabilidade ou por faixa percentual, se for gerado menos que (N m) indivduos, a populao ser completada com indivduos gerados aleatoriamente pela roleta (item c) do passo 2. Passo 4: Classificao dos indivduos Classifique os indivduos da nova populao por ordem decrescente da aptido e obtenha os valores: mdio, melhor e pior da aptido. 4.6 Critrio de parada O usurio deve especificar o nmero de geraes desejado para trmino do processo de evoluo e parada do algoritmo. No h um nmero pr-definido para este valor, ele determinado experimentalmente e deve ser suficiente para permitir a convergncia da populao. Aps o trmino, o algoritmo ordena os indivduos em ordem decrescente pelo valor da aptido.

probabilstico, operador de cruzamento: ponto nico de grupo; probabilidade de cruzamento: 0,50, operador de mutao: move; probabilidade de mutao: 0,50. O tempo de execuo do algoritmo gentico de agrupamento (AGA) foi de quatro segundos em computador Pentium 4 com 1,5 GB de RAM. O melhor cromossomo

Tabela 1. Seqncia de operaes e tempos de processamento. (VAKHARIA; WEMMERLV apud HUANG, 2003). Pea (P) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Seqncia de Tempo total de operaes processamento (minuto/lote) 1, 4, 8, 9 96-36-36-72 1, 4, 7, 4, 8, 7 36-120-20-120-24-20 1, 2, 4, 7, 8, 9 96-48-36-120-36-72 1, 4, 7, 9 96-36-120-72 1, 6, 10, 7, 9 96-72-200-120-72 6, 10, 7, 8, 9 36-120-60-24-36 6, 4, 8, 9 72-36-48-48 3, 5, 2, 6, 4, 8, 9 144-120-48-72-36-48-48 3, 5, 6, 4, 8, 9 144-120-72-36-48-48 4, 7, 4, 8 120-20-120-24 6 72 11, 7, 12 192-150-80 11, 12 192-60 11, 7, 10 288-180-360 1, 7, 11, 10, 11, 12 15-70-54-45-54-30 1, 7, 11, 10, 11, 12 15-70-54-45-54-30 11, 7, 12 192-150-80 6, 7, 10 108-180-360 12 60

5 Exemplo de aplicao
O conjunto de dados usado neste exemplo o mesmo apresentado em Huang (2003) para gerar mdulos de arranjo fsico atravs de anlise de agrupamento (cluster analysis). Para que se pudesse fazer a comparao entre as duas solues, neste exemplo tratado o problema de K-agrupamentos, no qual o usurio especifica o nmero desejado de grupos, neste caso, 4 mdulos de arranjo fsico. Os dados de entrada so apresentados na Tabela 1. Na Tabela 1, a pea 1 feita nas mquinas 1, 4, 8 e 9, e assim por diante. A partir da seqncia de operaes, conforme procedimento descrito em Huang (2003), so encontradas as subseqncias comuns nicas (Tabela 2). A partir das subseqncias comuns nicas da Tabela 2, o usurio deve definir os parmetros do algoritmo gentico de agrupamento (AGA). Os parmetros definidos no AGA foram: coeficiente de similaridade: Merger (HUANG, 2003), codificao do cromossomo: R3, nmero de grupos (mdulos): 4, tamanho da populao: 200 cromossomos, critrio de parada: 500 geraes, taxa de elitismo: 0,005, mtodo de gerao da nova populao:
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

Tabela 2. Subseqncias comuns nicas. (HUANG, 2003). Id S1 Subseqncia 14 147 1 7 11 10 11 12 11 12 11 7 11 7 12 35 47 4 7 4 8 48 489 6 10 7 6489 7 10 789 79 89

S2 S3 S4 S5 S6
S7

S8 S9 S10 S11 S12 S13 S14 S15 S16 S17

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

403

apresentou os grupos formados pelas subseqncias: [S1, S2, S8, S9], [S3, S4, S5, S6], [S7, S12, S14, S16], [S10, S11, S13, S15, S17]. A Tabela 3 apresenta os mdulos gerados pelo AGA. A terceira coluna da Tabela 3 mostra que o mdulo M1 formado pelos tipos de mquinas 1, 4, 7 e 8, e assim por diante. As setas indicam o fluxo de peas. As peas (Tabela 1) so designadas aos mdulos de arranjo fsico (Tabela 3) de acordo com o procedimento para projeto de arranjo fsico modular (HUANG, 2003) e, assim, elaborado o arranjo fsico final da fbrica. O arranjo fsico elaborado a partir dos mdulos gerados pelo AGA (Tabela 3) foi comparado ao arranjo fsico apresentado por Huang (2003). Como a funo de aptido usada no AGA (largura da silhueta mdia) diferente da funo usada por Huang (2003) (soma das similaridades), foi estabelecida uma base para comparao do arranjo fsico final. A comparao foi feita atravs da distncia Manhattan percorrida pelo conjunto de peas (KAUFMAN; ROUSSEEUW, 1990). Se no AGA fosse usada a mesma funo de Huang (2003), ou seja, a soma da similaridade, tenderia a se formar um agrupamento nico, com todas as subseqncias, visto que o objetivo a maximizao da funo. Ou seja, seria formado apenas um mdulo, com todas as mquinas. Portanto, a funo soma da similaridade no indicada para projeto de arranjo fsico modular quando se usa um processo de busca por melhores solues. Para o problema de K-agrupamentos, em que o nmero de mdulos foi pr-especificado em 4, os mdulos de arranjo fsico gerados pelo AGA totalizaram 27 mquinas com uma distncia percorrida de 76 unidades. Na soluo apresentada por Huang (2003) so necessrias 24 mquinas (1 duplicada), mas a distncia percorrida de 93 unidades. Dessa forma, a soluo do AGA apresenta uma reduo de 18,28% da distncia percorrida.

A soluo gerada pelo AGA apresenta uma situao ideal, onde possvel a duplicao de quatro mquinas. Esta duplicao simplifica o fluxo de peas pela fbrica. Entretanto, quando a duplicao possui um alto custo, h necessidade de interveno do projetista com o objetivo de minimiz-la. Assim foi analisado um arranjo fsico alternativo, no qual no foi permitida a duplicao de mquinas. Para isso, mquinas do mesmo tipo em mdulos diferentes foram posicionadas de modo a formar sees funcionais. No caso de quebra de mquina ou mudana na demanda, a pea pode ser transferida entre as mquinas do mesmo tipo. Este arranjo fsico possui implicaes em termos de designao das seqncias aos mdulos, de distncia percorrida e de carga de mquina (ARGOUD, 2007). No arranjo sem a duplicao, a distncia percorrida pelo conjunto de peas foi de 79 unidades. Ou seja, houve um aumento de 3,8% em relao soluo gerada pelo AGA, mas por outro lado, no foi necessrio duplicar mquinas. Ainda assim, o arranjo fsico alternativo, comparado soluo de Huang (2003), apresentou uma reduo de 15% na distncia total percorrida. Para o problema de agrupamento automtico, no qual no foi especificado o nmero de mdulos, o AGA gerou 7 mdulos (Tabela 4) de arranjo fsico, totalizando 30 mquinas e uma distncia percorrida de 74 unidades. Essa soluo (Tabela 4) fez com que o fluxo de peas se tornasse mais simples e facilitou a programao da fbrica, estando assim em sintonia com o projeto de arranjo fsico modular. Por outro lado, em termos de duplicao de mquinas, este ganho pode no se justificar. Com isso, a partir da soluo gerada pelo AGA, tambm foram analisados caminhos para reduzir a duplicao de mquinas. Na soluo com alternativas duplicao de mquinas houve aumento do fluxo intermodular e os

Tabela 4. Mdulos gerados pelo AGA para agrupamento automtico. (ARGOUD, 2007). Tabela 3. Mdulos gerados pelo AGA para K-agrupamentos. (ARGOUD, 2007). Id. mdulo Grupo de subseqncia Mdulo de arranjo comum fsico M1 S1, S2, S8, S9 1 4 8 7 M2 S3, S4, S5, S6 1 7 11 12 M3 M4 S7, S12, S14, S16 S10, S11, S13, S15, S17 6 10 7 9 35 6 4 8 7 9 M6 M7 M8 S10, S11, S13 S12, S14, S16 S15, S17 10 M4 M5 S7 S8, S9 35 4 8 6489 6 10 7 9 789 7 Id. mdulo M1 M9= M2 + M3 Grupo de subseqncia comum S1, S2 S3, S4, S5, S6 Mdulo de layout agregado 147 1 7 11 12 10

Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

404

Argoud et al.

mdulos foram descaracterizados. O nmero de mdulos diminuiu de 7 para 6, a necessidade de mquinas de 30 para 25, e a distncia total percorrida pelo conjunto de peas de 74 para 73 unidades. Algumas peas saram do seu fluxo ideal e provocaram complexidade na programao dos mdulos.

6 Concluses
Este trabalho apresentou uma nova forma de se gerar mdulos de arranjo fsico em projeto de arranjo fsico modular. Os mdulos so gerados a partir do agrupamento de subseqncias de operaes de peas utilizando um algoritmo gentico de agrupamento (AGA). Para isso foram implementadas trs medidas de similaridade para comparao de seqncias de operaes, foram desenvolvidas trs formas de codificao do cromossomo, um procedimento para gerar a populao inicial, dois operadores de cruzamento, trs operadores de mutao, e aplicados dois processos de gerao da nova populao. Essas funcionalidades demonstram a flexibilidade do AGA, que permite ao usurio interagir com o mtodo de soluo. Alm disso, o AGA capaz de resolver tanto problemas de k-agrupamentos como de agrupamento automtico. No primeiro, o usurio define o nmero desejado de mdulos e, no segundo, o nmero de mdulos uma varivel de deciso do problema. O exemplo apresentado mostra que, para o problema em que o usurio define o

nmero de mdulos, houve um ganho importante, em termos de distncia percorrida pelas peas, comparado soluo de Huang (2003). Para o problema de agrupamento automtico, o fluxo de peas foi simplificado e a distncia reduzida, mas para isso houve necessidade de duplicao de mquinas. Portanto, o projetista deve analisar o trade-off existente entre o custo da duplicao e o ganho pela reduo da distncia percorrida, e ainda, as implicaes quanto ao fluxo de materiais e a programao da fbrica. Em relao a trabalhos futuros, uma pesquisa importante sobre um estudo de caso prtico com dados obtidos diretamente da indstria, de forma que se possa comparar um arranjo fsico j existente com aquele resultante da aplicao do AGA na gerao dos mdulos de arranjo fsico. Neste estudo prtico interessante que o conjunto de dados seja relativamente grande com, por exemplo, cinqenta subseqncias comuns nicas. Outra pesquisa relevante a avaliao do arranjo fsico final por medidas de desempenho dinmicas como, por exemplo, a quantidade de estoque em processo, ou ainda, o tempo de passagem das peas pelo sistema. Neste caso, a simulao de eventos discretos com uso de medidas dinmicas uma ferramenta importante e indicada para anlise do desempenho do arranjo fsico.

A clustering genetic algorithm for the formation of facility layout modules


Abstract
The modular facility layout consists of grouping machines into modules according to subsequences of operations common to a set of parts. In the method proposed by Huang (2003), facility layout modules are generated by cluster analysis. This paper introduces an alternative way to generate layout modules through a clustering genetic algorithm (CGA). The CGA allows the user to specify the number of modules he wants (K-grouping problem) and to optimize the number of modules (automatic clustering problem). An important feature of the genetic algorithm is its flexibility, which enables the user to interact with the problem-solving method by presenting him with a choice of chromosome codes, measures of similarity to compare sequences of operations, and methods for generating new populations. To this end, two crossover operators and three mutation operators were developed. In the example presented here, the layout modules generated by the CGA and the plants final physical layout were compared with those of Huang (2003). This comparison revealed a significant reduction in the total distance covered by the set of parts, demonstrating the effectiveness of the clustering genetic algorithm. Thus, the results indicated that the clustering genetic algorithm is an alternative for generating layout modules in the design of modular facility layouts.
Keywords: Modular facility layout. Genetic algorithms. Clustering. Manufacturing.
Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008

Algoritmo gentico de agrupamento para formao de mdulos de arranjo fsico

405

Referncias bibliogrficas
ARGOUD, A. R. T. T. Procedimento para projeto de arranjo fsico modular em manufatura atravs de algoritmo gentico de agrupamento. So Carlos, 2007. Tese - (Doutorado), Escola de Engenharia de So Carlos, Universidade de So Paulo. ASKIN, R. G.; ZHOU, M. Formation of independent flow-line cells based on operation requirements and machine capabilities. IIE Transactions, v.30, n.4, p.319-329, 1998. BENJAAFAR, S.; HERAGU, S. S.; IRANI, S. A. Next generation factory layout: research challenges and recent progress. Interfaces, v.32, n.6, p.58-76, 2002. COLE, R. M. Clustering with genetic algorithms. Australia, 1998. Thesis - (Master of Science), Department of Computer Science, University of Western Australia. GARAI, G.; CHAUDHURI, B. A novel genetic algorithm for automatic clustering. Pattern Recognition Letters, v.25, n.2, p.173-187, 2004. GOLDBERG, D. E. Genetic Algorithms in Search, Optimization, and Machine Learning. 2 ed. USA: Addison-Wesley, 1989. GONALVES-FILHO, E. V.; GORGULHO-JNIOR, J. H. C.; ARGOUD, A. R. T. T. Algoritmo gentico para formao de clulas de fabricao. In: Encontro Nacional de Engenharia de Produo, 24, 2004. Anais... Florianpolis: UFSC, 2004. (CD-ROM) GONALVES-FILHO, E. V.; TIBERTI, A. J. A group genetic algorithm for the machine cell formation problem. International Journal of Production Economics, v.102, n.1, p.1-21, 2006. HRUSCHKA, E. R. Algoritmos genticos de agrupamento para extrao de regras de redes neurais. Rio de Janeiro, 2001. 139f. Tese - (Doutorado em Cincias em Engenharia Civil) COPPE, Universidade Federal do Rio de Janeiro. HRUSCHKA, E. R.; EBECKEN, N. F. F. A genetic algorithm for cluster analysis. Intelligent Data Analysis, v.7, n.1, p. 15-25, 2003. HUANG, H. Facility layout using layout modules. Columbus, 2003. Thesis - (PhD in Industrial and Systems Engineering), The Ohio State University. IRANI, S. A.; HUANG, H. Layout modules: a novel extension of hybrid cellular layouts. In: ASME INTERNATIONAL MECHANICAL ENGINEERING CONGRESS & EXPOSITION, WINTER ANNUAL MEETING OF THE ASME, Anaheim, CA, November 15-20, p.1-7, 1998. IRANI, S. A.; HUANG, H. Cascading flowlines and layout modules: practical strategies for machine duplication in facility layouts. International Journal of Flexible Manufacturing Systems, v.17, n.2, p.119-149, 2006. KAUFMAN, L.; ROUSSEEUW, P. J. Finding groups in data: an introduction to cluster analysis. New York: John Wiley & Sons, 1990. Wiley series in probability and mathematical statistics. LACERDA, E. G. M.; CARVALHO, A. C. P. L. F.; LUDERMIR, T. B. Um tutorial sobre algoritmos genticos. RITA Revista de Informtica Terica e Aplicada, Porto Alegre, v. 9, n. 3, p.7-39, 2002. MARCONI, M. A.; LAKATOS, E. M. Tcnicas de pesquisa. So Paulo: Editora Atlas, 1985. TAM, K. Y. An operation sequence based similarity coefficient for part families formations. Journal of Manufacturing Systems, v.9, n.1, p.55-68, 1990. TOMPKINS, J. A. et al. Facilities planning. 3 ed. USA: John Wiley & Sons, Inc., 2003. 750p. TSENG, L.; YANG, S. B. A genetic approach to the automatic clustering problem. Pattern Recognition, v.34, n.2, p.415-424, 2001.

Sobre os autores
Ana Rita Tiradentes Terra Argoud Eduardo Vila Gonalves Filho Alexandre Jos Tiberti
Departamento de Engenharia Mecnica, Escola de Engenharia de So Carlos, Universidade de So Paulo - USP, Av. Trabalhador So-carlense, 400, CEP 13560-970, So Carlos, SP, Brasil, e-mails: ar.terra@terra.com.br; evila@sc.usp.br; atiberti@sc.usp.br Agradecimentos: Agradecemos ao CNPq pela concesso de bolsa de estudo para realizao desta pesquisa. Recebido em 05/9/2007 Aceito em 28/6/2008

Gest. Prod., So Carlos, v. 15, n. 2, p. 393-405, maio-ago. 2008