Operations Management

Documenti analoghi
Introduzione al Project Scheduling

Introduzione al Project Scheduling

Project Scheduling: CPM time analysis

Il progetto e la gestione

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

PROBLEMI SU GRAFO (combinatori)

Attività Precedenze Tempo (gg) A - 5 B - 10 C A 3 D B 2 E B 4 F C, D 6 G F, E 3

Gestione dei Progetti di Innovazione. C.d.L. INGEGNERIA INFORMATICA AUTOMATICA ELETTRONICA delle TELECOMUNICAZIONI. Corso di

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

Progetti di ricerca: cenni metodologici. Alessandro Tuccio Provincia Autonoma di Trento Servizio Università e ricerca scientifica

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

COLLEGIO DEI PERITI AGRARI E DEI PERITI AGRARI LAUREATI DELLA PROVINCIA DI SALERNO

attività Unità 10.2 Strumenti per la calendarizzazione: GANTT e PERT Agenzia nazionale LLP - Programma settoriale Leonardo da Vinci 1

Processi di cost management - Programmazione multiperiodale

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

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi

Project Management. Nozioni fondamentali. Definizione di Project Management. Prof.ssa E. Gentile a.a

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

Esame di Ricerca Operativa del 19/07/19. Esercizio 1. (a) Risolvere mediante il metodo del simplesso il seguente problema di programmazione lineare:

CPM - PERT CPM - PERT. Rappresentazione di un progetto. Gestione di un progetto. Critical Path Method Project Evaluation and Review Technique

Project Scheduling: PERT. Il PERT ha potenzialità superiori rispetto a quelle di un semplice mezzo per la pianificazione ed il controllo.

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Tecniche reticolari di programmazione delle attività

Flusso a Costo Minimo

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Le attività di project management 2

12.1 IL PROBLEMA DEL CAMMINO MINIMO: L ALGORITMO DI DIJKSTRA

1) Disegnare la rete di progetto con le attività sugli archi, e la rete di progetto con le attività sui nodi.

Ingegneria del Software

Schedulazione di Multi-progetti

IL PROJECT MANAGEMENT COME FATTORE DI SUCCESSO, CULTURA E PROFESSIONE. incontro 18 set a parte

Modelli di Programmazione Lineare. PRTLC - Modelli

2.3.5 Pianificazione di progetti

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

Pianificazione dei progetti

11.4 Chiusura transitiva

Esame di Ricerca Operativa del 07/06/2019

Calcolo del percorso critico. Tiziano Villa, PMP CMC PMLAB 2012

Definizione 1.3 (Arco accoppiato) Un arco è accoppiato se è appartenente al matching M.

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

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

FACOLTA DI ECONOMIA ESAME SCRITTO DI RICERCA OPERATIVA. Verona, 6 Giugno 1996

La Gestione dei Progetti (Project Management): fasi, organizzazione, strumenti e tecniche

Grafi e Funzioni di Costo ESERCIZI

Tecniche euristiche greedy

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

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I

GANTT CHART: COME SI COSTRUISCE

Linea di 4 macchine con buffer

PROBLEMA DEI CAMMINI MINIMI [CORMEN ET AL. CAP. 24] Il costo di cammino minimo da un vertice u ad un vertice v è definito nel seguente modo:

Capitolo 8. Pianificare e programmare le operations

Introduzione ai diagrammi reticolari

CASO 1) Pesi positivi ( diretto o indiretto) Algoritmo di Dijkstra

Progettazione di Algoritmi

Redazione e Presentazione di Progetti Informatici

Ricerca Operativa. D.U.T. in Ingegneria Informatica D.U.T. in Ingegneria Logistica e della Produzione 18/05/2002

1 TEORIA DELLE RETI 1. 1 Teoria delle reti. 1.1 Grafi

Università degli Studi di Napoli "Federico II" - Facoltà di Ingegneria Corso di Ricerca Operativa - Prova d'esame del (Prof.

Esercizi proposti nel Cap Soluzioni. Esercizio 14.1

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014

Esercitazione 6 Algorithmi e Strutture Dati (Informatica) A.A 2015/2016

Grafo per n/m/g/c max r i =0

Richiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Primo appello 30 gennaio Esercizio 1.

TEORIA DEI GRAFI. Tecniche reticolari

Algoritmi e Strutture di Dati

3.3 Problemi di PLI facili

Programmazione Dinamica (PD)

Programmazione della produzione nei sistemi automatizzati

Corso di Automazione industriale

GARA SECONDARIA DI PRIMO GRADO INDIVIDUALE

Esercizio 1. min. Esercizio 2. Esercizio 3

Sviluppo e Gestione di Progetti

INSTRADAMENTO: ALGORITMO DI BELLMAN-FORD

Cenni di schedulazione in tempo reale. E.Mumolo

A) Assumere un responsabile di vendita B) Stabilire il prezzo del prodotto C) Assumere gli agenti di vendita D) Istruire gli agenti di vendita E)

Progettazione di Algoritmi. Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Preappello del 12 giugno Attenzione:

A-2 a PI. Esercizio 2. Domanda 3

I.4 Rappresentazione dell informazione

Introduzione alla programmazione

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

Politecnico di Milano I a Facoltà di Ingegneria C.S. in Ing. per l Ambiente e il Territorio

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

Lezione 1. Le tipologie di problemi di gestione della produzione e delle reti logistiche

Progettazione di Algoritmi (4, 6, 9 CFU) Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Appello del 30 Gennaio 2019.

GARA SECONDARIA DI PRIMO GRADO INDIVIDUALE

Esame di Ricerca Operativa del 11/02/2015

RICERCA OPERATIVA. Stock bamboline automobiline libri peluches costo (euro)

Esercizio 1. Esercizio 2

Schedulazione real-time di task PERIODICI

Risoluzione di un problema di VRP

Introduzione ai Problemi di Flusso su Reti

Risoluzione di un problema

Esame di Ricerca Operativa del 20/02/18

2.3.4 Pianificazione di progetti

Dipartimento di Ingegneria Meccanica Chimica e dei IMPIANTI MECCANICI. Esercitazione GESTIONE PROGETTI. Prof. Ing. Maria Teresa Pilloni

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04

Introduzione alla programmazione Esercizi risolti

Transcript:

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 SCHEDULAZIONE DI PROGETTI I modelli e i metodi finora analizzati possono essere efficacemente utilizzati per la schedulazione di operazioni che devono essere eseguite con continuità o con sensibile frequenza come tipicamente avviene nell ambito della gestione operativa dei processi di produzione. Un progetto, invece, è costituito da una serie di attività tra loro correlate che richiedono tempi e risorse consistenti. Esempi di progetti sono la costruzione di strutture ed infrastrutture, la realizzazione di un sistema informativo, il lancio di un prodotto sul mercato, la realizzazione di eventi straordinari (es: mostre, fiere). Dagli esempi fatti si comprende che un progetto è caratterizzato dal fatto di avere un inizio ed una fine ben precisi e di essere realizzato una tantum. Per una realizzazione efficace ed efficiente, è necessario programmare e coordinare le attività, controllare i tempi e i costi nella fase di avanzamento, gestire le risorse (umane, finanziare e tecnologiche) a disposizione. Le metodologie e le tecniche di supporto per la programmazione e la gestione di progetti che consentono di realizzare queste attività sono note come tecniche di Project Management. Una tecnica di Project Management di importanza fondamentale è la tecnica PERT (Project Evaluation Review Technique), sviluppata tra il 198 e il 199 per la gestione di progetti di carattere militare e successivamente applicata con successo in campo civile. La tecnica PERT, oggi ampiamente diffusa e consolidata, consente di definire le relazioni di interdipendenza tra le attività, di valutare i tempi di realizzazione, di pianificare l uso delle risorse, di individuare le conseguenze di e- ventuali variazioni nella programmazione e/o nella gestione delle attività. Il PERT si basa sulla rappresentazione di un progetto attraverso un grafo, detto anche reticolo PERT. Ciascuna attività viene rappresentata con un arco orientato: il nodo origine è detto evento inizio dell attività mentre il nodo destinazione è detto evento fine dell attività (Figura 6.4). Un progetto è rappresentato da un grafo orientato caratterizzato dalle seguenti proprietà: Evento inizio Evento fine FIG. 6.4 - Rappresentazione di una attività

22 Capitolo sesto - Esiste un solo nodo del grafo I nel quale non entrano archi del grafo; tale nodo è l evento inizio del progetto. - Esiste un solo nodo del grafo F dal quale non escono archi del grafo; tale nodo è l evento fine del progetto. - Il grafo non presenta cicli. - Non esistono archi paralleli, ovvero archi aventi stessa origine e stessa destinazione Le proprietà (1) e (2) consentono di individuare univocamente l inizio e la fine del progetto. La proprietà (3) è necessaria per evitare il paradosso che un attività debba seguire se stessa. La proprietà (4) serve ad evitare confusione tra le attività nella fase di schedulazione. Se ad ogni arco (i, j) si associa la durata d ij dell attività si può valutare la durata minima del progetto, individuando il percorso tra l evento inizio e l evento fine del progetto di durata massima. Il percorso così individuato è detto percorso critico e le attività che lo compongono attività critiche. La lunghezza del percorso critico coincide con la durata minima del progetto. Una durata minore del progetto, infatti, implicherebbe che alcune delle attività critiche non potrebbero essere completate. In Figura 6.46 è riportato il reticolo PERT, che rispetta le proprietà (1 4), con l indicazione del percorso e delle attività critiche. Per individuare il percorso critico si può trasformare il problema in un problema di minimo percorso cambiando il segno al peso degli archi. In questo modo, poiché per la proprietà (3) il grafo è aciclico, si può applicare un algoritmo di minimo percorso che funzioni in presenza di archi con costi negativi (es: algoritmo di Ford-Moore-Bellmann). 1 7 4 4 3 2 I 2 6 7 F 2 3 8 6 FIG. 6.46 - Reticolo PERT e percorso critico

I problemi di scheduling 23 Un modo alternativo più intuitivamente legato al problema della schedulazione del progetto si basa sulla definizione di alcuni parametri associati agli eventi ed alle attività. In particolare per ogni evento i si definiscono i seguenti parametri: Tempo al più presto (earliest time) tp i E il tempo in corrispondenza del quale l evento può verificarsi al più presto a condizione che tutte le attività precedenti siano state completate al più presto. Tempo al più tardi (latest time) tt i E il tempo in corrispondenza del quale l evento può verificarsi al più tardi senza modificare la durata del progetto. Scorrimento (slack time) sl i E la differenza tra il tempo al più tardi e il tempo al più presto dell evento (sl i = tt i - tp i ). Lo scorrimento indica di quanto l evento può essere ritardato rispetto al suo tempo al più presto senza alterare la durata del progetto. Un evento è critico se il suo scorrimento è nullo o, in altri termini, se il tempo al più presto e quello al più tardi coincidono. Questo comporta che un evento critico è fissato nel tempo. Per ogni attività (i,j) si definiscono: Tempo di inizio al più presto (earliest start time) tip ij E il tempo in corrispondenza del quale l attività può iniziare al più presto a condizione che tutte le attività precedenti siano state completate al più presto. Per definizione esso coincide con il tempo al più presto dell evento inizio dell attività tp i. Tempo di fine al più presto (earliest finish time) tfp ij E il tempo in corrispondenza del quale l attività può completarsi al più presto a condizione che tutte le attività precedenti siano state completate. Esso è dato dalla somma del tempo di inizio al più presto e della durata dell attività tfp ij = tp i + d ij. Tempo di inizio al più tardi (earliest finish time) tit ij E il tempo in corrispondenza del quale l attività può iniziare al più tardi a condizione che tutte le attività precedenti siano state completate senza modificare la durata del progetto. Esso è dato dalla differenza tra il tempo al più tardi dell evento fine e la durata dell attività tit ij = tt j - d ij.

24 Capitolo sesto Tempo di fine al più tardi (latest finish time) tft ij E il tempo in corrispondenza del quale l attività può finire al più tardi senza modificare la durata del progetto. Per definizione esso coincide con il tempo al più tardi dell evento fine dell attività tt j. Scorrimento dell attività (slack time) sl ij E la differenza tra il tempo di inizio al più tardi tit ij e il tempo di inizio al più presto tip ij dell attività ovvero sl ij = tit ij - tip ij = (tt j - d ij ) - tp i. Lo scorrimento indica di quanto l inizio di un attività può essere ritardata rispetto al suo tempo di inizio al più presto senza alterare la durata del progetto. Un attività è critica se il suo scorrimento è nullo o, in altri termini, se il tempo di inizio al più presto e quello al più tardi coincidono. Questo comporta che un attività critica è fissata nel tempo e un eventuale ritardo nel completamento provocherebbe un aumento della durata del progetto. In Figura 6.47 è illustrato il significato di alcune delle variabili introdotte. Schedulare un progetto significa individuare i tempi al più presto ed al più tardi di ciascun evento dai quali si ricavano gli altri parametri indicati. A tale scopo di utilizzano le seguenti procedure. Calcolo dei tempi al più presto Per definizione il tempo al più presto di un evento i è il tempo in corrispondenza del quale l evento può verificarsi al più presto a condizione che tutte le attività precedenti siano state completate al più presto. Pertanto deve risultare tp i tp k + d ki k: esiste l attività (k,i) In caso contrario, infatti, qualche attività (k,i) si completerebbe oltre il proprio tempo al più presto dell evento i. d ij + sl ij d ij + sl ij d ij d ij (i, j) sl ij sl ij (i, j) tip ij = tp i tfp ij tft ij =tt j t tip ij = tp i tip ij FIG. 6.47 - Parametri relativi ad eventi ed attività j tft ij =tt j t

I problemi di scheduling 2 Di conseguenza esso è dato da tp i = max k (tp k + d ki ) k: esiste l attività (k,i) Per valutare il tempo al più presto di un evento i, quindi, è necessario aver già calcolato il tempo al più presto di ciascun evento k direttamente collegato ad i da un attività (k, i). Per questa ragione, fissato per convenzione un valore del tempo al più presto dell evento inizio (ad esempio 0), i tempi al più presto si calcolano mano mano dall evento inizio del progetto avanzando verso l evento fine del progetto. Calcolo dei tempi al più tardi Per definizione il tempo al più tardi di un evento i è il tempo in corrispondenza del quale l evento può verificarsi al più tardi senza ritardare la schedulazione del progetto. Di conseguenza deve verificarsi che tt k tt i + d ik k: esiste l attività (i, k) In caso contrario, infatti, qualche attività (i, k) si completerebbe oltre il proprio tempo al più tardi. Pertanto il il tempo al più tardi di un evento i è dato da tt i = min k (tt k - d ik ) k: esiste l attività (i, k) Per valutare il tempo al più tardi di un evento i è quindi necessario aver già calcolato il tempo al più tardi di ciascun evento k direttamente collegato a i da un attività (i,k). Di conseguenza, fissato il valore del tempo al più tardi dell evento fine del progetto pari al suo tempo al più presto (tp F =tt F ) i tempi al più tardi si possono calcolare con una procedura che dall evento fine del progetto retrocede verso l evento inizio del progetto. In Figura 6.48 sono illustrate schematicamente le regole per il calcolo dei tempi al più presto ed al più tardi dei singoli eventi. tp i = max k (tp k + d ki ) tp k k d ki i tt i = min k (tt k - d ik ) i d ik k tt k FIG. 6.48 - Tempi al più presto e al più tardi degli eventi

26 Capitolo sesto Una volta individuati i parametri associati alle attività è possibile determinare la schedulazione del progetto. In particolare la schedulazione al più presto prevede che le attività abbiano inizio a partire dal proprio tempo di inizio al più presto. Nella schedulazione al più tardi, invece, le attività partono dal tempo di inizio al più tardi e, quindi terminano in corrispondenza del tempo di fine al più tardi. Esempio Il reticolo PERT di Figura 6.49 rappresenta un progetto costituito da 10 attività per il quale si vuole definire la durata minima e i parametri relativi agli eventi ed alle attività. In Figura 6.0 è indicato il calcolo progressivo dei parametri associati agli eventi (tempo al più presto, tempo al più presto e scorrimento) mentre in Figura 6.1 quello relativo alle attività (tempo di inizio al più presto, tempo di fine al più presto, tempo di fine al più presto e scorrimento). La durata minima del progetto è pari a 1; il percorso critico è costituito dalle attività critiche (I,3), (3,4), (4,F) che sono caratterizzate da valori nullo dello scorrimento. Gli eventi I, 3, 4 ed F sono critici perché presentano scorrimenti nulli. Come si può notare gli eventi inizio e fine associati ad attività critiche sono sempre critici. Non è detto, però, che attività comprese tra eventi critici siano sicuramente critiche; se si considera, ad esempio, l attività (3, F), essa, pur essendo compresa tra due eventi critici, presenta uno scorrimento pari a 3. In Figura 6.49, insieme al reticolo PERT, sono riportati i parametri relativi agli eventi secondo la legenda indicata. In Figura 6.2 è illustrato il diagramma di Gantt relativo alla schedulazione delle attività a partire dal tempo di inizio al più presto compatibile con la durata minima del progetto. Le attività critiche sono rappresentate consecutivamente mentre le altre attività sono riportate secondo il tempo di inizio non decrescente. I 0 0 0 Evento Tempo al più tardi j 0 0 0 1 3 4 1 3 2 4 6 I 3 1 1 4 2 1 3 2 3 2 Tempo al più presto Scorrimento 4 10 10 0 6 F 3 6 6 0 F 1 7 1 1 FIG. 6.49 - Reticolo PERT e percorso critico

I problemi di scheduling 27 Evento j Tempo al più presto tp j Evento j Tempo al più tardi tt j Scorrimento I tp I = 0 F tt F = 1 sl F = 1-1 tp 1 = 0+3 =3 4 tt 4 = 1- =10 sl 4 = 10-10=0 2 tp 2 = 0+1 =1 3 tt 3 =min(10-4, 1-6)=6 sl 3 = 6-6=0 3 tp 3 = max(1+3, 0+6, 1+4)=6 2 tt 2 = min(1-7, 6-2)=4 sl 2 = 3-1=2 4 tp 4 = max(3+, 6+4)=10 1 tt 1 = min(10-, 6-2)=4 sl 1 = 4-3=1 F tp F =max(1+7,6+6,10+)=1 I tt I = min(6-6,3-1,4-3)=0 sl I = 0-0=0 Attività (i,j) Tempo di inizio al più presto tip ij FIG. 6.0 - Calcolo parametri relativi agli eventi Tempo di fine al più presto tfp ij Tempo di fine al più tardi tft ij Scorrimento I-1 tip I1 = tp I =0 tfp I1 =tp I + d I1 =0+3=3 tft I1 = tf 1 =4 sl I1 = 4-3=1 I-2 tip I2 = tp I =0 tfp I2 =tp I + d I2 =0+1=1 tft I2 = tf 2 =3 sl I2 = 3-1=2 I-3 tip I3 = tp I =0 tfp I3 =tp I + d I3 =0+6=6 tft I3 = tf 3 =6 sl I3 = 6-6=0 1-3 tip 13 = tp 1 =3 tfp 13 =tp 1 +d 13 =3+2= tft 13 = tf 3 =6 sl 13 = 6-=1 1-4 tip 14 = tp 1 =3 tfp 14 =tp 1 +d 14 =3+=8 tft 14 = tf 4 =10 sl 14 = 10-8=2 2-3 tip 23 = tp 2 =1 tfp 23 =tp 2 +d 23 =1+3=4 tft 23 = tf 3 =6 sl 23 = 6-4=2 2-F tip 2F = tp 2 =1 tfp 2F =tp 2 +d 2F =1+7=8 tft 2F = tf F =1 sl 2F = 1-8=7 3-4 tip 34 = tp 3 =6 tfp 34 =tp 3 +d 34 =6+4=10 tft 34 = tf 4 =10 sl 34 = 10-10=0 3-F tip 3F = tp 3 =6 tfp 3F =tp 3 +d 3F =6+6=12 tft 3F = tf F =1 sl 3F = 1-12=3 4-F tip 4F = tp 4 =10 tfp 4F =tp 4 +d 4F =10+=1 tft 4F = tf F =1 sl 4F = 1-1=0 FIG. 6.1 - Calcolo parametri relativi alle attività I-2 I-1 2-3 1-3 2-F 1-4 I-6 3-4 4-F 0 1 2 3 4 6 7 8 9 10 11 12 13 14 1 t FIG. 6.2 - Schedulazione al più presto del progetto di Figura 6.43 3-F