Applicazioni del job shop

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Applicazioni del job shop"

Transcript

1 Applicazioni del job shop Production scheduling in due contesti I case study: Industria siderurgica II case study: Industria farmaceutica

2 PRIMO CASE STUDY Gestione delle risorse produttive nell industria siderurgica Rapporto tecnico: DIA-- Pacciarelli, International Journal of Production Research

3 Section outline Introduzione al problema Modellazione via grafi delle alternative Esempi Algoritmi

4 Processo di fabbricazione dell acciaio AOD: Argon Oxigen Decarburization unit

5 Modello schematico Ferro grezzo EAF Buffers - AOD LF Buffer CC Bramme EAF: Electric Arc Furnace AOD: Argon Oxigen Decarburization unit LF: Ladle Furnace CC: Continuous Caster

6 Un problema di pianificazione: Minimizzazione dei costi di carica del forno Magazzini materie prime Ceste di ferro grezzo (ladles) EAF Buffers AOD EAF: Electric Arc Furnace Materiali di affinazione AOD: Argon Oxigen Decarburization unit 6

7 Magazzini materie prime Dati del problema Per ogni materiale: Disponibilità Caratteristiche Resa in fusione Resa in affinazione Ceste di ferro grezzo (ladles) EAF Buffer Materiali di affinazione Per ogni prodotto: Quantità Caratteristiche all uscita del forno Caratteristiche dopo l affinazione AOD 7

8 Formulazione del problema di pianificazione Variabili: x ik quantità di materiale i per produrre l acciaio k Dati: c hi concentrazione di elemento h nel materiale i r h resa in forno dell elemento h s h resa in affinazione dell elemento h R i resa in forno del materiale i S i resa in affinazione del materiale i D i disponibilità del materiale i B k quantità richiesta di materiale k f hk concentrazione rich. di el. h nell acciaio k dopo il forno e hk conc. rich. di el. h nell acciaio k dopo l affinazione C i costo per unità di materiale i V i volume per unità di peso del materiale i V max volume massimo per unità di peso della miscela 8

9 Formulazione del problema di pianificazione Obiettivo: minimizzazione dei costi dei materiali min Σ ik C i x ik Vincoli sulle caratteristiche di ogni acciaio dopo il forno (Σ i forno c hi x ik ) r h = f hk (Σ x i forno ik ) r h h,k Vincoli sulle caratteristiche di ogni acciaio dopo l affinazione (Σ i forno c hi x ik ) r h s h + (Σ i aff. c hi x ik )s h = e hk B k h,k Vincoli sulla quantità da produrre di ogni acciaio (Σ i forno x ik ) R i S i + (Σ i aff. x ik )S i = b k k Vincoli sulla disponibilità di materiali Σ k x ik D i i Vincoli sulla densità delle miscele Σ ik V i x ik V max Σ k x ik k 9

10 Problema del sequenziamento dei lotti Il problema consiste nello schedulare la produzione di un numero dato di lotti con l obiettivo di minimizzare il makespan (i.e., il tempo di completamento dell ultimo lotto schedulato) Caratteristiche principali del problema: Elevato costo, peso e ingombro dei semilavorati Raffreddamento del materiale Scarsa capacità di immagazzinamento Lotti di piccole dimensioni Costi di set-up tra lotti diversi Criticità in fase di colatura STEEL LADLE Ogni lotto è composto da un insieme di ladles che devono essere processate in blocco in fase di colatura

11 Section outline Introduzione al problema Modellazione via grafi delle alternative Esempi Algoritmi

12 Intro al modello di job shop Job: Macchine: La sequenza di visita delle macchine per ogni job è fissata La lavorazione di un job su una macchina è detta operazione Ogni operazione richiede un tempo di lavorazione dato e non interrompibile Ogni macchina può eseguire al più un operazione alla volta

13 Intro al grafo disgiuntivo Variabili: istante di inizio t i dell operazione o i, i=,, n p i : tempo di processamento dell operazione o i Obj. Function: min t n Congiunzioni: t j t i +p (i,j) F i Disgiunzioni: (t h t k +p k ) (t k t h +p h ) (h,k) A

14 Il grafo disgiuntivo min t 9 Cong. t t t t +p t t +p t 9 t +p t t t t +p t 9 t +p t 6 t t 7 t 6 +p 6 t 8 t 7 +p 7 t 9 t 8 +p 8 Disg. (t t 6 +p 6 ) (t 6 t +p ) (t t +p ) (t t +p ) (t t 7 +p 7 ) (t 7 t +p ) (t t 7 +p 7 ) (t 7 t +p ) (t t 8 +p 8 ) (t 8 t +p )

15 Il grafo disgiuntivo min t 9 Cong. t t t t +p t t +p t 9 t +p t t t t +p t 9 t +p t 6 t t 7 t 6 +p 6 t 8 t 7 +p 7 t 9 t 8 +p 8 Disg. (t t 6 +p 6 ) (t 6 t +p ) (t t +p ) (t t +p ) (t t 7 +p 7 ) (t 7 t +p ) (t t 7 +p 7 ) (t 7 t +p ) (t t 8 +p 8 ) (t 8 t +p )

16 Il modello di job shop assume l esistenza di magazzini intermedi per i semilavorati a capacità infinita 6

17 Il modello di job shop assume l esistenza di magazzini intermedi per i semilavorati a capacità infinita nel caso siderurgico I magazzini hanno capacità limitata (vincoli di blocking) I semilavorati hanno un tempo massimo di immagazzinamento tra operazioni consecutive (vincoli di deperibilità) 7

18 Magazzini di capacità k sono modellati introducendo k macchine fittizie con tempo di processamento e con blocking (Mc Cormick et al. OR 989) A Buffer op. op. B 8

19 Magazzini di capacità k sono modellati introducendo k macchine fittizie con tempo di processamento e con blocking (Mc Cormick et al. OR 989) A Buffer op. op. B A B op. op. 9

20 Il modello di job shop considera tutti i lavori indipendenti l uno dall altro

21 Il modello di job shop considera tutti i lavori indipendenti l uno dall altro nel caso siderurgico I lavori di uno stesso lotto devono essere processati consecutivamente Esiste un vincolo di continuità tra le operazioni di colatura di uno stesso lotto

22 Il grafo delle alternative Variabili: istante di inizio t i dell operazione o i, i=,, n

23 Il grafo delle alternative Variabili: istante di inizio t i dell operazione o i, i=,, n min t n t j t i +d ij (i,j) F (t i t h +a hi ) (t j t k +a kj ) ((h,i)(k,j)) A F: insieme degli archi FISSI A: insieme delle coppie di archi ALTERNATIVI

24 Il grafo delle alternative Variabili: istante di inizio t i dell operazione o i, i=,, n min t n t j t i +d ij (i,j) F (t i t h +a hi ) (t j t k +a kj ) ((h,i)(k,j)) A F: insieme degli archi FISSI A: insieme delle coppie di archi ALTERNATIVI d ij < a hi < a kj <

25 Il grafo delle alternative Variabili: istante di inizio t i dell operazione o i, i=,, n min t n t j t i +d ij (i,j) F (t i t h +a hi ) (t j t k +a kj ) ((h,i)(k,j)) A F: insieme degli archi FISSI A: insieme delle coppie di archi ALTERNATIVI d ij < a hi < a kj < G=(N,F,A)

26 Il grafo delle alternative Variabili: istante di inizio t i dell operazione o i, i=,, n min t n d ij < t j t i +d ij (i,j) F a hi (t i t h +a hi ) (t j t k +a kj ) ((h,i)(k,j)) A < a kj < F: insieme degli archi FISSI G=(N,F,A) A: insieme delle coppie di archi ALTERNATIVI Una soluzione è ammissibile se e solo se non ci sono 9 cicli di lunghezza positiva nel grafo risultante

27 Il grafo delle alternative min t 9 Cong. t t t t +d t t +d t 9 t +d 9 t t +d t t +d t t +d t 6 t t 7 t 6 +d 67 t 8 t 7 +d 78 t 9 t 8 +d 89 Disg. (t t 8 +a 8 ) (t 6 t +a 6 ) (t t +a ) (t 6 t +a 6 ) (t t 7 +a 7 ) (t 7 t +a 7 ) Una soluzione è ammissibile se e solo se non ci sono cicli di lunghezza positiva nel grafo risultante 7

28 Il grafo delle alternative min t 9 Cong. t t t t +d t t +d t 9 t +d 9 t t +d t t +d t t +d t 6 t t 7 t 6 +d 67 t 8 t 7 +d 78 t 9 t 8 +d 89 Disg. (t t 8 +a 8 ) (t 6 t +a 6 ) (t t +a ) (t 6 t +a 6 ) (t t 7 +a 7 ) (t 7 t +a 7 ) Una soluzione è ammissibile se e solo se non ci sono cicli di lunghezza positiva nel grafo risultante 8

29 Vincoli di deperibilità t j t i +p i t j t i +p i +q i i j p i 9

30 Vincoli di deperibilità -p i -q i. t j t i +p i i j t j t i +p i +q i p i

31 Vincoli di deperibilità -p i -q i. t j t i +p i i j t j t i +p i +q i p i Vincoli di blocking o σ(i) : operazione che segue o i in un lavoro (job) (t j t σ(i) ) (t i t σ(j) ) i p i σ(i) j p j σ(j)

32 Vincoli di deperibilità -p i -q i. t j t i +p i i j t j t i +p i +q i p i Vincoli di blocking o σ(i) : operazione che segue o i in un lavoro (job) (t j t σ(i) +ε) (t i t σ(j) +ε) i j p i p j ε ε σ(i) σ(j)

33 Section outline Introduzione al problema Modellazione via grafi delle alternative Esempi Algoritmi

34 Uno schedule non ammissibile con un solo lotto Ferro grezzo EAF Buffers - AOD LF Buffer CC Bramme

35 Ferro grezzo Uno schedule ammissibile con due lotti Buffers - EAF AOD CC LF Buffer Bramme

36 Esempio di modellazione: AG per un lotto con ladles Ferro grezzo EAF Buffers - AOD LF Buffer CC Bramme EAF B B B AOD LF LF B CC p EAF p AOD p LF p LF ε ε ε ε ε ε ε -p B -p CC p CC p EAF p AOD p LF p LF ε p EAF ε ε ε ε p AOD ε p LF ε p LF -p B -p CC p CC p CC + p set-up -p B 6

37 Compressione del modello Esempio precedente: AG per un lotto con ladles Ferro grezzo EAF Buffers - AOD LF Buffer CC Bramme 7

38 Cicli che limitano il numero di ladles in un lotto 8

39 Cicli che limitano il numero di ladles in un lotto 9

40 Altro esempio di modello: AG per lotti e ladles Ferro grezzo EAF Buffer AOD LF CC Bramme ε p EAF ε p EAF ε p EAF ε ε p AOD -W ε ε ε -W ε ε p AOD ε p AOD p LF ε p LF ε p LF p LF ε ε p LF p LF -p CC p CC -p CC p CC p CC + p set-up p + p CC set-up -W p CC + p set-up ε p ε ε ε ε ε CC + ε ε ε ε ε ε ε p set-up h h h h h h h p EAF p AOD p LF p LF h ε ε -W ε ε ε ε p ε -p CC CC p EAF p AOD p LF p LF -W

41 Section outline Introduzione al problema Modellazione via grafi delle alternative Esempi Algoritmi

42 Algoritmo euristico Selezione S: insieme di archi di A, ottenuti scegliendo al più un arco da ogni coppia alternativa S è completa se esattamente un arco di ogni coppia di A è selezionata dato S, sia l(i,j) il cammino più lungo da i a j in G(N, F S) Avoid maximum Current C max (AMCC) Trova (i,j) A : l(,i)+a ij +l(j,n) è massimo Seleziona il suo arco alternativo Seleziona tutti gli archi implicati dalla selezione corrente (i,j) è implicato da S se: ((i,j),(h,k)) A G=(N,F S {(h,k)}) ha un ciclo di lunghezza positiva

43 Algoritmo di branch & bound Branching rule: scegli la coppia non selezionata tale che l(,i)+a ij +l(j,n) è massimo e scegli il suo alternativo Lower bound: Jackson preemptive schedule calcolato su una clique di operazioni Se o i è blocking: proc. π i = max{p i, l(i,σ(i))} head h i = max{l(o,i), l(o, σ(i)) - π i } tail t i = max{l(σ(i),n), l(i,n) - π i -h i + l(o,i)} con σ(i) = successore dell op. i sul job Selezioni immediate: come in Carlier e Pinson (99-9)

44 SECONDO CASE STUDY Gestione delle risorse produttive nell industria farmaceutica Rapporto tecnico: DIA-9-8 Ciavotta et al., American Institute of Chemical Engineers 8

45 Section outline Introduzione Casi studio Algoritmi Esercizio

46 Pharmaceutical supply chain Forecasted demands The pharmaceutical supply chain Customers Primary manufacturing Pharmacies Hospitals Suppliers Secondary manufacturing Wholesalers Primary manufacturing is typically organized as a push process, and therefore not very sensitive to short-term demand fluctuation Secondary manufacturing is organized as a pull process, and effective tracking, tracing and process control are critical issues 6

47 Secondary manufacturing Raw material handling and dispensing activities: materials are weighted according to the batch recipes and stored in sealed bins Dispensing Packages are prepared and organized for different orders and destination countries Counting Manufacturing Packaging Binder preparation, granulation (dry materials from sealed bins are mixed with binder agents to produce granule), blending, compression (granules are fed into tablets), coating. Then, tablets are stored in sealed bins Tablets and packages are processed in order to obtain the products for customers 7

48 Packaging department: Model and algorithms Model: A line with several jobs, operators and tools is represented as a multi-purpose machine scheduling problem Three Algorithms (see Venditti et al. EJOR ): Greedy heuristic (the idea is to group jobs using the same tools and to process first the one with minimum setup) Simple tabu search (fast evaluation of moves on basic neighborhoods, that correspond to exchanges of jobs/operators) Advanced tabu search (evaluation of moves on larger neighborhoods, that correspond to the computation of a longest extended critical path in a directed graph) 8

49 Other departments of the Pharma Industry Manufacturing department: This type of production environment is a complex job shop problem with high level of automation Dispensing department: In this department, operations are mainly manual and the production environment can be represented by parallel machine problems Counting department: This department can also be represented by parallel machine problems Dispensing Manufacturing Counting Packaging 9

50 Secondary manufacturing Complexity of manufacturing process: machines in the manufacturing area (job shop environment) More than products to schedule in the packaging area Cross-contamination issues lead to sequence dependent (campaign dependent) setups Preemption partly allowed Limited manpower resources, with different skills Limited number of copies of the same tool Release dates, due dates, deadlines Different objective functions: maximum tardiness, makespan, number of tardy jobs in lexicographical order Problems encountered by human schedulers: The need for meeting short-term due dates lead to frequent underutilization of shop resources and to disregarding long-term due dates Frequent late deliveries and urgent orders, due to the lack of coordination with adjacent departments and planning functions

51 Section outline Introduzione Casi studio Algoritmi Esercizio

52 Casi studio: Dispensing e Counting Dispensing Counting Manifattura Confezionamento (Packaging) Uno pianificatore dettagliato deve: Sequenziare i JOBS in ogni workcenter, decidendo la relativa temporizzazione e le risorse umane Determinare le date di transito dei materiali trai vari work-centers Nell abito di studio sono presenti work-centers, ognuno addetto ad un particolare compito riguardo la produzione di farmaci: Dispensing Manifattura Counting Confezionamento

53 Casi studio: Dispensing e Counting In particolare ci riferiamo ai dipartimenti di Dispensing e Counting. Il dipartimento di Dispensing ha il compito di rilasciare le varie quantità di prodotti chimici che andranno a costituire i farmaci. Il dipartimento di Counting ha il compito di rilasciare i materiali di assemblaggio utilizzati dal dipartimento di Confezionamento.

54 Casi studio: Dispensing e Counting Il dipartimento di Dispensing è costituito da macchine parallele identiche gestite da turni di operai specializzati. Tali turni implicano la pianificazioni di indisponibilità programmate con incidenza giornaliera e settimanale. Lo stesso discorso vale anche per il dipartimento di Counting, costituito però da macchine parallele. Entrambi i dipartimenti processano jobs che sono caratterizzati da un tempo di rilascio e da una due date o deadline. Il dipartimento di Dispensing attende un certo tempo di setup ogni volta c è un cambio di tipologia di job da processare. In questo dipartimento prevede anche delle dimensioni massime per le campagne di produzione.

55 Indici di prestazione Ci = tempo di completamento del job i di = due date del job i Ti = max (Li,) = tardiness del job i Job i = tardy job se Ci > di Massima Lateness Makespan { L } L = max,..., max dove L i = C i d i L n { C } C = max,..., max C n

56 Modello (α β γ) di Lawler-Graham Per classificare i problemi di scheduling si può utilizzare la classica codifica a tre campi (α β γ) di Lawler-Graham Configurazione delle macchine Presenza di eventuali vincoli da rispettare Misure di prestazione 6

57 Modello (α β γ): Casi studio Campo α: Macchine Parallele Identiche (Pm) Campo β: Release time (ri) Due-date (di) Deadline (Di) Setup time: sequence-dependent or sequence-independent (this time can be even larger than the processing time of a lot) La possibilità di Preemption non è ammessa La possibilità d indisponibilità delle macchine è ammessa. Limite sul max numero di prodotti per campagna (dipende dalla tipologia delle operazioni di cleaning) Campo γ: Si individua Lmax come principale obj function da minimizzare Funzioni obiettivo secondarie sono Cmax ed il numero di Tardy Jobs Si utilizza un approccio multi-obiettivo di tipo lessicografico. 7

58 Section outline Introduzione Casi studio Algoritmi Esercizio 8

59 Possibili approcci euristici Due classi di algoritmi euristici vengono analizzate: Algoritmi costruttuvi: Greedy heuristics Pilot/rollout method: Duin and Voss (99), Bertsekas, Tsitsiklis, and Wu (997) Metodi iterativi: Local search: semplici mosse (swap, insert, exchange, ) Variable Neighborhood Search: Mladenovic and Hansen (997) Iterated Local Search: Lorenço, Martin and Stützle () 9

60 Algoritmi testati Metodo iterativo: VNS Esempi di mosse ed vicinati Metodo costruttivo: Rollout Rollout Modificato Euristica greedy per il rollout: Delta Euristica greedy per il rollout: MJS 6

61 Variable Neighborhood Search La VNS è un algoritmo che applica strategie di ricerca locale per individuare miglioramenti alle soluzioni ottenute in un primo vicinato. In generale, la ricerca locale viene effettuata su opportuni intorni adoperando adeguate mosse. 6

62 Variable Neighborhood Search Basic VNS: Algoritmo di ricerca locale che si basa su vicinati sempre più ampi. Ogni volta viene individuata una soluzione migliore rispetto a quella candidata l algoritmo riprende l esplorazione a partire dal vicinato più piccolo. N N N 6

63 Variable Neighborhood Search N N N N N N 6

64 Esempio d implementazione della VNS Variable Neighborhood Search (VNS) La metaeuristica opera in intorni di ricerca N, N ed N associati a tre diverse mosse applicabili. L euristica compie un esplorazione dell intorno, se trova una mossa che migliora la soluzione esegue nuovamente la ricerca altrimenti passa all intorno successivo. Ogni volta che viene trovata una mossa migliorante si riparte dall esplorazione dell intorno N. La procedura termina quando non vengono più trovate mosse miglioranti. Data una soluzione iniziale begin do {cerca una mossa migliorante in N if mossa trovata then applica la mossa in N else begin { cerca una mossa migliorante in N if mossa trovata then applica la mossa in N else begin { cerca una mossa migliorante in N if mossa trovata then applica la mossa in N end } end } } while una mossa viene eseguita end 6

65 Mosse per il sequenziamento Mosse usate dalla ricerca locale sulla sequenza delle operazioni da processare sulla singola macchina SWAP J J k- J k J k+ J n INSERT J J k- J k J k+m J n EXCHANGE J J k- J k J k+m J n 6

66 Mosse per l assegnazione Mosse usate dalla ricerca locale sull assegnazione delle operazioni da processare sulle varie macchine J J k- J k J k+ J n Macchina A M-MOVE J J s- J s J s+ J n Macchina B J J k- J k J k+ J n Macchina A M-SWAP J J s- J s J s+ J n Macchina B 66

67 Vicinati di ricerca Primo intorno di ricerca (N) Si applica la mossa SWAP per spostare un JOB di un posto indietro in una data sequenza. E applicata ai JOBS in ordine decrescente di Lateness. Secondo intorno di ricerca (N) Si applica la mossa INSERT ai JOBS che violano le deadlines (in ordine decrescente) scegliendo il parametro m in modo da anticipare ciascun JOB alla prima posizione utile affinché rispetti il suo tempo di consegna. Terzo intorno di ricerca (N) Si applica la mossa SWAP per spostare un JOB di un posto in avanti in una data sequenza, ritardandone l esecuzione. 67

68 Rollout Il Rollout è un metodo costruttivo cioè realizza iterativamente una soluzione per il problema. E applicabile a quelle classi di problemi la cui soluzione può essere rappresentata da una o può sequenze di componenti. Applicazioni interessanti sono rappresentate da alcuni problemi di scheduling 68

69 Rollout L idea base della metaeuristica di ROLLOUT è quella di utilizzare q euristiche costruttive (H, H, H,., H q ), q, per potenziarne l effetto nella costruzione di una buona soluzione. Una soluzione s = (s, s, s,, s m-, s m ) viene prodotta in modo sequenziale, fissando una componente per volta. Definiamo k-stato (S k ) una soluzione parziale in cui sono state fissate le prime k componenti: S k = (s, s, s,, s k-, s k ), k m. Definiamo H i (S k-,s k ) il costo della soluzione ottenuta dall euristica H i, applicata a partire dallo stato S k = (S k-,s k ). Data una soluzione parziale S k-, e detto σ k l insieme dei possibili valori della k-esima componente s k, definiamo: C(S k )= min {H i (S k-,s k ), i =,..q, s k in σ k } il costo delle sequenze ottenute dalle q euristiche, partendo da S k- e per ogni possibile scelta della k-esima componente. Ad ogni iterazione, si fissa la componente s k che ha prodotto il costo (minimo) C(S k ), cioè S k = (S k-, argmin{c(s k )}). 69

70 Rollout Sia J l insieme di tutte le componenti e σ k l insieme delle componenti direttamente schedulabili (non soggette a vincoli di precedenza) e sia H l insieme delle euristiche utilizzate dal rollout. Il rollout può essere schematizzato nel modo seguente: Per ogni j i appartenente ad σ k si applicano tutte le euristiche in H sull insieme J - {j i }. Si valutano quindi le soluzioni {j i, H k (J - {j i })} per ogni euristica k e si aggiunge la soluzione parziale j i per cui si ottiene la miglior soluzione. Si elimina quindi da J l elemento corrente e si aggiorna σ k. Si prosegue cosi fino a che non rimangono elementi in J. 7

71 Rollout S = Ø While(J!= Ø) { } For any j i { in σ k for(k = ; k < tot_num_eur; k++) { sol(i,k) = { j i, H k (J-{j i })} } } (i.k ) = arg min {sol(i, k)} S p = (S p-, j i ), p++ σ k =update(σ k,j i ) J=J\{j i } 7

72 Rollout H H J H H HJ H J H q J 6 J 8 J p H q J H q H H H J J H H H H H q H H q H J n H q J n H J H H Euristica provata H q H q H q Euristica migliore 7

73 Rollout Modificato E una versione semplificata del Rollout che permette di ridurre il tempo di calcolo complessivo. L idea è di sostituire alla formula C(S k )= min {H i (S k-,s k ), i=,..q, s k in σ k } La formula semplificata C(S k )= min {H i (S k- ), i=,..q} 7

74 Rollout Modificato S = Ø While(J tot!= Ø) { for(k=; k < tot_num_eur; k++) { sol(k) = { H k (J tot )} } k = arg min {sol(k)} S p = (S p-, {H(k ) }), p++ J tot =J tot \{j i } } Primo elemento della soluzione trovata dalla k-esima euristica 7

75 Rollout Modificato H (s) H (s) HJ (s) H (s) H (s) HJ (s) HJ (s) H H (s) (s) H (s) H (s) H (s) HJ (s) H (s) H (s) H (s) H 6 (s) H (s) H 6 (s) HJ (s) HJ 6 (s) 6 J 8 J 9 J n H (s) H 6 (s) H8 (s) H 9 (s) Hn q (s) H (s) J 7 H q (s) H q (s) H q (s) H q (s) H q (s) H 6 q (s) H 7 (s) Euristica provata Euristica migliore 7

76 Applicazione algo rollout ai due casi studio Il rollout può definirsi un algoritmo costruttivo che, se applicato al problema di scheduling, costruisce una soluzione aggiungendo un job alla volta, sfruttando un insieme di regole che si propongono di salvaguardare l ammissibilità e la qualità della soluzione. Ammissibilità: Un job è schedulabile dopo il suo rilascio Nessun job è schedulabile su una macchina indisponibile Una macchina può processare un solo job alla volta Un job è schedulabile su una macchina in grado (per tipologia, tools e disponibilità) di eseguire le operazioni richieste. Qualità Di seguire una sequenza di lavorazione specifica (per esempio, earliest due date (EDD) per minimizzare Lmax); Di seguire una particolare sottosequenza o successione di jobs per ridurre i tempi di setup (per ridurre Cmax ed il numero di Tardy Jobs). 76

77 Euristiche usate nel Rollout: notazioni T L : istante di tempo al quale si libera la prima macchina. R JD : insieme dei job rilasciati al tempo T L con deadline R Jd : insieme dei job rilasciati al tempo T L senza deadline R J : insieme totale dei job rilasciati al tempo T L (R J =R JD U R Jd ) M L : insieme delle macchine libere al tempo T L 77

78 Euristiche usate nel Rollout: Delta L insieme delle due dates dei jobs rilasciati all istante T L viene diviso in intervalli di ampiezza. Ad ogni job viene assegnata una nuova due date fittizia, il cui valore è un multiplo di, a seconda dell intervallo in cui cade. Tale procedimento consente di creare famiglie di jobs con due dates coincidenti per le quali i tempi di setup sono meglio gestibili (ad esempio formando delle campagne). Ogni euristica è caratterizzata da un diverso valore di. d d d d d d 6 d 7 d 8 d n t grande d d d d d d 6 d 7 d 8 d n t 78

79 Euristiche usate nel Rollout: Delta Schedulare i jobs di R J secondo le seguenti regole: Step. Ordinare R J per due date crescenti; Step. Individuare i sottoinsiemi di jobs di R J con duedate compresa tra d e d+ e aggiornare d Step. Ordinare R J per deadline crescente; Step. Per ciascun job di R JD, scegliere la macchina presente in M L il cui ultimo job schedulato è della stessa tipologia del job considerato, altrimenti schedulare il job sull ultima macchina dell insieme M L, aggiornare R J e M L e reiterare lo step finchè min{ # R JD, # M L } = ; Step. Per ciascun job di R Jd, scegliere la macchina presente in M L il cui ultimo job schedulato è della stessa tipologia del job considerato, altrimenti schedulare il job sull ultima macchina dell insieme M L, aggiornare R J e M L e reiterare lo step finchè min{# R Jd, # M L } = ; Step 6. Aggiornare T L, R JD, R Jd e M L e reiterare la procedura a partire dallo step finché non sono stati schedulati tutti i jobs. 79

80 Euristiche usate nel Rollout: Modified Jackson Schedule Modified Jackson Schedule (MJS) Input: Un insieme P degli ordini di produzione; t = min{r i : i in P}, S = Ø; While (P!= Ø){ R = {i in P : r i t} if (c è un job in R con deadline){ scegli un job j in R con la più piccola deadline} else if (c è un job in R con duedate){ scegli un job j in R con la più piccola duedate} else {t = min{r i : i in P}, R = {i in P : r i t} } if (un job è stato selezionato) { Assegno il job j alla macchina che può completarlo per prima,tenendo in conto dei setup, delle campagne e della disponibilità della macchina S = S U {j}, P = P \ {j} Aggiorno t al più piccolo completion time di tutte le macchine disponibili } } 8

81 Section outline Introduzione Casi studio Algoritmi Esercizio 8

82 Esercizio: Rollout Applichiamo l algoritmo del rollout su una istanza di scheduling su singola macchina per cui sono date le relazioni di precedenza trai jobs in figura. Job J i Proc. p i Due date d i Peso w i Funzione obiettivo: Σw i T i con wi Ti = peso del job i * tardiness del job i 8

83 Esercizio: Rollout Usiamo due semplici euristiche per il rollout EDD : Erliest Due Date (H ) SPT : Shortest Processing Time (H ) H processa i jobs per due date crescente H processa i jobs per processing time crescente 8

84 Esercizio: Rollout J i p i d i w i Durante il primo passo del rollout σ ={,}, da cui il primo elemento proposto sarà. EDD: H (,,,) =,,, ->,,,, Job c.time wt 6 * 7 * tot SPT: H (,,,) =,,, ->,,,, Job c.time wt 7 * * Tot c.time = tempo di completamento del job wt = tardiness pesata del job 8

85 Esercizio: Rollout Durante il primo passo del rollout σ ={,}, da cui il secondo elemento proposto sarà. J i p i d i w i H (,,,) =,,, ->,,,, Job c.time 6 7 tot wt H (,,,) =,,, ->,,,, Job c.time 6 7 tot wt 8

86 Esercizio: Rollout Al primo passo del rollout il migliore è (), da cui al secondo passo σ ={,,} ed il primo elemento proposto sarà. J i p i d i w i H (,,) =,, ->,,,, Job c.time 7 tot wt H (,,) =,, ->,,,, Job c.time wt 7 tot 86

87 Esercizio: Rollout Al primo passo del rollout il migliore è (), da cui al secondo passo σ ={,,} ed il secondo elemento proposto sarà. J i p i d i w i H (,,) =,, ->,,,, Job c.time wt 7 9 tot 7 H (,,) =,, ->,,,, Job c.time wt tot 8 87

88 Esercizio: Rollout Al primo passo del rollout il migliore è (), da cui al secondo passo σ ={,,} ed il terzo elemento proposto sarà. J i p i d i w i H (,,) =,, ->,,,, Job c.time 6 7 tot wt H (,,) =,, ->,,,, Job c.time wt 7 8 tot 88

89 Esercizio: Rollout Al secondo passo del rollout il migliore è (), da cui al terzo passo σ ={,} ed il primo elemento proposto sarà. J i p i d i w i H (,) =, ->,,,, Job c.time 6 7 tot wt H (,) =, ->,,,, Job c.time 7 8 tot wt 89

90 Esercizio: Rollout Al secondo passo del rollout il migliore è (), da cui al terzo passo σ ={,} ed il secondo elemento proposto sarà. J i p i d i w i H (,) =, ->,,,, Job c.time 6 9 tot wt H (,) =, ->,,,, Job c.time wt 6 9 tot 9

91 Esercizio: Rollout Al terzo passo del rollout un migliore è (), da cui al quarto passo σ ={,} ed il primo elemento proposto sarà. J i Job p i d i w i tot c.time 6 9 H () = ->,,,, wt Job tot H () = ->,,,, c.time wt 6 9 9

92 Esercizio: Rollout Al terzo passo del rollout un migliore è (), da cui al quarto passo σ ={,} ed il secondo elemento proposto sarà. J i Job p i d i w i tot c.time 6 9 H () = ->,,,, wt Job tot H () = ->,,,, c.time wt

93 Esercizio: Rollout Al quarto passo del rollout il migliore è (), da cui al quinto passo σ ={} ed l elemento scelto sarà. La soluzione finale è la seguente:,,,, con funzione obiettivo pari a Job tot c.time 6 9 wt 9

CASE STUDY 2. Fabbricazione dell acciaio. Un problema di pianificazione: Minimizzazione dei costi di carica del forno. Dati. Formulazione del problema

CASE STUDY 2. Fabbricazione dell acciaio. Un problema di pianificazione: Minimizzazione dei costi di carica del forno. Dati. Formulazione del problema CASE STUDY 2 Fabbricazione dell acciaio Gestione delle risorse produttive nell industria siderurgica Un problema di pianificazione: Minimizzazione dei costi di carica del forno Magazzini materie prime

Dettagli

Modelli di Sistemi di Produzione I

Modelli di Sistemi di Produzione I Agenda Modelli di Sistemi di Produzione I Il Ricercatore Operativo nell industria Presupposti per lo sviluppo di un modello di ottimizzazione come risoluzione ad un problema industriale Limiti e criticità

Dettagli

Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività

Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Metodi di Ottimizzazione mod.

Dettagli

Approcci esatti per il job shop

Approcci esatti per il job shop Approcci esatti per il job shop Riferimenti lezione: Carlier, J. (1982) The one-machine sequencing problem, European Journal of Operational Research, Vol. 11, No. 1, pp. 42-47 Carlier, J. & Pinson, E.

Dettagli

Organizzazione della produzione

Organizzazione della produzione Scheduling Organizzazione della produzione PRODOTTO che cosa chi ORGANIZZAZIONE PROCESSO come FLUSSO DI PRODUZIONE COORDINAMENTO PIANIFICAZIONE SCHEDULING quando Pianificazione della produzione: schedulazione

Dettagli

Makespan con set-up dipendenti dalla sequenza. 1/s jk /C max

Makespan con set-up dipendenti dalla sequenza. 1/s jk /C max Makespan con set-up dipendenti dalla sequenza 1/s jk /C max 1/s jk /C max Un tempo di riattrezzaggio (set-up) s jk è richiesto fra il processamento di j e quello di k. In questo caso, C max dipende dalla

Dettagli

Organizzazione della produzione

Organizzazione della produzione Scheduling Organizzazione della produzione PRODOTTO che cosa chi ORGANIZZAZIONE PROCESSO come FLUSSO DI PRODUZIONE COORDINAMENTO PIANIFICAZIONE SCHEDULING quando Pianificazione della produzione: schedulazione

Dettagli

Tecniche euristiche Ricerca Locale

Tecniche euristiche Ricerca Locale Tecniche euristiche Ricerca Locale PRTLC - Ricerca Locale Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo: rilassamenti Rilassamento

Dettagli

1. Considerazioni generali

1. Considerazioni generali 1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni

Dettagli

Le attuali tendenze del mercato

Le attuali tendenze del mercato Minimizzazione del makespan mediante un software di scheduling in un Job Shop ed in un Flexible Flow Shop A partire da una classificazione dell architettura delle linee produttive, viene proposto un caso

Dettagli

Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4

Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4 Macchine parallele M 1 J 1 J 2 LAVORI M 2 J 3 J 4 M 3 Macchine parallele Scheduling su macchine parallele scorrelate R C max Descrizione del problema n lavori devono essere processati da m macchine diverse

Dettagli

2.2 Alberi di supporto di costo ottimo

2.2 Alberi di supporto di costo ottimo . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) protocolli reti IP memorizzazione compatta di

Dettagli

Cenni di schedulazione in tempo reale. E.Mumolo

Cenni di schedulazione in tempo reale. E.Mumolo Cenni di schedulazione in tempo reale E.Mumolo mumolo@units.it Task in tempo reale Un task t i è una sequenza di processi in tempo reale τ ik ciascuno caratterizzato da un tempo d arrivo r ik un tempo

Dettagli

ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO

ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO Lo scenario produttivo Una nota azienda produce capi di abbigliamento per l alta moda Ogni capo è costituito da vari pezzi

Dettagli

Metodi di Ottimizzazione per la Logistica e la Produzione

Metodi di Ottimizzazione per la Logistica e la Produzione Metodi di Ottimizzazione per la Logistica e la Produzione Parte III Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria Università di Modena e Reggio Emilia Anno Accademico 2016/17 MOLP Parte

Dettagli

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 . Cammini ottimi E. Amaldi Fondamenti di R.O. Politecnico di Milano .. Cammini minimi e algoritmo di Dijkstra Dato un grafo orientato G = (N, A) con una funzione di costo c : A c ij R e due nodi s e t,

Dettagli

Pianificazione dei progetti. Alberto Caprara DEIS - Università di Bologna

Pianificazione dei progetti. Alberto Caprara DEIS - Università di Bologna Pianificazione dei progetti Alberto Caprara DEIS - Università di Bologna acaprara@deis.unibo.it Tecniche reticolari Metodologie per la risoluzione di problemi di pianificazione di progetti Progetto: insieme

Dettagli

2.2 Alberi di supporto di costo ottimo

2.2 Alberi di supporto di costo ottimo . Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) memorizzazione compatta di sequenze (DNA) diffusione

Dettagli

Bibliografia. Gestione operativa della produzione. Terminologia. Schedulazione. Schedulazione operativa della produzione

Bibliografia. Gestione operativa della produzione. Terminologia. Schedulazione. Schedulazione operativa della produzione Bibliografia Gestione operativa della produzione Schedulazione operativa della produzione 14/12/2001 11.54 E.L. Lawler, J.K. Lenstra, A.G.H. Rinnoy Kan, D.B. Shmoys, Sequencing and Scheduling: Algorithms

Dettagli

Metodi di Ottimizzazione per la Logistica e la Produzione

Metodi di Ottimizzazione per la Logistica e la Produzione Metodi di Ottimizzazione per la Logistica e la Produzione Laboratorio Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria Università di Modena e Reggio Emilia MOLP Parte I 1 / 41 Contenuto della

Dettagli

Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica

Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica 2010-11 Scheduling: Introduzione CARLO MANNINO Sapienza Università di Roma Dipartimento di Informatica e Sistemistica Problemi di scheduling

Dettagli

Problemi di localizzazione di servizi (Facility Location Problems)

Problemi di localizzazione di servizi (Facility Location Problems) 9. Problemi di Localizzazione di Servizi 1 Problemi di localizzazione di servizi (Facility Location Problems) Dato un insieme di clienti richiedenti una data domanda di merce e dato un insieme di possibili

Dettagli

TSP Ricerca Locale. Riccardo Mondani Martina Alberti

TSP Ricerca Locale. Riccardo Mondani Martina Alberti TSP Ricerca Locale Riccardo Mondani Martina Alberti Caratteristiche di base Partenza: Soluzione euristica dell algoritmo TSP Closest Neighborhood. Il vettore o finale contiene un ordinamento di tutti i

Dettagli

Pianificazione dei progetti

Pianificazione dei progetti 1/11/ Pianificazione dei progetti aniele Vigo..I.S. - Università di ologna dvigo@deis.unibo.it Rev. 1.2, 1/ Tecniche reticolari Metodologie per la risoluzione di problemi di pianificazione di progetti

Dettagli

Modelli di Sistemi di Produzione:

Modelli di Sistemi di Produzione: Modelli di Sistemi di Produzione: programma dettagliato - giugno 2007 1. Algoritmi Metaeuristici 1.1 Algoritmi costruttivi ed algoritmi di ricerca locale/metaeuristici 1.2 Algoritmo di ricerca locale 1.3

Dettagli

Parte 3: Gestione dei progetti, Shop scheduling

Parte 3: Gestione dei progetti, Shop scheduling Parte : Gestione dei progetti, Shop scheduling Rappresentazione reticolare di un progetto Insieme di attività {,...,n} p i durata (nota e deterministica dell attività i) relazione di precedenza fra attività:

Dettagli

METODI DELLA RICERCA OPERATIVA

METODI DELLA RICERCA OPERATIVA Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco (mdifrance@unica.it) i i Dott.ing. Maria Ilaria Lunesu (ilaria.lunesu@unica.it)

Dettagli

1. Classificazione delle risorse

1. Classificazione delle risorse 1. Classificazione delle risorse Classificazione delle risorse in base alla disponibilità. - Risorse rinnovabili Sono risorse utilizzate per l esecuzione di una attività per tutta la sua durata, ma sono

Dettagli

Operations Management

Operations Management La schedulazione dei progetti Estratto da Operations Management Modelli e metodi per la logistica II Edizione Autore: Giuseppe Bruno Edizioni Scientifiche Italiane I problemi di scheduling 21 6.8 - LA

Dettagli

età (anni) manutenzione (keuro) ricavato (keuro)

età (anni) manutenzione (keuro) ricavato (keuro) .6 Cammini minimi. Determinare i cammini minimi dal nodo 0 a tutti gli altri nodi del seguente grafo, mediante l algoritmo di Dijkstra e, se applicabile, anche mediante quello di Programmazione Dinamica.

Dettagli

La pianificazione della produzione

La pianificazione della produzione Manufacturing Planning and Control 1 La pianificazione della produzione La pianificazione della produzione è un processo complesso che coinvolge larga parte dell azienda (funzioni e risorse) e deve ragionare

Dettagli

CAPITOLO 6 La programmazione operativa (operations scheduling)

CAPITOLO 6 La programmazione operativa (operations scheduling) CAPITOLO 6 La programmazione operativa (operations scheduling) Contenuti Le funzioni della PO Gli obiettivi della PO Il job loading Il metodo dell assegnazione Il job sequencing Regole e tecniche di priorità

Dettagli

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I Esercizio 1 Dati n oggetti ed un contenitore, ad ogni oggetto j (j = 1,, n) sono associati un peso p j ed un costo c j (con p j e c j interi positivi). Si

Dettagli

1. Considerazioni generali

1. Considerazioni generali 1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni

Dettagli

Problemi, istanze, soluzioni

Problemi, istanze, soluzioni lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un

Dettagli

Algoritmo basato su cancellazione di cicli

Algoritmo basato su cancellazione di cicli Algoritmo basato su cancellazione di cicli Dato un flusso ammissibile iniziale, si costruisce una sequenza di flussi ammissibili di costo decrescente. Ciascun flusso è ottenuto dal precedente flusso ammissibile

Dettagli

Ottimizzazione Combinatoria e Reti (a.a. 2007/08)

Ottimizzazione Combinatoria e Reti (a.a. 2007/08) o Appello 6/07/008 Ottimizzazione Combinatoria e Reti (a.a. 007/08) Nome Cognome: Matricola: ) Dopo avere finalmente superato l esame di Ricerca Operativa, Tommaso è pronto per partire in vacanza. Tommaso

Dettagli

Algoritmi di ricerca locale

Algoritmi di ricerca locale Algoritmi di ricerca locale Utilizzati in problemi di ottimizzazione Tengono traccia solo dello stato corrente e si spostano su stati adiacenti Necessario il concetto di vicinato di uno stato Non si tiene

Dettagli

APPLICAZIONI DELLA RICERCA OPERATIVA

APPLICAZIONI DELLA RICERCA OPERATIVA Università degli Studi della Calabria Laurea in Informatica A.A. 2004/2005 Appunti di supporto didattico al corso di APPLICAZIONI DELLA RICERCA OPERATIVA Indice 1 Introduzione alla teoria dello Scheduling

Dettagli

Problema Determinare la miscelazione ottimale delle materie prime in modo da massimizzare il profitto complessivo

Problema Determinare la miscelazione ottimale delle materie prime in modo da massimizzare il profitto complessivo Mix Produttivo Si dispone di i=1,...,m risorse produttive (ad esempio, materie prime) in quantità limitata. La massima disponibilità delle risorse è b 1,...,b m Si possono produrre j=1,...,n diversi prodotti

Dettagli

Introduzione ai grafi

Introduzione ai grafi TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale

Dettagli

3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI

3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI 3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI ESISTENZA DI UN PUNTO DI OTTIMO VINCOLATO Il problema di ottimizzazione vincolata introdotto nel paragrafo precedente può essere formulato nel modo seguente:

Dettagli

Verifica parte IIB. Grafo di controllo. Criteri di selezione per test strutturali (white box) Test. Rif. Ghezzi et al

Verifica parte IIB. Grafo di controllo. Criteri di selezione per test strutturali (white box) Test. Rif. Ghezzi et al Verifica parte IIB Rif. Ghezzi et al. 6.3.4.1 Test In piccolo White box Black box Condizioni di confine Problema dell' Oracolo In grande Test di modulo Test di integrazione Test di Sistema Test di Accettazione

Dettagli

Programmazione della produzione MT MT

Programmazione della produzione MT MT Programmazione della produzione Architettura gerarchica del processo di programmazione M P S livello 1 - livello di fabbrica orizzonte temporale lungo (12-24 mesi) Master Production Schedule n settimane

Dettagli

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Dettagli

Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio

Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio Algoritmi Greedy Tecniche Algoritmiche: tecnica greedy (o golosa) Idea: per trovare una soluzione globalmente ottima, scegli ripetutamente soluzioni ottime localmente Un esempio Input: lista di interi

Dettagli

Corso di Perfezionamento

Corso di Perfezionamento Programmazione Dinamica 1 1 Dipartimento di Matematica e Informatica Università di Camerino 15 febbraio 2009 Tecniche di Programmazione Tecniche di progettazione di algoritmi: 1 Divide et Impera 2 Programmazione

Dettagli

Il problema del commesso viaggiatore

Il problema del commesso viaggiatore Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università

Dettagli

Il problema del commesso viaggiatore e problemi di vehicle routing

Il problema del commesso viaggiatore e problemi di vehicle routing Il problema del commesso viaggiatore e problemi di vehicle routing Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 2 Dicembre

Dettagli

Organizzazione della produzione

Organizzazione della produzione Scheduling Organizzazione della produzione PROOTTO che cosa chi ORGNIZZZIONE PROCESSO come FLUSSO I PROUZIONE COORINMENTO PINIFICZIONE SCHEULING quando Pianificazione della produzione: schedulazione di

Dettagli

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 Esercizio 1 Si risolva con il metodo branch-and-bound il seguente problema di PLI max x 1 + x 4x 1 + x + x = 0 x 1 + x + x 4 = x 1, x, x, x 4 0 x 1, x,

Dettagli

2.3.3 Cammini ottimi nei grafi senza circuiti

2.3.3 Cammini ottimi nei grafi senza circuiti .. Cammini ottimi nei grafi senza circuiti Sia un grafo G = (N, A) orientato senza circuiti e una funzione di costo che assegna un valore c ij R ad ogni arco (i, j) A circuito Proprietà I nodi di un grafo

Dettagli

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano Algoritmi Euristici Corso di Laurea in Informatica e Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Mercoledì 08.30-10.30 Venerdì 08.30-10.30 Ricevimento:

Dettagli

Gestione della produzione e della supply chain Logistica distributiva

Gestione della produzione e della supply chain Logistica distributiva Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non

Dettagli

Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa

Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa Alberi di copertura Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 0/ - Corso di Ricerca Operativa Università di Pisa / 9 Definizioni

Dettagli

Programmazione Lineare Intera: Piani di Taglio

Programmazione Lineare Intera: Piani di Taglio Programmazione Lineare Intera: Piani di Taglio Andrea Scozzari a.a. 2014-2015 April 22, 2015 Andrea Scozzari (a.a. 2014-2015) Programmazione Lineare Intera: Piani di Taglio April 22, 2015 1 / 23 Programmazione

Dettagli

Domini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo):

Domini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo): UNIVERSITA DEGLI STUDI DI SALERNO C.d.L. in INGEGNERIA GESTIONALE Esercizi di Ricerca Operativa Prof. Saverio Salerno Corso tenuto nell anno solare 2009 I seguenti esercizi sono da ritenersi di preparazione

Dettagli

11.4 Chiusura transitiva

11.4 Chiusura transitiva 6 11.4 Chiusura transitiva Il problema che consideriamo in questa sezione riguarda il calcolo della chiusura transitiva di un grafo. Dato un grafo orientato G = hv,ei, si vuole determinare il grafo orientato)

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli

Schedulazione delle Attività di un Progetto in Presenza di Multi-Calendari

Schedulazione delle Attività di un Progetto in Presenza di Multi-Calendari Schedulazione delle Attività di un Progetto in Presenza di Multi-Calendari Dott.ssa Maria Silvia Pini Dipartimento di Matematica Pura e Applicata Email: mpini@math.unipd.it Resp. accademico: Prof.ssa Francesca

Dettagli

Programmazione Lineare: problema del trasporto Ing. Valerio Lacagnina

Programmazione Lineare: problema del trasporto Ing. Valerio Lacagnina Problemi di trasporto Consideriamo un problema di programmazione lineare con una struttura matematica particolare. Si può utilizzare, per risolverlo, il metodo del simplesso ma è possibile realizzare una

Dettagli

Appunti lezione Capitolo 14 Greedy

Appunti lezione Capitolo 14 Greedy Appunti lezione Capitolo 14 Greedy Alberto Montresor 21 Novembre, 2016 1 Domanda: dimostrare che S[i, j] = con i j Nel problema della selezione delle attività, il sottoinsieme S[i, j] è definito nel modo

Dettagli

Celle di fabbricazione

Celle di fabbricazione Celle di fabbricazione Produzione per parti (Classificazione Impiantistica) Produzione per parti Fabbricazione Montaggio (assemblaggio) Job Shop Celle di fabbricazione Linee transfer A posto fisso Ad Isola

Dettagli

SISTEMI DI PRODUZIONE DISCRETA

SISTEMI DI PRODUZIONE DISCRETA Corso di Laurea Triennale in INGEGNERIA GESTIONALE Anno Accademico 2012/13 Prof. Davide GIGLIO 1 GENERALITÀ SUI PROCESSI PRODUTTIVI DISCRETI I processi produttivi possono dar luogo a prodotti continui

Dettagli

2. ALGORITMO DEL SIMPLESSO

2. ALGORITMO DEL SIMPLESSO . ALGORITMO DEL SIMPLESSO R. Tadei Una piccola introduzione R. Tadei SIMPLESSO L obiettivo del capitolo è quello di fornire un algoritmo, l algoritmo del simplesso, che risolve qualsiasi problema di programmazione

Dettagli

1) Codici convoluzionali. 2) Circuito codificatore. 3) Diagramma a stati e a traliccio. 4) Distanza libera. 5) Algoritmo di Viterbi

1) Codici convoluzionali. 2) Circuito codificatore. 3) Diagramma a stati e a traliccio. 4) Distanza libera. 5) Algoritmo di Viterbi Argomenti della Lezione 1) Codici convoluzionali 2) Circuito codificatore 3) Diagramma a stati e a traliccio 4) Distanza libera 5) Algoritmo di Viterbi 1 Codici convoluzionali I codici convoluzionali sono

Dettagli

Programmazione operativa

Programmazione operativa Programmazione operativa GESTIONE DELLA PRODUZIONE Uglietti Luigi 14 maggio 2009 l.uglietti@wisefrogs.com La programmazione operativa La programmazione operativa (o di breve periodo, o scheduling), ha

Dettagli

Corso Sistemi Informativi Aziendali, Tecnologie dell Informazione applicate ai processi aziendali. Sistemi informativi aziendali

Corso Sistemi Informativi Aziendali, Tecnologie dell Informazione applicate ai processi aziendali. Sistemi informativi aziendali Corso Sistemi Informativi Aziendali,. Sistemi informativi aziendali di Simone Cavalli (simone.cavalli@unibg.it) Bergamo, Febbraio - Marzo 2009 Produzione (cenni) Pagina 2 Produzione La produzione, in termini

Dettagli

Schedulazione di attività in presenza di attività interrompibili

Schedulazione di attività in presenza di attività interrompibili Schedulazione di attività in presenza di attività interrompibili Maria Silvia Pini Resp. accademico: Prof.ssa Francesca Rossi Università di Padova Attività FSE DGR 1102/2010 La gestione dell informazione

Dettagli

Progettazione di Algoritmi

Progettazione di Algoritmi Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 06/07/2016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via

Dettagli

Progettazione di Algoritmi

Progettazione di Algoritmi Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 1/01/016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via avrai

Dettagli

Possibile applicazione

Possibile applicazione p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile

Dettagli

Cammini minimi in grafi:

Cammini minimi in grafi: Algoritmi e strutture dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Cammini minimi in grafi: una trilogia Cammini minimi in grafi: Episodio III: la fine della trilogia Input: nelle puntate

Dettagli

Soluzioni degli esercizi di formulazione di PL{0, 1}

Soluzioni degli esercizi di formulazione di PL{0, 1} Soluzioni degli esercizi di formulazione di PL{0, 1} Salvatore Nocella 12 febbraio 2007 1 Al lavoro Due operai devono eseguire un certo numero di lavori J = {1,..., n}, ciascuno della durata di un ora.

Dettagli

6.5 RNA Secondary Structure. 18 novembre 2014

6.5 RNA Secondary Structure. 18 novembre 2014 6.5 RNA Secondary Structure 18 novembre 2014 Calendario Oggi è la lezione 17/24: ultima lezione su Programmazione dinamica Metodo greedy: 18, 19 Grafi: 20, 21, 22, 23 Reti di flusso: 23, 24 (=mercoledì

Dettagli

Ottimizzazione nella Gestione dei Progetti - Esercitazione 1: calcolo degli schedule ottimi

Ottimizzazione nella Gestione dei Progetti - Esercitazione 1: calcolo degli schedule ottimi Università degli Studi di Roma La Sapienza Ottimizzazione nella Gestione dei Progetti - Esercitazione : calcolo degli schedule ottimi di FABIO D ANDREAGIOVANNI Dipartimento di Informatica e Sistemistica

Dettagli

Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone

Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone Il problema dell assegnamento degli stati versione del 9/1/03 Sintesi: Assegnamento degli stati La riduzione del numero

Dettagli

Sistemi Organizzativi

Sistemi Organizzativi Sistemi Organizzativi Lezione 12/12/2004 Introduzione al corso e definizioni di base Informazioni generali Pre-requisiti: lassi di complessità Metodi enumerativi: - programmazione dinamica - branch-and-bound

Dettagli

GROUP TECHNOLOGY e PRODUZIONE A CELLE

GROUP TECHNOLOGY e PRODUZIONE A CELLE Tecnica sorta e sviluppatasi per poter applicare i procedimenti produttivi adatti per la grande serie anche là dove si sarebbero dovuti adottare quelli adatti per la piccola media serie. FABBRICAZIONE

Dettagli

Schedulazione real-time di task PERIODICI

Schedulazione real-time di task PERIODICI Schedulazione real-time di task PERIODICI Sono la maggioranza delle attività di elaborazione. Es. regolazione, acquisizione, filtraggio, monitoraggio, comando di attuatori etc. Ipotesi: Tutte le richieste

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

Soluzione dei problemi di Programmazione Lineare Intera

Soluzione dei problemi di Programmazione Lineare Intera Fondamenti di Ricerca Operativa T-A a.a. 2014-2015 Soluzione dei problemi di Programmazione Lineare Intera Andrea Lodi, Enrico Malaguti, Daniele Vigo rev. 1.1.a ottobre 2014 Fondamenti di Ricerca Operativa

Dettagli

Visite in Grafi BFS e DFS

Visite in Grafi BFS e DFS Visite in Grafi BFS e DFS Visita di un Grafo Obiettivo: Visitare una sola volta tutti i nodi del grafo. Es.: visitare un porzione del grafo del Web Difficoltà: Presenza di cicli: Marcare i nodi visitati

Dettagli

Gestione della produzione e della supply chain Logistica distributiva

Gestione della produzione e della supply chain Logistica distributiva Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Struttura delle reti logistiche

Dettagli

Ottimizzazione numerica

Ottimizzazione numerica Funzioni univariate 28 Ottobre 2010 Funzioni univariate Outline 1 Funzioni univariate 2 optim Funzioni univariate I metodi di ottimizzazione consentono di trovare i punti estremanti (massimi, minimi) di

Dettagli

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni Classi di istruzioni In maniera simile a quanto fatto per i dati, un linguaggio mette a disposizione dei costrutti per realizzare la parte esecutiva dell algoritmo. Questa consiste di: Leggi i valori di

Dettagli

3.4 Metodo di Branch and Bound

3.4 Metodo di Branch and Bound 3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land

Dettagli

Introduzione alla programmazione Esercizi risolti

Introduzione alla programmazione Esercizi risolti Esercizi risolti 1 Esercizio Si determini se il diagramma di flusso rappresentato in Figura 1 è strutturato. A B C D F E Figura 1: Diagramma di flusso strutturato? Soluzione Per determinare se il diagramma

Dettagli

Cercare il percorso minimo Ant Colony Optimization

Cercare il percorso minimo Ant Colony Optimization Cercare il percorso minimo Ant Colony Optimization Author: Luca Albergante 1 Dipartimento di Matematica, Università degli Studi di Milano 4 Aprile 2011 L. Albergante (Univ. of Milan) PSO 4 Aprile 2011

Dettagli

Sistemi Operativi. La gestione delle risorse

Sistemi Operativi. La gestione delle risorse Sistemi Operativi La gestione delle risorse Introduzione Il sistema operativo ha il compito di fornire la gestione dell hardware ai programmi dell utente. Utente utilizza i programmi applicativi Programmi

Dettagli

Analisi algoritmi ricorsivi e relazioni di ricorrenza

Analisi algoritmi ricorsivi e relazioni di ricorrenza Analisi algoritmi ricorsivi e relazioni di ricorrenza Punto della situazione Finora abbiamo affrontato: il tempo di esecuzione di un algoritmo, l analisi asintotica con le notazioni asintotiche e la tecnica

Dettagli

5.3 Metodo dei piani di taglio

5.3 Metodo dei piani di taglio 5.3 Metodo dei piani di taglio (PLI) min s.v. c T x Ax b x interi X Ipotesi: a ij, c j e b i interi Osservazione: La regione ammissibile di un PLI può essere descritta mediante dei vincoli più o meno stringenti

Dettagli

Ottimizzazione della produzione tramite software di scheduling

Ottimizzazione della produzione tramite software di scheduling Ottimizzazione della produzione tramite software di scheduling Alessio Puppato, Barbara Fuoco, Andrea Rossi, Michele Lanzetta A partire da una classificazione dell architettura delle linee produttive,

Dettagli

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

La Gestione dei Progetti. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena La Gestione dei Progetti Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Gestione di Progetti complessi Il termine progetto fa riferimento ad un vasto

Dettagli

Parte V: Rilassamento Lagrangiano

Parte V: Rilassamento Lagrangiano Parte V: Rilassamento Lagrangiano Tecnica Lagrangiana Consideriamo il seguente problema di Programmazione Lineare Intera: P 1 min c T x L I Ax > b Cx > d x > 0, intera in cui A = matrice m x n C = matrice

Dettagli

SCHEDULING SCHEDULING

SCHEDULING SCHEDULING Corso di Laurea Triennale in INGEGNERIA GESTIONALE Anno Accademico 2012/13 Prof. Davide GIGLIO 1 INDICE Esempio Introduttivo Generalità sui problemi di scheduling SINGLE MACHINE SPT (shortest processing

Dettagli

Flusso a Costo Minimo

Flusso a Costo Minimo Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Flusso a Costo Minimo Docente: Renato Bruni bruni@dis.uniroma.it Corso di: Ottimizzazione Combinatoria Dal

Dettagli

Operation scheduling. Corso di GPM Secondo Modulo Quinta Unità Didattica

Operation scheduling. Corso di GPM Secondo Modulo Quinta Unità Didattica Operation scheduling Manufacturing Execution Systems Manufacturing execution system (MES): sistema informativo per scheduling, dispatching, tracking, monitoring, e controllo della produzione Collegamento

Dettagli

AMPL Problemi su Reti

AMPL Problemi su Reti Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Problemi su Reti Cammino Minimo Molti problemi di ottimizzazione combinatoria possono essere modellati ricorrendo ai

Dettagli

Laboratory for innovation MUSP. Macchine utensili e sistemi di produzione. Laboratorio MUSP www.musp.it

Laboratory for innovation MUSP. Macchine utensili e sistemi di produzione. Laboratorio MUSP www.musp.it Laboratory for innovation MUSP Macchine utensili e sistemi di produzione www.musp.it Sommario La schedulazione della produzione Gli obiettivi nella schedulazione Le problematiche legate alla schedulazione

Dettagli