Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Programa:
Introdução;
Sequenciamento numa única máquina;
Sequenciamento em máquinas paralelas;
Problemas de shop scheduling;
Extensões;
Sequenciamento de Tarefas
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 1
Introdução
Problemas de sequenciamento/escalonamento de tarefas
Afectação óptima de recursos
escassos a actividades ou tarefas
ao longo do tempo.
São processos de decisão em que se pretende
optimizar um ou mais objectivos.
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 2
‘Recursos’
Máquinas num processo de fabrico;
Pistas de um aeroporto;
Equipas de trabalho numa obra de construção civil;
Unidades de processamento num sistema de
computadores;
Etc…
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 3
Actividades ou tarefas
Operações de um processo de fabrico;
Levantamento e aterragem de aviões;
Fases de uma obra de construção civil;
Execução de programas de computador;
Etc…
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 4
Objectivos
Minimização do instante de conclusão da última
actividade/tarefa;
Minimização do número de tarefas finalizadas depois
de determinada data previamente estabelecida;
Etc…
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 5
Áreas de aplicação
Sistemas de produção;
Indústrias de transformação;
Indústria automóvel;
Computação (sistemas operativos, escalonamento em
computador);
Serviços (hospitais, escolas, universidades);
Empresas de aviação;
Empresas de transporte;
…
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 6
Sequenciamento dos trabalhos (fotografias, recolha de
informação, etc) a efectuar por um satélite,
Escalonamento da produção numa fábrica de
automóveis;
Escalonamento da carga / descarga de barcos da
marinha mercante num porto;
Escalonamento das revisões de rotina dos aviões;
Sequenciamento do correio a ser distribuído pelos
carteiros.
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 7
Extensões
Problemas de horários escolares;
Problemas de turnos em hospitais;
Sistemas de produção flexíveis;
Sistemas de produção Just-in-Time (JIT);
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 8
n tarefas J={J1, J2, ..., Jn}
m processadores/máquinas M={M1, M2, ..., Mm}
As tarefas terão de ser processadas pelas máquinas durante um
certo tempo, e respeitando um certo conjunto de restrições.
Determinar, para cada processador, a ordem ou sequência na qual
se deve processar as tarefas que o devem usar, de forma a respeitar
as restrições optimizando um certo critério de optimalidade
(medida de performance.)
Objectivo
Introdução – formalização e suposições
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 9
Restrições
Precedência entre as tarefas;
Não interrupção do processamento;
Etc...
Medidas de performance
Instante de conclusão do processamento de todos os trabalhos;
Tempo médio de permanência no sistema;
Atraso máximo;
Número de tarefas atrasadas;
Etc...
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 10
Suposições
Cada processador/máquina não pode processar mais de uma tarefa
ao mesmo tempo ou seja, as máquinas têm capacidade limitada;
Cada tarefa, quanto muito, pode estar a ser processada num único
processador, ou seja, diferentes processadores não podem processar
a mesma tarefa ao mesmo tempo.
Etc…
Todos os dados são conhecidos à partida;
Todos os dados são determinísticos;
Problemas determinísticos de sequenciamento/ escalonamento
(‘Deterministic Machine Scheduling’)
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 11
Existem problemas onde se relaxam estas suposiões
(Extensões)
Planeamento de projectos;
Problemas estocásticos;
Problemas multi-critério;
Etc...
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 12
Exemplo: 3 máquinas / 4 tarefas
Cada tarefa 3 operações
2 3 3
2 4 2
4 3 3
3 5 3
Tarefa 2:
Tarefa 3:
Tarefa 4:
Tarefa 1:
Tempos de processamento
M1 M2 M3
M3
M2
M1
momento de conclusão
Uma solução admissível...
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 13
Técnicas de resolução
Métodos exactos
Métodos heurísticos
Algoritmos específicos (essencialmente para problemas polinomiais);
Métodos de branch-and-bound;
Programação Dinâmica;
Programação por restrições (constraint programming).
Heurísticas construtivas (especificamente desenvolvidas para cada problema);
Heurísticas de Melhoramento (Pesquisa Local, Simulated Annealing, Pesquisa Tabu, Algoritmos Genéticos, etc).
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 14
Um problema pode ser caracterizado pelo tipo de processamento
ou pelo tipo de disciplina utilizada no processamento.
• Máquinas paralelas
Todas as máquinas realizam o mesmo tipo de funções.
Tipo de máquinas:
- Idênticas
Todas as máquinas têm iguais velocidades de processamento.
- Uniformes
Cada máquina tem uma certa velocidade de processamento, que é constante.
- Não relacionadas
O tempo de processamento depende da máquina e da tarefa.
• Uma única máquina
Tipo de processamento
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 15
Máquinas dedicadas (Shop scheduling)
Cada máquina tem uma função especializada.
Cada tarefa é processada por todas as máquinas seguindo uma certa ordem, designada por disciplina.
Disciplina:
Open-shop
A ordem não é fixa, ou seja é indiferente a ordem pela qual as tarefas são processadas nas máquinas.
Flow-shop
A ordem é fixa e igual para todas as tarefas.
Job-shop
A ordem é fixa e não necessariamente igual.
Tipo de disciplina
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 16
O processamento de uma tarefa não pode ser cancelado nem repetido. Poderá ser interrompido ou não;
A uma tarefa é permitido esperar para que a máquina/processador
requerido a seguir fique disponível. Não há limite para o número de tarefas que aguardam processamento;
Cada operação Oij terá de ser processada numa máquina específica, mij, por
um determinado tempo, pij;
Duas operações consecutivas de uma mesma tarefa são processadas em
máquinas diferentes, ou seja mijmi+1,j;
Uma tarefa Jj é composta por um conjunto de operações Oij, i=1,...,mj;
Problema de escalonamento:
Cada tarefa encontra-se disponível para processamento a partir de um dado instante e não se consideram atrasos;
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 17
Introdução – algumas definições e notação
rj: data de disponibilidade da tarefa Jj;
dj: prazo para a conclusão da tarefa Jj;
Podem existir penalizações no caso de este prazo não ser cumprido;
Em alguns problemas os prazos de conclusão estão associados a “tempos de entrega”.
wj: peso da importância da tarefa Jj;
Usualmente, associado a critérios de optimalidade.
Cj : data de conclusão do processamento da tarefa Jj;
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 18
Introdução – algumas definições e notação
Lj : atraso da tarefa Jj;
Lj = Cj - dj
Tj : ‘tardeza’ da tarefa Jj;
Tj = max {Lj,0}
Uj : penalização tarefa Jj;
Fj : tempo de permanência da tarefa Jj no sistema;
Fj = Cj - rj
contrário casoj
dj
C se
1
0U
j
nT : Número de tarefas com ‘tardeza’ positiva;
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 19
Introdução – esquema de classificação
Os problemas de sequenciamento / escalonamento
serão classificados de acordo com os três parâmetros:
a / b / g
a: Caracteriza os processadores;
b: Caracteriza as tarefas;
g: Especifica critério de optimalidade.
a1 a2 b1 b2 b3 b4 b5
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 20
Parâmetro a (processadores)
a1
processadores paralelos idênticos. P
Ou seja, o tempo de processamento de uma tarefa depende da tarefa e da velocidade do processador si (pij=pj /si no processador Mi).
(não está presente) ø Uma única máquina
Todos os processadores têm a mesma velocidade de operação ou seja, o tempo de processamento de uma tarefa apenas depende da tarefa ou seja (pij=pj para todos os Mi).
Q processadores paralelos uniformes. Cada processador tem um velocidade diferente e constante .
processadores paralelos não relacionados. Cada processador tem um velocidade diferente e dependente da tarefa.
R
Ou seja, o tempo de processamento de uma tarefa depende da tarefa e da velocidade do processador sij, que depende da tarefa a processar (pij=pj /sij no processador Mi).
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 21
A ordem de processamento das operações de uma tarefa não é fixa, ou seja é indiferente a ordem pela qual as operações são processadas nas máquinas.
O processadores dedicados, open-shop.
A ordem de processamento das operações de uma tarefa é fixa e idêntica para todas as tarefas.
F processadores dedicados, flow-shop.
Por exemplo, as primeiras operações de todas as tarefas são processadas pela máquina M1, as segundas pela a M2, e assim sucessivamente.
A ordem de processamento das operações de uma tarefa é fixa mas não necessariamente idêntica para todas as tarefas
J processadores dedicados, job-shop.
a2 m Número de processadores.
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 22
ø Não é permitido interromper o processamento de uma tarefa ou operação.
b1 interrupção
b2 relações de precedência Uma relação de precedência entre tarefas pode ser representada por um grafo acíclico em que cada vértice está associado a uma tarefa. Se existir um caminho entre Ji e Jk, i.e. Ji < Jk, então Jk só pode ser processado quando o processamento da tarefa Ji estiver terminado.
O grafo que representa as relações de precedência é uma árvore orientada.
tree
ø Não existem.
É permitido interromper o processamento de uma tarefa ou operação, que pode recomeçar mais tarde.
pmtn (preemption)
Parâmetro b (tarefas)
O grafo que representa as relações de precedência é uma cadeia de tarefas.
chains
O grafo é geral. prec Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 23
b3 datas de disponibilidade
As datas de disponibilidade são iguais para todas as tarefas. ø
As datas de disponibilidade diferem de tarefa para tarefa. rj
b4 tempos de processamento
Valores arbitrários. ø
Os tempos de processamento são unitários. pij=1
b5 prazos de conclusão
Os prazos de conclusão são iguais para todas as tarefas. ø
Os prazos de conclusão diferem de tarefa para tarefa. dj
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 24
... outros sub-campos podem ser incluídos
Não pode haver tarefas à espera de uma máquina. no-wait
Por exemplo,
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 25
Parâmetro g (critério de optimalidade)
fj tarefa j Medida: Cj, Fj, Tj, ...
(Maior atraso, maior data de conclusão,...)
n
j 1
jfn
1f
j
,...,njff
1max max
,fw1
jj
n
j
n
j 1
j 1w
(Por exemplo, instante médio de conclusão das tarefas)
(Por exemplo, média ponderada do tempo de permanência no sistema)
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 26
Esquema de classificação: exemplos
Problema de escalonamento numa única máquina em que se pretende minimizar o maior dos atrasos. Há precedências entre as tarefas
1/prec,dj/Lmax
Problema de escalonamento em 4 máquinas dedicadas com disciplina job-shop (job-shop scheduling). O objectivo é determinar o escalonamento que minimiza a maior data de conclusão.
J4/pij=1/Cmax
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 27
Problema de sequenciamento numa única máquina com diferentes datas de disponibilidade para as tarefas. Pretende-se minimizar a maior das datas de conclusão.
1/rj/Cmax
Problema de escalonamento de tarefas em máquinas paralelas não relacionadas, onde se permite a interrupção do processamento das tarefas e se pretende minimizar o instante médio de conclusão.
R/pmtn/
n
j
jCn 1
1
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 28
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 29
Introdução – medidas de performance regulares
Medida de performance regular
Medida não decrescente nos tempos de conclusão das tarefas
'
11 CC
'
22 CC
'
nn CC
),,,(),,,( ''
2
'
121 nn CCCfCCCf
Exemplos: maxC C maxL L maxT T etc...
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 30
Introdução – medidas de performance equivalentes
Medidas de performance equivalentes
Qualquer solução óptima relativamente a uma das medidas (critério de optimalidade) também é óptima relativamente à outra.
Exemplos:
n
j
jC1
n
j
jF1
n
j
jL1
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 31
Introdução – soluções
Solução de um problema de escalonamento
Afectação das tarefas ou operações às máquinas (no caso de haver processamento paralelo);
Sequenciamento das tarefas ou operações processadas pela mesma máquina;
Determinação das datas de início ou datas de conclusão de cada tarefa ou operação na máquina em que é processada;
Indicação da possibilidade (ou não) de interrupção do processamento de cada tarefa;
Determinação do valor da função objectivo;
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 32
4 9 14 16 19 22
Um problema de sequencia-mento numa única máquina
Representação de uma solução Diagrama
de Gantt
Introdução – soluções
M3
M2
M1 Um problema de job-shop
0 2 10
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 33
Problemas ‘fáceis’ com uma máquina
Escalonamento óptimo Regra SPT (Smith, W.E. [1956])
(Shortest Processing Time)
As tarefas são sequenciadas por ordem não decrescente dos tempos de processamento
Tarefa (j) 1 2 3 4 5 6 7
pj 6 4 8 3 2 7 1
Solução óptima: 7 5 4 2 1 6 3
0 1 3 6 10 16 23 31
Exemplo
_ 1 90
16 10 31 6 3 23 17 7
F
1//F
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 34
Problemas ‘fáceis’ com uma máquina
Escalonamento óptimo Regra SPT (Smith, W.E. [1956])
(Shortest Processing Time) Demonstração:
Seja S um escalonamento que não verifica a regra SPT.
Por S não obedecer à regra SPT existe pelo menos um k tal que pj(k) > pj(k+1).
Designe j(l) a l-ésima tarefa da sequência.
j(1) j(2) j(n) ... S j(k) j(k+1) ...
Considere-se o seguinte escalonamento S’:
j(1) j(2) j(n) ... S’ j(k+1) j(k) ...
1
1
)(
k
l
ljpa Tempo que a tarefa j(k) espera em S Tempo que a tarefa j(k+1) espera em S’
Os tempos se permanência no sistema só se alteram para as tarefas j(k) e j(k+1)
1//F
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 35
Problemas ‘fáceis’ com uma máquina
)()( kjkj paF Tempo de permanência no sistema da tarefa j(k) de acordo com a sequência S
)1()()1( kjkjkj ppaFTempo de permanência no sistema da tarefa j(k+1) de acordo com a sequência S
)()1()('
kjkjkj ppaF Tempo de permanência no sistema da tarefa j(k) de acordo com a sequência S’
)1()1('
kjkj paF Tempo de permanência no sistema da tarefa j(k+1) de acordo com a sequência S’
F Tempo médio de permanência no sistema associado à sequência S 'F Tempo médio de permanência no sistema associado à sequência S’
)1()()()1()(
11kjkjkjkjkj ppapa
nFF
n
'
)1(
'
)()1()()1(
11 kjkjkjkjkj FF
nppapa
nContribuição de j(k) e j(k+1) para F
Contribuição de j(k) e j(k+1) para 'F
Donde 'FF
Assim S não pode ser o escalonamento óptimo!
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 36
Problemas ‘fáceis’ com uma máquina
1//S wjCj
Escalonamento óptimo Generalização da regra SPT
(Smith, W. E. [1956])
As tarefas são sequenciadas por ordem não decrescente dos quocientes pj/wj
Exemplo
1 2 4 1 1 3 3 202 x 31 x 7 x 15 x 25 x 3 x 22 x 1
15 15 15 15 15 15 15 15j j
j
C
Tarefa (j) 1 2 3 4 5 6 7
pj 6 4 8 3 2 7 1
wj 1/15 2/15 4/15 1/15 1/15 3/15 3/15
pj/wj 90 30 30 45 30 35 5
Solução óptima: 7 5 4 2 1 6 3
0 1 3 7 15 22 25 31
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 37
Problemas ‘fáceis’ com uma máquina
1//Lmax
As tarefas são sequenciadas por ordem não decrescente dos prazos de conclusão
Exemplo
Escalonamento óptimo Regra EDD (Jackson, J. R. [1955])
(Earliest due date)
Tarefa (j) 1 2 3 4 5 6
pj 1 1 2 4 1 3
dj 7 3 8 12 9 3
Solução óptima: 2 6 3
0 1 4 5 7 12
1 5 4
8
Lmax=1 Tmax=1
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 38
1/rj,pj=1/Lmax
Em cada instante é escalonada a tarefa disponível com menor prazo de conclusão
Tarefa (j) 1 2 3 4 5 6
rj 0 0 3 3 5 5
dj 3 1 4 4 7 6
Exemplo
Escalonamento óptimo Extensão da Regra EDD (Horn [1974])
Solução óptima: Lmax=1
2 6 3
0 1 4 5 7
1 5 4
2 3 6
Problemas ‘fáceis’ com uma máquina
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 39
Problemas ‘fáceis’ com uma máquina
1/pmtn,rj/Lmax
Em cada instante é escalonada a tarefa disponível com menor prazo de conclusão
Tarefa (j) 1 2 3 4 5 6
pj 5 4 2 1 2 3
rj 0 1 3 3 6 5
dj 10 6 5 4 9 12
Exemplo
Escalonamento óptimo Extensão da Regra EDD (Horn [1974])
Solução óptima: Lmax=5 1 3
0 1 4 5 7
2 4
2 3 6
2
8 9 10
5
12 14
1
16 18
6
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 40
Problemas ‘fáceis’ com uma máquina
1/rj/Cmax
As tarefas são sequenciadas por ordem não decrescente das datas de disponibilidade
Tarefa (j) 1 2 3 4 5 6 7 8 9 10
pj 1 2 1 4 3 1 1 3 1 2
rj 14 13 0 3 5 5 15 14 0 13
Exemplo
Escalonamento óptimo Regra ERD (Earliest release date)
Solução óptima: 3 9 4 6
0 1 2 7 15 22
5
10 11 13
2
16
10 8
18 21
7 Cmax=22 1
3
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 41
Problemas ‘fáceis’ com uma máquina
1/pj=1/Sfj
fj(k): custo de escalonar a tarefa j na k-ésima posição
Independente do escalonamento das restantes tarefas
O problema reduz-se à determinação da permutação p, do
conjunto {1,2,...,n}, que minimiza Sj fj(p(j))
Problema de afectação - (Algoritmo Húngaro O(n3))
contrário caso0
realizadaser a ésima-k a é j tarefaa se1jkx
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 42
Problemas ‘fáceis’ com uma máquina
1/prec/fmax • Relações de precedência arbitrárias;
• fmax = max{f1,…,fn} - Medida de performance regular;
fj(Cj): ‘Custo’ de processamento da tarefa j se esta terminar no instante Cj (não decrescente em Cj)
Algoritmo de Lawler [1973]
N = {J1,...,Jn} // tarefas
k n // número de tarefas por escalonar
t pj
L tarefas de N que não precedem qualquer outra
Enquanto (k>0)
Escalonar Jl na posição k
N N\{Jl};
t t - pl
k k-1
Actualizar L
Jl tarefa tal que fl(t) = min {fi(t), iL}
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 43
Tarefa (j) 1 2 3 4 5 6
pj 2 3 4 3 2 1
dj 3 6 9 7 11 7
Exemplo (1/prec/Lmax)
Precedências: 1 2 3 4
5
6 Aplicação do algoritmo de Lawler
Determinação da 6ª tarefa a ser executada:
L={J3,J5,J6} // tarefas que não precedem outras
min{(15-9),(15-11),(15-7)}=15-11 // Atraso mínimo em L
t = 2+3+4+3+2+1 = 15 // Instante de conclusão das 6 tarefas
l = 5 // A tarefa J5 vai ser a 6ª a ser processada
15
5
13
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 44
Determinação da 5ª tarefa a ser executada:
L={J3,J6} // tarefas que não precedem outras
min{(13-9),(13-7)}=13-9 // Atraso mínimo em L
t = 15 - 2 = 13 // Instante de conclusão das 5 primeiras tarefas
l = 3 // A tarefa J3 vai ser a 5ª tarefa a ser processada
15
5
13 9
3
Determinação da 4ª tarefa a ser executada:
L={J2,J6} // tarefas que não precedem outras
min{(9-6),(9-7)}=9-7 // Atraso mínimo em L
t = 13 - 4 = 9 // Instante de conclusão das 4 primeiras tarefas
l = 6 // A tarefa J6 vai ser a 4ª tarefa a ser processada
15
5
13 9
3 6
8
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 45
Determinação da 3ª tarefa a ser executada:
L={J2,J4} // tarefas que não precedem outras
min{(8-6),(8-7)}=8-7 // Atraso mínimo em L
t = 9 - 1 = 8 // Instante de conclusão das 3 primeiras tarefas
l = 4 // A tarefa J4 vai ser a 3ª tarefa a ser processada
15
5
13 9
3 6
8
4
5
Determinação da 2ª tarefa a ser executada:
L={J2} // tarefas que não precedem outras
min{(5-6)}=-1 // Atraso mínimo em L
t = 8 - 3 = 5 // Instante de conclusão das 2 primeiras tarefas
l = 2 // A tarefa J2 vai ser a 2ª tarefa a ser processada
15
5
13 9
3 6
8
4
5
2
2
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 46
Determinação da 1ª tarefa a ser executada:
L={J1} // tarefas que não precedem outras
l = 1 // A tarefa J1 vai ser a 1ª tarefa a ser processada
15
5
13 9
3 6
8
4
5
2
2 0
1
J2 E E E E -1 * 5
J4 E E 1 E 2 * 8
J6 2 E * E 3 * 9
J3 6 E * 4 * * 13
J5 8 4 * 6 * * 15
J1 E E E E E -1 2
Tarefas escalonadas J6 J5 J4 J3 J2 J1 t
Síntese:
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 47
1/rj/L’max NP-hard
Algoritmos exactos Heurísticas
Schrage [1971] Carlier [1982]
Problemas ‘difíceis’ com uma máquina 1/rj /
'
maxL
qj: tempo de entrega da tarefa j
'
maxL = max {L’1,…,L’
n}
L’j = Cj+qj
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 48
Ideia: escalonar em primeiro lugar a tarefa com maior tempo de entrega de entre as que estão disponíveis
t minj=1,...,n rj
T {J1,...,Jn} // Tarefas por escalonar
T’ {Jj : rj t Jj T} // Tarefas disponíveis mas não escalonadas
Jk tarefa tal que Jk T’ e qk = maxj:Jj T’ qj
Em caso de empate escolher a tarefa com maior tempo de processamento
Fixar o início do processamento da tarefa Jk no instante t
Remover a tarefa Jk de T
t max {t+pk , minJj T rj}
Heurística de Schrage
Enquanto T // Há tarefas por escalonar
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 49
Tarefa (j) 1 2 3 4 5 6 7
pj 5 6 7 4 3 6 2
rj 10 13 11 20 30 0 30
qj 7 26 24 21 8 17 0
Exemplo (Heurística de Schrage)
t min {10,13,11,20,30,0,30} = 0
T {J1,J2,J3,J4,J5,J6,J7}
T’ {J6}
Jk J6
J6 iniciar-se-á no instante 0
T {J1,J2,J3,J4,J5,J7}
t max {0+6, 10} = 10 6
0 5 10 15 20 25 30 35 40 45 50 55
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 50
T’ {J1}
Jk J1
J1 iniciar-se-á no instante 10
T {J2,J3,J4,J5,J7}
t max {10+5, 11} = 15 6
0 5 10 15 20 25 30 35 40 45 50 55
1
T’ {J2,J3}
Jk J2
J2 iniciar-se-á no instante 15
T {J3,J4,J5,J7}
t max {15+6, 11} = 21 6
0 5 10 15 20 25 30 35 40 45 50 55
1
2
Tarefa (j) 1 2 3 4 5 6 7
pj 5 6 7 4 3 6 2
rj 10 13 11 20 30 0 30
qj 7 26 24 21 8 17 0
Exemplo (Heurística de Schrage)
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 51
Exemplo (Heurística de Schrage)
T’ {J3,J4}
Jk J3
J3 iniciar-se-á no instante 21
T {J4,J5,J7}
t max {21+7, 20} = 28
T’ {J4}
Jk J4
J4 iniciar-se-á no instante 28
T {J5,J7}
t max {28+4, 30} = 32
6
0 5 10 15 20 25 30 35 40 45 50 55
1
2
3
6
0 5 10 15 20 25 30 35 40 45 50 55
1
2
3
4
17
0
6
6
2 3 4 7 6 5 pj
30 30 20 11 13 10 rj
0 8 21 24 26 7 qj
7 5 4 3 2 1 Tarefa (j)
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 52
Exemplo (Heurística de Schrage)
Solução da heurística
0 5 10 15 20 25 30 35 40 45 50 55
6
1
2
3
4
5
7
L’max = 53
Solução óptima
0 5 10 15 20 25 30 35 40 45 50 55
6
1
2
4
5
7
3
L’max
* = 50
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 53
1/prec,rj / '
maxL
Ji < Jk Jk só pode ser processada quando estiver terminado o processamento de Ji
As relações de precedência podem ser representadas através de um grafo acíclico
A cada tarefa está associado um vértice
Existe o arco (i,k) se Ji < Jk
Bi = {k: Jk < Ji} Tarefas que têm que ser processadas antes da tarefa Ji
Ai = {k: Ji < Jk} Tarefas que têm que ser processadas depois da tarefa Ji
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 54
A heurística de Schrage permite obter uma solução admissível para este problema
Basta modificar de forma conveniente as datas de disponibilidade e os tempos de entrega de uma forma sistemática.
As ‘novas’ datas de disponibilidade e os novos tempos de entrega não só respeitam as reais datas de disponibilidade e tempos de entrega como ainda garantem que as precedências são respeitadas.
O problema é transformado num problema 1/rj/L’max
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 55
Modificação dos parâmetros rj
Começando pelas tarefas que não têm precedentes e respeitando a ordem das precedências modificar todos os rj de acordo com:
}} :max{,max{ jkkjj Bkprrr
Modificação dos parâmetros qj
Começando pelas tarefas que não têm sucessores e respeitando a ordem inversa das precedências modificar todos os qj de acordo com:
}} :max{,max{ jkkjj Akqpqq
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 56
Ideia subjacente às modificações anteriores:
Ji < Jk
rk ri + pi ( ri)
qi pk + qk ( qk)
Ao escalonar as tarefas de acordo com a heurística de Schrage as precedências vão ser respeitadas e nenhuma tarefa será escalonada antes de estar disponível.
Solução admissível!
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 57
Tarefa (j) 1 2 3 4 5
pj 2 1 2 2 2
rj 0 1 3 0 7
qj 5 2 6 1 2
Exemplo
Precedências: 4 2
1
0 5 10 15
Solução obtida pela heurística de Schrage ignorando as precedências:
2
3
4
5
Mestrado em Matemática Aplicada à Economia e Gestão - Logística e Gestão de Operações 1º Ano 2º Semestre
Módulo de Gestão de Operaçõers Docente : Maria da Conceição da Fonseca 58
Tarefa (j) 1 2 3 4 5
pj 2 1 2 2 2
rj 0 2* 3 0 7
qj 5 2 6 3+ 2
Exemplo
Precedências: 4 2
Parâmetros modificados:
* max{r2, r4+p4}
+ max{q4, p2+q2}
1
0 5 10 15
Solução obtida pela heurística de Schrage modificada:
3
2
5
4
Tarefa (j) 1 2 3 4 5
pj 2 1 2 2 2
rj 0 1 3 0 7
qj 5 2 6 1 2