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



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

Schedulazione di attività in presenza di attività interrompibili

Algoritmo proposto. Maria Silvia Pini, Francesca Rossi, K. Brent Venable. Dipartimento di Matematica Pura e Applicata Università di Padova

Ottimizzazione Multi Obiettivo

COORDINAMENTO E GESTIONE DI PROGETTI COMPLESSI

TSP con eliminazione di sottocicli

Programma Gestione Presenze Manuale autorizzatore. Versione /08/2010. Area Sistemi Informatici - Università di Pisa

TSP con eliminazione di sottocicli

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

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P P P P P P < P 1, >

Alberi binari di ricerca

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

Dimensione di uno Spazio vettoriale

Le tecniche di scheduling (1)

Informazioni relative al Decreto legislativo 30 giugno 2003, n Codice in materia di protezione dei dati personali

Programmazione dinamica

Esercizi Capitolo 6 - Alberi binari di ricerca

Tecniche di Simulazione: Introduzione. N. Del Buono:

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

Algoritmi e strutture dati. Codici di Huffman

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

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

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

Scheduling della CPU:

e-dva - eni-depth Velocity Analysis

APPUNTI SUI METODI PERT-C.P.M.

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

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

Appunti di Sistemi Elettronici

RETI DI TELECOMUNICAZIONE

Note su quicksort per ASD (DRAFT)

AA LA RICORSIONE

2. Leggi finanziarie di capitalizzazione

PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO

B+Trees. Introduzione

Quintiq stabilisce un nuovo standard per la pianificazione delle risorse nel settore ferroviario

(a cura di Francesca Godioli)

Metodi Computazionali

Algoritmi e Strutture Dati

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

Sottocaso b) la data di nascita cade a distanza di 1 anno da un anno bisestile :

4 3 4 = 4 x x x 10 0 aaa

Plate Locator Riconoscimento Automatico di Targhe

SCHEDULATORI DI PROCESSO

VC-dimension: Esempio

Documento di analisi del modulo Fluxus per. Tailback. Fluxus release Firenze, lì 8 novembre Autore : Gianni Portunato

Algoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 11

IN COLLABORAZIONE CON OPTA SRL

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

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

da 2 a 5 giocatori, dai 10 anni in su, durata 30 minuti

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

Riassunto di Sistemi in Tempo Reale LS

ESTRAZIONE DI RADICE

Modelli di Programmazione Lineare e Programmazione Lineare Intera

Software per Helpdesk

Elementi di Psicometria con Laboratorio di SPSS 1

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

FLASHINVESTOR Manuale dell Utente

Attività 9. La città fangosa Minimal Spanning Trees

1. Classificazione delle risorse

1. Considerazioni generali

Codifica dei numeri negativi

2.3.4 Pianificazione di progetti

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

Statistica Matematica A - Ing. Meccanica, Aerospaziale I prova in itinere - 19 novembre 2004

Problemi di localizzazione impianti

Change Management. Obiettivi. Definizioni. Responsabilità. Attività. Input. Funzioni

Metodi e Modelli Matematici di Probabilità per la Gestione

I PROBLEMI ALGEBRICI

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

Algoritmi di Ricerca. Esempi di programmi Java

MAGAZZINO FISCALE (agg. alla rel )

Approcci esatti per il job shop

Scheduling della CPU Simulazione in linguaggio Java

Prodotto Disponibilità Costo e rispettando le seguenti regole di composizione delle benzine:

QUICK REFERENCES TIMER HODIE. Timer Hodie 07/06/2012

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Prof. Ing. Michele Marra - Appunti delle Lezioni di Ricerca Operativa Sequenze CAPITOLO II

Principi di Schedulazione in tempo reale

Sistemi Operativi Kernel

Ricerca Operativa e Logistica

Funzioni in C. Violetta Lonati

Esercitazione Informatica I AA Nicola Paoletti

Problema del trasporto

Strumenti per il Project Management. GanttProject cos è e come si usa. GanttProject

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Per poter affrontare il problema abbiamo bisogno di parlare di probabilità (almeno in maniera intuitiva). Analizziamo alcune situazioni concrete.

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.

SISTEMI OPERATIVI. Deadlock (blocco critico) Domande di verifica. Luca Orrù Centro Multimediale Montiferru 04/06/2007

Ragionamento Automatico Model checking. Lezione 12 Ragionamento Automatico Carlucci Aiello, 2004/05Lezione Sommario. Formulazione del problema

Università degli Studi di Salerno

Calcolo del Valore Attuale Netto (VAN)

Eliminare il messaggio "Rete non identificata" da Windows 7

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Algoritmi e Strutture Dati

COSTER. Import/Export su SWC701. SwcImportExport

Transcript:

Schedulazione delle attività di un progetto in presenza di multi-calendari e di vincoli sulle risorse Maria Silvia Pini Resp. accademico: Prof.ssa Francesca Rossi Università di Padova Attività FSE DGR 1102/2010 La gestione dell informazione nell azienda Schedulazione intelligente di attività in presenza di risorse limitate e matching stabile ed efficiente tra domanda e offerta

Il problema Schedulazione delle attivita di un progetto Vincoli temporali Alcune attivita devono essere eseguite prima di altre Vincoli di calendario Ogni attivita ha un proprio calendario Vincoli sulle risorse Ogni risorsa k ha una capacita limitata R k Processare l attivita i nell intervallo [Si,Ci[ richiede r ik unita di risorsa Si e il tempo di inizio dell attivita i Ci e il tempo di completamento dell attivita i Scopo: trovare una schedulazione feasible (dal punto di vista delle risorse e dal punto di vista dei calendari) che minimizza la durata del progetto

L algoritmo - 1 Per risolvere il nostro problema vedremo un metodo che si basa sulle priorita [Franck et al. 2001] Sia < un ordinamento stretto nell insieme delle attivita Siano i e j due attivita i < j se dij>0 oppure dij=0 e dji<0 dove dij e la lunghezza del piu lungo cammino dal nodo i al nodo j nel grafo delle dipendenze tra le attivita L algoritmo schedula le attivita una dopo l altra

L algoritmo - 2 Sia C l insieme delle attivita gia schedulate Sia C l insieme delle attivita da schedulare Ad ogni iterazione Un attivita eligible di C viene schedulata al suo minimo tempo di inizio che e fattibile dal punto di vista delle risorse (t* = ESj*, a condizione che t* LSj*) Un attivita eligible j* e un attivita che non e ancora stata schedulata e le cui attivita i<j* nell ordinamento sono gia state schedulate ESj*= primo istante di inizio possibile per l attivita j* LSj*= ultimo istante di inizio possibile per l attivita j*

L algoritmo - 3 Se ci sono piu attivita eligible j* viene scelto secondo una regola di priorita La miglior regola di priorita seleziona l attivita eligible con il piu piccolo tempo di inizio finale In seguito vengono aggiornati i primi e gli ultimi istanti di inizio delle varie attivita non ancora schedulate i C, vengono aggiornati ESi e LSi Per aggiornare ESi si usa l algoritmo visto nella presentazione precedente (senza vincoli sulle risorse) ALG.1 (schedulazione al piu presto) LSi si usa un algoritmo simile a quello visto nella presentazione precedente ALG.2 (schedulazione al piu tardi) Poi vengono aggiornate le capacita delle risorse

L algoritmo - 4 If t*> LSj* L attivita j* non puo essere shedulata senza violare un vincolo temporale con qualche attivita i gia schedulata Facciamo un passo di non-schedulazione rimuoviamo da C (l insieme delle attivita gia schedulate) tutte le attivita h che hanno tempo di inizio minore o uguale a quello di i, cioe S h S i Aumentiamo il primo tempo di inizio possibile per l attivita i, cioe ESi, di t*- LSj*

ALG. 1 (schedulazione al piu presto) Per aggiornare ESi delle attivita i non ancora schedulate si utilizza l algoritmo che abbiamo presentato nella riunione precedente Inizialmente ES (0, -,, - ) Poi le attivita sono ritardate finche tutti i vincoli di Poi le attivita sono ritardate finche tutti i vincoli di calendario sono soddisfatti Consideriamo poi una coda Q che contiene le attivita 1, 2, n, n+1, in cui e stato determinato un tempo di inizio anticipato In ogni iterazione, eliminiamo un attivita i dalla coda Q

ALG. 2 (schedulazione al piu tardi) Per aggiornare LSi delle attivita i non ancora schedulate si utilizza un algoritmo simile al precedente Sia d la data di consegna del progetto o la massima durata del del progetto Partiamo con LS (0,,,, d ) Poi e attivita sono anticipate finche tutti i vincoli di calendario sono soddisfatti Consideriamo una coda Q che contiene le attivita 0 e n+1 In ogni iterazione Prima eliminiamo un attivita j dalla coda Q e settiamo LSj=t* (ultimo tempo di inizio dell attivita j permesso dal calendario bj) Poi settiamo il potenziale ultimo tempo di inizio LSi, i predecessore di j, con il piu grande tempo t* tale che LSj t* min(d,lsi) e bij( s) ds t* dij