Você está na página 1de 13

Production

doi: XX.XXXX/XXXXX-XXXXXXXXXXXXXXXXX

Regras de prioridade eficientes que exploram


caractersticas do Job Shop Flexvel
para a minimizao do atraso total
Everton Luiz de Meloa*, Dbora Pretti Ronconib
everton.melo@usp.br, USP, Brasil
b
dronconi@usp.br, USP, Brasil

Resumo
Este trabalho aborda o ambiente de produo Job Shop Flexvel (JSF), extenso do problema NP-Difcil Job Shop. O
JSF envolve um conjunto de jobs compostos por operaes e cada operao deve ser processada em uma das mquinas
habilitadas. O critrio considerado a minimizao do atraso total. Inicialmente so identificadas caractersticas
relacionadas flexibilidade do sistema de produo, mais especificamente s mquinas habilitadas por operao e
aos seus tempos de processamento. A seguir so propostas novas regras que exploram tais caractersticas e que so
capazes de antever estados futuros do sistema. So realizados experimentos computacionais com 600 instncias.
Comparaes com regras da literatura mostram que a melhor heurstica proposta supera a melhor regra conhecida
em 81% das instncias.

Palavras-chave
Job Shop. Heurstica. Programao matemtica. Programao da produo.

1. Introduo
Identificar caractersticas particulares de um
problema de otimizao pode ser um meio eficiente
para obter solues de boa qualidade. Isso
especialmente verdadeiro ao se lidar com problemas
fortemente NP-Difceis, como so vrios problemas
de escalonamento de tarefas. Assim, o objetivo deste
trabalho propor regras de prioridade eficientes que
explorem caractersticas do ambiente Job Shop Flexvel
(JSF) para alcanar boas solues com rapidez.
O JSF a verso flexvel do problema de
programao de tarefas Job Shop (JS). O JS envolve
um conjunto de tarefas, designadas por jobs, cada
uma formada por uma sequncia de operaes.
Essas operaes devem ser sequenciadas em
mquinas previamente determinadas otimizando
algum critrio. No JSF, as operaes podem ser
processadas alternativamente em mais de uma
mquina. Minimizando o makespan, Gareyetal.
(1976) classificam o JS como NP-Difcil. Para a
minimizao do atraso total, Koulamas (1994) prova

que a programao de tarefas no ambiente flowshop


com apenas duas mquinas fortemente NP-Difcil.
Consequentemente, por reduo, os problemas JS e
JSF tambm recebem essa classificao. Tais provas
implicam que no so conhecidos algoritmos exatos
que resolvam o JSF em tempo computacional razovel.
Por essa razo so utilizados mtodos alternativos
para gerar boas solues em tempo computacional
aceitvel.
Neste trabalho, o critrio de desempenho utilizado
a minimizao do atraso total, o qual tem grande
aderncia prtica. Alvarez-Valdesetal. (2005) utilizam
mtodos heursticos construtivos na indstria de vidro.
Vilcot & Billaut (2008) empregam Busca Tabu (BT) e
Algoritmos Genticos (AG) na indstria de impresso.
Porm, a literatura sobre atraso total limitada e o
critrio de desempenho majoritariamente explorado
o makespan.
A definio formal do JSF vem a seguir. Considere
um conjunto independente de n jobs, cada um
*USP, So Paulo, SP, Brasil
Recebido 13/11/2012; Aceito 27/09/2013

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

formado por uma sequncia determinada de operaes.


Considere tambm um conjunto de m mquinas. Cada
operao associada a um subconjunto de mquinas
capazes de realizar seu processamento, o que torna o
problema flexvel. Cada operao deve ser processada
isoladamente, sem interrupo, em uma nica mquina
do subconjunto de mquinas a ela associado. Devem
ser determinadas as atribuies das operaes s
mquinas e as sequncias de processamentos que
otimizem o critrio estabelecido. A flexibilidade do
JSF faz com que um job possa ser processado por
diferentes caminhos atravs das mquinas, aumentando
muito o nmero de solues factveis.
A flexibilidade do problema possibilita que a
resoluo seja feita em duas etapas distintas, cada
uma delas abordando subproblemas menos complexos.
A primeira etapa a atribuio de cada operao a
uma mquina habilitada. Essa fase denominada
roteamento por determinar os caminhos que os jobs
percorrero. A segunda etapa o sequenciamento das
operaes em cada mquina. Ela equivale resoluo
do JS resultante das atribuies da etapa anterior.
Essa estratgia de resoluo denominada abordagem
hierrquica. Contrastando com ela existe a abordagem
integrada, na qual atribuies e sequenciamentos so
definidos simultaneamente.
O JSF foi investigado na literatura com diversos
critrios de desempenho e atravs de diferentes
mtodos de resoluo, principalmente heursticos.
Um dos primeiros trabalhos que mencionam o JSF
apresentado por Brucker & Schile (1990), que propem
um algoritmo polinomial para o JSF com at dois jobs.
Brandimarte (1993) prope a abordagem hierrquica
aliando regras de prioridade e BT. Kacemetal. (2002)
classificam os problemas em JSF com flexibilidade
total e parcial, de acordo com o grau de flexibilidade
das operaes. Na flexibilidade total, cada operao
pode ser processada por qualquer mquina. Na
flexibilidade parcial, cada operao est associada a
um subconjunto de mquinas.
Heursticas e meta-heursticas tambm so
bastante exploradas na resoluo do problema.
Regras de prioridade so utilizadas por Tay & Ho
(2008) juntamente com Programao Gentica.
Baykasolu & zbakir (2010) investigam a influncia
da flexibilidade do problema sobre os resultados
de diversas regras que minimizam o atraso mdio.
AG so utilizados por Kacemetal. (2002), Zhang
& Gen (2005), Chanetal. (2006), Hoetal. (2006),
Pezzellaetal. (2008) e Gutirrez & Garca-Magario
(2011). Uma BT tradicional aplicada por DauzrePrs & Paulli (1997). Uma BT hibridizada com Particle
Swarm Optimization empregada por Zhangetal.
(2009) e outra BT associada Variable Neighborhood
Search desenvolvida por Lietal. (2010).

Modelos matemticos para minimizao do


makespan foram encontrados nos trabalhos recentes
de Fattahietal. (2007) e zgvenetal. (2010). Alm
da formulao, Fattahietal. (2007) propem um
conjunto de instncias que tambm so resolvidas
com BT e Simulated Annealing. zgvenetal. (2010)
comparam os resultados de seu modelo com os
apresentados pelo modelo de Fattahietal. (2007),
mostrando melhor desempenho.
Especificamente sobre o atraso total, de acordo com
o levantamento realizado, o trabalho de Scrichetal.
(2004) o primeiro a considerar tal critrio no JSF. Os
resultados indicam a regra Modified Due Date (MDD),
a qual modifica a data de entrega do job baseada
no tempo de processamento das operaes restantes
como a melhor regra de prioridade. Ela utilizada
para gerar solues iniciais a serem melhoradas
por BT. Uma aplicao do JSF minimizando atraso
na indstria de armamentos apresentada por
Chenetal. (2008). Nessa aplicao, as operaes tm
sequncias alternativas e os jobs podem ter relaes
de precedncia. A resoluo hierrquica baseada
na regra Earliest Due Date (EDD), a qual prioriza o
escalonamento de jobs com menor data de entrega.
Outras regras so usadas para desempate. Gholami
& Zandieh (2009) visam obter solues robustas
que minimizem atraso mdio e makespan. Para isso
incorporam simulao a um mtodo baseado em AG.
As simulaes envolvem probabilidades de quebra de
mquina e so utilizadas para determinar o atraso
mdio e o makespan esperados.
Foram encontrados poucos trabalhos que tratam
da minimizao do atraso total no ambiente JSF, o
que refora a existncia de uma lacuna na literatura
a respeito desse critrio. Por isso, este estudo prope
explorar caractersticas do JSF com minimizao
do atraso total usando novas regras de prioridade,
que forneam melhores solues. Na prxima seo
so descritas as adaptaes do modelo matemtico
utilizado. Na seo 3 so propostas estratgias de
explorao das caractersticas do problema e regras
de prioridade. Na seo 4 so analisados os resultados
obtidos pelas regras propostas com as instncias
geradas aleatoriamente. Por fim, a seo 5 traz as
concluses do trabalho.

2. Modelo matemtico para minimizao


do atraso total
O modelo de Programao Linear Inteira Mista
(PLIM), descrito a seguir, foi adaptado da formulao
matemtica apresentada por zgvenetal. (2010)
para minimizao do makespan. Tal escolha se deve
ao fato de esse modelo ter apresentado os melhores

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

resultados da literatura para esse critrio, alm da


sua adaptao direta para o critrio do atraso total.
Ressalta-se que neste trabalho a formulao PLIM
utilizada com o intuito de obter solues timas e
limitantes que possam ser empregadas na avaliao
das heursticas. O modelo:
ndices e conjuntos:
J
M
O
i, i

conjunto dos jobs;

j, j
k, k
Oi

operaes (j, j O);


conjunto das operaes do job i (Oi O);

Oij

operao j pertencente ao job i (Oij Oi);

Ci

Sijk

k ' M j '

Cijk

k M j

Cij ' k ' i J , j Oi , Oij ' Pij (8)

i J , j Oi

(9)

Ti Ci di i J (10)
Xijk {0,1} i J , j Oi , k M j (11)

conjunto das mquinas;


conjunto das operaes;
jobs (i, J);

Sijk 0 i J , j Oi , k M j (12)

mquinas (k, k M);

Cijk 0 i J , j Oi , k M j (13)

conjunto de mquinas alternativas da operao j (Mj M);


Mj Mj conjunto de mquinas onde ambas as operaes j e j
podem ser processadas;
Pij
conjunto das operaes que devem preceder a operao
Oij no job.

Mj

Parmetros:
tijk
di
L

tempo de processamento da operao Oij na mquina k;


data de entrega do job i;
nmero adequadamente grande fornecido por

Oij O

max(tijk ).
k M j

Variveis de deciso:
Xijk

assume 1 se a mquina k selecionada para a operao Oij e


0, em caso contrrio;

Sijk

instante de incio de processamento da operao Oij na


mquina k;

Cijk

instante de trmino de processamento da operao Oij na


mquina k;

Yijijk
Ci
Ti

assume 1 se Oij precede Oij na mquina k e 0, caso contrrio;


instante de trmino de processamento do job i;
atraso do job i.

Funo objetivo:
Minimizar Ti
i J

(1)

Sujeito a:

k M j

k M j

Xijk = 1 i J , j Oi (2)

Sijk Xijk L i J , j Oi , k M j (3)


Cijk Xijk L i J , j Oi , k M j (4)
Cijk Sijk + tijk (1 Xijk ) L i J , j Oi , k M j (5)
Sijk Ci ' j ' k (Yiji ' j ' k ) L

i < i ', j Oi , j ' Oi ' , k M j M j ' (6)


Si ' j ' k Cijk (1 Yiji ' j ' k ) L
i < i ', j Oi , j ' Oi ' , k M j M j '

(7)

Yiji ' j ' k {0,1} i < i ', j Oi , j ' Oi ' , k M j M j ' (14)
Ci 0 i J (15)
Ti 0 i J (16)

O modelo minimiza o atraso total conforme a


funo objetivo (1); as restries do tipo (2) garantem
a atribuio de cada operao a exatamente uma
mquina habilitada; as restries (3 e 4) asseguram
que, caso uma operao Oij no seja alocada a
uma mquina k, seus instantes de incio e trmino
de processamento nessa mquina sejam nulos; as
restries (5) garantem que, caso uma determinada
operao seja atribuda a certa mquina, seu instante
de trmino seja, no mnimo, a soma de seu instante
de incio de processamento e de seu tempo de
processamento naquela mquina; as restries (6e 7)
evitam a execuo simultnea de operaes alocadas
em uma mesma mquina; as restries (8) estabelecem
que as precedncias das operaes sejam respeitadas;
as restries (9) determinam que o instante de
trmino de cada job seja maior ou igual ao instante
de trmino de sua ltima operao; as restries (10)
determinam o atraso de cada job; e as restries de
(11 a 16) definem os domnios das variveis, sendo
que as restries (11 e 14) tratam a condio de
integralidade.

3. Identificao das caractersticas do Job


Shop Flexvel e regras de prioridade
Pelo fato de o JSF estar entre os problemas de
otimizao mais difceis da literatura frequente o
uso de mtodos efetivos e rpidos para a gerao
de solues. Um desses mtodos o List Scheduling
Algorithm. Conforme Kim (1995), sempre que uma
mquina fica ociosa, o mtodo seleciona a operao
de maior prioridade, dentre as disponveis, para

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

ocup-la. Essa escolha realizada com uma regra


de prioridade. De acordo com Panwalkar & Iskander
(1977), as regras de prioridade esto fortemente
ligadas aos critrios de desempenho. Alm de utilizar
um mtodo eficiente, extremamente interessante
quando informaes a respeito do problema podem
ser usadas para aprimorar os resultados. Dessa forma, a
explorao de algum conhecimento sobre o problema
pode permitir que solues de qualidade bastante
superior sejam alcanadas sem aumento do custo
computacional.
Com esse intuito, nesta seo so propostas formas
de identificar e quantificar caractersticas do JSF.
Primeiramente so relacionadas regras da literatura
indicadas para minimizao do atraso, bem como
as adaptaes necessrias para que elas possam ser
aplicadas ao JSF. A seguir so descritas as estratgias
que identificam as caractersticas do JSF e as regras
de prioridade propostas.

3.1. Regras de prioridade adaptadas da


literatura
Regras de prioridade com bom desempenho
na minimizao do atraso na literatura, no
necessariamente abordando o JSF, foram
implementadas. Tais regras so descritas na sequncia,
assim como as respectivas adaptaes propostas,
quando necessrias.
Shortest Processing Time (SPT): regra que prioriza
a operao com menor tempo de processamento e
recomendada por Baker (1984) para o critrio do
atraso;
Minimum Slack Time (MST): prioriza o job com
a menor folga em relao sua data de entrega.
Neste trabalho seu clculo utilizou os tempos mdios
de processamento das operaes em suas diversas
mquinas alternativas;
Smallest Critical Ratio (SCR): prioriza o job com
menor relao entre o tempo disponvel at sua
data de entrega e o tempo ainda demandado de
processamento. Esse clculo tambm utilizou os
tempos mdios de processamento das operaes;
EDD: prioriza jobs com menor data de entrega. Uma
descrio mais detalhada das regras MST, SCR e EDD
originais se encontra em Vepsalainen & Morton (1987);
Modified Operation Due Date (MOD): proposta de
Baker (1984) que estima datas de entrega para as
operaes priorizando o job com a menor data de
entrega. Essas estimativas utilizaram os tempos
mdios de processamento das operaes;
MDD: proposta de Baker & Bertrand (1982) que
modifica a data de entrega do job baseada no
tempo de processamento das operaes restantes.
Como essas operaes ainda no tm mquinas
definidas, foi utilizado o tempo de processamento

mnimo entre as mquinas habilitadas. A data de


entrega modificada, di para o JSF obtida com a
equaoa seguir:

di ' = max di , t +

t jk
kmin
M

j Gi

(17)

onde t o instante atual considerado pelo List


Scheduling Algorithm; Gi o conjunto das operaes
ainda no alocadas do job i; e tjk o tempo de
processamento da operao j na mquina k. Desse
modo di indica o menor instante possvel para a
concluso do job i. Na aplicao dessa regra, prioriza-se
o job com menor data de entrega modificada di.
Priority Rule for Total Tardiness adaptada (PRTTa):
proposta de Mainieri & Ronconi (2013) que estima
datas de entrega para os estgios do flowshop
flexvel e antev estados futuros do sistema. A
adaptao proposta para o JSF utiliza os tempos
mdios das operaes para estimar suas datas de
entrega. Tais estimativas so calculadas de modo
similar ao empregado por Mainieri & Ronconi (2013),
ou seja, a data de entrega do job menos o tempo
mdio de processamento das operaes restantes. A
PRTTa para o JSF definida como:
PRTTa( j, k, t ) = max(rj , t ) + max[max(rj , t ) + t jk , d j ] (18)

sendo dj sua data de entrega estimada e rj o instante


de concluso da predecessora de j, j que a regra
considera operaes no liberadas. No primeiro
termo, o valor > 0 penaliza operaes ainda no
disponveis. No segundo termo, o potencial instante
de trmino da operao comparado com sua data
de entrega estimada. selecionada a operao com
menor valor PRTTa(j, k, t).

3.2. Identificao e utilizao das


caractersticas do problema
A seguir so propostas duas estratgias para
explorar caractersticas especficas do JSF. Essas
estratgias podem ser associadas a diferentes regras
de prioridade ou a outros mtodos de resoluo,
guiando as atribuies e os sequenciamentos.

3.2.1. Afinidade entre operaes e mquinas


A primeira estratgia proposta est relacionada
ideia intuitiva de atribuir as operaes s mquinas
que possam process-las mais rapidamente. Contudo
preciso que essa percepo seja explorada na medida
correta para que bons resultados sejam alcanados.
Assim, a atribuio de certa operao a uma mquina
pode ser induzida, mas no deve ser imposta. Neste
trabalho denominada afinidade, Ajk, a convenincia

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

de atribuir uma operao j a uma mquina k. Essa


convenincia baseia-se na relao entre o tempo de
processamento de j em k e os tempos de processamento
de j em suas demais mquinas alternativas. A afinidade
Ajk expressa pela relao:
A jk =

t jk

t jk ' (19)
k 'M j

Essa relao varia de 0 a 1 e quanto menor seu


valor maior a afinidade entre j e k. Essa medida pode
ser aplicada para direcionar cada operao para alguma
mquina que possa efetuar seu processamento em
menor tempo. A afinidade entre uma operao e
uma mquina no habilitada para ela no definida.

3.2.2. Grau de flexibilidade das operaes


Outra caracterstica do JSF a ser identificada
o grau de flexibilidade das operaes candidatas.
Considerar o grau de flexibilidade permite favorecer
operaes com menor nmero de alternativas de
processamento, ou seja, aquelas com menor grau de
flexibilidade. Isso pode ser conveniente, pois essas
operaes possuem possibilidades de atribuio mais
restritivas e, se no escolhidas, podem dificultar
o restante da resoluo. A flexibilidade Fj de uma
operao j fornecida por:
Fj =

Mj
m

(20)

onde |Mj| indica o nmero de mquinas habilitadas


para a operao j. Como a afinidade, a flexibilidade
varia de 0 a 1. Quanto menor o valor de Fj maior
deve ser a possibilidade de que a operao j seja
selecionada.

3.3. Regras propostas


A primeira regra proposta denominada Data de
entrega Modificada com Anteviso (DMA) e utiliza
elementos das regras PRTTa e MDD. O intuito da
DMA aliar o bom desempenho da regra MDD com a
anteviso da PRTTa. A anteviso permite que quando
uma mquina se torna ociosa, uma operao ainda no
disponvel, mas com instante de liberao rj conhecido,
seja atribuda a ela. Como essa escolha gera tempo
ocioso na mquina, ela deve ser realizada com cautela.
Isso feito atravs de uma constante que pondera
a penalizao da escolha de uma operao ainda
no liberada. Alm disso, a data de entrega de cada
job atualizada quando ele no pode ser entregue
no prazo. Essa atualizao leva em considerao a
possibilidade de as operaes candidatas ainda no
estarem disponveis. A regra ento pode ser usada

para calcular o valor DMA (i, j, t) que determina a


prioridade da operao j no instante t:

DMA(i, j, t ) = max(rj , t ) + max di ,max(rj , t ) +

j ' Gi

min t j ' k ' (21)

k ' M j '

O primeiro termo, com > 0, penaliza as


operaes no disponveis no instante t, evitando
inserir ociosidades excessivas na programao. O
segundo termo atualiza a data de entrega do job i.
Para tanto, o tempo mnimo de processamento das
operaes restantes do job i somado ao mximo
entre t e rj. Ento esse valor comparado data de
entrega original do job. Assim, a DMA capaz de
considerar como candidatas no somente as operaes
j disponveis mas tambm aquelas cujas predecessoras
estejam alocadas, embora no finalizadas. Para
isso, ela antev em que instante do futuro essas
operaes se tornaro disponveis. Operaes que
possuem predecessoras ainda no alocadas no so
candidatas. Sempre selecionada a operao com
menor valor DMA(i, j, t).
A segunda regra proposta associa a DMA
afinidade e flexibilidade. O objetivo induzir o List
Scheduling Algorithm a atribuir cada operao a uma
das mquinas que a processem com maior rapidez,
alm de favorecer operaes com menos mquinas
alternativas. Essa regra denominada DMA com
Afinidade e Flexibilidade (DMA-AF) e incorpora as
estratgias do seguinte modo:

DMA AF (i, j, k, t ) = max(rj , t ) + A jk Fj max di ,max(rj , t ) +

j ' Gi

min t j ' k '

k ' M j '

(22)

Deve ser selecionada a operao com menor valor


DMA-AF(i, j, k, t). Quanto maior for a afinidade entre
j e k, menor ser Ajk e, portanto, menor resultar
o valor da regra. Do mesmo modo, quanto menor
for a flexibilidade de j, menor ser Fj , tornando
DMA-AF(i, j, k, t) menor. A incorporao dessas
estratgias por regras da literatura abordada na
seo dos experimentos computacionais.

3.4. Algoritmo construtivo


A seguir apresentado um algoritmo construtivo
que visa gerar solues viveis de boa qualidade com
rapidez. Esse procedimento seleciona as operaes
de acordo com uma regra de prioridade utilizando a
abordagem integrada. Ele baseado nos procedimentos
propostos por Scrich (1997) e Mainieri & Ronconi
(2013).
O mtodo inicia no instante zero, quando todas
as mquinas esto disponveis e todas operaes
so conhecidas. medida que o tempo avana, as
operaes so atribudas s mquinas, at que todas
sejam alocadas. Cada vez que uma mquina fica ociosa

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

so levantadas as operaes candidatas a ocup-la.


selecionada a operao de maior prioridade, conforme
a regra vigente. Neste trabalho, a operao de maior
prioridade a que permita regra gerar o menor valor.
Quando duas ou mais mquinas esto disponveis ao
mesmo tempo, a primeira mquina a receber uma
operao aquela que possuir o menor carregamento
estimado. Esse carregamento fornecido pela soma
dos tempos de processamento de todas as operaes
ainda no alocadas que a mquina pode executar. O
intuito dessa seleo reduzir parte da sobrecarga
de mquinas com carregamento estimado elevado,
facilitando futuras alocaes.
As regras PRTTa, DMA e DMA-AF podem alocar
operaes ainda no liberadas, inserindo tempo
ocioso na mquina. Caso isso acontea, o algoritmo
construtivo tenta preencher esse tempo com outras
operaes sem interferir no instante de incio de
processamento da operao previamente alocada.
As operaes usadas para preencher o tempo ocioso
so as de menor instante de liberao. O algoritmo
envolve:
t

instante da programao que est sendo considerado pelo


algoritmo;

Rk
mj
tjk
rj
sj
uk

instante em que a mquina k se torna disponvel;

nmero de mquinas;

mquina selecionada para processar a operao j;


tempo de processamento da operao j na mquina k;
instante de liberao da operao j;
instante de incio de processamento da operao j;
assume 1 se a mquina k, ociosa, no possui operao
candidata e 0, caso contrrio;

|O|

nmero total de operaes do problema;


Mt
conjunto das mquinas disponveis no instante t;
nmero de mquinas disponveis no instante t;
|Mt|
Mt[w] indica a w-sima mquina com menor carregamento
estimado de Mt;
A
conjunto das operaes j alocadas a alguma mquina;
nmero de operaes j alocadas a alguma mquina;
| A|
T ocioso tempo ocioso gerado pela alocao de uma operao ainda
no disponvel;
t
instante no qual tem incio um tempo ocioso;
L
nmero grande.

O algoritmo implementado detalhado na sequncia.


procedimento Algoritmo Construtivo (entrada:
Inst_JSF, Regra)
1. incio
2. t 0
3. A
4. para k 1 at m faa:
5. Rk 0
6. uk 0
7. fim para
8. para j 1 at |O| faa:
9. se (a operao j no tem predecessora no job) faa:

10. rj 0
11. seno
12. rj
13. fim seno
14. fim para
15. enquanto (|A| |O|) faa:
16. Mt
17. para k 1 at m faa:
18. se ((Rk t) ou (uk=1)) faa:
19.
Mt Mt mquina k
20. fim se
21. fim para
22. Ordene as mquinas de Mt por carregamento
estimado crescente
23. para j 1 at |O| faa:
24. se (as predecessoras de j estiverem concludas)
faa:
25.
rj instante de trmino da ltima predecessora
26. fim se
27. fim para
28. para w 1 at |Mt| faa:
29. k=Mt[w]
30. Identifique as operaes candidatas para k em
t segundo Regra
31. se (houver operao candidata) faa:
32.
Calcule as prioridades das operaes candidatas
segundo Regra
33.
Selecione a operao j de maior prioridade
34.
mj k
35.
sj max{t,rj}
36.
A A operao j
37.
Rk sj+tjk
38.
uk 0
39.
Retire a operao j da lista de candidatas
40.
se (rj > t) faa:
41.
Tocioso rjt
42.
t t
43.
enquanto (houver operao candidata j com
tjk Tocioso) faa:
44.
Selecione a operao candidata j com menor rj
45.
mj k
46.
sj max{t,rj}
47.
A A operao j
48.
t t+ sj+tjk
49.
Tocioso rjt
50.
Retire a operao j da lista de candidatas
51.
fim enquanto
52. fim se
53. seno
54.
uk 1

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

Rk L
fim seno
fim para
t mink=1...m{Rk}
fim enquanto
Devolva (sada: soluo estabelecida por mj , sj ,
j=1,...,|O|)
61. fim.
Esse algoritmo construtivo tem como entradas
uma instncia do problema (Inst_JSF) e uma regra
de prioridade (Regra). A identificao das operaes
candidatas (linha 30) para uma mquina k no instante
t depende da regra utilizada. Se a regra no possuir
anteviso, somente as operaes liberadas se tornam
candidatas. Se a regra possuir anteviso, as operaes
com instante de liberao conhecido tambm se
tornam candidatas. Havendo operaes candidatas,
a prioridade de cada uma delas calculada (linha 32)
conforme a regra utilizada. De acordo com a regra
fornecida como argumento de entrada, a operao
prioritria j pode variar (linha 33). Desse modo
se pode considerar que o algoritmo apresentado
fornece diferentes possibilidades de obter solues,
representando diversas heursticas construtivas. Caso
ocorra empate na seleo da linha 33, o desempate
feito priorizando-se a operao que possa liberar
a mquina a ser ocupada mais rapidamente. No
caso das regras com anteviso, as linhas de 40 a
52 preenchem os tempos ociosos gerados pelas
alocaes de operaes ainda no liberadas. Isso ocorre
enquanto, dentre as candidatas, houver operaes
(linha 43) que possam ser alocadas sem interferir no
processamento da operao previamente alocada.
Entre essas operaes selecionada a operao j com
menor instante de liberao. Em caso de empate na
seleo da linha 44, selecionada a operao com
maior prioridade. O algoritmo gera solues para o
JSF de acordo com a regra de entrada e fornece como
sada uma soluo para o problema.
55.
56.
57.
58.
59.
60.

4. Experimentos computacionais
Nesta seo so apresentadas a descrio da
gerao das instncias utilizadas e a anlise dos
resultados obtidos pelas heursticas construtivas.

4.1. Gerao de instncias


A gerao aleatria de instncias foi baseada em
Scrich (1997) e Scrichetal. (2004). Esse processo e as
alteraes propostas so detalhados no decorrer desta
subseo. Os valores aleatrios foram fornecidos pelo
gerador de Taillard (1993), que permite obter valores

inteiros em uma distribuio uniforme U[a, b]. Cada


instncia gerada tem os seguintes componentes:
n
m
|Oi|
Mj
|Mj|
tjk

tj

nmero de jobs;

di

data de entrega do job i;

fator usado no clculo das datas de entrega dos jobs.

nmero de mquinas;
nmero de operaes do job i;
conjunto de mquinas que podem processar a operao j;
nmero de mquinas alternativas para a operao j;
tempo de processamento da operao j na mquina k;
tempo mdio de processamento da operao j em suas
mquinas alternativas;

Os valores dos componentes das instncias geradas


so apresentados na Tabela1. Os parmetros n e m so
definidos previamente. O valor de |Oi| varia de m / 2
a m. O tempo de processamento da operao j em
uma mquina alternativa k , tjk, obtido no intervalo
[1,99]. Nas demais mquinas, os tempos so limitados
a intervalos compreendidos em [tjk,min(3 . tjk, 99)].
Uma diferena em relao a Scrichetal. (2004) que
|Mj| obtido em trs faixas distintas de flexibilidade,
com mdias de 20%, 50% e 80%. Cada instncia
gerada utilizando-se somente uma dessas trs faixas.
O intuito ter operaes com diferentes |Mj|, sendo
os elementos de Mj obtidos aleatoriamente em U[1,
m]. Em Scrichetal. (2004), todas as operaes de uma
dada instncia tm o mesmo |Mj|. Outra diferena
em relao a Scrichetal. (2004) envolve as datas
de entrega, calculadas a partir da soma dos tempos
mdios de processamento das operaes dos jobs.
O tempo mdio do job multiplicado por um fator
definido a partir de n e m, sendo que =(n/m)1/2
se n m, e =1, caso contrrio. Esse clculo visa
gerar solues mais realistas, com datas de entrega
menos restritivas quando o nmero de mquinas do
problema pequeno. O resultado obtido multiplicado
por 0,8; 1,0; 1,2 ou por uma combinao aleatria
desses trs valores, CA. Assim existem quatro tipos
de datas de entrega mais ou menos restritivas. Cada
instncia utiliza um desses quatro tipos de data de
entrega. Em Scrichetal. (2004) existem dois tipos de
data de entrega. Um deles obtido pela multiplicao
do tempo mdio do job por (nm)/1.000+0,5 e o outro
por (nm)/1.000+1,0.
Foram geradas instncias com as seguintes
dimenses expressas pela relao nm: 55, 105,
1010, 1510, 1515, 3015, 505, 5010, 5015
e 10010. Para cada uma dessas dez combinaes foi
gerado um grupo de cinco instncias, formando um
subconjunto de 50 instncias. Como existem trs faixas
de flexibilidade e quatro tipos de data de entrega,
foram criados 12 subconjuntos de 50 instncias. Cada
subconjunto tem uma combinao distinta de faixa
de flexibilidade e opo de data de entrega. No total
foram geradas 600 instncias para o JSF.

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

4.2. Obteno e anlise dos resultados


Os experimentos foram conduzidos em um
computador com processador Intel Core i7 870
de 2,93GHz, 16GB de RAM e sistema operacional
Windows 7. O algoritmo construtivo foi implementado
em linguagem C.

4.2.1. Calibragem do parmetro


Testes preliminares foram realizados para definir
o valor da constante de ponderao presente nas
regras com anteviso. Observou-se que utilizar uma
constante relacionada dimenso das instncias
fornecia melhores resultados. Ento a constante
foi composta por um valor relacionado dimenso
da instncia multiplicado por outro valor denominado
. O valor usado para relacionar dimenso das
instncias foi m. Isso se mostrou interessante porque,
independentemente do nvel de flexibilidade, quanto
maior o nmero de mquinas do problema, mais
mquinas alternativas cada operao possui. Por isso,
com mais mquinas menos interessante inserir tempo
ocioso, j que as operaes tm outras alternativas
de processamento. Assim, a constante foi definida
como =m . e o valor de variou somente pela
variao de . O grfico da Figura1 exibe os valores
do atraso total mdio das 600 instncias medida
que varia na DMA.
Foram feitos experimentos com variando de 0
a 100 com passo 0,1. Contudo, com > 50, o atraso
no variou significativamente. Assim, o eixo horizontal
do grfico da Figura1 foi restrito para melhor
visualizao. Observa-se que, aps grande reduo
inicial, o atraso teve pequenas oscilaes. Contudo,
acima de um determinado valor de penalizao, o
atraso total mdio se estabiliza, tornando a calibragem
menos crtica. Para a DMA, o melhor valor para o
parmetro foi =m .16,8, com o qual a mdia do
atraso total foi igual a 14.681,3. Com ==0, o
valor mdio do atraso total foi 19.766,7, mostrando
que a insero de tempos ociosos pode ser prejudicial
se no for controlada. Processos de calibragem
semelhantes foram realizados para as demais regras
de prioridade. Na PRTTa, o valor usado foi =m . 5,1.

mdia do atraso total no respectivo subconjunto de


60 instncias, sendo que em negrito so identificados
os melhores resultados. Abaixo desse valor est, entre
parnteses, o nmero de vezes em que a regra obteve
o menor atraso total, mesmo empatando com uma
ou mais regras. Na ltima linha indicado o tempo
total consumido por cada regra para resolver as 600
instncias.
Entre as regras bsicas se destacaram DMA, MDD
e EDD. Com atraso total mdio geral igual a 14.681,3,
a DMA foi a melhor regra. Em seguida veio a MDD,
melhor regra conforme Scrichetal. (2004), com mdia
geral 14.781,8, seguida pela EDD, em terceiro lugar.
A DMA tambm foi a regra que mais vezes obteve a
melhor soluo, 172 ocasies. Depois aparece a PRTTa,
com 154 melhores solues, mas com atraso mdio
geral igual a 18.277,3. Uma justificativa pode ser a
falta de preciso das datas de entrega estimadas por
operao, que se torna crtica quando os problemas
crescem, o mesmo servindo para a MOD. Com relao
s instncias com 50 jobs ou mais, a DMA apresentou
o melhor desempenho, com atraso total mdio menor
em todas essas dimenses. Nota-se que as heursticas
baseadas em anteviso, DMA e PRTTa, conseguiram
menores mdias em sete das dez dimenses.
O tempo computacional das heursticas pode ser
considerado satisfatrio, pois cada uma consumiu
menos de cinco segundos para resolver todas as
Tabela1. Valores dos componentes das instncias geradas.
Componente

Valores utilizados

n
m

5, 10, 15, 30, 50, 100

|Oi|

U m / 2 , m

|Mj|

U
0,1 m , 0, 3 m ; U 0, 3 m , 0, 7 m ; U 0, 6 m , m

Mj

|Mj| mquinas sorteadas utilizando U[1, m]

tjk

U[1, 99], para uma mquina kMj; e U[tjk, min(3.


tjk, 99)], para as demais

Se n m, =(n/m)1/2, seno =1

di

5, 10, 15

4.2.2. Regras bsicas


Os resultados das heursticas construtivas bsicas
so apresentados na Tabela2. So chamadas bsicas
as heursticas que utilizam regras de prioridade
que no incorporam as estratgias de afinidade e
flexibilidade. Os valores de cada linha da Tabela2
equivalem a 60 instncias e esto estratificados pelas
dimenses nm. Para cada regra apresentada a

0,8 j =i1 t j ;1,0 j =i1 t j ;1,2 j =i1 t j ; CA

Figura1. Calibragem da regra DMA.

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

Tabela2. Comparao entre as regras bsicas.


Dimenso
(nm)
55
105
1010
1510
1515
3015
505
5010
5015
10010
Mdia (total)
Tempo total (s)

Atraso total mdio (nmero de melhores solues)


SPT

MST

SCR

EDD

MDD

MOD

PRTTa

DMA

190,0

231,6

229,1

208,5

205,0

190,0

190,7

205,0

(36)

(17)

(15)

(25)

(24)

(37)

(33)

(24)

715,5

842,5

722,8

645,2

639,7

708,2

629,8

640,4

(9)

(6)

(5)

(13)

(11)

(6)

(22)

(10)

593,4

662,4

655,4

668,3

663,4

593,7

595,9

669,3

(28)

(9)

(12)

(10)

(8)

(22)

(26)

(10)

1.108,9

1.222,3

1.123,6

1.099,4

1.099,5

1.086,0

966,6

1.118,3

(8)

(14)

(8)

(3)

(8)

(10)

(26)

(3)

1.201,1

1.346,3

1.314,9

1.277,3

1.282,7

1.227,3

1.192,5

1.284,9

(24)

(17)

(13)

(17)

(18)

(16)

(25)

(12)

5.383,2

5.786,2

4.645,9

4.056,5

4.082,7

4.948,3

4.324,4

4.085,7

(0)

(5)

(4)

(14)

(7)

(2)

(19)

(9)

25.883,2

29.293,6

22.506,9

21.915,2

21.526,4

27.471,7

25.230,1

21.468,1

(3)

(0)

(4)

(9)

(26)

(0)

(0)

(26)

22.187,1

25.302,1

17.806,6

16.598,1

16.390,9

22.976,4

20.386,8

16.312,5

(0)

(0)

(2)

(15)

(17)

(0)

(1)

(25)

19.077,3

23.936,4

16.209,0

14.331,0

14.284,3

19.647,6

17.698,6

14.075,0

(1)

(0)

(1)

(13)

(16)

(0)

(2)

(27)

118.898,5

123.230,3

89.425,6

87.544,1

87.643,4

123.985,4

111.557,4

86.953,4

(0)

(0)

(5)

(15)

(14)

(0)

(0)

(26)

19.523,8

21.185,4

15.464,0

14.834,3

14.781,8

20.283,5

18.277,3

14.681,3

(109)

(68)

(69)

(134)

(149)

(93)

(154)

(172)

3,5

3,6

3,9

3,8

3,8

3,8

4,0

4,5

600instncias. Alm disso, conforme esperado, as


regras que possuem anteviso, com provavelmente
maior nmero de operaes candidatas em cada
instante de avaliao, apresentaram um tempo
computacional levemente superior ao das regras
sem anteviso.

4.2.3. Regras com afinidade e flexibilidade


Identificadas as regras bsicas com os melhores
resultados, puderam ser propostas regras mais
elaboradas que utilizam EDD e MDD e que exploram
a afinidade e a flexibilidade. Num segundo momento,
constatou-se que a incluso da anteviso permitiria
melhorias que, apesar de modestas, no poderiam
ser desprezadas. O princpio o mesmo usado na
elaborao da DMA-AF, com a diferena de que
Ajk e Fj multiplicam, respectivamente, os valores
fornecidos pelas regras bsicas. As equaesda EDD
com Anteviso, Afinidade e Flexibilidade (EDD-AAF)
e da MDD com Anteviso, Afinidade e Flexibilidade
(MDD-AAF) so apresentadas a seguir:
EDD AAF (i, j, k, t ) = max(rj , t ) + A jk Fj di (23)
MDD AAF (i, j, k, t ) = max(rj , t ) + A jk Fj di ' (24)

A constante de penalizao foi fixada em


=m . 0,5 na EDD-AAF e em =m . 0,6 na MDD-AAF

e na DMA-AF. Os resultados obtidos com essas regras


esto na Tabela3.
possvel observar que a considerao da afinidade
e da flexibilidade das operaes permitiu que as regras
bsicas melhorassem consideravelmente seus resultados.
No caso da EDD-AAF e da MDD-AAF, a anteviso
tambm contribuiu. EDD-AAF e MDD-AAF conseguiram
melhor mdia de atraso total em quatro dimenses
cada e a DMA-AF, em duas. No geral, a EDD-AAF foi
a regra com melhores resultados, alcanando mdia
geral de atraso total igual a 10.810,2. Seguida pela
MDD-AAF, com mdia 10.898,7, e pela DMA-AF,
com 10.900,4. Para evidenciar a contribuio das
estratgias de afinidade e de flexibilidade preciso
mencionar que as verses sem anteviso da EDD-AAF
e da MDD-AAF obtiveram mdias de atraso total
iguais a 11.003,6 e 11.106,9, respectivamente. Ambos
os resultados so bastante inferiores aos das regras
EDD e MDD originais e mostram que a contribuio
das estratgias de explorao foi mais decisiva que a
contribuio da anteviso. Com relao ao nmero de
melhores resultados, a EDD-AAF alcanou a melhor
soluo em 389 ocasies. O tempo computacional
se manteve reduzido e nenhum mtodo ultrapassou
cinco segundos para resolver todo o conjunto de 600
instncias. As melhorias relativas obtidas pela incluso
das estratgias de afinidade e de flexibilidade, alm
da anteviso no caso da EDD-AAF e da MDD-AAF,

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

podem ser consultadas na Tabela4. Os valores so


obtidos por:
T Bsica T AF
% Dif =
100 (25)
Bsica
T

onde TAF representa o atraso total mdio de cada regra


com afinidade e flexibilidade e TBsica indica o atraso
total mdio de sua regra original correspondente.
Nota-se que utilizar o conhecimento a respeito
do problema permitiu que os resultados da DMA-AF
fossem, no geral, 25,75% melhores que os da DMA.
Com a MDD-AAF, a reduo geral de atraso foi de
26,27%. Na EDD-AAF, a explorao das caractersticas
do problema possibilitou as maiores melhorias,
chegando a 27,13% no geral. Observa-se que as
melhorias foram significativas em todas as dimenses
e atingiram, no mnimo, 8,50%. A maior melhoria
foi constatada com a EDD-AAF, na dimenso 5015,
sendo 38,97%. De modo geral, todas as regras
com afinidade e anteviso conseguiram as maiores
melhorias com as maiores dimenses. Essa constatao
interessante, pois exatamente nessas instncias
que reside a maior dificuldade dos mtodos de
resoluo. Isso ocorre especialmente com os mtodos
de melhoria, que passam a consumir muito tempo
de processamento quando muitos jobs ou mquinas
so envolvidos. Na Tabela5 esto as melhorias
alcanadas por tais regras em diferentes nveis mdios
de flexibilidade.
Nota-se claramente que melhorias ainda mais
significativas puderam ser alcanadas em nveis
de flexibilidade mais altos. Quanto maior o nvel
de flexibilidade, maior o nmero de mquinas
alternativas. Tambm maior o nmero de solues
possveis e mais complexa a resoluo do problema.
Dessa forma, a explorao da afinidade e da
flexibilidade foi capaz de distanciar os resultados
das regras bsicas e das regras com estratgias. Essa
tendncia foi a inversa da observada nos experimentos
de Baykasolu & zbakir (2010), quando as diferenas
entre as regras diminuram medida que a flexibilidade
aumentou.
A utilizao da afinidade e da flexibilidade tambm
permitiu diferentes melhorias com diferentes tipos
de data de entrega. Com as datas de entrega mais
apertadas, a melhoria da EDD-AAF sobre a EDD foi
de 21,08%. Com datas de entrega intermedirias, essa
melhoria foi de 26,99%. J com as maiores folgas
chegou a 34,40%. No subconjunto CA, a melhoria
foi igual a 31,17%.
Para aprimorar a comparao entre os mtodos
propostos utilizada uma tcnica de Dolan & Mor
(2002) denominada perfis de desempenho. Essa tcnica
usa uma representao compacta para comparao

rpida entre diferentes mtodos de resoluo. O


resultado obtido pelo mtodo s no problema p
comparado com o melhor resultado para esse problema
dentre os obtidos por cada um dos mtodos em anlise.
Assim usada uma relao de desempenho, dada por:
Tabela3. Resultados das heursticas construtivas com afinidade
e flexibilidade.
Dimenso
(nm)
55
105
1010
1510
1515
3015
505
5010
5015
10010
Mdia (total)
Tempo total (s)

Atraso total mdio


(nmero de melhores solues)
EDD-AAF

MDD-AAF

DMA-AF

187,7

183,3

187,6

(54)

(51)

(48)

554,7

543,6

546,8

(43)

(33)

(32)

587,2

585,1

585,7

(43)

(39)

(38)

866,1

876,1

881,4

(37)

(29)

(27)

1.130,1

1.101,9

1.103,9

(40)

(36)

(36)

2.750,6

2.816,4

2.825,8

(36)

(26)

(24)

17.355,3

17.266,9

17.248,7

(32)

(21)

(22)

11.242,6

11.168,6

11.142,6

(25)

(27)

(30)

8.746,2

8.806,9

8.839,0

(36)

(24)

(17)

64.681,6

65.638,3

65.642,4

(43)

(14)

(11)

10.810,2

10.898,7

10.900,4

(389)

(300)

(285)

4,2

4,6

4,4

Tabela4. Melhorias obtidas ao explorar afinidade e flexibilidade.


Dimenso
(nm)

%Dif
EDD-AAF

MDD-AAF

DMA-AF

55

9,98

10,60

8,50

105

14,02

15,02

14,61

1010

12,14

11,81

12,50

1510

21,22

20,32

21,18

1515

11,53

14,10

14,09

3015

32,19

31,02

30,84

505

20,81

19,79

19,65

5010

32,27

31,86

31,69

5015

38,97

38,35

37,20

10010

26,12

25,11

24,51

Geral

27,13

26,27

25,75

Tabela5. Melhorias obtidas em cada nvel mdio de flexibilidade.


%Dif

Nvel mdio de
flexibilidade

EDD-AAF

MDD-AAF

DMA-AF

20

13,42

13,04

12,43

50

34,36

33,41

33,12

80

34,65

33,19

32,54

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

p (s) =

f p (s)

min f p (s ) : s S

(26)

onde S o conjunto de mtodos. Ento pode ser


calculada a probabilidade s( ) de que a relao de
desempenho p(s) do mtodo s esteja limitada a um
fator , do seguinte modo:

{ p P :
( ) =
s

p (s )

(27)

onde |P| indica o nmero de elementos do conjunto


de problemas P. Desse modo, s: [0,1] uma
funo de distribuio acumulada que expressa o
desempenho relativo de s frente aos demais mtodos
na resoluo dos problemas de P. Assim, dado um
valor , s() indica a porcentagem de problemas de
P em que o mtodo s consegue obter soluo at
vezes pior que a melhor soluo alcanada. Com
=1, ponto inicial da curva, o valor de s() indica a
porcentagem de melhores solues do mtodo s. Se
para um determinado tem-se s()=1, significa
que em 100% dos problemas o mtodo s obtm
resultado, no mximo, vezes pior que o melhor
dos resultados. A Figura2 apresenta os perfis de
desempenho da EDD-AAF, mtodo com melhores
resultados, e da EDD, para que se possa avaliar o uso
das estratgias de afinidade e de flexibilidade. Para
evitar divises por zero foi adicionada uma unidade
a cada fp(s). Para permitir melhor visualizao o valor
de foi limitado a 5.
possvel observar a dominncia da regra que
utiliza as estratgias de afinidade e de flexibilidade
sobre a regra original. Considerando-se apenas essas

Figura2. Perfis de desempenho de EDD e EDD-AAF.

duas regras, a EDD-AAF obtm melhor soluo em


mais de 90% das instncias, extremo esquerdo da
curva. Ela tambm exerce dominncia sobre a EDD
at a extremidade direita do grfico. O desempenho
de MDD-AAF e DMA-AF, quando comparado ao de
MDD e DMA, respectivamente, similar.

4.2.4. Comparaes com resoluo exata


A avaliao final feita ao comparar os resultados
das regras com afinidade e flexibilidade com solues
timas ou limitantes superiores na Tabela6. Para isso,
o modelo matemtico da seo 2 foi implementado em
CPLEX 12.2 com limite de uma hora de processamento.
Nos casos em que o CPLEX no encontrou a soluo
tima, o limitante superior foi utilizado como atraso
total. O gap mdio obtido pela resoluo exata est
na terceira coluna, mas esse clculo exclui gaps
infinitos, casos em que o limitante inferior foi zero e
o superior foi maior que zero. Subconjuntos com gaps
infinitos excludos so identificados por . Tambm
so apresentados os tempos mdios de resoluo. A
tabelaenvolve apenas as dimenses para as quais
o CPLEX conseguiu obter limitantes superiores no
tempo estipulado.
Verifica-se que as heursticas apresentaram, na
mdia geral, melhores resultados que a resoluo
exata limitada a uma hora, apesar de atrasos mais
elevados nas trs menores dimenses. Esses atrasos
mais elevados se devem ao fato de o mtodo exato ter
alcanado 109 solues timas nessas trs dimenses.
Por outro lado, com a dimenso 1510, todas as
heursticas propostas tiveram, na mdia, melhor
desempenho que o CPLEX, o qual obteve oito solues
timas. Isso mostra como a complexidade do JSF torna
os mtodos heursticos mais vantajosos, mesmo com
dimenses no muito grandes. Nessa dimenso, as
heursticas obtiveram maior quantidade de melhores
solues que o CPLEX. Na dimenso 1515 o mtodo
exato, mesmo aps uma hora, no foi capaz de obter
limitantes superiores para 18 das 60 instncias do
subconjunto, indicando suas limitaes. Enquanto isso,
as heursticas resolveram at os problemas 10010
gastando, em mdia, menos de 35ms e mostrando que
so mais adequadas para problemas de grande porte.

Tabela6. Comparao entre resultados exatos e heursticos.


CPLEX

Dimenso
(nm)

Atraso total

gap (%)

EDD-AAF

MDD-AAF

DMA-AF

Tempo (s)

Atraso total

Tempo (s)

Atraso total

Tempo (s)

Atraso total

Tempo (s)

55

120,3

0,00

1,68

187,7

0,000

183,3

0,000

187,6

0,000

105

404,6

0,00

1.984,00

554,7

0,000

543,6

0,000

546,8

0,000

1010

550,8

603,51

3.053,41

587,2

0,001

585,1

0,001

585,7

0,001

1510

1.248,7

3.866,45

3.382,77

866,1

0,001

876,1

0,001

881,4

0,001

Mdia

581,1

1.117,49

2.049,88

548,9

0,001

547,0

0,001

550,4

0,001

Nota: Subconjunto com gaps infinitos excludos do clculo do gap mdio.

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

5. Concluses
Este trabalho props estratgias baseadas na
afinidade e na flexibilidade das operaes para
explorar caractersticas especficas do ambiente
JSF minimizando o atraso total. Essas estratgias
foram incorporadas a regras de prioridade clssicas
e propostas. As regras cumpriram seu propsito, pois
geraram solues factveis de qualidade aceitvel,
demandando tempo computacional reduzido. Entre
as regras que no exploram as caractersticas do JSF,
a regra proposta DMA conseguiu, em geral, melhor
desempenho que as demais. Essa superioridade ocorreu
especialmente nos problemas de maior porte.
Utilizar as estratgias de afinidade e de flexibilidade,
alm da anteviso, permitiu explorar caractersticas
especficas de cada problema e reduzir o atraso mdio
geral em at 27,13%, sem aumento significativo
do tempo computacional. A melhor regra proposta
conseguiu superar a melhor regra da literatura em
81% dos problemas. Isso deixa claro o quo vantajoso
pode ser utilizar conhecimento a respeito do problema.
Finalmente, os resultados envolvendo resoluo
exata indicaram que as regras e estratgias propostas
so capazes de gerar solues iniciais aceitveis com
rapidez. Tais solues podem servir de ponto de
partida para mtodos de melhoria mais sofisticados.

Referncias
Alvarez-Valdes, R., Fuertes, A., Tamarit, J., Gimnez, G., &
Ramos, R. (2005). A heuristic to schedule flexible jobshop in a grass factory. European Journal of Operational
Research, 165(2),525-534. http://dx.doi.org/10.1016/j.
ejor.2004.04.020
Baker, K. (1984). Sequencing rules and due-date assignments
in a job shop. Management Science, 30(9),1093-1104.
http://dx.doi.org/10.1287/mnsc.30.9.1093
Baker, K., & Bertrand, J. (1982). A dynamic priority
rule for scheduling against due-dates. Journal of
Operations Management, 3(1),37-42. http://dx.doi.
org/10.1016/0272-6963(82)90020-1
Baykasolu, A., & zbakir, L. (2010). Analyzing the effect of
dispatching rules on the scheduling performance through
grammar based flexible scheduling system. International
Journal Production Economics, 124(2),369-381. http://
dx.doi.org/10.1016/j.ijpe.2009.11.032
Brandimarte, P. (1993). Routing and scheduling in a
flexible job shop by tabu search. Annals of Operations
Research, 41(3),157-183. http://dx.doi.org/10.1007/
BF02023073
Brucker, P., & Schile, R. (1990). Job-shop scheduling with
multi-purpose machines. Computing, 45(4),369-375.
http://dx.doi.org/10.1007/BF02238804
Chan, F., Wong, T., & Chan, L. (2006). Flexible job-shop scheduling
problem under resource constraints. International Journal
of Production Research,44(11),2071-2089. http://dx.doi.
org/10.1080/00207540500386012
Chen, J., Chen, K., Wu, J., & Chen, C. (2008). A study of
the flexible job shop scheduling problem with parallel

machines and reentrant process. International Journal


of Advanced Manufacturing Technology, 39,344-354.
http://dx.doi.org/10.1007/s00170-007-1227-1
Dauzre-Prs, S., & Paulli, J. (1997). An integrated approach
for modeling and solving the general multiprocessor
job-shop scheduling problem using tabu search. Annals
of Operations Research, 70,281-306. http://dx.doi.
org/10.1023/A:1018930406487
Dolan, E., & Mor, J. (2002). Benchmarking optimization
software with performance profiles, Mathematical
programming,91(2),201-213. http://dx.doi.org/10.1007/
s101070100263
Fattahi, P., Mehrabad, M., & Jolai, F. (2007). Mathematical
modeling and heuristic approaches to flexible job
shop scheduling problems. Journal of Intelligent
Manufacturing,18,331-342. http://dx.doi.org/10.1007/
s10845-007-0026-8
Garey, M., Johnson, D., & Sethi, R. (1976). The complexity
of flowshop and jobshop Scheduling. Mathematics
of Operations Research, 1(2),117-129. http://dx.doi.
org/10.1287/moor.1.2.117
Gholami, M., & Zandieh, M. (2009). Integrating simulation
and genetic algorithm to schedule a dynamic flexible
job shop. Journal of Intelligent Manufacturing,20,481498. http://dx.doi.org/10.1007/s10845-008-0150-0
Gutirrez, C., & Garca-Magario, I. (2011). Modular design
of a hybrid genetic algorithm for a flexible job-shop
scheduling problem. Knowledge-Based Systems,24,102112. http://dx.doi.org/10.1016/j.knosys.2010.07.010
Ho, N., Tay, J., & Lai, E. (2006). An effective architecture
for learning and evolving flexible job-shop schedules.
European Journal of Operational Research, 179,316333. http://dx.doi.org/10.1016/j.ejor.2006.04.007
Kacem, I., Hammadi, S., & Borne, P. (2002). Approach
by localization and multiobjective evolutionary
optimization for flexible job-shop scheduling
problems. IEEE Transactions on Systems, Man, and
Cybernetics,32(1),1-13.
Kim, Y. (1995). A backward approach in list scheduling
algorithms for multi-machine tardiness problems.
Computers & Operations Research,22(3),307-319.
http://dx.doi.org/10.1016/0305-0548(94)E0019-4
Koulamas, C. (1994). The total tardiness problem: review
and extensions. Operations Research, 42(6),1025-1041.
http://dx.doi.org/10.1287/opre.42.6.1025
Li, J., Pan, Q., & Liang, Y. (2010). An effective hybrid
tabu search algorithm for multi-objective flexible jobshop scheduling problems. Computers & Industrial
Engineering, 59,647-662. http://dx.doi.org/10.1016/j.
cie.2010.07.014
Mainieri, G., & Ronconi, D. (2013). New heuristics for
total tardiness minimization in a flexible flowshop.
Optimization Letters, 7(4),665-684. http://dx.doi.
org/10.1007/s11590-012-0448-x
zgven, C., zbakir, L., & Yavuz, Y. (2010). Mathematical
models for job-shop scheduling problems with routing
and process plan flexibility. Applied Mathematical
Modelling, 34,1539-1548. http://dx.doi.org/10.1016/j.
apm.2009.09.002
Panwalkar, S., & Iskander, W. (1977). A survey of scheduling
rules. Operations Research, 25(1),45-61. http://dx.doi.
org/10.1287/opre.25.1.45

Melo, E. L.etal.
Regras de prioridade eficientes ... minimizao do atraso total. Production, v. xx, n. x, p. xx-xx, xxx/xxx, xxxx

Pezzella, F., Morganti, G., & Ciaschetti, G. (2008). A genetic


algorithm for the flexible job-shop scheduling problem.
Computers & Operations Research, 35(10),3201-3212.
http://dx.doi.org/10.1016/j.cor.2007.02.014
Scrich, C. (1997). Busca Tabu para a programao de tarefas
em job shop com datas de entrega (Tese de doutorado).
Universidade Estadual de Campinas, Campinas.
Scrich, C., Armentano, V., & Laguna, M. (2004). Tardiness
minimization in a flexible job shop: A tabu search approach.
Journal of Intelligent Manufacturing,15,103-115. http://
dx.doi.org/10.1023/B:JIMS.0000010078.30713.e9
Taillard, E. (1993). Benchmarks for basic scheduling problems.
European Journal of Operational Research, 64(2),278285. http://dx.doi.org/10.1016/0377-2217(93)90182-M
Tay, J., & Ho, N. (2008). Evolving dispatching rules using
genetic programming for solving multi-objective
flexible job-shop problems. Computers & Industrial
Engineering, 54,453-473. http://dx.doi.org/10.1016/j.
cie.2007.08.008
Vepsalainen, A., & Morton, T. (1987). Priority rules for
job shop with weighted tardiness costs. Management
Science, 33(8),1035-1047. http://dx.doi.org/10.1287/
mnsc.33.8.1035
Vilcot, G., & Billaut, J. (2008). A tabu search and a genetic
algorithm for solving a bicriteria general job shop

Abstract

scheduling problem. European Journal of Operational


Research, 190,398-411. http://dx.doi.org/10.1016/j.
ejor.2007.06.039
Zhang, G.,Shao, X., Li, P., & Gao, L. (2009). An effective
hybrid particle swarm optimization algorithm for
multi-objective flexible job-shop scheduling problem.
Computers & Industrial Engineering, 56,1309-1318.
http://dx.doi.org/10.1016/j.cie.2008.07.021
Zhang, H., & Gen, M. (2005). Multistage-based genetic
algorithm for flexible job-shop scheduling problem.
Complexity International,11,223-232.

Agradecimentos
Os autores so gratos aos revisores annimos pelos
seus teis comentrios e sugestes. Esta pesquisa teve
o apoio financeiro da Coordenao de Aperfeioamento
de Pessoal de Nvel Superior (CAPES), do Conselho
Nacional de Desenvolvimento Cientfico e Tecnolgico
(CNPq Processo 477203/2012-4) e da Fundao de
Amparo Pesquisa do Estado de So Paulo (FAPESP
Processos 2010/10133-0 e 2013/07375-0).

Efficient priority rules that explore flexible job shop


characteristics for minimizing total tardiness

This paper presents heuristic strategies that exploit characteristics of the Flexible Job Shop (FJS) environment, an
extended version of the NP-hard job-shop problem. The FJS involves a set of jobs composed of operations, and each
operation must be processed on a machine that can process it. The criterion is the minimization of total tardiness.
Initially, characteristics related to the production system flexibility or, more precisely, characteristics related to the
machines that can process each operation and the machines processing times are identified. Therefore, rules that
explore these characteristics and foresee future states of the system are proposed. Computational experiments are
conducted with 600 instances. Comparisons with rules from the literature show that the best heuristic proposed
outperforms the best known rule in approximately 81 percent of instances.

keywords
Job shop. Heuristic. Mathematical programming. Production scheduling.

Você também pode gostar