• Nenhum resultado encontrado

Em ambientes reais, os fabricantes não costumam estipular uma data de término sugerida para uma tarefa específica; ao invés disso, eles possuem datas pré-definidas ou previs- tas em que suas tarefas devem ser finalizadas, um exemplo seria as tarefas que devem ser entregues no final de cada dia de trabalho cuja antecipação é definida como a dife- rença entre o tempo de entrega e o tempo de completude (Cj) dessa tarefa [Yan00]. A

Figura 3.2 mostra onde é possível obter o valor de antecipação de uma tarefa na linha do tempo. Observa-se que após a data de término sugerida dj, o valor de antecipação é nulo

mas, antes desta data de término sugerida, o valor de antecipação é monotonicamente de- crescente. A Tabela 3.2 apresenta uma classificação dos problemas de escalonamento de tarefas com antecipação investigados nesta seção.

Tabela 3.1: Classificação dos problemas de escalonamento com atraso de tarefas.

Ambiente Problemas Estratégias de resolução Referências

1

1|STsd| ∑ Tj, onde STsd

refere-se ao tempo de preparação dependente da sequência

Recozimento simulado Tan e Nara-

simhan [TN97]

1|STsd| ∑ Tj Branch-and-bound, simulated annea-

ling, algoritmo genético e técnica de troca de pares (pairwise interchange)

Tan et al. [TNRR00]

1|si j| ∑ Tj Branch-and-bound Lu e Chu [LC06]

1|| ∑ wjTj Branch-and-bound Babu [BPP04], Wo-

decki [Wod08]

1|STsd| ∑ Tj Algoritmo genético França et al. [FMM01]

1|si j| ∑ wjTj GRASP com reconexão de caminhos

e busca local

Gupta e Smith [GS06]

1|| ∑ wjTj Algoritmo genético Liu et al. [LAR05]

1|| ∑ Tj Algoritmo genético Demirel et

al. [DOcDT11]

1|si j| ∑ wjTj Recozimento simulado, algoritmo ge-

nético, busca local e algoritmo gené- tico com busca local

Feili [FHG12]

1|STsd| ∑ Tj Busca local multi-start Mendes et

al. [MFM02]

1|rj, pj= p, pmtn| ∑ Tj Técnica de decomposição Tian et al. [TNC06]

1|| ∑ wjTj Método de busca dynasearch Grosso et.

al. [GDCT04]

1|| ∑ wjTj Lista sequencial de busca local base-

ada em movimentos GPI, com critério de desempate

Rodrigues et

al. [dFPUP08]

1|rj, pj= p| ∑jTj Programação Dinâmica Baptiste [Bap00]

1|rj| ∑ wjTj Programação dinâmica Tanaka e Fuji-

kuma [TF11]

P

P||1 n∑

m

k=1T(Sk) Busca tabu Armentano e Ya-

mashita [AY00]

P|| ∑ wjTj ILS com técnicas de busca em vizi-

nhança de grande porte (VLNS)

Croce et al. [CGG12]

P|| ∑ wjTj Lista sequencial de busca local base-

ada em movimentos GPI, com critério de desempate

Rodrigues et

al. [dFPUP08]

P|| ∑ wjTj Algoritmo branch-cut-and-price Pessoa et

al. [PUPdF10]

Q

Q|pj= 1| ∑ Tj Algoritmo de troca de argumentos Dessouky et

al. [DLLvdV90]

Q|pj= p, pmtn| ∑ Tj Algoritmo de tempo polinomial Kravchenko e Wer-

ner [KW09]

Q|pj= 1| ∑ wjTj Algoritmo de tempo polinomial Dourado et

al. [DdFS10]

R

Rm|rj| ∑nj=1wjTj =

∑nj=1wj(Cj− dj)+, onde

MPé múltiplas máquinas

Heurística baseada em decomposi- ção e busca em vizinhança variável (VNS)

Bilyk e

E > 0j

d

j

...

E = 0j

...

Figura 3.2: Definição do valor de antecipação na linha do tempo.

Cheng et al. [CGK96] estudaram o problema de escalonamento em lotes (batches), onde as tarefas em um lote são entregues ao cliente juntamente com o tempo de com- pletude da última tarefa no lote, a antecipação dessa tarefa é definida como a diferença entre o tempo de entrega do lote, em que essa tarefa está inserida, e o seu tempo de com- pletude. A abordagem utilizada foi a de programação dinâmica para o escalonamento de máquinas paralelas e uma abordagem semelhante foi considerada para o problema de escalonamento em lotes para o ambiente monoprocessado.

Gordon e Strusevich [GS99] consideraram o ambiente monoprocessado com datas de término sugeridas e problemas de escalonamento com n tarefas em que as datas de término sugeridas são obtidas a partir de tempos de processamento com folgas q (slack due dates). Eles fazem uma consideração para as seguintes funções objetivo (importantes para o escalonamento e controle de aplicações): antecipação ponderada ∑nj=1wjEj, onde

wj é um dado peso da tarefa j que indica sua relativa importância e; antecipação com ponderações exponenciais ∑nj=1wjexp(γEj), onde γ 6= 0.

Koksalan et al. [KAK98] consideraram o problema de escalonamento bicritério, con- siderando a minimização do tempo de fluxo e máxima antecipação de tarefas em ambiente monoprocessado, eles desenvolveram uma heurística para gerar sequências eficientes para o caso em que as máquinas podem possuir tempo ocioso e também fizeram considerações para casos sem tempo ocioso (um resumo sobre problemas de escalonamento que permi- tem ou não tempo ocioso é feito na seção 3.3.1).

Um caso de problemas de escalonamento com entrega em lotes e penalidades de ante- cipação foi estudado por Yang [Yan00], onde foram considerados os problemas de escalo- namento que minimizam dois tipos de penalidades de antecipação. No primeiro problema, o objetivo é achar uma sequência ótima tal que o tempo obtido no somatório das anteci- pações ponderadas seja mínimo. No segundo problema, o objetivo é achar uma sequência ótima tal que o valor obtido no somatório das antecipações ponderadas seja mínimo.

Pathumnakul e Egbelu [PE05] propuseram uma heurística para minimizar a antecipa- ção ponderada de tarefas sujeitas a uma data máxima de término (deadlines) em ambiente monoprocessado, baseada em condições locais de otimalidade. A heurística começa esca- lonando cada tarefa de modo que o seu tempo de completude coincida com o seu deadline. A solução obtida é conhecida como solução ideal. Se não houver conflito de execução entre as tarefas em uma máquina, isto é, se não houver sobreposição entre os tempos nos quais as tarefas deveriam estar sendo executadas, a solução obtida é ótima, senão a solução obtida é infactível. A heurística trabalha nestes conflitos até que não seja mais possível melhorar a solução. Os autores apresentam resultados para 10, 15, 20, 25 e 30 tarefas, sendo que só foi obtido o ótimo para 10 e 15.

Um algoritmo branch-and-bound foi proposto por Wu e Lee [WL06] para a minimiza- ção do tempo de preparação e da antecipação das tarefas em ambiente monoprocessado, onde o problema abordado consiste em várias tarefas que são agrupadas vários grupos (esses grupos representam um determinado pedido de um cliente). O tempo de prepara- ção é utilizado somente quando uma tarefa muda de um grupo de tarefas para outro, o algoritmo branch-and-bound foi capaz de prover uma solução ótima para instâncias de somente 12, 15 e 18 tarefas. Outro algoritmo branch-and-bound também foi proposto por Yin et al. [YWW+12] juntamente com o algoritmo de Recozimento Simulado, que é utilizado para gerar uma solução inicial para o algoritmo, o algoritmo branch-and-bound proposto é capaz de resolver instâncias do problema de até 28 tarefas.

Zhao e Tang [ZT07] consideraram o problema de escalonamento em ambiente mono- processado com efeitos tardios, eles propuseram soluções polinomiais para a minimização do problema de makespan (momento em que termina a execução da última tarefa), o pro- blema de minimização da soma dos tempos de completude e a soma de tarefas antecipadas ponderadas.

Documentos relacionados