flow shop scheduling grupo: leandro lopes marcelo henrique dias
TRANSCRIPT
![Page 1: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/1.jpg)
Flow Shop Flow Shop SchedulingScheduling
Grupo:Leandro Lopes
Marcelo Henrique Dias
![Page 2: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/2.jpg)
Tópicos
Descrição do problema Modelagem Implementação (!)
![Page 3: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/3.jpg)
Descrição do problema
Há um conjunto de nn jobs e mm máquina cada job possui um certo número de
operações
JOB 1 M1(2) M2(2) M3(4)
JOB 2 M1(3) M2(1) M3(1)
JOB 3 M1(2) M2(3) M3(2)
Ex:
![Page 4: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/4.jpg)
Descrição do problema
Objetivo:
Diminuir o makespan, ou seja, a duração total da
programação
![Page 5: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/5.jpg)
Modelagem
Para representar as operações dos jobs, utilizamos a seguinte estrutura:
JOB M1 M2 M3 SOMA
1 2 2 4 8
2 3 1 1 5
3 2 3 2 7
![Page 6: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/6.jpg)
Modelagem
Para representar as alocações dos jobs, temos a estrutura:
1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1
M2 1 1
M3
![Page 7: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/7.jpg)
Modelagem
Será necessária uma matriz para auxiliar nas alocações dos jobs:
JOB Última Máquina
Última Posição
1
2
3
1 2
![Page 8: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/8.jpg)
Modelagem
Construção da solução inicial: Método guloso Aloca sempre a operação do job com a maior soma de tempos
JOB M1 M2 M3 SOMA
1 2 2 4 8
2 3 1 1 5
3 2 3 2 7
![Page 9: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/9.jpg)
Modelagem
Características:
Não há possibilidade de inviabilidades Sobreposição Alocação de operações em ordem não permitida
1 2 3 4 5 6 7 8 9 10
11
12
M1 1 1 1
M2 1 1
M3
![Page 10: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/10.jpg)
Modelagem
Função objetivo: Como não há inviabilidade
A função objetivo será apenas o tempo total da duração da programação.
1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
![Page 11: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/11.jpg)
Modelagem
Movimentos:
1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
Apenas são aceitos movimentos na máquina 1
![Page 12: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/12.jpg)
Modelagem
Heurística: Busca Tabu
Vizinhança: Para cada job, movimentar a operação da máquina 1 em todas as possíveis posições da própria maquina 1
![Page 13: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/13.jpg)
Modelagem
Vizinhança:1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
![Page 14: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/14.jpg)
Modelagem
Vizinhança:1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
![Page 15: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/15.jpg)
Modelagem
Vizinhança:1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
![Page 16: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/16.jpg)
Modelagem
Vizinhança:1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
![Page 17: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/17.jpg)
Modelagem
Vizinhança:Para cada vizinho de um job x encontrado,
construir a solução e encontrar a Fo-job.
Guardar então o movimento na estrutura a seguir
vizinhos_job
Pi Pf Fo
![Page 18: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/18.jpg)
Modelagem
Vizinhança:Quando toda vizinhança com aquele job x estiver
completa, encontrar na estrutura vizinho_job o movimento com melhor Fo
Gravar então o movimento na matriz de melhores vizinhos gerais
vizinho_geral
Pi Pf Fo
![Page 19: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/19.jpg)
Modelagem
Vizinhança:Com a matriz vizinho_geral completa, encontrar
O melhor movimento, observando a Fo.Se o mesmo for melhor que o Fo_star,
Fo_star Fo;
![Page 20: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/20.jpg)
Modelagem
Vizinhança:1 2 3 4 5 6 7 8 9 10 11 12
M1 1 1 3 3 2 2 2
M2 1 1 3 3 3 2
M3 1 1 1 1 3 3 2
1 2 3 4 5 6 7 8 9 10 11 12
M1 2 2 2
M2
M3
X
![Page 21: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/21.jpg)
Modelagem
Lista Tabu:Utilizamos um matriz para guardar
os movimentos proibidos
JOB Pi (Posição Inicial)
2 5...
![Page 22: Flow Shop Scheduling Grupo: Leandro Lopes Marcelo Henrique Dias](https://reader035.vdocuments.site/reader035/viewer/2022062404/552fc10b497959413d8c201b/html5/thumbnails/22.jpg)
Implementação
?