Informatica nella Produzione Industriale
 Testo di Riferimento: ”Gestione della Produzione
Industriale”, A.Brandolesi, A.Pozzetti, A.Sianesi,
Hoepli, 1995.
 Obiettivi:
 Definizione di Processo Industriale e sua Classificazione
 Problematiche nella Gestione di un Processo Industriale
 Metodi di Ottimizzazione della Produzione Industriale
 Strategie Algoritmiche: Soluzioni Complete ed Euristiche.
Sistemi Produttivi
 Classificazione in base alla domanda e alla
produzione:
 produzioni unitarie su commesse singole (variabilità dei
cicli di produzione)
 produzioni a lotti su commesse ripetitive (alternanza dei
cicli di produzione)
 produzioni continue su previsione
 Classificazioni in base alla natura intrinseca del
prodotto:
 produzioni per processo (ciclo tecnologico obbligato)
 produzioni manifatturiere (Manufacturing Systems):
 Fabbricazione e Montaggio (ciclo tecnologico non obbligato)
Manufacturing Systems
(Fabbricazioni)
 Fabbricazioni per Reparti o Job Shop
 Fabbricazioni per Cellule
 Fabbricazioni per Linea di Prodotto
Manufacturing Systems
(Fabbricazioni di tipo Job Shop)
 Un pezzo o un lotto viene lavorato da Reparti di
lavorazione spostandosi (tramite un sistema di
trasporto o pallet) in accordo ad un preciso ciclo
tecnologico (routing).
 Ciacun Reparto aggrega macchine omogenee per tipo
di lavorazione. Dunque esso offre una determinata
“capacità tecnologica”
 Il Job Shop è un sistema produttivo che mette a
disposizione “capacità tecnologiche”
 la capacità produttiva dell’impianto si realizza
quando viene specificato il routing
Manufacturing Systems
(Fabbricazioni di tipo Job Shop)
Lotto i
A2
A1
3
1
Mj1
A4
A3
1
4
Mj2
Lotto i
4
Mj4
Mj3
Reparto Aj
2
3
2
Manufacturing Systems
(Fabbricazioni per Cellula)
 Ciascun pezzo o lotto viene completamente lavorato
da cellule di macchine (Gruppo Tecnologico)
 Ogni cellula aggrega macchine di natura diversa
adibite alle lavorazioni necessarie per ottenere il
particolare prodotto finito.
Manufacturing Systems
(Fabbricazioni per Cellula)
Lotto i
A2
A1
Mj1
A4
A3
1
Mj2
Lotto i
4
Mj4
Mj3
Cellula j
3
2
Manufacturing Systems
(Fabbricazioni per Line di Prodotto)
 La fabbricazione per linea di prodotto è una sistema
produttivo costituito da un insieme di macchine
progettate per realizzare rigidamente una sequenza
fissata di lavorazioni.
 Tutti i pezzi o lotti subiscono la stessa sequenza di
processamento
 La fabbricazione per linea di prodotto è un sistema
produttivo che mette a disposizione una “capacità
produttiva”
 La capacità tecnologica è incorporata nell’impianto e
mirata alla produzione di un solo prodotto.
Manufacturing Systems
(Fabbricazioni per Line di Prodotto)
Lotto i
M1
M2
M3
M4
Confronto tra le Soluzioni Estreme della
Fabbricazione
Job Shop
Vantaggi
Svantaggi
Alta Flessibilità
Elevati Tempi di Produzione
Elevata Elasticità (e.g.Guasti)
Elevato WIP
Scarsa Obsolescenza
Scarso Sfruttamento delle Risorse
Rapido Avvio di Nuove Produzioni
Scarsa Prevedibilità dei Tempi di Consegna
Difficoltà della Gestione (vedi lucido seguente)
Linea di Produzione
Vantaggi
Svantaggi
Ridotti Tempi di Produzione
Notevole Rigidità
Ridotto WIP
Investimenti Elevati
Elevato Sfruttamento delle Risorse
Rischi di Obsolescenza
Buona Prevedibilità dei Tempi di Consegna
Vulnerabilità ai Guasti
Elevato Tempo di Avvio di Nuove Produzioni
Difficoltà della Progettazione (vedi lucido seguente)
Difficoltà della Gestione della Produzione del
Job Shop
M11
M12
M21
M22
M31
M14
M13
M24
M23
M33
Lotto 1
Lotto 2
Lotto 2
M32
Lotto 1
Difficoltà della Gestione della Produzione del
Job Shop
 Problemi Principali:
 Scelta tra più Risorse (Macchine) disponibili per la
lavorazione dei Lotti
 Loading: Scelta dei lotti da inoltrare nell’impianto e scelta
della sequenze di inoltro dei lotti nell’impianto
 Dispatching/Sequencing: Scelta della sequenza di
Lavorazione dei Lotti sulle Singole Macchine
 Minimizzazione di diversi parametri prestazionali quali il
tempo di trasferimento e i tempi di Set-Up delle Macchine
 Soluzioni:
 Esperienza Umana
 Soluzioni Algoritmiche per l’Ottimizzazione
Produttività (Obiettivo del Corso)
della
Difficoltà della Progettazione della Linea di
Fabbricazione
Lotto i
M1
M2
M3
M4
T1
T2
T3
T4
 Tempo di Lavorazione = T1+T2+T3+T4
 Problemi Principali nella Progettazione:
 Bilanciamento del Carico di Lavoro
 Elevata Disponibilità delle Risorse (Meccanismi di
Tolleranza ai Guasti)
 Analisi dei rischi di mercato ai quali si va incontro
dotandosi di una certa capacità produttiva per uno
specifico prodotto.
Flexible Manufacturing Systems
 Introduzione del Controllo Numerico (Calcolatore)
nella gestione della produzione di tipo Manifatturiera
relativamente alla fase di fabbricazione:
 Sistema di Trasporto Automatico
 Controllo della Produzione
 Basato principalmente sul modello “Job Shop”
 Vantaggi:
Migliore allocazione delle risorse disponibili
Ottimizzazione di parametri prestazionali
Manufacturing Systems
(Montaggi)
 Montaggi a Posto Fisso: L’assemblaggio viene
realizzato in una locazione fissa da uno o più
operatori (o macchine).
 Montaggio a Trasferimento: L’assemblaggio viene
realizzato progressivamente da più stazioni di lavoro,
collegate da sistemi di trasporto (automatici):
 Montaggio Sequenziale
 Montaggio Stellare
Manufacturing Systems
(Montaggi a Trasferimento)
 Montaggio Sequenziale
M1
M2
M3
M4
 Montaggio Stellare
M1
M2
M5
M3
M4
Manufacturing Systems
(Montaggi)
 Problematiche Attuali:
 Linee di Montaggio assai rigide
 Risorse disponibili usate solo per il montaggio di un
numero limitato di tipologie di prodotti
 Soluzione: FAS (Flexible Assembly System)
 Caratteristiche Principali di un FAS:
 Cellule di Montaggio in grado di realizzare una vasta
gamma di assiemaggi con modesti tempi di riattrezzaggio
 Il Montaggio completo di un prodotto viene realizzato
tramite l’attraversamento di un set di cellule di
assiemaggio (uso di movimentazione automatica)
Manufacturing Systems
(Flexible Assembly System)
Prodotto 1
M11
M12
M21
M22
M31
M14
M13
M24
M23
M33
Prodotto 2
Cellula di Montaggio 1
Cellula di Montaggio 2
M32
Cellula di Montaggio 3
Prodotto
Prodotto
Assiemato 1 Assiemato 2
Gestione della Produzione Industriale
 Tre Fasi in Successione:
 Progettazione e Realizzazione del Sistema Produttivo
 Messa a Punto dei cicli di lavorazione, delle attrezzature,
delle procedure di collaudo e di controllo della qualità, etc.
 PROGRAMMAZIONE DELLA PRODUZIONE:
Formulazione e gestione dei piani di produzione, ovvero utilizzo
delle risorse del sistema produttivo predisposte nelle fasi
precedenti per la realizzazione dei prodotti desiderati.
La Programmazione della Produzione si articola in tre periodi:
 Programmazione di Lungo Periodo
 Programmazione Aggregata
 Programmazione di Breve Periodo
Gestione della Produzione Industriale
Programmazione della Produzione
 Programmazione di Lungo Periodo
 Input: target di fatturato
 Output:
 “Quanto” si dovrà produrre
 “Quante” e “Quali” Risorse Produttive (manodopera,
materie prime, etc.) sono necessarie
 Nota: le risorse legate all’impianto industriale non
possono essere variate
 Periodo di Riferimento: Anno o più Anni
Gestione della Produzione Industriale
Programmazione della Produzione
 Programmazione Aggregata della Produzione
 Input: disponibilità delle risorse decise nella fase
precedente
 Output: Piano Principale di Produzione (MPS), in termini
di “Quanto” si dovrà produrre in ogni Periodo di
Riferimento dell’Orizzonte Considerato
 Periodo di Riferimento: Mese
 Orizzonte Considerato: Anno o Semestre
Gestione della Produzione Industriale
Programmazione della Produzione
 Programmazione di Breve Periodo della Produzione
 Input: Piano Principale di Produzione (MPS)
 Output: Decisioni basate sulla Schedulazione di Processi
Loading e/o Dispatching e/o Sequencing
 Periodo di Riferimento: Giorno o Turno
 La Programmazione di Breve Periodo della Produzione
può anche mancare (Just In Time - JIT)
Programmazione di Breve Periodo
 Caratteristica Principale:
 Ordini di Produzione a “Monte” del Sistema Produttivo,
contenuti nel Master Production Schedule (MPS)
 Modello “Push”
 Uso della Programmazione di Breve Periodo per la
Schedulazione dei Lotti, per decidere (ad esempio) il:
 Loading
 Dispatching/Sequencing
 al fine di influire su (ad esempio):
 Tempi di Consegna di Ciascun Lotto (MakeSpan)
 Produttività (Numero di Lotti Prodotti/Time)
 Accumuli durante la Produzione (WIP)
 Utilizzazione delle Macchine
Programmazione di Breve Periodo
 Esempio: 3 Lotti da produrre (risultato MPS)
 Obiettivo: Minimizzare i tempi di completamento
Lotto 1
M1
M2
M3
Lotto 3
Lotto 1
Lotto 2
Lotto 2
Lotto 3
Routing Tecnologico:
Lotto 1= (M1, M3, M2)
Lotto 2= (M1, M2, M3)
Lotto 3= (M2, M3, M1)
Tempi di Produzione:
Lotto 1 = (M1(2), M3(1), M2(2))
Lotto 2 = (M1(2), M2(1), M3(2))
Lotto 3 = (M2(1), M3(3), M1(3))
Esempi di Risultati Forniti
dalla Programmazione di Breve Periodo
M1
1
M2
3
M3
2
3
2
1
Routing Tecnologico:
Lotto 1= (M1, M3, M2)
Lotto 2= (M1, M2, M3)
Lotto 3= (M2, M3, M1)
3
1
Tempi di Produzione:
Lotto 1 = (M1(2), M3(1), M2(2))
Lotto 2 = (M1(2), M2(1), M3(2))
Lotto 3 = (M2(1), M3(3), M1(3))
2
9
Diagramma di Gantt
 Soluzione di Dispatching/Sequencing:
 Tempi di Completamento:
Lotto 1 = 7
Lotto 2 = 8
Lotto 3 = 9
Esempi di Risultati Forniti
dalla Programmazione di Breve Periodo
M1
M2
M3
2
3
1
Routing Tecnologico:
Lotto 1= (M1, M3, M2)
Lotto 2= (M1, M2, M3)
Lotto 3= (M2, M3, M1)
3
2
1
3
1 2
Tempi di Produzione:
Lotto 1 = (M1(2), M3(1), M2(2))
Lotto 2 = (M1(2), M2(1), M3(2))
Lotto 3 = (M2(1), M3(3), M1(3))
7
Diagramma di Gantt
 Soluzione di Dispatching/Sequencing:
 Tempi di Completamento:
Lotto 1 = 7
Lotto 2 = 7
Lotto 3 = 7
Ipotesi Adottate nella
Programmazione di Breve Periodo
 Le risorse che devono essere utilizzate sono interamente note
e non è possibile decidere variazioni di macchinari e di orario
 Il numero di risorse critiche (quelle “contese”) è sempre
unitario ed è generalmente rappresentato dalle macchine
 I lotti (o job) sono sempre definiti (routing, data di consegna)
 I tempi di trasporto sono trascurabili
 Tutti i lotti assegnati devono essere compiuti (nessun
annullamento di ordini)
 Ciascuna macchina non può lavorare più di un lotto alla volta
(può non essere valida !)
 ogni operazione su un lotto può iniziare solo quando
l’operazione precedente nel routing tecnologico è completata
Modelli più comunemente adottati nella
Programmazione di Breve Periodo





Macchina Singola
Macchine Parallele identiche o differenti
Open Shop
Flow Shop
Job Shop
Modello a Macchina Singola
Lista di Job
J2
J1
J3
Macchina
 Capacità di Modellazione
 Produzioni di Processo in cui non sia possibile distinguere
differenti fasi di processamento
 Produzioni Manifatturiere per Linea, in cui una macchina è
più critica delle altre
 tutti i casi in cui l’impianto sia schematizzabile come una
macchina singola
Modello a Macchina Singola
 Problema da risolvere: Dispatching/Sequencing
 J1(1), J2(2), J3(4)
 Minimizzazione della somma dei tempi di completamento
dei Job (tempo medio di completamento):
J1, J2, J3  1+3+7=11 (tempo medio = 3.7)
J2, J3, J1  2+6+7=15 (tempo medio = 5)
 Ipotesi che possono essere assunte per i job:
 dipendenza o indipendenza tecnologica tra i job
(precedenza tra i job)
 preemption
 Complessità Computazionale:N!
 (N=Numero di Job)
Modello a Macchine Parallele
 Capacità di Modellazione
 Produzioni riconducibili ad un modello a
macchina singola
 Disponibilità di Processamenti ridondanti
 Problemi da risolvere:
Macchina
Lista di Job
 Dispatching/Sequencing e Allocazione
 Ipotesi che possono essere assunte per le
macchine:
 macchine perfettamente identiche (tempi di
lavoro uguali)
 macchine differenti (tempi di lavorazione di un
job dipendenti dalla macchina)
 Ipotesi che possono essere assunte per i job:
 dipendenza o indipendenza tecnologica tra i job
(precedenza tra i job)
 preemption
Macchina
J2
J1
J3
Macchina
Macchina
Open Shop
M1
Lista di Job
M2
J2
J1
J3
M3
 Tutti i job richiedono l’intervento di uno stesso numero di
macchine
 Per ogni job non viene imposto un ordine delle operazioni, che
può essere qualsiasi (routing non fisso)
 Non esistono vincoli sulla precedenza delle operazioni
 I tempi di lavorazione su ogni macchina possono essere differenti
da job a job
 Problemi da risolvere: Dispatching/Sequencing in ciascuna
macchina
Flow Shop
 Tutti i job richiedono l’intervento di uno stesso
numero di macchine
 L’ordine delle operazioni è fisso ed è uguale per tutti
i job (Routing Fisso)
 I tempi di lavorazione su ogni macchina possono
essere differenti da job a job
 Il flusso di lavorazione è unidirezionale
 Problemi da risolvere: Dispatching/Sequencing in
ciascuna macchina
Flow Shop
 Differenziazioni di Flow Shop:
flow shop puro: tutti i job richiedono
un’operazione su ogni macchina
flow shop generico: i job possono non utilizzare
qualche macchina, tra quelle appartenenti al
flusso di lavorazione
flow shop con sorpasso tra job: la sequenza di
lavorazione dei job sulle macchine non è la stessa
flow shop senza sorpasso: la sequenza di
lavorazione dei job sulle macchine è la stessa
Flow Shop Puro senza Sorpasso tra Job
Lista di Job
M1
M2
J2
J1
J3
M3
 J1=(M1(1),M3(2),M2(1))
 J2=(M1(2),M3(3),M2(1))
 J3=(M1(3),M3(2),M2(1))
Flow Shop Puro senza Sorpasso tra Job
M1
3
2
1
M2
3
M3
3
1
M1
2
M2
1
10
3
1
1
1
5
1 2
M3
2 1
3
2
2
3
5
9
 Complessità Computazionale : N !
Flow Shop Puro con Sorpasso tra Job
M1
3
2
1
M2
1
M3
1
1
M1
5
1 2
1
3
10
12
15
3 1
2
1
2
3
M2
M3
3 2
2
3
5
10
 Complessità Computazionale : (N !)M
Flow Shop Generico
 L’ordine delle operazioni è fisso ed è uguale per tutti i
job
 Qualche macchina lungo il routing può essere saltata da
uno o più job
 I tempi di lavorazione su ogni macchina possono essere
differenti da job a job
Lista di Job
M1
M2
J2
J1
J3
J1=(M3(2),M2(1))
J2=(M1(2),M3(3))
M3
J3=(M1(1),M3(2),M2(1))
Job Shop
 I job richiedono l’intervento di un differente numero di macchine
 L’ordine delle operazioni per ciascun job è fisso ed è differente da
job a job
 I tempi di lavorazione su ogni macchina possono essere differenti
da job a job
 Il flusso di lavorazione non è unidirezionale
 Flow Shop: Caso Particolare di un Job Shop
Lista di Job
M1
M2
Job 1= (M1(2), M3(1), M2(2))
Job 2= (M1(2), M2(1), M3(2))
J2
J1
J3
Job 3= (M2(1), M3(3), M1(3))
M3
Job Shop
M1
1
M2
3
2
1
2
M3
3
1
1
M1
M2
3
2
5
2 1
3
M3
10
3
1
2
3
1
8
1 2
5
7
10
 Complessità Computazionale : (N !)M
 (N= numero Job, M=numero di macchine)
Differenze tra Problemi Reali e Modelli
Classici nel Job Shop
 Esistenza di vincoli particolari tra le operazioni di
alcuni job
 Esempio: hold-time
 Esistenza di job che richiedono l’uso di una macchina
più di una volta
 Presenza di routing tecnologici alternativi
Dati di Input sui quali effettuare
la Programmazione a Breve Termine
 Tempi di Lavorazione di ciascun job su ciascuna
macchina
 Macchina Singola o Parallele Identiche:
 tj = tempo lavorazione job j
 Macchine Parallele generiche, Open shop e Flow shop:
 tji = tempo di lavorazione job j, macchina i
 Job shop:
 tjik = tempo di lavorazione dell’operazione k del job j sulla
macchina i
 data di possibile inizio produzione job j, rj
 data concordata per il completamento job j, dj
Parametri Prestazionali determinati a seguito
dello scheduling e in base ai quali viene
valutata la bontà dello scheduling
 Parametri relativi a ciascun job, determinati a seguito
dello scheduling:
 data di effettivo inizio produzione job j, Ij (rj)
 data di effettivo completamento, Cj
 lateness, L j = Cj - d j, negativo se vi è un anticipo sul
completamento
 tardiness, T j = max{0,L j}, non considera un eventuale
anticipo sul completamento
 flowtime, F j = C j - I j, tempo di attraversamento del job
nel sistema
Parametri Prestazionali determinati a seguito
dello scheduling e in base ai quali viene
valutata la bontà dello scheduling
lateness
rj
dj
Ij
flowtime
Cj
Parametri Prestazionali relativi ad un Set di N
Job determinati a seguito dello scheduling e in
base ai quali viene valutata la bontà dello
scheduling
N
 lateness medio=
L
j1
j
N
 (compensa ritardi con anticipi)
 tardiness medio=
N
T
j1
j
N
 (tiene conto solo dei ritardi)
N
 flowtime medio=
F
j1
N
j
Parametri Prestazionali relativi ad un Set di N
Job determinati a seguito dello scheduling e in
base ai quali viene valutata la bontà dello
scheduling

(Tj )  1, se Tj  0
(Tj ), dove 


j1
(Tj )  0, se Tj  0
N
 numero di job in ritardo=
 Makespan=maxj{Cj}- minj{Ij}
 Coefficiente Medio di Saturazione delle Risorse=
M
N
 t
i 1 j1
ji
Makespan  M
Parametri Prestazionali relativi ad un Set di N
Job determinati a seguito dello scheduling e in
base ai quali viene valutata la bontà dello
scheduling
 Work In Process (WIP)=

 
a  min j I j
b

1
  WIP( t )  dt , dove b  max j C j
Makespan a

WIP( t )  numero di job presenti all' istante t
M
 tempo di set-up=
 SU
i 1
i
 SUi è il tempo complessivo di set-up della macchina i
Presenza di set-up
t123
t1
12
M1
M2
M3
1
3
2
3
1
2
3
1
t312
2
Presenza di set-up
 Tipi di set-up:
 set-up indipendenti dalla sequenza di lavorazione: è
possibile inglobarli nei tempi di lavorazione
SUi=0
 set-up dipendenti dalla coppia di job adiacenti nella
sequenza di lavorazione dei job su ciascuna macchina.
Ad esempio: SU1=t112+t123
M
SU i
Tempo di Set-up Complessivo=

i 1
 set-up dipendenti da tutte le lavorazioni “passate” della
macchina
Set-up non computabile
Obiettivi della Schedulazione a Breve Periodo
 Minimizzazione Lateness Medio
 Minimizzazione Tardiness medio
 Minimizzazione Flowtime medio
 Minimizzazione del Numero di job in ritardo
 Minimizzazione del Makespan
 Massimizzazione Coefficiente Medio di Saturazione
delle Risorse, coincide con la Minimizzazione del
Makespan
 Minimizzazione del Work In Process (WIP)
 Minimizzazione del Tempo di Set-up Complessivo
Scarica

Presentazione di PowerPoint - Ingegneria Informatica e delle