Vous êtes sur la page 1sur 111

UNIVERSIDADE DE SO PAULO

ESCOLA DE ENGENHARIA DE SO CARLOS


DEPARTAMENTO DE ENGENHARIA DE PRODUO
TRABALHO DE CONCLUSO DE CURSO

ELTON KJI KAZAMA

HEURSTICAS CONSTRUTIVAS PARA PROGRAMAO DE


OPERAES EM SISTEMAS DE PRODUO FLOWSHOP
PERMUTACIONAL: CLASSIFICAO DE SUAS FASES
CONSTRUTIVAS

So Carlos
2011

UNIVERSIDADE DE SO PAULO
ESCOLA DE ENGENHARIA DE SO CARLOS
DEPARTAMENTO DE ENGENHARIA DE
PRODUO

TRABALHO DE CONCLUSO DE CURSO II

ELTON KJI KAZAMA


N USP 5909489

HEURSTICAS CONSTRUTIVAS PARA PROGRAMAO DE


OPERAES EM SISTEMAS DE PRODUO FLOWSHOP
PERMUTACIONAL: CLASSIFICAO DE SUAS FASES
CONSTRUTIVAS

Trabalho apresentado ao Departamento de


Engenharia de Produo da Escola de Engenharia
de So Carlos - Universidade de So Paulo, como
Trabalho de Concluso de Curso em Engenharia
de Produo Mecnica.
Disciplina: SEP 1800081 Trabalho de
Concluso de Curso II

Orientador: Prof. Dr. Marcelo Seido Nagano

So Carlos
2011

Faa o que for necessrio para ser feliz.


Mas no esquea que a felicidade um sentimento simples,
Voc pode encontr-la e deix-la ir embora por no perceber
a sua simplicidade.
(Mrio Quintana)

Dedico este trabalho a minha amada, Tssia Marques.

AGRADECIMENTOS
Agradeo primeiramente a Deus, por todas as oportunidades a mim concedidas, pela
sade e pelas pessoas que Ele colocou em minha vida.
Gostaria de agradecer tambm ao meu orientador, professor Dr Marcelo Seido Nagano,
pelo conhecimento e orientao dados que foram muito alm deste trabalho, que
perdurou pelo longo e valoroso trajeto da faculdade.
Agradeo imensamente a minha famlia, e em especial aos meus pais Kiyoji e Massae,
por todo o apoio que possibilitou a concretizao de um grande sonho me formar em
uma renomada escola. Agradeo pelo amor, carinho e dedicao que pude contar desde
os meus primeiros segundos de vida at o presente momento.
Agradeo a todos que indiretamente contriburam para a concluso desta fase de minha
vida.
E por fim, agradeo ao meu grande amor, Tssia, que esteve comigo em todos os
momentos da confeco deste trabalho, com seu suporte e carinho que foram
fundamentais para a finalizao deste ciclo.
Muito obrigado!

KAZAMA, E.K. Heursticas construtivas para programao de operaes em


sistemas de produo flowshop permutacional: classificao de suas fases
construtivas. So Carlos, 2011. 99 pg. Trabalho de Concluso de Curso Escola de
Engenharia de So Carlos, Universidade de So Paulo.

RESUMO
Este trabalho se prope a classificar os melhores mtodos heursticos da literatura que
tratam da programao de operaes em ambiente flowshop permutacional para
minimizao da durao total da programao (makespan). Tal classificao feita
segundo a proposta de Framinan, Gupta e Leisten (2004). Inicialmente foi feita uma
anlise bibliogrfica das heursticas construtivas que tratam do tema em questo.
Posteriormente, procedeu-se classificao de suas fases de construo e elaborao
de exemplos numricos ilustrados de cada uma. Com isso, a pesquisa busca facilitar a
localizao de heursticas simples ou compostas dentro de um quadro mais amplo,
permitindo a identificao de combinaes entre elas que possam melhorar seus
resultados individuais em trabalhos futuros.
Palavras-chave: Flowshop permutacional. Programao da produo. Mtodos
heursticos construtivos. Makespan.

ABSTRACT
The proposal of this work is to classify the best heuristics methods from the literature
that deal with the Permutation Flowshop scheduling problem with the objective of
minimizing the total flow time of jobs (makespan) according to Framinan, Gupta and
Leisten (2004) classification system. The first step done was a literature review and
analysis of the best constructive heuristics that deal with makespan minimization.
Subsequently, this work proceeded with the classification of the constructive phases for
each heuristic and the numeric illustration of the application for better understanding.
In this way, this research seeks to facilitate the choice of simple or composed heuristics
in the literature, enabling the identification of combination between them in order to
improve individual results for future research.
Key-words: Permutation flowshop. Scheduling. Constructive heuristics. Makespan.

LISTA DE FIGURAS
Figura 1 - Programao da produo em funo dos prazos solicitados.
Fonte: Gigante (2010) ..................................................................................................... 20
Figura 2 - Sequncia tima. Regra de Johnson .............................................................. 51
Figura 3 - Grfico de Gantt da sequncia obtida por Palmer ......................................... 53
Figura 4 - Grfico de Gantt da sequncia obtida utilizando o mtodo CDS. ................. 56
Figura 5 - Grfico de Gantt da sequncia parcial obtida J1 - J3..................................... 59
Figura 6 - Grfico de Gantt da sequncia parcial obtida J3 - J1..................................... 60
Figura 7 - Grfico de Gantt da sequncia parcial obtida J3 - J1 - J2 .............................. 60
Figura 8 - Grfico de Gantt da sequncia parcial obtida J3 - J2 - J1 .............................. 60
Figura 9 - Grfico de Gantt da sequncia parcial obtida J2 - J3 - J1 .............................. 61
Figura 10 - Grfico de Gantt da sequncia obtida J3 - J1 - J2 - J4 ................................ 61
Figura 11 - Grfico de Gantt da sequncia obtida J3 - J1 - J4 - J2 ................................. 61
Figura 12 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 ................................. 62
Figura 13 - Grfico de Gantt da sequncia obtida J4 - J3 - J1 - J2 ................................. 62
Figura 14 - Grfico de Gantt da sequncia parcial obtida J5 - J2................................... 66
Figura 15 - Grfico de Gantt da sequncia parcial obtida J2 - J5................................... 66
Figura 16 - Grfico de Gantt da sequncia parcial obtida J4 - J2 - J5 ............................ 66
Figura 17 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J5 ............................ 67
Figura 18 - Grfico de Gantt da sequncia parcial obtida J2 - J5 - J4 ............................ 67
Figura 19 - Grfico de Gantt da sequncia parcial obtida J1 - J2 - J4 - J5 ..................... 68
Figura 20 - Grfico de Gantt da sequncia parcial obtida J2 - J1 - J4 - J5 ..................... 68
Figura 21 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J1 - J5 ..................... 68
Figura 22 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J5 - J1 ..................... 69
Figura 23 - Grfico de Gantt da sequncia obtida J3 - J1 - J2 - J4 - J5 .......................... 69
Figura 24 - Grfico de Gantt da sequncia obtida J1 - J3 - J2 - J4 - J5 .......................... 70

Figura 25 - Grfico de Gantt da sequncia obtida J1 - J2 - J3 - J4 - J5 .......................... 70


Figura 26 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J3 - J5 .......................... 71
Figura 27 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J5 - J3 .......................... 71
Figura 28 - Grfico de Gantt da sequncia obtida J4 - J5 - J6 - J8 - J2 J3 - J9 - J10 - J1 - J7 ....................................................................................................... 72
Figura 29 - Grfico de Gantt da sequncia obtida J4 - J8 - J6 - J2 - J9 J3 - J10 - J7 - J5 - J1 ....................................................................................................... 72
Figura 30 - Grfico de Gantt da sequncia obtida J1 - J5............................................... 76
Figura 31 - Grfico de Gantt da sequncia obtida J5 - J1............................................... 76
Figura 32 - Grfico de Gantt da sequncia obtida J2 - J1 - J5........................................ 76
Figura 33 - Grfico de Gantt da sequncia obtida J1 - J2 - J5........................................ 76
Figura 34 - Grfico de Gantt da sequncia obtida J1 - J5 - J2........................................ 77
Figura 35 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J5 ................................. 77
Figura 36 - Grfico de Gantt da sequncia obtida J1 - J4 - J2 - J5 ................................. 77
Figura 37 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J5 ................................. 77
Figura 38 - Grfico de Gantt da sequncia obtida J1 - J2 - J5 - J4 ................................. 78
Figura 39 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J5 .......................... 78
Figura 40 - Grfico de Gantt da sequncia obtida J4 - J3 - J1 - J2 - J5 .......................... 78
Figura 41 - Grfico de Gantt da sequncia obtida J4 - J1 - J3 - J2 - J5 .......................... 78
Figura 42 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J3 - J5 .......................... 79
Figura 43 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J5 - J3 .......................... 79
Figura 44 - Grfico de Gantt da sequncia obtida J6 - J3 - J4 - J1 - J2 - J5 ................... 81
Figura 45 - Grfico de Gantt da sequncia obtida J3 - J6 - J4 - J1 - J2 - J5 ................... 81
Figura 46 - Grfico de Gantt da sequncia obtida J3 - J4 - J6 - J1 - J2 - J5 ................... 81
Figura 47 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J6 - J2 - J5 ................... 82
Figura 48 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J6 - J5 ................... 82

Figura 49 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J5 - J6 ................... 82


Figura 50 - Grfico de Gantt da sequncia parcial obtida J5 - J1................................... 84
Figura 51 - Grfico de Gantt da sequncia parcial obtida J1 - J5................................... 84
Figura 52 - Grfico de Gantt da sequncia parcial obtida J2 - J5 - J1 ............................ 85
Figura 53 - Grfico de Gantt da sequncia parcial obtida J5 - J2 - J1 ............................ 85
Figura 54 - Grfico de Gantt da sequncia parcial obtida J5 - J1 - J2 ............................ 85
Figura 55 - Grfico de Gantt da sequncia parcial obtida J3 - J2 - J1- J5 ...................... 86
Figura 56 - Grfico de Gantt da sequncia parcial obtida J2 - J3 - J1- J5 ..................... 86
Figura 57 - Grfico de Gantt da sequncia parcial obtida J2 - J1- J3 - J5 ..................... 86
Figura 58 - Grfico de Gantt da sequncia parcial obtida J2 - J1- J5- J3 ...................... 86
Figura 59 - Grfico de Gantt da sequncia obtida J4- J2 - J1- J5 - J3 ............................ 87
Figura 60 - Grfico de Gantt da sequncia obtida J2 - J4 - J1- J5 - J3 .......................... 88
Figura 61 - Grfico de Gantt da sequncia obtida J2 - J1- J4- J5 - J3 ........................... 88
Figura 62 - Grfico de Gantt da sequncia obtida J2 - J1- J5 - J4 - J3 .......................... 88
Figura 63 - Grfico de Gantt da sequncia obtida J2 - J1- J5 - J3 - J4 .......................... 88
Figura 64 - Grfico de Gantt da sequncia obtida pelo mtodo FRB3........................... 90
Figura 65 - Componentes do Makespan ......................................................................... 90
Figura 66 - Grfico de Gantt da sequncia obtida J4 - J2 - J1 - J5 - J3 .......................... 93
Figura 67 - Grfico de Gantt da sequncia obtida J4 - J5 - J1 - J2 - J3 .......................... 95
Figura 68 - Grfico de Gantt da sequncia obtida J4 - J2 - J5 - J1 - J3 .......................... 96
Figura 69 - Tempo total para executar uma programao permutacional
(Makespan M()) ............................................................................................................ 97
Figura 70 - Demonstrao da propriedade LBY ............................................................ 98
Figura 71 - Grfico de Gantt da sequncia obtida J2 J10 J1 J3 J5
J7 J8 J9 J4 J6 .................................................................................................... 102

Figura 72 - Grfico de Gantt da sequncia obtida J2 J8 J10 J7 J5


J9 J3 J1 J6 J4 .................................................................................................... 103
Figura 73 - Quadro Geral de Classificao das Fases Construtivas ............................. 104

LISTA DE TABELAS
Tabela 1 - Tempos de processamento para a Regra de Johnson50
Tabela 2 -Tempos de processamento para a heurstica Palmer ...................................... 52
Tabela 3 - Tempos de processamento para a heurstica CDS......................................... 54
Tabela 4 - Tempo de processamento para k=1 ............................................................... 55
Tabela 5 - Tempo de processamento para k=2 ............................................................... 55
Tabela 6 - Quadro resumo at a k-sima sequncia........................................................ 56
Tabela 7 - Tempos de processamento para a heurstica NEH ........................................ 59
Tabela 8 - Tempos de processamento para o mtodo NEHKK ...................................... 65
Tabela 9 - Tempos de processamento 10 tarefas - heurstica NEHKK .......................... 72
Tabela 10 - Tempos de processamento heurstica NEH-D............................................. 75
Tabela 11 Tempos de processamento heurstica FRB3 .................................................. 83
Tabela 12 - Tempos de Processamento heurstica HC ................................................... 93
Tabela 13 - Clculo do gap d1ij ....................................................................................... 94
Tabela 14 - Clculo do gap d2i.j ...................................................................................... 94
Tabela 15 - Clculo do gap d3i,j ...................................................................................... 94
Tabela 16 - Gaps ajustados dRi,j ...................................................................................... 95
Tabela 17 - Tempos de Processamento heurstica N&M .......................................... 100

SUMRIO
Resumo
Abstract
1

INTRODUO .................................................................................................... 14
1.1

OBJETIVOS .................................................................................................. 16

1.2

MTODO DE PESQUISA ............................................................................... 17

REVISO BIBLIOGRFICA ............................................................................ 18


2.1

PLANEJAMENTO E PROGRAMAO DA PRODUO ................................ 18

2.2

VISO GERAL SOBRE PROGRAMAO DA PRODUO (SCHEDULING) . 22

2.3

O AMBIENTE FLOWSHOP PERMUTACIONAL ............................................. 25

2.4

TIPOS DE MODELOS PARA FLOWSHOP ...................................................... 26

2.4.1
2.4.2
2.5

Algoritmo Exato ....................................................................................... 26


Heursticas ................................................................................................ 26

HEURSTICAS CONSTRUTIVAS .................................................................. 28

CLASSIFICAES EXISTENTES DE HEURSTICAS DE FLOWSHOP

PERMUTACIONAL .................................................................................................... 38
3.1

CLASSIFICAO PROPOSTA POR FRAMINAN, GUPTA E LEISTEN (2004) . 39

3.1.1
3.1.2
3.1.3
3.1.4
4

Fase I: Desenvolvimento do ndice .......................................................... 39


Fase II: construo da soluo .................................................................. 42
Fase III: melhoramento da soluo ........................................................... 44
Estratgias para cada fase de classificao das heursticas ...................... 45

RESULTADOS E DISCUSSO ......................................................................... 49


4.1

HEURSTICAS SIMPLES ............................................................................... 49

4.1.1
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
4.1.7
4.1.8
4.2

Regra de Johnson (1954) .......................................................................... 49


Palmer (1965) ........................................................................................... 52
Campbell, Dudek e Smith (1970) ............................................................. 53
Dannenbring (1977) .................................................................................. 56
Nawaz, Enscore e Ham (1983) ................................................................. 57
Moccellin (1995) ...................................................................................... 62
Kalczynski e Kamburowski (2008) .......................................................... 64
Dong, Huang e Chen(2009) ...................................................................... 73
Rad, Ruiz e Boroojerdian (2009) .............................................................. 82

HEURSTICAS COMPOSTAS ........................................................................ 90

4.2.1

Ho e Chang (1991) ................................................................................... 90

4.2.2
4.3

Nagano e Moccellin (2002) ...................................................................... 96

QUADRO DE CLASSIFICAO .................................................................. 103

CONSIDERAES FINAIS ............................................................................ 105

REFERNCIAS BIBLIOGRFICAS ............................................................ 106

14

1. INTRODUO

Os tipos de problemas de programao de operaes em mquinas vm sendo


caracterizados por diversos autores como Baker (1974), French (1982), Blazewicz et al.
(1996) e Pinedo (2008). Problemas complexos podem surgir na programao de
operaes nas mquinas disponveis. As restries tecnolgicas determinadas pelo fluxo
das tarefas nas mquinas e a medida de desempenho da programao devem ser
especificadas. Maccarthy e Liu (1993) classificam os problemas de programao de
operaes do seguinte modo:

Flowshop todas as tarefas possuem o mesmo fluxo de processamento em todas


as mquinas;

Jobshop as tarefas possuem um roteiro especfico de processamento,


determinado para cada uma em particular;

Openshop no h roteiros de processamento pr-estabelecidos para as tarefas;

Flowshop permutacional flowshop onde a ordem de processamento das


tarefas a mesma para todas as mquinas;

Mquina nica mquina nica disponvel para a execuo das tarefas;

Mquinas paralelas duas ou mais mquinas disponveis que podem executar


qualquer tarefa, onde a tarefa s executada em uma mquina;

Jobshop com mquinas mltiplas um jobshop no qual existem ki mquinas


idnticas em cada estgio i (i= 1, 2, ..., m). Em cada estgio, cada tarefa
processada apenas por uma mquina.

Flowshop com mquinas mltiplas um flowshop onde as tarefas so


processadas em mltiplos estgios seguindo a mesma ordem em cada um deles.
possvel variar a quantidade por estgio e as tarefas so processadas em
apenas uma mquina por estgio.
Os problemas de programao da produo remetem rea de otimizao

combinatria. No incio da dcada de 70, Cook (1971) elaborou a base da teoria da


complexidade computacional para problemas dessa rea considerados intratveis. Um
problema de otimizao intratvel aquele que no apresenta algoritmo em tempo
polinomial para sua soluo. Esta categoria de problemas enquadra-se na classe NPhard, cuja definio pode ser encontrada em Garey e Johnson (1979). A partir da dcada

15
de 80, demonstrou-se que a maioria dos problemas de programao da produo
enquadram-se nesta classe NP-hard (LAWLER et al. 1993; BLAZEWICZ et al. 1996).
Com isso, os pesquisadores voltaram-se para mtodos heursticos de resoluo
desses problemas, buscando uma soluo de boa qualidade em tempo computacional
baixo situao desejvel no cenrio da produo, onde o tempo de tomada de deciso
curto, geralmente um dia ou um turno (GIGANTE, 2010).
A pesquisa aborda o problema de programao de operaes em ambiente
flowshop permutacional, onde o nmero de solues viveis (n!), sendo n o nmero de
tarefas a serem programadas independentemente do nmero de mquinas do sistema.
Para resolver problemas de programao flowshop permutacional, as principais
abordagens na literatura incluem programao matemtica, mtodos heursticos e metaheursticos. Mtodos heursticos construtivos podem fornecer boas solues, uma vez
que apresentam o melhor trade-off entre a qualidade da soluo e o custo
computacional.
Desta forma, o objeto de estudo deste trabalho so os mtodos heursticos
construtivos voltados para ambientes de flowshop permutacional, com o objetivo de
reduo do tempo total de fluxo (makespan). Dentre os fatores a serem considerados
durante a programao em ambientes flowshop, a minimizao do tempo de concluso
mximo (Cmx) ou makespan so diretamente relacionados maximizao do
rendimento e da utilizao dos recursos. Portanto, no surpresa que a maioria das
pesquisas referente s ultimas dcadas se concentraram sobre a minimizao do
makespan. Um ambiente flowshop consiste de n tarefas que devem ser processadas em
m mquinas na mesma ordem (Fm). O problema de programao em ambientes
flowshop em encontrar uma sequncia de tarefas para cada mquina de acordo com
determinada(s) medida(s) de desempenho. Alm disso, para muitas situaes, assume-se
que todas as sequncias de tarefas sero as mesmas em todas as mquinas (flowshop
permutacional - prmu).
Este um assunto relevante para o dinmico ambiente de produo atual, e tem
atrado ateno de muitos pesquisadores nos ltimos anos. De fato, houve um
crescimento exponencial de heursticas do tipo Fm/prmu/Cmax a partir da dcada de
1960. Um certo nmero de abordagens foi sugerido (SZWARC, 1971; LAGEWEG et
al, 1978; POTTS, 1980, ou CARLIER; REBAI,1996), considerando o problema do tipo
NP-hard para trs ou mais mquinas, mas a maioria dos esforos se concentraram em
propor procedimentos heursticos que produzam boas solues (e no necessariamente

16
timas) dentro de intervalos relativamente curtos, tais como aqueles requeridos na
tomada de decises de programao e seqenciamento.
Como o nmero de heursticas disponveis para estes tipos de problema estava
aumentando, tornou-se claro que nem todos eles eram da mesma natureza, apresentando
vrias propriedades diferentes, tais como ordem de complexidade, tempo de
processamento computacional ou memria requerida. Por exemplo, Widemer e Hertz
(1991) ou Moccellin (1995) apresentaram heursticas que requerem uma soluo inicial
(obtidas em ambos os casos por uma analogia ao problema do caixeiro viajante) seguida
de uma busca-tabu que, a princpio, poderia ser empregada como uma soluo inicial
para qualquer outra soluo heurstica.
Atualmente, portanto, existem diversas heursticas disponveis que tratam do
problema citado, Fm/prmu/Cmax , contudo, embora muitas tentativas de classificao j
tenham sido realizadas por exemplo, Gupta (1971), Pinedo (2008), ou Loureno
(1996) , no existe nenhum quadro de classificao aprofundado sobre essas
heursticas. Tal quadro fundamental para conduzir possveis pontos de pesquisas
futuras. Ao analisar estas heursticas de acordo com uma classificao comum,
possvel entender o modo como elas so construdas estruturalmente, e assim enxergar
combinaes de duas ou mais heursticas para obter uma heurstica composta que leve a
solues de melhor qualidade.

1.1 OBJETIVOS
O trabalho tem como objetivo uma classificao das fases de heursticas
construtivas para o ambiente de flowshop permutacional. A heurstica pode ser definida
como um mtodo desenvolvido atravs de um modelo cognitivo, usualmente atravs de
regras baseadas na experincia dos desenvolvedores. Heursticas construtivas so assim
denominadas por construrem a soluo de um problema de maneira incremental, a
partir do zero.
Devido ao fato de os problemas de flowshop permutacional com n-tarefas e mmquinas pertencerem aos problemas NP-hard, (Johnson e Montgomery, 1974), os
requisitos computacionais para obter solues timas, que aumentam exponencialmente
medida que aumenta o tamanho do problema, tornam-se importantes na resoluo de
problemas de flowshop permutacional. Heursticas construtivas foram desenvolvidas
sob esta situao. Embora a meta-heurstica melhore muito a qualidade das solues, os

17
requisitos computacionais e a complexidade de implementao tambm aumentam, que
uma desvantagem quando se aplica na prtica. Encontrar uma heurstica construtiva
eficaz e computacionalmente vivel traz contribuies tanto para a prtica quanto para a
literatura, pois os resultados podem ser usados como inicializao para as metaheursticas, como por exemplo, para o algoritmo gentico hbrido, e Busca Tabu
(REEVES, 1993), o Algoritmo Gentico (CHEN et al, 1995), etc.
Inicialmente, portanto, busca-se identificar e analisar os principais mtodos
heursticos relacionados ao tema, para, posteriormente, estabelecer uma classificao de
suas fases. Com isso, procura-se disponibilizar uma sntese das ferramentas heursticas
utilizadas para otimizar a programao das operaes em Flowshop permutacional,
fornecendo um panorama geral sobre o que existe na rea e facilitando a combinao
destas heursticas para a resoluo de problemas.

1.2 MTODO DE PESQUISA


O trabalho envolveu pesquisa bibliogrfica sobre o tema abordado e
levantamentos e sistematizao de informaes, obtidas atravs de pesquisa em teses,
artigos e livros relacionados ao tema, e em ferramentas disponveis no meio eletrnico.
A pesquisa bibliogrfica abrangeu, alm do material especfico sobre os mtodos
heursticos a serem estudados, materiais sobre programao da produo e sobre
resoluo de problemas de programao com flowshop permutacional. Esse
instrumental terico forneceu subsdios s investigaes dos dados especficos sobre o
objeto de estudo, permitindo balizar e analisar as informaes obtidas.
A princpio, foi estabelecido um processo de leitura de modo a identificar os
principais mtodos heursticos construtivos voltados ao problema de programao de
Flowshop permutacional. A segunda etapa desse processo consistiu em estabelecer uma
metodologia de classificao das fases necessrias para a aplicao dos mtodos. Feita a
classificao dos principais mtodos heursticos estudados a partir da metodologia
sistematizada por Framinan, Gupta e Leisten (2004), elaborou-se um quadro-resumo das
fases de cada um, permitindo melhor visualizao e comparao dos dados. A ilustrao
das heursticas analisadas foi feita atravs do software LEKIN (Flexible Job-Shop
Scheduling System), desenvolvido pela Stern School of Business (NYU).

18
2 REVISO BIBLIOGRFICA

2.1 PLANEJAMENTO E PROGRAMAO DA PRODUO


A funo da atividade de Planejamento e Controle da Produo (PCP) garantir,
de forma correta e eficaz, a execuo, controle e planejamento de todo o processo
produtivo. Fala-se em processo produtivo porque, segundo Gigante (2010), a produo
de bens ou servios pode ser considerada como um conjunto de processos, ou um
processo nico, no qual ocorre a transformao de insumos em produtos e servios. O
objetivo final do PCP atingir tempo e quantidade de produo adequados, alm de
proporcionar produtos de qualidade aos clientes.
Para um melhor entendimento sobre o PCP, importante diferenciarmos
planejamento e controle, uma vez que as atividades envolvidas nessa disciplina
relacionam-se gesto da capacidade de execuo de uma certa operao com as
demandas que ela exige (SLACK, 2002). De acordo com Gigante (2010), planejamento
o detalhamento do que se intenciona fazer em um determinado perodo de tempo. J
controle o processo de ajustes necessrios para que operaes e atividades sejam feitas
de acordo com o estabelecido.
Slack (2002) destaca ainda que, uma vez que planejamento e controle a tcnica
de conciliar demanda e fornecimento, a tomada de decises para planejar e controlar
uma operao produtiva depender da natureza da demanda e do fornecimento da
operao em questo.
O gerenciamento de processos produtivos feito pelo PCP deve levar em conta as
restries tecnolgicas do ambiente e ajustar a produo ao tempo de execuo das
atividades e aos volumes de demanda, suprindo suas necessidades. E para conciliar
volume e tempo so necessrias trs atividades integradas, porm de carter distinto:
carregamento, sequncia e programao (GIGANTE, 2010).
Carregamento pode ser definido como a quantidade de trabalho colocada em
determinado centro de trabalho. Tal quantidade pode ser fixa para um certo perodo de
tempo, ou contnua, com variao da quantidade de trabalho de acordo com a sada das
atividades acabadas.
Sequenciamento o ordenamento de execuo das operaes. Trata-se de uma
atividade bastante complexa. Pode ser exemplificada da seguinte forma: uma mquina
possui o sequenciamento de cinco atividades independentes, sendo 5! sequncias

19
distintas para a execuo dessas atividades ou 120 solues possveis de ordenamento.
Em um caso que apresente dez atividades, o nmero de alternativas cresce para
3.268.800 problema ainda pequeno em comparao ao que ocorre em ambientes reais
(GIGANTE, 2010).
Por fim, programao o conjunto de atividades que definem os volumes de cada
produto, datas de incio e trmino de produo e os equipamentos usados para sua
fabricao. Seu objetivo, segundo Rodammer e White Jr. (1981), encontrar um modo
adequado de distribuir e sequenciar o uso de recursos compartilhados de forma que
atenda s restries da produo e minimize os custos.
Segundo Nambiar et al (1981), a programao da produo est no nvel mais
baixo na hierarquia de um sistema de planejamento da produo. Nessa hierarquia, o
primeiro nvel determinado pelo programa mestre, elaborado com base nas decises
agregadas sobre produo e capacidade. Uma vez fixado o programa mestre de
produo, temos o segundo nvel da hierarquia, onde se determinam as quantidades a
serem produzidas (ou compradas) dos diferentes componentes. O terceiro e ltimo nvel
encontra-se aps a definio das quantidades e datas de entrega dos diferentes
componentes, e compreende os programas de produo e as alocaes dos recursos
necessrios. Para o autor, portanto, o objetivo de uma programao atribuir e
seqenciar a utilizao desses recursos compartilhados, minimizando os custos e
atendendo s restries de produo.
De modo geral, a programao da produo envolve um conjunto de tarefas a
serem processadas, e cada tarefa, por sua vez, compreende um conjunto de operaes
distintas. As operaes requerem mquinas, recursos humanos e recursos materiais e
devem ser executadas de acordo com uma sequncia tecnolgica vivel. A programao
influenciada, portanto, por diversos fatores: prioridade de tarefas, prazos de entrega,
restries de custos, nveis de produo, restries quanto aos tamanhos dos lotes,
disponibilidade e capacidade de mquinas, precedncias de operaes, requerimentos de
recursos e disponibilidade de recursos. O programa gerado seleciona uma seqncia
adequada de operaes que resultar na concluso de todas as tarefas do conjunto no
menor tempo possvel.
No nvel da programao de produo, as decises tomadas no apresentam
importncia de forma individual. O conjunto de decises tomadas em um perodo de
tempo, contudo, possuem enorme influncia nos planos elaborados nos nveis
superiores da hierarquia, podendo comprometer o desempenho de um dado ambiente de

20
programao. Uma programao de baixa qualidade pode ocasionar desperdcio de
recursos e materiais, atrasos nas datas de entregas, baixa qualidade de produtos, baixa
lucratividade, entre outros.
Para Graves (1981), o problema de programao da produo abrange um
conjunto de tarefas a serem realizadas e os critrios de realizao, que podem
determinar, por exemplo, um trmino adiantado ou prolongado dessas tarefas.
A programao da produo e os estoques acomodam a demanda pelos produtos.
Entretanto, h variveis controlveis externas, como o nvel de estoque e cargamquina, que influenciam o desempenho do sistema produtivo. Assim, tais fatores
tambm devem ser considerados na programao da produo, bem como os fatores
internos, ambos levando a estratgias distintas.
Quanto orientao externa, a programao busca atender a influncia da
demanda, representada pelas solicitaes dos clientes em quantidade e prazo. J a
orientao externa, ligada produtividade, envolve o uso eficiente dos recursos.
A programao da produo orientada aos fatores externos abrange a
considerao de prazos, isto , estabelecer os tempos de execuo ou durao, bem
como as tolerncias de fabricao, a partir de um prazo de entrega ou data de trmino.
Deste modo so obtidas as datas de incio de fabricao ou execuo das atividades.
Prazos podem ser estabelecidos de diversas maneiras, de acordo com os aspectos
especficos de cada processo produtivo. Abaixo, tem-se um exemplo:

Figura 1 - Programao da produo em funo dos prazos solicitados. Fonte: Gigante (2010)

21
A situao ilustrada em (a) aplica-se aos casos onde j esto disponveis as
matrias-primas a serem usadas na fabricao. O prazo para incio da funo obtido
subtraindo-se o tempo de execuo da funo do prazo solicitado pelo cliente, ou do
prazo dado pela reposio do estoque. O tempo de execuo da funo pode
complementar tempos de espera caso haja indisponibilidade de equipamentos devido
fabricao de demais produtos da empresa, entre outros.
Na situao (b), onde no h disponibilidade de matria-prima (ou outros
recursos), ocorre um atraso no pedido do cliente, que s processado aps a obteno
dos recursos. Assim, alm de coordenar a programao, preciso coordenar tambm a
obteno dos recursos necessrios.
Pode ocorrer ainda uma terceira situao, na qual o pedido do cliente marca o
incio da funo. Nesse caso, o prazo de entrega ou trmino dado pela durao da
funo ou atividade. Recebido o pedido do cliente, o incio da funo depende apenas
da disponibilidade de recursos.
A programao da produo voltada aos fatores internos procura uma utilizao
eficiente da capacidade, como por exemplo, a mxima utilizao das mquinas, atravs
da coordenao das atividades simultneas que ocorrem internamente.
Assim, a programao da produo orientada externamente busca atender critrios
de servios ao cliente, enquanto a orientada internamente busca atingir a produtividade
dos recursos. Apesar do fato de que a estratgia de programao da produo dependa
da prtica de cada empresa, alguns objetivos bsicos so preservados: entrega dos
produtos fabricados nas datas compromissadas ou estabelecidas; distribuio da carga
de trabalho para obter mxima utilizao dos recursos; garantia de disponibilidade da
matria-prima e componentes quando solicitados pela fabricao; impedimento de
grande concentrao de trabalho em poucas mquinas; previso da ociosidade da
capacidade produtiva; estabelecimento de sequncias de produo que minimizem o
tempo de equipamento sem trabalho.
Os problemas de capacidade e de estoques esto fortemente ligados aos problemas
de programao da produo, tanto ligados aos aspectos externos como aos internos.
A programao se torna mais complexa nas situaes em que no h estoques de
produtos acabados e as decises de programao so influenciadas pela demanda
imposta pelos clientes, pois o grau de competitividade das tarefas baixo, o que
demanda um alto controle na programao.

22
J nas situaes em que h estoque, a programao deve analisar trs estgios do
sistema: o prazo para o produto final entrar no estoque, o incio da fabricao do
produto e a disponibilidade de matrias-primas para a fabricao. Apesar de envolver
mais estgios e ser tecnicamente mais complexa, nesta situao a determinao dos
prazos mais simples porque se volta para a demanda do estoque, e no para o cliente
(GIGANTE, 2010).
De modo geral, um nvel alto de demanda est ligado padronizao de produtos
e servios, o que acarreta uma repetitividade da funo e a existncia de recursos com
finalidades especficas. Um nvel baixo de demanda, por sua vez, pode estar associado
variedade de produtos e servios no padronizados, que gera baixa repetitividade das
tarefas e exige mquinas e equipamentos de uso geral.
A eficincia da programao da produo pode ser avaliada por parmetros
ligados a aspectos internos e externos. So parmetros de orientao interna: nvel de
produtos acabados ou trabalhos em andamento/progresso; porcentagem de faltas nos
estoques; e tempo parado por outros motivos (quebras, falta de uso, etc). So
parmetros de orientao externa: porcentagem das ordens entregues antes do prazo ou
no prazo e tempo de espera do cliente. E h, ainda, parmetros de origem externa e
interna: porcentagem de utilizao dos recursos, quantidade de clientes perdidos e
tempo de preparao das mquinas.
Tcnicas e mtodos com finalidades especficas foram desenvolvidos para
executar a programao da produo de acordo com seus objetivos, tanto para atender
aos aspectos externos como para cumprir orientaes internas. Entre os mais difundidos
esto os Grficos de Gantt, o Diagrama de Montagem, as Tcnicas de Redes (CPM e
PERT) e diversos mtodos heursticos que determinam o melhor seqenciamento da
produo.

2.2 VISO GERAL SOBRE PROGRAMAO DA PRODUO


(SCHEDULING)
Um sistema de scheduling, ou programao da produo, segundo Morton e
Pentico (1993), se refere a procedimentos dinmicos para tomar decises relacionando
atividades de uma tarefa ou projeto com os recursos que as executam, de modo que os
objetivos sejam atingidos, ou seja, as atividades sejam executadas pontualmente e com
alta qualidade e, simultaneamente, o volume de produo seja maximizado e os custos

23
operacionais diretos minimizados. J Sipper e Bulfin Jr. (1997) definem scheduling
como o processo de organizar, escolher e temporizar o uso de recursos na realizao de
todas as atividades necessrias para produzir sadas nos momentos necessrios. O
scheduling deve satisfazer um grande nmero de restries de tempo e de relaes entre
as atividades e os recursos. Caso os recursos sejam ilimitados, um problema de
scheduling no existe (FERNANDES; FILHO, 2010).
Considerando uma mquina que processe 32 tarefas, o nmero de sequncias
possveis seria de 32! = 2,5x1035, nmero excepcionalmente grande (SIPPER; BULFIN
JR, 1997). Utilizando um computador sofisticado para avaliar todas as alternativas, este
processo levaria centenas de anos. Portanto, verifica-se a necessidade de algoritmos
para reduzir este universo de possibilidades de modo a obter as melhores sequncias.
De modo geral, podemos afirmar que a programao da produo ou scheduling
um processo de deciso onde o objetivo a otimizao da produo e onde o uso dos
recursos est sujeito a uma srie de restries. Portanto, esta programao diz respeito
alocao de recursos limitados para tarefas ao longo do tempo. As formas de recursos e
tarefas podem ser diferentes, dada a variedade de indstrias e seus objetivos.
Em um sistema de manufatura, os pedidos devem ser liberados e traduzidos em
tarefas, com suas respectivas datas de entregas. Tais tarefas devem ser processadas por
mquinas em centros de trabalhos em uma determinada ordem ou sequncia, e podem
ter que esperar ou adiantar seu processamento caso as mquinas estejam ocupadas ou
quando tarefas de alta prioridade precisam ser processadas antecipadamente. O
planejamento detalhado das tarefas a serem executadas em um sistema de produo
necessrio para manter a eficincia e o controle das operaes. A programao um
importante processo de tomada de deciso existente na maioria dos sistemas de
manufatura e produo, em ambientes de processamento de informaes, de transporte e
distribuio e outros tipos de indstrias de servios. A programao da produo tem
diferentes focos, desde o ponto de vista tcnico at o da implementao. Na academia,
os trabalhos cientficos do destaque para problemas de programao so semelhantes
aos modelos de otimizao combinatria e modelagem estocstica. As dificuldades que
ocorrem durante a implementao na indstria, contudo, so de um tipo diferente e
esto relacionados com a modelagem dos problemas de programao do mundo real e
recuperao da informao (PINEDO, 2008).
De fato, a programao da produo tem sido objeto de estudo altamente
explorado pelas comunidades acadmicas nas ltimas dcadas. Trata-se de uma das

24
reas com mais publicaes em conferncias e revistas especializadas. No entanto,
tambm uma das reas onde h uma enorme distncia entre a teoria e o que se consegue
aplicar na prtica industrial. Embora considerada relativamente simples em termos de
formulao e visualizao do que requerido, esta classe de problemas apresenta alto
grau de dificuldade para obter solues timas at mesmo nas situaes mais comuns. A
maioria dos problemas reais de programao da produo por natureza muito
complexa e de difcil resoluo, em termos da soluo tima. Tal constatao no
implica dizer que os problemas de programao da produo do cotidiano das empresas
no sejam resolvidos. O que se quer dizer que as solues encontradas por elas no
so as solues timas, mas sim solues semi-timas que resolvem os problemas com
a mxima eficincia possvel.
Existem duas maneiras de descrever os problemas de programao. Conway et al.
(1967) introduziram uma notao de parmetros A/B/C/D, em que A representa o
nmero de tarefas, B o nmero de mquinas, C o ambiente da mquina, e D a funo
objetivo. Graham et al. (1979) introduziram uma notao de trs parmetros //,
amplamente utilizada na literatura atual. O campo descreve o ambiente da mquina e
contm uma nica entrada. O campo fornece detalhes das caractersticas de
processamento e as restries, e pode no conter entradas, uma entrada nica, ou
mltiplas entradas. O campo contm o objetivo a ser minimizado e, geralmente,
contm uma nica entrada.
Existem cinco principais categorias de ambiente de mquina em problemas de
programao: mquina nica, mquinas paralelas, flowshop, jobshop e openshop.
Alguns deles podem ser quebrados em subcategorias. O caso de uma nica mquina
apresentado no campo =1 e o mais simples de todos os ambientes de mquinas
possvel. Pm descreve o ambiente de m mquinas idnticas paralelas. A tarefa j requer
uma nica operao e pode ser processada em qualquer uma das m mquinas ou em
qualquer uma pertencente a um dado subconjunto. Qm descreve o ambiente de
mquinas paralelas uniformes, em que m mquinas em paralelo possuem velocidades
diferentes, mas a relao de velocidade conhecida. O ambiente de mquinas paralelas
generalizado usando as letras Rm para representar mquinas paralelas no
relacionadas, no qual as velocidades das mquinas so diferentes e a relao das
velocidades so desconhecidas.
Os exemplos de possveis dados de entrada no campo so: data de liberao (rj),
os tempos de set up dependentes da seqncia (sjk), interrupes (prmp), restries de

25
precedncia (prec), avarias (brkdwn), restries de elegibilidade de mquina (Mj),
permutaes (prmu), bloqueio (block), sem-espera (nwt) e recirculao (recrc).
Exemplos de possveis dados de entrada no campo so: data de trmino (Cij),
tempo de fluxo (Fj), atraso da tarefa (Lj), tempo de atraso da tarefa (Tj), makespan o
tempo para completar todas as tarefas (Cmax), atraso mximo (Lmax), atraso ponderado
(

), tempo de trmino total ponderado (

tarefas atrasadas (

), nmero ponderado de

), etc. O objetivo determinado pela exigncia da operao

e gesto.
O ambiente Fluxoshop (Fm) descreve o ambiente em que m mquinas esto em
srie. Cada tarefa tem que ser processada em cada uma das m mquinas. Todas as
tarefas tm as mesmas sequncias. Aps a concluso em uma mquina, uma tarefa
precisa esperar na fila caso a prxima mquina esteja ocupada. Se todas as filas so
assumidas para operar sob o regime first in first out (FIFO), o flowshop conhecido
como Flowshop permutacional. O Flowshop flexvel uma generalizao do ambiente
de flowshop e de mquinas paralelas, e denotado por FFs.
2.3 O AMBIENTE FLOWSHOP PERMUTACIONAL
Em muitas linhas de fabricao e montagem, vrias operaes necessitam ser
realizadas em todas as tarefas. Muitas vezes, essas operaes tm de ser realizadas em
todas as tarefas na mesma ordem, o que implica que essas tarefas devem seguir a mesma
sequncia. Assume-se que as mquinas esto instaladas em srie e o ambiente referido
o flowshop. Em um problema de programao flowshop permutacional, h um conjunto
de n tarefas para serem processadas em um conjunto de m mquinas, o ambiente
assumido dispes de m mquinas instaladas em srie e cada tarefa processada
exatamente na mesma ordem. O objetivo encontrar uma sequncia, entre as n!
possveis, para o processamento das tarefas nas mquinas, de modo que alguma funoobjetivo previamente estabelecida seja minimizada. Neste trabalho, o objetivo a
minimizao do tempo total da programao ou makespan, que o critrio mais comum
citado na literatura (RUIZ e MAROTO, 2005).
Os tempos de processamento necessrios para as tarefas nas mquinas so
representados por tij, onde i = 1, ... n, e j = 1, ..., m. Os tempos de processamento so
fixos, conhecidos previamente, e no negativos. Baker (1974) lista vrias premissas que
so comumente feitas sobre esse problema:

26

Cada tarefa i pode ser processada no mximo em uma mquina j por vez;

Cada mquina m pode processar apenas uma tarefa i por vez;

Aps o incio da operao, no so permitidas as interrupes;

Cada operao tem no mximo uma precedente e uma sucessora, isto , possuem
fluxo unidirecional;

os tempos de set-up so insignificantes e portanto podem ser ignorados;

as mquinas esto continuamente disponveis;

estoque em processo permitido, entre outros.

2.4 TIPOS DE MODELOS PARA FLOWSHOP


2.4.1

Algoritmo Exato

As primeiras pesquisas sobre flowshop eram extremamente tericas. A maioria


dos pesquisadores considerava as abordagens de programao matemtica para os
problemas de programao flowshop, tais como a programao linear inteira (MANNE,
1960). Solues branch and bound (LOMNICK 1965; MCMAHON E BURTON,
1967) foram desenvolvidas na dcada de 1960 para obter solues timas. Entretanto,
estas tcnicas funcionam bem apenas em casos de pequenas dimenses. medida que o
tamanho do problema aumenta, elas se tornam ineficientes.
Johnson (1954), por exemplo, props um algoritmo de otimizao para o
problema de flowshop com duas mquinas e tarefas, e mostrou que a mesma
permutao de tarefas pode ser aplicada em ambas as mquinas. Seu mtodo provou ser
ideal quando o nmero de mquinas igual a dois ou trs, sob determinadas condies,
mas ele se torna ineficiente quando o nmero de mquinas superior a trs (JOHNSON,
1954).
2.4.2

Heursticas

Uma heurstica um procedimento desenvolvido atravs de um modelo cognitivo,


usualmente atravs de regras baseadas na experincia dos desenvolvedores. Ao
contrrio dos mtodos exatos, que buscam encontrar uma forma algortmica de achar
uma soluo tima atravs da combinao ou busca de todas as solues possveis, as
heursticas normalmente tendem a apresentar um certo grau de conhecimento acerca do

27
comportamento do problema, gerando um nmero muito menor de solues. Diante da
dificuldade em encontrar uma soluo tima para o problema de flowshop, mtodos
heursticos englobam estratgias, procedimentos e mtodos aproximativos com o
objetivo de encontrar uma boa soluo, mesmo que no seja a ideal, em um tempo
computacional razovel (FERNANDES; FILHO, 2010).
Quanto forma de obteno da soluo, a literatura classifica os mtodos
heursticos em construtivos e melhorativos.
Os mtodos construtivos consistem em construir a soluo de um problema a
partir do zero, de forma incremental, e que ser o resultado final do problema
(PALMER, 1965; CAMPBELL et al., 1970; DANNENBRING, 1977; KOULAMAS,
1998; DAVOUD POUR, 2001; NAGANO e MOCCELLIN, 2002; KALCZYNSKI e
KAMBUROWSKI, 2007; DONG; HUANG e CHENG, 2008; KALCZYNSKI e
KAMBUROWSKI, 2008; RAD; RUIZ e BOROOJERDIAN, 2009).

Este tipo de

mtodo gera uma soluo factvel para o problema das seguintes maneiras:

A partir de gerao sucessiva de sequncias parciais das tarefas (subseqncias)


at a obteno de uma sequncia completa, respeitando algum critrio para
realizar a insero das tarefas, como citam Nagano e Moccellin (2002);
Kalczynski e Kamburowski (2007); Dong; Huang e Chen (2008); Rad; Ruiz e
Boroojerdian (2009);

A partir da ordenao das tarefas segundo ndices de prioridade calculados em


funo dos tempos de processamento das tarefas, por exemplo, atravs da
heurstica de Palmer (1965);

Ou ainda, dado um conjunto de sequncia, escolhe-se a melhor sequncia


utilizando-se tambm ndices de prioridades associados a cada tarefa, como
citado atravs de Campbell, Dudek e Smith (1970) e Hundal e Rajgopal (1988).

Heursticas melhorativas partem de uma soluo factvel e procuram uma soluo


melhor dentro de uma vizinhana, definida geralmente por meio de permutaes de
posies das tarefas na sequncia. Uma heurstica clssica melhorativa pra quando no
existe nenhum vizinho melhor que a soluo corrente (timo local), dado uma medida
de desempenho adotada. Dannenbring (1977) props duas heursticas melhorativas
simples, o Rapid Acess com Close Order Search (RACS) e Rapid Access com Extensive
Search (RAES), que comeam a partir de uma soluo de programao construda pela

28
Rapid Access (RA). Rad, Ruiz e Boroojerdian (2009) modificaram a heurstica NEH ao
adicionar a abordagem da busca local aps o procedimento principal. Pode-se citar
ainda Taillard (1990); Widmer e Hertz (1991) e Nowicki e Smutnicki (1996). Rajedran
e Ziegler (2004) apresentaram dois novos mtodos baseados no ant-colony optimization
(ACO). Estas heursticas melhorativas utilizam tcnicas de busca local para melhorar a
qualidade da soluo gerada.
Apesar da vasta gama de estudos na rea de programao da produo em
ambiente flowshop, muitos dos mtodos desenvolvidos so considerados complexos e
requerem grande esforo computacional. Portanto, a busca de mtodos heursticos mais
simples, eficazes e de mais fcil implementao ainda permanecem como objetos de
estudos visando melhoria contnua no ambiente produtivo.
2.5 HEURSTICAS CONSTRUTIVAS
A seguir so apresentadas as principais heursticas construtivas que tratam dos
problemas de flowshop permutacional com critrio de minimizao da durao total da
programao (makespan). Para tal, adotaremos as seguintes notaes:
Seja J={J1, J2, J3, ..., Jj, ..., Jn} um conjunto de n tarefas a serem processadas em
m mquinas distintas na mesma seqncia de processamento.
pij o tempo de processamento de tarefa Jj na mquina i, isto pij (i=1, 2, 3, ...,
m; j=1, 2, 3... n). Vale lembrar que mesmo que todas as tarefas obedecem
mesma seqncia, uma determinada tarefa x pode no ser processada em uma
determinada mquina y, e portanto, pyx=0.
Para problemas de n tarefas que sejam processadas em apenas 2 mquinas,
Johnson (1954) desenvolveu um algoritmo que fornece a soluo tima de
sequenciamento em ambientes flowshop com objetivo de minimizao do makespan.
Para problemas com n tarefas e m mquinas, encontrar uma soluo tima dentro de um
tempo computacional finito ainda no foi possvel. Isto se deve ao fato de que a funo
de complexidade do tempo computacional de problemas de flowtime de natureza
exponencial. E ento para estes casos que se faz necessrio o uso de heursticas para a
resoluo destes problemas com objetivo de alcanar solues boas com esforo
computacional aceitvel.
Campbell, Dudek, e Smith (1970) desenvolveram uma heurstica que conhecida

29
como CDS. Trata-se de uma heurstica multi-estgio que constri m-1 sequncias,
agrupa as m mquinas originais em duas mquinas artificiais e resolve o problema
gerado de duas mquinas utilizando repetidamente a regra de Johnson. Os tempos de
processamento da tarefa j na mquina i (i=1 ou 2) so gerados iterativamente a partir
dos tempos de processamentos originais nos m-1 estgios.
No estgio 1:
e

Em outras palavras, a Regra de Johnson aplicada considerando apenas a


primeira e a ltima mquinas, e as mquinas intermedirias so inicialmente ignoradas.
No estgio 2:
e

Ou seja, a Regra de Johnson aplicada soma dos tempos de processamento da


primeira com a segunda mquinas e da penltima com a ltima mquinas. Para o
estgio t=m-1, os tempos de processamento das mquinas artificiais 1 e 2 sero dadas
por:
Estgio t:

Para cada estgio t (t = 1, 2, ..., m-1), obtm-se uma sequncia de tarefas por meio
da regra de Johnson. Com esta sequncia, calcula-se o makespan com os tempos de
processamento do problema original. Aps m-1 estgios, a sequncia que fornecer o
menor makespan escolhida como a melhor soluo para o problema.
Palmer (1965) desenvolveu uma heurstica que atribui um ndice para cada tarefa,
o chamado slope index, e em seguida, organiza a sequncia de acordo com o ndice
atribudo a cada tarefa. Este ndice calculado de modo a organizar as tarefas em ordem
no-crescente de seus tempos de processamento. As tarefas que possuem maiores

30
tempos de processamento recebem maiores ndices, e ento, cada tarefa organizada de
modo que aquelas com os maiores slope ndex (Sj) ocupam as primeiras posies na
sequncia de execuo. Tal ndice Sj para a tarefa Jj dado por:
(

Gupta props uma modificao do slope index de Palmer que explorava algumas
semelhanas entre os problemas de programao e triagem (Gupta, 1971). Na verdade,
Gupta reconheceu que o algoritmo de Johnson na verdade um mtodo de ordenao de
tarefas em problemas com 2 ou 3 mquinas, a partir da atribuio de um ndice para
cada tarefa, seqenciando-as de acordo com a ordem crescente de tais ndices. Gupta
ento generalizou o problema mas caso em que m>= 4 mquinas.

A seguir

apresentado a forma como Gupta determina os ndices pra a tarefa Jj.

()

onde:
{

Hundal e Rajgopal (1988) desenvolveram uma extenso da heurstica de Palmer,


uma vez que a Heurstica de Palmer no considera a mquina (m+1)/2 quando m
impar. Este fato pode afetar a qualidade da soluo. Desta forma, Hundal e Rajgopal
propuseram outros dois mtodos para o clculo dos ndices:

A partir dos ndices obtidos por este mtodo, duas novas sequencias podem ser
encontradas. Seleciona-se a sequencia que apresentar o menor makespan.

31
Moccellin (1995) props uma heurstica denominada FSHOPH (flowshop
heuristic), semelhante heurstica SPIRIT proposta por Widmer e Hertz (1991). A
heurstica FSHOPH baseia-se no problema do Caixeiro Viajante, porm o conceito de
distncia percorrida entre duas tarefas muito diferente nesta heurstica se comparado
SPIRIT.
O clculo da durao total da programao no problema de Programao de
Operaes Flowshop Permutacional de uma sequncia S com n tarefas e m mquinas
dada por
( )

Onde:

: tempo de processamento da j-sima tarefa na ltima mquina da sequncia


S.

: tempo transcorrido entre o trmino da tarefa que ocupa j-sima posio na


sequncia S e o incio da (j+1)-sima tarefa, na ltima mquina.

, representa uma tarefa fictcia, com tempo de processamento nulo e que


ocupa sempre a primeira posio entre as tarefas da sequncia S.
como a distncia entre as j-sima e a (j+1)-sima

Se considerarmos

posies de S, ento o problema de flowshop permutacional passar a ser tratado como


um tpico problema do Caixeiro Viajante. A sequncia Sx que minimiza o makespan
M(S) dado pela rota mais curta que abrange todas a n tarefas.
Na heurstica FSHOPH, a distncia entre duas tarefas baseada em uma
propriedade apresentada por Moccellin (1993) que ocorre em problemas de flowshop
permutacional:

Considere duas tarefas arbitrrias u e v em um conjunto de n tarefas. Para cada


sequncia S com as tarefa u e v posicionados respectivamente nas posies j e
(j+1), j=0, 1, 2, ..., n-1, tem-se que:
[

)]

32
Onde:

um limitante superior de

(que o intervalo de tempo de espera da

mquina h que ocorre entre o trmino da tarefa u e o incio da tarefa v).

= tempo de processamento da tarefa i na mquina h.

A partir dessa propriedade, tem-se:


Para uma sequncia S de n tarefas, o limitante superior para a durao total da
programao M(S) dada por:

( )

Se considerarmos

[ ][

como a distncia entre as tarefas nas posies j e

(j+1), ento o problema de programao em flowshop permutacional pode ser


heuristicamente resolvido por analogia direta com o problema do caixeiro viajante
(Moccellin, 1995). No primeiro passo da heurstica FSHOPH, a distncia entre as
tarefas u e v dada por
limitante superior

e procurado a rota (sequncia) que minimize o

( ). Para o segundo passo, utiliza-se tcnicas de busca Tabu

para melhorar a soluo inicial.

Dannenbring apresentou a heurstica Rapid Acess (RA), que uma mistura das
idias prvias do ndice de Palmer e CDS (Dannenbring 1977). A principal idia por
trs construir um nico subproblema de duas mquinas (ao invs de m-1
subproblemas), onde os tempos de processamento de cada tarefa so determinados pelo
esquema de ponderao linear. Este subproblema resolvido usando o algoritmo de
Johnson para duas mquinas. O procedimento de RA fornece uma boa soluo de
maneira rpida. Os pesos para as tarefas so calculados por:

( )

O desenvolvimento de heursticas construtivas para os problemas de flowshop


permutacional ocorreu principalmente nas dcadas de 1960 e 1970, e proporcionou boas

33
solues dentro de tempos de processamento razoveis. No entanto, a qualidade das
solues ainda possui muitas oportunidades a serem melhoradas.
Sarin e Lefoka (1993) exploraram a ideia de minimizar o tempo ocioso da ltima
mquina, pois o aumento do tempo ocioso da ltima mquina se traduzir em um
aumento no tempo de concluso total ou makespan. Portanto, a sequncia completada
inserindo-se uma tarefa de cada vez, e dada prioridade ao trabalho que resulta na
mnima adio de tempo ocioso na mquina m.
Nawaz, Enscore, e Ham (1983) desenvolveram uma heurstica construtiva
denominada NEH, que compreende duas fases simples, baseado na ideia de priorizar as
tarefas em funo da soma de seus tempos de processamento em todas as m mquinas.
A heurstica NEH classificada como uma heurstica construtiva, ao passo que exige n
iterao do procedimento, que tem (n2m) clculos possveis, de acordo com Ruiz e
Maroto (2006).
Devido ao bom desempenho da heurstica NEH original, pesquisadores
enfatizaram o aprimoramento do NEH para diferentes abordagens. As principais
direes das pesquisas para a modificao do NEH na literatura de programao da
produo so baseadas em quatro categorias principais, descritas a seguir:
O objeto da primeira categoria estudar o efeito da sequncia inicial na fase I, na
abordagem do NEH para o seu desempenho (NEH original). Framinan et al. (2003)
analisaram 177 diferentes sequncias iniciais, verificando mudanas nas fases iniciais
(fase de indexao) do NEH, a qual os cinco melhores mtodos para as funes objetivo
de minimizao de makespan, tempo ocioso de mquina (idletime) e tempo total de
fluxo (flowtime). Foi calculado a porcentagem de desvio relativo, e os resultados
mostraram que a sequncia do NEH original teve o melhor desempenho para as funes
objetivo de minimizao do makespan e tempo ocioso.
Nagano e Moccellin (2002) desenvolveram uma heurstica construtiva
denominada N&M, onde esta se difere da heurstica NEH (1983) apenas na fase inicial
de ordenao. Este processo quebrado em duas etapas:

Etapa 1: Calcular

Onde:

34
= tempo de processamento da tarefa i na mquina k;
n = nmero de tarefas;
m = nmero de mquinas
( (

))

sendo,

A tarefa u imediatamente precedente de v.

Etapa 2: Ordenar todos o Ii de forma no-crescente e prosseguir os prximos


passos identicamente ao mtodo NEH.

A segunda categoria foca o desempate na fase de insero do NEH original, pois


podem existir vrias seqncias parciais que tm o mesmo makespan parcial nesta
abordagem. A seleo aleatria pode causar maiores makespan total na prxima etapa.
Kalczynski e Kamburowski (2007) mediram o desempenho do NEH com uma
modificao da etapa de insero para demonstrar o impacto sobre o desempenho no
tempo de desempate. Eles criaram uma heurstica denominada NEHKK, em que h uma
modificao no processo de construo da sequncia soluo do NEH. Quando ocorre
empates nas sequncias parciais, h uma avaliao levando em considerao a regra de
Johnson. A seguir apresentado as fases de construo da heurstica NEHKK:
Etapa 1: Calcule

J, e organize na ordem no-crescente;

Etapa 2: Considere apenas as duas primeiras tarefas da seqncia obtida na etapa


1 e ordene-as de maneira a obter o menor makespan e faa

[ ]

[ ])

Etapa 3:Selecione a prxima tarefa r da ordenao inicial TPj e insira na primeira


posio da sequncia parcial. Assuma a sequncia inicial

[ ]

[ ]

[ ])

e faa lx 1.
Para l de 2 at n, faa:
Teste a tarefa r na posio l de

e siga o seguinte critrio:

SE o makespan da sequncia

for menor que o makespan da sequncia

OU SE: {o makespan da sequncia


E: {o makespan da sequncia (

for igual ao makespan da sequncia


)

for menor que o makespan da

35
)}

sequncia (
Ento faa: lx 1 e

Uma abordagem de modificao da fase I do NEH original, proposto por Dong et


al (2008) e denominado NEH-D, mostrou uma melhoria significativa ao criar uma regra
de prioridade baseado na combinao linear da mdia (AVGj) e do desvio padro (DEVj)
dos tempos de processamento das tarefas, dado por:
(

[(

) ]

) ]

Desta forma, cada tarefa recebe um valor do esquema de ponderao dado pela
(

combinao linear

. Em seguida, essas tarefas so

colocadas em ordem no-crescente de acordo com esta regra de prioridade,


caracterizando ento a Fase I do NEH. Dong, Huang e Chen elaboraram ainda uma
estratgia para o caso em que houver empate entre estes pesos dados s tarefas. A
seguir, uma breve explanao sobre a metodologia:
Seja ( ) a tarefa da posio x de uma permutao
processamento de tarefa ( ) na mquina i,
( ) na mquina i,

( )

( )

Logo

( )

o tempo de

a primeira data de trmino da tarefa

a ltima da de incio da tarefa ( ) na mquina i. Com isso,

duas medidas podem ser calculadas para a tarefa ( ):


( )

( )

( )

( )
(

( ))

Para o caso em que houver empate, o desempate ocorre inserindo a tarefa na

36
posio x com o menor

( ).

A terceira categoria na literatura de pesquisas que modificam a heurstica NEH


utiliza etapas adicionais para reinserir tarefas em posies vizinhas, a fim de melhor
acomodar a nova tarefa. Rad et al. (2009) propuseram cinco novos mtodos que
superam o NEH denominados FRB1, FRB2, FRB3, FRB4 e a meta-heurstica FRB5.
Dentre os algoritmos construtivos, FRB3 e FRB4 foram as heursticas com os melhores
desempenho, e por tanto, a seguir eles sero detalhados. Mtodo FRB3:
Etapa 1: Calcule
e

e coloque em ordem no-crescente de TPj

Etapa 2: Para l= 1 at n, testar a tarefa h, na posio l de TPj, em todas as


possveis posies de

e inserir a tarefa na posio de menor makespan.

Etapa 2.1: Para i=1 ate l, retire a tarefa h da posio i de

e teste h em todas as

posies possveis de , e inserir a tarefa na posio de menor makespan.

Para o mtodo FRB4, a nica mudana em relao ao FRB3 est no modo como
feito o processo de busca na Etapa 2.1. O FRB3 realiza a busca em l possveis solues,
enquanto que o FRB4 busca em um intervalo definido entre o mximo de l e p k e o
mnimo de l e p+k, onde p a posio em que a tarefa foi inserida no passo 2 e k um
valor pr-definido para mtodo e varia entre {2, 4, 6, 8, 10, 12}. O mtodo FRB4
apresentado a seguir:

Etapa 1: Calcule
e

e coloque em ordem no-crescente de TPj

Etapa 2: Para l= 1 at n, testar a tarefa h, na posio l de TPj, em todas as


possveis posies de

e inserir a tarefa na posio de menor makespan.

Etapa 2.1: Para i=Max (i, p-k) at Mn (l, p+k), retire a tarefa h da posio i de
e teste a em todas as posies possveis de

, e inserir a tarefa na posio de

menor makespan.

A ltima categoria abrange alguns outros pesquisadores que trabalham para


reduzir o tempo de processamento do NEH, enquanto que a qualidade da soluo no
um requisito que necessite de cuidados, se comparado com o NEH original. Jin et al.

37
(2007) introduziram o procedimento de poda baseado nas propriedades de bloco dos
problemas de programao flowshop, que investigado para reduzir o tempo de
execuo, e dentro da heurstica NEH, para reduzir a complexidade computacional. Os
resultados experimentais mostraram que o NEH aperfeioado apresenta uma grande
reduo do tempo de execuo quando comparado com o NEH original. Gao et al.
(2007) propuseram o NEH melhorado, com completos movimentos de inseres para
resolver o problema de flowshop permutacional. Mtodo para o rpido clculo do
makespan e a poltica de eliminao de permutaes no-promissoras so introduzidos
para reduzir o esforo da avaliao.

38
3 CLASSIFICAES

EXISTENTES
FLOWSHOP PERMUTACIONAL

DE

HEURSTICAS

DE

Framinan, Gupta e Leisten (2004) desenvolveram um trabalho onde, alm de


demonstrar as principais heursticas disponveis na literatura para o problema de
minimizao do makespan, estabelecem um quadro geral que engloba todas elas,
classificando-as em fases de construo comuns. Nos trabalhos prvios de classificao,
considerando que nem todas as heursticas disponveis so da mesma natureza, o termo
heurstica construtiva foi utilizado para um primeira delimitao. Entretanto, esta se
trata de uma classificao superficial e de escopo limitado, segundo Framinan, Gupta e
Leisten (2004), e o significado do termo construtivo permanece confuso (e
consequentemente, o mesmo se aplica s heursticas assim classificadas). Por exemplo,
Pinedo (2008) definiu heurstica construtiva como o oposto heurstica composta, que
so aquelas resultantes da combinao de heursticas simples (construtivas). J
Loureno (1996) definiu heurstica construtiva como um algoritmo que constri
sequncias de tarefas e, uma vez que a deciso tomada, no se deve alter-la.
Alm disso, existiram outras tentativas de classificar as heursticas existentes para
a programao em ambientes flowshop, tal como proposto por Gupta (1971). Segundo
ele, as heursticas so classificadas em trs classes: heursticas funcionais fixas,
heursticas funcionais flutuantes e heursticas funcionais sintticas. A primeira classe
engloba as heursticas que exploram as caractersticas funcionais de um problema de
classificao. Basicamente, consiste no desenvolvimento de alguns ndices para
classificar as tarefas, podendo estes ndices serem baseados nos tempos de
processamento do problema, por exemplo. Gupta inclui nesta classificao heursticas
como as de Palmer (1965), Campbel et al (1970), e Gupta (1971). Heursticas
funcionais flutuantes, por sua vez, geram uma funo contnua para uma sequncia
parcial. Como exemplo o autor cita os algoritmos MINIT e MINOT de Gupta (1968;
1972). E por fim, como exemplo de uma heurstica funcional sinttica, pode-se citar a
heurstica MINMAX de Gupta (1972), baseado na programao de tarefas, ordenando
primeiro as tarefas com os menores tempos de processamento, e por ltimos, aquelas
com os maiores tempos.
No entanto, de acordo com Framinan, Gupta e Leisten (2004), todas as
classificaes citadas apresentam problemas. Na classificao de Pinedo (2008), seria
difcil classificar algumas heursticas que fossem tratadas tanto como heursticas

39
simples quanto como uma forma de generalizao de uma heurstica mais simples. Por
exemplo, a heurstica de Campbell et al (1970) pode ser considerada uma forma
generalizada da heurstica de agregao de mquinas de Rck e Schmidt (1983). Na
classificao sugerida por Loureno (1996), vrias heursticas de diferentes naturezas,
tais como Nawaz et al (1983) e Gupta (1971), poderiam ser agrupadas dentro do termo
heurstica construtiva. Porm na prtica, esta ltima heurstica seria considerada como
um ponto inicial para formar a soluo final. Com relao classificao de Gupta, de
um lado ela no cobre os desenvolvimentos de heursticas recentes tais como a de Page
(1961), que se baseia em buscas locais. De outro lado, desenvolvimentos relativamente
novos tais como as meta-heursticas no se encaixam nesta classificao por razes
bvias. Por fim, outros trabalhos como os de Morton e Pentico (1993), simplesmente
distinguem entre heursticas e mtodos de busca local, sem fazer a relao entre eles.
3.1 CLASSIFICAO PROPOSTA POR FRAMINAN, GUPTA E LEISTEN
Dando continuidade a estes estudos, Framinan, Gupta e Leisten (2004)
desenvolvem um quadro geral para estender classificaes anteriores de modo a
abranger todas as principais heursticas.
No quadro geral proposto, o desenvolvimento de uma heurstica consiste em trs
fases:

Fase 1: desenvolvimento do ndice

Fase 2: construo da soluo

Fase 3: melhoramento da soluo.


Uma heurstica simples pode se consistir de uma ou mais destas fases, que em

geral so independentes uma da outra. Entretanto, uma heurstica que consista em mais
de uma destas fases deve ocorrer na ordem acima mencionada. As trs fases sero
explicadas com mais detalhes a seguir.

3.1.1

Fase I: Desenvolvimento do ndice

Na fase de desenvolvimento do ndice, as tarefas so organizadas de acordo com


uma certa propriedade baseada nos dados de um problema, por exemplo, os do tipo
Fm/prmu/Cmax, isto , baseados nos tempos de processamento de cada tarefa em cada
mquina. Em geral, este procedimento no necessita fazer nenhuma suposio durante o

40
sequenciamento das tarefas. O resultado desta fase a lista seqenciada das tarefas para
serem inseridas para a prxima fase, ou soluo.
Para derivar o ndice, podemos usar ou no um problema anlogo. Problema
anlogo refere-se ao uso de dados de problemas do tipo Fm/prmu/Cmax para construir e
resolver um caso de diferentes classes de problemas. Quando o ltimo problema tiver
sido resolvido por determinados meios, a soluo obtida convertida em uma sequncia
de tarefas para o problema original Fm/prmu/Cmax. Talvez o exemplo mais bvio de um
problema anlogo seja a analogia F2//Cmax, empregada em heursticas como a de
Campbell et al (1970). Nesta heurstica, um problema F2//Cmax construdo por
agregao de mquinas a partir de dados oriundos do problema Fm/prmu/Cmax original a
ser resolvido. O problema F2//Cmax ento obtido resolvido de forma tima em tempo
polinomial aplicando a regra de Johnson, e a sua soluo tima aceita como uma
soluo para o problema original Fm/prmu/Cmax.
Se nenhuma analogia for usada, a propriedade deve ser simplesmente deduzida a
partir de alguma forma de relacionamento assumido, que envolva o tempo de
processamento das tarefas e suas posies correspondentes dentro da sequncia.
Nos casos onde alguns problemas anlogos precisam ser empregados, as duas
questes seguintes devem ser consideradas:
a) A simplicidade dos problemas anlogos empregados, isto , se existem mtodos
polinomiais disponveis para resolver otimamente o problema anlogo, ou ao
menos alguma heurstica eficiente para este ltimo;
b) A correspondncia entre solues dos problemas de analogia e dos problemas
Fm/prmu/Cmax, isto , se possvel provar que as solues boas ou timas
provenientes do problema anlogo rendem boas (ou timas) solues para o
problema original.
Trs problemas anlogos tm sido usados at agora para derivar uma ordenao
das tarefas: F2//Cmax, o Problema do Caixeiro Viajante (PCV) e a analogia da Soma de
Vetores, explicados a seguir.

Analogia F2//Cmax
Como mencionado antes, a analogia mais clara e a mais utilizada a analogia com
o problema F2//Cmax via agregao de mquinas. A agregao de mquinas refere-se a
uma simplificao do problema original em relao s mquinas. Como resultado, o
problema original convertido em um novo problema denominado Aggregated

41
Problem Instance , com um nmero de mquinas fictcias denominadas m menor
que o problema original. Mais especificamente, um problema com n tarefas, m
mquinas transformado em um problema com n tarefas, m mquinas, sendo m < m.
Com relao s duas questes acima sobre as analogias mencionadas na seo
anterior (simplicidade e correspondncia), o primeiro alcanado fixando m = 2, desde
que seja possvel resolver o problema F2//Cmax otimamente em tempo polinomial, de
acordo com a regra de Johnson. Portanto, embora m possa valer teoricamente
qualquer valor m < m, m fixado a 2 em todas as heursticas existentes que utilizem o
procedimento de agregao de mquinas. Por outro lado, o caso de agregao de
mquinas com m > 2 implica na resoluo de um problema cuja complexidade
idntica quela do problema original. Desta forma, no vivel desenvolver uma
heurstica de agregao de mquinas com m > 2, a menos que abordagens heursticas
especficas sejam desenvolvidas para um determinado caso Fm//Cmax, sendo 2 < m < m,
ou exista uma heurstica que apresente um desempenho extraordinariamente melhor
para um determinado m > m. Finalmente, perceba que para m < 2, isto , m = 1,
qualquer sequenciamento timo, logo no parece ser possvel converter a soluo do
problema agregado correspondente em uma soluo que faa sentido para o problema
original.
Com relao correspondncia entre solues, nenhuma prova formal foi
desenvolvida at o momento. Desde que os tempos de processamento do caso sejam
envolvidos, a correspondncia ser dependente do caso e, portanto, boas abordagens
para a agregao podem ser distinguidas de abordagens ruins apenas com base
estatstica, isto , o percentual de problemas em que uma certa abordagem para designar
tempos de processamento que produza casos agregados cuja soluo tima representa
uma boa soluo para o problema original. As principais abordagens para designar
tempos de processamento para duas mquinas referem-se a Campbell et al (1970),
Dannenbring (1977), Rck e Schmidt (1983), Selim e Al-Turki (1987), e Lai (1996).
Todas essas abordagens resolvem otimamente o problema F2//Cmax (pela regra de
Johnson) e usam essa soluo como soluo para o problema Fm/prmu/Cmax, com
exceo da heurstica de Lai, que simplesmente classifica uma tarefa j em um dos dois
grupos seguintes: U:{j:p1j p2j}, V:{j:p1j > p2j}, como na regra de Johnson.
Entretanto, as tarefas em cada grupo no so classificadas mas sim sequenciadas
arbitrariamente, e unidas com a nica condio de que as tarefas em U devam preceder
as tarefas em V. Esse procedimento permite que a heurstica seja muito rpida,

42
apresentando uma anlise do pior caso no muito diferente de outros procedimentos de
agregao de mquinas. Porm, nenhum experimento computacional foi realizado para
testar a performance desta heurstica (FRAMINAN; GUPTA; LEISTEN, 2004).

Analogia PCV
A analogia do problema Fm/prmu/Cmax com o PCV foi apontada pela primeira vez
por Gupta (1968), e tem sido tambm estudada por Stinson e Smith (1982), Widmer e
Hertz (1991) e Moccellin (1995). Nestes trs artigos, a matriz de distncia que define o
caso PCV de n cidades montado utilizando o tempo de processamento das mquinas
(no caso do artigo de Stinson e Smith so apresentados mais de seis diferentes modos de
construo da matriz de distncias). Assim, o PCV resolvido, e a sua soluo
mantida como soluo para o problema original Fm/prmu/Cmax.
Considerando que o PCV seja do tipo NP-hard, no h mtodo disponvel que
garanta uma soluo tima dentro do intervalo de deciso (FRAMINAN; GUPTA;
LEISTEN, 2004).

Analogia da Soma de Vetores


O ento denominado Teorema da Soma de Vetores 43 pode ser enunciado da
seguinte forma: seja V = {v1,...,vn} um conjunto de d vetores dimensionais em que

||

, e seja possvel comput-lo em tempo polinomial uma permutao tal que


( ) ||

dmaxj = 1,...,n|| vj ||, k = 1,..., n.

Com relao s duas questes discutidas acima quando empregado um problema


anlogo (simplicidade e correspondncia), a analogia empregada pode ser resolvida
utilizando um algoritmo de tempo polinomial baseado em programao linear
(LAWLER et al, 1993).

3.1.2

Fase II: construo da soluo

Nesta fase, uma soluo construda de forma recursiva ao tentar inserir uma ou
mais tarefas no sequenciadas em uma ou mais posies de uma sequncia parcial, at
que todo o sequenciamento esteja completo. Portanto, esta fase consiste de uma srie
limitada de tentativas (loops). Em cada loop k, o conjunto de tarefas dividido em dois
subconjuntos: o subconjunto Sk de tarefas j sequenciadas e o subconjunto Rk de tarefas

43
no-sequenciadas. Perceba que no k-simo loop, o subconjunto Sk define uma sequncia
parcial de k tarefas. Em cada loop, uma tarefa removida do subconjunto nosequenciado e inserida no subconjunto de tarefas j sequenciadas.
Nesta fase existem duas questes em qualquer loop k:
a) Seleo de tarefas, isto , definir qual tarefa j Rk ser inserida no
subconjunto Sk..
A seleo de tarefas deve ser decidida de acordo com uma das seguintes
abordagens:

De acordo com algum ndice obtido a partir de uma aplicao da fase I, ou

Vrias tarefas pertencentes a Rk so testadas. Neste caso, a seleo de tarefas a


serem inseridas feita de acordo com uma determinada medida de desempenho,
isto , visando minimizar alguma propriedade resultante da sequncia parcial.

A propriedade da sequncia parcial utilizada para a seleo de tarefas deve ser a


funo objetivo que visa a minimizao do makespan. O racional para usar esta medida
claro, desde que o makespan possa ser decomposto na soma dos tempos de
processamento de todas as tarefas em todas as mquinas mais a soma desses tempos
com os tempos de espera em cada mquina. Considerando que o primeiro termo da
expresso (tempos de processamento) constante, ao minimizar de alguma forma o
tempo ocioso leva-se a sequncias com menores makespans.

b) Insero da tarefa, isto , definir onde ser inserida a tarefa escolhida na


sequncia parcial Sk.
Com relao insero de tarefas, uma tarefa j pode ser inserida em uma posio
fixada na sequncia parcial Sk, ou inmeras posies podem ser testadas. King e Spachis
(1980) distinguem entre sequncias de cadeias simples e cadeias mltiplas,
dependendo se uma ou vrias posies so tentadas, respectivamente.
Novamente, quando diversas posies so testadas, a seleo da posio deve ser
feita de modo a minimizar alguma propriedade da sequncia parcial resultante. Desta
forma, quando vrias tarefas pertencentes a Rk precisam ser inseridas nas diversas
posies da sequncia parcial Sk, a qualidade das medidas de ambas as sequncias
precisa ser a mesma, ou ao menos consistentes entre si. Alm disso, para garantir uma
boa performance desta fase, a qualidade das medidas de ambas as sequncias parciais

44
devem coincidir ou pelo menos ser consistentes com a funo objetivo
(minimizao do makespan). Similarmente ao caso de seleo das tarefas, devero
existir algumas regras de desempate quando mltiplas posies so testadas.
Novamente, este aspecto ignorado pela maioria das heursticas existentes.
Percebe-se que as decises para a seleo e a insero de tarefas (caso sejam
tomadas) so tomadas usando informao parcial (local) e, portanto, apenas
melhoramentos locais podem ser obtidos. Logo, no se pode garantir que a sequncia
resultante fornea um makespan menor que a sequncia inicial desenvolvida na fase I,
ou at mesmo uma sequncia aleatria.

3.1.3

Fase III: melhoramento da soluo

Nesta fase, de acordo com Framinan, Gupta e Leisten (2004), uma soluo
existente melhorada por meio de alguns procedimentos. As duas principais
caractersticas desta fase so:

Uma soluo inicial (soluo de entrada) requerida;

A qualidade da soluo sempre igual ou melhor que a soluo da sequncia


inicial.

Partindo de uma soluo inicial, este procedimento procura mudar a sequncia de


tarefas para melhorar a soluo. Isto pode ser feito em uma base individual por
exemplo, duas tarefas possuem suas posies trocadas ou em uma base de grupos
por exemplo, so alternadas as posies de um conjunto de tarefas adjacentes. No
segundo caso, alguns procedimentos so desenvolvidos a fim de agrupar, e s vezes
reagrupar, um conjunto de tarefas.
Comumente, abordagens de melhoramentos so classificadas em buscas locais
descendentes e meta-heursticas (NOWICKI, 1996; STTZEL, 1998). Como exemplo
de heursticas que utilizam busca local descendente, cita-se Page (1961), e a fase final
da heurstica RAES de Dannenbring (1977), entre outros.
Alm da classificao em meta-heursticas e busca local descendente, para esta
ltima, h a necessidade de distino entre abordagens de vizinhana geral e vizinhana
especfica. As abordagens de vizinhana geral so aquelas em que a vizinhana pode ser
adequada para qualquer problema combinatrio, enquanto que abordagens de

45
vizinhana especficas so aquelas em que a definio de vizinhana considera algumas
caractersticas especficas para o problema Fm/prmu/Cmax.

3.1.4

Estratgias para cada fase de classificao das heursticas

O emprego da classificao elaborada por Framinan, Gupta e Leisten (2004)


fundamental para estabelecer um parmetro de comparao entre mtodos distintos, e
foi empregado em muitos trabalhos posteriores. Dentre estes, Framinan, Leisten e RuizUsano (2005) desenvolveram uma investigao do problema de trabalhos seqenciais
em flowshop permutacional, visando minimizar a soma dos tempos de concluso
flowtime. No trabalho, primeiramente foi feita uma classificao e comparao entre as
heursticas existentes. Em seguida, baseado nos resultados experimentais, os autores
sugeriram duas novas heursticas compostas para solucionar o problema, comprovando,
atravs de experimento computacional subsequente, que ambas so eficientes para o
problema considerado.
De acordo com Framinan, Leisten e Ruiz-Usano (2005), at o ano 2000, as
melhores heursticas construtivas disponveis para o problema de minimizao do
makespan eram as heursticas de de Rajendran e Ziegler (1997) e Woo e Yim (1998).
Mais recentemente, outras abordagens heursticas para o problema foram publicadas,
como a heurstica de Liu e Reeves (2001), o conjunto de heursticas compostas de
Allahverdi e Aldowaisan (2002), o trabalho de Framinan et al. (2003) na aplicao da
heurstica NEH para o problema F|prmu|Cj, e a heurstica de Framinan e Leisten
(2003). Algumas dessas heursticas so de naturezas distintas: de um lado, a heurstica
de Liu e Reeves consiste de uma primeira fase onde as tarefas so classificadas de
acordo com um ndice que considera o tempo ocioso, seguido de uma fase de
melhoramento local. Por outro lado, o conjunto de heursticas de Allahverdi e
Aldowaisan pode ser considerada como heursticas compostas (PINEDO, 2008), desde
que contenham uma ou mais (simples) heursticas. Mais especificamente, o conjunto de
heursticas de Allahverdi e Aldowaisan contm as heursticas de Woo e Yim, e de
Rajendran e Ziegler. Portanto, destaca-se a importncia de investigar se diferentes
combinaes de heursticas poderiam ser empregadas para a construo de novas
heursticas compostas, e se existem outros procedimentos de melhoramento local que
poderiam ser aplicados para otimizar sua performance.

46
Para este trabalho, a anlise concentra-se na primeira parte do estudo de
Framinan, Leisten e Ruiz-Usano (2005), onde so descritas determinadas estratgias
para determinao de heursticas simples. Para classificar as heursticas relevantes para
o problema considerado, segue-se o esquema em trs fases empregado por Framinan,
Gupta e Leisten (2004): desenvolvimento de ndices, construo da soluo, e
melhoramento da soluo. Cada heurstica pode usar uma mais ou mais dessas fases.
Como as estratgias descritas valem apenas para casos de heursticas simples,
importante destacar que Framinan, Leisten e Ruiz-Usano (2005) definem o termo
heurstica composta da seguinte maneira: uma heurstica considerada composta se
ela empregar outra heurstica para uma ou mais das trs fases j mencionadas.
Consequentemente, uma heurstica considerada como simples se ela no utilizar outra
heurstica em nenhuma das trs fases.
De acordo com a classificao apresentada, dentre as heursticas simples
mencionadas, existem diversas estratgias para a fase I (desenvolvimento do ndice).
So elas:

Soma decrescente dos tempos de processamento (para NEH-flowtime);

Soma decrescente das diferenas absolutas dos tempos de processamento de


uma tarefa em cada mquina com todas as outras tarefas (para NEH-A);

Soma ponderada decrescente dos tempos de processamento (para RZ);

Cinco diferentes ndices baseados em funes dependentes do tempo de


processamento para as tarefas (para B5FT, ver Framinan, Leisten, Rajendran;
2003 para mais detalhes);

Soma crescente dos tempos de processamento (para FL);

Uma funo de ndice baseada no tempo ocioso total ponderado da mquina e no


flowtime total artificial (para LR).

Com relao fase de construo da soluo, emprega-se as seguintes estratgias:

NEH-C: esta estratgia consiste na insero da k-sima tarefa da soluo inicial


em cada uma das k+1 posies possveis da melhor soluo parcial. Cada uma
das sequncias parciais obtidas avaliada, e a melhor sequncia parcial
mantida como a melhor soluo parcial. Este processo repetido at que toda a
sequncia seja construda;

47

RZ-C: esta estratgia consiste na insero de cada tarefa, proveniente da


soluo inicial, em cada uma das posies possveis.

FL-C: esta estratgica consiste na insero da k-sima tarefa da soluo inicial


em cada uma das k+1 possveis posies da melhor soluo parcial. Cada uma
das seqncias parciais at ento obtidas avaliada, e a melhor seqencia
parcial mantida como a melhor soluo parcial. A soluo parcial obtida
submetida a uma tentativa de melhoramento de troca em pares entre as
vizinhanas. Se uma soluo melhor for obtida, esta nova soluo mantida
como a melhor sequencia parcial. Este processo repetido at que toda a
programao seja construda.

WY: Como j mencionado anteriormente, esta estratgia pode ser considerada


como uma extenso da estratgia NEH, onde todas as (n-k) tarefas so testadas
em todas as k possveis posies. A sequencia parcial que render o menor
tempo de fluxo (flowtime) mantido como a melhor sequencia parcial para a
prxima iterao.

E por fim, em relao fase melhoramento da soluo, inmeras estratgias tm


sido adotadas:

FPE Forward Pairwise Exchange (LIU; REEVES, 2001): Esta estratgia


inicia-se a partir de uma sequencia inicial e ento, testa-se a troca de posio de
cada tarefa com uma quantidade definida de tarefas subsequentes. Para cada
tentativa, se a sequencia obtida for melhor, ento a troca de fato realizada.
Caso contrrio, as duas tarefas so mantidas em suas respectivas posies
originais. Aps todas as tentativas serem realizadas, o processo todo se repete a
partir da primeira tarefa da sequencia, e o procedimento continua at que no
seja possvel realizar mais nenhum melhoramento nas tentativas.

BPE Backward Pairwise Exchange (LIU; REEVES, 2001): Esta estratgia


semelhante a FPE, porm agora as trocas se realizam a partir da direita para a
esquerda.

FPE-R Forward Pairwise Exchange (restart): Esta estratgia utilizada em


[10] sob a denominao pairwise interchange. Trata-se de uma estratgia
idntica a FPE, porm quando a troca de posies de fato realizada ao se

48
encontrar uma soluo melhorada, o processo de troca inicia-se a partir da
primeira tarefa da nova sequencia.

Alm destas, h uma estratgia que segue a mesma ideia que a expressada acima:
BPE-R ou Backward Pairwise Exchange (restart). Trata-se de uma estratgia
semelhante a BPE, porm quando a troca de tarefas realizada, o processo de trocas se
inicia a partir da ltima tarefa da nova sequencia. As quatro estratgias citadas acima
para a fase de melhoramento exploram a troca aos pares das vizinhanas. Embora no
existam estudos especficos que abordem a minimizao do flowtime, a insero nas
vizinhanas considerada o esquema mais eficiente para busca local com o objetivo de
minimizao do makespan (TAILLARD, 1990).

49
4 RESULTADOS E DISCUSSO
A seguir, sero descritas e classificadas as principais heursticas encontradas na
literatura cujo objetivo a minimizao do tempo total da programao (makespan).
Todas estas heursticas se encaixaro no quadro de classificao proposto por Framinan
et al (2004) nas trs fases seguintes: desenvolvimento (index development), construo
da soluo (solution construction) e melhoramento da soluo (solution improvement).
Na fase de desenvolvimento, o objetivo gerar uma ordenao inicial das tarefas
a serem sequenciadas, utilizando algum critrio especfico do problema, como por
exemplo, a ordenao no-crescente dos tempos de processamento. Na fase de
construo da soluo ocorre a aplicao e estruturao da heurstica no problema.
Porm, apesar de prover a estrutura do mtodo, no se pode garantir que nesta fase
consiga-se obter uma soluo melhor que aquela obtida na fase I. Por fim, a fase de
melhoramento da soluo procura, por meio de algum critrio de busca local, obter um
melhoramento do sequenciamento gerado pela fase II. Vale ressaltar que podem ocorrer
combinaes entre duas ou mais heursticas para obter uma soluo otimizada. Portanto,
os mtodos aqui descritos esto divididos em heursticas simples e compostas.
Observaes quanto a notao: Seja J={J1, J2, ..., JJ, ..., Jn} um conjunto de n
tarefas que devem ser processadas na mesma sequncia, por um conjunto de m
mquinas distintas. O tempo de processamento da tarefa Ji na mquina i pij (1, 2, ..., m;
j = 1, 2, ..., n). Se uma tarefa no tiver operao em uma determinada mquina, seu
tempo de processamento igual a zero.

4.1 HEURSTICAS SIMPLES

4.1.1

Regra de Johnson (1954)

O algoritmo de Johnson foi publicado em 1954 e at os dias de hoje base para


outras heursticas devido sua simplicidade de implementao e a sua eficcia, dado
que para problemas de flowshop com n = 2mquinas, esta heurstica fornece soluo
tima, desde que obedecida a seguinte condio:

50
No problema n/2/F/M, a programao tima uma programao permutacional
onde: A tarefa

precede a tarefa

se

}.

O algoritmo de Johnson composto pelos seguintes passos:

Fase de Desenvolvimento
Passo 1: Escolha a tarefa i com o menor tempo de processamento, para i = 1, 2, ..., n.
Desempates podem ser realizados arbitrariamente.

Passo 2: Verifique se para esta tarefa, o menor tempo de processamento se encontra na


primeira mquina (M1) ou na segunda (M2).

Passo 3: Se esta tarefa estiver na mquina M1, coloque-a na primeira posio possvel
da sequncia. Se estiver na mquina M2, coloque na ltima posio possvel.

Passo 4: Escolha a prxima tarefa com o menor tempo de processamento e repita o


passo 1.

ILUSTRAO NUMRICA.
Para ilustrar o procedimento descrito acima, ser resolvido o problema cujos os
tempos de processamento so dados Tabela 1, composta por n = 5 tarefas e m = 2
mquinas.

Tabela 1 - Tempos de processamento para a Regra de Johnson

Tarefas (n)

Mquinas (m)
1
2
3
4
5

M1

M2

3
5
1
6
7

6
2
2
6
5

Passo 1. Tarefa com o menor tempo de processamento: tarefa 3 (


Passo 2. Esta tarefa se encontra na mquina M1.

);

51
Passo3: Como levantado no passo2, por estar na primeira mquina, esta atividade
ocupar a primeira posio da sequncia :

Passo 4: Prxima atividade, retorne para o passo1.


Passo 1: Tarefa com o menor tempo: tarefa 2;
Passo 2. Esta tarefa se encontra na mquina M2;
Passo3: Por estar na segunda mquina, esta atividade ocupar a ltima posio da
sequncia :

Passo 4: Prxima atividade;


Passo 1: Tarefa com o menor tempo: tarefa 1;
Passo 2. Esta tarefa se encontra na mquina M1;
Passo3: Por estar na primeira mquina, esta atividade ocupar a primeira posio
possvel da sequncia :

Passo 4: Prxima atividade;


Passo 1: Tarefa com o menor tempo: tarefa 5;
Passo 2. Esta tarefa se encontra na mquina M2;
Passo3: Por estar na segunda mquina, esta atividade ocupar a ltima posio possvel
da sequncia :

Passo 4: Prxima atividade;


Passo1: nica tarefa restante: tarefa 4. Completar sequncia (tima):
( )

Figura 2 - Sequncia tima. Regra de Johnson

52
4.1.1 Palmer (1965)
A heurstica desenvolvida por Palmer (1965) um esforo para se utilizar a regra
de Johnson, a partir de um ndice denominado slope ndex. O slope index calculado de
modo que as tarefas cujos tempos de processamento apresentam uma tendncia de
crescimento em cada mquina recebem maiores valores. Isto significa que a sequncia
de tarefas pode ser gerada baseada em uma ordenao no-crescente dos slope ndex de
cada tarefa.

Fase de Desenvolvimento
Passo 1: Seja S(j) o slope ndex da tarefa j e pij o tempo de processamento da tarefa j na
mquina i. O slope index de Palmer calculado da seguinte forma:
()

para j=1, 2, ..., n.

Passo 2: Aps calcular o slope ndex para todas as tarefas e montar a sequncia nocrescente, obtm-se a sequncia final.

ILUSTRAO NUMRICA
Para ilustrar o procedimento descrito acima, ser resolvido o problema dado na Tabela
2, de 5 tarefas e 3 mquinas.

Tabela 2 -Tempos de processamento para a heurstica Palmer

Mquinas (m)
1
2
3
4
5

Tarefas (n)
Passo1: Calcule

()

1
11
13
20
9
11

S1 = -2*11 + 0*12 + 2*20 = 18;


S2 = -2*13 + 0*15 + 2*18 = 10;
S3 = -2*20 + -0*10 + 2*12 = -16;
S4 = -2*9 + -0*12 + 2*20

= 22;

2
12
15
10
12
18

3
20
18
12
20
15

53
S5 = -2*11 + 0*18 + 2*15

= 8;

Passo2: A heurstica de Palmer sequencia as tarefas em ordem no-crescente de seus


slope index. Logo, para as tarefas da tabela 1, esta heurstica fornece a
sequncia
= 4-1-2-5-3.
Utilizando esta heurstica, rende-se um makespan = 106.

Figura 3 - Grfico de Gantt da sequncia obtida por Palmer

4.1.2 Campbell, Dudek e Smith (1970)


Campbell, Dudek e Smith desenvolveram um dos mais importantes mtodos
heursticos para problema em ambientes flowshop com o objetivo de minimizao do
makespan, denominado CDS. Sua eficcia se baseia em duas consideraes: (i) utiliza
os princpios da Regra de Johnson no estilo heurstico, e (ii) gera vrias sequncias a
partir das quais pode-se escolher a melhor sequncia. Para tal, gera-se m-1
subproblemas e a Regra de Johnson aplicada em cada subproblema. Assim, m-1
sequncias de tarefas so geradas. Como a Regra de Johnson um algoritmo aplicado a
apenas duas mquinas, um problema de m > 2 mquinas deve ser transformado em um
problema de duas mquinas.
Seja pij onde i=1, 2, ..., m e j=1, 2, ..., n o tempo de processamento da j-sima
tarefa na i-sima mquina de um problema de n tarefas e m mquinas. E seja k, para k
m-1, uma varivel auxiliar, podemos definir, para o k-simo problema, os seguintes
tempos de processamento artificiais:
p1j =

= o tempo de processamento artificial da j-sima tarefa na mquina


1 (M1)

p2j =

= o tempo de processamento artificial da j-sima tarefa na

mquina 2 (M2)

54

Fase de Desenvolvimento
Passo 1: Estabelea uma matriz n x m com os tempos de processamento pij;
Passo 2: Faa k=1 e calcule os tempos de processamento artificiais p1j e p2j para as
mquinas M1 e M2, respectivamente, de todas as atividades. Faa k=k+1.

Fase de Construo da Soluo

Passo 3: Aplique a Regra de Johnson para o estgio k utilizando os tempos de


processamento p1j e p2j do passo 2.
Passo 4: Calcule o makespan da sequncia obtida da fase 3.
Passo 5: Se k m-1, repita o passo 2.
Passo 6: Escolha a sequncia que fornea o menor makespan como a soluo para o
problema.

ILUSTRAO NUMRICA
Passo1: Matriz n x m com os tempos de processamento pij
Tabela 3 - Tempos de processamento para a heurstica CDS

Tarefas (n)

Mquinas (m)
1
2
3
4
5
6
7
8

1
13
31
17
19
94
8
10
80

2
79
13
1
28
75
24
57
17

3
23
14
0
10
0
3
13
38

4
71
94
23
4
58
32
1
40

Passo2: Para k=1, calcula-se os tempos artificiais p1j e p2j .

5
60
60
36
58
0
4
92
66

6
27
61
8
73
68
94
75
25

7
2
57
86
40
46
89
29
88

55
Tabela 4 - Tempo de processamento para k=1

Mquinas (m)
M1
M2

k=1

Tarefas (n)

1
2
3
4
5
6
7
8

13
31
17
19
94
8
10
80

2
57
86
40
46
89
29
88

Faz-se k = k +1 = 2.
Passo3: Aplicando-se a Regra de Johnson para m=2, obtm-se a seguinte sequncia:
6-7-3-4-2-8-5-1.

Passo4: Makespan: 618.


Passo5: k = 2 m-1, logo retornar passo2.
Passo2:
Tabela 5 - Tempo de processamento para k=2

Mquinas (m)
M1
M2

Tarefas (n)

k=2
1
2
3
4
5
6
7
8

92
44
18
47
169
32
67
97

29
118
94
113
114
183
104
113

Faz-se k = k +1 = 3.
Passo3: Aplicando-se a Regra de Johnson para m=2, obtm-se a seguinte sequncia:
3-6-2-4-7-8-5-1.

56

Passo4: Makespan: 628.


Passo5: k = 3 m-1, logo fazer passo2.
Este processo se repete at k=6, e como resumo, obtm-se a seguinte tabela:

Tabela 6 - Quadro resumo at a k-sima sequncia

k-sima Seq.

Sequncia
1
2
3
4
5
6

6
3
3
3
6
3

7
6
6
4
3
6

3
2
4
6
4
4

4
4
2
7
7
7

2
7
7
2
2
8

8
8
8
8
8
2

5
5
5
5
1
1

1
1
1
1
5
5

Makespan
618
628
596
632
605
595

A sexta sequncia encontrada apresenta o menor makespan, por isto esta


sequncia selecionada: 3-6-4-7-8-2-1-5 com makespan = 595.

Figura 4 - Grfico de Gantt da sequncia obtida utilizando o mtodo CDS.

4.1.3 Dannenbring (1977)


Dannenbring desenvolveu um procedimento chamado Rapid Access (RA), que
tenta combinar as vantagens do slope index de Palmer com o mtodo CDS. Ao invs de
resolver (m-1) problemas artificiais de duas mquinas, o mtodo RA resolve apenas um
problema artificial utilizando a Regra de Johnson, no qual os tempos de processamento
so determinados a partir de esquema de ponderao, como mostrado a seguir:

57

( )

Assim, para um problema de 3 mquinas, tem-se:

Fase de Melhoramentos Dannenbring

Heurstica RACS (Rapid Access with Close Order Search)


Dannenbring (1977) observou que em muitos casos uma simples transposio de
tarefas adjacentes de uma sequncia obtida atravs da heurstica RA poderia trazer
solues timas. Por essa razo, ele sugeriu um processo de melhoria de 1-estgio. Os
vizinhos da soluo gerada pelo mtodo RA so definidos como todas as possveis
combinaes de sequncias que se pode formar a partir da transposio de um par de
tarefas adjacentes. Cada uma dessas (n -1) possveis sequncias (vizinhos) avaliada
com o objetivo de se obter o menor makespan.

Heurstica RAES (Rapid Access with Extensive Search)


Ao invs de finalizar a busca aps um conjunto de sequncias testadas no mtodo
RACS, o RAES utiliza o vizinho imediatamente encontrado para gerar outro vizinho
com um makespan menor. Este processo continua at que novas solues com
makespan minimizados sejam encontrados e todas as combinaes sejam testadas.

4.1.4 Nawaz, Enscore e Ham (1983)


O algoritmo NEH baseado na premissa de que uma tarefa cuja soma dos seus
tempos de processamento em todas as mquinas seja maior deve receber maior
prioridade quando comparado a uma tarefa cuja soma de seus tempos seja menor.
Partindo desta premissa, duas tarefas que apresentam as maiores somas de seus
tempos de processamento so selecionadas a partir do conjunto de n tarefas. A melhor
sequncia encontrada a partir dessas duas tarefas tendo como critrio a minimizao do
makespan selecionada. Esta melhor sequncia encontrada a partir de uma busca

58
exaustiva, isto , considerando as duas possveis sequncias. A posio relativa dessas
duas tarefas em relao s outras fixada nas etapas seguintes do algoritmo. Em
seguida, a terceira tarefa com a maior soma de seus tempos de processamento
selecionada e as trs sequncias parciais so testadas, onde esta tarefa posicionada no
incio, no meio e na ltima posio da sequncia parcial encontrada na primeira etapa. A
melhor sequncia parcial encontrada fixar a posio relativa dessas trs tarefas nas
etapas seguintes. Este processo repetido at que todas as tarefas estejam fixadas e a
sequncia completa seja encontrada. O nmero de sequncias parciais e completas
testadas neste algoritmo dado por:
(

A seguir ser apresentado o passo-a-passo do procedimento NEH:

Fase de Desenvolvimento
Passo1: Para cada tarefa i, calcule o tempo total de processamento das tarefas, dado por:

Onde

o tempo de processamento da tarefa i na mquina j.

Passo2: Classifique as tarefas segundo a ordem no-crescente de

Fase de Construo da Soluo


Passo3: Escolha as duas tarefas que ocupam a primeira e a segunda posio do
sequenciamento inicial encontrado no passo2, e encontre a melhor sequncia
para essas duas tarefas calculando o menor makespan para as duas sequncias
possveis. Uma vez encontrada a melhor sequncia parcial com duas tarefas,
fixe a posio relativa dessas duas tarefas em relao s outras tarefas nos
prximos passos do algoritmo. Faa i=3.

Passo4: Selecione a tarefa da i-sima posio do sequenciamento do passo2 e encontre


a melhor sequncia colocando-a em todas as i posies possveis da sequncia
parcial encontrada at o passo anterior, e no trocando as posies relativas das
tarefas encontradas at o momento. O nmero de tentativas possveis neste
passo igual a i.

59
Passo5: Se n=i, pare. Caso contrrio, faa i=i+1 e retorne ao passo4.

ILUSTRAO NUMRICA
Para ilustrar o procedimento descrito acima, ser resolvido o problema dado na
Tabela 7, de 4 tarefas e 5 mquinas.

Tarefas (n)

Tabela 7 - Tempos de processamento para a heurstica NEH

1
2
3
4

Mquinas (m)
2
3
4

5
9
9
4

9
3
4
8

1
8
6
2

8
10
5
8

10
1
8
7

Passo1: T1= 5+9+8+10+1 = 33


T2= 9+3+10+1+8 = 31
T3= 9+4+5+8+6 = 32
T4= 4+8+8+7+2 = 29

Passo2: Ordem no-crescente de

: 1, 3, 2, 4

Passo3: Escolhe-se as tarefas 1 e 3, e encontra-se a melhor sequncia parcial para essas


duas tarefas.
Sequncia parcial 1-3 makespan = 46:

Figura 5 - Grfico de Gantt da sequncia parcial obtida J1 - J3

Sequncia parcial 3-1 makespan = 42:

60

Figura 6 - Grfico de Gantt da sequncia parcial obtida J3 - J1

Portanto, escolhe a posio relativa 3, 1 para os prximos passos. Faa i=3.

Passo4: Escolha a tarefa da terceira posio do sequenciamento do passo2 (tarefa 2) e


encontre a melhor sequncia parcial posicionando esta tarefa na melhor posio
possvel na sequencia parcial 3-1 obtido na etapa anterior.
Sequncia parcial 3-1-2 makespan = 50:

Figura 7 - Grfico de Gantt da sequncia parcial obtida J3 - J1 - J2

Sequncia parcial 3-2-1 makespan = 51:

Figura 8 - Grfico de Gantt da sequncia parcial obtida J3 - J2 - J1

Sequncia parcial 2-3-1 makespan = 51:

61

Figura 9 - Grfico de Gantt da sequncia parcial obtida J2 - J3 - J1

Como verificado, a sequncia parcial 3-1-2 a melhor, com makespan = 50.


Passo5: i n, logo i = 3+1 = 4, e volte para o passo4.
Passo4: Escolha a tarefa que ocupa a quarta posio do sequenciamento do passo2
(tarefa 4) e encontre a sequncia tima ao mover a tarefa 4 em todas as quatro
posies possveis na sequncia parcial encontrada at agora, 3-1-2.
Sequncia 3-1-2-4 makespan = 58:

Figura 10 - Grfico de Gantt da sequncia obtida J3 - J1 - J2 - J4

Sequncia parcial 3-1-4-2 makespan = 58:

Figura 11 - Grfico de Gantt da sequncia obtida J3 - J1 - J4 - J2

Sequncia parcial 3-4-1-2 makespan = 57:

62

Figura 12 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2

Sequncia parcial 4-3-1-2 makespan = 54:

Figura 13 - Grfico de Gantt da sequncia obtida J4 - J3 - J1 - J2

Passo5: i = n. Logo, pare.


Este problema foi resolvido encontrando-se um makespan timo ao avaliar todas
as n! = 24 sequncias e a sequncia 4-3-1-2 tima. O algoritmo NEH realizou 9 testes
das quais quatro foram sequncias completas e cinco sequncias parciais.

4.1.5 Moccellin (1995)


Moccellin (1995) props um mtodo heuristico denominado FSHOPH (Flowshop
Heuristic), similar ao procedimento SPIRIT, proposto por Widmer e Hertz (1991).
Moccellin tambm utiliza uma analogia com o problema do caixeiro viajante, porm
apresenta algumas diferenas em relao ao SPIRIT, porm no que tange distncia
entre duas tarefas a expresso utilizada totalmente diferente daquela formulada por
Wildmer e Hertz (Gigante, 2010).
Para uma sequncia S qualquer de n-tarefas em operaes programao de
operaes flowshop permutacional, o makespan M(S) pode ser calculado por:
( )
Onde:

[ ][

( )

63
tempo de processamento da j-sima tarefa na ltima mquina, da sequncia
S.
intervalo de tempo entre o trmino da operao da j-sima tarefa e o incio
da operao da (j + 1)-sima tarefa na sequncia S.
tarefa fictcia com tempo de processamento igual a zero e que ocupa
sempre a primeira posio na sequncia.

Se

[ ][

for considerado a distncia entre a j-sima e a (j+1)-sima tarefa de S,

ento o problema de programao de flowshop permutacional se torna um legtimo


problema de caixeiro viajante. A sequncia Sx que minimiza o makespan M(S) dado
pela menor rota a partir da tarefa fictcia (j = 0) at a ltima tarefa (j = n). Entretanto,
vale ressaltar que no possvel saber os tempos ociosos

[ ][

],

pois estes dependem

da sequncia particular que for considerada. Desta forma, as distncias entre as tarefas
devem ser estimadas a partir dos dados do problema, isto , dos tempos de
processamento das tarefas, de maneira que a soluo do problema do caixeiro viajante
corresponda a uma soluo heurstica do problema original de programao de
operaes.
Na heurstica FSHOPH proposta por Moccellin, a distncia entre duas tarefas
baseada na seguinte propriedade do problema de operao de flowshop permutacional.
Seja u e v duas tarefas arbitrrias de um conjunto de n tarefas. Para qualquer
sequncia S que contenha as tarefas u e v ocupando respectivamente as posies j e
(j+1), j = 1, 2, ..., n 1, tem-se:
[

)]

( )

Onde:
limitante superior de

(intervalo de tempo entre o trmino da

operao da tarefa que ocupa a j-sima posio na sequncia S e o incio


da operao da tarefas que ocupa a posio j+1, na mquina h.

tempo de processamento da tarefa i na mquina h.

64
A partir das equaes (1) e (2), para uma sequncia qualquer S de n tarefas, o
limitante superior do seu makespan M(S) pode ser calculado por:
( )
Se considerar

[ ][

[ ][

como a distncia entre as tarefas que ocupam as

posies j e (j+1), ento o problema original de programao de flowshop permutacional


pode ser heuristicamente resolvido por analogia direta com o Problema do Caixeiro
Viajante, pela frmula:
(
Onde

))

um limitante superior do tempo de espera, na ltima mquina,

entre as operaes das tarefas de u e v.


No primeiro passo da heurstica FSHOPH, a distncia da tarefa u at a tarefa v
dada por

e ento buscado a rota (sequncia) que minimize o limitante superior

UB M(S). Para encontrar uma boa soluo para o problema do caixeiro viajante, pode-se
utilizar por exemplo o conhecido procedimento Farthest Insertion Travelling Salesman
Procedures (FITSP).
O segundo passo da heurstica a aplicao da Busca Tab visando melhorar a
soluo obtida at o momento.

4.1.6 Kalczynski e Kamburowski (2008)


Kalezynski e Kamburowski (2008) propuseram um novo mtodo heurstico
construtivo denominado NEHKK, baseado na heurstica NEH, tido como a melhor
heurstica com o objetivo de minimizar o makespan em ambientes flowshop
permutacional.
A heurstica NEH permite no passo3 a possibilidade de insero de tarefas em
qualquer posio, desde que sejam respeitadas as posies relativas das tarefas j
inseridas na sequncia parcial. No entanto, esta possibilidade pode causar uma queda de
eficincia da heurstica para problemas em que ocorrem empates (ties) ao se medir o
makespan. A heurstica NEHKK prope um novo algoritmo visando eliminar este
problema para quando ocorre empates, descrito a seguir:

65
Fase de Desenvolvimento

Passo1: Calcule

, e coloque em ordem no-crescente;

Fase de Construo da Soluo


Passo2: Selecione as duas primeiras tarefas da ordenao, sequenciando-as de maneira a
(

minimizar o makespan, e faa

[ ]

[ ] ).

Passo3: Insira a prxima tarefa r, da ordenao

, na primeira posio da sequncia


(

parcial e assuma que a sequncia atual seja

[ ]

[ ]

[ ] ),

e faa

Para de 2 at n, faa:
Teste r na posio de e avalie de acordo com o seguinte critrio:
SE o makespan
OU SE

( )

( )

Ento faa

ILUSTRAO NUMRICA
Para ilustrar a heurstica NEHKK, ser resolvido um problema de n=10 tarefas,
m=5 mquinas utilizando tal heurstica, de acordo com a Tabela 8.

Tarefas (n)

Tabela 8 - Tempos de processamento para o mtodo NEHKK

1
2
3
4
5

Mquinas (m)
2
3
4

55
83
81
54
91

65
50
23
64
80

66
24
98
1
65

43
68
33
86
77

42
94
29
67
29

271 (4)
319 (2)
264 (5)
272 (3)
342 (1)

Passo1: Sequncia inicial de acordo com a ordem no-crescente

Passo2: Selecione as duas primeiras tarefas da ordenao, sequenciando-as de maneira a


minimizar o makespan:

66
} makespan = 434:

Sequncia parcial {

Figura 14 - Grfico de Gantt da sequncia parcial obtida J5 - J2

} makespan = 425:

Sequncia parcial {

Figura 15 - Grfico de Gantt da sequncia parcial obtida J2 - J5

Portanto a sequncia parcial escolhida {

}.

Passo3: Insira a prxima tarefa r da sequncia inicial do passo1, avaliando possveis


empates.
Para

faa

,
{

}.

Figura 16 - Grfico de Gantt da sequncia parcial obtida J4 - J2 - J5

para

} .

( )

67

Figura 17 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J5

Tiebreaking:
(

Portanto:
{

para

} .

( )

Figura 18 - Grfico de Gantt da sequncia parcial obtida J2 - J5 - J4

Como

( )

),

Prxima tarefa.
Para

faa

,
e

}.

68

Figura 19 - Grfico de Gantt da sequncia parcial obtida J1 - J2 - J4 - J5

para

} .

( )

Figura 20 - Grfico de Gantt da sequncia parcial obtida J2 - J1 - J4 - J5

Tiebreaking:
(

Portanto:
{

para

}
} .

( )

Figura 21 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J1 - J5

69

Como

( )

),

para

}
{

( )

} .

Figura 22 - Grfico de Gantt da sequncia parcial obtida J2 - J4 - J5 - J1

Como

( )

),

Prxima tarefa.
Para

faa

,
{

Figura 23 - Grfico de Gantt da sequncia obtida J3 - J1 - J2 - J4 - J5

para

} .

( )

70

Figura 24 - Grfico de Gantt da sequncia obtida J1 - J3 - J2 - J4 - J5

Tiebreaking:
(

Portanto:
{

para

} .

( )

Figura 25 - Grfico de Gantt da sequncia obtida J1 - J2 - J3 - J4 - J5

Tiebreaking:
(

Portanto:
{

para

}
} .

( )

71

Figura 26 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J3 - J5

Tiebreaking:
(

Portanto:
{

para

} .

( )

Figura 27 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J5 - J3

Como

( )

),

Portanto, utilizando a heurstica NEHKK, a sequncia encontrada foi


{

} com um makespan

( )

Comparando com a heurstica NEH,

onde a deciso da posio de tarefas em caso de empates arbitrria, a sequncia


encontrada tambm foi

}e

Porm para um caso com mais atividades, como a exemplificada na Tabela 9,


nota-se a superioridade na heurstica NEHKK:

72

Tarefas (n)

Tabela 9 - Tempos de processamento 10 tarefas - heurstica NEHKK

1
2
3
4
5
6
7
8
9
10

Mquinas (m)
2
3
4

69
55
83
9
28
81
67
13
54
91

82
65
50
8
93
23
44
82
64
80

35
66
24
53
14
98
12
85
1
65

18
43
68
80
80
33
58
20
86
77

29
42
94
75
25
29
27
54
67
29

233 (8)
271 (4)
319 (2)
225 (9)
240 (7)
264 (5)
208 (10)
254 (6)
272 (3)
342 (1)

Utilizando a heurstica NEH-KK, a sequncia obtida foi


{

}, cujo makespan foi

Figura 28 - Grfico de Gantt da sequncia obtida J4 - J5 - J6 - J8 - J2 - J3 - J9 - J10 - J1 - J7

E ao utilizar a heurstica NEH, verificou-se um desempenho inferior, com uma


sequncia obtida de
(

}, e um makespan de

Figura 29 - Grfico de Gantt da sequncia obtida J4 - J8 - J6 - J2 - J9 - J3 - J10 - J7 - J5 - J1

73
4.1.7 Dong, Huang e Chen (2009)
Como sabido, a heurstica NEH serviu de base para muitas outras heursticas
construtivas do tipo Fm/prmu/Cmax . O NEH constitudo de duas fases: primeiramente
as tarefas so ordenadas em ordem no-crescente da soma de seus tempos de
processamento; em seguida, uma sequncia de tarefas construda inserindo tarefas
oriundas da ordenao inicial proveniente da fase I avaliando o menor makespan.
Durante a insero de tarefas na fase II da heurstica NEH, podem ocorrer
empates (ties), isto , podem haver vrias sequncias parciais que resultem no mesmo
makespan. Porm, o algoritmo original NEH no possui uma estratgia para resolver
estes empates. Considerando a complexidade do problema, pode-se concluir que no
existe nenhuma estratgia sequer que consiga resolver estes casos otimamente, porm
pode-se melhorar os resultados utilizando estratgias tie-breaking para os casos de
empates.
Considerando esta hiptese, Dong, Huang e Cheng (2008) propuseram a
heurstica NEH-D, que se diferencia da NEH ao apresentar uma estratgia de desempate
visando otimizar o makespan, que ser detalhado a seguir.
Primeiramente, algumas notas so definidas. Para uma sequncia qualquer ,
considere:

(x) a tarefa que ocupe a posio x da sequncia ;

( )

denota o tempo de processamento de (x) na mquina i.

( )

denota a data mais cedo de concluso da tarefa (x) na mquina i.

( )

denota a data mais tarde de incio da tarefa (x) na mquina i.

Como regra de prioridade que ser utilizada para a ordenao inicial das tarefas,
so utilizadas as mdias e desvios padro dos tempos de processamento de cada tarefa.
Esta regra de prioridade baseada na seguinte considerao: quanto maior o desvio dos
tempos de processamento de uma tarefa em cada mquina, maior prioridade esta deve
ter.

( )

74

( )

) ]

( )

Calculados a mdia e o desvio padro de todas as tarefas, encontre o


sequenciamento inicial da fase I ordenando em ordem no-crescente a soma

Para os casos de empate, so utilizados dois fatores pare efeitos de desempate da


tarefa (x):

( )

( )

( )

e
( )

( )
(

( ))

Note que pode haver algumas excees. Seja

( )

igual a data mais tarde de

trmino da tarefa (x) na mquina i caso (x) seja a ltima tarefa na sequncia parcial;
seja

igual a data mais cedo possvel de incio da tarefa (1) na mquina i; se


(

( )
(

),

para todas essas hipteses, considere

( )

, e assim

neste caso.

Com isso, ao inserir uma tarefa na sequncia parcial, a posio que resultar no
menor makespan escolhida. Caso existam empates, a posio x que minimize

( )

escolhida. Caso o empate ainda persista, qualquer uma dessas posies aceitvel. A
ideia base deste procedimento a utilizao da posio que resulte no balanceamento da
utilizao de cada mquina.
A heurstica NEH-D assim explicitada:

75
Fase de Desenvolvimento
Passo1: Calcule

dos tempos de processamento de cada tarefa j. Ordene as

tarefas em ordem no-crescente da soma

Fase de Construo da Soluo


Passo2: Selecione a primeira tarefa da sequncia inicial do passo1 e insira na sequncia
parcial.
Passo3: Para k =2, 3, ..., n, insira a k-sima tarefa nas k posies possveis, escolhendo
aquela que minimize o makespan. Caso ocorram empates, a posio x que
minimize

( )

escolhida.

ILUSTRAO NUMRICA
Para ilustrar o procedimento descrito acima, ser resolvido um problema de 4
mquinas, 5 tarefas. Os tempos de processamento para cada tarefa esto descritos na
Tabela 10
Tabela 10 - Tempos de processamento heurstica NEH-D

Tarefas (n)

Mquinas (m)
1
2
3
4
1
2
3
4
5
6

4
8
2
2
7
2

5
4
3
3
5
1

9
5
5
6
10
7

6
6
6
7
3
2

Passo1: Ordem no-crescente da soma


Passo2: Sequncia parcial:

{ }.

Passo3: k=2. Prxima tarefa:


Sequncia parcial 1-5 makespan = 31

6,0
5,8
4,0
4,5
6,3
3,0
:

2,2
1,7
1,8
2,4
3,0
2,7

8,2
7,5
5,8
6,9
9,2
5,7

(2)
(3)
(5)
(4)
(1)
(6)

76

Figura 30 - Grfico de Gantt da sequncia obtida J1 - J5

Sequncia parcial 5-1 makespan = 37

Figura 31 - Grfico de Gantt da sequncia obtida J5 - J1

Portanto

( )

k=3. Prxima tarefa:


Sequncia parcial 2-1-5 makespan = 39

Figura 32 - Grfico de Gantt da sequncia obtida J2 - J1 - J5

Sequncia parcial 1-2-5 makespan = 37

Figura 33 - Grfico de Gantt da sequncia obtida J1 - J2 - J5

77
Sequncia parcial 1-5-2 makespan = 39

Figura 34 - Grfico de Gantt da sequncia obtida J1 - J5 - J2

Portanto

( )

k=4. Prxima tarefa:


Sequncia parcial 4-1-2-5 makespan = 39

Figura 35 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J5

Sequncia parcial 1-4-2-5 makespan = 42

Figura 36 - Grfico de Gantt da sequncia obtida J1 - J4 - J2 - J5

Sequncia parcial 1-2-4-5 makespan = 42

Figura 37 - Grfico de Gantt da sequncia obtida J1 - J2 - J4 - J5

78
Sequncia parcial 1-2-5-4 makespan = 47

Figura 38 - Grfico de Gantt da sequncia obtida J1 - J2 - J5 - J4

Portanto

( )

k=5. Prxima tarefa:


Sequncia parcial 3-4-1-2-5 makespan = 43

Figura 39 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J5

Sequncia parcial 4-3-1-2-5 makespan = 43

Figura 40 - Grfico de Gantt da sequncia obtida J4 - J3 - J1 - J2 - J5

Sequncia parcial 4-1-3-2-5 makespan = 43

Figura 41 - Grfico de Gantt da sequncia obtida J4 - J1 - J3 - J2 - J5

79
Sequncia parcial 4-1-2-3-5 makespan = 43

Figura 42 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J3 - J5

Sequncia parcial 4-1-2-5-3 makespan = 47

Figura 43 - Grfico de Gantt da sequncia obtida J4 - J1 - J2 - J5 - J3

Portanto, o menor makespan encontrado foi de 43, ocorrendo empates em 4 casos:

( )

Posio x=1: {3-4-1-2-5};

( )

( )

( )

( )

( )

( )

( )
( )

( )

( )

( ))

( )

( )

( )

( )

( )

( ))

( ))

( ))

Posio x=2: {4-3-1-2-5};

( )
( )

( )
( )

( )

( )
( )

( )

( )
( )

( )

( )

80
(

( )

( )

( ))

( ))

( ))

( ))

Posio x=3: {4-1-3-2-5};

( )

( )

( )

( )

( )
( )

( )

( )
( )

( )

( )
( )

( )

( )

( )

( ))

( ))
( ))

( ))

0,2617

Posio x=4: {4-1-2-3-5}.

( )

( )

( )

( )

( )

( )
( )

( )

( )
( )

( )

( )

( )

( )

( )

( ))

( ))

( ))

( )

( )

( )

( )

( ))

81
Portanto,

( )

k=6. Prxima tarefa:


Sequncia parcial 6-3-4-1-2-5 makespan = 48

Figura 44 - Grfico de Gantt da sequncia obtida J6 - J3 - J4 - J1 - J2 - J5

Sequncia parcial 3-6-4-1-2-5 makespan = 50

Figura 45 - Grfico de Gantt da sequncia obtida J3 - J6 - J4 - J1 - J2 - J5

Sequncia parcial 3-4-6-1-2-5 makespan =50

Figura 46 - Grfico de Gantt da sequncia obtida J3 - J4 - J6 - J1 - J2 - J5

82
Sequncia parcial 3-4-1-6-2-5 makespan = 50

Figura 47 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J6 - J2 - J5

Sequncia parcial 3-4-1-2-6-5 makespan = 50

Figura 48 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J6 - J5

Sequncia parcial 3-4-1-2-5-6 makespan = 49

Figura 49 - Grfico de Gantt da sequncia obtida J3 - J4 - J1 - J2 - J5 - J6

Portanto,

( )

a sequencia final escolhida.

4.1.8 Rad, Ruiz e Boroojerdian (2009)


Rad, Ruiz e Boroojerdian (2009) propuseram uma srie de heursticas construtivas
para minimizao do makespan derivados da heurstica NEH denominados FRB1,
FRB2, FRB3, FRB4 e uma meta-heurstica FRB5. Dentre estes procedimentos, a
heurstica FRB3 apresentou os melhores resultados, e portanto ser detalhado a seguir.

83
Uma possvel crtica do mtodo NEH consiste no fato de que a partir do momento
que uma tarefa inserida na sequncia parcial, a sua posio relativa em relao s
tarefas j inseridas permanecem fixas. Quando se insere uma nova tarefa, muitas vezes
benfico reconsiderar a ordem das tarefas j inseridas para melhor acomodar a nova
tarefa a ser inserida.
O mtodo FRB3 detalhada a seguir:

Fase de Desenvolvimento
Passo1: Calcule

, e coloque em ordem no-crescente de

e faa

Fase de Construo da Soluo


Passo2: Para

at n, testar a tarefa h da sequncia do passo1 de

em todas as

possveis posies de , e inserir na posio com o menor makespan.

Passo2.1: Para

at l retire a tarefa

da sequncia do passo2, e teste em todas

as posies possveis. Assuma a sequncia com o menor makespan.

ILUSTRAO NUMRICA
Para ilustrar o procedimento descrito acima, ser resolvido um problema de 4
mquinas, 5 tarefas. Os tempos de processamento para cada tarefa esto descritos na
Tabela 11.

Tabela 11 Tempos de processamento heurstica FRB3

Tarefas (n)

Mquinas (m)
1

20 (1)

18 (3)

18 (4)

17 (5)

10

20 (2)

Passo1: Soma dos tempos de processamento e ordenao seguindo a ordem nocrescente, que resulta na sequncia. {

84
{ }. Inserindo a prxima tarefa h do passo1.

Passo2: Sequncia parcial:


-tarefa h:

Sequncia parcial 5-1 makespan = 26:

Figura 50 - Grfico de Gantt da sequncia parcial obtida J5 - J1

Sequncia parcial 1-5 makespan = 28:

Figura 51 - Grfico de Gantt da sequncia parcial obtida J1 - J5

Portanto

Passo2.1:

( )

( )

( )

Portanto:

( )

}
}

( )
( )

Passo2: Inserindo a prxima tarefa de

. tarefa h:

Sequncia parcial 2-5-1 makespan = 33:

85

Figura 52 - Grfico de Gantt da sequncia parcial obtida J2 - J5 - J1

Sequncia parcial 5-2-1 makespan = 34:

Figura 53 - Grfico de Gantt da sequncia parcial obtida J5 - J2 - J1

Sequncia parcial 5-1-2 makespan =33:

Figura 54 - Grfico de Gantt da sequncia parcial obtida J5 - J1 - J2

Portanto

Passo2.1:

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

86

Portanto:

Passo2: Inserindo a prxima tarefa de

( )

. tarefa h:

Sequncia parcial 3-2-1-5 makespan = 41:

Figura 55 - Grfico de Gantt da sequncia parcial obtida J3 - J2 - J1- J5

Sequncia parcial 2-3-1-5 makespan = 41:

Figura 56 - Grfico de Gantt da sequncia parcial obtida J2 - J3 - J1- J5

Sequncia parcial 2-1-3 -5 makespan = 41:

Figura 57 - Grfico de Gantt da sequncia parcial obtida J2 - J1- J3 - J5

Sequncia parcial 2-1-5-3 makespan = 35:

Figura 58 - Grfico de Gantt da sequncia parcial obtida J2 - J1- J5- J3

87
Portanto

Passo2.1:

}
}

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

Portanto:

( )

Passo2: Inserindo a prxima tarefa de

( )

. tarefa h:

Sequncia parcial 4-2-1-5-3 makespan = 38:

Figura 59 - Grfico de Gantt da sequncia obtida J4- J2 - J1- J5 - J3

88

Sequncia parcial 2- 4-1-5-3 makespan = 41:

Figura 60 - Grfico de Gantt da sequncia obtida J2 - J4 - J1- J5 - J3

Sequncia parcial 2-1- 4-5-3 makespan = 42:

Figura 61 - Grfico de Gantt da sequncia obtida J2 - J1- J4- J5 - J3

Sequncia parcial 2-1-5- 4-3 makespan = 45:

Figura 62 - Grfico de Gantt da sequncia obtida J2 - J1- J5 - J4 - J3

Sequncia parcial 2-1-5-3- 4 makespan = 47:

Figura 63 - Grfico de Gantt da sequncia obtida J2 - J1- J5 - J3 - J4

89

Portanto
Passo2.1:

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

90
Portanto:

( )

Figura 64 - Grfico de Gantt da sequncia obtida pelo mtodo FRB3.

4.2 HEURSTICAS COMPOSTAS


4.2.1 Ho e Chang (1991)
O algoritmo de Ho e Chang (HC) parte da ideia de que para minimizar o
makespan, basta reduzir os gaps existentes entre a ltima tarefa da primeira mquina
com as ltimas das mquinas seguintes. Seja k a ltima tarefa da mquina M1 e seja
gap1 o tempo decorrente entre o trmino da tarefa k da mquina M1 e o incio da tarefa
k na mquina M2. Similarmente, o tempo decorrido entre o trmino da tarefa k na
mquina 2 e o incio da tarefa k na mquina M3 seja denominado gap3. Assim, para um
problema n/3, o makespan pode ser calculado por:
(

(8)

Isto pode ser ilustrado pela Figura 65.

M1

job1

job2

job3

job4
gap1

M2

job1

job2

job3

tk2
job4
gap2

M3

job1

Figura 65 - Componentes do Makespan

job2

job3

tk3
job4

91
Desde que os trs primeiros termos da equao (8) so constantes, a minimizao
do makespan possvel pela minimizao da soma do gap1 e gap2. A heurstica de Ho
e Chang tem por objetivo minimizar estes gaps. Visando buscar capturar a essncia
destes gaps, a heurstica utiliza-se das seguintes diferenas:
( )

Se a tarefa i precede a tarefa j na sequncia, ento caso


que a tarefa j precise esperar na mquina k + 1 pelo menos
finalizada. Caso

seja positivo implica


at que a tarefa i seja

seja negativo, isto implica que existe um tempo ocioso de

entre

as tarefa i e j na mquina k + 1. Por exemplo, para gap1 e gap2, que so


respectivamente

, so positivos na Figura x. No entanto,

negativo na

Figura 1 e isso significa que h tempo ocioso entre as tarefas 2 e 3 na mquina 3.


Com o objetivo de minimizar os gaps, deve-se posicionar os pares de tarefas com
os gaps mais negativos mais prximos do final da sequncia. Os valores negativos mais
prximos do final auxiliam na reduo de valores positivos acumulados nas primeiras
posies da sequncia, enquanto que os valores negativos quando prximos do comeo
na sequncia apresenta uma alta probabilidade de serem lixos (isto , tornarem-se tempo
ocioso). Similarmente, deve-se posicionar os pares de tarefas com os maiores gaps
positivos prximos do comeo, pois h maiores probabilidades de compensar com gaps
negativos nas tarefas posteriores.
Antes de combinar

, define-se um novo fator, o fator(k), para descontar os

valores negativos:
( )

para k =1, 2, ..., M-1

Baseado neste fator, define-se a funo desconto como:


{

( )

Para i, j = 1, 2 ,..., n e k = 1, 2, ..., M-1

(10)

92
Ao combinar todos os

com os fatores de desconto, obtm-se os gaps revisados

Para i, j = 1, 2, ..., n.
Baseado nos gaps revisados, a heurstica de Ho e Chang calculada de acordo
com o seguinte algoritmo:

Fase de Desenvolvimento
Passo1: Aplique a heurstica CDS para obter uma soluo inicial, chamada de soluo
incumbente;

Fase de Construo da Soluo


Passo2: Encontre os valores revisados de

Passo3: Seja l (l =1, 2, ..., n) as posies da soluo incumbente e

a tarefa que ocupa

a posio l. Faa a = 1 e b = n.

Passo4: Encontre o maior valor de (

) denominado X, onde l est entre os valores

de a e b. Seja u a posio de l associado a X.

Passo5: Encontre o menor valor de (

) denominado Y, onde l est entre os valore

de a e b. Seja v a posio de l associado a Y.


Passo6: Se (X<0), (Y>0), e (|X||Y|), ento v para o passo9;

Passo7: Se (X<0), (Y>0), e (|X|>|Y|), ento v para o passo10;

Passo8: Se (|X|>|Y|), ento v para o passo9. Caso contrrio, v para o passo10.

Passo9: Faa a=a +1, e troque as posies das tarefas cujas posies sejam a e u. V
para o passo11;

Passo10: Fala b=b-1, e troque as posies das tarefas cujas posies sejam b e v.

93

Passo11: Se a nova sequncia for melhor que a soluo incumbente em termos de


performance, esta passa a ser a nova soluo incumbente. Caso contrrio,
retorne a soluo incumbente inicial;

Passo12: Se b = a + 2, finalize. Seno, volte para o passo4.

ILUSTRAO NUMRICA
Para ilustrar o procedimento descrito acima, ser resolvido o problema de 4
mquinas, 5 tarefas. Os tempos de processamento para cada tarefa esto na Tabela 12.
Tabela 12 - Tempos de Processamento heurstica HC

Tarefas (n)

1
1
2
3
4
5

31
19
23
13
33

Mquinas (m)
2
3
4
41
55
42
22
5

25
3
27
14
57

30
34
6
13
19

Passo1: Utilizando a heurstica CDS, encontra-se a sequncia {4 2 1 5 3}, com um


makespan de 246.

Figura 66 - Grfico de Gantt da sequncia obtida J4 - J2 - J1 - J5 - J3

Passo2: Calcular os valores para

Utilizando a equao (2), obtm-se os gaps,

, mostrados nas tabelas 11-13.

94
Tabela 13 - Clculo do gap d1ij

1
2
3
4
5

22

18

28

24

32

42

22

11

23

29

-9

-1

-11

-26

-14

-18

-8

Tabela 14 - Clculo do gap d2i.j

1
2
3
4
5

-38
-14
-27
16

-30
-28
-41
2

-17
-39
-28
15

3
-19
5
35

20
-2
22
9
-

Tabela 15 - Clculo do gap d3i,j

1
2
3
4
5

9
-19
-12
6

27
3
10
16

3
7
-14
-8

16
20
-8
5

-27
-23
-51
-44
-

Pela equao (10), temos:


( )

( )

( )

Pela equao (11), podemos computar os gaps ajustados,

, mostrados na Tabela 16.

95
Tabela 16 - Gaps ajustados dRi,j

1
2
3
4
5

12,1
1,4
-25
-11

32,5
10,6
-9,6
4

11,7 47 25,3
17,6 51,6 18,6
33,2 25,9
-18
-6,4
-3,8 32
-

Passo3: Seja l (l =1, 2, 3, 4, 5); a=1 e b=5;

Passo 4: A partir da tabela 15, o valor de X, isto , o maior valor de

= -6,40, para

l=4. Logo u=4.

Passo5: O menor valor Y de

igual a -380, para l = 4. Logo v = 4.

Como tanto X como Y so negativos, v para o passo8.

Passo9: a = a + 1 = 2. Troque de posio as tarefas

(tarefa 2) e

(tarefa 5).

Passo11: A nova sequncia, portanto, ser {4 5 1 2 3}.

Figura 67 - Grfico de Gantt da sequncia obtida J4 - J5 - J1 - J2 - J3

Porm esta sequncia apresenta makespan = 248 (>246). Portanto mantm-se a


soluo incumbente inicial, {4 2 1 5 3}.
Passo12: Como a = 2, b = 5, e b a + 2, volte para a etapa 4.

Passo4: A partir da tabela 500, o maior valor X de


e b (= 5), 18,60, para l = 4 e portanto, u = 4.

, onde l a posio entre a (=2)

96
Passo5: O menor valor Y de

, onde l a posio entre a (=2) e b (= 5), -3,80, para

l = 4 e portanto, v = 4.

Como X positivo e Y negativo, v para o passo8.

Passo9: a = a + 1 = 3. Troque de posio as tarefas

(tarefa1) e

(tarefa 5).

Passo11: A nova sequncia portanto ser {4 2 5 1 3}. Esta sequncia apresenta um


makespan de 213 (< 246), portanto esta sequncia passa a ser a nova
incumbente.

Passo12: Como a = 3, b = 5, e b = a + 2, esta heurstica se finaliza com a sequncia


encontrada {4 2 5 1 3} e makespan 213.

Figura 68 - Grfico de Gantt da sequncia obtida J4 - J2 - J5 - J1 - J3

4.2.2 Nagano e Moccellin (2002)


Nagano e Moccellin (2002) propuseram uma heurstica construtiva denominada
N&M onde h uma mudana apenas na fase de ordenao inicial em relao ao NEH
(1983). Para esta heurstica, foi utilizada uma importante propriedade para problemas de
sequenciamento em ambientes flowshop, descrita a seguir:
Para uma sequncia qualquer com n tarefas, o makespan M() (Figura 69) pode
ser expressado por:
( )

97
onde

o tempo de processamento da j-sima tarefa na mquina k da sequncia ;

o tempo de espera da tarefa que ocupa a posio j de , entre o final da


operao na mquina k e o comeo da operao na mquina (k + 1).
Por lgica, no se pode conhecer o tempo de espera

a menos que seja

considerada uma sequncia especfica de tarefas. Entretanto, dado um par arbitrrio de


tarefas adjacentes (

) onde

precede imediatamente

limitante inferior do tempo de espera para a tarefa

, pode-se calcular o

entre o final de sua operao na

mquina k e comeo da operao na mquina seguinte (k + 1), no importando a


posio destas duas tarefas na sequncia.

Figura 69 - Tempo total para executar uma programao permutacional (Makespan M())

Baseado em uma investigao feita por Nagano, pode ser afirmado que:
Seja u e v duas tarefas de um conjunto de n tarefas. Para uma sequncia qualquer
contendo as tarefas u e v ocupando respectivamente as posies j e (j + 1), j=1, 2, ..., n
1, tem-se:
[ (

Onde:

um limitante inferior para

98

tempo de espera para a tarefa v entre o final de sua operao na mquina k


e o incio da operao na mquina (k +1), onde a tarefa u precede imediatamente
a tarefa v;

tempo de processamento da tarefa v na mquina k;

um limitante superior para


[

(MOCCELLIN, 1995), dado por:

)]

tempo ocioso da mquina k entre o trmino do processamento da


tarefa u e o comeo da tarefa v.

A propriedade descrita acima, chamada LBY, est ilustrada na Figura 70. Ela
derivada da condio de viabilidade entre mquina e tempos ociosos das tarefas em
problemas de operaes em flowshop, dado por (Figura 69):
a)

b)
Se

ento

, onde a tarefa t precedente imediato da tarefa u.

A heurstica N&M muito similar heurstica NEH. A nica diferena entre esta
e aquela est no modo como realizada a ordenao inicial das tarefas, que ocorre nos
passos 1 e 2. Veja:

Figura 70 - Demonstrao da propriedade LBY

99
Fase de Desenvolvimento
Passo1: Para cada tarefa v, calcule:

Onde

Onde

tempo de processamento da tarefa v na mquina k, n = nmero de


tarefas, m = nmero de mquinas e

o limitante inferior para

, dado pela expresso (3).

Passo2: Organize as tarefas de acordo com a ordem decrescente de

Os passos seguintes so idnticos aos passos do NEH.

Fase de Construo da Soluo


Passo3: Escolha as duas tarefas que ocupam a primeira e a segunda posio do
sequenciamento inicial encontrado no passo2, e encontre a melhor sequncia
para essas duas tarefas calculando o menor makespan para as duas sequncias
possveis. Uma vez encontrada a melhor sequncia parcial com duas tarefas,
fixe a posio relativa dessas duas tarefas em relao s outras tarefas nos
prximos passos do algoritmo. Faa i=3.

Passo4: Selecione a tarefa da i-sima posio do sequenciamento do passo2 e encontre


a melhor sequncia colocando-a em todas as i posies possveis da sequncia
parcial encontrada at o passo anterior, e no trocando as posies relativas das
tarefas encontradas at o momento. O nmero de tentativas possveis neste
passo igual a i.

Passo5: Se n=i, pare. Caso contrrio, faa i=i+1 e v para o passo4.

100
ILUSTRAO NUMRICA
Para ilustrar a heurstica N&M, ser utilizado um problema com n = 10 tarefas e
m = 4 mquinas. Os tempos de processamento esto contidos na Tabela 17.
Desde que n = 10 tarefas, tem-se um total de n(n 1 ) = 90 pares (u, v) de tarefas
adjacentes, para os quais, deve ser calculados os limitantes inferiores
2, 3.
Seja o primeiro par (u, v) = (1, 2). Assim:
[ (

Onde
e

)]

Tabela 17 - Tempos de Processamento heurstica N&M

Tarefas (n)

Mquinas (m)
1
2
3
4
1
2
3
4
5
6
7
8
9
10

1
2
8
3
6
2
3
4
4
1

10
3
2
6
4
7
4
3
7
5

2
2
1
1
1
10
8
2
10
7

7
6
4
1
7
3
4
10
8
5

20
13
15
11
18
22
19
19
29
18

De acordo com os tempos de processamento da Tabela 1, tem-se:


Para k =1
[ (

Onde
Portanto
[ (

] = mx (0, 8) = 8;

____
Para k =2
[ (
Onde
Assim

(
[

)
)]

)] = mx (0, -8) = 0;

para k =1,

101
E portanto
[ (

] = mx (0, -1) = 0;

____
Para k =3
[ (
[

Onde

(
[

Assim

)]
)] = mx (0, 1) = 1;

E portanto
[ (

] = mx (0, 4) = 4;

Com isso, tem-se:

Realizando este mesmo procedimento, deve-se encontrar

para os

pares restantes (u, v). Estes valores esto representados na matriz M1.

- 12 8

7 10 6

7 13 9 10 9

- 10 11 6 11

12 18 14 15 14 8 10 16 - 12
Tendo
1, 2 , ..., 9, 10:

a partir da tabela 1, e a matriz M1, calcula-se os ndices

para v =

102

Portanto, o arranjo inicial para as tarefas proposto pela heurstica N&M :

Utilizando a heurstica NEH, o arranjo inicial seria:

Em seguida, aps aplicar os passos 3 a 5, a heurstica NEH resulta na seguinte


sequncia:
(M=66)

Figura 71 - Grfico de Gantt da sequncia obtida J2 J10 J1 J3 J5 J7 J8 J9 J4 J6

Para a heurstica N&M, a sequncia final :


(M=63)

103

Figura 72 - Grfico de Gantt da sequncia obtida J2 J8 J10 J7 J5 J9 J3 J1 J6 J4

4.3 QUADRO DE CLASSIFICAO


Desta forma, as principais heursticas construtivas voltadas para a minimizao de
makespan apresentam a seguinte classificao nas trs fases propostas por Framinan,
Gupta e Leinsten (2004) - Figura 73:

Fase 1: desenvolvimento do ndice

Fase 2: construo da soluo

Fase 3: melhoramento da soluo.


O ndice c na figura refere-se fase construtiva da heurstica em questo.

104

Figura 73 - Quadro Geral de Classificao das Fases Construtivas

Aps estudar como se estrutura cada uma das heursticas abordadas neste
trabalho, pode-se verificar que a maioria delas parte de uma ordenao inicial a partir da
organizao em ordem no-crescente de seus tempos de processamento totais,
caracterizando a fase I do sistema de classificao adotado.
Alm disso, devido sua eficcia e simplicidade de implementao, o mtodo
NEH em sua essncia muito utilizado para a fase construtiva de mtodos posteriores a
ela, com apenas algumas pequenas mudanas.
Por fim, possvel verificar a combinao de heursticas simples que podem
surgir formando heursticas compostas e assim obter bons resultados para o objetivo
almejado, como o caso da utilizao do CDS para a obteno de uma ordenao
inicial, para o caso da heurstica HC, ou ento, a partir de uma ordenao inicial, utilizar
um outro mtodo na sua fase de construo como o NEH, no caso da heurstica N&M.

105
5 CONSIDERAES FINAIS
O trabalho realizado uma tentativa inicial de classificao de heursticas
construtivas voltadas para ambientes de flowshop permutacional com objetivo de
minimizao

do

makespan.

Tal

classificao

fornece informaes

para

os

programadores da produo, quando da busca de determinada heurstica ou combinao


de heursticas para resolver um problema particular. Permite ainda a explorao de
possibilidades para combinaes eficientes das melhores heursticas em cada fase.
Uma questo crtica no desenvolvimento de heursticas o trade-off entre a
qualidade da soluo obtida e o tempo computacional requerido para obter tal soluo.
Contudo, na maioria dos ambientes prticos, tal trade-off no pode ser visto como uma
funo ponderada, mas muito mais como um objetivo do problema de programao. Na
maioria das vezes, os responsveis pela tomada de deciso gostariam de obter as
solues de melhor qualidade (os menores makespans), sujeitos a uma restrio de
tempo dado por intervalo de deciso. Desde que este intervalo de deciso possa variar
de segundos a horas, no existe uma receita universal que cubra todas as situaes.
Portanto, o campo para desenvolvimento de abordagens mais eficientes para o problema
Fm/prmu/Cmax baseadas na extenso ou combinao de heursticas existentes permanece
aberto.
A classificao facilita a localizao de heursticas simples dentro de um quadro
mais amplo, e assim possibilita a identificao de combinaes entre estas heursticas
formando heursticas compostas que possam melhorar seus resultados individuais.
Reitera-se que esta foi uma primeira abordagem do tema em questo e sugere-se, para
trabalhos futuros, que este sistema classificatrio seja melhor explorado e aprimorado
ou at mesmo que novos sistemas classificatrios sejam propostos.

106
6 REFERNCIAS BIBLIOGRFICAS
ALLAHVERDI, A., ALDOWAISAN, T. New heuristic to minimize total completion
time in m-machines flowshop. International Journal of Production Economics; 7: 7183, 2002.
BAKER, K. R. Introduction to sequencing and scheduling. New York: John Wiley,
1974.
BLAZEWICZ, J. J. et al. Scheduling Computer and Manufacturing Processes. [s.l.]
Springer Verlag, 1996.
CAMPBELL, H. G.; DUDEK, R. A.; SMITH, M. L. A heuristic algorithm for the njob, m-machine sequencing problem. Mngt Sci 16: B630B637, 1970.
CARLIER, R. I. Two branch and bound algorithms for the permutation flowshop
problem. Eur J Opl Res 90: 238251, 1996.
CONWAY, R. H.; MAXWELL, W. L.; MILLER, L. W. Theory of scheduling. New
York: Dver, 1967.
COOK, S. A. The complexity of theorem-proving procedures. Proc. 3th. Annual
ACM Symp. Theory Computational, p. 151-158, 1971.
DANNENBRING, D. G. An evaluation of flow-shop sequence heuristics. Mngt Sci
23: 11741182, 1977.
FERNANDES, F. C. F.; FILHO, M. G. Planejamento e controle da produo: dos
fundamentos ao essencial. So Paulo: Editora Atlas, 2010.
FRAMINAN, J. M.; LEISTEN, R. An efficient heuristic for flowtime minimization
in permutational flowshops. OMEGA; 31: 311-7, 2003.
FRAMINAN, J. M.; LEISTEN, R., GUPTA, J. N. D. A review and classification
heuristics for permutational flowshop scheduling with makespan objective.
Technical Report 2001/02, Industrial Management, University of Seville; 2001.
FRAMINAN, J. M.; LEISTEN, R., RAJENDRAN, C. Different initial sequences for
the heuristic of Nawaz, Enscore and Ham to minimize makespan, idletime or
flowtime in the static permutational flowshop. International Journal of Production
Research; 41: 121-48, 2003.

107
FRAMINAN, J. M.; LEISTEN, R.; RUIZ-USANO, R. Comparison of heuristics for
flowtime minimisation in permutation flowshops. In: Computers & Operations
Research, v. 32, n. 5, p. 1237-1254, May 2005.
FRENCH, S. Sequencing and scheduling: an introduction to the mathematics of the
job shop. New York: John Wiley, 1982.
GAREY, M. R.; JOHNSON, D. S. Computers and intractability: a guide of NPcompleteness. New York: W. H. Freemon; p. 330-340, 1979.
GIGANTE, R. L. Heurstica construtiva para a programao de operaes flowshop
permutacional. Dissertao (Mestrado em Engenharia de Produo). Escola de
Engenharia de So Carlos, Universidade de So Paulo, So Carlos, 2010.
GRAHAM, R. L. et al. Optimisation and approximation in deterministic sequencing and
scheduling: a survey. Annals of Discrete Mathematics, p.287-326, 1979.
GRAHAM, R. L. et al. Optimization and approximation in deterministic
sequencing and scheduling: a survey. Ann. Discrete Math. 4, 287-326, 1979.
GRAVES, S. G. A review of production scheduling. Operations Research, Linthicum,
v.29, n.4, p. 646-675, jul. 1981.
GUPTA J. N. D. Heuristic rules for n m flowshop scheduling problem. Opsearch
(India) 5: 165170, 1968.
GUPTA, J. N. D. A functional heuristic for the flow-shop scheduling problem. Opns
Res Quart 22: 3947, 1971.
GUPTA, J. N. D. Flowshop scheduling via sorting analogy. UARI Research Report
No. 109,University of Alabama in Huntsville, USA, 1971.
GUPTA, J. N. D. Heuristic algorithms for multistage flowshop scheduling problem.
AIIE Trans 4: 1118, 1972.
GUPTA, J. N. D. Travelling salesman problem: a survey of theoretical
developments and applications. Opsearch (India) 5:181192. Res 44: 648652, 1968.
JOHNSON, S. M. Optimal two-and three-stage production schedules with setup
times included. Naval Research Logistics Quarterly, Washington, v.1, n.1, p. 61-68,
1954.
KALCZYNSKI, P. J.; KAMBUROWSKI, J. An Improved NEH heuristic to
minimize makespan in permutation flowshop. Computers & Operations Research,
Amsterdam, v.35, n.9, p.3001-3008, Sept 2008.

108

KING, J. R.; SPACHIS, A. S. Heuristics for flow-shop scheduling. Int J Prod Res 18:
345357, 1980.
LAGEWEG, B. J.; LENSTRA, J. K.; RINNOOY, K. A. H. G. A general bounding
scheme for the permutation flowshop problem. Opns Res 26: 5367, 1978.
LAI, T. A note on heuristics of flow-shop scheduling. Opns. Res 44:648-652, 1996.
LAWLER, E. L. et al. Sequencing and scheduling: Algorithms and complexity.
Logistics of Production and Inventory, Handbooks in Operations Research and
Management Science 4, North-Holland, 1993.
LIU, J.; REEVES, C. R. Constructive and composite heuristic solutions to the P||Ci
scheduling problem. European Journal of Operational Research; 132:439-52, 2001.
LOMNICKI, Z. A branch and bound algorithm for the exact solution of three
machine scheduling problem. Oper. Res. Quart. 16(1), p. 89-100, 1965.
LOURENO, H. R. Sevastyanovs algorithm for the flowshop scheduling problem.
Eur J Opl Res 91: 176189, 1996.
MACCARTHY, B. L.; LIU, J. Adressing the gap in scheduling research: a review of
optimization and heuristic methods in production scheduling. International Journal
of Production Research, Londres, v.31, n.1, p. 59-79, 1993.
MANNE, A. S. The job-shop scheduling problem. Oper. Res., p. 219-223, 1960.
MCMAHON, C.B.; AND BURTON, P.G. Flowshop scheduling with the branch and
bound method. Oper. Res.15, p. 473-81, 1967.
MOCCELLIN, J. V. A new heuristic method for the permutation flow-shop
scheduling problem. J Opl Res Soc 46: 883886, 1995.
MORTON, T. E.; PENTICO, D. W. Heuristic Scheduling Systems. Wiley: New York,
1993.
MORTON, T. E.; PENTICO, D. W. Heuristic scheduling systems: with applications
to production systems and project management. New York: John Wiley, 1993.
NAGANO, M. S.; MOCCELLIN, J. V. A high quality solution constructive for flow
shop sequencing. Journal of the Operational Research Society. v. 53, pp. 1374-1379,
2002.
NAMBIAR, J. M. et al. A Large Scale Location-Allocation Problem in the Natural
Rubber Industry. European Journal of Operational Research, v.6, p. 183-189, 1981.

109

NAWAZ M, ENSCORE EE, HAM I. A heuristic algorithm for the m-machine, n-job
flow-shop sequencing problem. OMEGA; 11: 91-5, 1983.
NAWAZ, M.; ENSCORE, E. E.; HAM, I. A heuristic algorithm for the m-machine,
n-job flow-shop sequencing problem. Omega-Int J Mngt Sci 11: 9195, 1983.
NOWICKI, E.; SMUTNICKI, C. A fast tabu search algorithm for the permutation
flow-shop problem. Eur J Opl Res 91: 160175, 1996.
PAGE, E. S. An approach to the scheduling of jobs on machines. J R Stat Soc 24:
484492, 1961.
PALMER, D. S. Sequencing jobs through a multistage process in the minimum
total time: a quick method of obtaining a near optimum. Opns Res Quart 16: 101
107, 1965.
PINEDO, M. Scheduling: Theory, Algorithms and Systems. [s.l.] Springer, 2008.
POTTS, C. N. An adaptive branching rule for the permutation flowshop problem.
Eur J Opl Res 5: 1925, 1980.l
RAD, S.R.; RUIZ, R.; BOROOJERDIAN, N. New high performing heuristic for
minimizing makespan in permutation flowshops. Omega: the internation journal of
management science, Oxford, v37, n2, p331-345, Apr, 2009.
RAJENDRAN, C.; ZIEGLER, H. An efficient heuristic for scheduling in a flowshop to
minimize total weighted flowtime of jobs. European Journal of Operational Research;
103: 129-38, 1997.
ROCK, H.; SCHMIDT, G. Machine aggregation heuristics in shop-scheduling.
Methods Opl Res 45: 303314, 1983.
RODAMMER, F. A.; WHITE JR., K. P. A recent survey of production scheduling.
IEEE Transactions on Systems, Man and Cybernetics, New York, v.18, n.6, p. 841-851,
2002.
RUIZ, R.; MAROTO, C. A comprehensive review and evaluation of permutation
flowshop heuristics. European Journal of Operational Research, 165, 479-494, 2005.
SELIM, S. Z.; AL-TURKI, U. M. A new heuristic algorithm for the flowshop
problem. In: Kusiak A (ed). Modern Production Management Systems. Elsevier
Science,Am sterdam, pp 9196, 1987.
SIPPER, D.; BULFIN JR., R.L. Production: planning , control and integration. New

110
York: McGraw-Hill, 1997.
SLACK, N. Vantagem competitiva em manufatura. So Paulo: Atlas, 2002.
SLACK, N.; CHAMBERS, S.; JOHNSTON, R. Administrao da Produo. 2 ed.
So Paulo: Atlas, 2002.
STINSON, J. P.; SMITH, W. A heuristic programming procedure for sequencing
the static flowshop. Int J Prod Res 20:753764, 1982.
STTZLE, T. An ant approach for the flowshop problem. ELITE Foundation (ed).
Proceedings of EUFIT98 Aachen, Germany. Verlag Mainz,A achen, Germany, pp.
15601564, 1998.
SZWARC, W. Elimination methods in the m_n sequencing problem. Naval Res
Logist 18: 295305, 1971.
TAILLARD E. Some efficient heuristic methods for the flow-shop sequencing
problem. European Journal of Operational Research; 47: 65-74, 1990.
WIDMER, M.; HERTZ, A. A new heuristic method for the flow-shop sequencing
problem. Eur J Opl Res 41: 186193, 1991.
WOO, D. S.; YIM, H. S. A heuristic algorithm for mean flowtime objective in
flowshop scheduling. Computers and Operations Research; 25: 175-82, 1998.

Vous aimerez peut-être aussi