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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

1 Bibliografia Gestione operativa della produzione Schedulazione operativa della produzione 14/12/ E.L. Lawler, J.K. Lenstra, A.G.H. Rinnoy Kan, D.B. Shmoys, Sequencing and Scheduling: Algorithms and Complexity, in S.C. Graves, A.H.G. Rinnooy Kan, P.H. Zipkin, (Eds.), Handbooks of Operations Research and Management Science vol. 4, Logistics of Production and Inventory, North Holland, Amsterdam, NL, J. Blazewicz, K.H. Ecker, G. Schmidt, J. Weglarz, Scheduling in Computer and Manufacturing System, Springer-Verlag, Berlin, D, Schedulazione Terminologia L MRP ha fissato i tempi di disponibilità dei materiali, delle risorse e delle lavorazioni (tipicamente giorno per giorno). Con la schedulazione si devono fissare (tipicamente all interno della giornata) la sequenza e i tempi delle operazioni che compongono le lavorazioni da eseguire. task: operazione elementare di lavorazione; job: insieme parzialmente ordinato di task che descrivono una lavorazione complessa; machine: (macchina) una risorsa che può eseguire al massimo una attività (task) alla volta. Se una risorsa può essere utilizzata da più attività e/o un attività utilizza più risorse si parla di problemi resource-constrained project. Nel caso di più macchine si possono avere diverse disposizioni tra cui macchine in parallelo, in serie e a bucket-brigade 3 4

2 Il problema della schedulazione Il problema della schedulazione Dati uno o più job, si pone un problema di schedulazione quando i task che devono essere eseguiti competono per un insieme di risorse limitate. Una soluzione di un problema di schedulazione è detta scheduling. Uno scheduling è detto ammissibile (feasible) se rispetta tutti vincoli (e.g., non sovrapposizione, rispetto release time, etc..), è ottimo se minimizza un dato criterio. Tipicamente i problemi di schedulazione sono NP-hard e vengono risolti con euristiche. Dato un problema di schedulazione sia γ * il valore ottimo γ (A) un approssimazione fornita dall algoritmo A. L algoritmo A è detto c-approssimante se per qualunque istanza del problema γ (A) /γ * c. 5 6 Obiettivi della schedulazione Obiettivi della schedulazione Minimizzare i costi si traduce operativamente nell ottimizzare i seguenti, a volte contrastanti, obiettivi: massimizzare il rispetto delle date di consegna (due date); minimizzare le parti in attesa di lavorazione (work-in-process inventory WIP ); minimizzare il tempo di attraversamento del sistema (flow time); massimizzare il numero parti lavorate per unità di tempo (throughput); massimizzare l utilizzazione delle risorse (anche umane); minimizzare i tempi di allestimento, regolazione, ecc. dei macchinari (set-up); massimizzare la correttezza dell informazione disponibile;... Minimizzazione del WIP e massimizzazione del throughput sono obiettivi contrastanti. Il throughput risulta essere massimo quando vi è sempre disponibilità di parti da lavorare, viceversa il WIP è minimo quando non vi sono parti in attesa di essere lavorate. A meno di un coordinamento perfetto tra tutti tempi di lavorazione in modo che una nuova parte si renda immediatamente disponibile appena viene terminata una lavorazione, cosa che in pratica non avviene mai, le due condizioni precedenti sono incompatibili. 7 8

3 Vincoli della schedulazione Stocasticità nella schedulazione disponibilità dei job da eseguire (i vari job sono lanciati in diversi istanti temporali); compatibilità task-risorse (alcuni task possono essere eseguiti solo da determinate risorse); sequenze di lavorazione (alcuni task devono essere eseguiti rispettando un preciso ordine e specifici intervalli temporali tra la fine di uno e l inizio dell altro; disponibilità delle risorse (alcune risorse potrebbero non essere sempre disponibili, e.g., a causa di manutenzione periodica); capacità delle risorse;... disponibilità job disponibilità risorse tempi di lavorazione Leve decisionali nella schedulazione assegnazione dei task alle risorse che devono eseguirli; sequenziazione dei task; tempificazione dell inizio/fine dell esecuzione dei task*. * N.B.: non sempre è conveniente eseguire un task il prima possibile e quindi la sequenziazione non implica la tempificazione. 11 Terminologia job shop: problema di schedulazione di n job su m macchine; flow shop: problema di schedulazione di n job di m task su m macchine, tutti i job devono subire, nella stessa sequenza, una e una sola lavorazione (task) su ogni macchina; parallel/sequential: situazione in cui più macchine identiche/ una sola macchina possono eseguire i task; preemption: situazione in cui l esecuzione di un task può essere interrotta per essere ripresa in seguito; static/dynamic: situazione in cui sono/non sono noti i tempi di lancio di tutti job da eseguire prima della schedulazione ed esecuzione del primo task; 12

4 Terminologia flow time: tempo di permanenza/attraversamento del sistema, intervallo di tempo che intercorre tra l istante iniziale di disponibilità di un job e l istante di completamento dell ultimo task; makespan: intervallo di tempo richiesto dalla schedulazione effettuata per completare tutti i job; tardiness, lateness: differenza, se positiva nel caso della tardiness, tra il tempo di completamento di un job e la sua data di consegna. Un job è tardy (in ritardo) se completato dopo la data di consegna; earliness:differenza, se positiva, tra la data di consegna di un job e il suo tempo di completamento. Un job è early (in anticipo) se completato prima della data di consegna. Schedulazione casi più semplici Si considerano inizialmente job composti di un unico task da schedulare su un unica macchina in problemi di schedulazione statica Modello Modello Ogni job i degli n da eseguire si ritiene caratterizzato da: parametri p i : tempo di esecuzione (processing time) r i : tempo di rilascio/lancio (release time) d i : data di consegna (due date) D i : data di recesso (deadline) variabili decisionali (caso senza preemption) C i : tempo completamento job (completion time) di solito variabile principale t i = C i -p i : tempo inizio esecuzione (starting time) W i = t i -r i : tempo attesa (waiting time) F i = C i -r i : tempo permanenza/attraversamento del sistema (flow time) L i = C i -d i : tempo di ritardo (lateness) T i = (C i -d i ) + : ritardo (tardiness) U i = 1{C i > D i }: violazione della deadline (tardy) E i = (d i -C i ) + : anticipo (earliness) 15 16

5 Modello vincoli (caso senza preemption) per qualunque job i r i t i C i D i... per qualunque coppia di job (i,j) Modello Possibili misure (obiettivi da ottimizzare) per la schedulazione: C = Σ i C i /n: tempo medio completamento dei job C max = max{c i }: tempo max completamento dei job (makespan) W, W max, F, F max, ecc... U = Σ i u i : numero di job tardy C i t j oppure C j t i Misure equivalenti Le misure sono equivalenti se ottimizzare una equivale ad ottimizzare le altre: C, F, W, L :poiché, e.g., F = W + Σ i p i /n = W +cost, L max implica T max (non viceversa): poiché L max = T max, se L max >0 e T max = 0 altrimenti; Misure regolari uno schedule è detto semi-attivo se non è possibile anticipare l esecuzione di un job senza alterare la sequenza degli stessi (la macchina non è lasciata inutilizzata (idle) se è possibile eseguire un job senza modificare la schedulazione degli altri); uno schedule è detto attivo se non è possibile anticipare l esecuzione di un job anche alterando la sequenza degli stessi (la macchina non è mai lasciata inutilizzata (idle) se è possibile eseguire un job); una misura è regolare se è nondecrescente nei completion time dei job, che implica che esiste sempre una soluzione ottima semi-attiva: C, C max, T max, U sono regolari, E, E max non sono regolari (può convenire ritardare l esecuzione di un job); 19 20

6 Due job J 1 e J 2 t.c.: J 1 : r 1 =1, p 1 =1, J 2 : r 2 =0, p 2 =10; due possibili scheduling semiattivi* {J 1,J 2 } e {J 2,J 1 } e uno solo attivo {J 2,J 1 }: C (J 1,J 2 ) = (2+12)/2 = 7 C max (J 1,J 2 ) = max{2,12} = 12 C (J 2,J 1 ) = (10+11)/2 = 10.5 C max (J 2,J 1 ) = max{10,11} = 11 * quando uno scheduling è semi-attivo il sequenziamento definisce anche la tempificazione. : diagrammi di Gantt J 1 J J 2 J Notazione Notazione Per i problemi di scheduling si usa una notazione a tre campi: ad esempio tipo problema / caratteristiche job o task/ obiettivo tipo problema: 1: singola macchina P m: macchine parallele (generico) F n: flow shop di n task su n macchine J n job shop (ordine diverso per ogni job) su n macchine O open shop (non vi è ordine nelle operazioni di un job),... 1 / r i /T max 23 24

7 Notazione caratteristiche job: pmtn: è ammessa la preemption prec: esistono precedenze tra i task dei job o tra i job r i : i job hanno release time diverso da zero, D i : i job hanno deadline diversa da infinito, p i =1: tutti i job hanno tempo di esecuzione / /Σ i C i (1/ /Σ i L i, 1/ /Σ i F i, 1/ /Σ i W i ) Problema: minimizzare il tempo medio di completamento su singola macchina di job con identica release time. obiettivo: T max, : minimizzare tardiness massima Σ i T i : minimizzare tardiness media Σ i w i C i : minimizzare tempi di completamento pesati Teorema: la politica Shortest Processing Time first (SPT) determina la soluzione ottima. Si eseguono per prima i job con tempo di esecuzione minore / /Σ i C i Prova: la misura è regolare e dato che i tempi di rilascio sono tutti uguali la macchina non deve rimanere mai inutilizzata (affermazioni provabili facilmente per assurdo), i job devono essere eseguiti in sequenza senza interruzione; sia c (k) il tempo di completamento del k-mo job nella sequenza: c (k) = p (1) + p (2) p (k) il tempo medio di completamento risulta quindi essere: Σ i c (i) /n = Σ k c (k) /n =(np (1) + (n-1)p (2) p (n) )/n la somma np (1) + (n-1)p (2) p (n) è minima se Schedule iniziale Job p i (posiz.) C i j 1 6 (1) 6 j 2 4 (2) 10 j 3 7 (3) 17 j 4 3 (4) 20 j 5 5 (5) 25 j 6 9 (6) 34 Σ i C i /n = Σ i W i /n = quindi SPT è ottima. p (1) p (2)... p (n) j 1 j 2 j 3 j 4 j 5 j

8 Schedule ottimo (SPT) Job p i (posiz.) C i j 1 6 (4) 18 j 2 4 (2) 7 j 3 7 (5) 25 j 4 3 (1) 3 j 5 5 (3) 12 j 6 9 (6) 34 Σ i C i /n = Σ i W i /n = / /Σ i w i C i l algoritmo SPT è O(nlog n) o comunque legato ai tempi di un ordinamento; si generalizza al caso 1/ /Σ i w i C i (con w i pesi) ordinando per rapporti tempi di esecuzione su pesi crescenti (regola di Smith) p (1) / w (1) p (2) / w (2)... p (n) / w (n) rimane ottimo anche nel caso di tempi di esecuzione stocastici se si ordina in base ai tempi attesi di esecuzione e si vuole ottimizzare il valore atteso della misura. j 4 j 3 j 2 j 5 j 1 j Schedule ottimo (regola di Smith) Job p i w i (posiz.) C i j (1) 6 j (2) 10 j (6) 34 j (3) 13 j (5) 27 j (4) 22 Σ i w i C i /n = j 1 j 2 j 4 j 6 j 5 j 3 Σ i C i /n = (Σ i w i C i /n )/(Σ i w i /n ) = / /Σ i w i C i In generale quando, dato un criterio f(.), è possibile definire una relazione di ordine totale del tipo a b se e solo se f(..ab..) f(..ba..) lo scheduling ottimo è banalmente ottenuto ordinando i job in base a. (dimostrazione per assurdo su scambi tra job adiacenti). Questo criterio può essere generalizzato ad a e b stringhe ed è utile per produrre algoritmi polinomiali quando si abbiano delle precedenze serie parallelo

9 1/... /Σ i w i C i La regola di Smith può essere generalizzata permettendo di sviluppare buoni metodi enumerativi per il problema NP-hard 1/prec/Σ i w i C i. Per 1/tree/Σ i w i C i, 1/serie-parall/Σ i w i C i si possono sviluppare algoritmi polinomiali (regola di Sidney): devono essere schedulati prima i task del set U (U è un set di job iniziali, i.e., che non hanno predecessori al di fuori di U) t.c. sia minimo il rapporto ρ (U) = Σ i U p i / Σ i U w i. 1/... /Σ i w i C i Con variazioni della regola di Smith si risolvono polinomialmente: 1/D i /Σ i C i e 1/ pmtn,r i,d i / Σ i C i ma sono NP-hard 1/r i /Σ i C i e 1/D i /Σ i w i C i e 1/ pmtn,r i,d i / Σ i w i C i. Metodi di Branch and Bound (B&B) sono utilizzati per il problema generale, si usa in genere il rilassamento lagrangiano dualizzando il vincolo C j D j o C j r j +d j / / L max Problema: minimizzare la lateness massima (e quindi anche della tardiness massima ) su singola macchina di job con identica release time ma due date diverse*. Teorema: la politica Earliest Due Date first (EDD - regola di Jackson) determina la soluzione ottima. Si eseguono per prima i job con due date più ravvicinata. Prova: per assurdo supporre una sequenziazione che non soddisfi tale condizione e invertire le posizioni di due dei job adiacenti che la violano. Il risultato è valido anche nel caso stocastico. * d i omesse nella notazione perché implicite in L max. Schedule ottimo (EDD) Job p i d i (posiz.) C i L i j (4) 20-1 j (2) 7-4 j (3) 14 1 j (1) 3-7 j (5) 25-1 j (6) 34 4 j 4 j 2 j 3 j 1 j 5 j 6 L max = 4 Σ i L i /n = con SPT L max = 12 Σ i L i /n =

10 1/... / L max 1/r i /L max è in generale NP-hard. Casi polinomiali particolari sono: 1/ r i =r /L max (r i è uguale per tutti i job) con EDD; 1/r i, d i =d /L max (d i uguali) con Earliest Release Time; 1/r i, p i =1 /L max (p i unitari) e 1/pmtn, r i /L max con extended Jackson s rule (EJR), ad ogni istante si assegna il job disponibile con minima due-date; 1/r i, p i =p/l max (p i costante) vedi lucido seguente; i casi con r i possono essere generalizzati nel caso di prec (si impone r j <r k e d j <d k se j precede k) e nel caso di pmtn. Schedule ottimo per p i =1 (EJR) Job r i d i (posiz.) C i L i j (4) 4 0 j (1) 1 0 j (2) 2-1 j (3) 3 0 j (5) 5 1 j (6) 6 2 j 2 j 3 j 4 j 1 j 5 j 6 L max = 2 Σ i L i /n = Schedule ottimo con pmtn (EJR) Job p i r i d i (posiz.) C i L i j (2,4) 17 4 j (1) 4-3 j (3) 14 5 j (5,8) 34 3 j (6) 23-4 j (7) 32 3 j 2 j 1a j 3 j 1b j 4a j 5 j 6 j 4b L max = 5 1/r i, p i =p/l max Algoritmo risolutivo: si esegue una ricerca per bisezione sul valore di L max, che quando è fissato può considerarsi come una deadline comune a tutti i job, per ogni valore di tentativo: si applica EJR, se la deadline corrente L max non è violata ok se la deadline corrente è violata, a partire dall ultimo job z si cerca il primo job k con due date maggiore di d z. Se tale job non esiste non è possibile rispettare L max. Altrimenti si forza k a dare la precedenza ad altri job spostando la sua r k al valore della release date del job che lo segue e riapplicando la EJR (questa operazione di verifica può essere eseguita in O(nlogn))

11 Tutti i job p i =4, tentativo per L max = 3 Job r i d i (posiz.) D i C i j (1) 17 4 j (2) 10 8 j (3) j (4) j (5) j (6) Spostando fittiziamente r 1 a 3 si ottiene uno schedule ammissibile rispetto alle deadline fissate e con L max = 3 Job r i d i (posiz.) D i C i j (4) j (1) 10 5 j (2) 12 9 j (3) j (5) j (6) j 1 j 2 j 3 j 4 j 5 j 6 j 2 j 3 j 4 j 1 j 5 j Tentativo per L max = 2 Job r i d i (posiz.) D i C i j (1) 16 4 j (2) 9 8 j (3) j (4) j (5) j (6) j 1 j 2 j 3 j 4 j 5 j 6 Spostando fittiziamente r 1 a 3 non si riesce comunque ad ottenere uno schedule ammissibile rispetto alle deadline fissate e con L max = 2. Job r i d i (posiz.) D i C i j (4) j (1) 9 5 j (2) 11 9 j (3) j (5) j (6) Lo schedule per L max = 3 è quindi ottimo

12 1/... / L max Nel caso generale si devono enumerare gli scheduling semiattivi. Si possono avere enumerazioni più efficienti (v. Carlier) utilizzando il concetto di q i (delivery time) che ha caratteristiche simmetriche a r i. Algoritmi approssimanti che sfruttano questa simmetria e iterazioni dell EJR si provano essere 4/3-approssimanti (EJR da solo è 2-approssimato) esistono però anche algoritmi più complessi che formano uno schema di approssimazione polinomiale. 1/ / Σ i U i Problema: minimizzare il numero di job tardy su singola macchina di job con identica release time ma deadline diverse. Teorema: la politica definita dall algoritmo di Moore determina la soluzione ottima. Prova: per assurdo / /Σ i U i Algoritmo di Moore passo 1) ordinare i job per EDD; passo 2) determinare il primo job, sia in k-ma posizione, che è tardy, se nessun job tardy esiste va al passo 4); passo 3) eliminare il job con massimo tempo di esecuzione tra quelli che si trovano tra la prima e la k-ma posizione inclusa, vai al passo 2); passo 4) i job ordinati secondo EDD formano una sequenza ottima, i rimanenti possono o meno essere eseguiti in qualunque sequenza. primo job con deadline violata job da eliminare Primo tentativo (EDD) Job p i D i (posiz.) C i j (3) 17 j (1) 4 j (2) 11 j (5) 25 j (4) 22 j (6) 34 j 2 j 3 j 1 j 5 j 4 j

13 primo job con deadline violata job da eliminare Secondo tentativo Job p i D i (posiz.) C i j (2) 10 j (1) 4 j (-) - j (4) 18 j (3) 15 j (5) 27 Schedule ottimo Job p i D i (posiz.) C i j (2) 10 j (1) 4 j (-) - j (4) 18 j (3) 15 j (-) - j 2 j 1 j 5 j 4 j 6 j 2 j 1 j 5 j /.../Σ i w i U i 1/.../Σ i w i T i 1//Σ i w i U i è NP-hard, ma risolvibile con algoritmi pseudopolinomiali (attraverso programmazione dinamica); 1//Σ i U i è polinomiale, ma... 1/.../Σ i U i diventa NP-hard con i release time o precedenze. Rimane polinomiale con r i se è ammessa la preemption; i lower bound da usare nel B&B vengono calcolati ponendo costanti i processing time o i pesi (si verifica così l ordine inverso). Danno buoni risultati anche rilassamenti di qualche formulazione intera naturale. Esistono schemi completamente polinomiali per questi problemi. Problema: minimizzare la tardiness su singola macchina di job con due date diverse. Il problema 1//Σ i T i si può risolvere pseudopolinomialmente (la programmazione dinamica si risolvono problemi dell ordine di 50 job ), esistono anche schemi completamente polinomiali; 1/p i =1 /Σ i w i T i e 1/r i,p i =1 /Σ i T i, si risolvono con weighted bipartite matching problem poiché il costo di schedulare il kmo job non dipende dall ordinamento dei precedenti e dei successivi 1/prec, p i =1 /Σ i T i è NP-hard

14 1/ prec / max i g i (c i ) Problema: sia la misura di ogni job una funzione (anche diversa da job a job) non decrescente nel tempo di completamento (e.g., g i (C i )= C i -d i = L i oppure g i (C i )= (C i -d i ) + = T i ); minimizzare il valore massimo assunto da tali misure, per job su singola macchina con identica release time ma in presenza di precedenze. Teorema: la politica definita dall algoritmo di Lawler determina la soluzione ottima. Prova: per assurdo. 1/ prec / max i g i (c i ) Algoritmo di Lawler passo 1) dall insieme J dei job determina l insieme V dei job che non precedono altri job non già schedulati; passo 2) determinare il job k in V t.c.: g k (τ) = min k V g k (τ) con τ=σ i J p i passo 3) poni J = J\{k}, J > 0 vai al passo 1) altrimenti stop determinato schedule ottimo. L algoritmo procede ricorsivamente all indietro determinando ad ogni passo il job che ha costo minimo se sequenziato per ultimo j 1 1/ prec / T max j 3 j 4 j 6 j 2 j 5 1/ prec / T max Schedule ottimo T max =8 Job p i d i (posiz.) C i T i j (1) 6 0 j (2) 10 3 j (3) 17 8 j (5) 25 4 j (4) 22 4 j (6) 34 6 Job confrontati nelle ricorsioni dell algoritmo: 1) j 5 j 6 2) j 4 j 5 3) j 3 j 5 4) j 2 j 3 5) j 2 6) j 1 j 1 j 2 j 3 j 5 j 4 j

15 1/ D i =D / Σ i E i Problema: minimizzare l earliness media su singola macchina di job con identica release time e identica deadline*. Teorema: la politica Longest Processing Time first (LPT) determina la soluzione ottima. Si eseguono per prima i job con tempo di esecuzione maggiore. Prova: simmetrica del caso SPT, D deve però essere non inferiore alla somma dei tempi di processamento, altrimenti il problema non ammette schedule ammissibili. *N.B.: si pone deadline e non due date, altrimenti il problema è banale si ritarda tutto Schedule ottimo Job p i D i (posiz.) C i E i j (3) j (5) 31 3 j (2) j (6) 34 0 j (4) 27 7 j (1) 9 25 j 6 j 3 j 1 j 5 j 2 j 4 Σ i E i /n = Σ i C i /n = Σ i W i /n = / d i =d / Σ i (E i +T i ) Problema: minimizzazare l earliness e tardiness media su singola macchina di job con identica release time e identica due date. Teorema: la politica V-shaped determina la soluzione ottima se d sufficientemente grande, altrimenti problema NP-hard. Prova: misto SPT e LPT. 1/ d i =d / Σ i (E i +T i ) Algoritmo di V-shaped passo 1) ordinare i job per LPT; passo 2) porre i job in posizione dispari, ordinati per LPT, prima della due date in modo che il completion time dell ultimo tra questi job coincida con la due date stessa; passo 3) porre i job in posizione pari, ordinati per SPT, dopo la due date in modo che lo starting time del primo tra questi job coincida con la due date stessa

16 Schedule ottimo Job p i d i (posiz.) C i E i / T i j (2d) 22 4 / 0 j (3d) 31 0 / 0 j (3s) 16 0 / 15 j (1s) 34 0 / 3 j (2s) 27 0 / 8 j (1d) 9 10 / 0 Σ i (Ei+T i )/n = 6.67 Set-up Time Problema: minimizzare i costi di set-up su singola macchina di job con identica release time. Problema NP-hard. Si risolve come un TSP, per determinate strutture di set-up è polinomiale. j 6 j 1 j 2 j 4 j 5 j Regole euristiche Quando il problema non è tra quelli facilmente risolvibile tipicamente si applicano regole euristiche*: FCFS SPT EDD Critical Ratio Critical Ratio L euristica Critical Ratio ad ogni istante schedula in base all urgenza dei task, dove per urgenza si intende il rapporto: tempo esecuzione /(due date - tempo corrente) = p i / (d i -t) se vi sono rapporti negativi e positivi, si preferiscono i negativi e si schedulano i job associati a tali valori secondo SPT. *N.B.: se applicate in ambiente dinamico queste devono essere fair, garantire cioè che nessun job sia posposto all infinito. SPT non è fair

17 Schedule basato su critical ratio Job p i r i d i (posiz.) C i L i j (2) 10-3 j (1) 4-3 j (3) 17 8 j (5) 25 4 j (4) 22 4 j (6) 34 6 Job confrontati: t=0) j 1 j 2 t=4) j 1 t=10) j 3 j 4 t=17) j 4 j j 5 6 t=22) j 4 j 6 t=25) j 6 j 2 j 1 j 3 j 5 j 4 j 6 65

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

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

Modelli di scheduling su macchina singola. relazione alle macchine che devono eseguire le varie operazioni, allora ogni singola macchina nello shop è

Modelli di scheduling su macchina singola. relazione alle macchine che devono eseguire le varie operazioni, allora ogni singola macchina nello shop è . Modello base Consideriamo il caso in cui ogni job consiste di una sola operazione. Poiché un insieme di job è partizionato in relazione alle macchine che devono eseguire le varie operazioni, allora ogni

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

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

Introduzione alla teoria dello scheduling

Introduzione alla teoria dello scheduling 1. Generalità I problemi di scheduling riguardano l allocazione di risorse limitate ad attività nel tempo. In generale il processo di decisione associato richiede la determinazione dell ordine in cui l

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

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

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

Schedulazione: più macchine. Schedulazione: più macchine. Modello. Modello. job composti di un unico task da schedulare su una tra più macchine;

Schedulazione: più macchine. Schedulazione: più macchine. Modello. Modello. job composti di un unico task da schedulare su una tra più macchine; Schedulazione: più macchine Schedulazione: più macchine casi: job composti di un unico task da schedulare su una tra più macchine; open shop (tutti i job hanno task su tutte le macchine, ma non le stesse

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

Principi di Schedulazione in tempo reale

Principi di Schedulazione in tempo reale Principi di Schedulazione in tempo reale 1 Task in tempo reale Un task t i è una sequenza di processi in tempo reale τ ik ciascuno caratterizzato da q un tempo d arrivo r ik (r=release time, oppure a=arrival

Dettagli

Esercizi di Ricerca Operativa I

Esercizi di Ricerca Operativa I Esercizi di Ricerca Operativa I Dario Bauso, Raffaele Pesenti May 10, 2006 Domande Programmazione lineare intera 1. Gli algoritmi per la programmazione lineare continua possono essere usati per la soluzione

Dettagli

Esercizi di Gestione della Produzione Industriale. Tabella 1: tempi di lavorazione di un set di job.

Esercizi di Gestione della Produzione Industriale. Tabella 1: tempi di lavorazione di un set di job. Esercizio 1: schedulazione con il modello di Johnson...2 Soluzione dell esercizio 1 (schedulazione con il modello di Johnson)...2 Esercizio 2: schedulazione con il modello di Hodgson...3 Soluzione dell

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

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

Contenuto e scopo presentazione. Vehicle Scheduling. Motivazioni VSP

Contenuto e scopo presentazione. Vehicle Scheduling. Motivazioni VSP Contenuto e scopo presentazione Vehicle Scheduling 08/03/2005 18.00 Contenuto vengono introdotti modelli e metodi per problemi di Vehicle Scheduling Problem (VSP) Scopo fornire strumenti di supporto alle

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

Sistemi Organizzativi docente: Stefano Smriglio stefano.smriglio@univaq.it

Sistemi Organizzativi docente: Stefano Smriglio stefano.smriglio@univaq.it Sistemi Organizzativi docente: Stefano Smriglio stefano.smriglio@univaq.it Pre-requisiti: Classi di complessità Programmazione Lineare (Intera) Metodo branch-and-bound Cammini minimi su grafi Materiale

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

Contenuto e scopo presentazione. Crew Scheduling e Crew Rostering. Gestione del personale. Motivazioni

Contenuto e scopo presentazione. Crew Scheduling e Crew Rostering. Gestione del personale. Motivazioni Contenuto e scopo presentazione Crew Scheduling e Crew Rostering Contenuto vengono introdotti modelli e metodi per problemi di turnazione del personale Raffaele Pesenti 07/02/2002 14.41 Scopo fornire strumenti

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

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

Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova. Metodi per supportare le decisioni relative alla gestione di progetti

Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova. Metodi per supportare le decisioni relative alla gestione di progetti Project Management Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Project Management 2 Metodi per supportare le decisioni relative alla gestione di progetti esempi sono progetti nell

Dettagli

ESERCIZI SULLO SCHEDULING DEL CORSO DI AUTOMAZIONE INDUSTRIALE

ESERCIZI SULLO SCHEDULING DEL CORSO DI AUTOMAZIONE INDUSTRIALE ESERCIZI SULLO SCHEDULING DEL CORSO DI AUTOMAZIONE INDUSTRIALE Spt-Edd (La parte teorica necessaria a svolgere questi esercizi fa riferimento alla lezione n 10 del corso di Automazione Industriale tenute

Dettagli

Un sistema multi-agente per lo scheduling on-line in ambito manifatturiero

Un sistema multi-agente per lo scheduling on-line in ambito manifatturiero Università degli Studi di Genova Facoltà di Ingegneria TESI DI LAUREA Un sistema multi-agente per lo scheduling on-line in ambito manifatturiero Relatori: Chiar.mo Prof. Antonio Boccalatte Chiar.mo Prof.

Dettagli

Esercizi e complementi di Ottimizzazione nella Gestione dei Progetti

Esercizi e complementi di Ottimizzazione nella Gestione dei Progetti Esercizi e complementi di Ottimizzazione nella Gestione dei Progetti Marco Pranzo 16 Aprile 009 1 Organizzazione concerto rock I promotori di un evento rock devono svolgere le attività (Tabella 1) per

Dettagli

Pianificazione e controllo delle risorse

Pianificazione e controllo delle risorse Pianificazione e controllo delle risorse Pianificazione e controllo delle risorse Gestione dell allocazione delle risorse in modo che i processi dell azienda siano efficienti e riflettano la domanda di

Dettagli

Corso di Automazione Industriale 1. Capitolo 3

Corso di Automazione Industriale 1. Capitolo 3 Simona Sacone - DIST Corso di Automazione Industriale 1 Capitolo 3 Modelli di processi produttivi a livello decisionale operativo e di controllo Simona Sacone - DIST 2 Modelli di sistemi di produzione

Dettagli

Algoritmi di scheduling - Parte 2

Algoritmi di scheduling - Parte 2 Algoritmi di scheduling - Parte 2 Automazione I 12/11/2013 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO ALGORITMO DEADLINE MONOTONIC PRIORITY ORDERING (DMPO) ALGORITMO TIMELINE SCHEDULING (TS) SCHEDULING

Dettagli

,""m,""nj F... n dove nj è il numero di job assegnato alla macchina j e L:::i=1 nj = n. Ed

,m,nj F... n dove nj è il numero di job assegnato alla macchina j e L:::i=1 nj = n. Ed ~~~~, - 1.6 Macchine in parallelo Consideriamo il problema P/ /F. Abbiamo cioè n job, disponibili per la lavorazione contemporaneamente ed abbiamo a disposizione, invece di una singola macchina, m macchine

Dettagli

SISTEMI DI PRODUZIONE DISCRETA

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

Dettagli

Lezione 6. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata.

Lezione 6. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata. Lezione 6 Sistemi operativi 31 marzo 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 6.1 Di cosa parliamo in questa lezione? La schedulazione 1 e caratteristiche

Dettagli

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di sostituirsi

Dettagli

Ricerca Operativa A.A. 2007/2008

Ricerca Operativa A.A. 2007/2008 Ricerca Operativa A.A. 2007/2008 9. Cenni su euristiche e metaeuristiche per ottimizzazione combinatoria Motivazioni L applicazione di metodi esatti non è sempre possibile a causa della complessità del

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare Luigi De Giovanni 1 Modelli di programmazione lineare I modelli di programmazione lineare sono una

Dettagli

SPERIMENTAZIONE CON LINDO SU UN PROBLEMA DI SCHEDULING

SPERIMENTAZIONE CON LINDO SU UN PROBLEMA DI SCHEDULING UNIVERSITA DEGLI STUDI DI PADOVA FACOLTA DI SCIENZE STATISTICHE CORSO DI LAUREA IN SCIENZE STATISTICHE ED ECONOMICHE TESI DI LAUREA SPERIMENTAZIONE CON LINDO SU UN PROBLEMA DI SCHEDULING Relatore: Ch.mo

Dettagli

La schedulazione. E.Mumolo mumolo@units.it

La schedulazione. E.Mumolo mumolo@units.it La schedulazione E.Mumolo mumolo@units.it Concetti fondamentali Multiprogrammazione: esecuzione simultanea di più sequenze di esecuzione Pseudo-parallelismo su una sola CPU Esecuzione parallela su più

Dettagli

Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi

Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU. Scheduling della CPU: commuta l uso della CPU tra i vari processi Scheduling della CPU Scheduling della CPU Obiettivo della multiprogrammazione: massimizzazione dell utilizzo CPU Scheduling della CPU: commuta l uso della CPU tra i vari processi Scheduler della CPU (a

Dettagli

Lo scheduling. Tipici schedulatori

Lo scheduling. Tipici schedulatori Lo scheduling Un processo durante la sua evoluzione è o running o in attesa di un evento. Nel secondo caso trattasi della disponibilità di una risorsa (CPU, I/O, struttura dati, ecc.) di cui il processo

Dettagli

Sistemi Real-Time Ing. Rigutini Leonardo

Sistemi Real-Time Ing. Rigutini Leonardo Sistemi Real-Time Ing. Rigutini Leonardo Dipartimento di Ingegneria dell informazione Università di Siena Sistema Real-Time Sistema in cui la correttezza non dipende solamente dai valori di output ma anche

Dettagli

Contenuto e scopo presentazione. Decisioni tattiche. Decisioni tattiche. Decisioni tattiche

Contenuto e scopo presentazione. Decisioni tattiche. Decisioni tattiche. Decisioni tattiche Contenuto e scopo presentazione Decisioni tattiche 21/05/2002 12.01 Contenuto vengono discusse alcune problematiche decisionali tattiche tipicamente affrontate dalle aziende di trasporto. Scopo fornire

Dettagli

MRP. Pianificazione della produzione. Distinta base Bill Of Materials (BOM) MPS vs. MRP. Materials Requirements Planning (MRP)

MRP. Pianificazione della produzione. Distinta base Bill Of Materials (BOM) MPS vs. MRP. Materials Requirements Planning (MRP) MRP Pianificazione della produzione Materials Requirements Planning (MRP) 15/11/2002 16.58 Con l MRP si decide la tempificazione delle disponibilità dei materiali, delle risorse e delle lavorazioni. MRP

Dettagli

Capitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano

Capitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano Capitolo 3: Ottimizzazione Discreta E. Amaldi DEIB, Politecnico di Milano 3.1 Modelli di PLI e PLMI Moltissimi problemi decisionali complessi possono essere formulati o approssimati come problemi di Programmazione

Dettagli

Un sistema operativo è un insieme di programmi che consentono ad un utente di

Un sistema operativo è un insieme di programmi che consentono ad un utente di INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli

Dettagli

Indirizzo Giuridico Economico Aziendale

Indirizzo Giuridico Economico Aziendale Premessa Questa breve trattazione non vuole costituire una guida completa ed esauriente sull argomento, ma vuole fornire solamente i concetti fondamentali necessari per il raggiungimento degli obiettivi

Dettagli

Tecniche Reticolari. Problema: determinare l istante di inizio di ogni attività in modo che la durata complessiva del progetto sia minima

Tecniche Reticolari. Problema: determinare l istante di inizio di ogni attività in modo che la durata complessiva del progetto sia minima Project Management Tecniche Reticolari Metodologie per risolvere problemi di pianificazione di progetti Progetto insieme di attività A i di durata d i, (=,...,n) insieme di relazioni di precedenza tra

Dettagli

Scheduling della CPU:

Scheduling della CPU: Coda dei processi pronti (ready( queue): Scheduling della CPU primo ultimo PCB i PCB j PCB k contiene i descrittori ( process control block, PCB) dei processi pronti. la strategia di gestione della ready

Dettagli

Esercitazione in Laboratorio: risoluzione di problemi di programmazione lineare tramite Excel il mix di produzione

Esercitazione in Laboratorio: risoluzione di problemi di programmazione lineare tramite Excel il mix di produzione Esercitazione in Laboratorio: risoluzione di problemi di programmazione lineare tramite Excel il mix di produzione Versione 11/03/2004 Contenuto e scopo esercitazione Contenuto esempi di problema di programmazione

Dettagli

Sistemi Operativi SCHEDULING DELLA CPU

Sistemi Operativi SCHEDULING DELLA CPU Sistemi Operativi SCHEDULING DELLA CPU Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling

Dettagli

Concetti di base. Scheduling della CPU. Diagramma della durata dei CPU-burst. Sequenza Alternata di CPU Burst e I/O Burst

Concetti di base. Scheduling della CPU. Diagramma della durata dei CPU-burst. Sequenza Alternata di CPU Burst e I/O Burst Impossibile visualizzare l'immagine. Scheduling della CPU Concetti di base La multiprogrammazione cerca di ottenere la massima utilizzazione della CPU. L esecuzione di un processo consiste in cicli d esecuzione

Dettagli

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base Scheduling Sistemi Operativi e Distribuiti A.A. 2-25 Bellettini - Maggiorini Concetti di base Il massimo utilizzo della CPU si ottiene mediante la multiprogrammazione Ogni processo si alterna su due fasi

Dettagli

Sistemi di Controllo Real Time

Sistemi di Controllo Real Time Sistemi di Controllo Real Time Automazione 13/10/2015 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO SISTEMI REAL TIME CLASSIFICAZIONE DEI SISTEMI REAL TIME PARALLELISMO E PROGRAMMAZIONE CONCORRENTE SISTEMI

Dettagli

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 3 5 7-8 9 57

Dettagli

Riassunto di Sistemi in Tempo Reale LS

Riassunto di Sistemi in Tempo Reale LS Riassunto di Sistemi in Tempo Reale LS Silvia Cereda July 10, 2007 1 Schedulazione di processi periodici Condizione necessaria (ma non sufficiente) affinché un insieme di N processi sia schedulabile è

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 Maria Silvia Pini Resp. accademico: Prof.ssa Francesca Rossi Università di Padova Attività FSE DGR 1102/2010 La gestione dell

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Modellazione in Programmazione Lineare Luigi De Giovanni 1 Modelli di programmazione lineare I modelli di programmazione lineare sono una

Dettagli

Scheduling. Scheduling 14/12/2003 1/7

Scheduling. Scheduling 14/12/2003 1/7 Scheduling In un computer multiprogrammato più processi competono per l'uso della CPU. La parte di sistema operativo che decide quale processo mandare in esecuzione è lo scheduler. Batch OS: scheduling

Dettagli

Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU

Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU Scheduling della CPU Concetti fondamentali Criteri di scheduling Algoritmi di scheduling Concetti fondamentali L obiettivo della multiprogrammazione è di avere processi sempre in esecuzione al fine di

Dettagli

Scheduling della CPU. Contenuti delle lezioni del 23 e del 26 Marzo 2009. Sequenza alternata di CPU burst e di I/O burst.

Scheduling della CPU. Contenuti delle lezioni del 23 e del 26 Marzo 2009. Sequenza alternata di CPU burst e di I/O burst. Contenuti delle lezioni del 23 e del 26 Marzo 2009 Scheduling della CPU Introduzione allo scheduling della CPU Descrizione di vari algoritmi di scheduling della CPU Analisi dei criteri di valutazione nella

Dettagli

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time

Dettagli

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1 SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time

Dettagli

1) Descrivere dettagliatamente a quale problema di scheduling corrisponde il problema.

1) Descrivere dettagliatamente a quale problema di scheduling corrisponde il problema. Un veicolo viene utilizzato da una società di trasporti per trasportare beni a partire da un unico deposito verso prefissate località di destinazione. Si supponga che occorre trasportare singolarmente

Dettagli

Scheduling della CPU Simulazione in linguaggio Java

Scheduling della CPU Simulazione in linguaggio Java Scheduling della CPU Simulazione in linguaggio Java Realizzato da: Amelio Francesco 556/001699 Di Matteo Antonio 556/000067 Viola Antonio 556/000387 Progetto di Sistemi Operativi Docente Giancarlo Nota

Dettagli

Pag. 1. Introduzione allo scheduling. Concetti fondamentali. Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Algoritmi.

Pag. 1. Introduzione allo scheduling. Concetti fondamentali. Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Algoritmi. Concetti fondamentali Scheduling della CU Introduzione allo scheduling Uno degli obbiettivi della multiprogrammazione è quello di massimizzare l utilizzo delle risorse e in particolare della CU er raggiungere

Dettagli

Sistemi Operativi. ugoerr+so@dia.unisa.it 5 LEZIONE SCHEDULING DELLA CPU CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Operativi 2007/08

Sistemi Operativi. ugoerr+so@dia.unisa.it 5 LEZIONE SCHEDULING DELLA CPU CORSO DI LAUREA TRIENNALE IN INFORMATICA. Sistemi Operativi 2007/08 Sistemi Operativi Docente: Ugo Erra ugoerr+so@dia.unisa.it 5 LEZIONE SCHEDULING DELLA CPU CORSO DI LAUREA TRIENNALE IN INFORMATICA UNIVERSITA DEGLI STUDI DELLA BASILICATA Sommario della lezione Introduzione

Dettagli

Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica 2010-11

Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica 2010-11 Modelli dei Sistemi di Produzione Modelli e lgoritmi della Logistica 00- Scheduling: Macchina Singola CRLO MNNINO Saienza Università di Roma Diartimento di Informatica e Sistemistica Il roblema /-/ w C

Dettagli

SISTEMI IN TEMPO REALE

SISTEMI IN TEMPO REALE SISTEMI IN TEMPO REALE Definizione [Stankovic 88] I sistemi real-time (RT) sono quei sistemi di calcolo in cui la correttezza di funzionamento non dipende soltanto dalla validità dei risultati ottenuti

Dettagli

Algoritmi di scheduling

Algoritmi di scheduling Capitolo 2 Algoritmi di scheduling 2.1 Sistemi Real Time In un sistema in tempo reale (real time) il tempo gioca un ruolo essenziale. Le applicazioni di tali sistemi sono molteplici e di larga diffusione.

Dettagli

Ottimizzazione nella gestione dei progetti

Ottimizzazione nella gestione dei progetti Ottimizzazione nella gestione dei progetti Capitolo 2: Reti di attività CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Definizioni di ase Il Progetto è costituito

Dettagli

Processi e Thread. Scheduling (Schedulazione)

Processi e Thread. Scheduling (Schedulazione) Processi e Thread Scheduling (Schedulazione) 1 Scheduling Introduzione al problema dello Scheduling (1) Lo scheduler si occupa di decidere quale fra i processi pronti può essere mandato in esecuzione L

Dettagli

Lez. 4 Lo scheduling dei processi. Corso: Sistemi Operativi Danilo Bruschi

Lez. 4 Lo scheduling dei processi. Corso: Sistemi Operativi Danilo Bruschi Sistemi Operativi Lez. 4 Lo scheduling dei processi 1 Cicli d'elaborazione In ogni processo i burst di CPU si alternano con i tempi di I/O 2 Uso tipico di un calcolatore 3 CPU-bound e I/O-bound Processi

Dettagli

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Dr Maria Federico Programmazione dinamica Solitamente usata per risolvere problemi di ottimizzazione il problema ammette

Dettagli

Scheduling Introduzione Tipi di scheduler Scheduler di lungo termine (SLT) Scheduler di medio termine (SMT) Scheduler di breve termine (SBT)

Scheduling Introduzione Tipi di scheduler Scheduler di lungo termine (SLT) Scheduler di medio termine (SMT) Scheduler di breve termine (SBT) Scheduling Introduzione Con scheduling si intende un insieme di tecniche e di meccanismi interni del sistema operativo che amministrano l ordine in cui il lavoro viene svolto. Lo Scheduler è il modulo

Dettagli

Scheduling della CPU

Scheduling della CPU Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux 6.1 Sistemi multiprocessori simmetrici Fin qui si sono trattati i problemi di scheduling

Dettagli

Ricerca Operativa Dualità e programmazione lineare

Ricerca Operativa Dualità e programmazione lineare Ricerca Operativa Dualità e programmazione lineare L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di sostituirsi alle spiegazioni del

Dettagli

Scheduling di processi HRT

Scheduling di processi HRT Scheduling di processi HRT Primo modello per la schedulazione di processi periodici N processi P1, P2,, PN indipendenti senza vincoli di precedenza, senza risorse condivise; ogni processo Pj (j = 1, 2,,N)

Dettagli

Introduzione ai problemi di Scheduling

Introduzione ai problemi di Scheduling Introduzione ai problemi di Scheduling A. Agnetis December 12, 2000 1 Introduzione Con il termine scheduling si intende una vasta classe di problemi, molto diversi tra loro per complessitµa e struttura.

Dettagli

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di

Dettagli

Guida al livellamento delle risorse con logica Critical Chain (1^ parte)

Guida al livellamento delle risorse con logica Critical Chain (1^ parte) Paolo Mazzoni 2011. E' ammessa la riproduzione per scopi di ricerca e didattici se viene citata la fonte completa nella seguente formula: "di Paolo Mazzoni, www.paolomazzoni.it, (c) 2011". Non sono ammesse

Dettagli

Modelli di Programmazione Lineare Intera

Modelli di Programmazione Lineare Intera 8 Modelli di Programmazione Lineare Intera Come è stato già osservato in precedenza, quando tutte le variabili di un problema di Programmazione Lineare sono vincolate ad assumere valori interi, si parla

Dettagli

Prof. Ferdinando Azzariti

Prof. Ferdinando Azzariti Materiali di Economia e Organizzazione Aziendale, Università di Udine A.A. 2011-12 Prof. Ferdinando Azzariti www.ferdinandoazzariti.com 1 La gestione della produzione La programmazione e il controllo della

Dettagli

RELAZIONE FASE I UNITÀ DI RICERCA DEL POLITECNICO DI TORINO

RELAZIONE FASE I UNITÀ DI RICERCA DEL POLITECNICO DI TORINO RELAZIONE FASE I UNITÀ DI RICERCA DEL POLITECNICO DI TORINO Il supply chain management è oggi un tema di indubbio interesse da parte sia della comunità scientifica che di quella industriale. Esso consiste

Dettagli

Sistemi Operativi. Scheduling dei processi

Sistemi Operativi. Scheduling dei processi Sistemi Operativi Scheduling dei processi Scheduling dei processi Se più processi sono eseguibili in un certo istante il sistema deve decidere quale eseguire per primo La parte del sistema operativo che

Dettagli

Scheduling. Lo scheduler è la parte del SO che si occupa di

Scheduling. Lo scheduler è la parte del SO che si occupa di Scheduling Lo scheduler è la parte del SO che si occupa di decidere quale fra i processi pronti può essere mandato in esecuzione L algoritmo di scheduling (la politica utilizzata dallo scheduler) ha impatto

Dettagli

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D) ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI () Calcolo delle corrispondenze Affrontiamo il problema centrale della visione stereo, cioè la ricerca automatica di punti corrispondenti tra immagini Chiamiamo

Dettagli

6 CPU Scheduling. 6.1 Concetti Fondamentali dello Scheduling della CPU. 6.1 Concetti Fondamentali

6 CPU Scheduling. 6.1 Concetti Fondamentali dello Scheduling della CPU. 6.1 Concetti Fondamentali 1 6 CPU Scheduling La gestione della CPU (soltanto) può rendere la multi-programmazione più efficiente della mono-programmazione Infatti, la multiprogrammazione permette di ottenere l utilizzazione massima

Dettagli

Problemi di Programmazione Lineare Intera

Problemi di Programmazione Lineare Intera Capitolo 4 Problemi di Programmazione Lineare Intera La Programmazione Lineare Intera (PLI) tratta il problema della massimizzazione (minimizzazione) di una funzione di più variabili, soggetta a vincoli

Dettagli

SISTEMI OPERATIVI. Schedulazione della CPU. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)

SISTEMI OPERATIVI. Schedulazione della CPU. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II) SISTEMI OPERATIVI (MODULO DI INFORMATICA II) Schedulazione della CPU Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) Università degli Studi di Bergamo a.a. 2012-13 Sommario Concetti base

Dettagli

I processi. Un processo è una attività, controllata da un programma, che si svolge su un processore.

I processi. Un processo è una attività, controllata da un programma, che si svolge su un processore. I processi Cos è un processo? Un processo è una attività, controllata da un programma, che si svolge su un processore. Il programma è una entità statica che descrive la sequenza di istruzioni che devono

Dettagli

Scheduling della CPU (2) CPU bursts (2)

Scheduling della CPU (2) CPU bursts (2) Scheduling della CPU (1) - La gestione delle risorse impone al SO di prendere decisioni sulla loro assegnazione in base a criteri di efficienza e funzionalità. - Le risorse più importanti, a questo riguardo,

Dettagli

Scheduling. Livelli Algoritmi

Scheduling. Livelli Algoritmi Scheduling Livelli Algoritmi Introduzione Lo scheduling Ha lo scopo di decidere quale processo eseguire in un dato istante Si realizza mediante un componente specifico del sistema operativo Lo scheduler

Dettagli

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t) CONTINUITÀ E DERIVABILITÀ Esercizi proposti 1. Determinare lim M(sin) (M(t) denota la mantissa di t) kπ/ al variare di k in Z. Ove tale limite non esista, discutere l esistenza dei limiti laterali. Identificare

Dettagli

1 Concetti Introduttivi

1 Concetti Introduttivi 1 Concetti Introduttivi 1.1 Real time Esistono vari livelli di real time: Hard si garantisce che ogni job venga eseguito rigorosamente entro un certo lasso di tempo (esempio: comandi per il movimento di

Dettagli

scheduling Riedizione modifi cata delle slide della Prof. DI Stefano

scheduling Riedizione modifi cata delle slide della Prof. DI Stefano scheduling Riedizione modifi cata delle slide della Prof. DI Stefano 1 Scheduling Alternanza di CPU burst e periodi di I/O wait a) processo CPU-bound b) processo I/O bound 2 CPU Scheduler Seleziona uno

Dettagli

Definizione di processo. Un processo è un programma (o una parte di una programma) in corso di esecuzione

Definizione di processo. Un processo è un programma (o una parte di una programma) in corso di esecuzione SISTEMI OPERATIVI (parte prima - gestione dei processi) Tra i compiti di un sistema operativo sicuramente troviamo i seguenti: Gestione dei processi Gestione della memoria Gestione del file-system Ci occuperemo

Dettagli

Ottava Edizione. La Programmazione e Controllo della Produzione Prof. Sergio Cavalieri

Ottava Edizione. La Programmazione e Controllo della Produzione Prof. Sergio Cavalieri Ottava Edizione La e Controllo della Produzione Prof. Sergio Cavalieri e Controllo di Produzione : compiti 2 Rendere disponibili le informazioni necessarie per: Gestire in modo efficiente ed efficace il

Dettagli

Low Power Scheduling per Sistemi Real Time

Low Power Scheduling per Sistemi Real Time Low Power Scheduling per Sistemi Real Time Corso di Sistemi Real Time A.A. 2007-08 Ing. Giordano Kaczynski Sistemi Real Time 1 Introduzione Il consumo di energia nei sistemi portatili negli ultimi anni

Dettagli

Convessità e derivabilità

Convessità e derivabilità Convessità e derivabilità Definizione 1 (convessità per funzioni derivabili) Sia f : (a, b) R derivabile su (a, b). Diremo che f è convessa o concava su (a, b) se per ogni 0 (a,b) il grafico di f sta tutto

Dettagli

Capitolo 6: CPU scheduling

Capitolo 6: CPU scheduling Capitolo 6: CPU scheduling Concetti di base. Criteri di schedulazione. Gli algoritmi di schedulazione. Schedulazione per sistemi multiprocessore. Schedulazione per sistemi in tempo reale. Schedulazione

Dettagli