SCHEDULING SCHEDULING

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "SCHEDULING SCHEDULING"

Transcript

1 Corso di Laurea Triennale in INGEGNERIA GESTIONALE Anno Accademico 2012/13 Prof. Davide GIGLIO 1

2 INDICE Esempio Introduttivo Generalità sui problemi di scheduling SINGLE MACHINE SPT (shortest processing time) scheduling EDD (earliest due date) scheduling Algoritmo di Moore Algoritmo di Smith FLOW-SHOP E JOB-SHOP Algoritmi di Johnson DI TASK PERIODICI SU SINGLE MACHINE Priority scheduling Timeline scheduling 2

3 ESEMPIO INTRODUTTIVO Quattro ragazzi (Anna, Bruno, Carla e Diego) abitano nello stesso appartamento Ogni sabato mattina comprano quattro quotidiani (La Repubblica, Corriere della Sera, La Stampa e Gazzetta dello Sport) che ciascuno vuole leggere nel proprio ordine preferito e per la durata che vuole Anna vuole leggere la Repubblica per 1 ora, poi il Corriere per 30 minuti, poi la Stampa per 2 minuti e infine la Gazzetta per 5 minuti Bruno vuole leggere il Corriere per 1 ora e 15 minuti, poi la Stampa per 3 minuti, poi la Repubblica per 25 minuti e infine la Gazzetta per 10 minuti Carla vuole leggere la Stampa per 5 minuti, poi il Corriere per 15 minuti, poi la Repubblica per 10 minuti e infine la Gazzetta per 30 minuti Diego vuole leggere la Gazzetta per 1 ora e 30 minuti, poi la Repubblica per 1 minuto, poi il Corriere per 1 minuto e infine la Stampa per 1 minuto I ragazzi sono molto abitudinari e quindi preferiscono aspettare che un giornale si liberi piuttosto che cambiare la propria sequenza preferita 3

4 ESEMPIO INTRODUTTIVO I ragazzi si alzano ad orari differenti e appena alzati possono e vogliono iniziare a leggere i giornali Anna si alza alle 8:30 Bruno si alza alle 8:45 Carla si alza alle 8:45 Diego si alza alle 9:30 Premesso che nessuno vuole uscire prima di avere concluso la lettura di tutti i giornali, qual è il più presto istante di tempo in cui i ragazzi possono uscire di casa? Questo è un problema di scheduling Trovare l ordine secondo cui i 4 giornali sono letti dai 4 ragazzi in modo da finire prima possibile 4

5 Un possibile schedule è il seguente ESEMPIO INTRODUTTIVO Repubblica Corriere Stampa Gazzetta Anna Diego Carla Bruno Bruno Carla Anna Diego Carla Bruno Anna Diego Diego Anna Carla Bruno a cui corrisponde il seguente Diagramma di Gantt Repubblica A D C B Corriere B C A D Stampa Gazzetta C B A D D A C B 8:30 9:00 10:00 11:00 12:00 11:51 5

6 ESEMPIO INTRODUTTIVO Quello appena visto è uno schedule ammissibile ( feasible ) ma non necessariamente ottimo Si osservi come il fatto di dovere rispettare la sequenza di lettura desiderata dai quattro ragazzi, fa sì che vi siano degli intervalli di tempo in cui alcuni giornali non vengono letti da nessuno, anche se vi sono delle persone che non stanno leggendo e devono ancora leggere tali giornali Ad esempio, Bruno alle 11:05 non sta leggendo e vi è libera la Gazzetta che lui non ha ancora letto; ma Bruno prima della Gazzetta vuole leggere la Repubblica che però è occupata; la conseguenza è che sia Bruno che la Gazzetta rimangono non attivi 6

7 ESEMPIO INTRODUTTIVO Non tutte le combinazioni sono possibili Un esempio di schedule non ammissibile è il seguente Repubblica Corriere Stampa Gazzetta Diego Bruno Anna Carla Diego Carla Bruno Anna Diego Bruno Carla Anna Anna Diego Carla Bruno La non ammissibilità è dovuta al fatto che Anna non può iniziare a leggere la Gazzetta prima di avere letto gli altri tre giornali (in particolare la Repubblica che è bloccata da Diego) e Diego non può iniziare a leggere la Repubblica prima di avere letto la Gazzetta (che è bloccata da Anna) 7

8 Uno schedule migliore è il seguente ESEMPIO INTRODUTTIVO Repubblica Corriere Stampa Gazzetta Anna Bruno Carla Diego Bruno Carla Anna Diego Carla Bruno Anna Diego Diego Anna Carla Bruno a cui corrisponde il seguente Diagramma di Gantt Repubblica A B C D Corriere B C A D Stampa Gazzetta C B A D D A C B 8:30 9:00 10:00 11:00 12:00 11:45 8

9 ESEMPIO INTRODUTTIVO Quello appena visto è un altro schedule ammissibile, migliore di quello visto in precedenza (infatti il completion time è alle 11:45 invece che alle 11:51) Questo schedule è stato ottenuto dopo che si è osservato che la Gazzetta, che è il giornale la cui lettura viene terminata per ultima, rimaneva non letta per 6 minuti, dalle 11:05 alle Invertendo l ordine di lettura della Repubblica per quanto riguarda Bruno e Diego è stato possibile anticipare alle 11:05 l inizio della lettura della Gazzetta da parte di Carla, facendo quindi scomparire l intervallo di 6 minuti in cui la Gazzetta non veniva letta Si noti che anche in questo schedule è la lettura della Gazzetta che determina il completion time Lo schedule appena visto è ottimo? La risposta è no 9

10 Uno schedule ottimo è il seguente ESEMPIO INTRODUTTIVO Repubblica Corriere Stampa Gazzetta Carla Anna Bruno Diego Carla Bruno Anna Diego Carla Bruno Anna Diego Carla Diego Bruno Anna a cui corrisponde il seguente Diagramma di Gantt Repubblica C A B D Corriere C B A D Stampa C B A D Gazzetta C D B A 8:30 9:00 10:00 11:00 12:00 11:30 10

11 ESEMPIO INTRODUTTIVO In questo schedule, a differenza dei precedenti, i 4 ragazzi non iniziano a leggere appena possibile Anna si alza alle 8:30 ma inizia a leggere il suo primo giornale (la Repubblica) alle 9:15 Bruno si alza alle 8:45 ma inizia a leggere il suo primo giornale (il Corriere) alle 9:05 Diego si alza alle 9:30 ma inizia a leggere il suo primo giornale (la Gazzetta) alle 9:45 Solo Carlo inizia a leggere il suo primo giornale (la Stampa) appena alzato Questo ha consentito di ottenere uno schedule ammissibile il cui completion time è alle 11:30 (migliore quindi dei precedenti) Perché si può affermare che lo schedule appena visto sia ottimo? Si osservi come esso sia stato ottenuto facendo si che la lettura della Gazzetta (che anche in precedenza era quella che determinava il completion time) inizi prima, alle 9:15 invece che alle 9:45 Si facciano adesso le seguenti considerazioni: La Gazzetta, se letta consecutivamente dai 4 ragazzi, impegna 2 ore e 15 minuti 11

12 ESEMPIO INTRODUTTIVO Anna può iniziare a leggere la Gazzetta non prima delle 10:02 (in quanto si alza alle 8:30 e legge per 92 minuti i giornali che precedono la Gazzetta nella sua sequenza). Se la sequenza della Gazzetta inizia con Anna, il completion time non può essere inferiore alle 12:17 Bruno può iniziare a leggere la Gazzetta non prima delle 10:28 (in quanto si alza alle 8:45 e legge per 103 minuti i giornali che precedono la Gazzetta nella sua sequenza). Se la sequenza della Gazzetta inizia con Bruno, il completion time non può essere inferiore alle 12:43 Carlo può iniziare a leggere la Gazzetta non prima delle 9:15 (in quanto si alza alle 8:45 e legge per 30 minuti i giornali che precedono la Gazzetta nella sua sequenza). Se la sequenza della Gazzetta inizia con Carlo, il completion time non può essere inferiore alle 11:30 Diego può iniziare a leggere la Gazzetta non prima delle 9:30 (che è l ora in cui si alza, essendo la Gazzetta il primo giornale nella sua sequenza). Se la sequenza della Gazzetta inizia con Diego, il completion time non può essere inferiore alle 11:45 Il completion time non può quindi essere inferiore alle 11:30 E l unica soluzione ottima? Non è detto... 12

13 ESEMPIO INTRODUTTIVO Per determinare la soluzione ottima non è pensabile enumerare tutti i possibili schedule e poi scegliere uno di quelli che hanno il completion time più basso Con n job da eseguire su m macchine vi sono (n!) m possibili schedule Nell esempio introduttivo i job sono i ragazzi e le macchine sono i giornali da leggere Si hanno pertanto (4!) 4 = possibili schedule Con un computer molto rapido si potrebbero analizzare tutti Analizzando, ad esempio, 1000 schedule al secondo, ci vorrebbero circa 5 minuti e mezzo Ma aumentando anche solo di 1 il numero di job/ragazzi si avrebbero da analizzare (5!) 4 = possibili schedule In questo caso ci vorrebbero circa 58 ore (più 2 giorni!) L enumerazione diretta non è un buon metodo di risoluzione dei problemi di scheduling 13

14 GENERALITÀ SUI PROBLEMI DI Il problema generico di scheduling è quello definito come General Job-Shop Problem n m Job Macchine {J 1,J 2,...,J n } {M 1,M 2,...,M m } Ciascun job deve essere processato da ciascuna macchina una e una sola volta Vincoli tecnologici possono specificare un ordine secondo cui i job devono essere processati dalle macchine Un caso particolare è rappresentato dal flow-shop problem in cui i vincoli tecnologici specificano che tutti i job devono visitare le macchine secondo la stessa sequenza Un operazione consiste nell esecuzione di un job su una macchina o i,j Operazione della macchina i sul job j 14

15 GENERALITÀ SUI PROBLEMI DI Assunzioni classiche che caratterizzano i problemi di scheduling Due operazioni relative allo stesso job non possono essere eseguite simultaneamente Le operazioni, una volta partite, non possono essere interrotte, devono essere completate ( no preemption ) I job sono processati da ciascuna macchina, una e una sola volta Un job non può essere cancellato, deve essere portato a completamento I tempi di esecuzione dei job sulle macchine (processing time) sono indipendenti dalla sequenza di servizio, cioè dallo schedule Quest ultima ipotesi significa che i set-up, se previsti, sono operation-dependent e che i tempi di trasferimento tra le macchine sono non significativi I job possono rimanere in attesa che una macchina diventi disponibile Ciascuna macchina può processare un solo job alla volta (le risorse sono single-server) 15

16 GENERALITÀ SUI PROBLEMI DI Le macchine possono essere idle Le macchine non si guastano mai e sono disponibili per tutto l intervallo di tempo che caratterizza il problema di scheduling I vincoli tecnologici sono noti in anticipo e non possono variare nel tempo Non vi sono grandezze stocastiche che caratterizzano il problema. In particolare: Il numero di job è noto e fisso Il numero delle macchine è noto e fisso I tempi di esecuzione dei job sulle macchine (processing time) sono noti e fissi Gli istanti in cui i job sono disponibili (release time) sono noti e prefissati Tutte le altre grandezze necessarie per caratterizzare un problema di scheduling sono note e fisse 16

17 GENERALITÀ SUI PROBLEMI DI PARAMETRI che caratterizzano i job e le macchine r i p i,j d i Release time (o release date o ready time) Processing time Due date a i Allowance a i = d i r i 17

18 VALORI GENERALITÀ SUI PROBLEMI DI che caratterizzano i job in relazione a un particolare schedule W i,k W i C i F i L i T i E i Waiting time Total waiting time Completion time Flow time Lateness Tardiness Earliness W i = P m k=1 W i,k C i = r i + P m k=1 (W i,k + p i,j(k) ) F i = C i L i = C i r i d i T i = max{c i d i, 0} = max{l i, 0} E i = max{d i C i, 0} = max{ L i, 0} con il pedice j(k) si indica la macchina M j(k) che è la macchina che esegue la k-th operazione del job, operazione che viene pertanto indicata come o i,j(k) 18

19 GENERALITÀ SUI PROBLEMI DI Data una certa grandezza (total waiting time, completion time, ecc.), si considerano spesso il valore medio e il valore massimo di una tale grandezza X i GRANDEZZA VALORE MEDIO VALORE MASSIMO X =(1/n) P n i=1 X i X max = max{x 1,X 2,...,X n } 19

20 VALORI GENERALITÀ SUI PROBLEMI DI che caratterizzano le macchine in relazione a un particolare schedule VALORI P I n j Idle time I j = C max i=1 p i,j relativi a un particolare schedule in uno specifico istante di tempo N w (t) N p (t) N c (t) N u (t) Numero di job in attesa (o non pronti) al tempo Numero di job in esecuzione al tempo t Numero di job completati al tempo t Numero di job ancora da completare al tempo t t 20

21 GENERALITÀ SUI PROBLEMI DI Sono valide le seguenti relazioni: N w (t) +N p (t) +N c (t) =n N w (t) +N p (t) =N u (t) N u (0) = n N u (C max )=0 Essendo inoltre tali valori riferiti ad un particolare istante di tempo, il valore medio si può calcolare considerando l integrale su tutto l intervallo di tempo che caratterizza lo schedule VALORE MEDIO N x = 1 C max Z Cmax 0 N x (t)dt 21

22 INDICATORI DI PERFORMANCE PER PROBLEMI DI CRITERI BASATI SUL COMPLETION TIME F max C max F C Flow time massimo Completion time massimo (makespan) Flow time medio Completion time medio Il makespan è il tempo totale di produzione P n A volte si usano medie pesate del tipo i=1 P n ic i e i=1 if i con 1, 2,..., n e 1, 2,..., n pesi opportuni (la cui somma è generalmente 1) Si tratta di valori da minimizzare 22

23 INDICATORI DI PERFORMANCE PER PROBLEMI DI CRITERI BASATI SULLE DUE DATE L L max T T max n T Lateness media Lateness massima Tardiness media Tardiness massima Numero di job tardy Anche per questi indicatori è possibile prendere in considerazione delle medie pesate Si tratta di valori da minimizzare 23

24 INDICATORI DI PERFORMANCE PER PROBLEMI DI CRITERI BASATI SULL INVENTORY E SULL UTILIZZAZIONE DELLE MACCHINE N c N p I I max Numero medio di job completati Numero medio di job in corso di esecuzione Idle time medio Idle time massimo, I, I max sono valori da minimizzare N c N p è un valore da massimizzare 24

25 INDICATORI DI PERFORMANCE PER PROBLEMI DI INDICATORI REGOLARI Un indicatore R si dice regolare ( misura regolare ) se è non decrescente rispetto al completion time Sia R funzione dei completion time C 1,C 2,...,C n. Tale misura è regolare se dati risulta C 1 apple C 0 1, C 2 apple C 0 2,..., C n apple C 0 n R(C 1,C 2,...,C n ) apple R(C 0 1,C0 2,...,C0 n ) In pratica, se si hanno due schedule nel primo dei quali i job vengono completati non in ritardo rispetto al completamento dei job del secondo schedule, l utilizzo di una misura regolare assicura che il primo schedule non è peggiore del secondo (è quindi possibile scartare il secondo a favore del primo) 25

26 INDICATORI DI PERFORMANCE PER PROBLEMI DI Gli indicatori basati sul completion time (flow time massimo e medio, completion time massimo e medio) e sulla due date (lateness massima e media, tardiness massima e media, numero di job tardy) visti in precedenza sono misure regolari Non sono misure regolari gli indicatori che tengono conto della earliness 26

27 INDICATORI DI PERFORMANCE PER PROBLEMI DI EQUIVALENZE TRA INDICATORI Due indicatori sono equivalenti se uno schedule che è ottimo per il primo è ottimo anche per il secondo e viceversa TEOREMA I seguenti indicatori di performance sono equivalenti: C, F, W e L TEOREMA Uno schedule che è ottimo rispetto a L max, è anche ottimo rispetto T max TEOREMA I seguenti indicatori di performance sono equivalenti:, e C max N p I TEOREMA N u e TEOREMA N w e C/C max W /C max sono indicatori di performance equivalenti sono indicatori di performance equivalenti 27

28 CLASSIFICAZIONE DEI PROBLEMI DI n/m/a/b NUMERO DI JOB NUMERO DI MACCHINE DISCIPLINA DI SERVIZIO INDICATORE DI PERFORMANCE Disciplina di servizio (se m>1) F P G Flow shop (l ordine delle macchine è lo stesso per tutti i job) Permutation flow-shop (l ordine delle macchine è lo stesso per tutti i job e inoltre si deve trovare uno schedule in cui l ordine di esecuzione dei job è lo stesso per tutte le macchine) General job shop (nessun vincolo tecnologico) Esempio: 6/2/F/C max 28

29 SINGLE MACHINE n/1/a/b Sono problemi semplici ma di un certo interesse pratico (processori nontime-sharing, impianti dedicati alla produzione di specifici item, macchine bottleneck all interno di impianti complessi) Nei problemi di single machine scheduling si assume che tutti i job da processare siano disponibili all inizio, ovvero r i =08J i,i =1,...,n Un risultato che sta alla base della risoluzione dei problemi di single machine scheduling è il seguente TEOREMA In un problema n/1//b, dove B è una misura regolare, esiste uno schedule ottimo in cui non vi sono idle time, cioè la macchina inizia a processare i job all istante t =0 e continua senza interruzioni fino a t temporaneo = C max 29

30 SINGLE MACHINE La conseguenza del precedente teorema è che nei problemi n/1//b (con B misura regolare), per la determinazione di uno schedule ottimo, è sufficiente considerare i permutation schedule Bisogna quindi trovare un permutazione di venga minimizzato l indicatore B J 1,J 2,...,J n in modo che Sia k l indice che indica la posizione di un job nella sequenza di esecuzione è pertanto il job che viene eseguito per k -esimo J i(k) è il processing time del job che viene eseguito per k -esimo p i(k) è la due date del job che viene eseguito per k -esimo d i(k) (si considereranno definizioni analoghe per le altre grandezze che caratterizzano un problemi di scheduling) 30

31 SPT (SHORTEST PROCESSING TIME) n/1//f Si vuole minimizzare il tempo medio di attraversamento del sistema (flow time medio) TEOREMA In un problema tale che n/1//f, il flow time medio è minimizzato da una sequenza p i(k) p i(1) apple p i(2) apple p i(3) apple... apple p i(n) essendo il processing time del job che viene processato per k-esimo Uno schedule fatto in questo modo prende il nome di SPT schedule Uno schedule SPT risolve in maniera ottima anche i seguenti problemi di scheduling: n/1//c, n/1//w, n/1//l, n/1//n u, n/1//n w (cioè minimizza anche il completion time medio, il tempo medio di attesa, la lateness media, il numero medio di job ancora da completare e il numero medio di job in attesa) 31

32 EDD (EARLIEST DUE DATE) n/1//l max Si vuole minimizzare la lateness massima TEOREMA In un problema n/1//l max sequenza tale che, la lateness massima è minimizzato da una essendo la due date del job che viene processato per k-esimo d i(k) d i(1) apple d i(2) apple d i(3) apple... apple d i(k) Uno schedule fatto in questo modo prende il nome di EDD schedule Uno schedule EDD risolve in maniera ottima anche il problema di scheduling: n/1//t max (cioè minimizza anche la tardiness massima) 32

33 ALGORITMO DI MOORE n/1//n T Si vuole minimizzare il numero di job in ritardo (tardy job), indipendentemente da quanto sono in ritardo. Tale problema è risolto dal seguente algoritmo (Algoritmo di Moore) 33

34 ALGORITMO DI MOORE ALGORITMO STEP 1 Sequenziare i job secondo la regola EDD in modo da definire una sequenza di job (J i(1),j i(2),...,j i(n) ) tale che d i(k) apple d i(k+1) per ogni k =1, 2,...,n 1; sia essa la sequenza corrente STEP 2 Trovare il primo job tardy, sia esso si trova alcun job, passare allo step 4 STEP 3 J i(l), nella sequenza corrente; se non Trovare nella sequenza (J i(1),j i(2),...,j i(l) ) il job con il più alto processing time ed escludere esso dalla sequenza corrente; ritornare allo step 2 con una sequenza corrente aggiornata (è più corta di 1 rispetto a prima) STEP 4 Costruire uno schedule composto dalla sequenza corrente di job seguita dai job che sono stati esclusi nelle varie iterazioni dello step 3 (questi ultimi possono essere messi in qualunque ordine); tale schedule è ottimo 34

35 SINGLE MACHINE SCHEDULE OTTIMI VS. SCHEDULE EFFICIENTI Nei casi precedenti è stato mostrato come sia possibile determinare uno schedule che sia ottimo rispetto un certo indicatore di performance In alcuni casi ha però senso considerare delle funzioni di costo che tengano conto di più indicatori di performance (ad esempio, se si vuole penalizzare sia il completamento in ritardo dei job sia i costi di inventory è necessario utilizzare una funzione di e F ) T max In questi casi l obiettivo è determinare uno schedule efficiente Dati due schedule S e S 0, si dice che S 0 è efficiente rispetto gli indicatori di performance µ 1,µ 2,...,µ v se non esiste uno schedule S tale che µ 1 apple µ 0 1 µ 2 apple µ µ v apple µ 0 v con una diseguaglianza stretta in almeno un caso Si dice anche che non esiste uno schedule S che domina S 0 35

36 SINGLE MACHINE SCHEDULE OTTIMI VS. SCHEDULE EFFICIENTI Il risultato importante è che se il costo totale è una funzione crescente nelle variabili µ 1,µ 2,...,µ v prese singolarmente, uno schedule che garantisca il costo minimo (cioè uno schedule ottimo) deve essere uno schedule efficiente T max (un esempio di funzionale di costo crescente nei suoi argomenti e F è la funzione c(t max, F )=4T max +7F ) Si può quindi procedere nella ricerca di tutti gli schedule efficienti e poi, sulla base della funzione di costo adottata, scegliere quello che presenta il costo minore (che sarà quindi lo schedule ottimo) 36

37 ALGORITMO DI SMITH Si voglia determinare uno schedule efficiente rispetto al tempo medio di attraversamento del sistema Fe alla tardiness massima Per ottenere tale schedule si può sfruttare il seguente Algoritmo di Smith L algoritmo di Smith consente di minimizzare il flow time medio (che, avendo supposto nullo il release time di ogni job, coincide con il completion time medio) nell ipotesi che nessun job sia tardy, ovvero che T max =0 (quindi l algoritmo di Smith non trova di per sè uno schedule efficiente ma verrà sfruttato per la determinazione di esso) L algoritmo di Smith si basa sul seguente teorema T max TEOREMA In un problema n job / 1 macchina in cui tutte le due date sono rispettate ( T max =0) esiste uno schedule che minimizza F e in cui il job J P k è n l ultimo ad essere processato, P se e solo se d k i=1 p i e p k p l per n tutti i job J l tali che d l i=1 p i 37

38 ALGORITMO DI SMITH ALGORITMO STEP 1 Siano k = n, = P n i=1 p i e U = {J 1,J 2,...,J n } STEP 2 Trovare J i(k) in U tale che d i(k) e p i(k) p l per tutti i job J l tali che STEP 3 Decrementare k di 1; decrementare della quantità p i(k) ; eliminare J i(k) da U STEP 4 d l Se ci sono ancora job da schedulare (cioè se k 1) ritornare allo step 2; altrimenti fermarsi; in quest ultimo caso, lo schedule ottimo per il problema considerato è (J i(1),j i(2),...,j i(n) ) Ovviamente questo algoritmo va eseguito solamente dopo avere verificato che esista uno schedule EDD in cui T max =0 38

39 ALGORITMO DI SMITH Si rilassi adesso la condizione T max =0, con l obiettivo di determinare uno schedule efficiente rispetto a F e T max F L algoritmo di Smith può essere utilizzato in modo da minimizzare la condizione T max apple Bisogna innanzitutto incrementare tutte le due date della quantità poi considerare il seguente step 2 modificato con e STEP 2 Trovare J i(k) in U tale che d i(k) e p i(k) p l per tutti i job J l tali che d l ; se bisogna effettuare una scelta per J i(k), scegliere quello che ha la due date maggiore Con tale modifica, o è impossibile costruire uno schedule oppure lo schedule risultante è uno schedule efficiente rispetto a F e T max 39

40 FLOW-SHOP E JOB-SHOP Quando il numero di macchine è maggiore di 1, si parla di scheduling in the flow-shop oppure di scheduling in the general job-shop Questi problemi sono di gran lunga più complicati rispetto a quelli visti nel caso di single-machine scheduling. Soltanto per un limitato insieme di problemi esistono degli algoritmi costruttivi che consentono di ottenere lo schedule ottimo Nel caso non siano disponibili algoritmi costruttivi per risolvere un certo problema di scheduling, è necessario ricorrere a metodologie enumerative (come la programmazione dinamica e il branch-and-bound) oppure a metodologie euristiche che però non sono in grado di fornire la soluzione ottima di un problema Anche per questa categoria di problemi assumeremo che tutti i job da processare siano disponibili all inizio, ovvero 40

41 FLOW-SHOP In un flow-shop tutti i job visitano le macchine nello stesso ordine (vincolo tecnologico) Job J 1 Processing Order M 1 M 2 M 3... M m J 2 M 1 M 2 M 3... M m J n M 1 M 2 M 3... M m Esistono due risultati di carattere generale per quanto riguarda i problemi di flow-shop scheduling TEOREMA In un problema n/m/f/b, con B misura regolare, è sufficiente considerare schedule in cui vi sia la stessa sequenza di esecuzione dei job sulle prime due macchine, M 1 e M 2 41

42 TEOREMA FLOW-SHOP In un problema n/m/f/f max non c è bisogno di considerare gli schedule in cui vi sia una diversa sequenza di esecuzione dei job sulle ultime due macchine, M m 1 e M m Conseguenza diretta di questi due teoremi è che, al fine di determinare uno schedule ottimo, nei problemi n/2/f/b (con qualsiasi B purché regolare) n/3/f/f max è possibile considerare esclusivamente i permutation schedule Il problema Johnson n/2/f/f max può essere risolto attraverso l Algoritmo di 42

43 ALGORITMO DI JOHNSON Si devono processare n job attraverso 2 macchine, ciascun job deve visitare le macchine nella sequenza M 1 - M 2, in modo da minimizzare il tempo massimo di attraversamento del sistema (problema n/2/f/f max ) Avendo supposto che i release time siano nulli, tale problema equivale a minimizzare il completion time massimo (makespan) L algoritmo di Johnson si basa sulla seguente considerazione: dato che all inizio la macchina M 2 sarà necessariamente idle (dovendo attendere che il primo job che viene eseguito venga processato da M 1 ), è ragionevole ipotizzare che convenga iniziare a processare sulla macchina il job con il processing time più breve su M 1 analogamente, dato che alla fine sarà idle la macchina, è ragionevole ipotizzare che l ultimo job da eseguire, sulla macchina M 2, sia il job con il processing time più breve su M 2 M 1 M 1 43

44 ALGORITMO DI JOHNSON M 1 M 2 È IDLE QUANDO SI ESEGUE IL PRIMO JOB SU M 1 M 1 È IDLE QUANDO SI ESEGUE L ULTIMO JOB SU M 2 M 2 Sulla base di questa considerazione (e sul fatto che sia sufficiente considerare i permutation schedule), l algoritmo di Johnson determina uno schedule ottimo che consiste in una permutazione di {J 1,J 2,...,J n } tale che i primi job che vengono eseguiti hanno bassi processing time su M 1, mentre gli ultimi job che vengono eseguiti hanno bassi processing time su M 2 Siano, per semplicità: a i = p i,1 Processing time del job sulla macchina b i = p i,2 Processing time del job J i sulla macchina M 2 J i M 1 44

45 ALGORITMO DI JOHNSON ALGORITMO STEP 1 Siano STEP 2 Sia k =1 e l = n U = {J 1,J 2,...,J n } la lista dei job ancora da schedulare STEP 3 Trovare il valore più piccolo tra tutti gli e dei job ancora da schedulare STEP 4 Se il valore più piccolo è a i, schedulare J i nella k-esima posizione della sequenza di esecuzione, togliere J i dalla lista dei job ancora da schedulare, incrementare k di 1, andare allo step 6 STEP 5 b i Se il valore più piccolo è, schedulare J i nella l-esima posizione della sequenza di esecuzione, togliere J i dalla lista dei job ancora da schedulare, decrementare l di 1, andare allo step 6 STEP 6 Se vi sono ancora job da schedulare tornare allo step 3; altrimenti stop a i b i 45

46 ALGORITMO DI JOHNSON L algoritmo di Johnson può essere adattato per risolvere il problema di scheduling n/2/g/f max (in cui non vi è più il vincolo che ciascun job deve essere processato da tutte le macchine) Essendo 2 le macchine, è possibile classificare i job nel seguente modo: Tipo A: job che vengono processati solo da M 1 Tipo B: job che vengono processati solo da M 2 Tipo C: job che vengono processati prima da M 1 e poi da M 2 Tipo D: job che vengono processati prima da M 2 e poi da Uno schedule ottimo può essere ottenuto applicando il seguente algoritmo M 1 46

47 ALGORITMO DI JOHNSON ALGORITMO STEP 1 Schedulare i job di tipo A in qualsiasi ordine; sia STEP 2 Schedulare i job di tipo B in qualsiasi ordine; sia S A S B la sequenza ottenuta la sequenza ottenuta STEP 3 Schedulare i job di tipo C applicando l algoritmo di Johnson visto in precedenza; sia la sequenza ottenuta STEP 4 S C Schedulare i job di tipo D applicando l algoritmo di Johnson visto in precedenza (facendo attenzione perché bisogna considerare M 2 come prima macchina e come seconda); sia la sequenza ottenuta M 1 STEP 5 Uno schedule ottimo è dato dalle seguenti sequenze di esecuzione S D M 1 M 2 : S C! S A! S D : S D! S B! S C 47

48 DI TASK PERIODICI SU SINGLE MACHINE Si considerino attività (task) che devono essere eseguite periodicamente. In questo caso, i job sono i singoli elementi di un task periodico, ovvero le singole esecuzioni dell attività in questione Essendo i task attivati periodicamente, l obiettivo è quello di eseguire i vari job all interno di ogni periodo di attivazione; in altre parole, si ha una deadline in corrispondenza della fine di ogni periodo di attivazione Si suppone che il periodo di attivazione e il tempo di esecuzione dei vari task (quindi dei job) siano costanti ISTANTE DI ATTIVAZIONE DEADLINE a i (k) d i (k) =a i (k + 1) k-esimo JOB DEL TASK i (k+1)-esimo JOB DEL TASK i (k+2)-esimo JOB DEL TASK i t PERIODO DI ATTIVAZIONE PERIODO DI ATTIVAZIONE PERIODO DI ATTIVAZIONE 48

49 DI TASK PERIODICI SU SINGLE MACHINE I vari task da eseguire sono indipendenti tra loro Il problema da affrontare è quello di schedulare su una single machine un insieme di task periodici in modo che tutte le deadline siano soddisfatte n Si considerino task periodici caratterizzati da periodo di attivazione e tempo di esecuzione p i i Il fattore di utilizzazione della single machine è nx p i U = i=1 U apple 1 Condizione necessaria per la schedulabilità dei task è che sia Tale condizione è anche sufficiente solo per alcuni algoritmi di scheduling periodico; per altri la condizione sufficiente sarà U apple U lsm, con U lsm < 1 valore che caratterizza lo specifico algoritmo e che dipende anche dal numero di task da processare i 49

50 ALGORITMO RATE MONOTONIC PRIORITY ORDERING (RMPO) Ad ogni task viene assegnata una priorità inversamente proporzionale al proprio periodo di attivazione La priorità viene utilizzata per schedulare i task mediante un meccanismo di preemption Ad ogni attivazione di un nuovo job di un task, si aggiorna la coda dei job pronti e si manda in esecuzione quello caratterizzato dalla maggiore priorità TASK 1 TASK 2 TASK 3 t t t PREEMPTION DEL TASK 1 SUL TASK 2 PREEMPTION DEL TASK 1 SUL TASK 3 PREEMPTION DEL TASK 3 SUL TASK 2 PREEMPTION DEL TASK 1 SUL TASK 3 50

51 ALGORITMO RATE MONOTONIC PRIORITY ORDERING (RMPO) L algoritmo RMPO è un algoritmo statico: la priorità dei diversi task è assegnata a priori e rimane tale per tutta la durata del funzionamento del sistema L algoritmo RMPO è ottimo nel campo dello scheduling di processi periodici con assegnazione statica delle priorità Questo significa anche che se un insieme di task periodici non sono schedulabili tramite l algoritmo RMPO, allora non esiste nessun altro algoritmo di tipo statico che riesca a risolvere lo stesso problema di scheduling La schedulabilità di task periodici attraverso l algoritmo RMPO è garantita per utilizzazioni inferiori al valore massimo U lsm = n(2 1/n 1) 1 ln

LIVELLO STRATEGICO E TATTICO

LIVELLO STRATEGICO E TATTICO Corso di Laurea Triennale in INGEGNERIA GESTIONALE Anno Accademico 2012/13 Prof. Davide GIGLIO 1 ESEMPI DI PROBLEMI DECISIONALI LIVELLO STRATEGICO Capacity growth planning LIVELLO TATTICO Aggregate planning

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

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

Se x* e punto di minimo (locale) per la funzione nell insieme Ω, Ω = { x / g i (x) 0 i I, h j (x)= 0 j J } lo e anche per F(x) = f o (x) + c x x 2

Se x* e punto di minimo (locale) per la funzione nell insieme Ω, Ω = { x / g i (x) 0 i I, h j (x)= 0 j J } lo e anche per F(x) = f o (x) + c x x 2 NLP -OPT 1 CONDIZION DI OTTIMO [ Come ricavare le condizioni di ottimo. ] Si suppone x* sia punto di ottimo (minimo) per il problema min f o (x) con vincoli g i (x) 0 i I h j (x) = 0 j J la condizione

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Modelli di Sistemi di Produzione

Modelli di Sistemi di Produzione Modelli di Sistemi di Produzione 2 Indice 1 I sistemi di produzione 1 1.1 Generalità............................. 1 1.2 I principi dei sistemi manifatturieri............... 4 1.3 Descrizione dei principali

Dettagli

Sulla monotonia delle funzioni reali di una variabile reale

Sulla monotonia delle funzioni reali di una variabile reale Liceo G. B. Vico - Napoli Sulla monotonia delle funzioni reali di una variabile reale Prof. Giuseppe Caputo Premetto due teoremi come prerequisiti necessari per la comprensione di quanto verrà esposto

Dettagli

Dott.ssa Caterina Gurrieri

Dott.ssa Caterina Gurrieri Dott.ssa Caterina Gurrieri Le relazioni tra caratteri Data una tabella a doppia entrata, grande importanza riveste il misurare se e in che misura le variabili in essa riportata sono in qualche modo

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

Istruzioni operative per la gestione delle Non Conformità e delle Azioni Correttive. https://nonconf.unife.it/

Istruzioni operative per la gestione delle Non Conformità e delle Azioni Correttive. https://nonconf.unife.it/ Istruzioni operative per la gestione delle Non Conformità e delle Azioni Correttive https://nonconf.unife.it/ Registrazione della Non Conformità (NC) Accesso di tipo 1 Addetto Registrazione della Non Conformità

Dettagli

METODI ITERATIVI PER SISTEMI LINEARI

METODI ITERATIVI PER SISTEMI LINEARI METODI ITERATIVI PER SISTEMI LINEARI LUCIA GASTALDI 1. Metodi iterativi classici Sia A R n n una matrice non singolare e sia b R n. Consideriamo il sistema (1) Ax = b. Un metodo iterativo per la soluzione

Dettagli

Il Concetto di Processo

Il Concetto di Processo Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono

Dettagli

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE 1 DIPENDENZA E INDIPENDENZA LINEARE Se ho alcuni vettori v 1, v 2,, v n in uno spazio vettoriale V, il sottospazio 1 W = v 1,, v n di V da loro generato è

Dettagli

UNIVERSITA DI PISA FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA ELETTRONICA ANNO ACCADEMICO 2004-2005 TESI DI LAUREA

UNIVERSITA DI PISA FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA ELETTRONICA ANNO ACCADEMICO 2004-2005 TESI DI LAUREA UNIVERSITA DI PISA FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA ELETTRONICA ANNO ACCADEMICO 2004-2005 TESI DI LAUREA SVILUPPO DI METODI DECONVOLUTIVI PER L INDIVIDUAZIONE DI SORGENTI INDIPENDENTI

Dettagli

IL PROBLEMA DELLO SHORTEST SPANNING TREE

IL PROBLEMA DELLO SHORTEST SPANNING TREE IL PROBLEMA DELLO SHORTEST SPANNING TREE n. 1 - Formulazione del problema Consideriamo il seguente problema: Abbiamo un certo numero di città a cui deve essere fornito un servizio, quale può essere l energia

Dettagli

SISTEMI LINEARI QUADRATI: METODI ITERATIVI

SISTEMI LINEARI QUADRATI: METODI ITERATIVI SISTEMI LINEARI QUADRATI: METODI ITERATIVI CALCOLO NUMERICO e PROGRAMMAZIONE SISTEMI LINEARI QUADRATI:METODI ITERATIVI p./54 RICHIAMI di ALGEBRA LINEARE DEFINIZIONI A R n n simmetrica se A = A T ; A C

Dettagli

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Introduzione Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Il problema del massimo flusso è uno dei fondamentali problemi nell ottimizzazione su rete. Esso è presente

Dettagli

2 Formulazione dello shortest path come problema di flusso

2 Formulazione dello shortest path come problema di flusso Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10 Lecture 20: 28 Maggio 2010 Cycle Monotonicity Docente: Vincenzo Auletta Note redatte da: Annibale Panichella Abstract In questa lezione

Dettagli

Flusso a costo minimo e simplesso su reti

Flusso a costo minimo e simplesso su reti Flusso a costo minimo e simplesso su reti La particolare struttura di alcuni problemi di PL può essere talvolta utilizzata per la progettazione di tecniche risolutive molto più efficienti dell algoritmo

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Matematica B - a.a 2006/07 p. 1

Matematica B - a.a 2006/07 p. 1 Matematica B - a.a 2006/07 p. 1 Definizione 1. Un sistema lineare di m equazioni in n incognite, in forma normale, è del tipo a 11 x 1 + + a 1n x n = b 1 a 21 x 1 + + a 2n x n = b 2 (1) = a m1 x 1 + +

Dettagli

Seconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12

Seconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12 A / A / Seconda Prova di Ricerca Operativa Cognome Nome Numero Matricola Nota: LA RISOLUZIONE CORRETTA DEGLI ESERCIZI CONTRADDISTINTI DA UN ASTERISCO È CONDIZIONE NECESSARIA PER IL RAGGIUNGIMENTO DELLA

Dettagli

Esercizio 1 Soluzione Esercizio 2 Soluzione

Esercizio 1 Soluzione Esercizio 2 Soluzione Esercizio 1 Si specifichi, mediante una formula del prim ordine un apparato che funziona nel modo seguente: All istante 0 esso emette un segnale s, che può essere uno 0 o un 1. Se, dopo l emissione di

Dettagli

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti Dai sistemi concorrenti ai sistemi distribuiti Problemi nei sistemi concorrenti e distribuiti I sistemi concorrenti e distribuiti hanno in comune l ovvio problema di coordinare le varie attività dei differenti

Dettagli

1. Intorni di un punto. Punti di accumulazione.

1. Intorni di un punto. Punti di accumulazione. 1. Intorni di un punto. Punti di accumulazione. 1.1. Intorni circolari. Assumiamo come distanza di due numeri reali x e y il numero non negativo x y (che, come sappiamo, esprime la distanza tra i punti

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

Capitolo 9: PROPAGAZIONE DEGLI ERRORI

Capitolo 9: PROPAGAZIONE DEGLI ERRORI Capitolo 9: PROPAGAZIOE DEGLI ERRORI 9.1 Propagazione degli errori massimi ella maggior parte dei casi le grandezze fisiche vengono misurate per via indiretta. Il valore della grandezza viene cioè dedotto

Dettagli

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE Sia I un intervallo di R e siano a = inf(i) R { } e b = sup(i) R {+ }; i punti di I diversi dagli estremi a e b, ( e quindi appartenenti all intervallo aperto

Dettagli

Problema n. 1: CURVA NORD

Problema n. 1: CURVA NORD Problema n. 1: CURVA NORD Sei il responsabile della gestione del settore Curva Nord dell impianto sportivo della tua città e devi organizzare tutti i servizi relativi all ingresso e all uscita degli spettatori,

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli

Classificazioni dei sistemi di produzione

Classificazioni dei sistemi di produzione Classificazioni dei sistemi di produzione Sistemi di produzione 1 Premessa Sono possibili diverse modalità di classificazione dei sistemi di produzione. Esse dipendono dallo scopo per cui tale classificazione

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Esercizi sull Association Analysis

Esercizi sull Association Analysis Data Mining: Esercizi sull Association Analysis 1 Esercizi sull Association Analysis 1. Si consideri il mining di association rule da un dataset T di transazioni, rispetto a delle soglie minsup e minconf.

Dettagli

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento:

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento: Capitolo 3 Serie 3. Definizione Sia { } una successione di numeri reali. Ci proponiamo di dare significato, quando possibile, alla somma a + a 2 +... + +... di tutti i termini della successione. Questa

Dettagli

Ricerca non informata in uno spazio di stati

Ricerca non informata in uno spazio di stati Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A5_2 V2.4 Ricerca non informata in uno spazio di stati Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

A i è un aperto in E. i=1

A i è un aperto in E. i=1 Proposizione 1. A è aperto se e solo se A c è chiuso. Dimostrazione. = : se x o A c, allora x o A = A o e quindi esiste r > 0 tale che B(x o, r) A; allora x o non può essere di accumulazione per A c. Dunque

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

CALCOLO COMBINATORIO

CALCOLO COMBINATORIO CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito.

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito. INTEGRALI DEFINITI Sia nel campo scientifico che in quello tecnico si presentano spesso situazioni per affrontare le quali è necessario ricorrere al calcolo dell integrale definito. Vi sono infatti svariati

Dettagli

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA Tutti gli anni, affrontando l argomento della divisibilità, trovavo utile far lavorare gli alunni sul Crivello di Eratostene. Presentavo ai ragazzi una

Dettagli

L impresa che non fa il prezzo

L impresa che non fa il prezzo L offerta nei mercati dei prodotti L impresa che non fa il prezzo L impresa che non fa il prezzo (KR 10 + NS 6) Dipartimento di Economia Politica Università di Milano Bicocca Outline L offerta nei mercati

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

2/4 OPERATORI NEGLI SPAZI DI HILBERT INFINITODIMENSIONALI 08/09 1 INTRODUZIONE

2/4 OPERATORI NEGLI SPAZI DI HILBERT INFINITODIMENSIONALI 08/09 1 INTRODUZIONE 2/4 OPERATORI NEGLI SPAZI DI HILBERT INFINITODIMENSIONALI 08/09 INTRODUZIONE Il problema agli autovalori di un operatore La trattazione del problema agli autovalori di un operatore fatta negli spazi finitodimensionali

Dettagli

STUDIO DI UNA FUNZIONE

STUDIO DI UNA FUNZIONE STUDIO DI UNA FUNZIONE OBIETTIVO: Data l equazione Y = f(x) di una funzione a variabili reali (X R e Y R), studiare l andamento del suo grafico. PROCEDIMENTO 1. STUDIO DEL DOMINIO (CAMPO DI ESISTENZA)

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it

Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it Corso di laurea magistrale in Ingegneria delle Telecomunicazioni Metodi e Strumenti per la Caratterizzazione e la Diagnostica di Trasmettitori Digitali RF ing. Gianfranco Miele g.miele@unicas.it Trasmettitore

Dettagli

LA FUNZIONE ESPONENZIALE E IL LOGARITMO

LA FUNZIONE ESPONENZIALE E IL LOGARITMO LA FUNZIONE ESPONENZIALE E IL LOGARITMO APPUNTI PER IL CORSO DI ANALISI MATEMATICA I G. MAUCERI Indice 1. Introduzione 1 2. La funzione esponenziale 2 3. Il numero e di Nepero 9 4. L irrazionalità di e

Dettagli

ALGEBRA I: CARDINALITÀ DI INSIEMI

ALGEBRA I: CARDINALITÀ DI INSIEMI ALGEBRA I: CARDINALITÀ DI INSIEMI 1. CONFRONTO DI CARDINALITÀ E chiaro a tutti che esistono insiemi finiti cioè con un numero finito di elementi) ed insiemi infiniti. E anche chiaro che ogni insieme infinito

Dettagli

APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI

APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI Le disequazioni fratte Le disequazioni di secondo grado I sistemi di disequazioni Alessandro Bocconi Indice 1 Le disequazioni non lineari 2 1.1 Introduzione.........................................

Dettagli

SEGNI GRAFICI E SIMBOLI ELETTRICI PER SCHEMI DI IMPIANTO

SEGNI GRAFICI E SIMBOLI ELETTRICI PER SCHEMI DI IMPIANTO LA PROTEZIONE DELLE CONDUTTURE CONTRO LE SOVRACORRENTI DEFINIZIONI NORMA CEI 64-8/2 TIPOLOGIE DI SOVRACORRENTI + ESEMPI SEGNI GRAFICI E SIMBOLI ELETTRICI PER SCHEMI DI IMPIANTO DISPOSITIVI DI PROTEZIONE

Dettagli

ESAME DI STATO 2002 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO

ESAME DI STATO 2002 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO ARCHIMEDE 4/ 97 ESAME DI STATO SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO Il candidato risolva uno dei due problemi e 5 dei quesiti in cui si articola il questionario. PROBLEMA In un

Dettagli

FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA

FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA FUNZIONE ESPONENZIALE E FUNZIONE LOGARITMICA DEFINIZIONE: Dato un numero reale a che sia a > 0 e a si definisce funzione esponenziale f(x) = a x la relazione che ad ogni valore di x associa uno e un solo

Dettagli

PROGETTO EM.MA PRESIDIO

PROGETTO EM.MA PRESIDIO PROGETTO EM.MA PRESIDIO di PIACENZA Bentornati Il quadro di riferimento di matematica : INVALSI e TIMSS A CONFRONTO LE PROVE INVALSI Quadro di riferimento per la valutazione Quadro di riferimento per i

Dettagli

Descrizioni VHDL Behavioral

Descrizioni VHDL Behavioral 1 Descrizioni VHDL Behavioral In questo capitolo vedremo come la struttura di un sistema digitale è descritto in VHDL utilizzando descrizioni di tipo comportamentale. Outline: process wait statements,

Dettagli

Minimizzazione di Reti Logiche Combinatorie Multi-livello

Minimizzazione di Reti Logiche Combinatorie Multi-livello Minimizzazione di Reti Logiche Combinatorie Multi-livello Maurizio Palesi Maurizio Palesi 1 Introduzione Obiettivo della sintesi logica: ottimizzazione delle cifre di merito area e prestazioni Prestazioni:

Dettagli

Esame di Ricerca Operativa del 20/12/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 20/12/13. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del 0// (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x x x + x x +x x x x x x x 0 x x

Dettagli

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f.

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f. FUNZIONI CONTINUE - ALCUNI ESERCIZI SVOLTI SIMONE ALGHISI 1. Continuità di una funzione Dati un insieme D R, una funzione f : D R e x 0 R, si è detto che f è continua in x 0 se sono soddisfatte le seguenti

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

SCHEDA DI PROGRAMMAZIONE DELLE ATTIVITA EDUCATIVE DIDATTICHE. Disciplina: Matematica Classe: 5A sia A.S. 2014/15 Docente: Rosito Franco

SCHEDA DI PROGRAMMAZIONE DELLE ATTIVITA EDUCATIVE DIDATTICHE. Disciplina: Matematica Classe: 5A sia A.S. 2014/15 Docente: Rosito Franco Disciplina: Matematica Classe: 5A sia A.S. 2014/15 Docente: Rosito Franco ANALISI DI SITUAZIONE - LIVELLO COGNITIVO La classe ha dimostrato fin dal primo momento grande attenzione e interesse verso gli

Dettagli

esame di stato 2012 seconda prova scritta per il liceo scientifico di ordinamento

esame di stato 2012 seconda prova scritta per il liceo scientifico di ordinamento RTICL rchimede 4 esame di stato seconda prova scritta per il liceo scientifico di ordinamento Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario PRBLEM Siano f e g le funzioni

Dettagli

Esponenziali elogaritmi

Esponenziali elogaritmi Esponenziali elogaritmi Potenze ad esponente reale Ricordiamo che per un qualsiasi numero razionale m n prendere n>0) si pone a m n = n a m (in cui si può sempre a patto che a sia un numero reale positivo.

Dettagli

Analisi statistica di dati biomedici Analysis of biologicalsignals

Analisi statistica di dati biomedici Analysis of biologicalsignals Analisi statistica di dati biomedici Analysis of biologicalsignals II Parte Verifica delle ipotesi (a) Agostino Accardo (accardo@units.it) Master in Ingegneria Clinica LM in Neuroscienze 2013-2014 e segg.

Dettagli

Gli uni e gli altri. Strategie in contesti di massa

Gli uni e gli altri. Strategie in contesti di massa Gli uni e gli altri. Strategie in contesti di massa Alessio Porretta Universita di Roma Tor Vergata Gli elementi tipici di un gioco: -un numero di agenti (o giocatori): 1,..., N -Un insieme di strategie

Dettagli

EQUAZIONI non LINEARI

EQUAZIONI non LINEARI EQUAZIONI non LINEARI Francesca Pelosi Dipartimento di Matematica, Università di Roma Tor Vergata CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/ pelosi/ EQUAZIONI non LINEARI p.1/44 EQUAZIONI

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

1 Definizione: lunghezza di una curva.

1 Definizione: lunghezza di una curva. Abstract Qui viene affrontato lo studio delle curve nel piano e nello spazio, con particolare interesse verso due invarianti: la curvatura e la torsione Il primo ci dice quanto la curva si allontana dall

Dettagli

Calcolo differenziale Test di autovalutazione

Calcolo differenziale Test di autovalutazione Test di autovalutazione 1. Sia f : R R iniettiva, derivabile e tale che f(1) = 3, f (1) = 2, f (3) = 5. Allora (a) (f 1 ) (3) = 1 5 (b) (f 1 ) (3) = 1 2 (c) (f 1 ) (1) = 1 2 (d) (f 1 ) (1) = 1 3 2. Sia

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione.

ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione. ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione. COMPETENZE MINIME- INDIRIZZO : ELETTROTECNICA ED AUTOMAZIONE 1) CORSO ORDINARIO Disciplina: ELETTROTECNICA

Dettagli

Ricorsione. Corso di Fondamenti di Informatica

Ricorsione. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Ricorsione Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e

Dettagli

Studio sperimentale della propagazione di un onda meccanica in una corda

Studio sperimentale della propagazione di un onda meccanica in una corda Studio sperimentale della propagazione di un onda meccanica in una corda Figura 1: Foto dell apparato sperimentale. 1 Premessa 1.1 Velocità delle onde trasversali in una corda E esperienza comune che quando

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

FONDAMENTI DI ECONOMIA AZIENDALE E IMPIANTISTICA INDUSTRIALE. Sistemi di rilevazione dei costi Job Costing, Process Costing

FONDAMENTI DI ECONOMIA AZIENDALE E IMPIANTISTICA INDUSTRIALE. Sistemi di rilevazione dei costi Job Costing, Process Costing FONDAMENTI DI ECONOMIA AZIENDALE E IMPIANTISTICA INDUSTRIALE Proff.. Alberto Baggini Marco Melacini A.A. 2008/2009 Sistemi di rilevazione dei costi Job Costing, Process Costing Allocazione dei costi industriali

Dettagli

Richiami: funzione di trasferimento e risposta al gradino

Richiami: funzione di trasferimento e risposta al gradino Richiami: funzione di trasferimento e risposta al gradino 1 Funzione di trasferimento La funzione di trasferimento di un sistema lineare è il rapporto di due polinomi della variabile complessa s. Essa

Dettagli

L analisi economico finanziaria dei progetti

L analisi economico finanziaria dei progetti PROVINCIA di FROSINONE CIOCIARIA SVILUPPO S.c.p.a. LABORATORI PER LO SVILUPPO LOCALE L analisi economico finanziaria dei progetti Azione n. 2 Progetti per lo sviluppo locale LA FINANZA DI PROGETTO Frosinone,

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

Anello commutativo. Un anello è commutativo se il prodotto è commutativo.

Anello commutativo. Un anello è commutativo se il prodotto è commutativo. Anello. Un anello (A, +, ) è un insieme A con due operazioni + e, dette somma e prodotto, tali che (A, +) è un gruppo abeliano, (A, ) è un monoide, e valgono le proprietà di distributività (a destra e

Dettagli

PROGRAMMAZIONE LINEARE IN DUE VARIABILI

PROGRAMMAZIONE LINEARE IN DUE VARIABILI 1 PROGRAMMAZIONE LINEARE IN DUE VARIABILI La ricerca operativa nata durante la seconda guerra mondiale ed utilizzata in ambito militare, oggi viene applicata all industria, nel settore pubblico e nell

Dettagli

Corso di Analisi Matematica. Polinomi e serie di Taylor

Corso di Analisi Matematica. Polinomi e serie di Taylor a.a. 2013/14 Laurea triennale in Informatica Corso di Analisi Matematica Polinomi e serie di Taylor Avvertenza Questi sono appunti informali delle lezioni, che vengono resi disponibili per comodità degli

Dettagli

Equilibrio generale ed efficienza dei mercati (Frank, Capitolo 15)

Equilibrio generale ed efficienza dei mercati (Frank, Capitolo 15) Equilibrio generale ed efficienza dei mercati (Frank, Capitolo 15) EQUILIBRIO ECONOMICO GENERALE Esistono molteplici relazioni tra mercati Per comprendere il funzionamento dell economia è quindi indispensabile

Dettagli

ITER AUTORIZZATIVO per un GRANDE IMPIANTO FOTOVOLTAICO ISCRIVERSI AL REGISTRO GRANDI IMPIANTI (E RISULTARE ISCRITTI NELLA GRADUATORIA GSE)

ITER AUTORIZZATIVO per un GRANDE IMPIANTO FOTOVOLTAICO ISCRIVERSI AL REGISTRO GRANDI IMPIANTI (E RISULTARE ISCRITTI NELLA GRADUATORIA GSE) Per accedere al IV Conto Energia è necessario superare 4 step per i grandi impianti. Questo documento ha lo scopo di analizzare in dettaglio ognuna delle fasi, presentandovi il quadro generale e offrendovi

Dettagli

Il piano principale di produzione

Il piano principale di produzione Il piano principale di produzione Piano principale di produzione 1 Piano principale di produzione (Master Production Schedule) MPS pianifica le consegne di prodotto finito in termini di quantità e di data

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

Dettagli

x 1 + x 2 3x 4 = 0 x1 + x 2 + x 3 = 0 x 1 + x 2 3x 4 = 0.

x 1 + x 2 3x 4 = 0 x1 + x 2 + x 3 = 0 x 1 + x 2 3x 4 = 0. Problema. Sia W il sottospazio dello spazio vettoriale R 4 dato da tutte le soluzioni dell equazione x + x 2 + x = 0. (a. Sia U R 4 il sottospazio dato da tutte le soluzioni dell equazione Si determini

Dettagli

Universitá di Firenze. Che cosa é realmente successo ai colloqui di pace di Parigi fra Henry Kissinger e Le Duc Tho

Universitá di Firenze. Che cosa é realmente successo ai colloqui di pace di Parigi fra Henry Kissinger e Le Duc Tho Universitá di Firenze FACOLTÁ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Matematica Che cosa é realmente successo ai colloqui di pace di Parigi fra Henry Kissinger e Le Duc Tho What

Dettagli

QUADERNI DI DIDATTICA

QUADERNI DI DIDATTICA Department of Applied Mathematics, University of Venice QUADERNI DI DIDATTICA Tatiana Bassetto, Marco Corazza, Riccardo Gusso, Martina Nardon Esercizi sulle funzioni di più variabili reali con applicazioni

Dettagli

1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc.

1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc. Classi Numeriche 1 1 Numeri Complessi, Formula di Eulero, Decomposizioni Notevoli,... ecc. In questo breve capitolo richiamiamo le definizioni delle classi numeriche fondamentali, già note al lettore,

Dettagli

ED. Equazioni cardinali della dinamica

ED. Equazioni cardinali della dinamica ED. Equazioni cardinali della dinamica Dinamica dei sistemi La dinamica dei sistemi di punti materiali si può trattare, rispetto ad un osservatore inerziale, scrivendo l equazione fondamentale della dinamica

Dettagli

GRANDEZZE SINUSOIDALI

GRANDEZZE SINUSOIDALI GRANDEE SINUSOIDALI INDICE -Grandezze variabili. -Grandezze periodiche. 3-Parametri delle grandezze periodiche. 4-Grandezze alternate. 5-Grandezze sinusoidali. 6-Parametri delle grandezze sinusoidali.

Dettagli

PRESENTARE UN IDEA PROGETTUALE

PRESENTARE UN IDEA PROGETTUALE PRESENTARE UN IDEA PROGETTUALE LINEE GUIDA PER UNA EFFICACE PRESENTAZIONE DI UN BUSINESS PLAN INTRODUZIONE ALLA GUIDA Questa breve guida vuole indicare in maniera chiara ed efficiente gli elementi salienti

Dettagli