modelli di sistemi di produzione 1 i sistemi di produzione 1.1 generalit a per sistema si intende un...
TRANSCRIPT
Modelli di Sistemi di Produzione
2
Indice
1 I sistemi di produzione 1
1.1 Generalita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 I principi dei sistemi manifatturieri . . . . . . . . . . . . . . . 4
1.3 Descrizione dei principali sistemi produttivi . . . . . . . . . . 7
2 I modelli matematici per il supporto alle decisioni 27
2.1 L’approccio modellistico-ottimizzatorio. . . . . . . . . . . . . . 27
2.2 La formulazione dei modelli. . . . . . . . . . . . . . . . . . . . 30
2.2.1 Alcune convenzioni. . . . . . . . . . . . . . . . . . . . . 31
2.2.2 Le 9 regole della formulazione. . . . . . . . . . . . . . . 32
3 Ottimizzazione dei sistemi di produzione. 35
3.1 Parametri strategici dei sistemi produttivi . . . . . . . . . . . 35
3.2 La gestione dei sistemi di produzione . . . . . . . . . . . . . . 36
3.3 Il ruolo dei modelli matematici. . . . . . . . . . . . . . . . . . 39
3.4 La gestione dei flussi produttivi: le logiche push e pull . . . . . 40
4 La linea di produzione 45
4.1 Il carico lavorativo, il tasso di produzione, le relazioni di in-
compatibilita . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Dimensionamento di una linea . . . . . . . . . . . . . . . . . . 46
4.2.1 Stime sul numero minimo di stazioni . . . . . . . . . . 51
4.2.2 Complessita del problema . . . . . . . . . . . . . . . . 52
4.2.3 L’euristica RPWT . . . . . . . . . . . . . . . . . . . . 54
4.2.4 L’euristica COMSOAL . . . . . . . . . . . . . . . . . . 57
4.3 Alcune note pratiche in merito alla natura stocastica delle
durate dei lavori . . . . . . . . . . . . . . . . . . . . . . . . . . 59
i
ii INDICE
4.4 Bilanciamento dei carichi in una linea di produzione . . . . . . 60
4.4.1 Trade-off tra dimensionamento e bilanciamento . . . . 63
4.5 Rappresentazione e soluzione di un problema di bilanciamento 64
4.5.1 Trasformazione di formati . . . . . . . . . . . . . . . . 65
4.6 Ulteriori vincoli in fase progettuale . . . . . . . . . . . . . . . 68
4.7 Formulazioni di vincoli logici . . . . . . . . . . . . . . . . . . . 69
4.8 Alcuni casi di studio . . . . . . . . . . . . . . . . . . . . . . . 72
4.8.1 Analisi di alcuni aspetti dei problemi proposti . . . . . 75
4.9 Coefficienti di inattivita e di efficienza . . . . . . . . . . . . . . 78
4.10 Work in process e tempo di attraversamento . . . . . . . . . . 78
4.11 Bilanciamento Multi-Prodotto e a Prodotto Misto . . . . . . . 79
4.11.1 Linee Multi-prodotto . . . . . . . . . . . . . . . . . . . 80
4.11.2 Linee a Prodotto Misto . . . . . . . . . . . . . . . . . . 80
4.12 Vincoli temporali. Linee push e pull . . . . . . . . . . . . . . . 84
4.13 Sequenziamento in una linea di produzione . . . . . . . . . . . 85
4.14 Gestione dei tempi di set up . . . . . . . . . . . . . . . . . . . 89
4.15 Determinazione della linea piu corta . . . . . . . . . . . . . . . 91
5 I layout orientati al processo 93
5.1 Generazione di un layout . . . . . . . . . . . . . . . . . . . . . 93
5.2 Sequenziamento delle lavorazioni . . . . . . . . . . . . . . . . 101
5.2.1 L’incompatibilita tra operazioni . . . . . . . . . . . . . 101
5.3 Il sequenziamento di due lavorazioni con operazioni incompatibili104
Capitolo 1
I sistemi di produzione
1.1 Generalita
Per sistema si intende un insieme di elementi interagenti, coesi al raggiungi-
mento di un obiettivo. In particolare un sistema e caratterizzato da:
Obiettivi: l’insieme degli scopi che giustificano l’esistenza del sistema;
Struttura: gli elementi che lo compongono, raggruppabili in diversi sotto-
sistemi;
Processi: le attivita svolte dagli elementi della struttura, i cui effetti sono
rivolti sia all’interno del sistema stesso, che all’esterno;
Interrelazioni: le relazioni che intercorrono fra i sotto-sistemi, fra i processi,
fra i sotto-sistemi e i processi.
In generale, qualsiasi tipo di organizzazione puo essere descritta secondo
un approccio sistemico, specificandone gli obiettivi, le parti, i processi e le
interrelazioni. Comprendere il sistema cosı descritto, allora, corrispondera a
comprendere il comportamento dell’organizzazione nel suo insieme.
Gli obiettivi di una azienda sono i suoi fini istituzionali e variano a secon-
da della tipologia d’azienda: per un’azienda pubblica di servizi, l’obiettivo
e quello di fornire alle migliori condizioni possibili di qualita e di costo un
insieme di servizi (di trasporto, di comunicazione, etc.); per un’azienda pri-
vata l’obiettivo e quello di ottenere degli utili, attraverso la progettazione, la
produzione e la vendita di beni.
1
2 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Per un’azienda di produzione, in particolare, si puo senza dubbio affer-
mare che il principale obiettivo sia quello di creare valore, sia per i clienti
che soddisfano una propria utilita nell’acquisizione dei beni, sia per se stessa,
con l’ottenimento di un profitto monetario dalla vendita dei prodotti.
Le parti di una azienda sono gli elementi costitutivi dell’azienda stessa.
E’ utile notare come tra questi non vi sono solo gli elementi fisici (macchine,
impianti, etc.), ma anche delle pure unita organizzative (direzioni, servizi,
uffici, etc.). Un sistema di produzione e costituito da insiemi interagenti di
operazioni (task), di materiali, di risorse, di prodotti, di piani e di eventi. I
piani contengono i piani di processo, ovvero i percorsi (routing) degli elementi
nel sistema, e i piani di produzione.
I processi sono tutte le funzioni necessarie per conseguire gli obiettivi
operativi che l’azienda si prefigge, e si attuano all’interno della struttura.
L’obiettivo operativo di un sistema manifatturiero e la produzione, ovvero il
processo di trasformazione di materie prime in prodotti finiti.
Per poter quindi comprendere meglio i processi di una azienda, e oppor-
tuno approfondire il concetto di risorsa. Per risorsa aziendale si intende ogni
entita che l’azienda utilizza nei suoi processi per perseguire i propri obiettivi
operativi. Sono risorse i prodotti o i servizi offerti dall’azienda, i materiali
utilizzati, gli immobili, ma sono risorse anche il denaro e le persone utiliz-
zate per produrre. Oltre alle risorse citate, che sono esempi delle cosiddette
risorse interne, si devono anche considerare le risorse esterne, sulle quali
l’azienda opera soltanto in maniera indiretta quali, ad esempio, l’ambiente
sociale e gli operatori economici.
L’acquisizione delle risorse per una azienda manifatturiera e un momento
fondamentale del processo produttivo dato che ad ogni risorsa e associato
un costo. Inoltre, la scelta di una risorsa tecnologicamente piu avanzata di
un’altra puo voler significare una maggior rapidita di esecuzione e precisione
del processo a cui essa viene associata.
Nella letteratura si trovano un gran numero di classificazioni delle risorse
di una azienda. Specificatamente per un sistema manifatturiero le risorse
possono distinguersi in:
Risorse materiali: sono tutte le risorse previste dalla distinta base di un
prodotto, ovvero le risorse necessarie sui diversi livelli di lavorazione
per la realizzazione del prodotto. La quantita di risorsa da acquisire
1.1. GENERALITA 3
o da produrre, e l’istante in cui cio vada fatto (funzione del tempo di
consegna del prodotto) viene stabilita tramite dei sistemi di pianifica-
zione del fabbisogno, che si avvalgono di vari criteri decisionali (MRP,
JIT, etc.).
Risorse produttive proprietarie: sono tutte le risorse impiantistiche e
macchinarie gestite direttamente e utilizzate per realizzare la produ-
zione stessa. Il costo di disponibilita di tali risorse e fisso e puo com-
prendere i costi di ammortamento, i costi di manutenzione ed i costi di
alimentazione. L’ambito operativo non puo intervenire sensibilmente
su tali costi, ma puo perseguire la massima produttivita; tale obiettivo
viene tipicamente definito “saturazione delle risorse produttive.
Risorse operative: sono le risorse necessarie e non strettamente produttive
(risorse umane). Il loro utilizzo e commisurato al fabbisogno. Compito
della programmazione operativa e gestire gli impegni di risorse uma-
ne in maniera flessibile e coerente con quella delle risorse produttive.
Inoltre risorse operative e risorse produttive costituiscono i centri di la-
voro che rappresentano un vincolo importante sulla capacita produttiva
stessa.
Risorse strumentali: sono risorse la cui gestione riveste importanza stra-
tegica per il vincolo sulla capacita produttiva. La programmazione
operativa deve gestire tutte le situazioni di contemporaneita dal mo-
mento che un particolare attrezzo, del quale esiste un solo esemplare,
e in grado di penalizzare la capacita produttiva di piu centri di lavoro.
Risorse produttive esterne: i motivi per i quali si adotta una lavorazione
in conto terzi possono essere sistematici o temporanei; nel caso della
pianificazione e programmazione della produzione si ricorre a questo
tipo di soluzione, dopo avere saturato le risorse produttive interne,
qualora la capacita produttiva dovesse risultare insufficiente. A livello
di programmazione aggregata vengono stipulati accordi preliminari con
i terzisti cosı da poterli considerare, in fase di programmazione opera-
tiva, come unita di lavorazione con capacita, tempi medi di risposta e
costi gia definiti.
4 CAPITOLO 1. I SISTEMI DI PRODUZIONE
A partire dalle risorse e possibile costruire un modello del sistema di
produzione e dei suoi processi, e definire poi le unita strutturali nelle quali
avvengono i processi e sono quindi gestite le risorse.
Una volta costruito il modello del sistema, per comprenderne il compor-
tamento, si devono individuare le interrelazioni tra gli elementi. La caratte-
ristica privilegiata in questo senso e il flusso di spostamento degli elementi
(materiali, prodotti, informazioni, risorse) all’interno dei confini del siste-
ma, e quindi l’analisi del cambiamento di stato del sistema stesso che questo
genera nel tempo.
I materiali, vengono spostati attraverso il personale impiegato, i mezzi
di movimentazione, le macchine, e subiscono le lavorazioni tali da essere
trasformati in prodotti. Le risorse sono assegnate ai task, che ne hanno
bisogno per effettuare tali trasformazioni. Gli eventi sono gli istanti di tempo
in cui le risorse iniziano e terminano un task. L’informazione sullo stato delle
risorse, dei materiali e dei prodotti, indica lo stato del sistema in ogni istante
di tempo.
1.2 I principi dei sistemi manifatturieri
Come per tutta l’ingegneria, anche lo studio dei sistemi manifatturieri si
basa su dei principi o leggi. Questi che seguono sono le principali leggi che
regolono tale studio.
• Prima legge: Legge di Little. Il work in progress nei sistemi ma-
nifattuerieri e dato dal prodotto tra il tasso di produzione ed il tempo
di attraversamento nel sistema. Tale legge prende il nome di legge di
Little (Little 1961) ed e probabilmente la piu conosciuta nei sistemi
manifatturieri. Il WIP ed il tempo di attraversamento sono intesi come
valori medi. La legge si applica a tutti i livelli del sistema e va intesa
a regime nel sistema. Quindi, fissato un tasso di produzione, il WIP
varia in modo direttamente proporzionale al valore del tempo di at-
traversamento. La minimizzazione del WIP passa quindi attraverso la
minimizzazione del tempo di attraversamento che si ottiene attraverso
lo spostamento del carico massimo del sistema a monte e attraverso la
riduzione del carico massimo del sistema. La minimizzazione del WIP
comporta una riduzione della quantita di materiale nel sistema con una
1.2. I PRINCIPI DEI SISTEMI MANIFATTURIERI 5
conseguente riduzione dei costi associati al mantenimento a scorta e al
controllo del processo produttivo.
• Seconda legge: La materia si conserva. I modelli manifatturieri
sono progettati con l’ipotesi di soddisfare equazioni di bilanciamento
mostrando che la differenza tra il materiale che entra in un’area di
lavoro e quello che esce deve essere uguale alla quantita accumulata in
magazzino. La legge vale ad ogni livello, sia di area di lavoro che di
sistema complessivo.
• Terza legge: Piu grande e lo scopo del sistema, meno affidabile
e il sistema. Sistemi produttivi di grandi dimensioni sono per loro
natura difficili di progettare, coordinare e mantenere. Un semplice
risultato dalla teoria dell’affidabilita e che se nel nostro sistema abbiamo
n componenti indipendenti ciascuno con affidabilita ri, con i = 1, . . . , n,
allora la probabilita che l’intero sistema sia operativo e∏n
i=1 ri. Dato
che ri ≤ 1 aggiungere componenti al sistema implica una riduzione
dell’affidabilita complessiva. Naturalmente, si possono fare aggiunte in
parallelo e miglioramenti locali sui singoli componenti per aumentarne
l’affidabilita, ma la direzione generale dell’affidabilita rimane quella di
diminuire all’aumentare della complessita del sistema. Supponiamo di
raddoppiare lo scopo del sistema, vale a dire i componenti che devono
essere operativi nel sistema per il suo funzionamento. Il nuovo sistema
avra quindi n′ = 2n componenti. Assumiamo inoltre che l’affidabilita di
questi sia uguale per tutti ovvero ri = r ed r′i = r′. Il nuovo sistema avra
la stessa affidabilita del precedente se rn = r′2n. Questo si raggiunge
quando rn = r0.5. Se per esempio r = 0.9 allora si dovra avere r′ '0.95. Raddoppiare quindi la dimensione del sistema implichera che
l’inattivita dei suoi componenti dovra essere ridotta della meta.
• Quarta legge: Gli oggetti decadono. Nella progettazione dei si-
stemi manifatturieri si deve tenere conto che i sistemi decadono al pari
dei macchinari che lo compongono. Quindi anche un sistema flessibile
progettato per durare il piu a lungo nel tempo tendera a usurarsi nel
tempo al pari delle macchine obsolete. La flessibilita aiuta nell’adat-
tamento al cambiamento dell’ambiente nel ciclo di vita, ma il ciclo di
vita e scarsamente influenzato dalla flessibilita.
6 CAPITOLO 1. I SISTEMI DI PRODUZIONE
• Quinta legge: La complessita cresce esponenzialmente. Se un
sistema ha m componenti, ciascuno dei quali puo trovarsi in n stati
differenti, allora il sistema ha nm possibili stati complessivi. Ciscuno
di questi deve essere considerato nella progettazione del sistema.
• Sesta legge: La tecnologia migliora. In contrapposizione con la
quarta legge dove gli oggetti che compongono il sistema decadono in
termini di efficacia e capacita di soddisfare la domanda del mercato, bi-
sogna tenere in conto il fatto che all’esterno c’e un continuo lavoro verso
il miglioramento delle tecnologie e quindi quello che oggi rappresenta
la frontiera in questi termini domani sara superato e andra aggiornato.
• Settima legge: I componenti del sistema si comportano in mo-
do casuale. Le operazioni che eseguiamo nel sistema non avranno mai
la stessa durata, anche se sono esattamente le stesse ad ogni ciclo pro-
duttivo. Inoltre, proprio per la natura degli eventi, e difficile predirre
con precisione la durata di ogni evento. Possiamo associare ad esso un
valore atteso ed una varianza. Ciononostante spesso si assumera che
la variabilita rispetto al valor medio sara poco significativa e quindi si
potra modellare il sistema in prima approssimazione sotto un’ipotesi di
determinismo.
• Ottava legge: La razionalita umana e limitata. Simon (1969)
discusse ampiamente questo concetto di razionalita limitata ed i limi-
ti della capacita del ragionamento umano. Noi tendiamo ad avere un
pensiero lineare che considera un’attivita alla volta. La nostra memoria
di breve termine e limitata a sette item e la nostra visione concettuale
e limitata alle esperienze del mondo che ci circonda. Questo, unito al-
l’esponenzialita riportata nella quinta legge, ci porta a dire che spesso
bisogna tendere non all’ottimalita di una soluzione ma al soddisfaci-
mento dei requisiti che essa deve soddisfare e chiedersi quando una
soluzione e sufficientemente buona, almeno per quel momento, e poi
capire gli spazi per un possibile suo miglioramento.
• Nona legge: Combinare, semplificare e eliminare permettono
di risparmiare tempo, denaro ed energia. Il concetto legato ai
vantaggi che si hanno dalla combinazione e semplicazione di attivita
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 7
necessarie e all’eliminazione di quelle non necessarie e evidente e non
serve stressarlo ulteriormente. Ogni attivita consuma tempo, denaro ed
energia e quindi tali concetti sono strettamente legati ad un risparmio
in ognuna di queste direzioni.
1.3 Descrizione dei principali sistemi produt-
tivi
I sistemi manifatturieri possono essere classificati in base a diverse caratte-
ristiche. Tra queste, quella riferita al flusso dei materiali che viaggiano nel
sistema e una delle piu diffuse ed efficaci, in quanto il flusso caratterizza l’in-
terazione tra gli elementi ed i processi del sistema stesso. In questa ottica un
sistema di produzione si puo classificare secondo quattro differenti categorie:
• sistemi orientati al prodotto,
• sistemi orientati al processo,
• tecnologie di gruppo,
• sistemi a postazioni fisse.
I sistemi orientati al prodotto sono progettati attorno al prodotto.
Essi sono noti anche come linee di produzione dato che il prodotto, una volta
entrato nel processo, subisce le operazioni in modo sequenziale, senza mai
tornare su macchine o risorse in generale che hanno gia effettato lavorazioni
sul prodotto. Quindi i materiali entrano nella linea e procedono nello stes-
so verso fino all’uscita del sistema. Indubbiamente, le linee di produzione
sono i piu efficienti ed i piu efficaci “layout” produttivi quando si ha a che
fare con elevati volumi produttivi. Formare una disposizione delle macchine
e delle risorse orientata al prodotto significa rendere dedicati i processi ri-
chiesti da quest’ultimo; quindi c’e una tendenza di questi sistemi ad essere
economicamente piu costosi in termini di macchine complessive utilizzate,
a meno che il prodotto abbia un volume tale da assorbire il costo per riar-
rangiare le varie “facility” in una linea e il costo dovuto al deprezzamento
dell’equipaggiamento mentre la linea e in essere.
8 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Spesso pero molti prodotti non hanno una domanda sufficiente per giu-
stificare una linea. Infatti, le macchine scelte per un processo in linea non
sono facilmente adattabili per altri prodotti. La risposta a necessita diverse,
dove si puo avere a che fare con prodotti a domanda bassa o che richiedono
variazioni sostanziali in tempi decisamente brevi, e data dall’uso di job shop
o dei cosı chiamati sistemi produttivi orientati al processo. In questo
tipo di layout i “reparti” o “centri” di lavoro sono composti da macchine in
grado di poter eseguire lo stesso tipo di lavorazione. In un sistema produt-
tivo di questo tipo, ad esempio, un reparto puo essere formato da torni, un
altro da presse ed un altro ancora da macchinari per test termici. Parti di
un prodotto assegnate ad uno stesso centro di lavoro possono richiedere lo
stesso tipo di lavorazione con attrezzaggi diversi e tempi di set-up diversi.
Sistemi produttivi di tipo group technology possono essere utilizzati per
convertire sistemi orientati al processo in sistemi pseudo orientati al prodotto.
Parti simili di un prodotto, ovvero parti che richiedono processi lavorativi
simili, sono raggruppati insieme in quantita sufficienti da giustificare le loro
macchine “personali”. Tale raggruppamento forma una cella di lavorazione
che e atta a produrre esclusivamente questo insieme di parti.
Un sistema a postazioni fisse si realizza in caso di prodotti, quali una
nave, un palazzo, un aeroplano, che a causa della loro elevata dimensione
rendono impraticabile (spesso impossibile come nel caso di un edificio) lo
spostamento del prodotto tra le operazioni da processare. A differenza delle
altre tipologie di sistemi produttivi appena discussi, nei sistemi a postazioni
fisse tutti i processi produttivi “girano” attorno al prodotto.
La classificazione dei sistemi produttivi puo essere fatta attraverso lo
schema riportato in Figura 1.1
In base allo schema in figura si possono utilizzare tre principali caratte-
ristiche per classificare un sistema di produzione:
• Il modo di rispondere alla domanda;
• Il modo di realizzare il prodotto;
• Il modo di realizzare il volume di produzione.
Relativamente al modo di rispondere alla domanda possono essere indi-
viduati tre differenti scenari:
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 9
Figura 1.1: Classificazione dei sistemi di produzione.
10 CAPITOLO 1. I SISTEMI DI PRODUZIONE
• Produzione su commesse singole: l’azienda riceve ordini per diversi
prodotti o lotti di piccole dimensioni per i quali elabora il processo
produttivo che puo andare dalla progettazione (totale o parziale) allo
sviluppo dei cicli di lavorazione fino alla produzione finale.
• Produzione su commesse ripetitive: l’azienda lavora su catalogo o co-
munque su una gamma di prodotti ben definiti; vengono definiti anti-
cipatamente tutte le caratteristiche progettuali e tecnologiche del pro-
dotto, ma la produzione inizia solo dopo il manifestarsi dell’ordine del
cliente.
• Produzione per magazzino (su previsione): l’azienda realizza, in gene-
re prima del maniferstarsi degli ordini, volumi elevati di prodotti che
colloca in un magazzino da cui successivamente servira i clienti.
Nello schema assume particolare rilievo la classificazione secondo il modo
di realizzare il prodotto. A volte gli elementi che costituiscono il bene fina-
le non possono essere facilmente identificati: il prodotto non puo pertanto
essere scomposto a ritroso, poiche i componenti originali non sono piu distin-
guibili o hanno cambiato natura. In questi casi si parla di produzione per
processo, ne sono un esempio i procedimenti utilizzati per ottenere acciaio,
carta e cemento. Altre volte il bene ottenuto e costituito da un certo numero
di componenti, o parti, in genere di diversa natura. Si puo parlare allora di
produzione per parti o manifatturiera; si pensi per esempio a prodotti quali
automobili, elettrodomestici e apparecchiature elettroniche. Una caratteri-
stica immediata di questo tipo di produzione e che un prodotto richiede una
fase di assemblaggio con la conseguenza che il processo produttivo associato
comprende quindi sia fasi di fabbricazione che fasi di montaggio. In genere il
primo tipo di produzione (per processo) e caratterizzata da un ciclo tecnolo-
gico ben definito e vincolante, si parla percio di ciclo tecnologico obbligatorio.
I procedimenti del secondo tipo invece sono caratterizzati da una grande va-
rieta nei cicli tecnologici delle parti componenti, cicli che spesso ammettono
numerose varianti, e possono essere pertanto definiti come cicli tecnologici
non obbligati.
L’ulteriore classificazione che ci rimane da analizzare e quella in base
alla realizzazione del volume di produzione. Anche in questa classificazione
possiamo individuare tre tipologie di produzioni:
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 11
Figura 1.2: Classificazione delle tipologie di sistemi di produzione.
12 CAPITOLO 1. I SISTEMI DI PRODUZIONE
• Unitarie: la variabilita dei cicli di produzione e molto elevata e l’attivita
produttiva e organizzata per ottenere le quantita richieste dai singoli
ordini.
• Per lotti: i cicli sono meno variabili nel tempo, i prodotti vengono rea-
lizzati per lotti di dimensioni anche superiori ai fabbisogni immediati
in modo da formare delle scorte destinate a soddisfare eventuali richie-
ste quando gli impianti saranno impegnati per la realizzazione di altri
prodotti.
• Continue: i cicli restano costanti nel tempo anche per periodi estesi, si
ha quindi la produzione ininterrotta di un prodotto dalle caratteristiche
omogenee nel tempo e un magazzino polmone.
Le correlazioni esistenti tra caratteristiche del prodotto e le tipologie del
processo di fabbricazione da impiegare sono ben rappresentate dalla matrice
prodotto - processo, vedi Figura 1.3.
Le condizioni ideali sono quelle corrispondenti ai punti della diagonale
principale (area di coerenza). In tal senso un’azienda che lavora pezzi con
caratteristiche assai variabili e ciascuno in serie pressoche uniche, e oppor-
tuno che impieghi un processo di lavorazione discontinuo di tipo job shop.
Un’azienda la cui produzione e di tipo standard, limitata ad un numero non
elevato di modelli, ciascuno pero fabbricato in grandi quantita, fa ricorso ad
un processo produttivo di tipo ripetitivo organizzato su linee di assemblag-
gio. La produzione di beni di largo consumo, o comunque richiesti in grandi
quantita, dovra necessariamente operare mediante processi di lavorazione
continui.
Il posizionamento dell’azienda in punti al di sopra o al di sotto della
diagonale principale e indicativo di condizioni di lavoro non perfettamente
bilanciate, sulle quali si possono formulare le considerazioni che seguono:
• Un punto al di sopra della diagonale indica che:
– Gli investimenti fissi realizzati sono limitati;
– Il sistema produttivo ha una struttura sufficientemente flessibi-
le da consentire variazioni abbastanza rapide dell’assetto produt-
tivo in caso di mutamento della domanda. Infatti la parte al-
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 13
Figura 1.3: Matrice prodotto - processo.
14 CAPITOLO 1. I SISTEMI DI PRODUZIONE
ta della matrice e caratterizzata da macchine “general purpose”
organizzate in base al layout “di processo”.
– I costi di fabbricazione sono elevati giacche vengono impiegate
nella produzione macchinari ed attrezzature non specialistiche.
• Un punto al di sotto della diagonale indica che:
– Gli investimenti fissi realizzati sono molto elevati in quanto sono
stati installati impianti e macchinari “specialistici”, costruiti su
misura per lo specifico processo che si intende sviluppare.
– Il sistema produttivo ha una struttura scarsamente flessibile, do-
vuta alla natura specialistica delle risorse utilizzate. In tal senso
risulta difficile adeguare la produzione ad eventuali mutamenti
nelle caratteristiche del prodotto desiderato.
– I costi unitari di fabbricazione sono ovviamente i piu bassi pos-
sibili, in virtu delle attrezzature e delle macchine specialistiche
impegnate nella produzione.
In definitiva la matrice prodotto processo da l’idea del corretto equilibrio
tra economia di scala e flessibilita operativa. L’automazione flessibile con-
sente di realizzare anche piccoli volumi di produzione in maniera rapida ed
economica. In tal senso l’automazione flessibile induce ad uno spostamento
a destra della diagonale principale; ossia rende l’organizzazione del lavoro di
tipo discontinuo job shop conveniente anche nel caso di produzione di articoli
in piccole quantita ma molto numerosi e diversificati.
Dopo aver classificato i vari tipi di sistemi produttivi e dopo avergli dato
locazione all’interno della matrice prodotto - processo, ora analizzeremo la
disposizione delle stazioni operative, ovvero studieremo il loro layout.
La scelta del layout, per quanto riguarda i processi di produzione mani-
fatturiera viene presa in base a vari parametri che possono essere:
1. Numero di movimentazioni (materiali - uomo -macchina)
• Layout a posizione fissa;
• Layout per reparti e linee di lavorazione o montaggio.
2. Altro:
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 15
Figura 1.4: Disposizione delle stazioni operative.
16 CAPITOLO 1. I SISTEMI DI PRODUZIONE
• Mix relativi al prodotto;
• Standardizzazione del prodotto e ripetitivita delle produzioni;
• Servizio al cliente;
• Complessita della produzione;
• Flessibilita del sistema produttivo;
• Produttivita e grado di automazione.
Nella produzione per reparti (job shop) ogni unita di lavoro o ordine di
lavorazione (costituito da un unico pezzo o da un certo numero di pezzi -
lotto o batch - che si muovono assieme, per esempio in un contenitore o pal-
let), richiede l’esecuzione di una serie di operazioni da parte di un gruppo
di centri di lavoro (macchine, stazioni, gruppi di operatori) in una sequenza
preassegnata (ciclo tecnologico) che eventualmente puo ammettere alternati-
ve. In queste organizzazioni produttive la varieta dei cicli da realizzare e tale
che l’unica forma di ordinamento possibile e quella di aggregare i macchinari
in reparti per il tipo di lavorazione realizzabile, vedi Figura 1.5
I flussi produttivi tendono pertanto ad essere via via piu intrecciati pas-
sando da job shop impiegati in qualche misura per commesse ripetitive (ci-
cli con qualche interferenza) all’impiego in produzioni su commesse singole
(possibilita di cicli con sensibili interferenze), vedi Figura 1.6
La creazione di reparti dotati di omogeneita tecnologica, oltre a facilitare
lo scambio di competenze fra operatori e la supervisione da parte dei capi
di primo livello, mette a disposizione una potenzialita produttiva (espressa
per esempio in ore macchina disponibili per l’esecuzione di una data classe
di operazioni tipiche del reparto) variamente utilizzate per le produzioni che
la richiedono, a tutto vantaggio della flessibilita operativa (tipica di questa
soluzione).
La produzione per celle manifatturiere si ha quando e possibile individua-
re delle famiglie di pezzi con cicli di lavorazione sufficientemente omogenei
(secondo i criteri della tecnologia a gruppi, o Group Technology), si possono
creare gruppi (celle) di macchine (questa volta di natura diversa) adibite alle
lavorazioni necessarie per ottenere l’intera famiglia di pezzi, vedi Figura 1.7
Si riduce cosı fortemente il grado di intreccio dei flussi produttivi rispet-
to alle soluzioni del job shop (con vantaggi in termini di semplificazione dei
trasporti e della gestione della produzione); in parallelo diminuisce pero la
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 17
Figura 1.5: Schema produzione per reparti.
18 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Figura 1.6: Schema produzione per reparti.
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 19
Figura 1.7: Schema produzione per celle.
20 CAPITOLO 1. I SISTEMI DI PRODUZIONE
flessibilita dell’impianto (ogni cella e infatti dedicata alla lavorazione di una
sola famiglia). In questo tipo di processo (flow shop), tutti i lavori da ese-
guire richiedono l’intervento di una stesso numero di macchine, l’ordine delle
operazioni e fisso ed uguale per tutti (routing fisso), i tempi di lavorazione su
ogni macchina possono essere differenti da job a job, il flusso di lavorazione
e unidirezionale. Si possono, inoltre, classificare diversi tipi di flow shop:
• Flow shop puro: tutti i lavori richiedono un’operazione su ogni mac-
china.
• Flow shop generico: i lavori possono non utilizzare qualche macchina
tra quelle appartenenti al flusso di lavorazione.
• Flow shop con sorpasso tra i lavori: la sequenza di lavorazione sulle
macchine non e la stessa.
• Flow shop senza sorpasso: la sequenza di lavorazione sulle macchine e
la stessa.
I punti di forza di una produzione per celle possono essere i seguenti:
• Semplificazione dei flussi di materiali;
• Maggiore semplicita gestionale;
• Riduzione dei tempi di set-up;
• Riduzione dimensione lotti;
• Riduzione tempi di attraversamento riduzione WIP;
• Riduzione occupazione spazio;
• Riduzione variabilita dei tempi di consegna
• Allargamento delle mansioni;
• Arricchimento delle mansioni;
• Identificazione delle responsabilita di prodotto e responsabilita di pro-
cesso;
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 21
• Maggiore livello di conformita qualitativa del prodotto.
Mentre i vari punti di debolezza possono essere:
• Difficolta di bilanciamento dei carichi fra celle;
• Maggiore rigidita a variazioni di mix, di volume, e a introduzione di
nuovi prodotti;
• Impiego, in alcuni casi, di un numero di macchine superiore rispetto
all’organizzazione a reparti;
• Presenza di operazioni fuori cella difficili da gestire;
• Maggiore esposizione ai guasti;
• Problemi di coesistenza con sistemi non organizzati in celle;
Le linee di produzione sono costituite da un insieme di macchine proget-
tate per realizzare rigidamente una sequenza prefissata di lavorazioni, per
prodotti da ottenere in grandi quantita e con varianti limite, vedi Figura 1.8
In questo caso il flusso dei materiali e lineare ed e incorporato nel processo
(in genere automatizzato). La gestione della produzione e certamente piu
semplice, ma la flessibilita dell’impianto e minima.
Le scelte del tipo di layout vengono fatte in base ai campi di applicazione
delle tecnologie Nello schema riportato in Figura 1.9 e possibile vedere i
diversi campi di applicazione dei vari tipi di assetti al variare del mix e del
volume dei prodotti realizzati.
Mentre nello schema in Figura 1.10 e possibile vedere i diversi campi di
applicazione dei vari tipi di assetti al variare della flessibilita di automazione:
Il confronto fra le varie soluzioni e riportato nella tabella in Figura 1.11.
22 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Figura 1.8: Schema produzione per linea.
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 23
Figura 1.9: Trade-off volumi e mix di produzione.
24 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Figura 1.10: Trade-off automazione e flessibilita.
1.3. DESCRIZIONE DEI PRINCIPALI SISTEMI PRODUTTIVI 25
Figura 1.11: Confronto produzione in linea e produzione per reparti.
26 CAPITOLO 1. I SISTEMI DI PRODUZIONE
Capitolo 2
I modelli matematici per il
supporto alle decisioni
2.1 L’approccio modellistico-ottimizzatorio.
Nell’atto di prendere delle decisioni, cioe di scegliere la migliore alternativa
tra quelle disponibili, l’uomo si avvale sempre, in modo conscio o piu spesso
inconscio, di un modello, ovvero di una rappresentazione semplificata
ma efficace della realta.
Tra i vari modelli generabili dal decisore, risultano rilevanti i modelli
matematici, la cui caratteristica e quella di fornire al problema una strut-
tura matematica, se non proprio algebrica, che consente di esaminare
un numero elevato di alternative, di analizzare la sensibilita alla
variazione dei parametri ambientali e di valutare l’esistenza e la
computabilita di una soluzione.
Un gran numero di problemi concernenti l’individuazione di decisioni sog-
gette a vincoli di diversa natura puo essere modellato e risolto con i metodi
propri della programmazione matematica, termine con cui si indica la
ricerca di una soluzione ottimale mediante l’uso di modelli ma-
tematici. Le applicazioni che essa trova nel mondo reale spaziano dalla
finanza all’agricoltura, dalla pianificazione della produzione industriale alla
distribuzione di energia elettrica e allo studio delle reti.
L’approccio logico-risolutivo ai problemi decisionali tramite programma-
zione matematica e noto come approccio modellistico-ottimizzatorio, e preve-
27
28CAPITOLO 2. I MODELLI MATEMATICI PER IL SUPPORTO ALLE DECISIONI
de due distinte ma integrate fasi di analisi al problema reale:
1. Rappresentazione tramite un modello matematico in grado di iden-
tificare i parametri e le variabili significative del problema, e le relazioni
che intercorrono tra essi;
2. Utilizzo di algoritmi di soluzione per determinare una soluzione del
problema e valutarne l’ottimalita.
La Figura 2.1 mostra tale processo in modo schematico.
Figura 2.1: Dal problema alla soluzione.
2.1. L’APPROCCIO MODELLISTICO-OTTIMIZZATORIO. 29
La prima fase del processo riguarda la definizione e l’analisi del problema.
In ambito industriale, in particolare per i sistemi di produzione, si tratta di
comprendere la natura del problema e identificare le decisioni che si devono
intraprendere in funzione del livello organizzativo cui afferisce il decisore, ma
su questo si tornera con piu precisione nel Capitolo 3.
Analizzato il problema, si identifica il modello decisionale di riferimento,
individuando le strategie decisionali che sembrano piu idonee, quindi i para-
metri significativi per il problema in questione, e le relazioni logico-funzionali
che sussistono tra questi. Questa fase del processo analitico-risolutivo e mol-
to importante e va eseguita con molta cura, perche dalla definizione degli
obiettivi e delle strategie mediante le quali raggiungerli dipende la consisten-
za del modello.
Nella fase successiva si provvede alla formulazione matematica del mo-
dello, ovvero alla descrizione formalizzata mediante linguaggio algebrico dei
parametri significativi e delle relazioni che tra essi sussistono. In particolare,
i parametri caratteristci del problema saranno tradotti in variabili e
le relazioni in vincoli.
L’utilizzo di tecniche risolutive, quali algoritmi, tecniche di simulazio-
ne o classiche tecniche analitiche, consentono di dedurre una soluzione (piu
frequentemente un insieme di soluzioni) per il problema. Questa fase del pro-
cesso risolutivo e stata appositamente distinta dalla fase di analisi e studio
della soluzione, perche l’utilizzo delle tecniche risolutive prevede una robu-
sta analisi iniziale sulle caratteristiche della soluzione e degli obiettivi che si
intendono raggiungere, al fine di “selezionare” la tecnica piu idonea. Per-
tanto, si puo affermare: non esiste una tecnica risolutiva “migliore”
in assoluto, ma la “bonta” di una tecnica e funzione delle soluzio-
ni e degli obiettivi che si intende perseguire, nonche (ovviamente)
della corretta implementazione delle precedenti fasi nel processo
analitico-risolutivo.
La successiva fase prevede la caratterizzazione delle soluzioni trovate, lo
studio delle relative proprieta analitiche nonche la analisi della stabilita di
tali soluzioni al variare delle caratteristiche del problema.
La fase di validazione ha infine una funzione rilevante, in quanto prevede:
30CAPITOLO 2. I MODELLI MATEMATICI PER IL SUPPORTO ALLE DECISIONI
• una analisi piu approfondita della soluzione e della coerenza che questa
presenta rispetto alla applicazione pratica per cui si e sviluppato il
modello. Eventuali inammissibilita (pratiche e non analitiche) sono
fondamentali per poter “correggere” il modello stesso;
• analisi della “bonta” del modello nel suo complesso: in funzione dei
risultati ottenuti e importante chiedersi se il modello elaborato e effet-
tivamente adeguato alla soluzione del problema in esame.
Si noti infine come ogni fase del processo, seppur distinta, sia integrata
con le altre, e come il controllo delle fasi permetta un feedback essenziale per
il continuo miglioramento e sviluppo del modello logico-matematico.
2.2 La formulazione dei modelli.
In termini molto generali un problema di programmazione matematica puo
essere formulato nel modo seguente:
max f(a)
st a ∈ A (2.1)
dove A e l’insieme finito o infinito delle alternative o azioni possibili, a e
l’alternativa generica e la funzione f(a) e la funzione obiettivo che esprime
l’utilita della alternativa a per il decisore. Il problema consiste quindi nel
determinare un’alternativa a∗ ottima, per la quale cioe si abbia:
f(a) ≤ f(a∗) ∀a ∈ A
Si noti che l’aver scritto max f(a) non e per nulla restrittivo in quanto un
problema di minimizzazione puo essere ricondotto ad uno di massimizzazione
semplicemente cambiando il segno della funzione obiettivo (e naturalmente
viceversa).
Se il numero degli elementi dell’insieme A e finito il problema e concet-
tualmente banale: si tratta di esaminare tutte le alternative e selezionare la
migliore. Dal punto di vista computazionale tuttavia questo modo di proce-
dere che viene detto metodo esaustivo e utilizzabile solo quando il numero
2.2. LA FORMULAZIONE DEI MODELLI. 31
delle alternative e molto limitato. Nel caso contrario, quando cioe il numero
delle alternative e elevato o infinito (in questo caso sorgono anche problemi
di esistenza del massimo: a rigore l’espressione max f(a) andrebbe sostituita
con sup f(a) puo tuttavia essere possibile determinare il massimo della f(a)
in un tempo ragionevole sfruttando una qualche particolarita di A e di f(a),
usando cioe qualche particolare metodo di ottimizzazione.
Molto spesso la dimensione e la complessita del problema sono tali che,
anche con l’ausilio di un efficace metodo di ottimizzazione, non e possibile
determinare con sicurezza la soluzione ottima del problema. In tal caso si fa
ricorso ad un metodo euristico cioe ci si limita a cercare una “buona” solu-
zione del problema. Naturalmente puo verificarsi il caso in cui la soluzione
determinata attraverso il metodo euristico sia anche ottima, ma la natura
stessa del metodo non fornisce garanzie in tal senso.
La formulazione di un modello e un processo molto delicato, che richede
di individuare gli aspetti piu significativi del problema reale che siano anche
facilmente formalizzabili in termini matematici. Tali operazioni non sono
spesso riconducibili ad un procedimento sistematico, e dipendono fortemente
dalla abilita e dalle conoscenze del decisore. Nelle sezioni che seguono, si
indicheranno alcune “regole” di base per la formulazione di modelli mate-
matici. Queste sono da ritenersi puramente indicative, e non costrittive, pur
rappresentando un valido ausilio, o quantomeno un punto di riferimento, per
chi intenda cimentarsi nella elaborazione di modelli per il supporto alle deci-
sioni. Si noti che queste regole, pur essendo di carattere del tutto generale,
sono orientate alla formulazione di modelli per l’ottimizzazione dei sistemi di
produzione, in accordo con il tema generale di questo testo.
2.2.1 Alcune convenzioni.
Indici. Sono usati per numerare gli items (domande di prodotto, scenari,
periodi, prodotti, stazioni lavorative). Si indicano con lettere in ca-
rattere minuscolo, di solito si parte da quelle che si trovano nel mezzo
dell’alfabeto (i, j, k).
Parametri. Sono i valori che si assumono noti prima del momento di rife-
32CAPITOLO 2. I MODELLI MATEMATICI PER IL SUPPORTO ALLE DECISIONI
rimento a cui si riferisce il problema, o che possono essere facilmente
desumibili da altri parametri noti (i vettori di domanda, i costi, le pro-
babilita, le distanze). Si indicano con lettere in carattere minuscolo,
partendo da quelle prossime all’inizio dell’alfabeto (a, b, c).
Variabili decisionali. Sono le informazioni che si vogliono conoscere tra-
mite l’implementazione del modello (localizzazione delle facilities, as-
segnamento, quantita di produzione ottima). Si indicano con lettere
in carattere maiuscolo, di solito si usano quelle localizzate alla fine
dell’alfabeto (x, y, z).
Funzioni obiettivo. Sono le funzioni che si vogliono ottimizzare (cioe mi-
nimizzare o massimizzare). Possono essere costituite anche da una sola
variabile decisionale, ma piu spesso si tratta di funzioni di un insieme
di variabili decisionali.
2.2.2 Le 9 regole della formulazione.
1. Definire chiaramente tutti gli indici e gli insiemi. Ad esempio:
I: l’insieme dei prodotti, indicati con l’indice i;
K: l’insieme dei possibili scenari, indicati con l’indice k;
T : l’insieme degli intervalli temporali, indicati con t.
2. Definire distintamente e chiaramente gli indici e gli insiemi, i
parametri e le variabili decisionali.
3. Nel descrivere i parametri e le variabili decisionali a parole,
se un indice appare nella descrizione analitica, deve anche
essere presente in quella verbale. Ad esempio, tra le due seguenti
definizioni:
- dij = distanza tra il sito produttivo i e il cliente j;
- dij = distanza;
solo la prima e corretta.
2.2. LA FORMULAZIONE DEI MODELLI. 33
4. Non lasciare indefiniti gli indici nella funzione obiettivo. Ad
esempio, tra le due seguenti funzioni obiettivo:
min∑
i∈I∑
j∈J hidijyij
min∑
i∈I cijxij
solo la prima e corretta.
5. Deve apparire almeno una variabile decisionale nella funzio-
ne obiettivo e in ciascun vincolo. Ad esempio nella seguente
formulazione:
min∑i∈I
∑j∈J
hidijyij
st dij ≥ 0
la funzione obiettivo e scritta correttamente, mentre il vincolo potrebbe
essere sbagliato se dij fosse un valore di distanza in input, e non una
variabile decisionale.
6. Assicurarsi che ogni variabile sia collegata in qualche modo
con le altre. Se cosı non fosse, il problema risulterebbe separabile e con
molta probabilita si avrebbe un errore. Ad esempio, nella formulazione:
min∑i∈I
hizi
st∑j∈J
xj = P
zi ∈ {0, 1}, ∀i ∈ Ixj ∈ {0, 1}, ∀j ∈ J
le variabili x e z non sono collegate fra loro. Ci sarebbe allora bisogno
di un vincolo di collegamento addizionale, ad esempio del tipo:
zi −∑j∈J
aijxj ≤ 0, ∀i ∈ I
Si osservi, che la regola fornita non impone che ogni variabile sia col-
legata direttamente alle altre, situazione che potrebbe anche portare
alla presenza di vincoli ridondanti, ma altresı richiede che gruppi di
variabili collegate fra loro siano a loro volta collegati.
34CAPITOLO 2. I MODELLI MATEMATICI PER IL SUPPORTO ALLE DECISIONI
7. Se una variabile o una costante inclusa in un vincolo pre-
senta qualche indice, allora deve avvenire una delle seguenti
operazioni:
• Sommare su tutti i valori dell’indice;
• Specificare per quali valori dell’indice e applicato il vin-
colo;
ma non avvenire le operazioni contemporaneamente. Ad esem-
pio, il seguente vincolo: ∑j∈J
yij = 1, ∀i ∈ I
e scritto correttamente, mentre il vincolo:∑j∈J
hikdijkyijk ≤ D, ∀i ∈ I
non e scritto correttamente, perche non fornisce indicazioni sull’uso
dell’indice k.
8. Cercare di formulare il problema linearmente (quando possi-
bile!). Questo significa:
• Cercare di evitare moltiplicazioni tra le variabili decisionali, sia
nella funzione obiettivo, che nei vincoli;
• Cercare di utilizzare variabili decisionali lineari;
• Evitare funzioni logaritmiche e trigonometriche;
• Cercare di essere “creativi” nelle trasformazioni delle variabili.
9. Disaggregare i vincoli, quando e possibile. Ad esempio in:
yij ≤ xj, ∀i ∈ I, ∀j ∈ J
c’e una effettiva disaggregazione dei vincoli, che non e presente invece
in: ∑i∈I
yij ≤ |I|xj, ∀j ∈ J
Capitolo 3
Ottimizzazione dei sistemi di
produzione.
3.1 Parametri strategici dei sistemi produt-
tivi
La struttura di un sistema produttivo e fortemente condizionata da tre
variabili fondamentali:
• L’interazione a monte con i fornitori.
• L’interazione a valle con i clienti.
• Le caratteristiche del prodotto.
Le prime due rappresentano l’interazione del sistema produttivo con l’e-
sterno e generano un mutamento della struttura interna per un migliore inter-
facciamento con l’ambiente. La terza rappresenta la specificita dell’oggetto
della produzione, attorno alla quale viene costruito il processo produttivo al
fine del conseguimento della conformita del prodotto alle specifiche richieste.
I parametri strategici della produzione sono le variabili interne sulle
quali l’impresa puo operare per costruire un’azione che generi all’esterno un
vantaggio competitivo nei confronti dei concorrenti.
Nel 1984 Hayes e Wheelwright, e in seguito Gunn nel 1987, hanno pro-
posto alcuni fattori chiave origine del vantaggio competitivo:
35
36 CAPITOLO 3. OTTIMIZZAZIONE DEI SISTEMI DI PRODUZIONE.
– Capacita Produttiva;
– Livello di servizio;
– Livello Tecnologico;
– Grado di Integrazione;
– Forza Lavoro;
– Qualita;
– Pianificazione della produzione;
– Organizzazione;
– Flessibilita;
– Indice di rotazione delle scorte.
Caratteristica fondamentale di questi parametri e quella di essere indica-
tori quantitativi, essendo possibile migliorare, quindi ottimizzare, la perfor-
mance aziendale solo qualora questa sia misurabile (ricorda: si puo migliorare
solo cio che e misurabile).
3.2 La gestione dei sistemi di produzione
La decisioni prese al fine di ottimizzare la gestione dei sistemi di produzione
svolgono un ruolo di primaria importanza. Solo individuando le strategie da
adottare e pianificando le operazioni da effettuare, infatti si puo riuscire a
sopravvivere in un contesto competitivo come quello industriale.
L’attivita di pianificazione delle azioni e naturale per l’uomo, che co-
stantemente si trova ad effettuare scelte cercando di prevederne gli effetti
futuri.
A meno che i decisori non abbiano, pero, una idea abbastanza chiara su
quale possa essere il futuro, non c’e modo di formulare piani accurati. La
motivazione e che molti fattori determinanti sull’esito delle azioni future su-
biscono variazioni, piu o meno apprezzabili. E il caso, ad esempio, di una
3.2. LA GESTIONE DEI SISTEMI DI PRODUZIONE 37
industria manifatturiera che produce e commercializza dei prodotti con carat-
teristiche stagionali, la cui domanda varia notevolmente nel corso dell’anno.
Il problema che si pone il management dell’azienda e:
• Si deve produrre ad un tasso costante, in modo da minimizzare il tur-
nover lavorativo e stabilizzare il flusso di operazioni, o si deve produrre
seguendo la fluttuazione stagionale della domanda per ridurre i costi di
magazzino?
• Supponendo che si decida di seguire la fluttuazione della domanda,
quali sono le azioni giuste da intraprendere in un’ottica di lungo e
medio periodo?
• Quale e il migliore approccio per schedulare le operazioni?
• E piu conveniente produrre ogni parte del prodotto, o acquistare alcuni
componenti di questo da terzi?
A tutte queste domande si cerca di fornire una risposta accurata attra-
verso una mirata attivita decisonale e di gestione.
Piu in dettaglio, la gestione delle aziende manifatturiere avviene attraver-
so l’individuazione delle scelte che, secondo l’orizzonte temporale in cui sono
proiettate, e secondo il coinvolgimento dei diversi livelli aziendali, si possono
suddividere in:
Strategiche : sono le scelte effettuate al livello decisionale piu alto. L’obiet-
tivo e determinare le strategie da intraprendere, quindi le caratteristiche
del progetto che si intende realizzare.
Tattiche : sono le scelte effettuate al livello decisionale intermedio, relative
alla gestione della domanda e dei servizi. In questo livello tipicamente
si pianifica il layout di impianto, la gestione di materiali, l’allocazione
delle risorse.
Operative : sono le scelte effettuate al livello decisionale piu interno, re-
lative alla realizzazione fisica del prodotto. Tipicamente le decisioni
coinvolgono la scelta del dimensionamento di impianto e lo scheduling
della produzione.
38 CAPITOLO 3. OTTIMIZZAZIONE DEI SISTEMI DI PRODUZIONE.
Nel caso di organizzazioni complesse, quali sono ordinariamente i sistemi
produttivi, pero gli obiettivi strategici non possono essere raggiunti in modo
immediato ma necessitano di essere tradotti in sotto-obiettivi sempre piu
operativi e dettagliati: formulazione di politiche aziendali, piani operativi,
procedure e regole.
Nel processo di gestione si possono percio distinguere diversi livelli ge-
rarchici: passando da un livello al successivo gli obiettivi superiori (decisioni
strategiche) vengono frammentati in piu sotto-obiettivi; decresce il grado di
astrazione (astrazione dai particolari di realizzazione) e aumenta invece il
carattere operativo e procedurale (passaggio dal che cosa al come). Ogni
fase ha il compito di perseguire gli obiettivi del livello gerarchico superiore,
avvalendosi degli strumenti forniti da quello inferiore.
Gli obiettivi strategici sono strumenti ad ampio raggio d’azione con un
lontano orizzonte di previsione, mentre i piani, i programmi, e le procedure
hanno un livello di dettaglio sempre piu spinto.
La gestione e, dunque, un processo dinamico che fa uso di livelli di astra-
zione e aggregazione differenti sia per semplificare la complessita del proble-
ma, sia per far fronte al diverso grado di informazioni disponibili lungo l’asse
temporale.
Informazioni abbondanti sono disponibili solo nell’immediata prossimita
temporale degli eventi; mentre sono molto scarse al momento della formula-
zione delle strategie, a causa della distanza temporale che separa queste dal
dal loro obiettivo.
Il piano strategico e quello che dista maggiormente dal suo obiettivo e
l’ordine di grandezza tipico del suo orizzonte temporale e di 3-5 anni. Il sod-
disfacimento del piano passa attraverso la formulazione e il conseguimento
dei diversi piani aziendali: piano delle vendite e del marketing, piano della
ricerca e sviluppo, piano finanziario, piano della produzione. Per ognuno di
essi si ha una ulteriore frammentazione; nel caso del piano di produzione si ha
un piano aggregato (1 anno), un programma principale di produzione (Master
Production Schedule, 3-6 mesi), un eventuale programma di assemblaggio (1
mese) e infine il controllo operativo (continuo).
In funzione dei livelli di scelta tattici e operativi, in ogni fase della gestione
si possono individuare tre momenti fondamentali:
3.3. IL RUOLO DEI MODELLI MATEMATICI. 39
La pianificazione. Per pianificazione si intende la funzione della gestione, il
cui compito e di selezionare gli obiettivi di un’organizzazione e stabilire
le strategie, le politiche, le procedure, i programmi e i progetti necessari
al loro raggiungimento. Piu specificatamente per pianificazione della
produzione si intende la funzione che definisce il livello complessivo di
produzione.
La programmazione. Compito della programmazione e la traduzione di
un obiettivo in un piano, utilizzando gli strumenti a disposizione di un
determinato livello gerarchico. La programmazione e dunque l’attivita
che definisce che cosa deve essere effettuato, in che quantita, e in quali
scadenze temporali. L’attivita di programmazione segue logicamente
a quella di pianificazione perche il suo scopo e rendere operativo un
obiettivo di cui si conosce la realizzabilita. Il programma elaborato deve
essere fattibile e il migliore tra le possibili alternative, in grado cioe di
sfruttare al meglio le risorse assegnate. Il programma elaborato ad un
determinato livello, oltre a rappresentare l’output di una determinata
fase, costituisce anche l’input (gli obiettivi) del livello successivo.
Il controllo. Lo scostamento tra programmi e realta e inevitabile e occorre
quindi inserire una fase di controllo che ha come scopo fornire le in-
formazioni necessarie per dirigere le azioni di correzione. Il controllo
avanzamento di produzione e la funzione di produzione che controlla
l’andamento delle attivita in relazione al programma di produzione,
evidenzia tempestivamente le divergenze gravi ed attua gli interventi
indicati dalla direzione.
3.3 Il ruolo dei modelli matematici.
I modelli matematici sono un strumento essenziale di ausilio per il supporto
alle decisioni.
I vantaggi dell’utilizzo di tali modelli in ambito industriale sono molte-
plici:
• Durante la formulazione e l’implementazione del modello la conoscenza
che si ha del sistema aumenta considerevolmente: emergono proprieta
strutturali del sistema che altrimenti non sarebbero evidenti;
40 CAPITOLO 3. OTTIMIZZAZIONE DEI SISTEMI DI PRODUZIONE.
• Molti problemi possono essere risolti all’ottimo, pur non presentando
a prima vista degli elementi che guidino all’individuazione della scelta
migliore;
• Si possono effettuare delle simulazioni: si ha l’opportunita di valuta-
re gli effetti di un insieme di deciosioni, senza doverle costosamente
implementare nella realta;
Sono presenti, tuttavia, anche dei potenziali svantaggi, di cui pero e
importante tener conto. Senza scendere nello specifico dei singoli casi, gli
svantaggi che generalmente risultano piu rilevanti nell’adozione di modelli
matematici sono:
• Non sempre i parametri che sono significativi per il problema da analiz-
zare possono essere descritti appropriatamente con un formalismo ma-
tematico (si pensi ad esempio al costo sociale che genera la produzione
di un certo tipo di prodotto in una certa zona);
• I dati introdotti nel modello potrebbero non essere coerenti con le spe-
cifiche richieste dal modello stesso: la risposta fornita potrebbe essere
distorta.
3.4 La gestione dei flussi produttivi: le logi-
che push e pull
Le tecniche di gestione dei flussi produttivi all’interno dei sistemi di produ-
zione sono tipicamente classificate secondo due logiche distinte in gestione di
tipo pull e gestione di tipo push.
Una gestione di tipo pull e caratterizzata dal fatto che l’ingresso delle
risorse materiali nel sistema e regolato da valle del processo produttivo (let-
teralmente pull significa tirare, e infatti l’ingresso delle risorse e tirato dagli
ordini di realizzazione).
Una gestione di tipo push e invece caratterizzata dall’anticipo dell’ingres-
so di risorse materiali nel sistema allo scopo di garantire il tempo di consegna
3.4. LA GESTIONE DEI FLUSSI PRODUTTIVI: LE LOGICHE PUSH E PULL41
richiesto dal mercato; l’avanzamento e regolato non sui fabbisogni a valle ma
sulla base di previsioni di tali fabbisogni.
Per capire, pero, con precisione cosa si intende con sistemi produttivi di
tipo push e di tipo pull, e necessario prima definire le caratteristiche temporali
dei flussi produttivi, definendo dei parametri caratteristici:
Production Time. La produzione manifatturiera puo essere generalmente
pensata come una successione di fasi di fabbricazione/approvvigionamento
e assemblaggio, separate da eventuali buffers di scorte. Per ogni fase
si puo definire il tempo di attraversamento TA (lead time o throughput
time). Il tempo di attraversamento di una fase di un proces-
so produttivo e l’intervallo di tempo che intercorre dal mo-
mento in cui sono disponibili i materiali/componenti in input,
a quando e disponibile il componente/prodotto in output (il
primo elemento del lotto). Il lead time di approvvigionamento
viene definito invece come l’intervallo di tempo che intercorre dal
momento in cui viene ordinata la merce a quando essa e dispo-
nibile per la produzione. Si definisce quindi il Production Time
come il tempo di attraversmento cumulativo di un prodotto, dal
momento in cui vengono ordinate le materie prime, a quello in cui esse
vengono trasformate in prodotto finito, passando attraverso le varie fasi
del processo. Il Production Time e l’orizzonte temporale minimo con
il quale la produzione deve guardare al mercato finale determinando la
lunghezza del piano principale di produzione
Delivery Time. E’ il tempo di consegna, ovvero l’intervallo di tempo
compreso tra il momento in cui il cliente ordina un prodotto e
il momento in cui vuole che questo prodotto gli venga conse-
gnato. Il suo valore e generalmente fissato dal cliente o dal mercato ed
e quindi un dato non modificabile dalla produzione. Il Delivery Time
dipende strettamente dal tipo di business considerato. Nel caso di pro-
duzione per il magazzino, puo risultare estremamente breve, dell’ordine
di poche ore, mentre nei casi di produzioni su commessa assume valori
maggiori dello stesso Production Time. Nella maggior parte dei casi il
Production Time e maggiore del Delivery Time, e sono neccessarie di
42 CAPITOLO 3. OTTIMIZZAZIONE DEI SISTEMI DI PRODUZIONE.
conseguenza delle previsioni per approvvigionare i materiali e realizzare
le operazioni produttive.
A questo punto si possono definire in maniera piu dettagliata i sistemi di
tipo push e pull. Un sistema produttivo si definira di tipo push se presentera
un Production Time strettamente maggiore del Delivery Time, viceversa si
dira di tipo pull.
In un sistema pull, pertanto, i materiali vengono “tirati” dentro al siste-
ma dagli ordini presenti in portafoglio; cio e possibile in quanto tali ordini
coprono il tempo di attraversamento di produzione e approvvigionamento.
Viceversa in un sistema push e necessario anticipare l’ingresso dei mate-
riali nel sistema e gli ordini di lavorazione perche il tempo di attraversamento
e piu lungo dell’orizzonte del portafoglio ordini.
Sistemi pull puri sono molto rari nelle tipologie produttive manifatturiere
e prevalgono invece le situazioni in cui il portafoglio ordini e completato da
previsioni di vendita, almeno nella parte iniziale. L’inconveniente maggiore
per tali sistemi, infatti, risulta il Delivery Time a volte troppo elevato.
Un sistema di tipo pull e governato interamente da ordini e dunque sembra
non necessitare di previsioni. Cio in realta non e vero, perche oltre alle risorse
materiali si devono considerare gli impianti e la forza lavoro, ovvero le risorse
che definiscono la capacita produttiva di un processo manifatturiero, che
devono essere approvvigionate con l’anticipo sufficiente a renderle disponibili
al momento dell’utilizzo.
Il principale inconveniente dei sistemi push e legato alle eventuali varia-
zioni del piano di produzione: se esso cambia, i materiali che sono stati gia
lavorati risultano non piu necessari e devono quindi essere messi a magazzino
in attesa di un loro eventuale futuro utilizzo.
Si osservi infine che la realta e costituita nella maggioranza dei casi da
sistemi misti push-pull. Per ovviare infatti agli inconvenienti della gestione
in una logica piuttosto che nell’altra, si possono gestire i materiali in logica
pull sino ad una determinata posizione del flusso produttivo, e mantenere la
logica push nelle precedenti fasi. In particolare, essendo per definizione un
sistema pull quello in cui il Delivery Time e maggiore del Production Time,
si possono gestire pull le fasi terminali del processo, e realizzare in un’ottica
push i semilavorati attraverso le prime fasi del processo. Si definisce cerniera
3.4. LA GESTIONE DEI FLUSSI PRODUTTIVI: LE LOGICHE PUSH E PULL43
il punto di collegamento che segna la transizione tra le due logiche nel flusso
produttivo.
La cerniera funziona da elemento di disaccoppiamento delle fasi gestite
pull da quelle gestite push, e pertanto e costituita da un buffer (magazzino)
di semilavorati opportunamente dimensionato. Si possono individuare due
dimensioni per localizzare la cerniera lungo il processo produttivo:
TA del processo produttivo. E’ necessario collocare la cerniera nell’istan-
te pari alla differenza tra il Production Time e il Delivery Time. Se
fosse piu a monte non permetterebbe il rispetto dei tempi di conse-
gna; se fosse piu a valle non sfrutterebbe al meglio le potenzialita del
sistema.
Volume e gamma di prodotto. Nella pratica in funzione della struttura
di prodotto si possono individuare 3 forme di riferimento:
• A cono: caratterizzata da molti componenti in entrata al proces-
so (materie prime) e pochi articoli in uscita (prodotti finiti), ad
esempio il cantiere navale.
• A cono rovesciato: caratterizzata da pochi articoli in entrata e
molti in uscita, ad esempio la cartiera.
• A coni affacciati: si ha una diminuzione degli articoli in una po-
sizione intermedia all’interno del flusso produttivo, ad esempio
l’industria automobilistica.
44 CAPITOLO 3. OTTIMIZZAZIONE DEI SISTEMI DI PRODUZIONE.
Figura 3.1: Sistemi misti.
Capitolo 4
La linea di produzione
Una linea di produzione e un sistema produttivo caratterizzato dalla sequen-
zialita delle operazioni che si svolgono per la realizzazione delle unita finite.
Nella sezione successiva daremo le definizioni dei parametri di base che “gio-
cano” un ruolo determinante nella valutazione delle prestazioni di tali sistemi.
Nella Sezione 4.2 introdurremo il dimensionamento di una linea di produzio-
ne come problematica fondamentale nella scelta del numero di stazioni di
lavoro in cui la linea deve essere suddivisa. La trattazione prevedera l’intro-
duzione di vincoli che risulteranno caratteristici di un processo produttivo
in linea e delle variabili decisionali che gestiscono tale problematica. Questi
due ingredienti daranno origine alla formulazione matematica del problema
del minimo numero di stazioni lavorative. Nella Sezione 4.4 si affrontera un
problema successivo a quello della scelta delle stazioni lavorative, ovvero il
bilanciamento dei carichi di lavoro delle stazioni di una linea, che portera alla
definizione di coefficienti quali l’inattivita della linea e l’efficienza della linea
stessa. A partire da questo problema, nella sezione successiva, daremo spa-
zio a come si possa passare da un formato di un problema decisionale ad un
altro, problematica che nei sistemi manifatturieri trova molta applicabilita.
45
46 CAPITOLO 4. LA LINEA DI PRODUZIONE
4.1 Il carico lavorativo, il tasso di produzio-
ne, le relazioni di incompatibilita
Una linea di produzione e formata da una sequenza di stazioni lavorative
all’interno delle quali si svolgono le operazioni necessarie per la realizzazione
fisica del prodotto. Definiamo come carico di lavoro di una stazione il tempo
in cui essa e in lavorazione durante un ciclo, ovvero per la realizzazione di una
unita di prodotto. Una volta che abbiamo associato ad ogni stazione un cari-
co, possiamo individuare la stazione piu lenta del processo produttivo come
la stazione a cui corrisponde il carico massimo. L’importanza di quest’ulti-
mo parametro sta nella definizione del tasso di produzione (o production rate)
della linea, dato proprio dal reciproco di tale valore. Per esempio se il carico
massimo e pari a 10 ore per pezzo il tasso di produzione e pari banalmente
a 1 pezzo ogni 10 ore. Infine definiamo una relazione di precedenza tra due
operazioni (k, k′), che indichiamo con k → k′, il vincolo che non consente di
cominciare il processamento di k′ se prima non sia terminato quello di k.
4.2 Dimensionamento di una linea
Il problema del dimensionamento di una linea di produzione e fondamental-
mente legato alla ricerca del numero minimo di stazioni lavorative da attivare
in linea. Il problema e il seguente:
Dati: un insieme di lavorazioni che la linea e incaricata di effettuare per
la realizzazione di una unita di prodotto finito; i rispettivi tempi di proces-
samento delle suddette operazioni; le specifiche di produzione; un insieme A
di coppie di operazioni legate da relazioni di precedenza.
Trova: un assegnamento delle operazioni a stazioni di lavoro.
Tale che: siano verificate le specifiche di produzione, i vincoli di incom-
patibilita tra coppie di operazioni siano rispettati e sia minimo il numero di
stazioni attivate.
Supponiamo che le precedenze tra le operazioni siano rappresentabili tra-
mite un grafo delle precedenze G(V,A), in cui all’insieme dei vertici V sia-
4.2. DIMENSIONAMENTO DI UNA LINEA 47
no associate le operazioni, e gli archi orientati dell’insieme A indichino le
precedenze dirette tra le operazioni stesse.
Introduciamo una variabile decisionale binaria xij che assume valore 1 se
l’operazione i viene assegnata alla stazione j e assume valore 0 altrimenti, e
analizziamo vincoli ed obiettivi.
La natura di una linea suggerisce una prima osservazione e cioe che ogni
operazione deve essere assegnata ad una unica stazione lavorativa. Que-
sto vincolo si puo tradurre in termini di programmazione matematica come
segue:
|T |∑j=1
xij = 1 ∀i ∈ T (4.1)
ovvero, fissata un’operazione i, la variabile xij deve valere 1 (e quindi i
deve essere assegnata) in corrispondenza di una ed una sola stazione lavo-
rativa j. Il lettore puo notare la scelta fatta di considerare per ipotesi che
esistano al piu |T | stazioni lavorative da attivare, una per ognuna delle ope-
razioni. Questa scelta e fatta (come si puo intuire dalla lettura dei vincoli)
per dare un limite alla valutazione delle sommatorie e al numero di vincoli
che si riferiscono alle stazioni stesse.
Avendo definito il carico di una stazione lavorativa j come il tempo che j
impiega ad eseguire le operazioni che le sono state assegnate, si puo scrivere
un secondo vincolo di assegnamento come segue:
|T |∑i=1
xijdi = Cj ∀j = 1, . . . , |T | (4.2)
ovvero la somma delle durate delle operazione associate a j eguaglia il suo
carico (notate come in questo caso sia cambiato l’indice della sommatoria da
j ad i).
Dopo aver delineato i vincoli di assegnamento, possiamo definire i vincoli
sulle specifiche si produzione. Indichiamo con c.m.t., carico massimo teorico,
il parametro che definisce il tempo limite massimo che la stazione piu lenta
(ovvero quella piu carica) puo aver associato affinche siano verificate le speci-
fiche di produzione. Facciamo un esempio: immaginiamo che uno studio della
domanda sul nostro prodotto indichi che il mercato e in grado di assorbire
48 CAPITOLO 4. LA LINEA DI PRODUZIONE
una produzione di circa 1000 unita all’anno. Tale valore viene trasferito allo
stabilimento di produzione dove i progettisti stanno realizzando la linea. Il
parametro c.m.t. e ottenibile facilmente dalla trasformazione delle specifiche
di produzione (1000 unita l’anno) come segue:
356giornianno
1000pezzianno
∼= 8ore
pezzi.
Una volta calcolato c.m.t. si puo facilmente scrivere il vincolo sul rispetto
delle specifiche di produzione:
Cj ≤ c.m.t. ∀j = 1, . . . , |T | (4.3)
ovvero il carico Cj assegnato ad ogni stazione j deve essere non superiore
al carico massimo teorico c.m.t..
Passiamo ora ai vincoli di precedenza tra operazioni. Come detto nella
definizione del problema in esame, sia A l’insieme delle coppie di operazioni
legate da vincoli di precedenza, ovvero:
A := {(k, k′) : k → k′, k, k′ ∈ T}.
Per ogni coppia (k, k′) ∈ A si deve scrivere una relazione secondo cui l’opera-
zione k′ deve essere assegnata ad una stazione che non sia a monte di quella
a cui e stata assegnata k. La relazione che cerchiamo e la seguente:
xk′j ≤j∑
j′=1
xkj′ ∀j = 1, . . . , |T |,∀(k, k′) ∈ A (4.4)
Analizziamo la correttezza del vincolo, con l’ausilio della Figura 4.1.
Sia (k, k′) ∈ A. Se l’operazione k′ e stata assegnata alla stazione 3
(xk′3 = 1), affinche sia verificato il vincolo di precedenza tra (k, k′) deve neces-
sariamente verificarsi che l’operazione k sia stata assegnata ad una qualunque
delle stazioni precedenti o al limite alla stazione 3 stessa. Dato il vincolo (1)
questo corrisponde alla scrittura di un or ovvero al verificarsi della seguente
situazione: o k e assegnato alla stazione 1, o k e assegnato alla stazione 2,
o k e assegnato alla stazione 3. Questo si traduce in∑3
j′=1 xkj′ = 1. Si puo
facilmente verificare che la relazione (4) soddisfa tale requisito: infatti, se
il termine di sinistra della disuguaglianza vale 1, necessariamente anche il
4.2. DIMENSIONAMENTO DI UNA LINEA 49
Figura 4.1: Relazione di precedenza.
termine a destra dovra valere 1 (1 non puo essere minore od uguale a zero).
Nel caso in cui il primo termine sia uguale a zero, ovvero nel caso in cui k′
non sia stata assegnata alla stazione j, allora il termine di destra potra (come
prevede la disuguaglianza) valere sia 0 che 1, ovvero l’operazione k potra o
meno essere stata assegnata nelle stazione a monte di j.
Definiti anche i vincoli sulle relazioni di precedenza, possiamo passare alla
definizione della funzione obiettivo. Come specificato, il nostro obiettivo sta
nella minimizzazione del numero di stazioni da attivare. Per raggiungere que-
sto obiettivo, possiamo pensare ad una funzione di costo fittizia cij associata
all’assegnamento di un task i ad una stazione j (se vogliamo il minor nu-
mero di stazioni, dobbiamo assegnare piu task possibili alle prime stazioni).
Per forzare l’apertura del minor numero possibile di stazioni, progettiamo
una funzione di costo con una struttura tale per cui il costo aumenta all’au-
mentare del numero di stazioni utilizzate. Una configurazione possibile e la
seguente:
cij = cj, ∀i ∈ T|T |cj ≤ cj+1, ∀j = 1, . . . , |T |
ovvero, il costo di associare una operazione ad una stazione non dipende
dal tipo di operazione, ma dal numero di stazioni attivate. I vincoli sono tali
50 CAPITOLO 4. LA LINEA DI PRODUZIONE
per cui risulta piu economico attivare il minimo numero di stazioni. Con tale
funzione di costo, la funzione obiettivo puo scriversi nella forma:
Min|T |∑i=1
|T |∑j=1
cijxij
Una formulazione alternativa, che non tenga conto del costo associato al-
l’apertura di una stazione, ma solo del numero minimo di stazioni da attivare
e la seguente.
Introduciamo una variabile decisionale yj che assume valore 1 se la sta-
zione j viene attivata e assume valore zero altrimenti. La funzione obiettivo
si puo facilmente scrivere come segue:
Min|T |∑j=1
yj
A questo punto, pero, l’introduzione di una nuova variabile (nella formu-
lazione precedente si costruiva solo una funzione di costo assegnando delle
costanti cij), ci obbliga a trovare una relazione che leghi la variabile decisio-
nale xij con la yj. Infatti, se non lo facessimo, la soluzione ottima sarebbe
zero, in quanto tutte le yj si disporrebbero a zero senza violare nessun vinco-
lo. Per poter definire tale relazione e sufficiente imporre che, qualora venga
assegnata alla stazione j una qualunque operazione i, la stazione j debba
essere attivata, ovvero yj = 1. In termini matematici:
xij ≤ yj ∀i ∈ T,∀j = 1, . . . , |T | (4.5)
Infatti, se xij vale 1 in corrispondenza di una certa operazione i e stazione
j, yj varra necessariamente 1, non potendo essere 1 ≤ 0. Nel caso in cui
xij = 0, si puo verificare che yj = 1 (un’altra operazione attivera j) o yj = 0
(nessuna altra operazione attivera j).
Riepiloghiamo quindi la formulazione generale del problema di dimensio-
namento di una linea di produzione:
4.2. DIMENSIONAMENTO DI UNA LINEA 51
Min|T |∑j=1
yj
s.t.|T |∑j=1
xij = 1 ∀i ∈ T
|T |∑i=1
xijdi = Cj ∀j = 1, . . . , |T |
Cj ≤ c.m.t. ∀j ∈ T
xk′j ≤j∑
j′=1
xkj′ ∀j = 1, . . . , |T |, ∀(k, k′) ∈ A
xij ≤ yj ∀i ∈ T,∀j = 1, . . . , |T |
xij ∈ {0, 1} ∀i ∈ T,∀j = 1, . . . , |T |
yj ∈ {0, 1} ∀j = 1, . . . , |T |
4.2.1 Stime sul numero minimo di stazioni
In un problema di minimizzazione possiamo trovare una sovrastima al pro-
blema, semplicemente calcolando una soluzione ammissibile. In altre parole,
se utilizziamo una tecnica euristica otteniamo un valore che e maggiore od al
limite uguale alla soluzione ottima (che indichiamo con N∗) data dal modello
di programmazione lineare a numeri interi presentato nella precedente sezio-
ne. Una sottostima invece, puo essere calcolata rilassando uno o piu vincoli
nel modello e calcolando poi la soluzione ottima della funzione obiettivo sui
vincoli rimanenti. Di seguito diamo due sottostime di N∗.
Sia TO =∑|T |
i=1 di il tempo delle operazioni, ovvero la somma delle du-
rate di tutte le operazione che costituiscono il processo. Una sottostima sul
numero minimo di stazioni produttive e data dal seguente valore LB1N∗ :
LB1N∗ =⌈TO
c.m.t.
⌉.
52 CAPITOLO 4. LA LINEA DI PRODUZIONE
In sostanza e come se cercassimo di saturare ogni stazione con il carico
massimo teorico consentito c.m.t., essendo TO il tempo complessivo da di-
stribuire. La parte intera superiore e conseguenza del fatto che anche una
frazione di c.m.t. implica l’apertura di una stazione lavorativa. Se volessimo
ricondurre tale valore alla soluzione ottima di un rilassamento del programma
precedente, otterremmo il seguente rilassamento:
Min|T |∑j=1
yj
s.t.|T |∑j=1
xij = 1 ∀i ∈ T
|T |∑i=1
xijdi = Cj ∀j = 1, . . . , |T |
Cj ≤ c.m.t. ∀j ∈ T
xij ≤ yj ∀i ∈ T,∀j = 1, . . . , |T |
xij ∈ [0, . . . , 1] ∀i ∈ T,∀j = 1, . . . , |T |
yj ∈ {0, 1} ∀j = 1, . . . , |T |
Come si puo notare sono stati rilassati due vincoli. Il primo, quello sulle
relazioni di precedenza, e stato completamente eliminato, mentre il secondo,
ovvero quello sulla“interezza” della variabile xij, e stato sostituito da una
relazione piu debole data da xij ∈ [0, . . . , 1]. Infatti, la sottostima LBN∗
ammette che un’operazione i possa essere assegnata in piu stazioni come
“quota” del suo ammontare di, essendo tale quota proprio xijdi. Cosı il
vincolo∑|T |
j=1 xij = 1 assumera un diverso significato rispetto a prima: le
somme delle quote di i che sono assegnate a stazioni diverse devono essere
pari ad uno, ovvero la somma dei suoi contributi deve restituire il totale
ammontare di.
4.2.2 Complessita del problema
La formulazione matematica fornita al problema di dimensionamento di una
linea di produzione e della classe di programmazione a numeri interi (integer
4.2. DIMENSIONAMENTO DI UNA LINEA 53
programming). I problemi appartenenti a tale classe sono riconosciuti come
problemi difficili, essendo nella loro generalita appartenenti alla categoria
dei problemi NP -completi. Tuttavia, non e detto che una particolare for-
mulazione di un problema attraverso la programmazione a numeri interi non
risulti poi di facile risoluzione, o per alcune specifiche istanze, o per alcune
particolari proprieta strutturali del problema.
Per mostrare come il problema di dimensionamento di una linea sia in
effetti difficile, consideriamo un caso speciale del problema in cui non vi
siano relazioni di precedenza tra i task.
Il problema allora si riduce a inserire il maggior numero di task nel mi-
nor numero di stazioni, in qualsiasi ordine questo venga fatto, e pertan-
to e riconducibile al ben noto problema di bin packing, che risulta essere
NP -Hard.
Pertanto, anche il problema del dimensionamento di una linea appartiene
a detta categoria. Infatti, anche se non e da escludere del tutto che possa
esistere una formulazione piu semplice, il problema e comunque riconduci-
bile ad un problema NP -Hard. Inoltre, i problemi di questa categoria sono
collegati fra loro in modo tale che, se fosse possibile trovare un metodo di
soluzione facile per uno di essi, allora sarebbe possibile trovarli per tutti gli
altri, e tale metodo non e mai stato individuato in molti anni di ricerca su
molti differenti problemi.
La difficolta del problema giustifica quindi l’utilizzo di algoritmi euristici,
come l’RPWT o la COMSOAL descritte nei successivi paragrafi, per la
ricerca di una soluzione. Brevemente, si ricorda che il termine euristica, dal
greco euristikein = scoprire, indica un metodo (algoritmico) per la ricerca
di soluzioni ammissibili (non necessariamente ottime!) di un problema di
ottimizzazione.
In genere le tecniche euristiche si basano su una procedura che prevede i
seguenti passi logici:
• Assegna ad ogni task un peso
• Aggiorna l’insieme dei task ammissibili (ovvero quelli i cui predecessori
sono stati tutti gia assegnati)
54 CAPITOLO 4. LA LINEA DI PRODUZIONE
• Assegna alla prima stazione disponibile il task ammisibile a cui corri-
sponde il peso maggiore senza violare la capacita massima della stazione
stessa ed i vincoli di precedenza.
Il terzo passo, che prevede una logica di tipo first fit, puo prevedere una
logica di tipo next fit. In quest’ultimo caso, il task o viene assegnato alla
stazione corrente se soddisfa i vincoli di capacita o alla successiva stazione
vuota.
4.2.3 L’euristica RPWT
Attraverso un esempio di dimensionamento, si illustra di seguito l’euristica
RPWT.
Esempio. Si vuole progettare una nuova linea per l’assemblaggio di com-
puter. Questo lavoro richiede l’esecuzione di 14 operazioni legate tra loro da
vincoli di precedenza. Le durate delle operazioni e i vincoli di precedenza tra
esse sono:
Operazione Tempo richiesto (sec) Operazioni precedenti
A 55 -
B 30 A
C 50 A
D 42 A
E 20 -
F 25 -
G 45 A,E,F
H 60 B,C,D,G
I 36 H
J 42 H
K 30 H
L 40 J
M 36 J
N 40 I,K,L,M
4.2. DIMENSIONAMENTO DI UNA LINEA 55
La linea di assemblaggio deve produrre 300 computer al giorno, ed e ope-
rante per 420 minuti ogni giorno.
Il c.m.t. e di 84 secondi. Infatti, 420min∗60sec300computer
da il massimo tempo che si
puo impiegare per assemblare un prodotto. Dunque, non piu di 84 secondi di
lavorazione devono essere impiegati da ogni stazione di lavoro. Poiche, inol-
tre, TO = 551 secondi, il numero teorico di stazioni di lavorazione necessarie
e dato da d55184e = d6, 56e = 7.
Questo risultato rappresenta un lower bound, cioe un limite inferiore, sul
numero di stazioni necessarie per realizzare la linea. Un metodo per trovare
una soluzione ammissibile al problema e quello di rappresentare i vincoli di
precedenza mediante un grafo orientato, e partendo dalle radici della foresta
cosı ottenuta, assegnare ad ogni stazione di lavorazione richiesta il massimo
lavoro possibile.
L’idea e alla base dell’algoritmo euristico RPWT (Ranked Positional
Weight Technique). L’euristica procede nella seguente maniera:
Step 1. Si costruisce il grafo delle precedenze tra le operazioni.
Step 2. Per ogni operazione i si determina l’insieme Si delle operazioni che
la seguono, direttamente o indirettamente.
Step 3. Per ogni operazione i si calcola il peso posizionale, dato dalla somma
dei tempi di quella operazione e di quelle che appartengono a Si:
PWi = di +∑k∈Si
dk
Step 4. Si sceglie l’operazione con il peso posizionale piu alto e la si assegna
alla prima stazione di lavoro.
Step 5. Si sceglie l’operazione con il successivo peso piu alto e la si assegna
alla prima stazione di lavoro j ammissibile (quella per cui la somma
56 CAPITOLO 4. LA LINEA DI PRODUZIONE
dei tempi delle operazioni ad essa assegnati non superi la sua capacita
Cj); se tale stazione non esiste, bisogna crearne una nuova.
Step 6. Si ripete lo Step 5 fino a che tutte le operazioni siano state assegnate.
Dal calcolo dei pesi posizionali si hanno i valori in tabella.
Operazione Tempo richiesto (sec) Peso posizionale (sec)
A 55 506
B 30 314
C 50 334
D 42 326
E 20 349
F 25 354
G 45 329
H 60 284
I 36 76
J 42 158
K 30 70
L 40 80
M 36 76
N 40 40
Si sceglie prima l’operazione A, avente il peso posizionale maggiore, e lo si
assegna alla stazione 1; si sceglie poi l’operazione F, avente il successivo peso
posizionale maggiore, e lo si assegna alla stazione 1. La successiva operazione
da scegliere e E e la si assegna alla stazione 2 in quanto la somma dei tempi
di A, F, E e maggiore della capacita di 1.
Continuando il procedimento, si ottiene l’assegnamento riportato in ta-
bella all’inizio della pagina seguente. La soluzione trovata richiede l’impiego
di 8 stazioni di lavoro. Il collo di bottiglia della linea e rappresentato dalla
stazione piu carica, ossia la 6, e quindi il tempo di ciclo del sistema e dato
dal tempo impiegato su questa stazione, vale a dire 82 sec.
4.2. DIMENSIONAMENTO DI UNA LINEA 57
Operazione Stazione di lavoro assegnata
A 1
F 1
E 2
C 2
G 3
D 4
B 4
H 5
J 6
L 6
I 7
M 7
K 8
N 8
Si noti, infine, come allo Step 5 dell’euristica non sia stato necessario
specificare di scegliere il task con peso posizionale massimo tra quelli i cui
predecessori siano gia stati assegnati, come logicamente imporrebbe l’esisten-
za di precedenze tra le operazioni, in quanto la struttura analitica di calcolo
indicata allo Step 3 assicura il rispetto di tale condizione (il PW di un task
e almeno uguale a quello dei suoi successori).
4.2.4 L’euristica COMSOAL
Sebbene l’euristica RPWT sia un modo per trovare delle soluzioni ammissibi-
li “ragionevolmente” buone, la soluzione trovata e unica, e spesso, dovendosi
considerare criteri di ottimizzazione che non richiedano necessariamente so-
lo il minimo numero di stazioni, risulta veramente importante ottenere un
insieme di soluzioni.
Un modo per ottenere questo risultato consiste nell’utilizzare un algoritmo
randomizzato. Tramite un algoritmo di questo tipo, si possono generare
58 CAPITOLO 4. LA LINEA DI PRODUZIONE
molte soluzioni ammissibili selezionando di volta in volta i task disponibili in
maniera random, e non scegliendo il task che risulti “migliore” secondo un
certo criterio.
L’euristica COMSOAL (COmputerized Method for Sequencing
Operations on Assembly Lines) utilizza questa strategia di ricerca. Ad
ogni iterazione dell’algoritmo viene determinato l’insieme di tutti i task che
potrebbero essere assegnati ad una stazione j senza violare il vincolo imposto
dal carico Cj di questa. Un task viene quindi scelto in maniera random,
essendo ad ognuno dei task associata la medesima probabilita di selezione.
L’algoritmo euristico opera nel seguente modo:
Step 1. Si costruisce il grafo delle precedenze tra le operazioni.
Step 2. Per ogni operazione i si determina l’insieme Pi delle operazioni che
la precedono, direttamente o indirettamente.
Step 3. Si associa ad ogni operazione la stessa probabilita di scelta.
Step 4. Si sceglie random una operazione e la si assegna alla prima stazione.
Step 5. Si determina l’insieme Fj delle operazioni k tali per cui ogni opera-
zione in Pk sia gia stata assegnata, e tali da poter essere associate alla
corrente stazione j senza violare il vincolo sul carico Cj consentito. Si
seleziona in maniera random una operazione da Fj e la si assegna alla
stazione j; se Fj e vuoto, si apre un’altra stazione.
Step 6. Si ripete lo Step 5 fino a che tutte le operazioni siano state assegnate.
L’euristica viene ripetuta un certo numero di volte, ed ogni soluzione
trovata viene comparata con quelle trovate precedentemente. Il numero di
ripetizioni da effettuare dipende dal decisore. Si noti che la stessa soluzione
puo essere ottenuta piu di una volta.
Infine si noti che l’euristica potrebbe essere modificata per evitare che
la scelta delle operazioni sia puramente random, in modo da essere guidata
verso la determinazione di una “buona” soluzione.
Ad esempio, tenendo in considerazione il fatto che l’euristica RPWT
produce delle buone soluzioni, ad ogni iterazione dell’algoritmo si potrebbe
4.3. ALCUNE NOTE PRATICHE IN MERITO ALLA NATURA STOCASTICA DELLE DURATE DEI LAVORI59
associare alla generica operazione i ∈ Fj la probabilita di selezione:
PWi∑k∈Fj
PWk
Oppure, utilizzando dei metodi euristici tipici dei problemi di bin packing,
per cui e meglio selezionare i task con maggiore tempo di durata, si potrebbe
associare la probabilita di selezione:
di∑k∈Fj
dk
4.3 Alcune note pratiche in merito alla natu-
ra stocastica delle durate dei lavori
Assumiamo che il tempo di processamento di una generica operazione i sia
una variabile aleatoria ti e sia nota una varianza σ2i per essa. Sia inoltre σij
la covarianza tra le durate dei task i e j. Assuminamo dapprima che i tempi
di processamento dei task siano indipendenti, cosa che implica che σij = 0.
Sia Sk l’insieme dei task assegnati alla stazione k. Sia inoltre sk la variabile
casuale associata al tempo richiesto dalla stazione k per processare i task
ad essa assegnati in un ciclo produttivo. Sappiamo che il suo valore atteso
E(sk) =∑
i∈Skti e la sua varianza V (sk) =
∑i∈Sk
σ2i . Se si assume che ti ed sk
siano variabili normali e che ciascuna stazione abbia task sufficienti affinche
valga il teorema del limite centrale, allora le sk sono distribuite normalmente.
Un approccio possibile potrebbe essere quello di considerare una probabilita
del 99% di completare i task assegnati ad ogni ciclo. Una tabella relativa ad
una distribuzione normale ci direbbe quindi che, nel soddisfare il vincolo sul
carico massimo delle stazioni di lavorazioni, dobbiamo considerare oltre al
tempo medio un tempo aggiuntivo pari a 2.33 deviazioni standard. Quindi
il vincolo da soddisfare nell’assegnamento dei task ad una stazione di lavoro
k e il seguente:
E(sk) + 2.33V (sk)1/2 ≤ C
Va notato che la probabilita che il sistema completi le operazioni in tem-
po e pari a 0.99m, dove m e il numero di stazioni di lavorazione. Quindi
60 CAPITOLO 4. LA LINEA DI PRODUZIONE
per linee di produzione “lunghe” bisogna prevedere un tempo di slack mag-
giore. Assumiamo ora che i task non siano indipendenti. Ad esempio se i
tempi di processamento all’interno di una stazione di lavorazione sono af-
fetti dall’abilita degli operai che sono ad essa assegnati all’interno si puo
immaginare che esista una correlazione positiva tra la durate dei vari ta-
sk. Al contrario si puo immaginare che esista una correlazione negativa dal
momento in cui gli operai accelerano le lavorazioni quando stanno sotto sca-
denza. In presenza di covarianza non nulla si avra quindi E(sk) =∑
i∈Skti,
V (sk) =∑
i∈Skσ2i + 2
∑{(i,j):i,j∈Sk} σij.
4.4 Bilanciamento dei carichi in una linea di
produzione
Una volta stabilito il numero di stazioni lavorative relative al processo produt-
tivo in linea, ci poniamo un problema immediatamente successivo in termini
di importanza, ovvero il problema del bilanciamento dei carichi delle stazioni
di una linea di produzione. Sia N ≥ N∗ il numero di stazioni attivate, che
soddisfi comunque i vincoli di cui nella Sezione 4.2. Definiamo il carico medio
µ di una linea di produzione come segue:
µ =TO
N=
∑Nj=1Cj
N,
ovvero la media matematica sul numero di stazioni attivate del parametro
TO. Definiamo inoltre il concetto di sbilanciamento SBj di una stazione j
come lo scostamento del suo carico Cj dal suo valore medio, ovvero:
SBj = |Cj − µ|.
Analogamente si definisce sbilanciamento di una linea:
SBlinea =N∑j=1
SBj,
ovvero la somma degli sbilanciamenti delle singole stazioni. A questo punto
si puo parlare di bilanciamento di una linea come una ripartizione dei
4.4. BILANCIAMENTO DEI CARICHI IN UNA LINEA DI PRODUZIONE61
carichi di lavoro piu omogenea possibile, al limite (se questo e possibile)
esattamente uguali gli uni agli altri, ovvero:
Cj = µ ∀j = 1, . . . , N.
In quest’ultimo caso particolare parleremo di bilanciamento perfetto.
In questa sezione ci occuperemo di formulare il problema del bilanciamen-
to dei carichi in una linea di produzione. In questo caso, la funzione obiettivo
sara immediatamente ottenibile dalle definizioni sopra date, e cioe:
MinN∑j=1
|Cj − µ| = SBlinea.
Nel caso in cui esistesse un bilanciamento perfetto avremo un minimo pari
a zero. Il modello matematico nella definizione dei vincoli rimane a questo
punto molto simile a quello visto nella Sezione 4.2, semplificato dal fatto che
abbiamo una sola variabile decisionale. Ovvero:
MinN∑j=1
|Cj − µ| = SBlinea
s.t.N∑j=1
xij = 1 ∀i ∈ T
|T |∑i=1
xijdi = Cj ∀j = 1, . . . , N
xk′j ≤j∑
j′=1
xkj′ ∀j = 1, . . . , N, ∀(k, k′) ∈ A
xij ∈ {0, 1} ∀i ∈ T,∀j = 1, . . . , N
(4.6)
Si puo notare che la funzione obiettivo e non lineare dato che contiene
un modulo. Possiamo ovviare a questo problema, utilizzando una variabile
decisionale di “supporto”. Infatti, definendo
zj = |Cj − µ|,
62 CAPITOLO 4. LA LINEA DI PRODUZIONE
l’obiettivo diventa:
MinN∑j=1
|Cj − µ| =N∑j=1
zj.
Ora dobbiamo legare la nuova variabile ai vincoli. Per fare questo, sfruttiamo
un passaggio intermedio e supponiamo che:
zj ≥ |Cj − µ|
. Questo vincolo e facilmente linearizzabile da questa coppia di vincoli:
zj ≥ Cj − µ,
zj ≥ µ− Cj.
A questo punto, facendo attenzione al fatto che stiamo minizzando zj, an-
dremo sempre a prendere il valore per cui
zj = |Cj − µ|.
Quindi i due vincoli sopra riportati con l’obiettivo modificato sono esatta-
mente gli oggetti che cercavamo, vale a dire quelli che rendono in forma
lineare la funzione Min∑N
j=1 |Cj − µ|.Si puo notare come non abbiamo volutamente inserito il vincolo sul sod-
disfacimento delle specifiche di produzione. Infatti la funzione obiettivo del
problema garantisce l’implicito soddisfacimento di tale vincolo. Infatti, bi-
lanciare i carichi delle stazioni lavorative implica in qualche modo che si
spostino delle operazioni da stazioni piu cariche verso stazioni meno cariche,
nel tentativo di ridistribuire i tempi di lavorazione. Questo tentativo implica
a sua volta in modo implicito la riduzione del carico massimo di lavorazione
della linea. Risulta chiaro allora che cosı non rischieremo mai di superare il
c.m.t., visto che stiamo muovendo le soluzioni in senso esattamente opposto.
Si noti quindi che la formulazione di cui sopra puo anche essere riscritta
in questi altri termini:
4.4. BILANCIAMENTO DEI CARICHI IN UNA LINEA DI PRODUZIONE63
Min Cmax
s.t. Cmax ≥ Cj ∀j = 1, . . . , N
N∑j=1
xij = 1 ∀i ∈ T
|T |∑i=1
xijdi = Cj ∀j = 1, . . . , N
xk′j ≤j∑
j′=1
xkj′ ∀j = 1, . . . , N, ∀(k, k′) ∈ A
xij ∈ {0, 1} ∀i ∈ T,∀j = 1, . . . , N
(4.7)
La differenza sostanziale tra l’utilizzo della prima e di quest’ultima for-
mulazione consiste esclusivamente nel fatto che, se esiste un bilanciamento
perfetto della linea, ambedue le formulazioni troveranno questa soluzione;
viceversa, potrebbero restituire soluzioni non perfettamente identiche, anche
se mai eccessivamente discordanti.
4.4.1 Trade-off tra dimensionamento e bilanciamento
L’obiettivo di dimensionamento di una linea di produzione non e in generale
ottenibile utilizzando un obiettivo di minimizzazione del carico massimo su
di un numero |T | di stazione lavorative. Questo e intuibile dal fatto che piu
stazioni si hanno a disposizione e piu ne verranno utilizzate dato che questo
comporta un minor carico di lavoro per le stazioni e quindi un conseguente
riduzione del carico massimo. Il caso limite delle |T | stazioni e quello a cui
corrisponde il minor carico possibile per stazioni attivate, dato che il carico
massimo coinciderebbe con la massima durata delle operazioni e non puo
essere piu piccolo di questo valore.
Dall’altra parte meno sono le stazioni lavorative attivate e piu queste
saranno “cariche”, fino ad arrivare al caso limite di avere un’unica stazione
che rappresenta il massimo carico assoluto che si puo avere, e che corrisponde
al tempo delle operazioni TO.
64 CAPITOLO 4. LA LINEA DI PRODUZIONE
4.5 Rappresentazione e soluzione di un pro-
blema di bilanciamento
Un problema di bilanciamento puo essere rappresentato e risolto come segue.
1 2
d1=2, d2=3, d3=5
Figura 4.2: Bilanciamento di una linea.
Supponiamo di avere tre operazioni di durata rispettivamente d1 = 2,
d2 = 3 e d3 = 5, da assegnare a due stazioni lavorative, e supponiamo che il
grafo delle precedenze sia una catena (1 precede 2, 2 precede 3). Si costruisce
un grafo avente due livelli, uno per ogni stazione lavorativa, e ciascun livello
e formato da un numero di nodi pari al numero di sottoinsiemi ammissibili
(che rispettano le precedenze) dell’insieme delle operazioni. Nel nostro caso
sono sei: {1}, {1, 2}, {1, 2, 3}, {2}, {2, 3}, {3}, e sono rispettivamente rappre-
setati dai nodi riportati in figura. Si introducono poi due nodi fittizi (una
supersorgente e un superpozzo). La supersorgente e legata a tutti i nodi che
4.5. RAPPRESENTAZIONE E SOLUZIONE DI UN PROBLEMA DI BILANCIAMENTO65
hanno come operazione piu piccola 1, e il superpozzo e raggiunto da tutti i
nodi dell’ultimo livello che hanno come operazione piu grande 3 (ovvero l’ul-
tima della catena). A questo punto esiste un arco tra un nodo di un livello
i e un livello i+ 1 se e solo se, chiamata h l’operazione piu grande del nodo
nel livello i, il nodo nel livello i + 1 ha come operazione piu piccola h + 1.
Ogni arco viene pesato con un valore pari a |Cj − µ|, dove Cj si riferisce al
carico della stazione a cui appartiene il nodo puntato dall’arco ed e ottenuto
dalla somma delle operazioni rappresentate da quel nodo. Nel caso in esame,
l’arco che parte dalla supersorgente e punta vetrso il nodo del primo livello
piu in alto, ha un peso pari a |2 − 5| = 3, dove 2 e la somma dei tempi
associati alle operazioni rappresentate dal nodo puntato e cioe l’operazione
1 (d1 = 2), mente 5 e il carico medio (µ = 2+3+52
= 5). Inoltre, ogni arco che
parte da un nodo nell’ultimo livello verso il superpozzo ha peso nullo.
Sul grafo cosı costruito e sufficiente calcolare il cammino minimo dalla su-
persorgente al superpozzo in quanto esso minimizzera∑N
j=1 |Cj − µ|. I nodi
appartenenti al cammino minimo in corrispondenza ad ogni livello indiche-
ranno le operazioni da assegnare alle stazioni corrispondenti. Nell’esempio
in esame il cammino minimo avente come sorgente la supersorgente, passa
per il nodo del primo livello corrispondente all’insieme {1, 2}, per il nodo
del secondo livello corrispondente all’insieme {3}, e termina nel superpozzo.
Tale soluzione e un bilanciamento perfetto.
4.5.1 Trasformazione di formati
Un primo tipo di trasformazione che presentiamo e quella legata alla riso-
luzione di un problema di cammino minimo con un risolutore di modelli di
assegnamento. Questo puo essere utile nei casi in cui il solver che utilizziamo
sia dedicato a questa classe di problemi piuttosto che a problemi di cammino
su reti.
Supponiamo allora di voler trasformare il problema esaminato nella pre-
cedente sezione in un problema di assegnamento a minimo costo. Dopo aver
numerato topologicamente i nodi dei grafo originario, costruiamo un nuovo
grafo “bipartito” cosı fatto:
L’insieme dei nodi V1 di sinistra contiene i nodi del grafo origi-
nario dal numero 1 al numero n − 1, e l’insieme V2 dei nodi di
66 CAPITOLO 4. LA LINEA DI PRODUZIONE
destra contiene i nodi dal numero 2 al numero n. Esiste un ar-
co tra coppie di nodi da V1 a V2 se e solo se esisteva nel grafo
origiario e inoltre si aggiungono n − 2 archi fittizi a costo zero,
rispettivamente da 2 verso 2, da 3 verso 3, . . . , da n− 1 a n− 1.
Si verifica facilmente che un assegnamento a costo minimo su tale gra-
fo e un cammino minimo sul grafo precedente. Infatti, dall’assegnamento
ottimo ottenuto rimuovendo gli archi fittizi a costo zero (che non danno nes-
sun contributo alla funzione obiettivo), rimangono degli archi che formano
una catena rappresentante proprio il cammmino cercato. Cosı il problema
originario di bilanciamento puo essere riformulato come segue:
MinV1∑i=1
V2∑i=j
cijxij
s.t.V1∑i=1
xij = 1 ∀j ∈ V2
V2∑j=1
xij = 1 ∀i ∈ V1
xij ∈ {0, 1} ∀i ∈ V1,∀j ∈ V2
(4.8)
Un’altra interessante trasformazione di formati e quella relativa all’equi-
valenza tra variabili decisionali. Sia xij la variabile di assegnamento usata
fino ad ora, e sia ykk′ una variabile che assume valore 1 se l’operazione k
viene eseguita prima di k′, e assume valore zero altrimenti. Ora definiamo
il vincolo di precedenza tra due operazioni utilizzando ambedue le variabili.
Nel caso di una variabile di assegnamento si avra:
j′∑j=1
xkj ≥j′∑
j=1
xk′j ∀j′ = 1, . . . , N, ∀(k, k′) ∈ A,
mentre nel caso di una variabile di tipo ykk′ la relazione e piu immediata:
ykk′ = 1 ∀(k, k′) ∈ A
4.5. RAPPRESENTAZIONE E SOLUZIONE DI UN PROBLEMA DI BILANCIAMENTO67
Esaminiamo il primo vincolo per una coppia (k, k′) di operazioni incom-
patibili (ovvero non eseguibili simultaneamente ma non e stabilito a priori se
sia k a dover essere eseguita prima o dopo di k′) supponendo che k → k′:
j′∑j=1
xkj ≥j′∑
j=1
xk′j ∀j′ = 1, . . . , N
Portando a sinistra il secondo termine di ha:
j′∑j=1
xkj −j′∑
j=1
xk′j ≥ 0 ∀j′ = 1, . . . , N
Inoltre sommando tutti i vincoli si ha
N∑j′=1
(j′∑
j=1
xkj −j′∑
j=1
xk′j) ≥ 0
A questo punto “esplodiamo” le somme come segue:
j′ = 1→ xk1 − xk′1j′ = 2→ xk1 + xk2 − xk′1 − xk′2...
...
j′ = N → xk1 + . . .+ xkN − xk′1 − . . .− xk′NSommando i valori si ottiene:
N(xk1 − xk′1) + (N − 1)(xk2 − xk′2) + . . .+ (xkN − xk′N) ≥ 0
Definiamo αkk′ pari alla quantita N(xk1− xk′1) + (N − 1)(xk2− xk′2) + . . .+
(xkN − xk′N). Poiche sia xkj che xk′j possono valere 1 in corrispondenza di
una sola j allora si avra che 0 ≤ αkk′ ≤ (N − 1). Questo ci porta a stabilire
che:
ykk′ = 1→ αkk′ ≥ 0
che equivale a:
αkk′ ≥ (ykk′ − 1)(N − 1),
e
ykk′ = 0(yk′k = 1)→ αkk′ ≤ 0
che equivale a:
αkk′ ≤ (1− yk′k)(N − 1)
68 CAPITOLO 4. LA LINEA DI PRODUZIONE
4.6 Ulteriori vincoli in fase progettuale
Talvolta puo accadere che a causa di problemi di sicurezza, di richiesta di
particolari equipaggiamenti o di “skill” di operatori, si vogliano assegnare
coppie di operazioni a stesse stazioni di lavoro. Dall’altra parte certe coppie
di operazioni non devono essere assegnate alla stessa stazione di lavoro. Si
puo considerare, ad esempio, un prodotto che necessita di alcune operazioni
su un lato e di altre operazioni sul lato opposto.
Indichiamo con SS e con SD rispettivamente l’insieme delle coppie di
operazioni che devono essere eseguite nella stessa stazione e delle coppie che
invece devono essere eseguite in stazioni diverse. Siamo interessati adesso
alla determinazione di vincoli che regolino i suddetti insiemi.
Nel caso di coppie (k, k′) di operazioni in SS si deve verificare che un
assegnamento dell’operazione k alla stazione j deve forzare l’assegnamento
di k′ a j e viceversa. Mentre il non assegnamento di k a j deve forzare il non
assegnamento di k′ a j e viceversa. Quindi sara sufficiente imporre che le
variabili di assegnamento associate alle operazioni k e k′ assumano gli stessi
valori (o entrambe 1 o entrambe 0), vale a dire:
xkj = xk′j ∀j = 1, . . . , N, ∀(k, k′) ∈ SS.
La formulazione del vincolo sulle coppie DS non e piu complicata. Ba-
stera infatti scrivere un vincolo di or esclusivo sulle variabili di assegnamento
legate alle coppie (k, k′) ∈ DS su ognuna delle stazioni, ottenendo:
xkj + xk′j ≤ 1 ∀j = 1, . . . , N, ∀(k, k′) ∈ DS,
cioe xkj e xk′j non possono valere contemporaneamente 1.
Un’ultima osservazione ci portera ad introdurre la prossima sezione. Nel
caso di SS avremmo potuto utilizzare anche un’espressione equivalente del
tipo:N∑j=1
xkjxk′j = 1 ∀(k, k′) ∈ SS,
In questa riscrittura del vincolo si puo notare come sia scomparso ∀j =
1, . . . , N , essendo questo incorporato nella sommatoria. Nonostante questo
si traduca in un minor numero di vincoli, il lettore si puo facilmente accor-
gere della presenza di una non linearita, ed in particolare di come il vincolo
4.7. FORMULAZIONI DI VINCOLI LOGICI 69
sia diventato quadratico. Questa apparente difficolta puo essere superata
linearizzando i vincoli al prezzo di introdurre ulteriori variabili (vedi anche
quanto fatto nella Sezione 4.4).
4.7 Formulazioni di vincoli logici
Prendiamo le mosse dal problema sollevato nella sezione precedente, ovvero
della linearizzazione del vincolo∑N
j=1 xkjxk′j = 1,∀(k, k′) ∈ SS. Facendo
attenzione al suo significato ci accorgiamo che esso altro non e che un vin-
colo and. Vogliamo sostituire il vincolo∑N
j=1 xkjxk′j = 1,∀(k, k′) ∈ SS con∑Nj=1 z
jkk′ = 1,∀(k, k′) ∈ SS. Per rendere la trattazione piu semplice faremo
uso di tabelle di verita.
xkj xk′j zjkk′0 0 0
0 1 0
1 0 0
1 1 1
La tabella si legge per riga: i primi due valori sono i possibili valori
assegnabili a xkj e xk′j ed il terzo valore nella colonna e quello che deve
assumere zjkk′ nella conversione. Ovviamente solo quando xkj = 1 e xk′j = 1,
zjkk′ varra 1.
Possiamo scrivere i seguenti due vincoli:
zjkk′ ≤xkj + xk′j
2
zjkk′ ≥ xkj + xk′j − 1.
Il primo vincolo verifica le prime tre righe ed e “indifferente” alla quarta,
mentre il secondo vincolo verifica la quarta riga ed e “indifferente” alle prime
tre.
In Figura 4.3 e riportata la rappresentazione geometrica della relazione
and, dove i punti cerchiati indicano le soluzioni ammissibili.
70 CAPITOLO 4. LA LINEA DI PRODUZIONE
Figura 4.3: Relazione logica and.
Volendo generalizzare al caso in cui una variabile z e legata da una re-
lazione di tipo and ad un insieme di n variabili xi, e possibile utilizzare i
seguenti vincoli:
z ≤∑n
i=1 xin
z ≥n∑
i=1
xi − (n− 1).
Passiamo ora alla formulazione di una relazione che abbiamo gia incotrato
nella Sezione 4.4 quando abbiamo “legato” le due variabili xij e yj: l’impli-
cazione. La relazione di implicazione tra due variabili (ad esempio xij e yj)
ha la seguente tabella di verita:
4.7. FORMULAZIONI DI VINCOLI LOGICI 71
xij yj0 0
0 1
1 1
Ricordandoci di quanto detto nella sezione di cui sopra, il vincolo lineare
che soddisfa l’implicazione si puo quindi scrivere:
xij ≤ yj.
Di seguito consideriamo la tabella di verita dell’or tra due variabili x e y:
x y z
0 0 0
0 1 1
1 0 1
1 1 1
Le relazioni sono:
z ≤ x+ y
z ≥ x+ y
2.
La prima soddisfa la prima riga e non inflenza le altre tre, mentre la
seconda soddisfa le seconde tre righe senza violare la prima riga. Volendo
anche qui estendere il discorso alla relazione or definita su n variabili xi,
analogamente al caso della relazione and avremo due vincoli del tipo:
z ≤n∑
i=1
xi
z ≥∑n
i=i xin
.
Passiamo ora alla tabella di verita dell’or esclusivo tra x e y:
72 CAPITOLO 4. LA LINEA DI PRODUZIONE
x y z
0 0 0
0 1 1
1 0 1
1 1 0
Le relazioni sono:
z ≤ x+ y
z ≥ y − x
z ≥ x− y
z ≤ 2− x− y.
In quest’ultimo caso abbiamo usato quattro iperpiani per tagliare via le solu-
zioni non ammissibili. Ciascuno verifica una relazione della tabella di verita
(il primo la prima, il secondo la seconda, e cosı via) senza violare le altre.
4.8 Alcuni casi di studio
Questa sezione contiene tre problemi ciascuno dei quali richiede sia l’uso di
informazioni gia esaminate che l’elaborazione di nuove. Puo essere un buon
esercizio quello di risolvere tali problemi. A valle e presente una discussione
sulle soluzioni dei tre casi di studio.
Problema 1. Un’azienda produce componentistica elettronica. Il processo
produttivo prevede l’esecuzione di un certo numero di operazioni in linea
O = {op1, op2, . . . , opm} parzialmente preordinato. Viene definito quindi un
insieme PO che identifica coppie di operazioni ordinate:
PO = {(i, j) : l’operazione i deve precedere l’operazione j}
Per poter eseguire le suddette operazioni O, sono disponibili K stazioni
di lavoro. Per problemi di richiesta di particolari attrezzaggi, coppie di ope-
4.8. ALCUNI CASI DI STUDIO 73
razioni devono essere eseguite necessariamente nella stessa stazione di lavoro;
tali coppie di operazioni vengono indicate con SS:
SS = {(i, j) : i e j devono essere eseguite nella stessa stazione}
Per problemi relativi al particolare processamento di alcuni operazio-
ni, coppie di queste devono essere eseguite su differenti stazioni di lavoro:
indichiamo con DS le coppie di operazioni sottoposte a tali vincoli:
DS = {(i, j) : i e j devono essere eseguite su due differenti stazioni}
1. Formulare il problema di dimensionamento dell’impianto al numero
minimo di stazioni lavorative;
2. Supponendo che l’assegnamento di una operazione i ad una stazione
di lavoro k comporti un costo cik formulare il problema della mini-
mizzazione del costo totale (somma dei costi di assegnamento) dove
alle stazioni k = 1, . . . , K non e consentito superare un certo carico di
lavoro C;
3. Dare una rappresentazione del problema su grafo, motivando successi-
vamente una possibile soluzione del problema.
Problema 2. In una linea di produzione con 4 centri di lavoro [CL1, CL2,
CL3, CL4] deve essere prodotto un tipo di componente che richiede, per ogni
unita prodotta, una sequenza di 10 operazioni che possono essere eseguite
su uno o piu CL. (Vedi il grafo di compatibilita in Figura 4.4, con le du-
rate in minuti delle operazioni, supposte indipendenti dal CL cui sono state
eseguite).
Il production rate richiesto e tale da saturare la linea: 1 componente ogni
12 minuti. Il problema e quello di assegnare le operazioni ai CL in modo da
perseguire i seguenti obiettivi:
74 CAPITOLO 4. LA LINEA DI PRODUZIONE
Figura 4.4: Grafo di compatibilita.
1. Bilanciamento dei carichi di lavoro;
2. Minimizzazione del work in progress;
3. Motivare gli obiettivi scelti;
4. Individuare le possibili soluzioni e confrontarle.
Problema 3. Un’azienda produce macchine da giardinaggio. Il proces-
so produttivo prevede l’esecuzione di un certo numero di operazioni in linea
O = {op1, op2, . . . , opm} preordinato in modo tale che ogni operazione opi ∈ Oprecede l’operazione immediatamente successiva opi + 1. Le suddette opera-
zioni devono essere eseguite da una linea di produzione avente n stazioni di
lavoro. Il numero di operazioni m e maggiore del numero di stazioni di lavoro
della linea. Sono assegnati i tempi di processamento di ogni operazione ti.
1. Formulare il problema di dimensionamento della linea al numero mi-
nimo di stazioni lavorative attivate con il vincolo di non superare un
certo carico massimo Cmax per ognuna delle stazioni e considerando che
le operazioni op∗i e op∗i + 1 devono essere eseguite necessariamente nella
stessa stazione lavorativa.
4.8. ALCUNI CASI DI STUDIO 75
2. Supponete che esista un insieme S ⊆ O di operazioni tale che viene
generato un costo c se un’operazione i ∈ S venga assegnata ad una
stazione di lavoro come ultima operazione da processare. Formulare il
problema di bilanciamento della linea con il vincolo di non superare un
costo fissato B.
4.8.1 Analisi di alcuni aspetti dei problemi proposti
Un’analisi particolare viene riservata al problema 2 ed al punto 2 del problema
3. Per quanto riguarda il problema 2 viene rischiesto di bilanciare i carichi
di lavoro sulla linea ed al tempo stesso di minimizzare il work in progress
(WIP). Come verra descritto in dettaglio nella Sezione 4.10 possiamo definire
i concetti di tempo di attraversamento TA e WIP come segue:
TA = p ∗ Cmax +N∑
j=p+1
Cj,
dove p rappresenta la posizione della stazione a cui corrisponde il carico
massimo Cmax e
WIP = TA ∗ (production rate).
Dunque, noti il carico massimo Cmax ed il production rate, la minimizza-
zione del work in progress puo essere realizzata minimizzando il tempo di at-
traversamento TA che dipendera eslusivamente dalla posizione della stazione
bottleneck lungo la linea.
Sfruttando il fatto che le stazioni di lavorazione sono disposte in linea, e
possibile confrontare il carico di lavoro Ci di ciascuna stazione i con il carico
Cj delle stazioni j successive: se Cj ≥ Ci a regime il carico di lavoro della
stazione i sara pari alla stazione piu lenta j davanti ad essa sulla linea, in caso
contrario no. Questo puo essere modellizzato associando ad ogni stazione di
lavoro i una variabile zi ed una coppia di vincoli:
zi ≥ Ci ∀i,∀j > i
zi ≥ Cj ∀i, ∀j > i
76 CAPITOLO 4. LA LINEA DI PRODUZIONE
Confrontando ciascuna stazione con quelle successive, se la stazione i si
trova prima della stazione a cario massimo allora zi = Cmax, in caso contrario
zi = Ci. La minimizzazione del TA si ottiene con la seguente funzione
obiettivo:
MinN∑i=1
zi
.
Una formulazione alternativa, anche se piu artificiosa, consiste nel mini-
mizzare la posizione della stazione a carico massimo al fine di ridurre il tempo
di attraversamento TA. Si puo pensare, dunque, di confrontare il carico di
ciascuna stazione i con quello delle altre stazioni ed associare una variabile
binaria che assume valore 1 se e solo se Ci e maggiore. Formalmente:
Ci − Cj ≥ 0 ⇔ zij = 1 ∀i, ∀j con j 6= i
Questa relazione puo essere ottenuta attraverso la seguente coppia di vincoli
lineari:
Mzij ≥ Ci − Cj + ε
M(zij − 1) ≤ Ci − Cj
dove M e una costante positiva sufficientemente grande e ε una costante
positiva sufficientemente piccola. Il primo vincolo si “attiva” quando Ci ≥ Cj
forzando la variabile zij ad assumere valore 1, mentre e banalmente verificato
in caso contrario grazie alla presenza della costante M . Si noti che nel caso
in cui Ci = Cj la variabile zij = 1 grazie alla presenza della costante ε. Il
secondo vincolo, al contrario, garantisce che se Ci ≤ Cj allora zij = 0 e risulta
sempre verificato in caso contrario. A questo punto e possibile introdurre
una variabile Zi defita come and di tutte le variabili zij come descritto nella
Sezione 4.7: in altre parole Zi assume valore 1 se e solo se confrontando il
carico della stazione i con quello di tutte le altre stazioni, Ci risulta essere
il carico massimo. L’obiettivo di minimizzazione del WIP , come detto, si
ottiene facendo in modo che la stazione a carico massimo sia posizianata il
piu possibile a monte della linea. Dunque introduciamo un parametro αi = i,
una variabile di “supporto” w e minimizziamo la seguente funzione obiettivo:
Min w
con i vincoli:
w ≥ αiZi ∀i = 1 . . . N
4.8. ALCUNI CASI DI STUDIO 77
Passiamo adesso ad analizzare il punto 2 del problema 3. In questo con-
testo vogliamo bilanciare i carichi di lavoro di una linea dove il grafo delle
precedenze tra le operazioni e una catena, con un vincolo particolare di costo:
viene generato un costo c qualora un’operazione i ∈ S (dove S ⊂ O) venga
assegnata ad una stazione di lavoro come ultima operazione da processare.
Prima di capire come tale vincolo possa essere formulato, diamo un esempio
in quale contesto questa situazione puo verificarsi.
Uno scenario possibile puo essere quello in cui ci sia la necessita di dover
mantenere il pezzo in lavorazione tra l’operazione opi e opi +1 ad una elevata
temperatura, mentre durante il trasporto da una stazione ad un’altra la sua
temperatura potrebbe abbassarsi, con il conseguente bisogno di innalzare la
sua temperatura (e quindi un costo di lavorazione maggiore).
Paghiamo un costo c quando xij = 1 e x(i+1)(j+1) = 1, ovvero quando
assegnamo i ∈ S ad una stazione j e i + 1 alla stazione successiva j + 1.
Infatti, poiche i e i + 1 sono strettamente sequenziali, aver assegnato i a j
e i + 1 a j + 1 implica che i e l’ultima operazione in j e i + 1 e la prima in
j + 1 (vedi Figura 4.5).
Figura 4.5: Sistemi misti.
Sommando tutte le occorrenze di questo and sulle stazioni da 1 fino a
N − 1 pesandole ogni volta con c si ottiene il costo totale :
78 CAPITOLO 4. LA LINEA DI PRODUZIONE
cN−1∑j=1
xijx(i+1)(j+1).
Il vincolo di costo e quindi il seguente:
∑i∈S
(cN−1∑j=1
xijx(i+1)(j+1)) ≤ B.
Si puo pensare ad una linearizzazione di tipo and, come esposto nella Sezio-
ne 4.7.
4.9 Coefficienti di inattivita e di efficienza
Definiamo coefficiente di inattivita di una stazione:
Ij =Cmax − Cj
Cmax
,
e analogamente il coefficiente di inattivita di una linea:
Ilinea =
∑Nj=1 Ij
N,
ovvero la media dei coefficienti di inattivita delle singole stazioni. Da qui si
definisce l’efficienza della linea:
ν = 1− Ilinea.
E’ rilevante notare che nel caso in cui la linea sia perfettamente bilanciata,
ν = 1 ovvero l’efficienza e massima dato che Ilinea = 0.
4.10 Work in process e tempo di attraversa-
mento
Definiamo tempo di attraversamento TA di un pezzo in una linea di produ-
zione come la differenza tra il suo tempo di uscita dalla linea e il suo tempo di
ingresso. Una sua sottostima e chiaramente data da TO dato che ogni pezzo
4.11. BILANCIAMENTO MULTI-PRODOTTO E A PRODOTTO MISTO79
deve “subire” tutte le operazioni. Ovviamente, questa rimane una sottosti-
ma a causa dei tempi di attesa che il pezzo puo avere sulla linea dovuti alla
presenza di collo di bottiglia a valle della sua attuale posizione di lavorazione.
In generale vale la seguente relazione:
TA = p ∗ Cmax +N∑
j=p+1
Cj,
dove p rappresenta la posizione della stazione a cui corrisponde il carico
massimo Cmax. Da questa relazione si deduce che, se la stazione piu carica
si trova a valle, si avra un tempo di attraversamento piu svantaggioso (piu
alto) e al limite pari a N ∗ Cmax, mentre se si trova a monte si avra un TA
vantaggioso (piu basso) al limite pari proprio a TO.
A partire dal tasso di produzione e dal tempo di attraversamento e pos-
sibile stabilire una delle piu importanti relazioni che regolano i sistemi ma-
nifatturieri, nota come legge di Little dal suo autore (Little 1961): work in
process = (tempo di attraversamento)*(tasso di produzione).
4.11 Bilanciamento Multi-Prodotto e a Pro-
dotto Misto
Nelle sezioni precedenti si e considerato il problema del bilanciamento di una
linea di produzione in cui si produca una sola tipologia di prodotto. La
criticita maggiore per questo tipo di configurazione si presenta quando la
domanda varia nel tempo e quando ci si trova a produrre prodotti di una
tipologia differente da quelli per cui si e progettata la linea stessa.
Quando la domanda di un prodotto varia, o le esigenze di mercato lo
richiedano, ci si trova di fronte alla necessita di fabbricare nuovi prodotti, e
la linea progettata per uno di questi puo non operare efficientemente per tutti
gli altri. Allora, si potrebbe pensare di acquisire una nuova linea dedicata per
ogni nuovo prodotto, ma questa e una alternativa molto costosa, che risulta
praticamente insostenibile quando le fluttuazioni della domanda nel tempo
sono molto frequenti.
Due soluzioni proposte a questo problema sono le linee multi-prodotto e
le linee a prodotto misto.
80 CAPITOLO 4. LA LINEA DI PRODUZIONE
4.11.1 Linee Multi-prodotto
Questo approccio gestionale permette di progettare la linea come una risorsa
riconfigurabile, che produce piu prodotti a lotti consecutivi. Tra un lotto di
un prodotto e quello consecutivo di un altro prodotto, la linea deve essere
riconfigurata (attrezzata), e questo comporta un costo economico e di tempo
(tempi di set-up) di immobilizzo (durante la riconfigurazione la linea non
lavora).
Le problematiche principalmente connesse a questo tipo di linee di pro-
duzione riguardano il come bilanciare la linea in modo da bilanciare sepa-
ratamente le levorazioni per ogni prodotto, e il come sequenziare i lotti in
lavorazione al fine di minimizzare le perdite connesse alle fasi di riattrezzaggio
(set-up).
4.11.2 Linee a Prodotto Misto
La premessa di base a questo approccio e che piu prodotti sono lavorati da
ogni stazione, senza cosı dover affrontare periodi di immobilizzo per l’attrez-
zaggio. Le difficolta che si riscontrano in questa configurazione riguardano il
fatto che ogni tipologia di prodotto richiede lavorazioni diverse, e con tempi
diversi, su ogni stazione di lavoro, e dal fatto che i tempi di fermo macchina
(idle time) dipendono da come le tipologie di prodotto sono sequenziate nelle
lavorazioni.
Il bilanciamento delle operazioni nelle linee a prodotto misto puo essere
operato attraverso la procedura di Helgeson e Birnie nel modo seguente:
Passo 1. Considera tutti i dati e i parametri relativi alle differenti tipolo-
gie di prodotto (precedenze, tempi di processamento, risorse richieste,
etc.).
Passo 2. Considera i vettori di domanda per ogni singolo prodotto, e il
conseguente production rate.
Passo 3. Utilizza i dati considerati per realizzare la tabella dei tempi di
processamento composti, che contiene per ogni operazione il tempo
di processamento pesato proporzionalmente dal numero di prodotti che
necessitano detta operazione. Ad esempio, ad una operazione di 10
4.11. BILANCIAMENTO MULTI-PRODOTTO E A PRODOTTO MISTO81
minuti che coinvolge il 35% dei prodotti verra assegnato un valore pari
a 3,5 minuti.
Passo 4. Calcola il Carico Massimo Teorico Aggregato e il minimo numero
di stazioni richieste.
Passo 5. Costruisci il grafo delle precedenze dei prodotti composti, te-
nendo in considerazione tutte le varianti di prodotto coinvolte.
Passo 6. Calcola il peso posizionale di ogni operazione, cosı come per il
bilanciamento monoprodotto.
Passo 7. Assegna le operazioni alle stazioni in funzione del loro peso posi-
zionale.
Si noti come in effetti questa procedura si riduca a creare dei fittizi
prodotti composti, e ad applicare quindi le tecniche standard sui pesi
posizionali delle operazioni.
Esempio. Una linea di produzione e stata progettata per la realizzazione
di diversi kit di medicine. I kit sono realizzati con gli stessi elementi di base,
ma presentano delle varianti. Il kit di tipo “standard” contiene un insieme di
componenti; il kit “basic” contiene un insieme piu ristretto di componenti;
il kit “lusso” contiene gli stessi componenti del kit standard, ma in quantita
maggiore e con una coppia di componenti addizionali.
Nella tabella seguente sono riportate le operazioni necessarie per la rea-
lizzazione dei tre tipi di prodotto, e i relativi tempi di processamento.
Al prodotto standard corrispondono il 50% delle vendite totali, al prodot-
to basic il 30%, e al kit lusso il restante 20%. In una settimana si vendono in
totale 6000 unita di prodotto (domanda di prodotto aggregata), e il tempo
di lavorazione disponibile e di 40 ore settimanali.
Per prima cosa calcoliamo i tempi di processamento dei prodotti composti,
moltiplicando i tempi di processamento di ogni prodotto per la porzione di
domanda che essi soddisfano. I risultati sono riportati nella seguente tabella:
82 CAPITOLO 4. LA LINEA DI PRODUZIONE
Operazione T. Standard T. Basic T. Lusso Operazioni precedenti
A 15 12 15 -
B 9 9 9 A
C 7 4 10 A
D 7 - 7 A (no Basic)
E 7 7 9 B,C,D
F 18 18 24 E
G 6 - 9 E (no Basic)
H 7 7 10 E
I 10 10 10 F,G,H
J 21 21 28 I
Op. Standard Basic Lusso T. Composti
A 7.5 3.6 3.0 14.1
B 4.5 2.7 1.8 9
C 3.5 1.2 2 6.7
D 3.5 - 1.4 4.9
E 3.5 2.1 1.8 7.4
F 9.0 5.4 4.8 19.2
G 3.0 - 1.8 4.8
H 3.5 2.1 2.0 7.6
I 5.0 3.0 2.0 10
J 10.5 6.3 5.6 22.4
4.11. BILANCIAMENTO MULTI-PRODOTTO E A PRODOTTO MISTO83
Quindi, calcoliamo il c.m.t. aggregato:
c.m.t. =40 ∗ 3600
6000= 24sec
e il numero minimo di stazioni richieste:
LB1N∗ =⌈
14.1 + 9 + 6.7 + 4.9 + 7.4 + 19.2 + 4.8 + 7.6 + 10 + 22.4
24
⌉= 5
Possiamo allora costruire il grafo delle precedenze dei prodotti composti:
Figura 4.6: Grafo delle precedenze.
Calcoliamo i pesi posizionali e assegnamo le operazioni alle stazioni:
Operazione Peso Posizionale Stazione di lavoro assegnata
A 106.1 1
B 80.4 1
C 78.1 2
D 76.3 2
E 71.4 2
F 51.6 3
G 37.2 4
H 40 4
I 32.4 4
J 22.4 5
84 CAPITOLO 4. LA LINEA DI PRODUZIONE
4.12 Vincoli temporali. Linee push e pull
Siano dati m pezzi da lavorare su di una linea di produzione, e siano assagnati
i tempi dij di lavorazione di ogni pezzo in ogni stazione.
Introduciamo le variabili wij e hij con il seguente significato: wij tempo
di ingresso del pezzo i nella stazione j, e hij tempo di uscita del pezzo i dalla
stazione j.
Possiamo scrivere l’equazione che gestisce i tempi di ingresso e uscita dalle
stazioni per il generico pezzo. Sia m, . . . , 1 la sequenza dei pezzi in input sulla
linea. Si ha che:
wij = max{hi(j−1), h(i−1)j}
ovvero il tempo di ingresso del pezzo i nella stazione j e pari al massimo tra
il tempo di uscita di i dalla stazione precedente j− 1 (quando la stazione j e
libera) e il tempo di uscita del pezzo (i− 1), ovvero il pezzo che lo precede,
dalla stazione j (quando la stazione j e occupata dal pezzo (i− 1)).
A partire da queste variabili si possono caratterizzare due tipologie di
linee: la linea push e la linea pull. La linea push ha una autonomia decisionale
decentralizzata, ovvero ogni stazione lavora i pezzi appena possibile e li invia
alla stazione successiva. Questo prevede l’utilizzazione di buffer intermedi
dove immagazzinare i pezzi che non possono accedere alle stazioni successive.
Le linee pull invece sono caratterizzate da una maggiore automazione essendo
gestite in modo centralizzato: ogni stazione ha un ben preciso tempo di
inizio lavorazione di un pezzo e un ben preciso tempo i fine lavorazione di un
pezzo, che potrebbero permettere di operare senza scorte interoperazionali.
I tempi sono calcolti a partire dai tempi di consegna, confidando sui tempi
di lavorazione e sui tempi di disponibilita dei pezzi.
Quindi la linea push puo essere associata al vincolo temporale:
hij = wij + dij
mentre la linea pull al vincolo:
hij ≥ wij + dij
Nella sezione successiva viene esaminato come definire una sequenza di
input dei pezzi per la minimizzazione del tempo di completamento.
4.13. SEQUENZIAMENTO IN UNA LINEA DI PRODUZIONE 85
4.13 Sequenziamento in una linea di produ-
zione
Il problema di sequenziamento tipico in un flow shop e il seguente. Siano
dati n pezzi da lavorare e k macchine; ogni pezzo richiede un tempo di lavo-
razione su ogni macchina: ad esempio per il pezzo i: (t1i , t2i , . . . , t
ki ). Trovare
il sequenziomento dei lavori che minimizza il tempo di fine. Il problema e
NP -completo, a meno che k = 2. In tal caso esistono delle condizioni di
ottimalita che ci consentono di risolvere il problema in tempo polinomiale
(teorema di Johnson). Supponiamo che i e j siano i primi due pezzi da la-
vorare (si suppone che tutti i pezzi siano disponibili in qualsiasi momento),
e indichiamo con αi e βi rispettivamente il tempo di lavorazione di i sulla
macchina 1 e 2. Se i→ j, ovvero se i viene processato prima di j si ha:
αi +max{βi, αj}+ βj,
α_i
β_i
α_j
β_j
Max{α_j, β_i}
Figura 4.7: Sequenziamento se i→ j.
Se invece j → i si ha:
αj +max{βj, αi}+ βi.
Conviene quindi eseguire i prima di j se:
αi +max{βi, αj}+ βj ≤ αj +max{βj, αi}+ βi =
86 CAPITOLO 4. LA LINEA DI PRODUZIONE
α_j
β_j
α_i
β_i
Max{α_i, β_j}
Figura 4.8: Sequenziamento se j → i.
αi + βj −max{βj, αi} ≤ αj + βi −max{βi, αj} =
min{αi, βj} ≤ min{αj, βi}.
Passiamo alla formulazione del problema. Sia Fj il tempo di fine lavo-
razione dell’unita in posizione j sulla macchina 1, e sia Gj il tempo di fine
lavorazione dell’unita in posizione j sulla macchina 2. Sia inoltre xik uguale a
1 se l’unita i e assegnata alla posizione k, ed uguale a zero altrimenti. Poiche
vogliamo stabilire un assegnamento di unita a posizioni, scriveremo subito i
seguenti vincoli:n∑
i=1
xik = 1 ∀k
n∑k=1
xik = 1 ∀i.
Inoltre, in base alle considerazioni fatte, prima di passare alla formulazione
si ha che:
Fj = Fj−1 +n∑
i=1
xijαi (F0 = 0),
e
Gj = max{Gj−1 +n∑
i=1
xijβi, Fj +n∑
i=1
xijβi} (G0 = 0),
ovvero:
Gj ≥ Gj−1 +n∑
i=1
xijβi,
4.13. SEQUENZIAMENTO IN UNA LINEA DI PRODUZIONE 87
Gj ≥ Fj +n∑
i=1
xijβi.
L’obiettivo sara quello di minimizzare il tempo di fine del pezzo in ultima
posizione, ovvero:
Min Gn
Esempio. Un’azienda lavora su una commessa relativa ad un prototipo
di un nuovo acceleratore di particelle. Tale prodotto si compone di cinque
componenti A, B, C, D, E prodotti da altrettante ditte subcommittenti. Si
tratta di componenti estremamente ingombranti e delicati, che richiedono,
per il trasporto, particolare cura. Un TIR dell’azienda verra utilizzato per
ritirare ciascuno dei cinque componenti dalle rispettive ditte che li hanno pro-
dotti. A causa della delicatezza e dell’ingombro, viene dedicato un viaggio
diverso al ritiro di ogni componente. Una volta portato ciascun componente
in azienda, questo deve essere collaudato da un macchinario apposito. Quan-
do tutti i componenti sono stati collaudati, e possibile finalmente effettuare
la fase finale di assiematura.
Dati i tempi necessari per prelevare A, B, C, D, E che sono rispettivamente
2, 3, 4, 5 e 7 giorni; i tempi di collaudo che sono rispettivamente 6, 6, 5, 3
e 5 giorni; inoltre la fase finale di assiematura e la consegna richiedono,
complessivamente, un altro giorno. L’azienda dispone di un solo TIR.
Trova il minimo tempo di consegna del prodotto finito. Il ritiro e il col-
laudo di ciascun componente sono assimilabili a due operazioni da effettuarsi
in sequenza su ogni componente, e dunque a un flow shop costituito da due
macchine. Il problema puo essere risolto applicando l’algoritmo di John-
son (French, 1982). Dato un flow shop con due macchine, sia J l’insieme di
n lavori che devono essere effettuati. Per ogni lavoro j, si indichi con aj e bjil tempo di lavorazione di j sulla prima macchina e sulla seconda macchina
rispettivamente. L’algoritmo di Johnson trova la sequenza che minimizza il
tempo di completamento, e puo essere schematizzato come segue:
Step 1. k = 1, l = n.
88 CAPITOLO 4. LA LINEA DI PRODUZIONE
Step 2. Sia S la lista di lavori non ancora assegnati alla sequenza.
Step 3. Trova, in S, il piu piccolo valore dei tempi aj e bj.
Step 4. Se aj e il piu piccolo:
– Assegna il lavoro Ji corrispondente alla k-esima posizione della se-
quenza.
– Elimina Ji da S.
– Poni k = k + 1.
– Vai allo Step 6.
Step 5. Se bj e il piu piccolo:
– Assegna il lavoro Ji corrispondente alla l-esima posizione della se-
quenza.
– Elimina Ji da S.
– Poni l = l − 1.
Step 6. Se l’insieme S non e vuoto vai allo Step 3, altrimenti stop.
La sequenza di Johnson si costruisce dagli estremi verso il centro. Il tem-
po piu basso in assoluto e quello del ritiro di A (2 giorni), che dunque verra
posto all’inizio della sequenza:
A
Quindi, abbiamo il ritiro di B e il collaudo di D che durano ambedue 3
giorni. Possiamo quindi porre B subito dopo A e D in fondo alla sequenza:
A B D
Il tempo piu basso e ora il ritiro di C (4 giorni), che viene dunque posto
in coda a B. Si ottiene percio:
A B C E D
Il tempo di completamento e pari a 27.
4.14. GESTIONE DEI TEMPI DI SET UP 89
4.14 Gestione dei tempi di set up
Nelle due sezioni precedenti si e supposto che i tempi di processamento dei
pezzi nelle stazioni comprendessero anche i tempi di set up, ovvero i tempi
di preparazione delle stazioni per le lavorazioni sul pezzo successivo. Ci sono
molte situazioni in cui i tempi di set up diventano invece rilevanti, e in questi
casi si vuole trovare il sequenziamento dei pezzi che minimizza il tempo di
completamento totale.
Si puo ricondurre il problema ad un problema di Travelling Salesman
Problem (TSP): un commesso viaggiatore deve visitare un insieme di citta,
passando per ogni citta una sola volta, tornando alla citta di partenza con
l’obiettivo di minimizzare la distanza percorsa. E importante notare che stia-
mo considerando i tempi di lavorazione come un costo fisso che deve essere
necessariamente sostenuto qualunque sia l’ordine di visita prescelto. Risol-
vere il nostro problema equivale, quindi, a minimizzare la somma dei tempi
di set up. Sia G il grafo ottenuto considerando le stazioni (o le macchine)
come i nodi da visitare e i tempi di set up come le distanze da percorrere fra
un nodo e l’altro. L’unica differenza rispetto al problema del TSP e che, in
questo caso, non e previsto il ritorno al nodo iniziale. A cio si puo ovviare
facilmente aggiungendo un nodo 0 e per ogni nodo j = 1, . . . , n un arco di
ritorno con costo cj0 = 0. Il problema e, quindi, quello di trovare, sul grafo
G, un ciclo hamiltoniano (un cammino che passi per tutti i nodi di G una ed
una sola volta) di costo complessivo minimo. Una formulazione del problema
e ottenibile definendo le variabili intere xij pari ad 1 se l’operazione j viene
effettuata subito dopo l’operazione i, e 0 altrimenti. Sia Γ(i) l’insieme dei
successori (diretti) di un nodo i e sia Γ−1(i) l’insieme dei predecessori (diret-
ti) di i. Ogni nodo i deve avere un ed un solo succesore, ed un ed un solo
precedessore. Valgono allora i seguenti vincoli:∑j∈Γ(i)
xij = 1 ∀i = 0, . . . , n
∑j∈Γ−1(i)
xji = 1 ∀i = 0, . . . , n
Inoltre, devono essere eliminati i sottocicli; definendo con (S, S ′) una generica
partizione dell’insieme dei nodi, il seguente vincolo deve essere soddisfatto:∑i∈S
∑i∈S′
xij ≥ 1 ∀i ∈ S, j ∈ S ′
90 CAPITOLO 4. LA LINEA DI PRODUZIONE
L’obiettivo e:
Minn∑
i=1
n∑j=1
sijxij
dove sij e il tempo di set up per aver sequenziato i prima di j.
Problema. Un reparto per la lavorazione di un semilavorato in legno e
costituito da un insieme di macchine semiautomatiche dedicate, posizionate
ad una certa distanza l’una dall’altra. Ogni semilavorato deve essere lavorato
su ogni macchina una ed una sola volta, e poi trasferito ad una delle macchine
non ancora visitate.
Dati il numero delle macchine del reparto pari a 6, i tempi di lavorazione,
in minuti, di ogni semilavorato per ogni macchina,
Macchina 1 2 3 4 5 6
Tempo di lavorazione 18 9 22 11 13 15
i tempi tij, in minuti, per trasportare un semilavorato dalla macchina i
alla macchina j. Per ogni coppia di operazioni (i, j) si ha tij = tji.
Macchina 1 2 3 4 5 6
1 0 1 4 2 1 3
2 1 0 4 1 2 2
3 4 4 0 2 5 5
4 2 1 2 0 4 5
5 1 2 5 4 0 3
6 3 2 5 5 3 0
4.15. DETERMINAZIONE DELLA LINEA PIU CORTA 91
Trova l’ordine con cui ogni semilavorato deve visitare le macchine.
Tale che sia minimo il tempo totale di completamento di ogni semilavo-
rato.
4.15 Determinazione della linea piu corta
Un’azienda produce due differenti prodotti e vuole determinare la dimensio-
ne della linea di produzione piu corta ottenibile impiegando solo macchine
dedicate (special purpose). Facciamo un esempio.
Date due sequenze di lavorazione per i prodotti, indicando con caratteri le
operazioni, S1 = acbfa, S2 = abd.
Trova la sequenza di lavorazione di lunghezza k X = {x1, x2, . . . , xk}.
Tale che ogni sequenza di lavorazione sia una sottosequenza di X e k sia
minimo.
Data una sequenza alfanumerica, una sottosequenza, si ottiene eliminando
caratteri dalla sequenza. Viceversa una soprasequenza si ottiene aggiungendo
caratteri alla sequenza data. Il problema in esame e quello della ricerca della
soprasequenza piu corta, e nel caso di due sequenze, equivale a trovare la
sottosequenza (relativa alle due sequenze) piu lunga.
Alle due sequenze e possibile associare un grafo i cui nodi corrispondono
a coppie d’operazioni (una per ogni sequenza) e gli archi a caratteri della
soprasequenza. Gli archi diagonali corrispondono a elementi comuni alle due
sequenze.
La supersequenza piu corta corrisponde al cammino piu corto dal nodo
di nord-ovest al nodo di sud-est. Gli archi diagonali del cammino piu corto
nel grafo corrispondono alla sottosequenza piu lunga. Dalla figura si deduce
che le soprasequenze piu corte sono: acbfad, acbdfa, acbfda.
92 CAPITOLO 4. LA LINEA DI PRODUZIONE
Capitolo 5
I layout orientati al processo
5.1 Generazione di un layout
La progettazione del layout di un impianto industriale consiste nella localiz-
zazione di n centri (reparti) di lavorazione in un capannone di data area. E’
nota la matrice delle interazioni, simmetrica, ove wij, con i 6= j, indica la
quantita di materiali scambiati nell’unita di tempo fra i e j. Si vuole quindi
trovare un layout, tale che centri interagenti siano possibilmente adiacenti in
modo che sia soddisfatto il maggior numero di richieste di interazione.
L’organizzazione razionale, planimetrica e funzionale, dei mezzi di pro-
duzione, nonche lo studio dei caratteri distributivi degli edifici in cui essi
andranno inseriti, costituisce un problema di primaria importanza e di note-
vole complessita. Lo studio del layout implica, infatti, preventiva conoscenza
e conseguente valutazione dei fattori finanziari, tecnici ed economici; ma an-
che dei metodi di realizzazione del progetto stesso, del prodotto da realizzare,
della posizione e dell’area a disposizione, dei costi di immagazzinamento e
di trasporto. L’esigenza dello studio di layout si presenta anche in sede
di riprogettazione per l’ampliamento, ammodernamento, riorganizzazione,
conversione di produzione.
Gli obiettivi fondamentali seguiti nell’organizzazione di un layout di im-
pianto possono riassumersi nei punti che seguono.
- Ubicare i centri di lavoro il piu vicino possibile l’uno con l’altro in modo
da ridurre le quantita di semilavorati in movimento lungo le vie di
collegamento;
93
94 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
- Ridurre il numero di fermate ed i tempi di sosta dei semilavorati;
- Incrementare il livello di automazione dei mezzi di movimentazione interna
dei materiali, facendo ricorso piu diffusamente a mezzi semoventi a
guida automatica.
Numerosi sono gli algoritmi e le procedure di calcolo automatico per la
scelta della disposizione planimetrica ottimale dei reparti e dei macchinari.
Alcuni algoritmi si basano sulla teoria dei grafi come si vedra dalla soluzio-
ne proposta. Atri si basano su modelli di programmazione lineare simili a
problemi di trasporto.
Il problema si puo descrivere mediante un grafo G(V,E) i cui nodi rap-
presentino i centri di lavorazione. Due centri (nodi) sono adiacenti se tra di
loro viene scambiata una quantita non nulla di materiali. Ad ogni arco (i, j)
e associato un peso wij proporzionale alla quantita di materiale scambiata
tra il centro i ed il centro j.
Questo peso wij puo essere rappresentato pari al prodotto tra il flusso fijdi volume ed un costo unitario hij di material handling. Tale costo include
vari elementi tra cui il costo dell’attrezzatura per il material handling, il costo
del lavoro, ed il costo di inventario per il prodotto in transito. Si puo pensare
di incorporare anche fattori legati alla sicurezza e all’importanza del cliente.
Se tutti i movimenti sono di uguale importanza si puo fissare il peso hij = 1.
Cio che puo risultare utile capire prima di progettare un layout e l’even-
tuale presenza di un flusso dominante, di pochi flussi dominanti o l’assenza
di flussi dominanti, vale a dire la quantita di flusso che si scambia tra un
dipartimento verso tutto gli altri dipartimenti e pressocche la stessa.
Per fare cio si puo definire il seguente parametro:
f =
√∑n
i=1
∑n
j=1w2
ij−n2w2
n2−1
w
dove w =
∑n
i=1
∑n
j=1wij
n2 . Sperimentalmente valori di f > 2 indicano la pre-
senza di pochi flussi dominanti, mentre valori di f piccoli, vicino allo zero,
indicano molti flussi quasi uguali.
Valori di f vicini ad 1 indicano in genere problemi di elevata difficolta.
Si puo calcolare un upper bound fu ed un lower bound fl al valore di f nel
5.1. GENERAZIONE DI UN LAYOUT 95
seguente modo
fu = n
√√√√ n2 − n+ 1
(n− 1)(n2 − 1)
e
fl = n
√1
(n− 1)(n2 − 1).
Esempio. Assumiamo per esempio di avere n = 6 centri da allocare con la
seguente matrice dei flussi
A B C D E F
A - 40 10 30 10 50
B 0 - 0 0 0 100
C 0 0 - 0 0 102
D 0 0 0 - 0 100
E 0 0 100 0 - 0
F 100 5 2 5 5 -
Si ottiene w = 18.3056 ed f = 1.9285, mentre fu = 2.525 ed fl = 0.4536.
La risolvibilita del problema della ricerca di un layout che massimizzi gli
scambi tra centri adiacenti e legata al concetto di planarita di un grafo. Un
grafo si dice planare se e possibile disegnarlo sul piano in modo tale che i
suoi archi non si intersechino. Se il grafo e planare il problema puo essere
risolto efficientemente calcolando il grafo duale. Viceversa il problema in
esame diventa difficile e si risolve all’ottimo con delle tecniche enumerative
o euristiche che consentono di ottenere, in base alle regole implementate,
differenti grafi planari a partire dal grafo iniziale.
La procedura generale relativa al progetto di un layout e di seguito
riportata:
Passo 1. Trova una rappresentazione planare del grafo delle interazioni;
96 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
Passo 2. Costruisci il grafo duale;
Passo 3. Costruisci lo schema a blocchi dell’impianto, associando un reparto
di produzione ad ogni faccia del grafo planare.
Supponiamo in prima istanza che il grafo ottenuto sia planare: allora come
detto si determina il grafo duale di tale grafo. Esso si costruisce associando
a ciascuna area, individuata dal grafo, un nodo e inserendo un arco tra due
nodi se le corrispondenti aree sono adiacenti.
1
2
3
4
5
1
2
3
4
5
A
BCD
E
Figura 5.1: Grafo duale di un grafo planare
Ad esempio, con riferimento al grafo in Figura 5.1, se supponiamo che
esso sia una rappresentazione planare dello scambio di flussi produttivi (in-
terazioni) tra i reparti, tramite la procedura indicata si puo individuare il
layout riportato in Figura 5.2.
Se il grafo non e planare l’obiettivo e quello di trovare un sottoinsieme di
archi J ⊂ E tale che: ∑(i,j)∈J
wij
sia massima, e G(V, J) sia planare, dove con wij si e indicato il peso associa-
to all’arco (i, j). Cio corrisponde a trovare un sottografo indotto per archi
che sia planare e abbia il massimo valore della funzione obiettivo rappresen-
tata dalla movimentazione di materiali tra i centri. Per poter trovare tale
sottografo definiamo la Total Closeness Rate:
TCR(i) =∑i 6=j
wij
5.1. GENERAZIONE DI UN LAYOUT 97
Figura 5.2: Rappresentazione a blocchi di un layout
Grandi valori del TCR indicano che il centro a cui si riferisce ha significative
interazioni con un alto numero gli centri e quindi sarebbe opportuno che fosse
posizionato in un’area centrale cosı che esso possa essere vicino a piu centri
possibili. La procedura di planarizzazione allora e la seguente:
Passo 1. Ordina le risorse in senso crescente di TCR(i);
Passo 2. Forma un tetraedro con le prime quattro risorse connesse;
Passo 3. Inserisci le successive risorse, una per volta, nella faccia migliore
disponibile.
Tale algoritmo prende il nome di Column-Sum Intersection e puo non
trovare il sottografo planare massimale di peso massimo. In questo caso la
soluzione puo essere migliorata tramite un algoritmo di ricerca locale: due
algoritmi noti sono il Vertex Relocation e l’Edge Replacement.
Il Vertex Relocation cerca di muovere ogni vertice di grado 3 verso altre
facce triangolari, cercando di migliorare la soluzione corrente.
L’Edge Replacement elimina l’arco che separa due facce triangolari, e
pone un nuovo arco che genera due nuove facce triangolari diverse dalle
precedenti.
Come detto precedentemente il problema in esame poteva essere anche
risolto con l’ausilio di un algoritmo dei trasporti. Tale metodo consente di
individuare l’assegnazione ottimale dei reparti alle possibili ubicazioni che
98 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
minimizza il valore del costo totale di movimentazione dei prodotto tra i
reparti. Quindi in questo caso oltre alla matrice dei flussi di movimentazio-
ne, avremmo dovuto avere anche quella relativa ai costi di movimentazione.
Comunque e importante sottolineare che lo studio e l’assegnazione della di-
sposizione planimetrica finale dei reparti, delle macchine e dei servizi viene
ancora riservata al progettista che si avvale dell’elaborazione e della rappre-
sentazione grafica delle tecniche CAD. Il disegno del layout viene, infatti,
effettuato senza utilizzare metodi algoritmici o strumenti di supporto alle
decisioni del tipo descritto.
Esempio. Immaginiamo di voler risolvere un problema di layout ottimo
sfruttando un modello matematico per determinare la disposizione che mi-
nimizza i costi di movimentazione. Un’azienda manufattiruera produce due
tipi di prodotti P1 e P2. La domanda di mercato da soddisfare e pari a 600
pezzi al giorno per il prodotto P1 e 450 pezzi al giorno per P2. Entrambi i
prodotti richiedono il processamento di 4 diverse operazioni A, B, C, D, ma
ciascun prodotto con un proprio routing in base al seguente schema:
P1 : A B D C
P2 : C A B D
L’azienda ha a disposizione 4 aree disposte a scacchiera all’interno delle
quali collocare i propri reparti, uno per ogni operazione:
La determinazione del layout ottimale terra conto dei flussi giornalieri di
materiale fra i vari reparti e delle distanze fra le aree riportate in Tabella 5.1
e 5.2.
5.1. GENERAZIONE DI UN LAYOUT 99
A B C D
A - 1050 450 -
B 1050 - - 1050
C 450 - - 600
D - 1050 600 -
Tabella 5.1: Matrice dei flussi (numero di pezzi al giorno)
1 2 3 4
1 - 20 10 15
2 20 - 25 10
3 10 25 - 15
4 15 10 15 -
Tabella 5.2: Matrice delle distanze (metri)
L’azienda stima un costo unitario di movimentazione c = 0, 01e per ogni
metro percorso e per ogni unita di prodotto. Si noti che applicando il metodo
del grafo planare otteremo una disposizione dei reparti compatibile con le 4
aree a disposizione.
Il metodo del grafo planare ed altri metodi euristici, come il metodo dei
momenti, permettono di determinare un layout ottimo o ammissibile tenendo
pero conto solamente delle relazioni di adiacenza fra i reparti o dei flussi che
transitano fra di essi (come per il metodo dei momenti), ma non tengono in
considerazione le distanze reali fra i reparti.
100 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
Per determinare il layout ottimale che tenga conto anche delle effettive
distanze fra le aree si definisce una variabile binaria xik che assume valore
1 se l’operazione i viene collocata nell’area k e 0 altrimenti. E necessario
introdurre nel modello i vincoli di assegnamento affinche ciascuna area ospiti
un’operazione soltanto e ciascuna operazione sia allocata in una sola area.
Sia S l’insieme delle operazioni adiacenti nel routing dei prodotti P1 e P2. Si
paga un costo di movimentazione se, presa una coppia di operazioni (i, j) ∈ S,
vengono collocate in due aree k e k′ differenti dunque xik = xjk′ = 1: il costo
sostenuto e pari a c∗dkk′ ∗fij con dkk′ pari alla distanza fra le aree k e k′ e fijpari al flusso fra i reparti i e j. Definiamo una variabile zijkk′ come and delle
variabili xik e xjk′ come descritto nella Sezione 4.7. Il modello matematico e
il seguente:
Min∑
(i,j)∈S
4∑k=1
4∑k′ 6=k,k′=1
1
2cdkk′fijzijkk′
s.t.4∑
i=1
xik = 1 ∀k
4∑k=1
xik = 1 ∀i
zijkk′ ≥ xik + xjk′ − 1 ∀(i, j) ∈ S,∀k, ∀k′ 6= k
zijkk′ ≤xik+xjk′
2∀(i, j) ∈ S,∀k, ∀k′ 6= k
xij ∈ {0, 1} ∀i, ∀j
zijkk′ ∈ {0, 1} ∀i, ∀j,∀k, ∀k′
A questo modello e possibile aggiungere ulteriori vincoli operativi come ad
esempio un limite sulla distanza massima fra due reparti o un assegnamento
forzato di un reparto i ad un’area k. La configurazione ottima e la seguente:
5.2. SEQUENZIAMENTO DELLE LAVORAZIONI 101
che produce un costo di movimentazione di 412.50 e al giorno. Dopo aver
realizzato il layout ottimo l’azienda valuta la possibilita di avviare nell’anno
successivo la produzione di un terzo prodotto P3 che ha una domanda gior-
naliera di 500 pezzi ed e costituito dalle seguenti operazioni:
P3 : D A C B
L’azienda deve valutare se mantenere l’attuale layout tenendo conto dei
nuovi flussi inter-reparto, oppure avviare un processo di reingegnerizzazione
che comporta un costo di ristrutturazione e modifica del layout pari a 10000e.
La nuova matrice dei flussi sara la seguente:
A B C D
A - 1050 950 500
B 1050 - 500 1050
C 950 500 - 600
D 500 1050 600 500
Mantendo il vecchio layout si sostiene un costo giornaliero di movimen-
tazione pari a 712.50 e. La configurazione ottima con i nuovi flussi, invece,
prevede il reparto A nell’area 3, il B nell’area 4, il C nell’area 1 ed il D nell’a-
rea 2 per un costo giornaliero di 677.50 e. Nell’ipotesi di lavorare 365 giorni
all’anno, l’azienda col nuovo layout avrebbe un risparmio di 12775 e a fronte
di un investimento di 10000 e e dunque troverebbe vantaggioso modificare
la disposizione dei reparti.
5.2 Sequenziamento delle lavorazioni
5.2.1 L’incompatibilita tra operazioni
Il problema dell’incompatibilita sorge nei sistemi di produzione per reparti
quando si verifica la richiesta nello stesso istante della medesima risorsa da
parte di lavorazioni differenti. La possibilita del verificarsi di tali eventi e
legata alla caratteristica che distingue un sistema di produzione per reparti
102 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
da uno per linea, ovvero l’opportunita di lavorare parallelamente (in reparti
diversi) le parti nel sistema.
Dato un grafo G(V,E) i cui nodi rappresentano le operazioni e gli archi
orientati le precedenze tra queste nelle sequenze di lavorazioni associate ad
ogni prodotto, l’incompatibilita sulle risorse si puo rappresentare tramite un
arco non orientato. Quando si verifica tale evento, allora si presentano 2
alternative:
1. Orientare l’arco. Si stabilisce una precedenza tra le operazioni con-
nesse dall’arco. L’orientamento stabilito deve rispettare due vincoli
fondamentali:
- Garantire l’aciclicita del grafo;
- Garantire il minimo tempo di completamento (si ottiene determinan-
do l’orientamento che favorisca il minimo percorso critico attra-
verso una tecnica PERT).
2. Eliminare l’arco. Si duplica la risorsa. Questa operazione deve rispet-
tare il vincolo sul budget a disposizione. Si osservi come questo non
significi eliminare piu archi possibili fino ad eguagliare il budget as-
segnato, ma eliminare alcuni archi in modo da ottenere un cammino
critico minore, nel rispetto di tale budget.
Vediamo piu nello specifico il modello matematico per la risoluzione del
problema del sequenziamento in presenza di imcompatibilita: il problema da
risolvere e un problema di minimizzazione del cammino massimo su grafo.
Come detto si ricorre ad un grafo con due tipologie di archi: gli archi orientati,
che indicano le relazioni di precedenza e gli archi non orientati che esprimono
le incompatibilita. Il grafo G(V,A,E) e detto grafo disgiuntivo con V insieme
dei vertici, A insieme degli archi orientati ed E insieme degli spigoli, o archi
non orientati. Inoltre si introduce un nodo sorgente s ed un nodo pozzo t
associati a due operazioni fittizie di durata nulla come mostrato in Figura
5.3 nel caso di due prodotti che devono condividere 4 risorse comuni.
Si introduce una variabile reale positiva fj che indica la fine della lavo-
razione dell’operazione j. Per definizione del problema data un’operazione
j di durata dj e l’insieme delle operazioni che la precedono pred(j), allora
fj = maxi∈pred(j){(fi + dj)}, cioe l’istante di completamento dell’operazione
5.2. SEQUENZIAMENTO DELLE LAVORAZIONI 103
Figura 5.3: Esempio di sequenziamento con imcompatibilita tra risorse
j e pari alla sua durata piu il massimo tempo di completamento delle ope-
razioni che la precedono. L’obiettivo sara quello di minimizzare il tempo di
completamento dell’ultima operazione, vale a dire quella del nodo fittizio t.
Infine si introduce una variabile binaria yij per ogni coppia (i, j) ∈ E cosı
definita: yij =
{1 se j → i
0 se i→ j
Il modello della minimizzazione del cammino critico (quello di lunghezza
massima) sul grafo e il seguente:
Min ft
s.t. fj ≥ fi + dj ∀(i, j) ∈ A
fj ≥ fi + dj −M ∗ yij ∀(i, j) ∈ E
fi ≥ fj + di −M ∗ (1− yij) ∀(i, j) ∈ E
fs = 0
La presenza di una costante molto grande M fa in modo che i vincoli
in cui appare non si ’attivino’ contemporaneamente, o si attiva il primo col
secondo banalmente soddisfatto o il viceversa. L’attivazione di un vincolo
corrisponde ad orientare uno spigolo (i, j) ∈ E o in un verso o nell’altro per
indicare una relazione di precedenza.
104 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
5.3 Il sequenziamento di due lavorazioni con
operazioni incompatibili
Si considerino due lavorazioni che presentano operazioni incompatibli. Si
vuole determinare la procedura che permetta di scegliere al meglio l’orienta-
mento per l’arco che rappresenta tali incompatibilita.
Si supponga, a tal fine, di avere uno stabilimento di produzione diviso
in reparti in cui si lavora un prodotto composto da due parti. Siano note
le sequenze di lavorazioni che devono subire le parti e siano rappresentate le
operazioni e le precedenze tra queste in un grafo orientato. L’incompatibilita
tra operazioni che richiedono la stessa risorsa sia rappresentata da un arco
non orientato.
Si puo ora rappresentare, tramite assi ortogonali, l’avanzamento delle
operazioni legate al processo in esame. Sull’asse delle ascisse si riportano i
tempi delle operazioni per la parte A; su quello delle ordinate i tempi per le
operazioni della parte B. Si puo quindi creare una griglia che rappresenti la
durata delle due lavorazioni, ed indicare con l’origine degli assi l’istante di
inizio per entrambe.
Si supponga di far partire le attivita connesse ad A e a B contempora-
neamente. Lo scorrere del tempo per le due lavorazioni sara rappresentato
dalla retta a 45 gradi (vedi figura nella pagina successiva).
Se non fossero presenti incompatibilita, il tempo di completamento per la
lavorazione delle due parti sarebbe il massimo tra i tempi di completamento
delle singole parti (nel caso in esame sara il tempo di completamento di
B, dato che, procedendo contemporaneamente, la parte A viene terminata
prima).
La presenza di incompatibilita tra due operazioni, invece, impone di effet-
tuare la scelta su quale processare per prima. L’obiettivo, allora, che si deve
5.3. IL SEQUENZIAMENTO DI DUE LAVORAZIONI CON OPERAZIONI INCOMPATIBILI105
perseguire e il sequenziamento delle operazioni nei reparti al fine di minimiz-
zare il tempo di completamento totale. Tale obiettivo equivale a minimizzare
i tempi di attesa nei reparti.
A tale scopo si possono riportare in scuro sulla griglia le zone corrispon-
denti alle coppie di operazioni incompatibili. Allora, la retta che rappresenta
il tempo di processamento non potra piu scorrere a 45 gradi, ma in presenza
di una zona scura incontrera un ostacolo.
A questo punto, come gia detto, una delle due operazioni deve attendere
il completamento dell’altra. Fatta una scelta, si chiami milestone l’istan-
te di completamento della prima delle due operazioni in conflitto. Se Ai
e eseguita prima di Bj, la distanza temporale dall’inizio fino al milestone
e quindi t(A1) + · · · + t(Ai). Analogamente, nell’altro caso, tale distanza
106 CAPITOLO 5. I LAYOUT ORIENTATI AL PROCESSO
sara t(B1) + · · · + t(Bj). Una volta scelta la precedenza, si ripartira con il
processamento simultaneo, fino ad incontrare un nuovo ostacolo.
Il problema puo quindi essere rappresentato con un grafo, i cui nodi, eti-
chettati con Ai/Bj e Bj/Ai, rappresentano le alternative, Ai ha la precedenza
su Bj, Bj ha la precedenza su Ai. A questi si aggiungono un nodo sorgen-
te S e un nodo pozzo K che rappresentano l’istante di inizio e di fine del
processamento.
Ogni arco e quindi pesato con la distanza tra i due milestone rappresentati
dai nodi che sono suoi vertici, eccetto gli archi entranti nel nodo K, che
invece sono pesati con la distanza dal milestone alla fine della schedula. In
particolare, si noti che la precedenza Ai/Bj (Bj/Ai) e da intendersi “fino al
completamento di Ai/ inizio di Bj” (“fino al completamento di Bj/ inizio di
Ai”). Ad esempio, per il caso in esame questi saranno:
a = t(A1) + t(A2);
b = t(B1) + t(B2);
c = max{t(A3) + t(A4), t(B2) + t(B3) + t(B4) + t(B5) + t(B6)};
d = max{t(A3) + t(A4) + t(A5), t(B2) + t(B3) + t(B4) + t(B5)}
e = max{t(A2) + t(A3) + t(A4), t(B2) + t(B3) + t(B4) + t(B5) + t(B6)}
f = max{t(A2) + t(A3) + t(A4) + t(A5), t(B3) + t(B4) + t(B5)}
g,i = t(A5)
5.3. IL SEQUENZIAMENTO DI DUE LAVORAZIONI CON OPERAZIONI INCOMPATIBILI107
h,m = t(B6)
Il cammino minimo su questo grafo corrisponde al minimo tempo di com-
pletamento. Questo indichera gli orientamenti da effettuare sugli archi delle
incompatibilita.