30.10.2014 Views

ESTUDO DA PERFORMANCE DA PESQUISA TABU APLICADA AO ...

ESTUDO DA PERFORMANCE DA PESQUISA TABU APLICADA AO ...

ESTUDO DA PERFORMANCE DA PESQUISA TABU APLICADA AO ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ESTUDO</strong> <strong>DA</strong> <strong>PERFORMANCE</strong> <strong>DA</strong> <strong>PESQUISA</strong> <strong>TABU</strong> APLICA<strong>DA</strong> <strong>AO</strong><br />

PROBLEMA DE ESCALONAMENTO EM UM SISTEMA DE<br />

MANUFATURA FLEXÍVEL<br />

Autores: Antonio Gabriel Rodrigues, Leandro Toss Hoffmann e Arthur Tórgo Gómez<br />

Universidade do Vale do Rio dos Sinos – UNISINOS<br />

Av. Unisinos, 950 – 93022-000 – São Leopoldo<br />

E-mails: {antonio, hoffmann, breno}@exatas.unisinos.br<br />

Área: Sessão Técnica - Algoritmos<br />

Resumo<br />

Este trabalho mostra a análise de critérios de geração de vizinhança e de soluções iniciais para o aumento de<br />

performance do Algoritmo de Escalonamento baseado em Pesquisa Tabu. Este algoritmo visa resolver o Problema de<br />

Escalonamento em um ambiente de Sistema de Manufatura Flexível. Os critérios de geração de vizinhanças levam em<br />

conta o compartilhamento de recursos entre parte s. As soluções iniciais para o Algoritmo são Baseadas em Regras de<br />

Despacho. Foram realizadas simulações de escalonamento de partes, e os resultados são apresentados no final deste<br />

trabalho.<br />

Abstract<br />

This paper presents a neighborhood generation criterias and Initial Solutions analysis to increase a Tabu Search based<br />

Scheduling Algorithm’s performance. This algorithm deals solve the Scheduling Problem in a Flexible Manufacturing<br />

System. The parts’ resource sharing is considered by neighborhood generation m ethods and the Initial Solutions are<br />

based in Dispatching Rules. The simulation results are shown in the end of this paper.<br />

Palavras-chave: Sistema de Manufatura Flexível, Problema de Escalonamento, Regras de Despacho, Pesquisa Tabu


<strong>ESTUDO</strong> <strong>DA</strong> <strong>PERFORMANCE</strong> <strong>DA</strong> <strong>PESQUISA</strong> <strong>TABU</strong> APLICA<strong>DA</strong> <strong>AO</strong><br />

PROBLEMA DE ESCALONAMENTO EM UM SISTEMA DE<br />

MANUFATURA FLEXÍVEL<br />

Resumo<br />

Este trabalho mostra a análise de critérios de geração de vizinhança e de soluções iniciais para o aumento de<br />

performance do Algoritmo de Escalonamento bas eado em Pesquisa Tabu. Este algoritmo visa resolver o Problema de<br />

Escalonamento em um ambiente de Sistema de Manufatura Flexível. Os critérios de geração de vizinhanças levam em<br />

conta o compartilhamento de recursos entre partes. As soluções iniciais para o Algoritmo são Baseadas em Regras de<br />

Despacho. Foram realizadas simulações de escalonamento de partes, e os resultados são apresentados no final deste<br />

trabalho.<br />

Abstract<br />

This paper presents a neighborhood generation criterias and Initial Solutions analysi s to increase a Tabu Search based<br />

Scheduling Algorithm’s performance. This algorithm deals solve the Scheduling Problem in a Flexible Manufacturing<br />

System. The parts’ resource sharing is considered by neighborhood generation methods and the Initial Solutio ns are<br />

based in Dispatching Rules. The simulation results are shown in the end of this paper.<br />

Palavras-chave: Sistema de Manufatura Flexível, Problema de Escalonamento, Regras de Despacho, Pesquisa Tabu<br />

1. INTRODUÇÃO<br />

Neste trabalho procura-se analisar o impacto do uso de Regras de Despacho e critérios de geração de<br />

vizinhanças em um Algoritmo de Escalonamento baseado em Pesquisa tabu. Este algoritmo procura<br />

resolver o Problema de Escalonamento em um Sistema de Manufatura Flexível. No item 2, são<br />

apresentadas as base teóricas e conceituais dos problemas estudados e o conceito de Regras de<br />

Despacho é mostrado no item 3. No item 4 é abordada a Pesquisa Tabu e no item 5 é feita a<br />

aplicação do Algoritmo de Escalonamento. Os resultados dos experimentos são mos trados no item 6<br />

e as conclusões no item 7.<br />

2. PROBLEMAS ABOR<strong>DA</strong>DOS<br />

Uma das grandes dificuldades encontradas no ambiente de manufatura é agrupar partes de modo que<br />

possam ser aplicadas, nestes grupos, operações similares que reduzam os custos de produção[1].<br />

Este é o chamado Problema de Seleção de Partes, que consiste em agrupar partes a serem<br />

processadas segundo atributo(s) comum(ns), respeitando as restrições impostas pelo ambiente [2].O


Problema de Seleção de Partes é NP -Completo [3] e é o primeiro que surge no planejamento de um<br />

Sistema de Manufatura Flexível, devido as características das máquinas e dos componentes<br />

tecnológicos que restringem as formas das partes a serem manufaturadas e a performance do<br />

sistema. Na prática, se existir um grande número de t ipos de partes e/ou um grande número de<br />

operações para o processamento de cada parte, obter uma melhoria na performance do sistema é<br />

uma tarefa difícil. Esta situação é devido as restrições de projeto do sistema tais como, número de<br />

ferramentas disponíveis de um dado tipo ou a capacidade do magazine não ser suficiente para<br />

processar todas as partes simultaneamente. Este problema pode ser resolvido pelo agrupamento das<br />

partes em grupos, denominados de Famílias de Partes, tal que, cada grupo pode ser processa do<br />

simultaneamente por um mesmo conjunto de ferramentas respeitando a capacidade do gabarito.<br />

Tradicionalmente, no passado, a maioria dos métodos de seleção de partes buscava agrupá -las<br />

através de similaridades. Este enfoque é uma das ferramentas básicas d a Teoria de Grupo. A<br />

descrição das partes era feita através de suas formas geométricas, precisão dimensional, etc. Existe,<br />

atualmente, um grande número de sistemas para classificação e codificação de partes disponíveis [4]<br />

e outros métodos [5] baseados em medidas de similaridades e seus agrupamentos associados ou<br />

métodos heurísticos foram apresentados. Estes métodos, no entanto, não consideram de maneira<br />

realística algumas restrições presentes no Problema de Seleção de Partes como: capacidade do<br />

magazine, ferramentas disponíveis, datas de vencimento das partes, etc. Além disto, as medidas de<br />

similaridade são freqüentemente muito subjetivas. Kumar, Kusiak e Vannelli [6], em 1986,<br />

abordaram o problema de agrupamento de partes e componentes em um Sistema de Man ufatura<br />

Flexível. O agrupamento é obtido modelando o problema como uma k -decomposição de grafos<br />

orientados. Stecke e Kim [7], em 1988, propuseram duas abordagens para o problema de seleção de<br />

partes: abordagem flexível e abordagem em lotes. Gyampah [8], em 1994, apresentou um estudo<br />

considerando o trabalho de Steck e Kim. Ele analisou procedimentos para a seleção de partes<br />

considerando três diferentes abordagens para troca de ferramentas: lotes, ferramentas flexíveis e<br />

ferramentas residentes. Em relação ao estudo de Steck e Kim é acrescentado o conceito de<br />

ferramenta residente. Esta estratégia é voltada ao uso máximo das ferramentas no processamento de<br />

um conjunto de partes em várias máquinas. Neste trabalho utiliza -se o conceito de Famílas de Partes<br />

incorporando-se também os conceitos de lotes e de ferramentas residentes. O atributo pelo qual as<br />

partes são agrupadas para a geração das Famílias de Partes ( FPs), é o tipo de ferramenta que


processa cada uma das partes. Para resolver este problema foi utilizado o Modelo de Seleção de<br />

Partes, que utiliza Técnicas de Análise de Cluster[9] e Programação Dinâmica [10] .<br />

O problema de Escalonamento (“Scheduling”) [1] visa seqüenciar as partes de modo que sejam<br />

respeitadas as suas datas de entrega. Podendo ser consider ados outros objetivos, tais como,<br />

minimizar o “work -in-process” ou maximizar o “throughput” [1]. O Problema do Escalonamento<br />

neste trabalho é abordado com o objetivo de diminuir o tempo de atraso das partes. Em verdade,<br />

tem-se dois problemas: o de agrupar as ferramentas e o de seqüênciar as partes para processamento<br />

simultâneo na máquina. Este problema é conhecido como o Problema de “Scheduling” de uma<br />

Máquina ou Problema de Carregamento [11] . O escalonamento gerado deve respeitar o tempo dos<br />

turnos de pro dução, ou seja, não pode haver partes em processamento além do final de cada turno.<br />

Para resolver este problema, utilizou -se o Algoritmo de Escalonamento baseado em técnica de<br />

Pesquisa Tabu e Regras de Despacho. Estas técnicas serão descritas nos itens a seguir.<br />

3. REGRAS DE DESPACHO<br />

Regras de Despacho são mecanismos que permitem, com base nos objetivos da produção e no Plano<br />

de Processos, determinar qual será a próxima tarefa a ser processada [2]. Estas regras apóiam o<br />

sistema de escalonamento, tornando -o m ais flexível, permitindo suportar atualizações e<br />

modificações frente às mudanças no ambiente (e.g., troca de objetivos de escalonamento, quebra de<br />

máquinas) ajudando a controlar a produção. As regras de despacho são utilizadas para se obter uma<br />

resposta computacional em tempo polinomial, sendo que muitos dos problemas dever ser resolvidos<br />

em tempo real.<br />

Para realizar este trabalho foram estudadas e implementadas algumas regras de Despacho, segundo a<br />

bibliografia existente [2]. Tais regras são descritas a seguir:<br />

− Solução Inicial Randômica (SIR): este algoritmo simplesmente sorteia de maneira aleatória a<br />

ordem de processamento das partes.<br />

− Ordenação de Famílias (FAM): a solução será dada através da ordenação das partes,<br />

respeitando seu atributo da FP a qual cada parte pertence.<br />

− Recursos Mais Dissimilares (RMD): é uma regra de despacho desenvolvida por Ahn e Kusiak<br />

[2], que objetiva enviar para o processamento o maior número de operações que possam ser<br />

executadas em paralelo. Para tanto, o algoritmo calcula um grau de dissimilaridade entre as


operações, permitindo identificar as operações que menos compartilham recursos. As operações<br />

mais dissimilares são enviadas primeiro para o processamento.<br />

− Recursos de Famílias Mais Similares (RFMS) : é um algoritmo desenvolvid o especialmente<br />

para este estudo, baseado na regra de despacho RMD [2], apresentada anteriormente. A RFMS<br />

utiliza-se da metodologia de seleção de partes através do grau de compartilhamento dos<br />

recursos, da RMD, mas ao contrário dela, a RFMS procura enviar primeiramente os recursos que<br />

mais compartilham recursos. A outra grande diferença do RFMS é que os recursos não são<br />

analisados separadamente por parte, mas sim por FPs, garantindo assim o agrupamento das<br />

Partes por FPs. Este algoritmo privilegia o compart ilhamento de ferramentas das FPs, formando<br />

o menor número de lotes em seqüência, ordenando Partes do mesmo tipo de FP. Posteriormente,<br />

o algoritmo seqüência os Lotes de FPs, privilegiando o menor número de trocas de ferramentas<br />

entre os lotes de FPs diferentes.<br />

− Processos Mais Longos Primeiro (PMLP): A solução é obtida através da ordenação das partes,<br />

respeitando seu atributo de tempo de processamento. São processadas primeiramente as partes<br />

com maior tempo de processamento.<br />

4. <strong>PESQUISA</strong> <strong>TABU</strong><br />

A geração do Algoritmo de escalonamento foi feita com base na técnica de Pesquisa Tabu [12] [13],<br />

metaheurística utilizada para solução de problemas de otimização combinatorial. Através do<br />

algoritmo de Pesquisa Tabu [12], busca -se encontrar em um conjunto X de possíveis sol uções<br />

viáveis uma solução s que otimiza a função objetivo f, como no exemplo:<br />

Minimizar f(s) : s ⊂ X e X ⊂ R v , sendo R v a região viável.<br />

Estas soluções são obtidas através da geração de vizinhanças de busca, subconjuntos de X. Esta<br />

vizinhança é gerada a partir de uma solução inicial s inic . A cada iteração um ótimo local é escolhido<br />

e dele é gerada a nova vizinhança. Para evitar fazer ciclos em torno de um ótimo local, é<br />

implementada uma lista de movimentos proibidos, a Lista Tabu T. Caso um movimento t abu cause<br />

uma melhora na função f, utiliza -se a função critério de aspiração A(z), que admite o movimento<br />

proibido. Sendo que os movimentos tabu não são infinitos, deve -se escolher condições de parada do


algoritmo. define -se uma quantidade máxima nbmax de iterações que são feitas sem que ocorra<br />

melhora na função f. O algoritmo geral de Pesquisa tabu é mostrado a seguir.<br />

Inicialização<br />

s := solução inicial em X;<br />

nbiter := 0; (* iteração atual*)<br />

melhiter := 0; (*melhor solução foi encontrada*)<br />

melhsol := s; (*melhor solução*)<br />

T := Ø;<br />

Inicializar Função Critério de Aspiração A;<br />

Enquanto (f(s) > f*) e (nbiter – melhiter < nbmax) faça<br />

nbiter := nbiter+1;<br />

Gerar um conjunto V* de soluções s i em N(s) o qual não é tabu ou que<br />

A(f(s))>=f(s i );<br />

Escolha uma solução s* minimizando f de V*;<br />

Atualize a Função Critério de Aspiração A e a Lista tabu T;<br />

Se f(s*) < f(melhsol) então<br />

Melhsol := s*;<br />

Melhiter := nbiter;<br />

Fim_se;<br />

s := s*;<br />

Fim_enquanto;<br />

Sendo:<br />

X : conjunto de soluções possíveis;<br />

f : Função objetivo;<br />

N(s) : a vizinhança da solução s em X;<br />

| T | : tamanho da lista tabu;<br />

| V* | : número de soluções vizinhas geradas em cada iteração;<br />

f* : o mais baixo limite de da Função objetivo f;<br />

A : Função critério de Aspiração;<br />

5. APLICAÇÕES<br />

Utilizando a Pesquisa Tabu fo i possível desenvolver o Modelo de Escalonamento de Partes, a partir<br />

de um conjunto de partes, com suas FPs já designadas [10] sendo gerado um escalonamento inicial<br />

das partes nos turnos de produção, segundo as Regras de Despacho descritas. Dado esta dispo sição<br />

de partes, a seqüência de partes da mesma FP em um mesmo turno de produção é considerada como<br />

um lote de produção. A função objetivo considerada a seguir representa o Tempo de Produção dos<br />

Lotes mais o Tempo de “Setup”. O Tempo Ocioso que, somado ao tempo de processamento dos<br />

lotes dos turnos de produção compõe o Tempo Total de Produção (“makespan”) é desconsiderado<br />

nesta abordagem.<br />

Onde:<br />

Ts i = Tempo do setup i<br />

S i = “setups” i<br />

Tpl i = Tempo de processamento do lote i n = número total de lotes


5.1. Geração de vizinhanças<br />

A geração de vizinhanças no Algoritmo de Escalonamento é feita segundo duas estratégias:<br />

a) Troca de Lotes: troca de posição entre dois lotes quaisquer de tal forma que o escalonamento<br />

resultante tenha um número de “setups” menor atrav és da união de lotes de mesma FP. . A<br />

Figura 1 mostra a troca de posição entre um lote de FP 1 e FP 3. O resultado deste<br />

movimento é a redução do número total de “setups”, devido a junção de dois lotes de mesma<br />

FP.<br />

Lote de Produção<br />

FP à qual pertence o Lote<br />

“Setup”<br />

figura 1. Critério de geração de vizin hanças por troca<br />

b) Inserção de Lotes: consiste na retirada de um lote qualquer e da inserção deste em outro<br />

posição da seqüência inicial, de tal forma que o número de “setups” seja reduzido, reunindo<br />

lotes de mesma FP. A Figura 2 ilustra o procedimento dest e critério, reduzindo o número de<br />

“setups”, pela inserção do lote de FP 1 em uma nova posição, ocasionando a junção de lotes<br />

de mesma FP.<br />

Lote de Produção<br />

FP à qual pertence o Lote<br />

“Setup”<br />

figura 2. Critério de geração de vizinhanças por inserção<br />

6. RESULTADOS<br />

Para realizar os experimentos, utilizou -se um programa Gerador Aleatório de Partes. Estas partes<br />

formam Agrupadas em FPs pelo Algoritmo de Identificação de FPs. Uma vez classificadas, utiliza -<br />

se o Algoritmo de Regras de Despacho para gerar a seqüência inicial para o Algoritmo de<br />

Escalonamento. Os alg oritmos utilizados neste trabalho foram implementados em linguagem C e<br />

executados em ambiente Linux.


Estes experimentos visam analisar a ação conjunta de Regras de despacho e critérios de geração de<br />

vizinhanças. Foram realizados simulações utilizando 90 partes já classificadas em FPs.<br />

As regras de despacho foram utilizadas como soluções iniciais para a pesquisa Tabu. Cada uma<br />

destas regras foi experimentada com ambos os critérios de geração de vizinhanças já descritos.<br />

Foram realizados também experimentos onde, durante a execução do Algoritmo de Escalonamento<br />

ocorreram trocas de critérios de geração de vizinhanças. O Algoritmo de Escalonamento inicia com<br />

o critério de trocas. Dado que nenhuma outra solução melhor é encontrada em um número de<br />

iterações equivalente a 25% do nbmax, o critério é trocado para Inserção, e assim sucessivamente,<br />

até o fim da execução.<br />

Os resultados das simulações podem ser vistos na Tabela 1.<br />

Solução<br />

Inicial<br />

Tabela 1. Comparação entre Critérios de geração de vizinhanças e Métodos de Soluções Inic iais<br />

Média<br />

Setups<br />

Inicial<br />

Critério Troca Critério Inserção Troca e Inserção<br />

Média Média Média Média<br />

Iterações Setups Iterações Setups<br />

Média<br />

Setups<br />

Final<br />

Média<br />

Iterações<br />

Final<br />

Final<br />

FAM 21,9 20,5 4,6 20,1 5,1 20,1 41,2<br />

SIR 84 26,2 38,3 21,1 59,8 21,8 69,3<br />

RMD 86,6 22,8 45,1 21 62,7 21,4 73,8<br />

RFMS 20,5 20,1 0,6 20 1,4 21,1 4,1<br />

PMLP 83,6 30,6 39,7 31,3 58 21,7 75,8<br />

O uso das Regras de Despacho como soluções iniciais tem grande impacto na execução do<br />

Algoritmo de Escalonamento. Enquant o regras como RMD e PMLP resultaram em um grande<br />

número de iterações até encontrar um bom resultado, as regras que levam em conta o<br />

compartilhamento de recursos (RFMS e FAM) resultam em um número baixíssimo de iterações até<br />

o resultado mínimo encontrado.<br />

A Técnica de Pesquisa Tabu, utilizando os critérios de geração de vizinhança, refina o trabalho feito<br />

pelas regras de despacho melhorando a solução inicial. O critério de inserção consegue maior<br />

redução em contrapartida de um número de iterações pouco maior.<br />

A utilização de ambos os critérios alternadamente em uma execução prolonga a busca por resultados<br />

melhores, de modo que aumenta a número de iterações do Algoritmo de Escalonamento. Para este<br />

tipo de problema, esta abordagem não traz muitos benefícios, e mbora se note melhores resultados<br />

que o critério de troca.


7. CONCLUSÕES<br />

Neste trabalho foram estudados dois problemas clássicos de um ambiente de manufatura, o<br />

Problema de Seleção de Partes e o Problema de Escalonamento. Para resolver estes problemas foram<br />

utilizadas Regras de Despacho e um Algoritmo de Escalonamento baseado em Pesquisa Tabu. As<br />

regras de despacho mostram como o conhecimento empírico pode ser aplicado no auxílio à<br />

produção, resultando em escalonamento de partes com um número reduzido de “set ups”. O<br />

Algoritmo de escalonamento refina este processo. Foram criados dois critérios de geração de<br />

vizinhança: critério de Inserção e critério de Troca, onde o critério de inserção obteve resultados<br />

melhores quanto a minimização do número de “setups”. Ao utilizar Regras e Despacho que prevêem<br />

compartilhamento de recursos como soluções iniciais para o Algoritmo de Escalonamento, observa -<br />

se um ganho de performance do Algoritmo, que atinge o melhor resultado ( f*) em um número<br />

menor de iterações.<br />

Os experimen tos realizados mostraram a importância da consideração do compartilhamento de<br />

recursos entre partes, fator fundamental para redução do número de “setups” otimização do processo<br />

produtivo.<br />

8. REFERÊNCIAS BIBLIOGRÁFICAS<br />

[1] Bedworth, D. D.; Henderson, M. R.; Wolfe, P. M.. Computer integrated design and<br />

manufacturing. McGraw-Hill, 1991.<br />

[2] Kusiak, A . Intelligent design and manufacturing. John Wiley & Sons, 1992.<br />

[3] Gómez, A. T. Sequenciamento de partes e horário em um sistema de manufatura flexível<br />

composto de uma máquina com restrições de ferramentas. Tese, Instituto Nacional de Pesquisas<br />

Espaciais-INPE/MCT,1996.<br />

[4] Kusiak , A. The part families problem in flexible manufacturing systems. Annals of Operations<br />

Research , 3 : 297 - 300 , 1985.<br />

[5] Gunasekaran, A.; Martikainen, T.; Yli -olli, P. Flexible manufacturing systems: an investigation<br />

for research and applications. European Journal of OperationalResearch, 66 : 1 - 26 , 1993.<br />

[6] Kumar , K. R.; Kusiak, A.; Vannelli, A. Grouping of parts and components i n flexible<br />

manufacturing systems. European Journal of Operational Research, 24 : 387 - 397, 1986.<br />

[7] Stecke , K. E.; Kim , I. A study of FMS part type selection approaches for short -term production<br />

planning. The International Journal of Flexible Manufacturing Systems, 1(1): 7 - 29, abril, 1988.


[8] Gyampah , K. A. A comparative study of FMS tool allocation and part type selection<br />

approaches for varying part type mix. The International Journal of FMS , 6 : 179 - 207 , 1994.<br />

[9] Kusiak, A.; Chow, W. S . Efficient solving of the group techology problem, Winnipeg –<br />

University of Manitoba, 1986.<br />

[10] Rodrigues, A. G.; Araujo, R. S. Modelagem de sistemas de manufatura flexíveis considerando<br />

restrições físicas e temporais. Santa Maria, Universidade Federal de Santa Maria, 1999.<br />

[11] Gyampah, K. A. A comparative study of FMS tool allocation and part type selection<br />

approaches for varying part type mix. The International Journal of FMS , 6: 179 - 207 , 1994.<br />

[12] Hertz, A. Tabu Search for large timetabling problems. European Journal of Operational<br />

Research n.54, p.39-47, 1991.<br />

[13] Glover, F. Tabu search - parte I. ORSA Journal on Computing, v.1, n.3, 1989.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!