• Nenhum resultado encontrado

PROGRAMAÇÃO DA PRODUÇÃO EM SISTEMAS FLOWSHOP UTILIZANDO UM MÉTODO HEURÍSTICO HÍBRIDO ALGORITMO GENÉTICO-BUSCA TABU

N/A
N/A
Protected

Academic year: 2021

Share "PROGRAMAÇÃO DA PRODUÇÃO EM SISTEMAS FLOWSHOP UTILIZANDO UM MÉTODO HEURÍSTICO HÍBRIDO ALGORITMO GENÉTICO-BUSCA TABU"

Copied!
18
0
0

Texto

(1)

PROGRAMAÇÃO DA PRODUÇÃO EM

SISTEMAS FLOWSHOP UTILIZANDO UM

MÉTODO HEURÍSTICO HÍBRIDO ALGORITMO

GENÉTICO-BUSCA TABU

João Vitor Moccellin

Escola de Engenharia de São Carlos - USP Caixa Postal 359, 13560-970 São Carlos-SP jvmoccel@prod.eesc.sc.usp.br

ABSTRACT: in this paper we introduce a hybrid Genetic Algorithm-Tabu Search heuristic for the minimal makespan flow shop sequencing problem. In order to evaluate the performance of the hybrid metaheuristic we compare it with pure Genetic Algorithm and Tabu Search heuristics. The results from computational experience are discussed.

KEYWORDS : flow shop sequencing, genetic algorithm, tabu search.

RESUMO: neste artigo é apresentado um método heurístico híbrido Algoritmo Genético - Busca Tabu para o problema de programação de operações flow shop permutacional com o objetivo de minimizar a duração total da programação. Com o propósito de avaliar seu desempenho, o método híbrido é comparado com métodos puros Algoritmo Genético e Busca Tabu por meio de uma experimentação computacional.

PALAVRAS CHAVE : programação flow shop permutacional, algoritmo genético, busca tabu.

1 - INTRODUÇÃO

O problema de Programação de Operações Flow Shop Permutacional é um problema típico de instalações de manufatura onde as tarefas (peças) são movidas de uma máquina para outra por meio de algum equipamento de movimentação de materiais.

(2)

As principais hipóteses do problema são:

i) Os tempos de processamento das tarefas nas diversas máquinas são determinados e fixos;

ii) As tarefas têm a mesma data de liberação, a partir da qual qualquer uma pode ser programada e executada;

iii) Os tempos de preparação das operações nas diversas máquinas são incluídos nos tempos de processamento e independem da seqüência de operações em cada máquina;

iv) As operações nas diversas máquinas, uma vez iniciadas não devem ser interrompidas.

A solução do problema consiste em determinar dentre as (n!) seqüências possíveis das tarefas aquela que otimiza uma determinada Medida de Desempenho da programação, geralmente associada ao fator tempo. Neste trabalho adota-se como função-objetivo a Duração Total da Programação (makespan), ou seja, o intervalo de tempo entre o início de execução da primeira tarefa na primeira máquina e o término de execução da última tarefa na última máquina.

Na teoria que estuda a complexidade dos problemas de natureza combinatorial, o problema em questão é classificado como NP-hard ( GAREY et al., 1976 ) de forma que pode ser resolvido eficientemente de maneira ótima somente em casos de pequeno porte.

Nas últimas três décadas, um extenso esforço de pesquisa tem sido dedicado à solução do problema. Técnicas de Programação Matemática, tais como Programação Linear Inteira, SELEN & HOTT (1986), WILSON (1989), e técnicas de enumeração do tipo branch-and-bound, IGNALL & SCHRAGE (1965), POTTS (1980), têm sido empregadas para a solução ótima do problema. Entretanto, tais técnicas não são eficientes em termos computacionais, em problemas de médio e grande porte. Assim, muitos métodos heurísticos têm sido propostos para a solução do problema de programação flow shop permutacional.

Os métodos heurísticos podem ser classificados de diversas formas, uma das quais classifica-os em construtivos ou melhorativos.

No caso dos métodos construtivos, a seqüência adotada como solução do problema é obtida:

i) diretamente a partir da ordenação das tarefas segundo índices de prioridade calculados em função dos tempos de processamento das tarefas, como por exemplo: PALMER (1965) e GUPTA (1971);

(3)

ii) ou escolhendo-se a melhor seqüência das tarefas a partir de um conjunto de seqüências também obtidas utilizando-se índices de prioridade associados às tarefas. Neste caso, podem ser citados: CAMPBELL, DUDEK & SMITH (1970) e HUNDAL & RAJGOPAL (1988);

iii) ou ainda, a partir da geração sucessiva de seqüências parciais das tarefas (subseqüências) até a obtenção de uma seqüência completa através de algum critério de inserção de tarefas, como por exemplo: NEH (NAWAZ, ENSCORE & HAM, 1983).

No caso dos métodos melhorativos, obtém-se uma solução inicial e posteriormente através de algum procedimento iterativo (geralmente envolvendo trocas de posições das tarefas na seqüência) busca-se obter uma seqüência das tarefas melhor que a atual quanto à medida de desempenho adotada.

Na categoria dos métodos melhorativos destacam-se os procedimentos de busca em vizinhança, como por exemplo DANNENBRING (1977), considerado um método de busca simples. Mais recentemente, foram desenvolvidos métodos de busca em vizinhança de maior complexidade (Busca Tabu e Simulated Annealing) que têm sido alvo de grande interesse na comunidade científica em função de aplicações bem sucedidas reportadas na literatura. Exemplos de aplicações dessas técnicas para o problema em questão são encontrados em WIDMER & HERTZ (1989), OSMAN & POTTS (1989), OGBU & SMITH (1990, 1991), TAILLARD (1990, 1993), REEVES (1993), MOCCELLIN (1995), ISHIBUCHI, MISAKI & TANAKA (1995), ZEGORDI, ITOH & ENKAWA (1995), NOWICKI & SMUTNICKI (1996) e MOCCELLIN & NAGANO (1998). Outra técnica que pode ser considerada do tipo melhorativo, também de desenvolvimento relativamente recente, denominada Algoritmo Genético, tem despertado interesse pela sua capacidade de solução de problemas de natureza combinatorial. REEVES (1995) ut ilizou o Algoritmo Genético na solução do problema de Programação de Operações Flow Shop Permutacional, com o objetivo de minimizar a duração total da programação.

Os métodos heurísticos Busca Tabu (BT), Simulated Annealing (SA) e Algoritmo Genético (AG), conhecidos pelo termo metaheurísticas, consistem de procedimentos de busca no espaço de soluções, definidos por estratégias que exploram apropriadamente a topologia de tal espaço.

O sucesso das metaheurísticas se deve a fatores como: i) alusão a mecanismos de otimização da natureza (nos casos do Algoritmo Genético e do Simulated Annealing); ii) aplicabilidade geral da abordagem; iii) facilidade de implementação e iv) qualidade da solução obtida aliada a um esforço computacional relativamente baixo.

(4)

2 - MÉTODOS METAHEURÍSTICOS HÍBRIDOS

Uma idéia interessante que tem despertado gradativa atenção refere-se ao desenvolvimento de métodos heurísticos híbridos utilizando as metaheurísticas Busca Tabu, Simulated Annealing e Algoritmo Genético. Assim, o objetivo é combinar as técnicas preservando suas características de ação inteligente, de tal forma que o procedimento resultante seja mais eficaz do que qualquer um dos seus componentes isoladamente. Na literatura são reportados alguns trabalhos como: LIN, KAO & HSU (1991) que integraram Simulated Annealing e Algoritmo Genético para resolver problemas do caixeiro-viajante; FOX (1992) que criou um procedimento híbrido combinando as três metaheurísticas; MITTENTHAL, RAGHAVACHARI & RANA (1992) que desenvolveram um método Simulated Annealing Híbrido para a programação de operações em máquina única com funções de penalidade não-regulares; KIM, NARA & GEN (1994) que propuseram um método para a programação de manutenção utilizando o Algoritmo Genético combinado com o Simulated

Annealing; GLOVER, KELLY & LAGUNA (1995) que estudaram formas de explorar as

semelhanças e diferenças entre Busca Tabu e Algoritmo Genético; ROACH & NAGI (1996) que desenvolveram um metaheurístico híbrido Simulated Annealing - Algoritmo Genético para a programação em ambiente Just-in-Time de montagens em múltiplos níveis e PIRLOT (1996) que faz referência a métodos híbridos que combinam Busca Tabu e Simulated Annealing e também Busca Tabu e Algoritmo Genético.

Com relação ao problema de Programação de Operações Flow Shop, são encontrados na literatura o trabalho de DÍAZ (1996) que utilizou uma solução inicial melhorada pelo Simulated Annealing como ponto inicial para a utilização da Busca Tabu, tendo como função-objetivo a minimização do atraso na execução das tarefas, e MURATA, ISHIBUCHI & TANAKA (1996) que propuseram um algoritmo híbrido denominado Genetic Simulated Annealing para o problema de minimização do

makespan.

Neste trabalho é apresentado um método metaheurístico híbrido para o problema de Programação de Operações Flow Shop Permutacional, denominado HBGATS, com o objetivo de minimizar o

makespan utilizando-se Busca Tabu e Algoritmo Genético. Com o propósito de avaliar a eficácia da

(5)

métodos metaheurísticos puros que foram utilizados na sua concepção. A seguir são sucintamente descritos os métodos de Busca Tabu e Algoritmo Genético.

3 - BUSCA TABU

A técnica de Busca Tabu é útil para encontrar uma boa solução, ou possivelmente a solução ótima de problemas do tipo:

Minimizar c(x), sujeito a x ∈ X, onde c(x) é uma função de uma variável discreta x, e X é o conjunto de soluções viáveis. Um passo da Busca Tabu inicia com uma solução viável atual x ∈ X, à qual é aplicada uma função m ∈ M(x) que transforma x em x', sendo x' uma nova solução viável (x' = m(x)). Esta transformação é denominada uma mudança e o conjunto {x' : x' = m(x); x, x'

∈ X; m ∈ M(x)} é denominado vizinhança de x.

Com o objetivo de evitar, o tanto quanto possível, a formação de ciclos nas mudanças, um elemento t é associado a m e x . Este elemento define um conjunto de mudanças que são tabu (ou seja, proibidas) e que são guardadas em uma Lista T denominada Lista Tabu . Especificamente, o elemento t proíbe a aplicação de m' em x', o que poderia fazer com que x' se transformasse de volta em x, podendo proibir também outros tipos de mudanças. Os elementos da lista T definem todas as mudanças proibidas que não podem ser efetuadas pela solução considerada atual (solução corrente).

Em termos práticos, o tamanho da lista T não pode continuamente crescer, sendo limitado por um parâmetro s, denominado tamanho da Lista Tabu. Se | T | = s, antes de incluir um novo elemento t na lista Tabu, deve-se remover um outro elemento, que é geralmente o mais antigo.

Desta forma, caracteriza-se uma aplicação da técnica de Busca Tabu através dos seguintes componentes:

(a) O conjunto M(x) de mudanças associadas a uma solução viável x (vizinhança);

(b) O tipo dos elementos do conjunto T, o qual define as mudanças tabu , ou seja, proibidas (Lista

Tabu);

(c) O tamanho s do conjunto T (tamanho da Lista Tabu);

(6)

A característica relevante da Busca Tabu refere-se à capacidade de não ficar restrita às soluções ótimas locais, explorando os vales do espaço de soluções na tentativa de obtenção da solução ótima global.

Uma descrição completa e detalhada da Técnica de Busca Tabu pode ser encontrada em GLOVER (1995).

4 - ALGORITMO GENÉTICO

O Algoritmo Genético foi desenvolvido por HOLLAND (1975), sendo derivado de uma analogia com o processo evolucionário de seleção natural e tem sido utilizado em diversas aplicações.

Na terminologia do Algoritmo Genético, um cromossomo representa uma solução para o problema em estudo, sendo constituído de um conjunto de genes cada qual representando uma característica específica do cromossomo. O valor associado à característica de cada gene é denominado Alelo. Uma população é constituída de um conjunto de cromossomos, sendo refeita (atualizada, renovada) após cada geração. Um elemento fundamental do algoritmo é o operador genético denominado

operador de cruzamento o qual combina dois cromossomos para gerar cromossomos filhos que

mantêm certas características básicas dos cromossomos pais . Além desse operador, geralmente é considerado um outro denominado operador de mutação o qual introduz aleatoriamente transformações ou novas informações em uma população.

Na aplicação do Algoritmo Genético para solução do problema de Programação de Operações Flow

Shop Permutacional, um cromossomo representa uma possível seqüência das tarefas e os genes

representam as tarefas.

Basicamente, um Algoritmo Genético apresenta a seguinte estrutura:

INÍCIO i := 0.

(7)

REPETIR

Selecionar os pais de G( i ) observando o valor da função-objetivo (Reprodução). Aplicar o operador de cruzamento nos pais.

Aplicar, se for o caso, o operador mutação e obter a geração G(i + 1). i := i + 1.

ATÉ UMA CONDIÇÃO DE PARADA FIM.

A força de um Algoritmo Genético baseia-se na hipótese de que a melhor solução se encontra em regiões do espaço de soluções viáveis que contêm uma grande proporção relativa de boas soluções e que tais regiões podem ser identificadas através de uma amostragem minuciosa do espaço de soluções.

Detalhes e uma descrição completa do Algoritmo Genético são encontrados em GOLDBERG (1989).

5 - O NOVO MÉTODO METAHEURÍSTICO HÍBRIDO

O método híbrido apresentado neste trabalho foi concebido com base nos seguintes parâmetros quantitativos e não-quantitativos :

a) Soluções Iniciais :

As soluções iniciais do método híbrido são fornecidas pelo NEH (NAWAZ, ENSCORE & HAM, 1983) e FSHOPH (MOCCELLIN, 1995). As mesmas soluções iniciais são utilizadas no Algoritmo Genético puro que é comparado com o híbrido. Por sua vez, no método Busca Tabu puro utilizado na experimentação computacional, a solução inicial é a melhor dentre as fornecidas pelo NEH e FSHOPH.

b) Vizinhança :

Foi utilizado o tipo de Vizinhança de Inserção (Shift Neighbourhood), onde uma seqüência vizinha é obtida da seqüência atual removendo-se uma tarefa de sua posição e inserindo-a em uma outra posição .

(8)

c) Formas de Busca na Vizinhança :

Foi empregada a busca parcial aleatória, que consiste no exame parcial da vizinhança, ou seja, apenas uma parcela Nvp(S) do número total de vizinhos é avaliada, a qual é gerada aleatoriamente. A parcela da vizinhança, baseada no trabalho desenvolvido por MOCCELLIN & NAGANO (1998), é dada pelas expressões:

Nvp(S) = p (n - 1)2 , para n ≤ 30

Nvp(S) = p [1741 - 900 exp (-0,04(n - 30))] , para n >30

onde p é um parâmetro obtido experimentalmente e n é o número de tarefas a serem programadas. d) Condição de Parada :

O método híbrido encerra a busca por melhores soluções após um número TNbS(m,n) pré-determinado de seqüências avaliadas de acordo com a Tabela 1. Tais números foram obtidos por experimentação prévia : para cada classe de problema (número de máquinas m, número de tarefas n), o valor TNbS(m,n) corresponde ao número médio de seqüências avaliadas utilizando-se o método heurístico de Busca tabu FShop.TS5 ( MOCCELLIN & NAGANO, 1998 ).

número de (máquinas, tarefas) TNbS(m,n) número de (máquinas, tarefas) TNbS(m,n) número de (máquinas, tarefas) TNbS(m,n) (4, 20) 9693 (7, 20) 10812 (10, 20) 16750 (4, 30) 43732 (7, 30) 59666 (10, 30) 73503 (4, 40) 77742 (7, 40) 162358 (10, 40) 125728 (4, 50) 105623 (7, 50) 165856 (10, 50) 154223 (4, 60) 133502 (7, 60) 178017 (10, 60) 166257 (4, 70) 137452 (7, 70) 135330 (10, 70) 173862 (4, 80) 166050 (7, 80) 107244 (10, 80) 189378 (4, 90) 155455 (7, 90) 128733 (10, 90) 189406 (4, 100) 194680 (7, 100) 108136 (10, 100) 190884

(9)

e) Tamanho da Lista Tabu :

O tamanho da lista tabu é adotado igual a 7 (sete) conforme sugerido por GLOVER (1989). Na lista são registrados, a cada movimento , a tarefa que mudou de posição e a posição que ela ocupava na solução corrente anterior.

i) Operador Reprodução :

No método híbrido e no Algoritmo Genético puro, a reprodução é efetuada sobre a população constituída pelas duas seqüências pais e duas seqüências filhos . As duas seqüências que apresentarem as menores durações totais de programação são selecionadas para a aplicação do operador de cruzamento.

j) Operador de Cruzamento :

A partir dos resultados reportados por MOTA (1996), foi selecionado o Operador de Um Corte

(One Point Crossover), o qual é descrito a seguir e ilustrado pela Figura 1.

• PASSO 1: Escolha um ponto para se dividir cada pai, em duas subseqüências;

• PASSO 2: A solução filho é gerada através da união de duas subseqüências, uma de cada pai, na sua posição absoluta;

• PASSO 3: Para evitar a inviabilidade da solução filho, troca-se as tarefas duplicadas por aquelas que faltam para completar a solução filho.

P

Paaii 11: 0 1 0 1 1 ➪ FFiillhhoo 11: 0 1 0 Μ 0 1

P

Paaii 22: 1 1 0  0 1 ➪ FFiillhhoo 22: 1 1 0 Μ 1 1 Figura 1 - exemplo de cruzamento de um corte.

(10)

k) Operador de Mutação:

Conforme já mencionado, este operador é necessário para a introdução e a manutenção da diversidade genética da população. Apesar da sua relativa importância, ele não é utilizado no método

híbrido, uma vez que tal função é realizada pelo procedimento de Busca Tabu.

5.1 - O ALGORITMO HBGATS

Com o propósito de ilustrar a concepção do algoritmo HBGATS, os passos 1, 2 e 3 referem-se à “parte Algoritmo genético”, enquanto que os passos 4 e 5 (em itálico) correspondem à “parte Busca Tabu”.

PASSO 1) Seleção dos pais: obtenha a seqüência inicial 1 (NEH) e a seqüência inicial 2 (solução inicial do FSHOPH).

s1 := seqüência inicial 1 s2 := seqüência inicial 2

f(s1) := makespan da seqüência inicial 1 f(s2) := makespan da seqüência inicial 2.

Se f(s1) ≤ f(s2) então BS := s1 {melhor solução já obtida} BM := f(s1) {makespan da melhor solução} Caso contrário, BS := s2 e BM := f(s2).

Enquanto o número total de seqüências geradas e avaliadas TNbS(m,n) : PASSO 2) Aplicar o operador de cruzamento em s1 e s2:

s1 ✖ s2 → s3 e s4 (onde s3 e s4 são os descendentes) Ordenar as seqüências em ordem crescente de makespan f(s) PASSO 3) Selecionar as 2 seqüências que apresentam os 2 menores makespans

s1 := seq[1] {seqüência com o primeiro melhor makespan} f(s1) := f( seq[1] ) {makespan da primeira melhor seqüência}

(11)

s2 := seq.[2] {seqüência com o segundo melhor makespan} f(s2) := f( seq[2] ) {makespan da segunda melhor seqüência} Se f(s1) < BM então

BS := seq[1] BM := f( seq[1] )

PASSO 4) Gerar a vizinhança de inserção parcial aleatória de s1 (número de vizinhos Nvp(S) ) e

determinar a melhor seqüência vizinha s* (a de menor makespan), utilizando a técnica de Busca Tabu. s1 := s* f(s1) := f(s*) Se f(s1) < BM então BS := s1 BM := f(s1)

PASSO 5) Gerar a vizinhança de inserção parcial aleatória de s2 (número de vizinhos Nvp(S) ) e

determinar a melhor seqüência vizinha s** (a de menor makespan), utilizando a técnica de Busca Tabu.

s2 := s**

f(s2) := f(s**)

Se f(s2) < BM então

BS := s2

BM := f(s2)

PASSO 6) Tomar as seqüências s1 e s2 e aplicar o procedimento descrito a partir do Passo 2

Resultados:

BS : a melhor seqüência das tarefas (solução do problema);

(12)

6 - AVALIAÇÃO DO MÉTODO HÍBRIDO

O método metaheurístico híbrido foi avaliado em comparação com o desempenho dos metaheurísticos puros que foram utilizados na sua composição. O método de Busca Tabu utilizado

foi o FShop.TS5 (MOCCELLIN & NAGANO, 1998), com uma modificação em relação à solução inicial, conforme já salientado, a qual é a melhor dentre as fornecidas pelo NEH e FSHOPH. O algoritmo genético puro , denominado 1xGA, é um algoritmo genético simples que utiliza os mesmos operadores de reprodução e cruzamento do método híbrido. Quanto ao operador de

mutação, que no híbrido é substituído pelo procedimento de Busca Tabu, no algoritmo 1xGA podem

ser utilizados três operadores. O mutação 1 consiste em escolher aleatoriamente uma tarefa e trocá-la de posição com a sua subseqüente. O operador mutação 2 troca aleatoriamente as posições de duas tarefas quaisquer da seqüência. Por sua vez, o mutação 3 escolhe ao acaso um ponto para se dividir a seqüência em duas subseqüências, as quais têm suas posições relativas invertidas. Pode-se notar que os operadores de mutação propostos têm graus de perturbação crescentes. O operador

mutação 1 é aplicado toda vez que não houver melhoria na melhor seqüência até então obtida, após

0,01TNbS(m,n) seqüências sucessivas geradas e avaliadas. O mutação 2 é utilizado se não houver melhoria após 0,027TNbS(m,n) seqüências sucessivas. O operador mutação 3, que causa uma maior modificação na seqüência gerada é aplicado após 0,10TNbS(m,n) seqüências sucessivas sem melhoria quanto à melhor solução até o momento obtida. Os coeficientes 0,01 ; 0,027 e 0,10 foram estabelecidos em função do grau de perturbação de cada operador e também de forma que não haja a possibilidade de aplicação simultânea de dois ou dos três operadores.

6.1 - EXPERIMENTAÇÃO COMPUTACIONAL

Foram gerados aleatoriamente 540 problemas, com 20 problemas para cada classe ( número de máquinas m, número de tarefas n ), envolvendo 27 classes de acordo com m ∈ {4, 7, 10} e

n ∈{20, 30, 40, 50, 60, 70, 80, 90, 100}. Os tempos de processamento das operações das tarefas foram gerados aleatoriamente de uma distribuição uniforme com valores inteiros no intervalo [1, 100]. O parâmetro experimental e sensível do método híbrido é o coeficiente p, o qual foi examinado no conjunto { 0,2 0,4 0,6 0,8 1,0 }. Na experimentação computacional, o

(13)

equipamento utilizado foi um microcomputador Pentium II 266 Mhz e todos os algoritmos foram implementados em Turbo Pascal.

6.1.1 - ANÁLISE DOS RESULTADOS

A análise dos resultados foi efetuada em função de duas estatísticas : a Porcentagem de Sucesso e a

Melhoria Relativa.

A porcentagem de sucesso é calculada pelo número de vezes em que o método obteve a melhor solução, dividido pelo número total de problemas avaliados. Obviamente, quando dois ou mais métodos obtêm a melhor solução para um mesmo problema todos eles alcançam sucesso e consequentemente suas porcentagens de sucesso são simultaneamente melhoradas.

A melhoria relativa mede o percentual de redução da Duração Total da Programação em relação à solução inicial. É importante ressaltar que todos os métodos comparados entre si têm a mesma solução inicial. A melhoria relativa MR é obtida pela seguinte expressão :

MR = (M1 - M) / M1 onde M1 = makespan da solução inicial, e

M = makespan da melhor seqüência que foi encontrada pelo método heurístico.

Na experimentação computacional, os tempos de computação não foram considerados significativos para a avaliação dos diversos métodos, uma vez que as diferenças não foram relevantes. Nos problemas de pequeno porte ( 20 tarefas ), o tempo médio de computação variou entre 0,31 e 0,84 segundos. Nos problemas de maior porte ( 100 tarefas ) tal variação foi de 19 a 42 segundos.

Os principais resultados encontram-se nas Tabelas 2 e 3, os quais são ilustrados pelas Figuras 2 e 3, respectivamente.

(14)

número de tarefas 1xGA (%) FShop.TS5 (%) HBGATS (%) 20 18,3 73,3 81,6 30 26,6 71,6 76,6 40 30,0 73,3 81,6 50 20,0 73,3 85,0 60 30,0 71,6 86,6 70 36,6 78,3 88,3 80 35,0 71,6 86,6 90 33,3 78,3 90,0 100 43,3 71,6 93,3

Tabela 2 - porcentagem de sucesso ( p = 0,4 )

0 10 20 30 40 50 60 70 80 90 100 20 30 40 50 60 70 80 90 100 número de tarefas porcentagem de sucesso (%) 1xGA Fshop.TS5 HBGATS

(15)

número de tarefas 1xGA (%) FShop.TS5 (%) HBGATS (%) 20 0,07 1,59 1,62 30 0,05 1,58 1,61 40 0,04 1,28 1,32 50 0,02 1,03 1,12 60 0,0 0,83 0,95 70 0,0 0,57 0,62 80 0,0 0,58 0,68 90 0,0 0,49 0,55 100 0,0 0,34 0,44

Tabela 3 - melhoria relativa ( p = 0,4 )

0,0 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0 20 30 40 50 60 70 80 90 100 número de tarefas melhoria relativa (% ) 1xGA Fshop.TS5 HBGATS

(16)

Os resultados obtidos mostram que o HBGATS apresenta um desempenho superior em todas as faixas em função do número de tarefas ( 20 a 100 ), tanto com relação à Porcentagem de Sucesso quanto em relação à Melhoria Relativa.

Dois aspectos que se salientam são : o primeiro refere-se aos desempenhos relativos estáveis dos três métodos, uma vez que o HBGATS sempre obteve o melhor desempenho, seguido do FShop.TS5 e posteriormente do 1xGA. O segundo diz respeito aos pequenos valores das Melhorias Relativas. Isto é devido ao fato da solução inicial dos métodos ser de melhor qualidade ( na maioria dos casos a solução do NEH ). Melhorias Relativas pequenas quando a solução inicial for boa não significa que o método não é eficaz. Obviamente, se a solução inicial for ótima a melhoria relativa será sempre nula. Uma observação interessante refere-se ao desempenho do Algoritmo Genético puro 1xGA quanto à Melhoria Relativa : os resultados ilustrados na Figura 3 indicam que o operador de 1 CORTE praticamente não consegue melhorar a solução inicial.

7 - CONSIDERAÇÕES FINAIS

Em função dos resultados experimentais obtidos, pode-se dizer que a pesquisa relatada neste artigo atingiu os seus objetivos e mostrou ser correta a expectativa quanto a métodos metaheurísticos híbridos para a minimização da duração total da programação em ambiente flow shop permutacional, ou seja, um método híbrido pode ser desenvolvido de maneira a agregar as características vantajosas dos métodos metaheurísticos puros.

8 - BIBLIOGRAFIA

CAMPBELL, H.G., DUDEK, R.A. and SMITH, M.L. (1970), “A Heuristic Algorithm for the n-job, m-machine Sequencing Problem”, Management Science 16/B, 630-637.

DANNENBRING, D.G. (1977), “An Evaluation of Flow-Shop Sequencing Heuristics”, Management Science 23, 1174-1182.

DÍAZ, B.A. (1996), “An SA/TS Mixture Algorithm for the Scheduling Tardiness Problem”, European Journal of Operational Research 88, 516-524.

FOX, B. (1992), “Integrating and Accelerating Tabu Search, Simulated Annealing, and Genetic Algorithms”, Annals of Operations Research 41, 47-67.

GAREY, M.R., JOHNSON, D.S. and SETHI, R. (1976), “The Complexity of Flowshop and Jobshop Scheduling”, Mathematics of Operations Research 1, 117-129.

GLOVER, F. (1989), "Tabu Search - Part I", ORSA Journal on Computing 1, 190-206. GLOVER, F. (1995), "Tabu search fundamentals and uses". University of Colorado, Boulder.

(17)

GLOVER, F., KELLY, J.P. and LAGUNA, M. (1995), “Genetic Algorithms and Tabu Search: Hybrids for Optimization”, Computers & Operations Research 22, 111-134.

GOLDBERG, D. E. (1989), “Genetic algorithms in search, optimization, and machine learning”. Addison - Wesley. GUPTA, J.N.D. (1971), "A Functional Heuristic Algorithm for the Flow-Shop Scheduling Problem", Operational Research Quarterly 22, 39-47.

HOLLAND, J. H. (1975), “Adaptation in natural and artificial systems”. The University of Michigan Press, Ann Arbor, Mich.

HUNDAL, T.S. and RAJGOPAL, J. (1988), “An Extension of Palmer's Heuristic for the Flow-Shop Scheduling Problem”, International Journal of Production Research 26, 1119-1124.

IGNALL, E. and SCHRAGE, L.E. (1965), "Application of Branch and Bound Technique to some Flow-Shop Problem", Operations Research 13, 400-412.

ISHIBUCHI, H., MISAKI, S. and TANAKA, H. (1995), “Modified Simulated Annealing Algorithms for the Flow Shop Sequencing Problem”, European Journal of Operational Research 81, 388-398.

KIM, H., NARA, K. and GEN, M. (1994), “A Method for Maintenance Scheduling Using GA Combined with SA”, Computers & Industrial Engineering 27, 477-480.

LIN, F-T, KAO, C-Y and HSU, C-C (1991), “Incorporating Genetic Algorithms into Simulated Annealing”, Dept. of Computer Science and Information Engineering, National Taiwan University.

MITTENTHAL, J., RAGHAVACHARI, M. and RANA, A.I. (1992), “A Hybrid Simulated Annealing Approach for Single Machine Scheduling Problems with Non-regular Penalty Functions”, Computers Ops Res. 20, 103-111.

MOCCELLIN, J.V. (1995), “A New Heuristic Method for the Permutation Flow Shop Scheduling Problem”, Journal of the Operational Research Society 46, 883 - 886.

MOCCELLIN, J.V. and NAGANO, M.S. (1998), “Evaluating the Performance of Tabu Search Procedures for Flow Shop Sequencing”, Journal of the Operational Research Society 49, 1296-1302.

MOTA, W.L. (1996), “Análise Comparativa de Algoritmos Genéticos para o Problema de Programação de Operações Flow Shop Permutacional”. São Carlos. 125p. Dissertação (Mestrado) - Escola de Engenharia de São Carlos, Universidade de São Paulo.

MURATA, T., ISHIBUCHI, H. and TANAKA, H. (1996), “Genetic Algorithms for Flowshop Scheduling Problems”, Computers & Industrial Engineering 30, 1061-1071.

NAWAZ, M., ENSCORE Jr., E.E. and HAM, I. (1983), “A Heuristic Algorithm for the m-Machine, n-Job Flow-Shop Sequencing Problem”, OMEGA 11, 91-95.

NOWICKI, E. and SMUTNICKI, C. (1996), “A Fast Tabu Search Algorithm for the Permutation Flow-shop Problem”, European Journal of Operational Research 91, 160-175.

OGBU, F.A. and SMITH, D.K. (1990), “The Application of the Simulated Annealing Algorithm to the Solution of the n/m/Cmax Flowshop Problem”, Computers and Operations Research 17, 243-253.

OGBU, F.A. and SMITH, D.K. (1991), "Simulated Annealing for the Permutation Flowshop Problem", OMEGA 19, 64-67.

OSMAN, I.H. and POTTS, C.N. (1989), “Simulated Annealing for Permutation Flow-Shop Scheduling”, OMEGA 17, 551-557.

PALMER, D.S. (1965), “Sequencing Jobs through a Multi-stage Process in the Minimum Total Time - A Quick Method of obtaining a Near Optimum”, Operational Research Quarterly 16, 101-107.

PIRLOT, M. (1996), “General Local Search Methods”, European Journal of Operational Research 92, 493-511. POTTS, C.N. (1980), "An Adaptive Branching Rule for the Permutation Flow-Shop Problem", European Journal of Operational Research 5, 19-25.

REEVES, C.R. (1993), "Improving the Efficiency of Tabu Search for Machine Sequencing Problems", Journal of the Operational Research Society 44, 375-382.

REEVES, C.R. (1995), “A Genetic Algorithm for Flowshop Sequencing”, Computers & Operations Research 22, 5-13.

ROACH, A. and NAGI, R. (1996), “A Hybrid GA-SA Algorithm for Just-In-Time Scheduling of Multi-Level Assemblies”, Computers & Industrial Engineering 30, 1047-1060.

(18)

SELEN, W.J. and HOTT, D.D. (1986), “A Mixed-Integer Goal Programming Formulation of the Standard Flow-Shop Scheduling Problem”, Journal of the Operational Research Society 37, 1121-1128.

TAILLARD, E. (1990), “Some Efficient Heuristic Methods for the Flow Shop Sequencing Problem”, European Journal of Operational Research 47, 65-74

TAILLARD, E. (1993), "Benchmarks for Basic Scheduling Problems", European Journal of Operational Research 64, 278-285.

WIDMER, M. and HERTZ, A. (1989), “A New Heuristic Method for the Flow Shop Sequencing Problem”, European Journal of Operational Research 41, 186-193.

WILSON, J.M. (1989), "Alternative Formulations of a Flow Shop Scheduling Problem", Journal of the Operational Research Society 40, 395-399.

ZEGORDI, S.H., ITOH, K. and ENKAWA, T. (1995), “Minimizing Makespan for Flow Shop Scheduling by Combining Simulated Annealing with Sequencing Knowledge”, European Journal of Operational Research 85, 515-531.

Referências

Documentos relacionados

O primeiro lida com esforços deliberados para manipular uma situação linguística - oferecer ensino de e testar diferentes línguas -; o segundo foca nas

Antes de iniciarmos nossa discussão sobre a presença das tecnologias digitais no ambiente escolar é importante definir a que tecnologias estamos nos referindo.

BraA-3050 Zezé Di Camargo e Luciano 4140 VOLTA PRO MEU CORAÇÃO Noite fria triste céu cinzento BraA-3050 Zezé Di Camargo e Luciano 4208 PIOR É TE PERDER Quanta gente a gente

As for quadratic earliness and tardiness: (Valente and Alves 2008) presented several dispatching heuristics for the single-machine problem and tested them on

Viagens mais baratas e mais fáceis Quando viajamos na zona euro, a nossa vida é muito mais fácil do que anteriormente porque não é preciso trocar de moeda e não temos que

Em casos de tratamento cirúrgico para remoção de tumores extensos de base de crânio e seios paranasais, uma técnica indicada é a osteotomia tipo Le Fort I, que se caracteriza por

Utilizar a técnica da Espectroscopia no Infravermelho Próximo (NIRS) na avaliação das propriedades da madeira e do carvão vegetal de Eucalyptus..

licitante vencedora deverá enviar, no prazo máximo de 60 (sessenta) minutos, os documentos discriminados no Anexo II – Relação dos Documentos de Habilitação, com