Ottimizzazione nella gestione dei progetti



Documenti analoghi
Le tecniche di scheduling (1)

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

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

Massimo Paolucci DIST Università di Genova. Metodi per supportare le decisioni relative alla gestione di progetti

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di flusso

IL PROCESSO TECNICO DI SCHEDULAZIONE: TEMPI E COSTI DI UN PROJECT LABORATORIO INTEGRATO DI COSTRUZIONE E PRODUZIONE LEZIONE 4

PERT e CPM Cenni storici

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

IV. TEMPI E RISORSE: STRUMENTI DI PIANIFICAZIONE E CONTROLLO

2.3.4 Pianificazione di progetti

Insegnamento di Gestione e Organizzazione dei Progetti A.A. 2008/9

Le attività di project management

Sequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione

Work Breakdown Structure Diagramma di Gantt PERT/CPM

Sviluppo e Gestione dei Progetti. docente: Prof. Filippo Ghiraldo f.ghiraldo@bep.co.it

Pianificazione e progettazione

Lezione n.15 IL CRONOPROGRAMMA

IL CRONOPROGRAMMA 04/05/2015

Esercizi e complementi di Ottimizzazione nella Gestione dei Progetti

APPUNTI SUI METODI PERT-C.P.M.

PIANIFICAZIONE E PROGRAMMAZIONE DEI LAVORI

Esercizi di Programmazione del progetto

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di Network design

Schedulazione delle attività di un progetto in presenza di multi-calendari

COORDINAMENTO E GESTIONE DI PROGETTI COMPLESSI

Schedulazione delle attività di un progetto in presenza di multi-calendari e di vincoli sulle risorse

1. Considerazioni generali

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo

Gestione parte IIC. Diagrammi di Gantt. Esempio. Schemi di scomposizione delle attività

TECNICHE DI PROGRAMMAZIONE

Gestione dei Progetti ( )

Sviluppo e Gestione dei Progetti. docente: Prof. Filippo Ghiraldo f.ghiraldo@bep.co.it

La gestione dei progetti informatici

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007

ANALISI E MAPPATURA DEI PROCESSI AZIENDALI

Intelligenza Artificiale

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

Processi principali per il completamento del progetto

Funzioni in C. Violetta Lonati

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

Unità Formativa 10.2: Strumenti per la programmazione delle attività.

Macchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:

Ingegneria del Software MINR. Giuseppe Santucci. 04 B - Esercitazione sui diagrammi Pert e Gantt. Gradi di libertà

Gestione Turni. Introduzione

Sistemi Informativi I Pianificazione e Diagrammi GANTT

Automazione Industriale (scheduling+mms) scheduling+mms.

Macchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO

1. PRIME PROPRIETÀ 2

Il primo modulo viene utilizzato per la definizione degli oggetti coinvolti nella schedulazione.

Ricerca non informata in uno spazio di stati

Il Project management. Lo sviluppo di attività complesse in un ottica di progetto

ing. consuelo rodriguez

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

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

Un esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma

Ottimizzazione Multi Obiettivo

Work Breakdown Structure (WBS) (1) Strumenti del Project Management. Work Breakdown Structure (WBS) (2) Work Breakdown Structure (WBS) (3)

Schedulazione di attività in presenza di attività interrompibili

Politecnico di Milano Facoltà di Ingegneria dell Informazione AGENTI AUTONOMI E SISTEMI MULTIAGENTE Appello COGNOME E NOME

Trasformazione dei Processi in Progetti DIB 1

Sistemi Informativi. Introduzione. Processi fisici. Tipologie di processi. Processi informativi. Processi aziendali

Luigi Piroddi

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

Algoritmi e Strutture Dati

Tecniche di Simulazione: Introduzione. N. Del Buono:

Il Diagramma di Gantt

Progettaz. e sviluppo Data Base

STRUTTURE NON LINEARI

Modelli di Programmazione Lineare. PRTLC - Modelli

e-dva - eni-depth Velocity Analysis

1. Classificazione delle risorse

CAPITOLO 3: STIMA DI RISORSE E DURATA DELLE ATTIVITÀ

Appunti sulla Macchina di Turing. Macchina di Turing

Architettura di un calcolatore

TECNICHE DI SIMULAZIONE

Parte 3: Gestione dei progetti, Shop scheduling

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso

Concetti di base di ingegneria del software

SymCAD/C.A.T.S. modulo Canali Schema

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

Esercizio 1 Soluzione Esercizio 2 Soluzione

Gestione del workflow

Corso di Sistemi di Gestione di Basi di Dati. Esercitazione sul controllo di concorrenza 12/02/2004

Capitolo Quarto...2 Le direttive di assemblaggio di ASM Premessa Program Location Counter e direttiva ORG

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

MASTER GESTIONE DEI SERVIZI PORTUALI

RIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

Soluzione dell esercizio del 2 Febbraio 2004

MODELLISTICA DI IMPIANTI E SISTEMI 2

Capitolo II. La forma del valore. 7. La duplice forma in cui si presenta la merce: naturale e di valore.

Approcci esatti per il job shop

Ricerca Operativa e Logistica

Transcript:

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 di eventi (o pietre miliari) e di attività (o task) che devono essere eseguite rispettando vincoli di precedenza. Ogni attività ha una durata e richiede risorse (eventualmente nulle) Un evento si riferisce a un insieme di attività che devono essere completate in un certo istante di tempo Risorse sono, ad esempio, il credito, la forza lavoro, le macchine, l equipaggiamento, l energia, lo spazio, ecc. Vincoli di precedenza fra attività: il più tipico è il vincolo fine/inizio: un attività non può cominciare prima che un altra sia finita. Altri esempi di relazioni temporali: inizio/inizio, fine/fine, inizio/fine, con o senza intervalli di tempo (time lag). Tempo: il tempo viene tipicamente misurato in unità prestailite (ore, giorni, ). Orizzonte temporale l insieme dei periodi richiesti per l esecuzione del progetto o disponiili a priori se in presenza di scadenze (deadline).

Tecniche reticolari Scopi:. Definire lo schedule delle attività, cioè associare a ogni attività un istante iniziale. 2. Permettere l analisi dei ritardi, cioè determinare la durata complessiva del progetto e le attività che la determinano. Input:. L insieme delle attività del progetto 2. La durata di ciascuna attività (certa o incerta) 3. Le precedenze temporali. Metodi classici:. CPM (critical path method): durate certe e relazioni temporali di fine/inizio (certe attività possono cominciare solo dopo che altre sono terminate). 2. MPM (metra potential method): come il CPM, ma con relazioni temporali più complicate (inizio/inizio, fine/fine, inizio/fine) 3. PERT (program evaluation & review techique): come CPM ma durate stocastiche..... GERT, VERT,...)

PERT e CPM PERT (Program evaluation & Review Technique) è stato sviluppato dalla marina americana per la pianificazione e il controllo del programma per la costruizione del missile Polaris. L oiettivo principale era quello di terminare il progetto nel più reve tempo possiile. Il PERT può contemplare il caso di incertezze sui tempi di completamento delle singole attività. Grazie a questa tecnica il tempo di completamento dell intero progetto fu ridotto di due anni. CPM (Critical Path Method) è stato sviluppato da Du Pont. L oiettivo è un compromesso (trade-off) fra il costo del progetto e il suo tempo di completamento (è possiile diminuire il tempo di completamento spendendo di più). Gli attuali modelli matematici (e pacchetti applicativi) non distinguono più così nettamente fra PERT e CPM.

Input: Identificazione delle attività Warehouse Uffici Warehouse Riparazioni Edifici Strade d accesso Interni Infrastrutture Fondamena Muri e tetti Infrastrutture Rete fognaria Piloni Prefaricati Seratoi Antincendio Cemento Muri portanti Fognature Parcheggi Tetto carico/scaric Strade Pavimento porte Attività Le attività vengono identificate nella fase di pianificazione e rappresentate nella WBS (nelle foglie). Per ogni attività si devono determinare la durata e i rapporti di interdipendenza temporali con le altre attività, e le risorse richieste. Le attività e i rapporti di precedenza vengono rappresentati con un grafo orientato

Un esempio Per la produzione di un nuovo prodotto sono state individuate le seguenti attività con relativi tempi di completamento Attività Descrizione Tempo Disegno del prodotto (6 settimane) 2 Disegno della confezione (2 settimane) 3 Ordine e ricezione dei materiali per prodotto (3 settimane) Ordine e ricezione dei materiali per confezione (2 settimane) 5 Assemlaggio dei prodotti ( settimane) 6 Preparazione delle Confezioni ( settimana) Impacchettamento dei prodotti ( settimana) 8 Test di mercato del prodotto (6 settimane) 9 Revisione del prodotto (3 settimane) 0 Revisione della confezione ( settimana) Presentazione dei risultati al CdA ( settimana) Descriviamo le relazioni di precedenza (immediate). deve finire prima che 3 cominci ( < 3). Tutte le relazioni sono di tipo Finish/Start 2 <, 3 < 5, < 6, 5 <, 6 <, < 8, 8 < 9, 8 < 0, 9 <, 0 <.

Rete di attività La rete delle attività (rete delle precedenze, grafo dei vincoli) è un grafo orientato che rappresenta le relazioni di precedenza fra attività. Esistono due possiili rappresentazioni: Rete delle attività G = (V, A) Activity-on-arc: gli archi sono attività e i nodi eventi Activity-on-node: i nodi sono attività ed eventi, gli archi rappresentano vincoli di precedenza

Activity on arc (AoA) Primo tipo di rappresentazione: attività sugli archi. (Activity on Arc). La prima introdotta, ancora in uso talvolta Scarsa applicailità a prolemi con vincoli di precedenza generali e vincoli sulle risorse Archi rappresentano le attività Nodi rappresentano eventi: in particolare, dato l arco (u,v), la coda u è l evento inizio dell attività, mentre il nodo testa v rappresenta l evento fine dell attività. a Es. 2 attività, {a, }; a deve finire prima che 2 3 cominci (a precede, a < ) Eventi: inizio a, 2 fine a, inizio, 3 fine

a 2 3 d c e Proprietà delle reti AoA Activity network con 5 attività: {a,, c, d, e} vincoli di precedenza: {a < c, a < d, < e, c < e}. Un attività può cominciare solo quando tutti i predecessori sono terminati. Si osservi che la relazione di precedenza è transitiva (se a < e < c allora a < c). Proprietà reti AoA: Ogni rete AoA ha un nodo sorgente (il nodo evento inizio progetto) e un nodo pozzo (il nodo evento fine progetto). Tutti gli altri nodi hanno almeno un predecessore e almeno un successore. Fra una coppia di eventi (nodi) c è al più un attività (un arco) grafo semplice I cammini orientati corrispondono ad attività che devono essere eseguite in successione. Le attività che devono rispettare vincoli di precedenza si trovano su uno o più cammini orientati.

Attività ed eventi fittizi Per poter costruire una rete AoA associata a un insieme di attività e relative precedenze, rispettando le regole -, talvolta è necessario aggiungere attività o eventi fittizi (dummy) 2 6 a d 3 5 c e Caso : non esiste un unica attività iniziale o finale Attività: {a,, c, d, e} Precedenze: {a < d, a < e, < d, < e, c < d, c < e} 2 6 a d 3 5 8 c e Si aggiunge un nodo fittizio (il nodo ) per l evento inizio progetto, e archi fittizi dal nodo ai nodi che rappresentano l inizio delle prime attività (sorgenti). Similmente per la la fine del progetto si collegano i pozzi al nodo fine progetto.

Attività ed eventi fittizi Caso 2: presenza di sono archi paralleli Se alcune attività deve essere eseguita in parallelo, e cioè tutte le attività hanno lo stesso evento iniziale e finale, isogna introdurre attività ed eventi fittizi. a c 2 a 2 3 c c a 2 3 Caso 3: rappresentazione dei vincoli di precedenza a c 2 6 3 d Sagliato! Implica a < d 5 Quando i vincoli di precedenza coinvolgono più attività. Es: a < c, < c, < d a c 2 5 6 3 d Corretto: < c ma a e d sono inconfrontaili

Un algoritmo costruttivo Attività: {a,, c, d} Precedenze: {a < c, < c, < d} Per costruire una rete AoA (non ridotta) si può seguire un semplice algoritmo:. Associa a ogni attività un arco disgiunto (gli estremi rappresentano l inizio e la fine dell attività corrispondente) a 2 6 c 8 0 3 5 d 9 2. Aggiungi archi per rappresentare le relazioni di precedenza tra gli eventi di inizio e fine attività 3. Aggiungi i nodi di inizio e fine progetto e relativi archi fittizi

Riduzione La rete può essere ridotta contraendo alcuni archi fittizi a 2 3 5 6 c d 8 9 0 Contrazione arco (u,v): rimuovi l arco (u,v); i nodi u e v diventano uno stesso nodo, e la stella entrante (uscente) del nuovo nodo è l unione delle stelle entranti (uscenti) di u e v. Algoritmo: contrai in sequenza archi fittizi la cui contrazione non crea precedenze inesistenti (ovvero: il grafo contratto non deve contenere cammini orientati passanti per due archi a e, se tali archi non appartengono a un cammino orientato nel grafo originale. a c 2 8 3 5 d 9 0

Activity on Nodes (AoN) Nodi rappresentano attività + due nodi fittizi (inizio e fine progetto). Archi rappresentano relazioni di precedenza. Es. 5 attività {a,, c, d, e}: precedenze (semplici) a < c, a < d, < e, c < d, c < e. s a c d e t Gli unici nodi fittizi sono quelli di inizio e fine progetto. Vanno sempre aggiunti e possono essere utilizzati per rappresentare complesse relazioni di precedenza. L attività inizio progetto ha durata nulla e finisce prima dell inizio di qualunque altra attività del progetto L attività fine progetto ha durata nulla e comincia dopo la fine di qualunque altra attività del progetto

Altre relazioni di precedenza Finora si è vista solo una sola relazione di precedenza, la cosiddetta Finish/Start ( comincia dopo che a è terminato). Questa è l unica facilmente rappresentaile nello standard AoA. Esistono altre relazioni, più complesse, rappresentaili con AoN: ad esempio, un attività può cominciare un certo tempo dopo che un altra è terminata, oppure deve essere eseguita in parallelo. Finish Start: FS ij l attività j deve cominciare dopo che l attività i è finita. Se è richiesto un tempo t di attesa (time lag) minimo prima che j cominci, ad esempio per il lead time si scrive: FS min ij (t) FS min ij (t) i j Esempio: si può posare il parquet solo dopo un po di tempo che il pavimento è stato completato (per l asciugatura) Altre volte si può aspettare al massimo un certo tempo t, nel qual caso si scrive FS ij max (t) Esempio: il corso di OGP non può cominciare più di un anno dopo che il corso di Progetto e Ottimizzazione di Reti è terminato

Altre relazioni di precedenza Start Start: SS ij min (t) l attività j deve cominciare almeno..t unità di tempo dopo che l attività i è cominciata. Analogamente SS ij max (t) significa che j deve cominciare al più t unità di tempo dopo che l attività i ècominciata Esempio: stendere l asfalto e spianarlo: la spianatura deve cominciare un po dopo che si è cominciato a stendere l asfalto ma non troppo dopo (altrimenti l asfalto si raffredda). Finish Finish: FF ij min (t), FF ij max (t), l attività j deve finire dopo che l attività i è finita. Start Finish: SF ij min (t), SF ij max (t), l attività j deve finire dopo l attività i è cominciata. Esempio: un vecchio impianto produttivo può essere fermato solo dopo che quello nuovo ha cominciato a operare.

Esempi di relazioni complesse L attività j deve cominciare al massimo dopo 6 settimane (unità di tempo) dopo l inizio del progetto max SS j (6) j L attività j deve cominciare esattamente 5 settimane dopo che l attività i èfinita. i min FS ij (5) j max FS ij (5) Il progetto deve terminare entro e non oltre tre settimane. max SF n (3) n

Il grafo delle precedenze Le relazioni di precedenza generalizzate vengono rappresentate mediante il grafo delle precedenze generalizzate H(V,F). V = {,,n} insieme delle attività, inizio progetto, 0 fine progetto. Esempio di grafo di precedenze (generalizzate) (De Reyck (998)) 0 SS min (2) SS min (0) SS min (2) 3 3 FF max (3) SS min () FF max () FS 2 min () 2 FS max (3) FS max (3) SS min (2) 6 FF min (2) 9 SS min () 6 FS 8 min (0) FF min (2) 5 SF min (0) SF min (6) SF max () 5 FS min (2) FS max (3) 0 0 Il grafo delle precedenze generalizzate è l input per la costruzione del grafo dei vincoli.

0 SS min (2) SS min (0) SS min (2) Nodi e precedenze fittizie SS min () 3 FF max () 6 FF min (2) 9 FF max (3) SS min () 2 FS min () 6 8 FS min (0) 2 FF min (2) SS min (2) 3 5 SF min (0) SF min (6) 5 SF max () FS max (3) FS max (3) FS min (2) FS max (3) Le relazioni di precedenza fra i nodi fittizi e gli altri nodi del grafo vengono spesso omesse (tranne quelle immediate ) nelle rappresentazioni grafiche. L attività inizio progetto ha durata nulla e finisce prima dell inizio di qualunque altra attività del progetto. Spesso vengono solo rappresentate le relazioni fra in nodo e le attività (riconosciute come) iniziali. L attività fine progetto ha durata nulla e comincia dopo la fine di qualunque altra attività del progetto. Spesso vengono solo rappresentate le relazioni fra le attività riconosciute come finali e il nodo n di fine progetto. In realtà, tutte le relazioni fittizie devono essere considerate negli algoritmi per la costruzione dei piani delle attività. 0 0