Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
operazioni
Paolo Detti
Dipartimento di Ingegneria dell’Informazione
Università di Siena
Organizzazione della produzione
chi
PRODOTTO che cosa
ORGANIZZAZIONE
PROCESSO come
COORDINAMENTO
FLUSSO DI PRODUZIONE
PIANIFICAZIONE
SCHEDULING quando
Pianificazione della produzione:
schedulazione di dettaglio
Sono dati:
• Un insieme di lavori (job): ognuno costituito da
una o più operazioni
• Un insieme di risorse (macchine) che devono
essere utilizzate per eseguire i lavori
Scheduling delle operazioni
Consideriamo:
3 lavori e 3 macchine
Job Sequenza delle operazioni
operazione=(macchina, tempo)
J1 (M1,10) (M2,5) (M3,6)
J2 (M2,5) (M1,8) -
J2 (M2,5) (M1,8) -
J3 (M1,2) (M3,10) (M2,4)
M1 1 3 2
M2 2 1 3
M3 3 1
5 10 12 15 20 22 26 28
Diagramma di Gantt
Job Sequenza Operazioni
J1 (M1,10) (M2,5) (M3,6)
J2 (M2,5) (M1,8) -
J3 (M1,2) (M3,10) (M2,4)
M1 3 1 2
M2 2 1 3
M3 3 1
2 5 12 17 20 21 23
Classificazione dei problemi di
scheduling
Caratterizzazione dei lavori:
LAVORI M
Macchine parallele
M1
LAVORI M2
M3
Macchine in linea
(Flow shop)
LAVORI M1 M2 Mm
Esempio
M1 M2
IN OUT
Esempio
M1 M2
IN OUT
Job shop
LAVORI
M1 M2
M3
Misure di prestazione
(lavori)
Dato il lavoro i con release date e duedate:
• tempo di completamento Ci
• tempo di attraversamento Fi= Ci – ri
• Lateness Li= Ci – di
• Tardiness Ti= max{ 0, Ci – di }
• Earliness Ei= max{ 0, di – Ci }
• Lavori in ritardo Ui= 1 se Ci > di
Ui= 0 se Ci ≤ di
Lateness
(Ritardo)
Ritardo del lavoro i : Li = Ci-di
Li(Ci)
Li > 0
Ci- di
Li < 0 di Ci
anticipo ritardo
Dati
I tempi di processamento pi, i=1,…,n,
del lavoro i sulla macchina sono noti.
Obiettivo
Sequenziare le operazioni sulla
macchina in modo da minimizzare la
somma dei tempi di completamento.
min ΣiCi
Gantt del Sequenziamento
Sequenza S
p1 p2 p3 p4 pn
op1 op2 op3 op4 opn
tempo
C1 C2 C3 C4 Cn
C2 + C1 < C2 + C1
p1 p2 p3 p4 pn
S op1 op2 op3 op4 opn
C1 C2 C3 C4 Cn tempo
p2 p1 p3 p4 pn
op2 op
op11 op3 op4 opn
S’ tempo
C2 C1 C3 C4 Cn
Regola SPT
(shortest processing time first)
Lavori 1 2 3 4 5
pi 8 16 10 7 2
Dati
I tempi di processamento pi, i=1,…,n,
del lavoro i sulla macchina sono noti.
Peso wi, i=1,…,n, associato ad ogni
lavoro.
Obiettivo
Sequenziare le operazioni sulla
macchina in modo da minimizzare:
min ΣiwiCi
Regola WSPT
(weighted shortest processing time)
WSPT: sequenzia prima i lavori che hanno
il più piccolo rapporto:
pi
wi
M1
J1 J
2
LAVORI M2
J3 J
4
M3
Scheduling su macchine parallele scorrelate
Dati
I tempi di processamento pij, i=1,…, m, del lavoro j sulla
macchina i sono noti.
Obiettivo
Assegnare i lavori alle macchine in modo tale da minimizzare il
tempo totale di completamento della macchina più carica
(equivalente a minimizzare il makespan).
Esempio
Lavori
1 2 3 4 5
1 12 17 19 15 14
Macchine 2 30 17 16 31 17
3 28 27 28 23 27
M1 J1 J4
M2 J5 J2
M3 J3
34 t
Esempio
Lavori
1 2 3 4 5
1 12 17 19 15 14
Macchine 2 30 17 16 31 17
3 28 27 28 23 27
M1 J1 J4
M2 J5 J3
M3 J2
33 t
Complessità
• m=2
• pij = p j i = 1,..., m
Una formulazione di PLI
n
Cmax = max i =1,...,m {Ci } = max i =1,...,m pij x ij
j =1
Una formulazione del Problema
n
min{Cmax } = min max i =1,...,m pij x ij
j =1
tale che
m
x ij = 1 j = 1,...,n
i =1
x ij ∈ {0,1}
Una formulazione di PLI
min W
tale che
n
Ci = pij x ij ≤ W i = 1,...,m
j =1
m
x ij = 1 j = 1,...,n
i =1
xij ∈ {0,1}
ASSEGNAMENTO DELLE
OPERAZIONI DI TAGLIO
NELLA PRODUZIONE DI
CAPI DI ABBIGLIAMENTO
Lo scenario produttivo
figure
1 2 m
6
1 2
4 3
5 6
2 5 4
6
4 1 6 13
3
2
Modello combinatorio
Modello combinatorio
Metodologie di soluzione
m
min x k
k = 1
m
a jk x k ≥ 1 j = 1 ,..., n
k = 1
x k ∈ { 0 ,1 } k = 1 ,..., m
(Barnhart C. et al., 1994; Chen, Z.L. and Powell,W.B., 1999; Van den Akker
J.M. et al., 1999)
Approccio esatto
•m è il numero (elevatissimo) di
possibili itinerari
• Anche enumerandoli tutti, occorre
risolvere un problema intero di
elevatissime dimensioni
>>> generazione di colonne
Generazione di Colonne
Primale Duale
m
n
min xk max uj
k =1
j =1
m
a x k ≥ 1 j = 1,...,n n
k =1
jk
a jk u j ≤ 1 k = 1,...,m
j =1
x k ≤ 1 k = 1,...,m
u j ≥ 0 j = 1,...,n
x k ≥ 0 k = 1,...,m
tale che
a j ∈ {0 ,1}
le figure scelte ( a j = 1) possono
essere eseguite tutte su una macchina
Un metodo di generazione di colonne
1 | r js ij | w j U j
w j = u *
j
r j ≤ ri ⇔ d j ≤ d i
Problema di separazione senza tempi di
set-up (1|rj|ΣwjUj )
P ( j − 1, t ) t < r j + p j
{( ) }
P ( j , t ) = max P j − 1, t − p j + u *j ; P ( j − 1, t ) r j + p j ≤ t ≤ d j
( )
P j, d j t > d j
Metodologie di soluzione
t
ti ti+cij Sij
Ultima figura
tagliata
Idle: Qij = Sij - ti
push: selezione della macchina
m 6 6 6 6 6
Algoritmi pull per l’istanza R1
E 11.2 15 13.5
m 6 7 6
Algoritmi push per l’istanza R2
m 7 7 7 7 7
Algoritmi pull per l’istanza R2
m 7 7 7