simulazione e ottimizzazione per un modello di stoccaggio in una diga
simulazione e ottimizzazione per un modello di stoccaggio in una diga
simulazione e ottimizzazione per un modello di stoccaggio in una diga
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
POLITECNICO DI MILANOCorso <strong>di</strong> Stu<strong>di</strong> <strong>di</strong> Ingegneria MatematicaOrientamento Meto<strong>di</strong> StatisticiElaborato <strong>di</strong> Laurea <strong>di</strong> primo livelloSIMULAZIONE E OTTIMIZZAZIONEPER UN MODELLO DI STOCCAGGIOIN UNA DIGARelatore: Prof. Fuhrman Marco AlessandroCarm<strong>in</strong>ati Jennifer Matr. 656966Carozzi Giuliana Matr. 651439ANNO ACCADEMICO 2005-2006
R<strong>in</strong>graziamentiR<strong>in</strong>graziamo il Prof. Marco Fuhrman <strong>per</strong> l’attenzione e la professionalitàcon cui ci ha seguito, <strong>per</strong> i preziosi consigli che ci ha dato durante la stesura <strong>di</strong>questo elaborato, e soprattutto <strong>per</strong> la <strong>di</strong>sponibilità e la gentilezza <strong>di</strong>mostratanei nostri confronti.R<strong>in</strong>graziamo anche tutti coloro i quali hanno partecipato, più o meno<strong>di</strong>rettamente, alla stesura <strong>di</strong> questo elaborato. R<strong>in</strong>graziamenti speciali aiprofessori del Dipartimento <strong>di</strong> Idraulica, che ci hanno aiutato con la partetecnica, ed al <strong>per</strong>sonale delle Biblioteche <strong>di</strong> Matematica e Idraulica, che ciha assistito nella ricerca del materiale.Giuliana e JenniferR<strong>in</strong>grazio la mia famiglia <strong>per</strong> il sostegno, la comprensione, la capacità<strong>di</strong> sopportarmi anche quando sono <strong>in</strong>sopportabile (cosa che capita spessopurtroppo) e <strong>per</strong> l’affetto che mi <strong>di</strong>mostra tutti i giorni.R<strong>in</strong>grazio i miei genitori e i miei nonni anche <strong>per</strong> la possibilità che mihanno dato <strong>di</strong> arrivare f<strong>in</strong> qui, <strong>di</strong> frequentare l’<strong>un</strong>iversità e <strong>di</strong> stu<strong>di</strong>are ciòche desidero.R<strong>in</strong>grazio mia nonna Anna, <strong>per</strong>ché sono sicura che da Lassù vigila su <strong>di</strong>me; il suo ricordo, ogni giorno, mi aiuta ad andare avanti cercando sempre<strong>di</strong> trovare <strong>un</strong> motivo <strong>per</strong> cui sorridere, anche <strong>di</strong> fronte alle <strong>di</strong>fficoltà.R<strong>in</strong>grazio la <strong>per</strong>sona più importante della mia vita, Marco, <strong>per</strong> essermisempre vic<strong>in</strong>o quando ne ho bisogno, <strong>per</strong> il supporto che mi dà <strong>in</strong> ogni sceltache faccio, giusta o sbagliata che sia, e <strong>per</strong> la pazienza che porta nei mieiconfronti, e ne ha davvero tanta. Lo r<strong>in</strong>grazio <strong>in</strong>oltre <strong>di</strong> accettarmi <strong>per</strong> comesono, con i miei pochi pregi e molti <strong>di</strong>fetti.Un r<strong>in</strong>graziamento speciale alla mia compagna <strong>di</strong> tesi, Giuliana, semplicemente<strong>per</strong> tutto.JenniferIl mio più grande r<strong>in</strong>graziamento va alla mia stella polare, <strong>per</strong>chè nonpotevo desiderare <strong>un</strong> <strong>modello</strong> migliore a cui ispirarmi. Anche se il giornodella mia laurea sarà <strong>un</strong>o <strong>di</strong> quelli <strong>in</strong> cui mi mancherà maggiormente, so che<strong>in</strong> questo modo mi sarà ancora più vic<strong>in</strong>a.1
2R<strong>in</strong>grazio mio padre e mia sorella <strong>per</strong> tutto l’amore che mi danno e <strong>per</strong> illoro sostegno, <strong>per</strong>chè <strong>per</strong> me è fondamentale anche se non lo <strong>di</strong>mostro mai.R<strong>in</strong>grazio tutta la mia famiglia <strong>per</strong>chè il loro aiuto sempre presente èstato quello che mi ha <strong>per</strong>messo <strong>di</strong> arrivare f<strong>in</strong>o a qua.R<strong>in</strong>grazio Jennifer, socia non solo <strong>di</strong> tesi ma anche <strong>di</strong> molte altre avventure<strong>in</strong> questi tre anni.Last but not the least, Emanuel: you’re the piece that makes me whole.Giuliana
In<strong>di</strong>ce1 Introduzione 92 Richiami teorici sui modelli stocastici 102.1 Catene <strong>di</strong> Markov a tempo <strong>di</strong>screto . . . . . . . . . . . . . . . 102.2 Catene <strong>di</strong> Markov a tempo cont<strong>in</strong>uo . . . . . . . . . . . . . . 132.3 Processi <strong>di</strong> nascita e morte . . . . . . . . . . . . . . . . . . . 132.4 Classificazione <strong>di</strong> semplici code . . . . . . . . . . . . . . . . . 142.4.1 Discipl<strong>in</strong>a delle code . . . . . . . . . . . . . . . . . . . 152.4.2 Coda M/M/1 . . . . . . . . . . . . . . . . . . . . . . . 163 Cenni ai modelli <strong>di</strong> <strong>in</strong>ventario 193.1 Descrizione dei modelli <strong>di</strong> <strong>in</strong>ventario . . . . . . . . . . . . . . 203.2 I modelli <strong>di</strong> <strong>stoccaggio</strong> . . . . . . . . . . . . . . . . . . . . . . 213.2.1 Primo esempio: i rischi assicurativi . . . . . . . . . . . 213.2.2 Secondo esempio: le telecom<strong>un</strong>icazioni . . . . . . . . . 224 Il <strong>modello</strong> <strong>di</strong> Moran <strong>per</strong> le <strong>di</strong>ghe 234.1 Cenni sulle o<strong>per</strong>e <strong>di</strong> derivazione . . . . . . . . . . . . . . . . . 234.2 Introduzione al <strong>modello</strong> . . . . . . . . . . . . . . . . . . . . . 244.3 Il <strong>modello</strong> <strong>di</strong> Moran a tempo <strong>di</strong>screto . . . . . . . . . . . . . . 254.3.1 Il comportamento transitorio <strong>di</strong> Z n . . . . . . . . . . . 254.3.2 La <strong>di</strong>stribuzione <strong>in</strong>variante dello <strong>stoccaggio</strong> . . . . . . 275 Simulazione 305.1 Determ<strong>in</strong>azione della <strong>di</strong>stribuzione stazionaria . . . . . . . . . 325.1.1 Implementazione del <strong>modello</strong> . . . . . . . . . . . . . . 325.1.2 Analisi con <strong>in</strong>gresso <strong>di</strong> tipo Esponenziale e validazionedell’algoritmo . . . . . . . . . . . . . . . . . . . . . . . 345.1.3 Analisi con <strong>in</strong>gresso <strong>di</strong> tipo Beta . . . . . . . . . . . . 425.2 Analisi delle probabilità <strong>di</strong> secca e <strong>di</strong> overflow . . . . . . . . . 466 Problema dell’<strong>ottimizzazione</strong> 596.1 Determ<strong>in</strong>azione della f<strong>un</strong>zione guadagno . . . . . . . . . . . . 606.1.1 Determ<strong>in</strong>azione dei costi . . . . . . . . . . . . . . . . . 603
INDICE 46.1.2 Determ<strong>in</strong>azione dei ricavi . . . . . . . . . . . . . . . . 616.1.3 Determ<strong>in</strong>azione della f<strong>un</strong>zione guadagno . . . . . . . . 636.2 Simulazione della f<strong>un</strong>zione guadagno nei casi <strong>in</strong> analisi . . . . 646.2.1 Simulazione a breve term<strong>in</strong>e . . . . . . . . . . . . . . . 656.2.2 Simulazione a l<strong>un</strong>go term<strong>in</strong>e . . . . . . . . . . . . . . . 656.3 Determ<strong>in</strong>azione delle regioni ammissibili <strong>per</strong> l’<strong>ottimizzazione</strong> 726.4 Metodo <strong>di</strong> <strong>ottimizzazione</strong> adottato . . . . . . . . . . . . . . . 746.4.1 Def<strong>in</strong>izione dell’algoritmo <strong>per</strong> l’<strong>ottimizzazione</strong> non v<strong>in</strong>colata. . . . . . . . . . . . . . . . . . . . . . . . . . . 756.4.2 Convergenza del metodo compass search . . . . . . . . 766.4.3 Estensione dell’algoritmo al caso <strong>di</strong> <strong>ottimizzazione</strong> v<strong>in</strong>colata. . . . . . . . . . . . . . . . . . . . . . . . . . . 786.5 Risultati dell’<strong>ottimizzazione</strong> nei casi <strong>in</strong> analisi . . . . . . . . . 796.6 Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85A Script del software sviluppato 86A.1 errestar.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86A.2 stazionariagamma.m . . . . . . . . . . . . . . . . . . . . . . . 87A.3 stazionariabeta.m . . . . . . . . . . . . . . . . . . . . . . . . . 88A.4 ritornadensita.m . . . . . . . . . . . . . . . . . . . . . . . . . 89A.5 densitaanalitica.m . . . . . . . . . . . . . . . . . . . . . . . . 90A.6 frazioneoverexp.m . . . . . . . . . . . . . . . . . . . . . . . . 92A.7 frazioneoverbeta.m . . . . . . . . . . . . . . . . . . . . . . . . 93A.8 frazioneseccaexp.m . . . . . . . . . . . . . . . . . . . . . . . . 94A.9 frazioneseccabeta.m . . . . . . . . . . . . . . . . . . . . . . . 96A.10 overflowanalitico.m . . . . . . . . . . . . . . . . . . . . . . . . 97A.11 seccaanalitica.m . . . . . . . . . . . . . . . . . . . . . . . . . . 99A.12 guadagno.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100A.13 centratura.m . . . . . . . . . . . . . . . . . . . . . . . . . . . 101A.14 ottimoexp.m . . . . . . . . . . . . . . . . . . . . . . . . . . . 103A.15 ottimobeta.m . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Bibliografia 107
Elenco delle figure2.1 Grafo <strong>di</strong> <strong>un</strong>a coda M/M/1 . . . . . . . . . . . . . . . . . . . . 165.1 Distribuzione Esponenziale p=0.5 . . . . . . . . . . . . . . . . 365.2 Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Exp p=0.5, parametri <strong>di</strong>ga m=0.75e k=3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.3 Distribuzione Esponenziale p=0.8 . . . . . . . . . . . . . . . . 375.4 Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Exp p=0.8, parametri <strong>di</strong>ga m=1e k=5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.5 Confronto tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Expp=0.5, parametri <strong>di</strong>ga k=3, m=0.75 . . . . . . . . . . . . . . 395.6 Confronto tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Expp=0.8, parametri <strong>di</strong>ga k=5, m=1 . . . . . . . . . . . . . . . . 395.7 Errore tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.5,parametri <strong>di</strong>ga k=3, m=0.75 . . . . . . . . . . . . . . . . . . 415.8 Errore tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.8,parametri <strong>di</strong>ga k=5, m=1 . . . . . . . . . . . . . . . . . . . . 415.9 Distribuzione Beta, a=3 e b=4, <strong>di</strong>latata su [0,4] . . . . . . . . 445.10 Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Beta a=3 b=4, parametri <strong>di</strong>gam=1.5 e k=4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.11 Confronto tra la <strong>di</strong>stribuzione simulata <strong>di</strong> R* <strong>per</strong> <strong>in</strong>gressoBeta (blu) e <strong>di</strong>stribuzione data dagli stimatori <strong>di</strong> massimaverosimiglianza(rosso) . . . . . . . . . . . . . . . . . . . . . . 455.12 Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.5 . . . . . . . . . . . . . . . . . . . . . . . . 495.13 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow,<strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.5 . . . . . . . . . . . . . 495.14 Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.8 . . . . . . . . . . . . . . . . . . . . . . . . 505.15 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow,<strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.8 . . . . . . . . . . . . . 505.16 Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Beta<strong>di</strong>latata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
ELENCO DELLE FIGURE 65.17 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow,<strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata . . . . . . . . . . . . . . . . . 515.18 Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Esponenzialep=0.5 . . . . . . . . . . . . . . . . . . . . . . . . . . 525.19 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.5 . . . . . . . . . . . . . . 525.20 Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Esponenzialep=0.8 . . . . . . . . . . . . . . . . . . . . . . . . . . 535.21 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.8 . . . . . . . . . . . . . . 535.22 Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Beta<strong>di</strong>latata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545.23 Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata . . . . . . . . . . . . . . . . . . 545.24 Confronto tra frazione <strong>in</strong> overflow simulata (su<strong>per</strong>ficie verde)e calcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.5 . . . . . . . . . . . . . . . . . . . . . . . . . . 555.25 Confronto tra frazione <strong>in</strong> overflow simulata (su<strong>per</strong>ficie verde)e calcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.8 . . . . . . . . . . . . . . . . . . . . . . . . . . 555.26 Confronto tra frazione <strong>in</strong> secca simulata (su<strong>per</strong>ficie verde) ecalcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565.27 Confronto tra frazione <strong>in</strong> secca simulata (su<strong>per</strong>ficie verde) ecalcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565.28 Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>overflow, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.5 . . . . . . . . . 575.29 Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>overflow, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8 . . . . . . . . . 575.30 Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>secca, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.5 . . . . . . . . . . 585.31 Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>secca, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8 . . . . . . . . . . 586.1 Sezione laterale della <strong>di</strong>ga, che evidenzia il f<strong>un</strong>zionamentodella centrale idroelettrica . . . . . . . . . . . . . . . . . . . . 636.2 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.5, calcolata su orizzonte temporale <strong>di</strong> 30 anni . . . . 666.3 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.5, calcolata su orizzonte temporale<strong>di</strong> 30 anni . . . . . . . . . . . . . . . . . . . . . . . . . . 666.4 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.8, calcolata su orizzonte temporale <strong>di</strong> 30 anni . . . . 67
ELENCO DELLE FIGURE 76.5 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.8, calcolata su orizzonte temporale<strong>di</strong> 30 anni . . . . . . . . . . . . . . . . . . . . . . . . . . 676.6 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latatacon a=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 30 anni . . 686.7 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoBeta <strong>di</strong>latata con a=3, b=4; calcolata su orizzontetemporale <strong>di</strong> 30 anni . . . . . . . . . . . . . . . . . . . . . . . 686.8 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.5, calcolata su orizzonte temporale <strong>di</strong> 100 anni . . . 696.9 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.5, calcolata su orizzonte temporale<strong>di</strong> 100 anni . . . . . . . . . . . . . . . . . . . . . . . . . . 696.10 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenzialecon p=0.8, calcolata su orizzonte temporale <strong>di</strong> 100 anni . . . 706.11 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.8, calcolata su orizzonte temporale<strong>di</strong> 100 anni . . . . . . . . . . . . . . . . . . . . . . . . . . 706.12 F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latatacon a=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 100 anni . 716.13 L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoBeta <strong>di</strong>latata con a=3, b=4; calcolata su orizzontetemporale <strong>di</strong> 100 anni . . . . . . . . . . . . . . . . . . . . . . 716.14 Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Esponenziale (p=0.5):l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a 0.05 (rosso), l<strong>in</strong>ea<strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a 0.2 (verde), v<strong>in</strong>colok > m (blu). . . . . . . . . . . . . . . . . . . . . . . . . . . . 726.15 Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Esponenziale (p=0.8):l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a 0.05 (rosso), l<strong>in</strong>ea<strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a 0.2 (verde), v<strong>in</strong>colok > m (blu). . . . . . . . . . . . . . . . . . . . . . . . . . . . 736.16 Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata (a=3,b=4, <strong>di</strong>lataz=4): l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a0.05 (rosso), l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a0.2 (verde), v<strong>in</strong>colo k > m (blu). . . . . . . . . . . . . . . . . 736.17 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.5; calcolato su orizzonte temporale <strong>di</strong> 30 anni. 826.18 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.8; calcolato su orizzonte temporale <strong>di</strong> 30 anni. 826.19 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata <strong>di</strong>parametri a=3 e b=4; calcolato su orizzonte temporale <strong>di</strong> 30anni. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836.20 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.5; calcolato su orizzonte temporale <strong>di</strong> 100 anni. 83
ELENCO DELLE FIGURE 86.21 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.8; calcolato su orizzonte temporale <strong>di</strong> 100 anni. 846.22 Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata <strong>di</strong>parametri a=3 e b=4; calcolato su orizzonte temporale <strong>di</strong> 100anni. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Capitolo 1IntroduzioneMolti aspetti della probabilità sono utilizzati all’<strong>in</strong>terno <strong>di</strong> <strong>di</strong>verse aree,tra questi, la teoria delle code non è solo <strong>un</strong>o dei più antichi, ma anche<strong>un</strong>o dei più importanti, <strong>per</strong> questo tra i più stu<strong>di</strong>ati. Problemi relativialle code emergono <strong>in</strong> <strong>un</strong>’<strong>in</strong>f<strong>in</strong>ità <strong>di</strong> situazioni nella vita quoti<strong>di</strong>ana ed hanno<strong>per</strong> questo stimolato la nascita <strong>di</strong> molta letteratura a riguardo, sia <strong>di</strong>tipo matematico teorico, che <strong>di</strong> tipo applicativo. Ci sono molte situazioniquoti<strong>di</strong>ane <strong>in</strong> cui ci troviamo <strong>di</strong> fronte a file d’attesa, alc<strong>un</strong>e delle quali vengonosubito alla mente, <strong>per</strong> esempio: clienti alla cassa <strong>di</strong> <strong>un</strong> su<strong>per</strong>mercato,utenti <strong>in</strong> attesa ad <strong>un</strong> central<strong>in</strong>o telefonico. Più recenti <strong>in</strong>vece, sono le applicazionidella teoria delle code a molti problemi collegati alla trasmissionedati, piuttosto che alla gestione del traffico via web.A partire dalle code nascono dei processi stocastici, denom<strong>in</strong>ati meto<strong>di</strong><strong>di</strong> <strong>stoccaggio</strong>, che applicano la teoria sviluppata a problemi <strong>di</strong> gestione <strong>di</strong>quantità immagazz<strong>in</strong>ate. Essi possono essere facilmente rivisitati allo scopo<strong>di</strong> modellizzare ciò che avviene nell’ambito del f<strong>un</strong>zionamento <strong>di</strong> <strong>un</strong>a <strong>di</strong>ga.Questa affermazione trova sostegno sia nelle argomentazioni proposte nellatrattazione che nella descrizione tecnica su cosa sia <strong>un</strong>’o<strong>per</strong>a <strong>di</strong> derivazione.Scopo pr<strong>in</strong>cipale <strong>di</strong> questa tesi è l’adattamento dei generici modelli <strong>di</strong><strong>stoccaggio</strong> al caso particolare delle <strong>di</strong>ghe, al f<strong>in</strong>e <strong>di</strong> effettuare simulazioniche <strong>per</strong>mettano, partendo dalla teoria relativa a questa classe <strong>di</strong> processistocastici, <strong>di</strong> sviluppare <strong>un</strong>a serie <strong>di</strong> risultati orig<strong>in</strong>ali, che non sono present<strong>in</strong>ella letteratura del campo.La parte centrale del lavoro consiste nello sviluppo <strong>di</strong> numerosi programmi<strong>in</strong> ambiente Matlab che <strong>per</strong>mettono, a fronte <strong>di</strong> <strong>un</strong>a precedentestima sulla <strong>di</strong>stribuzione <strong>di</strong> probabilità degli <strong>in</strong>gressi alla <strong>di</strong>ga, <strong>di</strong> ricavarequantità fondamentali nella gestione della stessa, <strong>per</strong> le quali non esistonoespressioni analitiche esplicite. Utilizzando i risultati ottenuti si è effettuato<strong>un</strong> processo <strong>di</strong> <strong>ottimizzazione</strong> sui parametri caratteristici delle <strong>di</strong>ghe, al f<strong>in</strong>e<strong>di</strong> rendere il più efficiente possibile il f<strong>un</strong>zionamento delle stesse.9
Capitolo 2Richiami teorici sui modellistocastici2.1 Catene <strong>di</strong> Markov a tempo <strong>di</strong>scretoUna catena <strong>di</strong> Markov è <strong>un</strong> <strong>modello</strong> matematico che serve <strong>per</strong> descrivere<strong>un</strong> fenomeno che può trovarsi <strong>in</strong> tanti stati <strong>di</strong>versi. Si <strong>in</strong>troducono lenotazioni relative agli elementi della catena:I = <strong>in</strong>sieme, f<strong>in</strong>ito o al più numerabile, che <strong>in</strong><strong>di</strong>ca lo spazio degli stati;i, j, k = generici elementi <strong>di</strong> I;p ij = probabilità <strong>di</strong> transizione dallo stato i allo stato j.Nel caso <strong>in</strong> cui il numero <strong>di</strong> stati sia f<strong>in</strong>ito, è possibile rappresentare le p ijattraverso <strong>un</strong>a matrice <strong>di</strong> transizione, detta matrice stocastica.Def<strong>in</strong>izione 1 (matrice stocastica). Una famiglia <strong>di</strong> numeri (p ij ) coni,j ∈ I è detta matrice stocastica se valgono le seguenti proprietà:1. p ij ≥ 0.2. ∑ +∞j=0 p ij = 1 ∀i.Si <strong>in</strong><strong>di</strong>chi ora con X n lo stato del sistema al tempo n, dove n assume valoriall’<strong>in</strong>terno <strong>di</strong> <strong>un</strong> <strong>in</strong>tervallo <strong>di</strong>screto; X n assumerà qu<strong>in</strong><strong>di</strong> valori <strong>in</strong> I. Considerandogli stati del sistema nei <strong>di</strong>versi istanti <strong>di</strong> tempo si ha la generazione<strong>di</strong> <strong>un</strong> processo stocastico.Def<strong>in</strong>izione 2 (processo stocastico). Una famiglia <strong>di</strong> variabili aleatorie X 0 ,X 1 ... a valori <strong>in</strong> I è detta processo stocastico a tempo <strong>di</strong>screto nello spaziodegli stati I.10
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 11Def<strong>in</strong>izione 3 (<strong>di</strong>stribuzione <strong>di</strong> <strong>un</strong>a variabile aleatoria (v.a.)). Si def<strong>in</strong>iscelegge della v.a. XSe valgono le seguenti proprietà:1. λ i ≥ 02. ∑ +∞i=0 λ i = 1 ∀iλ i = P (X = i) con i ∈ I.il vettore λ = (λ i ) è chiamato <strong>di</strong>stribuzione su I e viene spesso <strong>in</strong><strong>di</strong>cato conΠ = (Π i ).Def<strong>in</strong>izione 4 (catena <strong>di</strong> Markov). Il processo stocastico (X n ) n≥0 è dettocatena <strong>di</strong> Markov associata a λ e P se valgono le seguenti:1. P (X 0 = i) = λ i con i,j ∈ I2. P (X n+1 = j | X n = i, ..., X 0 = i 0 ) = p ij con n = 0,1,2...dove le p ij sono dette probabilità <strong>di</strong> transizione dallo stato i allo stato j.Osservazione 1. Il sistema ha <strong>di</strong>menticato la traiettoria passata, ovveroha mancanza <strong>di</strong> memoria, non ricorda gli stati attraversati <strong>in</strong> precedenza edevolve <strong>per</strong>ciò <strong>in</strong><strong>di</strong>pendentemente dalla sua storia precedente.Teorema 1 (Probabilità <strong>di</strong> transizione a n passi). Si consideri <strong>un</strong>a catena<strong>di</strong> Markov (λ, P ) con (X n ) n≥0 . Si def<strong>in</strong>isce probabilità <strong>di</strong> transizione a npassi la seguente quantità:P (X n = j) = (λP n ) jP (X n = j|X 0 = i) = (P n ) ij = (p ij ) n = p (n)ijdove i p (n)ijsono gli elementi della matrice P n .Si <strong>in</strong>troduce ora la seguente notazione:P i (A) = P (A | X 0 = i)con A generico evento, <strong>per</strong> <strong>in</strong><strong>di</strong>care <strong>un</strong>a catena che parte <strong>in</strong>izialmente dallostato i.Def<strong>in</strong>izione 5. Lo stato i conduce allo stato j (i −→ j) se:P i (X n = j <strong>per</strong> qualche tempo n ≥ 0) > 0.
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 12Def<strong>in</strong>izione 6 (stati com<strong>un</strong>icanti). Due stati i e j si <strong>di</strong>cono com<strong>un</strong>icanti sevalgono le seguenti relazioni:i ←→ j o equivalentemente i −→ j e j −→ iDef<strong>in</strong>izione 7 (catena irriducibile). Una catena si <strong>di</strong>ce irriducibile se tuttigli stati com<strong>un</strong>icano tra loro.Def<strong>in</strong>izione 8 (stato transitorio). Uno stato i si <strong>di</strong>ce transitorio seP i (X n = i <strong>per</strong> <strong>in</strong>f<strong>in</strong>iti n) = 0.Def<strong>in</strong>izione 9 (stato ricorrente). Uno stato i si <strong>di</strong>ce ricorrente seP i (X n = i <strong>per</strong> <strong>in</strong>f<strong>in</strong>iti n) = 1.Teorema 2. Si hanno le seguenti proprietà <strong>per</strong> stati ricorrenti e transitori:se i è ricorrente allora ∑ +∞n=0 p(n) ii= ∞.se i è transitorio allora ∑ +∞n=0 p(n) ii< ∞.Teorema 3. Tutti gli stati <strong>di</strong> <strong>un</strong>a stessa classe (com<strong>un</strong>icante) sono tuttiricorrenti oppure tutti transitori. Si parla qu<strong>in</strong><strong>di</strong> <strong>di</strong> classe ricorrente oppure<strong>di</strong> classe transitoria.Def<strong>in</strong>izione 10 (misura). Una misura su I è def<strong>in</strong>ita come <strong>un</strong> vettoreλ = (λ i ) con 0 ≤ λ i ≤ ∞.Evidentemente, ogni <strong>di</strong>stribuzione è <strong>un</strong>a misura, <strong>per</strong>ò ci sono delle misureche non sono <strong>di</strong>stribuzioni.Def<strong>in</strong>izione 11 (misura <strong>in</strong>variante). Una misura λ si <strong>di</strong>ce <strong>in</strong>variante <strong>per</strong><strong>un</strong>a matrice stocastica P seλP = λ.Def<strong>in</strong>izione 12 (<strong>di</strong>stribuzione <strong>in</strong>variante). Se <strong>in</strong> aggi<strong>un</strong>ta alla con<strong>di</strong>zioneprecedente si ha che+∞∑λ i = 1.i=0Si <strong>in</strong><strong>di</strong>ca ora con T k = <strong>in</strong>f {n ≥ X n = k} il tempo <strong>di</strong> primo passaggio<strong>per</strong> lo stato k.Def<strong>in</strong>izione 13. Uno stato k si <strong>di</strong>ce ricorrente positivo se E k [T k ] < ∞.
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 132.2 Catene <strong>di</strong> Markov a tempo cont<strong>in</strong>uoValgono tutte le def<strong>in</strong>zioni sopra, quello che cambia è l’<strong>in</strong>tervallo <strong>in</strong> cuivaria il tempo, <strong>in</strong>fatti ora si ha che t ∈ [0, ∞).Osservazione 2. Lo spazio degli stati I resta <strong>di</strong>screto.Quella che nel caso <strong>di</strong>screto è def<strong>in</strong>ita come matrice <strong>di</strong> transizione Pviene ora def<strong>in</strong>ita come Q-matrice:Def<strong>in</strong>izione 14 (Q-matrice). Una Q-matrice, i cui elementi sono def<strong>in</strong>iticome (q ij ) i,j∈I, sod<strong>di</strong>sfa le seguenti con<strong>di</strong>zioni:1. q ii ≤ 02. q ij ≥ 0 se i ≠ j3. ∑ +∞j≠i q ij = −q ii < ∞Osservazione 3. ∑ +∞jq ij = 0.Ad ogni Q-matrice si associa <strong>un</strong>’altra matrice stocastica che si <strong>in</strong><strong>di</strong>ca conΠ = (Π ij ) detta matrice dei salti, i cui elementi si trovano come:• nel caso <strong>in</strong> cui q i > 0 si ha che:- Π ij = q ijq iise i ≠ j- Π ij = 0 se i = j• nel caso <strong>in</strong> cui q i = 0 si ha che Π ij ≡ δ ij .Def<strong>in</strong>izione 15 (misura <strong>in</strong>variante). Una misura λ si <strong>di</strong>ce <strong>in</strong>variante <strong>per</strong><strong>un</strong>a Q-matrice seλQ = 0.Vale <strong>in</strong>oltre il seguente:Teorema 4. Sia Q <strong>un</strong>a Q-matrice e Π la matrice dei salti associata.Sia λ = (λ i ) <strong>un</strong>a misura e sia µ = (µ i ) tale che µ i = λ i q i alloraλQ = 0 ←→ µ = µΠ.2.3 Processi <strong>di</strong> nascita e morteCon l’espressione processo <strong>di</strong> nascita-morte si <strong>in</strong>tende <strong>un</strong>a catena <strong>di</strong>Markov {X t } t≥0che partendo dallo stato n può muoversi solo verso lo staton-1 (il precedente) oppure n+1 (il successivo). Con la notazione X t = nsi <strong>in</strong><strong>di</strong>ca che al tempo t, ci sono n <strong>in</strong><strong>di</strong>vidui <strong>in</strong> <strong>un</strong>a certa situazione. Una
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 14transizione verso destra <strong>in</strong><strong>di</strong>ca la nascita <strong>di</strong> <strong>un</strong> <strong>in</strong><strong>di</strong>viduo, mentre <strong>un</strong>a transizioneverso s<strong>in</strong>istra ne <strong>in</strong><strong>di</strong>ca la morte.In<strong>di</strong>cando con β n l’<strong>in</strong>tensità <strong>di</strong> nascita e con δ n l’<strong>in</strong>tensità <strong>di</strong> morte, lamatrice <strong>di</strong> transizione associata è del tipo:⎛⎞−β 0 β 0 0 0 · · ·δ 1 − (δ 1 + β 1 ) β 1 0 · · ·Q = ⎜⎝ 0 δ 2 − (δ 2 + β 2 ) β 2 · · · ⎟⎠.. .. .. .La quale è sempre irriducibile.La matrice dei salti {Y n } associata è caratterizzata <strong>in</strong>vece dalla seguentematrice <strong>di</strong> transizione:dove p n =⎛Q = ⎜⎝0 1 0 0 · · ·q 1 0 p 1 0 · · ·0 q 2 0 p 2 · · ·.. .. .βn(β n +δ n ) mentre q n = 1 − p n = δn(β n +δ n ) .Proposizione 1. La ricorrenza <strong>di</strong> {X t } t≥0o equivalentemente <strong>di</strong> {Y n }corrisponde alla seguente con<strong>di</strong>zione:+∞∑n=1⎞⎟⎠δ 1 · · · δ n+∞∑ q 1 · · · q n== ∞.β 1 · · · β n pn=1 1 · · · p nProposizione 2. Un processo <strong>di</strong> nascita e morte si <strong>di</strong>ce non esplosivo se e solose R < ∞ doveR =+∞∑n=1r n , r n =n∑k=0δ k+1 · · · δ nβ k · · · β n.Corollario 1. Nel caso ricorrente, la misura <strong>in</strong>variante µ = (µ n ) n∈N<strong>per</strong>la catena dei salti {Y n } è data daµ n = p 1 · · · p n−1q 1 · · · q nµ 0 , n = 1,2 · · · .2.4 Classificazione <strong>di</strong> semplici codeMa che cos’è <strong>un</strong>a coda? Una coda è <strong>un</strong>a classe particolare <strong>di</strong> fenomeniche rappresentano situazioni reali <strong>in</strong> cui ci sono delle file d’attesa.La struttura <strong>di</strong> <strong>un</strong>a coda può essere descritta attraverso queste quantità:
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 15• il processo <strong>di</strong> arrivo, ovvero il modo <strong>in</strong> cui arrivano i clienti;• il tipo <strong>di</strong> servizio, ovvero il modo <strong>in</strong> cui il cliente viene servito;• la <strong>di</strong>scipl<strong>in</strong>a della coda, ovvero l’algoritmo che determ<strong>in</strong>a l’or<strong>di</strong>ne conil quale sono serviti i clienti.L’utilizzo <strong>di</strong> queste, <strong>in</strong> certe situazioni, può <strong>di</strong>venire complicato e spessopoco <strong>in</strong>formativo. Una notazione più utilizzata oggi, <strong>in</strong>trodotta da Kendallnel 1953, è <strong>di</strong> imme<strong>di</strong>ata comprensione e consiste, <strong>per</strong> esempio, nel sostituirel’espressione coda con <strong>un</strong> s<strong>in</strong>golo server, arrivi completamente casualie tempo <strong>di</strong> servizio generico con l’acronimo M/G/1.In generale si utilizza <strong>un</strong>a str<strong>in</strong>ga del tipo α/β/m, dove:• α <strong>in</strong><strong>di</strong>ca la <strong>di</strong>stribuzione dei tempi <strong>di</strong> attesa;• β <strong>in</strong><strong>di</strong>ca la <strong>di</strong>stribuzione dei tempi <strong>di</strong> servizio;• m <strong>in</strong><strong>di</strong>ca il numero dei server.I valori più com<strong>un</strong>i <strong>per</strong> α e β sono i seguenti:• M, la <strong>di</strong>stribuzione esponenziale (M = Markoviana. Altri valori possibilisono completamente casuale e Poissoniana.).• D, la <strong>di</strong>stribuzione degenera <strong>in</strong> <strong>un</strong> s<strong>in</strong>golo p<strong>un</strong>to d ∈ (0, ∞), <strong>di</strong> solitod=1 (D = determ<strong>in</strong>istica).• G, <strong>di</strong>stribuzione generale, non meglio specificata.2.4.1 Discipl<strong>in</strong>a delle codeUna lista, non completa, <strong>di</strong> possibili <strong>di</strong>scipl<strong>in</strong>e delle code è la seguente:FIFO First In, First Out. I clienti sono serviti <strong>in</strong> or<strong>di</strong>ne <strong>di</strong> arrivo.LIFO Last In, First Out. L’ultimo cliente arrivato è il primo ad essereservito. Utilizzato <strong>per</strong> esempio negli <strong>in</strong>ventari, <strong>in</strong> cui si utilizzano pile<strong>di</strong> oggetti.SIRO Service In Random Order. I clienti sono serviti <strong>in</strong> modo casuale.Utilizzato <strong>per</strong> esempio nei central<strong>in</strong>i telefonici, dove il sistema nonricorda quando il cliente è arrivato.La <strong>di</strong>scipl<strong>in</strong>a più com<strong>un</strong>e è la prima sopra menzionata, <strong>in</strong> cui sostanzialmenteè rispettato l’or<strong>di</strong>ne <strong>di</strong> arrivo dei clienti, come accade <strong>per</strong> esempio nelle file<strong>di</strong> attesa della posta, piuttosto che ad <strong>un</strong> casello autostradale.
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 162.4.2 Coda M/M/1Questo tipo <strong>di</strong> coda corrisponde a <strong>un</strong> processo <strong>di</strong> nascita e morte <strong>in</strong> cuiβ n = β e δ n = δ ,si hanno cioè valori <strong>in</strong><strong>di</strong>pendenti da n.Valori com<strong>un</strong>emente utilizzati <strong>per</strong> β e δ sonoβ = λ e δ = µ,mentre n <strong>in</strong><strong>di</strong>ca lo stato del sistema, ovvero il numero <strong>di</strong> clienti presenti nelsistema stesso.Figura 2.1: Grafo <strong>di</strong> <strong>un</strong>a coda M/M/1
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 17Per questo tipo <strong>di</strong> coda si hanno le seguenti ipotesi:1. Tempi <strong>di</strong> attesa tra <strong>un</strong> cliente e il successivo con legge esponenziale <strong>di</strong>parametro λ, S ∼ Exp (λ).2. Tempi <strong>di</strong> servizio con legge esponenziale <strong>di</strong> parametro µ, T ∼ Exp (µ).3. Tempi <strong>di</strong> attesa e <strong>di</strong> servizio tra loro <strong>in</strong><strong>di</strong>pendenti.4. Un solo server.5. Ness<strong>un</strong> cliente viene scartato, la l<strong>un</strong>ghezza della coda non ha limite.Def<strong>in</strong>izione 16 (<strong>in</strong>tensità <strong>di</strong> traffico). Si def<strong>in</strong>isce <strong>in</strong>tensità <strong>di</strong> traffico laseguente quantità:ρ = λ µProposizione 3. Una coda M/M/1 con <strong>in</strong>tensità <strong>di</strong> traffico ρ si <strong>di</strong>ce ricorrentese e solo se ρ ≤ 1.Proposizione 4. Una coda M/M/1 con <strong>in</strong>tensità <strong>di</strong> traffico ρ si <strong>di</strong>ce transientese e solo se ρ > 1.Proposizione 5. La <strong>di</strong>stribuzione <strong>in</strong>variante, che quando esiste (quandoρ < 1) è <strong>un</strong>ica, vale:Π n = P (X t = n) = ρ n (1 − ρ)∀nIn<strong>di</strong>ca la probabilità <strong>di</strong> trovare la catena nello stato n <strong>in</strong> qual<strong>un</strong>queistante <strong>di</strong> tempo t lo si osservi.In<strong>di</strong>ci <strong>di</strong> prestazioneSi calcolano ora su questo tipo <strong>di</strong> coda alc<strong>un</strong>e quantità <strong>in</strong>teressanti, utili<strong>per</strong> dare <strong>un</strong>’idea delle prestazioni della coda stessa. Si suppone ρ < 1,<strong>un</strong>’<strong>un</strong>ica <strong>di</strong>stribuzione <strong>in</strong>variante, e che la coda sia <strong>in</strong> equilibrio, ovveroP (X t = n) = Π n . L’evento {X t = n} <strong>in</strong><strong>di</strong>ca che al tempo t nel sistema cisono n clienti. Se n > 0 il primo cliente è servito e gli altri sono <strong>in</strong> coda.Qu<strong>in</strong><strong>di</strong>:P (X t = n) = Π n = ρ n (1 − ρ)• Si può essere <strong>in</strong>teressati a voler sa<strong>per</strong>e quanti clienti <strong>in</strong> me<strong>di</strong>a ci sononel sistema, e questo valore lo si ottiene facendo:E [X t ] =+∞∑n=0nP (X t = n) =+∞∑n=0nρ n (1 − ρ) =ρ1 − ρ = λµ − λ .
CAPITOLO 2. RICHIAMI TEORICI SUI MODELLI STOCASTICI 18• Si potrebbe voler conoscere l’affaticamento del server, ovvero la probabilitàche nel server ci siano 0 clienti al tempo t, dato da:P (X t = 0) = Π 0 = 1 − ρ = 1 − λ µ .Se questo numero è grande non va bene, <strong>per</strong>chè vuole <strong>di</strong>re che il serversta lavorando poco.• Si calcoli ora il tempo me<strong>di</strong>o <strong>di</strong> <strong>per</strong>manenza <strong>di</strong> <strong>un</strong> cliente nel sistema,che, attenzione, non è il tempo <strong>di</strong> servizio.Introducendo la variabile aleatoria:L = tempo <strong>di</strong> <strong>per</strong>manenza nel sistemae supponendo che quando il cliente arriva nel sistema abbia davanti asè <strong>un</strong> numero n <strong>di</strong> clienti noto, si ha che:E [L | X t = n] = n + 1µ .Ma come si calcola il valore atteso con<strong>di</strong>zionato?E [L] =+∞∑n=0E [L | X t = n] P (X t = n) =+∞∑n=0n + 1µ Π n =1+∞∑(n + 1) Π n = 1 +∞∑Π n + 1 +∞∑nΠ n =µµ µn=0n=0 n=01µ + 1 +∞∑nΠ n = 1 µµ + 1 λµ µ − λ = 1µ − λ ,n=0quantità corrispondente anche al tempo me<strong>di</strong>o <strong>di</strong> servizio <strong>in</strong><strong>in</strong>terrotto.• In<strong>di</strong>cando con C il numero <strong>di</strong> clienti che aspettano <strong>di</strong> essere serviti, siha che:λ 2E [C] =µ (µ − λ) .
Capitolo 3Cenni ai modelli <strong>di</strong><strong>in</strong>ventarioIn questo capitolo si sono voluti approfon<strong>di</strong>re i modelli <strong>di</strong> <strong>in</strong>ventario,classe particolare dei modelli stocastici sulla quale è stata posta attenzionea partire dagli anni Sessanta. Questo approfon<strong>di</strong>mento trova motivazionenel fatto che le o<strong>per</strong>e <strong>di</strong> derivazione, descritte nei dettagli nel capitolo successivo,possono essere viste come <strong>un</strong> <strong>modello</strong> <strong>di</strong> <strong>in</strong>ventario, anche se non<strong>di</strong> tipo convenzionale. Risulta qu<strong>in</strong><strong>di</strong> utile <strong>in</strong>com<strong>in</strong>ciare questa trattazioneconsiderando la teoria generale <strong>di</strong> questa classe <strong>di</strong> modelli. A questo scopo siillustrano sia il <strong>modello</strong> generale, a cui tutta la classe fa riferimento, che <strong>un</strong>aparticolare sottoclasse data dai modelli <strong>di</strong> <strong>stoccaggio</strong>, alla quale appartengonoanche le o<strong>per</strong>e <strong>di</strong> derivazione. All’<strong>in</strong>terno dei modelli <strong>di</strong> <strong>stoccaggio</strong> siconsiderano poi due importanti applicazioni, a scopo esemplificativo. La primaapplicazione analizzata è <strong>di</strong> tipo economico e fa riferimento alla gestionedei rischi assicurativi, mentre la seconda è <strong>di</strong> tipo <strong>in</strong>gegneristico e fa riferimentoall’ambito delle telecom<strong>un</strong>icazioni. Tuttavia si descrivono soltanto lel<strong>in</strong>ee generali <strong>di</strong> questi due modelli specifici, poichè <strong>un</strong>a trattazione completaesula dai nostri scopi.19
CAPITOLO 3. CENNI AI MODELLI DI INVENTARIO 203.1 Descrizione dei modelli <strong>di</strong> <strong>in</strong>ventarioUn <strong>in</strong>ventario è <strong>un</strong>a quantità <strong>di</strong> materiale immagazz<strong>in</strong>ata allo scopo <strong>di</strong><strong>un</strong>a futura ven<strong>di</strong>ta o <strong>per</strong> la produzione. Questa quantità immagazz<strong>in</strong>ata èdescritta dalla variabile Z n , che rappresenta il livello dell’<strong>in</strong>ventario al tempon, ed è descritta tramite la f<strong>un</strong>zione <strong>di</strong> <strong>in</strong>ventario. Per tempi <strong>di</strong>screti questaf<strong>un</strong>zione è def<strong>in</strong>ita tramite la seguente relazione ricorsiva:Z n+1 = Z n + X n − Y n , (3.1)dove X n è la quantità or<strong>di</strong>nata al tempo n, <strong>per</strong> n = 0,1,2,..., ovvero l’<strong>in</strong>put,<strong>in</strong> accordo con <strong>un</strong>a specifica politica d’or<strong>di</strong>ne; mentre Y n è la quantitàvenduta, ovvero l’output, nell’<strong>in</strong>tervallo <strong>di</strong> tempo (n, n + 1). Si consideripoi la domanda <strong>di</strong> materiale durante l’<strong>in</strong>tervallo <strong>di</strong> tempo (n, n + 1) e lasi <strong>in</strong><strong>di</strong>chi con ξ n ; si assume qu<strong>in</strong><strong>di</strong> che X n , Y n e ξ n sono variabili aleatorie.Dalla relazione <strong>di</strong> ricorrenza si deduce che Z n assume valori <strong>in</strong> R, dove valor<strong>in</strong>egativi <strong>in</strong><strong>di</strong>cano il fatto che la domanda non è stata sod<strong>di</strong>sfatta.Come casi particolari della (3.1) si hanno i seguenti modelli <strong>di</strong> <strong>in</strong>ventario:1. La domanda ξ n è considerata come <strong>un</strong>a variabile casuale con <strong>un</strong>a certa<strong>di</strong>stribuzione <strong>di</strong> probabilità nota, mentre X n è la quantità or<strong>di</strong>nata altempo n <strong>in</strong> accordo con <strong>un</strong>a certa politica d’or<strong>di</strong>ne prestabilita. Laquantità venduta è allora <strong>un</strong>a f<strong>un</strong>zione della domanda e della quantità<strong>di</strong>sponibile; così si ha che Y n = f(ξ n , Z n + X n ), dove la f<strong>un</strong>zione f(·)è specificata dalla politica d’or<strong>di</strong>ne.2. La fornitura <strong>di</strong> materiale è sotto controllo nel senso che la quantitàvenduta sod<strong>di</strong>sfa <strong>un</strong>a relazione del tipo (3.1). Ci sono com<strong>un</strong>que situazioni<strong>in</strong> cui la fornitura è <strong>un</strong>a variabile casuale, anche se la domandaè supposta nota e sod<strong>di</strong>sfa <strong>un</strong>a precisa politica d’or<strong>di</strong>ne.I pr<strong>in</strong>cipali problemi riguardanti l’analisi <strong>di</strong> modelli <strong>di</strong> <strong>in</strong>ventario sono iseguenti:• Il problema dell’<strong>ottimizzazione</strong>: si consideri <strong>un</strong> <strong>modello</strong> <strong>di</strong> tipo (1),dove la politica d’or<strong>di</strong>ne com<strong>un</strong>emente adottata è quella <strong>di</strong> sod<strong>di</strong>sfarela domanda se questo è fisicamente possibile, così si ha,{ξn se ξY n =n ≤ Z n + X nZ n + X n se ξ n > Z n + X n .Un importante problema nella teoria riguardante gli <strong>in</strong>ventari è trovare<strong>un</strong>a politica d’or<strong>di</strong>ne ottima tale che il profitto sia massimo o, equivalentemente,i costi siano m<strong>in</strong>imi.
CAPITOLO 3. CENNI AI MODELLI DI INVENTARIO 21• Lo stu<strong>di</strong>o dei processi stocastici che stanno alla base della teoria riguardantegli <strong>in</strong>ventari: è chiaro che la f<strong>un</strong>zione <strong>di</strong> <strong>stoccaggio</strong> Z n associataad <strong>un</strong> <strong>modello</strong> <strong>di</strong> <strong>in</strong>ventario è <strong>un</strong> processo stocastico; questo processo<strong>di</strong>pende dal tipo <strong>di</strong> politica adottata, dalla fornitura e dalla domanda,ma non <strong>in</strong>fluisce sulla struttura dei costi del <strong>modello</strong>. Di particolareimportanza è lo stu<strong>di</strong>o della <strong>di</strong>stribuzione <strong>in</strong>variante <strong>di</strong> Z n , <strong>per</strong> potercosì m<strong>in</strong>imizzare i costi sul l<strong>un</strong>go <strong>per</strong>iodo. In altre parole, se si è<strong>in</strong>teressati alla struttura dei costi <strong>per</strong> più <strong>di</strong> <strong>un</strong> certo <strong>per</strong>iodo <strong>di</strong> tempolimitato, si deve conoscere il comportamento transitorio del processo.3.2 I modelli <strong>di</strong> <strong>stoccaggio</strong>I modelli <strong>di</strong> <strong>stoccaggio</strong> sono <strong>un</strong>a particolare categoria dei modelli <strong>di</strong> <strong>in</strong>ventario.Mentre i secon<strong>di</strong> sono caratterizzati da precise politiche <strong>di</strong> or<strong>di</strong>namento,nei modelli <strong>di</strong> <strong>stoccaggio</strong> sia <strong>in</strong>put che output sono variabili aleatorie.Lo scopo della loro analisi è regolare la richiesta (uscita) <strong>in</strong> maniera che lo<strong>stoccaggio</strong> mantenga <strong>un</strong> livello desiderato. Si capisce qu<strong>in</strong><strong>di</strong> come le <strong>di</strong>gheappartengano a questa classe <strong>di</strong> modelli: il loro scopo è <strong>in</strong>fatti quello <strong>di</strong>regolare l’uscita (con il v<strong>in</strong>colo che la regolazione rimanga costante <strong>per</strong> tuttol’arco <strong>di</strong> f<strong>un</strong>zionamento) aff<strong>in</strong>chè il livello dell’acqua stoccata sia semprecompreso tra la quota <strong>di</strong> massimo svaso e la quantità massima <strong>di</strong> <strong>in</strong>vaso.Il <strong>modello</strong> che sta alla base del f<strong>un</strong>zionamento delle <strong>di</strong>ghe trova trattazioneampia nel capitolo successivo.A scopo esemplificativo si riportano due importanti applicazioni deimodelli <strong>di</strong> <strong>in</strong>ventario, <strong>in</strong> due ambiti molto <strong>di</strong>versi tra loro, <strong>per</strong> mostrarecome questa classe <strong>di</strong> modelli sia ampiamente utilizzata.3.2.1 Primo esempio: i rischi assicurativiLa teoria dei rischi assicurativi è <strong>un</strong> esempio <strong>di</strong> modelli <strong>di</strong> <strong>in</strong>ventariosviluppati a tempo <strong>di</strong>screto. Essa riguarda la gestione delle compagnieassicurative ed è soggetta alle seguenti ass<strong>un</strong>zioni:• La quantità totale <strong>di</strong> richieste X(t) che vengono avanzate nell’<strong>in</strong>tervallo<strong>di</strong> tempo (0, y] possiede <strong>un</strong>a <strong>di</strong>stribuzione <strong>di</strong> Poisson composita:K(x, t) =+∞∑n=0−λt (λt)ne P n (x)n!(−∞ < x < +∞).• La compagnia riceve premi assicurativi ad <strong>un</strong> rate costante β.La f<strong>un</strong>zioneZ(t) = x + βt − X(t)(−∞ < β < +∞)
CAPITOLO 3. CENNI AI MODELLI DI INVENTARIO 22è chiamata riserva <strong>di</strong> rischio, con valore <strong>in</strong>iziale Z(0) = x ≥ 0. Ariserva negativa la compagnia fallisce. Questo evento avviene a epocheT ≡ T (x), doveT = <strong>in</strong>f {t : Z(t) < 0} .Il p<strong>un</strong>to fondamentale della teoria riguardante i rischi assicurativi è lo stu<strong>di</strong>odella <strong>di</strong>stribuzione della variabile casuale T, detto “problema del fallimento”.La compagnia è <strong>in</strong>fatti <strong>in</strong>teressata a scegliere la <strong>di</strong>mensione <strong>in</strong>iziale dellariserva, sufficiente ad evitare il fallimento <strong>in</strong> <strong>un</strong> arco <strong>di</strong> tempo f<strong>in</strong>ito. Qu<strong>in</strong><strong>di</strong>è necessario trovare x tale che:P {T (x) > t} ≥ α (0 < α < 1)oppureP {T (x) = ∞} ≥ α (0 < α < 1).3.2.2 Secondo esempio: le telecom<strong>un</strong>icazioniLe telecom<strong>un</strong>icazioni sono <strong>un</strong>’importante applicazione dei modelli <strong>di</strong> <strong>in</strong>ventarioa tempo cont<strong>in</strong>uo e sono l’ambito <strong>di</strong> ricerca più <strong>in</strong> crescita <strong>in</strong> questomomento. La trattazione <strong>di</strong>fficoltosa, derivante app<strong>un</strong>to dalla presenza deltempo cont<strong>in</strong>uo all’<strong>in</strong>terno del <strong>modello</strong>, non <strong>per</strong>mette <strong>un</strong>’analisi agevole e cisi limita <strong>per</strong>ciò soltanto a del<strong>in</strong>earne le l<strong>in</strong>ee pr<strong>in</strong>cipali.Si ipotizzi che ci siano N sorgenti <strong>di</strong> messaggi, che possono essere attiveo <strong>in</strong>attive a seconda dell’istante <strong>di</strong> tempo considerato. Un ricetrasmettitorericeve questi messaggi ad <strong>un</strong> determ<strong>in</strong>ato ritmo, <strong>di</strong>pendente dal numero<strong>di</strong> sorgenti attive, e trasmette parte <strong>di</strong> essi, immagazz<strong>in</strong>ando quelli nontrasmessi <strong>in</strong> <strong>un</strong> buffer <strong>di</strong> capacità <strong>in</strong>f<strong>in</strong>ita.Sia X(t) l’<strong>in</strong>gresso totale dei dati nel buffer nell’<strong>in</strong>tervallo (0, t] e sia J(t)il numero <strong>di</strong> sorgenti attive al tempo t. Si assume che {X(t), J(t)} sia <strong>un</strong><strong>in</strong>put <strong>di</strong> Markov <strong>di</strong> tipo ad<strong>di</strong>tivo, e le componenti non ad<strong>di</strong>tive siano nonnegative e con zero drift. Il contenuto del buffer al tempo t, identificatodalla variabile Z(t), sod<strong>di</strong>sfa qu<strong>in</strong><strong>di</strong> la seguente equazione <strong>in</strong>tegrale:Z(t) = Z(0) + X(t) −∫ t0r(Z(s), J(s))ds,dove r(x, j) è il ritmo <strong>di</strong> trasmissione quando il contenuto del buffer è x e ilnumero <strong>di</strong> sorgenti attive è j. Per esempio,r(x,j)= d(j) <strong>per</strong> x>0r(x,j)= 0 <strong>per</strong> x=0dove d(j) è la richiesta <strong>di</strong> trasmissione quando il numero <strong>di</strong> sorgenti è j.
Capitolo 4Il <strong>modello</strong> <strong>di</strong> Moran <strong>per</strong> le<strong>di</strong>ghe4.1 Cenni sulle o<strong>per</strong>e <strong>di</strong> derivazioneLe o<strong>per</strong>e <strong>di</strong> derivazione, nella loro concezione più generica, sono costruzionisviluppate allo scopo <strong>di</strong> sottrarre, da <strong>un</strong> dato complesso idrografico, determ<strong>in</strong>ateportate d’acqua, <strong>in</strong> vista della loro utilizzazione <strong>per</strong> numerosi scopi:fornitura d’acqua <strong>per</strong> uso irriguo, approvvigionamento idrico <strong>di</strong> centri urbani,costruzione <strong>di</strong> vie d’acqua navigabili, produzione <strong>di</strong> energia elettrica.Quest’ultimo proposito ha senza dubbio l’importanza maggiore: <strong>in</strong>nanzituttoassicura <strong>un</strong>a richiesta costante <strong>di</strong> acqua durante l’<strong>in</strong>tero arco dell’annoed, <strong>in</strong>oltre, è l’attività che fornisce maggiori <strong>in</strong>troiti.Riferendosi a queste motivazioni, la regolazione degli impianti <strong>di</strong> derivazioneè volta soprattutto a massimizzare la produzione <strong>di</strong> energia idroelettrica.Richiesta fondamentale delle centrali <strong>per</strong> la produzione <strong>di</strong> elettricità èche il flusso d’acqua sia il più regolare possibile. Negli impianti ad acquafluente, ovvero quelli che sfruttano soltanto il naturale corso d’acqua, laregolazione dei macch<strong>in</strong>ari può essere fatta o solo sulle caratteristiche delcorso nei <strong>per</strong>io<strong>di</strong> <strong>di</strong> magra o solo su quelle nei <strong>per</strong>io<strong>di</strong> <strong>di</strong> piena.Come è facile <strong>in</strong>tuire, questo non <strong>per</strong>mette <strong>di</strong> sfruttare appieno le potenzialitàdelle centrali, lasciandole <strong>per</strong> parte dell’anno <strong>in</strong>attive. Ecco allora lanecessità <strong>di</strong> progettare <strong>un</strong>a struttura che regolarizzi al massimo la portatadel corso, rendendola il più costante possibile alle sezioni <strong>di</strong> presa.Il metodo pr<strong>in</strong>cipale <strong>per</strong> questo scopo è chiudere la valle del corso con<strong>un</strong>a <strong>di</strong>ga <strong>di</strong> sbarramento, ottenendo così <strong>un</strong> serbatoio, a monte della presa,che trattiene i volumi d’acqua <strong>in</strong> eccesso durante i <strong>per</strong>io<strong>di</strong> <strong>di</strong> portata abbondante,<strong>per</strong> poi utilizzarli <strong>per</strong> <strong>in</strong>tegrare le portate naturali dei <strong>per</strong>io<strong>di</strong> <strong>di</strong>magra. Il pelo dell’acqua immagazz<strong>in</strong>ata varierà <strong>per</strong>ciò tra la quota massima(detta quota massima <strong>di</strong> <strong>in</strong>vaso), calcolata <strong>in</strong> f<strong>un</strong>zione delle onde che si23
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 24sviluppano sulla su<strong>per</strong>ficie ed <strong>in</strong> genere 2-3 metri sotto il ciglio della <strong>di</strong>ga,e la quota m<strong>in</strong>ima (detta quota <strong>di</strong> massimo svaso) fissata a qualche metrosopra il greto del corso. Il volume d’acqua compreso tra queste due quote,ovvero il volume che possiamo far <strong>in</strong>tervenire nelle attività <strong>di</strong> regolazione, èdenom<strong>in</strong>ato capacità utile.La regolazione del corso d’acqua è, come affermato prima, riferita all’annoidrologico (che possiede <strong>un</strong> primo <strong>per</strong>iodo <strong>di</strong> piena ed <strong>un</strong> secondo<strong>di</strong> magra), ma le strutture più importanti prestano la loro attenzione allacompensazione <strong>di</strong> successive annate idrologiche <strong>di</strong>verse. Inoltre i progettipiù complessi, sviluppati <strong>in</strong> tempi più recenti, prevedono impianti chepotenz<strong>in</strong>o ancor <strong>di</strong> più la produzione. Alc<strong>un</strong>i <strong>di</strong> questi sono delle l<strong>in</strong>ee <strong>di</strong>trasporto d’acqua tra centrali idroelettriche, altri sono dati dalla presenza<strong>di</strong> più serbatoi idrici collegati tra loro.Per quanto riguarda gli <strong>in</strong>gressi alle o<strong>per</strong>e <strong>di</strong> derivazione, essi sono pr<strong>in</strong>cipalmentele precipitazioni e gli stessi corsi d’acqua entranti. Le prime,costituite da piogge e nevicate, vengono misurate attraverso pluviometri eposseggono scarti anche accentuati tra valori <strong>di</strong> annate successive. La caratteristicafondamentale dei corsi d’acqua è <strong>in</strong>vece la portata che defluisceattraverso la sezione del corso: essa è fortemente correlata ai valori delleprecipitazioni sull’<strong>in</strong>tero bac<strong>in</strong>o imbrifero relativo, a meno <strong>di</strong> <strong>un</strong> valore dettocoefficiente <strong>di</strong> deflusso, che si riferisce alla <strong>per</strong><strong>di</strong>ta d’acqua <strong>per</strong> evaporazione.4.2 Introduzione al <strong>modello</strong>Come già accennato precedentemente, le <strong>di</strong>ghe sono modelli <strong>di</strong> <strong>stoccaggio</strong>nei quali si immagazz<strong>in</strong>a acqua <strong>per</strong> due <strong>di</strong>versi scopi: produzione <strong>di</strong> energiaelettrica (espressa <strong>in</strong> term<strong>in</strong>i <strong>di</strong> volume <strong>di</strong> acqua richiesta <strong>per</strong> produrla) efornitura <strong>di</strong> acqua potabile o acqua <strong>per</strong> irrigazione. Possono <strong>in</strong>oltre esisteresorgenti supplementari (stazioni termali oppure strutture <strong>di</strong> trasporto <strong>di</strong>acqua da <strong>di</strong>ghe vic<strong>in</strong>e) che <strong>per</strong>mettono <strong>di</strong> <strong>in</strong>crementare l’<strong>in</strong>gresso <strong>di</strong> acquanella <strong>di</strong>ga, a fronte <strong>di</strong> determ<strong>in</strong>ati costi e com<strong>un</strong>que <strong>in</strong> maniera limitata.La trattazione statistica <strong>di</strong> modelli <strong>di</strong> <strong>stoccaggio</strong> <strong>per</strong> sistemi idroelettriciè stata sviluppata da numerosi autori a partire dagli anni C<strong>in</strong>quanta. Laprima formulazione probabilistica <strong>di</strong> <strong>un</strong>a <strong>di</strong>ga come <strong>modello</strong> <strong>di</strong> <strong>stoccaggio</strong>venne data da P.A.P. Moran nel 1954. All’<strong>in</strong>terno <strong>di</strong> questo capitolo si analizza<strong>in</strong> maniera approfon<strong>di</strong>ta questo <strong>modello</strong>, poichè p<strong>un</strong>to <strong>di</strong> partenza <strong>per</strong>le argomentazioni trattate nei capitoli successivi. Come precedentementeenfatizzato, <strong>un</strong>a parte importante dello stu<strong>di</strong>o dei modelli <strong>di</strong> <strong>in</strong>ventarioè la determ<strong>in</strong>azione della <strong>di</strong>stribuzione <strong>in</strong>variante della quantità stoccata.La parte centrale <strong>di</strong> questo capitolo verte <strong>per</strong>ciò su questo tipo <strong>di</strong> analisi,dal p<strong>un</strong>to <strong>di</strong> vista teorico, <strong>per</strong> il <strong>modello</strong> <strong>di</strong> Moran. Ulteriori analisi sulla<strong>di</strong>stribuzione <strong>in</strong>variante, dal p<strong>un</strong>to <strong>di</strong> vista simulativo, sono effettuate nelcapitolo successivo.
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 254.3 Il <strong>modello</strong> <strong>di</strong> Moran a tempo <strong>di</strong>scretoIl <strong>modello</strong> fondamentale <strong>per</strong> le o<strong>per</strong>e <strong>di</strong> derivazione fu anche il primopresentato da Moran. Esso venne dato <strong>in</strong> term<strong>in</strong>i <strong>di</strong> tempo <strong>di</strong>screto e con leseguenti ass<strong>un</strong>zioni:1. INPUT: si <strong>in</strong><strong>di</strong>chi con X n la quantità <strong>di</strong> acqua <strong>in</strong> <strong>in</strong>gresso alla <strong>di</strong>ga nell’<strong>in</strong>tervallo<strong>di</strong> tempo (n, n + 1) con n = 0,1,...; si assume che le variabilialeatorie X 0 , X 1 , X 2 ... siano i.i.d., ovvero <strong>in</strong><strong>di</strong>pendenti e identicamente<strong>di</strong>stribuite.2. OVERFLOW: si <strong>in</strong><strong>di</strong>chi con k la capacità f<strong>in</strong>ita della <strong>di</strong>ga, e con Z n ,la quantità <strong>di</strong> acqua immagazz<strong>in</strong>ata nella <strong>di</strong>ga al tempo n, prima chel’<strong>in</strong>put X n fluisca all’<strong>in</strong>terno della <strong>di</strong>ga stessa; allora, se Z n +X n > k laquantità d’acqua data da Z n + X n − k strari<strong>per</strong>à, ma se Z n + X n ≤ k,non ci sarà fuoriuscita <strong>di</strong> acqua dalla <strong>di</strong>ga; la <strong>di</strong>ga contiene qu<strong>in</strong><strong>di</strong> <strong>un</strong>aquantità d’acqua data dal m<strong>in</strong> (k, Z n + X n ).3. REGOLA DI RILASCIO COSTANTE: nell’istante <strong>di</strong> tempo (n + 1)<strong>un</strong>a certa quantità d’acqua pari a:• m(< k) , se Z n + X n ≥ m• Z n + X n , se Z n + X n < mè rilasciata dalla <strong>di</strong>ga. Il rilascio è così il m<strong>in</strong> (m, Z n + X n ).Da queste ass<strong>un</strong>zioni segue che la f<strong>un</strong>zione <strong>di</strong> <strong>stoccaggio</strong> Z nseguente equazione ricorsiva:sod<strong>di</strong>sfa laZ n+1 = m<strong>in</strong> (k, Z n + X n ) − m<strong>in</strong> (m, Z n + X n )con n = 0,1,2...La sequenza <strong>di</strong> variabili casuali Z n forma così <strong>un</strong>a catena <strong>di</strong> Markov a tempo<strong>di</strong>screto che ora andremo a stu<strong>di</strong>are nei dettagli.4.3.1 Il comportamento transitorio <strong>di</strong> Z nPer prima cosa si consideri il caso <strong>in</strong> cui gli <strong>in</strong>gressi hanno <strong>di</strong>stribuzione<strong>di</strong> probabilità <strong>di</strong>screta. Ovvero:P {X n = j} = g j con (j = 0, 1, 2...) . (4.1)La catena <strong>di</strong> Markov {Z n } ha qu<strong>in</strong><strong>di</strong> <strong>un</strong> numero f<strong>in</strong>ito <strong>di</strong> stati: 0,1,2,...,k-m.Si <strong>in</strong><strong>di</strong>ch<strong>in</strong>o le probabilità <strong>di</strong> transizione tra stati come:P (n]ij= P {Z n = j | Z 0 = i} con (i, j = 0, 1, 2, ..., k − m, n ≥ 1) .
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 26Inoltre, sia P (0)ij= δ ij dove δ ij simbolo <strong>di</strong> Kronecker. Si ha qu<strong>in</strong><strong>di</strong> che lamatrice P delle probabilità <strong>di</strong> transizione è data da:⎛P =⎜⎝⎞G m g m+1 g m+2 . . g k−1 h kG m−1 g m g m+1 . . g k−2 h k−1. . . . . . .. . . . . . .G 0 g 1 g 2 . . g k−m−1 h k−m0 g 0 g 1 . . g k−m−2 h k−m−1. . . . . . .⎟. . . . . . . ⎠0 0 0 . . g m−1 h mdove G i = g 0 + g 1 + · · · + g i , h i = g i + g i+1 + · · · (i ≥ 0) e si assume chem < 1 2 k.( )Con riferimento al capitolo 2 si ha che = P n con n ≥ 1; si ha <strong>in</strong>oltreP (n)ijche P 0 = I, dove I <strong>in</strong><strong>di</strong>ca la matrice identità <strong>di</strong> or<strong>di</strong>ne k − m + 1.Per n ≥ 2 si ha:P n = P · P n−2 · P.Si ottiene così la seguente relazione:P (n)ij= Q i · P n−2 · R j (n ≥ 2) , (4.2)dove Q i è la i-esima riga e R j la j-esima colonna <strong>di</strong> P, così cheQ i = (P i0 , P i1 , ..., P i,k−m )R j = (P 0j , P 1j , ..., P k−m,j ) ′ .Si def<strong>in</strong>isce ora la seguente trasformata:P ij (z) =+∞∑n=2Con riferimento alla (4.2) si ha cheP (n)ijz n (|z| < 1) .∑+∞P ij (z) = z 2 Q i P n−2 z n−2 R jn=2= z 2 Q i (I + zP + z 2 P 2 + · · · )R j= z 2 Q i (I − zP ) −1 R j ,dove l’esistenza della matrice <strong>in</strong>versa (I − zP ) −1 è assicurata se si sceglie zcosì che il max i,j |zP ij | < 1.
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 274.3.2 La <strong>di</strong>stribuzione <strong>in</strong>variante dello <strong>stoccaggio</strong>Si analizzi ora il caso <strong>in</strong> cui m, la quantità <strong>di</strong> acqua rilasciata al tempon+1, è <strong>un</strong>itaria. Si prenda (g i ) come <strong>di</strong>stribuzione <strong>di</strong> probabilità <strong>di</strong> X n ,come nella (4.1); <strong>in</strong>oltre, si consideri la seguente f<strong>un</strong>zione generatrice deimomenti <strong>di</strong> (g i ):eG(z) =+∞∑j=0ρ = G ′ (1) =g j z j (|z| < 1)Si assume ρ < ∞.La matrice <strong>di</strong> transizione associata alla catena <strong>di</strong> Markov {Z n } è la seguente:⎛g 0 + g 1 g 2 · · · g k−1 h k⎞0 0 · · · g 0 h 1 g 0 g 1 · · · g k−2 h k−1P =0 g 0 · · · g k−3 h k−2⎜ . . · · · . .⎟⎝ . . · · · . . ⎠dove h i = ∑ +∞j=i g j con (i = 1, 2, ..., k). Si assume che g j > 0 ∀j; la catena èirriducibile e a<strong>per</strong>io<strong>di</strong>ca, così esiste la <strong>di</strong>stribuzione <strong>in</strong>variante (u i ),i = 0, 1, ..., k − 1, dove+∞∑j=0g j j.u i = limn→∞ P {Z n = i} .Questa è l’<strong>un</strong>ica soluzione dell’equazione seguente:<strong>un</strong>ita a∑k−1u j = u i P ij (j = 0, 1, ..., k − 1) (4.3)i=0u 0 + u 1 + · · · + u k−1 = 1.Si en<strong>un</strong>cia ora <strong>un</strong> teorema che <strong>per</strong>mette <strong>di</strong> ottenere il metodo generalecon cui trovare la <strong>di</strong>stribuzione <strong>in</strong>variante (u i ) <strong>per</strong> <strong>un</strong>a <strong>di</strong>ga con <strong>in</strong>put<strong>di</strong>screto <strong>di</strong> capacità f<strong>in</strong>ita k:Teorema 5. Valgono i seguenti due en<strong>un</strong>ciati:[ ]1. se u (k)i, (i = 0, 1, ..., k−1) è la <strong>di</strong>stribuzione <strong>in</strong>variante dello <strong>stoccaggio</strong><strong>di</strong> acqua <strong>in</strong> <strong>un</strong>a <strong>di</strong>ga <strong>di</strong> capacità k, allora la frazione data daè <strong>in</strong><strong>di</strong>pendente da k;v i = u(k) iu (k)0, (i = 1, 2, ..., k − 1) (4.4)
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 282. i valori v i sono dati dai coefficienti z i <strong>di</strong> V(z), doveV (z) = g 0(1 − z)G(z) − z . (4.5)Dimostrazione. La prima parte del teorema è subito provata; <strong>in</strong>fatti, scrivendo<strong>per</strong> esteso i term<strong>in</strong>i dell’equazione (4.3) si ha che:u 0 = (g 0 + g 1 )u 0 + g 0 u 1u 1 = g 2 u 0 + g 1 u 1 + g 0 u 2.u k−2 = g k−1 u 0 + g k−2 u 1 + · · · + g 0 u k−1u k−1 = h k u 0 + h k−1 u 1 + · · · + h 1 u k−1Risolvendo questa equazione successivamente si ottiene che:v 1 = 1 − g 0 − g 1g 0, v 2 = 1 − g 1g 0v 1 + g 2g 0(4.6)da cui, <strong>in</strong> generale, si nota che i coefficienti v i (i = 1, 2, ..., k − 1) sono<strong>in</strong><strong>di</strong>pendenti da k.Si riprende ora la f<strong>un</strong>zione V (z) def<strong>in</strong>ita nella (4.5). Risulta prima necessarioprovare che V (z) può essere espansa come serie <strong>di</strong> potenza convergente<strong>per</strong> opport<strong>un</strong>i valori del |z|. Si <strong>di</strong>st<strong>in</strong>guono due casi.1. Caso <strong>in</strong> cui ρ ≤ 1:dato[G(z) − z = (1 − z) 1 − 1 − G(z) ],1 − zpoichè1 − G(z)1 − zsi ottiene, <strong>per</strong> |z| < 1,1 − G(z)∞∣ 1 − z ∣ < ∑=∞∑∞∑n=0n=0 i=n+1z ng i =∞ ∑i=n+1g i∞∑ig i = ρ ≤ 1,così che |G(z) − z| ≠ 0, e si ha così l’espansione <strong>in</strong> serie <strong>di</strong> potenze[V (z) = g 0 1 − 1 − G(z) ] −1= v 0 + v 1 z + v 2 z 2 + · · ·1 − zconvergente <strong>per</strong> |z| < 1.i=1
CAPITOLO 4. IL MODELLO DI MORAN PER LE DIGHE 292. Caso <strong>in</strong> cui ρ > 1:<strong>in</strong> questo caso esiste <strong>un</strong> λ positivo, con |z| < λ, tale che si ha laseguente espansione <strong>in</strong> serie <strong>di</strong> potenzeg 0G(z) − z = c 1 + c 2 z + c 3 z 2 + · · · .Di conseguenza anche V (z) possiede <strong>un</strong>’espansione <strong>in</strong> serie <strong>di</strong> potenzeconvergente <strong>per</strong> |z| < λ.In entrambi i casi V (z) ha <strong>un</strong>’espansione <strong>in</strong> serie <strong>di</strong> potenze data da:V (z) = g 0(1 − z)G(z) − z = v 0 + v 1 z + v 2 z 2 + · · · .I coefficienti v i sono determ<strong>in</strong>ati dalla relazioneg 0 (1 − z) = [G(z) − z]∞∑v i z ie qu<strong>in</strong><strong>di</strong> si può notare che v 0 = 1, mentre v 1 , v 2 ,...,v k−1 sod<strong>di</strong>sfano la (4.6)e rappresentano qu<strong>in</strong><strong>di</strong> le quantità def<strong>in</strong>ite nella (4.4).i=0
Capitolo 5SimulazioneNel capitolo precedente si sono affrontati i modelli relativi alle <strong>di</strong>ghe da<strong>un</strong> p<strong>un</strong>to <strong>di</strong> vista teorico, <strong>per</strong>mettendo <strong>di</strong> comprendere meglio i process<strong>in</strong>ella loro formulazione puramente analitica. Per meglio visualizzare ciò cheessi descrivono, si è ritenuto utile sviluppare <strong>un</strong>a parte simulativa, che dalleargomentazioni precedenti trae ispirazione e sviluppa <strong>in</strong>oltre <strong>un</strong>a serie <strong>di</strong>risultati orig<strong>in</strong>ali, non presenti nella letteratura del campo.L’attenzione si è <strong>per</strong>ciò rivolta a sviluppare programmi che <strong>per</strong>mettono <strong>di</strong>ricavare quantità fondamentali nella gestione delle <strong>di</strong>ghe, <strong>per</strong> le quali <strong>in</strong> letteraturanon esistono espressioni analitiche esplicite, e che dal p<strong>un</strong>to <strong>di</strong> vistapuramente empiristico sarebbero <strong>di</strong>fficili da valutare <strong>in</strong> fase <strong>di</strong> progettazione.Nello sviluppare questi software si è fatto <strong>in</strong> modo che essi fossero utilizzabilianche con parametri <strong>di</strong>versi da quelli presi <strong>in</strong> considerazione. Si è sceltoqu<strong>in</strong><strong>di</strong> <strong>di</strong> passare gran parte dei parametri simulativi <strong>in</strong> <strong>in</strong>gresso alle rout<strong>in</strong>es,cosicchè essi siano impostabili dall’utente. Lo script <strong>di</strong> questi programmi,realizzati <strong>in</strong> ambiente Matlab, è <strong>in</strong>teramente riportato nell’Appen<strong>di</strong>ce allatesi.Innanzitutto ci si è concentrate sulla <strong>di</strong>stribuzione stazionaria della catena<strong>di</strong> Markov associata al <strong>modello</strong>. Questo <strong>per</strong>chè la <strong>di</strong>stribuzione stazionariapossiede <strong>un</strong>’importanza notevole dal p<strong>un</strong>to <strong>di</strong> vista matematico, ma soprattutto<strong>per</strong>chè essa rappresenta il comportamento caratteristico della <strong>di</strong>ga<strong>in</strong> regime stazionario, ovvero quel comportamento limite che la <strong>di</strong>ga possiededopo <strong>un</strong> transitorio <strong>in</strong>iziale. Si è qu<strong>in</strong><strong>di</strong> costruito <strong>un</strong> algoritmo che <strong>in</strong>terpretasseil comportamento della <strong>di</strong>ga attraverso <strong>simulazione</strong> <strong>di</strong> <strong>di</strong>fferenti<strong>in</strong>gressi, provenienti da <strong>di</strong>verse <strong>di</strong>stribuzioni <strong>di</strong> probabilità, <strong>per</strong> sufficientipassi temporali.Il passaggio successivo è stato la validazione dell’algoritmo, attraversoil confronto con i risultati teorici conosciuti, necessaria <strong>per</strong> assicurarsi cheeffettivamente il software <strong>in</strong>terpretasse <strong>in</strong> maniera corretta il <strong>modello</strong>.La seconda parte del capitolo è <strong>in</strong>vece <strong>in</strong>centrata sulla valutazione <strong>di</strong>fenomeni caratteristici nella gestione delle <strong>di</strong>ghe, quali l’overflow (ovvero30
CAPITOLO 5. SIMULAZIONE 31quando la quantità <strong>di</strong> acqua presente nella <strong>di</strong>ga eccede la capacità utile) ela secca (ovvero quando si ha assenza <strong>di</strong> acqua nella <strong>di</strong>ga), <strong>in</strong> f<strong>un</strong>zione deiparametri caratteristici della <strong>di</strong>ga (capacità utile e flusso d’acqua <strong>in</strong> uscita)e delle <strong>di</strong>verse tipologie <strong>di</strong> <strong>in</strong>gressi.
CAPITOLO 5. SIMULAZIONE 325.1 Determ<strong>in</strong>azione della <strong>di</strong>stribuzione stazionariaLa prima <strong>simulazione</strong> svolta è stata la ricerca del comportamento a l<strong>un</strong>goterm<strong>in</strong>e della <strong>di</strong>ga, ovvero della <strong>di</strong>stribuzione stazionaria del contenuto della<strong>di</strong>ga R n , sotto precise politiche <strong>di</strong> gestione della stessa. La valutazione della<strong>di</strong>stribuzione stazionaria è <strong>un</strong> passo utile da compiere <strong>in</strong> ambito simulativopoichè <strong>per</strong>mette <strong>un</strong>a buona valutazione del comportamento della <strong>di</strong>gaquando essa raggi<strong>un</strong>ge la situazione <strong>di</strong> regime. Il <strong>modello</strong> a cui ci si riferisceè sempre il <strong>modello</strong> <strong>di</strong> Moran a tempo <strong>di</strong>screto, nel caso <strong>in</strong> cui gli <strong>in</strong>gressiX n nella <strong>di</strong>ga avvengano <strong>in</strong> maniera cont<strong>in</strong>ua, come effettivamente avvienenella realtà.5.1.1 Implementazione del <strong>modello</strong>L’algoritmo sviluppato <strong>per</strong> la <strong>simulazione</strong> del <strong>modello</strong> si basa sulle argomentazionipresentate da Loynes, [1962] riguardo le <strong>di</strong>stribuzioni stazionarie.Esse <strong>in</strong>fatti <strong>di</strong>mostrano come effettivamente il <strong>modello</strong> possieda <strong>un</strong>a<strong>di</strong>stribuzione stazionaria, sebbene essa sia <strong>di</strong>fficile da calcolare e ancor piùda manipolare dal p<strong>un</strong>to <strong>di</strong> vista analitico.Si riprendono qu<strong>in</strong><strong>di</strong> le argomentazioni sviluppate nel capitolo precedente.Sia la f<strong>un</strong>zione <strong>di</strong> <strong>di</strong>stribuzione degli <strong>in</strong>gressi <strong>in</strong><strong>di</strong>cata da G(x) cosìche:P {X n ≤ x} = G (x)dove (X n ) n≥0 successione <strong>di</strong> variabili aleatorie i.i.d., rappresentanti la quantità<strong>di</strong> acqua <strong>in</strong> <strong>in</strong>gresso. Si avrà qu<strong>in</strong><strong>di</strong> G(x) = 0 se x ≤ 0. Il processo adessa collegato sarà <strong>un</strong>a catena <strong>di</strong> Markov con stati appartenenti all’<strong>in</strong>tervallochiuso [0, k − m].Sia Z n la quantità <strong>di</strong> acqua stoccata nella <strong>di</strong>ga al tempo n, prima che l’<strong>in</strong>putX n fluisca nella <strong>di</strong>ga. Si consideri la relazione <strong>di</strong> ricorrenza descriventeil processoZ n+1 = m<strong>in</strong>(k, Z n + X n ) − m<strong>in</strong>(m, Z n + X n ) (n = 0, 1, 2, ...),e si riscriva come:Z n+1 = f(Z n + X n ),dove la f<strong>un</strong>zione f(u) è def<strong>in</strong>ita nel seguente modo:⎧⎨ 0 se u ≤ mf(u) = u − m se m < u < k⎩k − m se u ≥ kSi può notare che la f<strong>un</strong>zione f(u) è non decrescente e non negativa<strong>per</strong> ogni u ≥ 0. Poichè la <strong>di</strong>stribuzione <strong>di</strong> X n è <strong>in</strong><strong>di</strong>pendente da n, sipuò affermare che la sequenza {X n , −∞ < n < ∞} è composta da variabilialeatorie <strong>in</strong><strong>di</strong>pendenti e identicamente <strong>di</strong>stribuite, con <strong>di</strong>stribuzione G(x).
CAPITOLO 5. SIMULAZIONE 33Lemma 1. Se Z 0 = 0, allora la <strong>di</strong>stribuzione stazionaria <strong>di</strong> (Z n ) n≥0 esisteed è supportata nell’<strong>in</strong>tervallo chiuso [0 , k-m].Dimostrazione. Ci si avvale <strong>di</strong> <strong>un</strong>a nuova successione, def<strong>in</strong>ita <strong>per</strong> ogni <strong>in</strong>teroN come {}, −∞ < n < ∞dove:Si ha qu<strong>in</strong><strong>di</strong> la proprietà che:Z (N)nZ (N)n = 0 se n ≤ −NZ (N)n+1 = f(Z(N) n + X n ) se n ≥ −N.Z (N+1)n≥ Z (N)n(∞ < n < ∞).Infatti, <strong>per</strong> n < −N, Z (N)nZ (N)n= 0 mentre Z (N+1)n= 0 = Z n(N+1) <strong>per</strong> def<strong>in</strong>izione; <strong>per</strong> n = −N,= f(Z (N+1)n+1 + X n−1 ) ≥ 0; <strong>per</strong> n ≤ −N,si procede<strong>per</strong> iterazione. Si assume <strong>in</strong>fatti che la proprietà sia vera <strong>per</strong> qualche n;poichè f(u) è non decrescente si ha:Z (N+1)n+1 = f(Z n(N+1) + X n ) ≥ f(Z n(N) + X n ) = Z (N)n+1 ,che <strong>di</strong>mostra che la proprietà vale anche <strong>per</strong> n + 1. Di conseguenza si puòaffermare che la proprietà vale ∀n.In particolare, la proprietà fa sì che Z (N+1)0 ≥ Z (N)0 e <strong>di</strong> conseguenzasi può generare <strong>un</strong>a successione non decrescente Z (N)0 <strong>di</strong> variabili aleatorie.Questo comporta che Z (N)0 → Z ∗ , dove Z ∗ è a sua volta variabile aleatoria,che assume valori nell’<strong>in</strong>tervallo [0, +∞]. Si consideri ora la serie Z (0)Nottenutaattraverso la relazione <strong>di</strong> ricorrenza con Z (0)0 = Z 0 = 0. Poichè nelcalcolare Z (0)Nsi sfrutta <strong>in</strong> effetti la stessa relazione utilizzata <strong>per</strong> ricavareZ (N)0 , si può concludere che Z (0)Ntende allo stesso limite Z∗ . Osservando<strong>in</strong>oltre l’<strong>in</strong>tervallo <strong>di</strong> appartenenza <strong>di</strong> Z (0)N, ovvero [0, k − m], allora ancheZ ∗ possiederà lo stesso <strong>in</strong>tervallo <strong>di</strong> appartenenza.Lemma 2. Se Z 0 appartiene all’<strong>in</strong>tervallo chiuso [0, k−m] e tende al limiteZ ∗ , allora Z n tende allo stesso limite Z ∗ .Questo lemma risulta essere <strong>di</strong> notevole importanza, <strong>per</strong>chè assicura chela <strong>di</strong>stribuzione limite ottenuta è effettivamente <strong>in</strong><strong>di</strong>pendente dallo stato <strong>in</strong>izialeposseduto dalla catena. Esso è stato sviluppato da Prabhu, [1965].Nell’analisi della <strong>di</strong>stribuzione limite è <strong>di</strong> maggiore significato considerarequella posseduta dalla variabile aleatoria R n , contenuto della <strong>di</strong>ga all’istanten; è <strong>in</strong>fatti <strong>di</strong> semplice calcolo, <strong>un</strong>a volta ottenuta la <strong>di</strong>stribuzione
CAPITOLO 5. SIMULAZIONE 34della variabile limite Z ∗ , ma <strong>di</strong> più pratico significato.EssendoR n = Z n + X n ,R n sarà <strong>un</strong>a nuova catena <strong>di</strong> Markov, <strong>di</strong> densitàChiamandoP (x; y) = P {R n+1 ≤ y|R n = x} .H n (x; y) = P {R n ≤ y|R 0 = x} ,al limite <strong>di</strong> n → ∞, R n → R ∗ , dove R ∗ < ∞ con probabilità <strong>un</strong>o. Diconseguenza si avrà che H n (x; y) → H(y), dove H(y) è la <strong>di</strong>stribuzionestazionaria ricercata.Si en<strong>un</strong>cia ora <strong>un</strong>a proposizione riass<strong>un</strong>tiva riguardante la <strong>di</strong>stribuzionestazionaria:Proposizione 6. La catena <strong>di</strong> Markov collegata al processo <strong>di</strong> <strong>stoccaggio</strong>,con stati appartenenti all’<strong>in</strong>tervallo chiuso [0, k − m], rappresentata dallarelazione <strong>di</strong> ricorrenzaZ n+1 = m<strong>in</strong>(k, Z n + X n ) − m<strong>in</strong>(m, Z n + X n ) (n = 0, 1, 2, ...),possiede <strong>un</strong>’<strong>un</strong>ica <strong>di</strong>stribuzione <strong>in</strong>variante cont<strong>in</strong>uaH(y) = P {R ∗ ≤ y} ,dove R ∗ è il limite della variabile R n = X n + Z n .Partendo da questi risultati analitici, è stato implementato <strong>un</strong> programmache simulasse il f<strong>un</strong>zionamento della <strong>di</strong>ga <strong>per</strong> sufficienti passi temporali eche ricavasse la <strong>di</strong>stribuzione stazionaria. Si tratta della f<strong>un</strong>zione errestar.m,che descrive il vero e proprio f<strong>un</strong>zionamento della <strong>di</strong>ga a fronte <strong>di</strong> determ<strong>in</strong>ati<strong>in</strong>gressi. Questa rout<strong>in</strong>e restituisce <strong>un</strong>a realizzazione della variabile R ∗ ,a fronte dei parametri della <strong>di</strong>ga e del vettore contenente la serie temporaledegli <strong>in</strong>gressi nella <strong>di</strong>ga, <strong>in</strong>seriti <strong>in</strong> <strong>in</strong>gresso. Essa restituisce anche la serietemporale delle quantità <strong>di</strong> acqua stoccate nella <strong>di</strong>ga durante la <strong>simulazione</strong>.5.1.2 Analisi con <strong>in</strong>gresso <strong>di</strong> tipo Esponenziale e validazionedell’algoritmoCome prima <strong>di</strong>stribuzione <strong>di</strong> <strong>in</strong>gressi <strong>in</strong> analisi è stata scelta l’Esponenziale.Essa consente <strong>in</strong>fatti <strong>di</strong> ottenere risultati significativi <strong>per</strong> l’analisi delcomportamento del sistema, ed <strong>in</strong>oltre <strong>per</strong>mette la validazione dell’algoritmo<strong>di</strong> <strong>simulazione</strong>, poichè <strong>in</strong> letteratura esistono risultati utili <strong>per</strong> il confronto.
CAPITOLO 5. SIMULAZIONE 35La <strong>simulazione</strong> è implementata dalla rout<strong>in</strong>e stazionariagamma.m, checomb<strong>in</strong>a la f<strong>un</strong>zione errestar.m, descritta nel paragrafo precedente, alla generazione<strong>di</strong> numeri random provenienti da <strong>di</strong>stribuzione Gamma. Essa <strong>in</strong>fatticrea, <strong>per</strong> ogni <strong>simulazione</strong>, il vettore <strong>di</strong> <strong>in</strong>gressi alla <strong>di</strong>ga, lo passa ad errestar.m,ne prende la realizzazione della variabile limite <strong>in</strong> uscita e lo <strong>in</strong>seriscenel vettore <strong>di</strong> realizzazioni <strong>di</strong> R ∗ , che avrà qu<strong>in</strong><strong>di</strong> ampiezza pari allesimulazioni richieste. La f<strong>un</strong>zione richiede <strong>per</strong>ciò <strong>in</strong> <strong>in</strong>gresso solo i parametridella <strong>di</strong>ga e quelli della <strong>di</strong>stribuzione Gamma, poichè contiene già al suo <strong>in</strong>ternoil processo <strong>di</strong> generazione delle serie temporali <strong>in</strong> <strong>in</strong>gresso alla <strong>di</strong>ganelle varie simulazioni. Per la <strong>simulazione</strong> <strong>di</strong> <strong>in</strong>gresso Esponenziale bastaqu<strong>in</strong><strong>di</strong> porre il parametro n della Gamma pari a 1, ottenendo così il vettore<strong>di</strong> realizzazioni della variabile limite corrispondente.La prima <strong>di</strong>stribuzione <strong>in</strong> analisi è <strong>di</strong> probabilità p=0.5 con parametridella <strong>di</strong>ga fissati a m=0.75 e k=3. La valutazione è stata svolta con <strong>un</strong>a precisione<strong>di</strong> 5000 simulazioni e con ampiezza delle serie temporali <strong>in</strong> <strong>in</strong>gressoalla <strong>di</strong>ga <strong>di</strong> 100 passi. Questa scelta del grado <strong>di</strong> precisione <strong>per</strong>mette <strong>in</strong>fatti<strong>di</strong> stimare, con buona approssimazione, la <strong>di</strong>stribuzione della variabile limiteattraverso <strong>un</strong> campione <strong>di</strong> 5000 realizzazioni, mentre <strong>in</strong> 100 passi temporalisi ha <strong>un</strong> buon compromesso tra velocità <strong>di</strong> computo e la depurazione del processodal transitorio <strong>in</strong>iziale. In figura 5.1 è stata plottata la <strong>di</strong>stribuzionedell’Esponenziale, mentre <strong>in</strong> figura 5.2 si osserva la <strong>di</strong>stribuzione della quantitàstoccata nella <strong>di</strong>ga, ottenuta me<strong>di</strong>ante la f<strong>un</strong>zione ritornadensita.m. Essa,<strong>in</strong>serendo il vettore <strong>di</strong> realizzazioni <strong>di</strong> <strong>un</strong>a variabile e la <strong>di</strong>stanza tra ip<strong>un</strong>ti <strong>in</strong> cui si vuole valutare la cumulata, restituisce sia il plottaggio della<strong>di</strong>stribuzione che i vettori dei p<strong>un</strong>ti <strong>in</strong> cui la cumulata viene valutata e deivalori della stessa.Si è qu<strong>in</strong><strong>di</strong> proceduto ad <strong>un</strong>a seconda analisi, variando tutti i parametridella <strong>simulazione</strong>: si è posto il parametro dell’Esponenziale pari a p=0.8,mentre i parametri della <strong>di</strong>ga sono stati fissati a m=1, k=5; il grado <strong>di</strong>precisione è sempre <strong>di</strong> 5000 realizzazioni della variabile limite e <strong>di</strong> 100 passitemporali <strong>per</strong> <strong>simulazione</strong>. La <strong>di</strong>stribuzione dell’<strong>in</strong>gresso è rappresentata <strong>in</strong>figura 5.3, mentre la <strong>di</strong>stribuzione della quantità stoccata è stata plottata<strong>in</strong> figura 5.4, sempre ottenuta tramite ritornadensita.m.
CAPITOLO 5. SIMULAZIONE 3610.90.80.70.60.50.40.30.20.100 2 4 6 8 10 12 14 16Figura 5.1: Distribuzione Esponenziale p=0.510.90.80.70.6H(y)0.50.40.30.20.100 2 4 6 8 10 12 14 16 18 20yFigura 5.2: Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Exp p=0.5, parametri <strong>di</strong>ga m=0.75e k=3
CAPITOLO 5. SIMULAZIONE 3710.90.80.70.60.50.40.30.20.100 2 4 6 8 10 12 14Figura 5.3: Distribuzione Esponenziale p=0.810.90.80.70.6H(y)0.50.40.30.20.100 5 10 15yFigura 5.4: Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Exp p=0.8, parametri <strong>di</strong>ga m=1 ek=5
CAPITOLO 5. SIMULAZIONE 38Per validare l’algoritmo sviluppato ci si è affidati ai risultati teorici presentatida Prabhu, [1965]: egli riuscì a calcolare <strong>in</strong> maniera analitica l’espressionedella <strong>di</strong>stribuzione stazionaria <strong>per</strong> <strong>in</strong>gressi <strong>di</strong> tipo Gamma <strong>di</strong> parametri(n, p) , ovvero con <strong>di</strong>stribuzione:dG(x) =p n(n − 1)! e−px x n−1 dx (0 < x < ∞)dove p > 0 e n <strong>in</strong>tero positivo.I risultati ottenuti da Prabhu subiscono notevoli semplificazioni quando siipotizza <strong>un</strong>a <strong>di</strong>stribuzione <strong>di</strong> tipo Gamma con parametri (1, p) e si considerail valore k multiplo <strong>di</strong> m. Si ha <strong>per</strong>ciò <strong>un</strong> <strong>in</strong>gresso <strong>di</strong> tipo Esponenziale <strong>di</strong>parametro p, con <strong>di</strong>stribuzione:dG(x) = p e −px dx(0 < x < ∞).Siano λ = pe −pm e k = (N + 1)m (con N <strong>in</strong>tero positivo) costanti caratteristichedel problema. Prabhu <strong>in</strong><strong>di</strong>ca allora come <strong>di</strong>stribuzione stazionaria laf<strong>un</strong>zione H(y) data da:⎧⎪⎨H(y) =⎪⎩N−s∑1 − ce p(k−y)q=0(−λ) q(k − y − qm) qq![ se (sm ≤ y < sm + m; s = 0, 1, . . . , N − 1)]1 − ce p(k−y) se (y ≥ Nm),dove la costante c è ricavata grazie alla con<strong>di</strong>zione al contorno H(0) = 0.Perciò:e −pkc = ∑ N (−λ) qq=0 q!(k − qm) qNella fase <strong>di</strong> validazione del <strong>modello</strong> sono state calcolate, <strong>per</strong> via analitica,le <strong>di</strong>stribuzioni stazionarie relative agli <strong>in</strong>gressi Esponenziali presentat<strong>in</strong>ella sezione precedente ed, <strong>in</strong>oltre, il loro grafico è stato sovrapposto algrafico nel caso simulato. In figura 5.5 si osservano la <strong>di</strong>stribuzione H(y)simulata (colore blu) e la <strong>di</strong>stribuzione H(y) analitica (colore rosso) relativeai valori <strong>di</strong> m=0.75, k=3, p=0.5 , mentre <strong>in</strong> figura 5.6 sono osservabili le<strong>di</strong>stribuzioni correlate ai parametri m=1, k=5, p=0.8.Tutto questo è stato ottenuto tramite il programma densitaanalitica.m,che traduce la formulazione teorica della <strong>di</strong>stribuzione stazionaria e <strong>per</strong>mettela valutazione dell’errore commesso durante la <strong>simulazione</strong>. Essa <strong>in</strong>fattirichiede <strong>in</strong> <strong>in</strong>gresso il vettore dei valori della cumulata simulata e quello deip<strong>un</strong>ti <strong>in</strong> cui è stata valutata, proprio allo scopo <strong>di</strong> effettuare il confrontocon la cumulata teorica e <strong>di</strong> calcolare l’errore. Inserendo qu<strong>in</strong><strong>di</strong> <strong>in</strong> <strong>in</strong>gressol’output della <strong>simulazione</strong> e i parametri della <strong>di</strong>ga e dell’Esponenziale, sihanno <strong>in</strong> uscita il vettore dei valori della cumulata teorica e quello deglierrori commessi (entrambi calcolati negli stessi p<strong>un</strong>ti <strong>di</strong> valutazione dellasimulata).
CAPITOLO 5. SIMULAZIONE 3910.90.80.70.6H(y)0.50.40.30.20.100 5 10 15 20 25yFigura 5.5: Confronto tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.5,parametri <strong>di</strong>ga k=3, m=0.7510.90.80.70.6H(y)0.50.40.30.20.100 5 10 15 20 25yFigura 5.6: Confronto tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.8,parametri <strong>di</strong>ga k=5, m=1
CAPITOLO 5. SIMULAZIONE 40In entrambi i casi si hanno <strong>di</strong>stribuzioni molto aderenti tra loro, e <strong>di</strong>conseguenza è lecito affermare che la nostra verifica ha avuto esito positivo:l’algoritmo implementato risulta corretto e rappresentativo del <strong>modello</strong> <strong>di</strong>Moran.Si è com<strong>un</strong>que approfon<strong>di</strong>ta l’analisi degli scarti tra la <strong>di</strong>stribuzioneanalitica e quella simulata, dati dal valore assoluto della <strong>di</strong>fferenza tra le<strong>di</strong>stribuzioni. Essi sono stati plottati <strong>in</strong> figura 5.7 <strong>per</strong> l’Esponenziale <strong>di</strong>parametro p=0.5 e <strong>in</strong> figura 5.8 <strong>per</strong> l’Esponenziale <strong>di</strong> parametro p=0.8.Analizzando i risultati ottenuti <strong>per</strong> l’Esponenziale con p=0.5 si ha che l’erroreme<strong>di</strong>o commesso nella <strong>simulazione</strong> è <strong>di</strong> 1.6·10 −3 , mentre <strong>per</strong> l’Esponenzialecon p=0.8 l’errore me<strong>di</strong>o è <strong>di</strong> 2.5·10 −3 . L’errore commesso nel simulareil <strong>modello</strong> è qu<strong>in</strong><strong>di</strong> nell’or<strong>di</strong>ne del 0.02% ed è <strong>per</strong>ciò lecito affermare che la<strong>simulazione</strong> è corretta.
CAPITOLO 5. SIMULAZIONE 410.0150.010.00500 2 4 6 8 10 12 14 16 18 20Figura 5.7: Errore tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.5,parametri <strong>di</strong>ga k=3, m=0.750.0140.0120.010.0080.0060.0040.00200 5 10 15Figura 5.8: Errore tra H(y) teorica e H(y) simulata, <strong>in</strong>gresso Exp p=0.8,parametri <strong>di</strong>ga k=5, m=1
CAPITOLO 5. SIMULAZIONE 425.1.3 Analisi con <strong>in</strong>gresso <strong>di</strong> tipo BetaIn questa sezione si analizzano i risultati ottenuti <strong>per</strong> <strong>in</strong>gressi <strong>di</strong> tipoBeta, <strong>per</strong> i quali non è nota <strong>un</strong>a descrizione esplicita della <strong>di</strong>stribuzione<strong>in</strong>variante. Questa analisi è stata ottenuta tramite l’utilizzo della rout<strong>in</strong>estazionariabeta.m. Essa procede <strong>in</strong> modo analogo alla precedente rout<strong>in</strong>estazionariagamma.m, generando <strong>per</strong>ò numeri random provenienti da <strong>un</strong>a<strong>di</strong>stribuzione Beta <strong>di</strong>latata <strong>per</strong> la <strong>simulazione</strong> dell’<strong>in</strong>gresso.Per <strong>di</strong>stribuzione Beta <strong>di</strong>latata <strong>di</strong> parametri (a, b) si <strong>in</strong>tende la variabilealeatoria Y, def<strong>in</strong>ita sull’<strong>in</strong>tervallo [0, c], dove:Y = cXcon f(x) = x a−1 (1 − x) b−1Per la <strong>simulazione</strong> si sono scelti parametri della <strong>di</strong>stribuzione Beta pari aa=3 e b=4; la densità <strong>di</strong> probabilità dell’<strong>in</strong>gresso è qu<strong>in</strong><strong>di</strong> f(x) = x 2 (1−x) 3 ,<strong>di</strong>latata poi sull’<strong>in</strong>tervallo chiuso [0,4]. La <strong>di</strong>stribuzione dell’<strong>in</strong>gresso è rappresentata<strong>in</strong> figura 5.9. Sono stati <strong>in</strong>oltre mo<strong>di</strong>ficati i parametri della <strong>di</strong>ga,stimandoli ai valori m=1.5 e k=4, mentre il grado <strong>di</strong> precisione è identico allesimulazioni precedenti, 5000 realizzazioni della variabile limite ciasc<strong>un</strong>a ottenutada <strong>in</strong>gressi <strong>di</strong> 100 passi temporali. La risultante quantità stoccata R ∗possiede la <strong>di</strong>stribuzione riportata <strong>in</strong> figura 5.10 tramite ritornadensita.m,il cui f<strong>un</strong>zionamento è gia stato descritto nel paragrafo precedente.Per la stima <strong>di</strong> questa <strong>di</strong>stribuzione si è ipotizzato, grazie ad <strong>un</strong>a primaanalisi grafica, si trattasse nuovamente <strong>di</strong> <strong>un</strong>a Beta, <strong>di</strong>latata ora sull’<strong>in</strong>tervallochiuso [0,6]. Per ottenere <strong>un</strong>a stima corretta dei parametri della<strong>di</strong>stribuzione si è spezzato il vettore dei risultati della <strong>simulazione</strong> <strong>in</strong> duesottovettori <strong>di</strong> <strong>di</strong>mensone 1000: <strong>un</strong>o è stato utilizzato <strong>per</strong> la stima deiparametri, mentre l’altro <strong>per</strong> la validazione degli stimatori ottenuti. Perottenerne gli stimatori <strong>di</strong> massima verosimiglianza dei parametri i valoridello <strong>stoccaggio</strong> all’<strong>in</strong>tervallo [0,1] sono stati riscalati e, attraverso la rout<strong>in</strong>ebetafit.m dell’ambiente Matlab, si sono ottenute le stime â = 4.3586e ˆb = 2.9768. Questa rout<strong>in</strong>e è già impostata <strong>per</strong> fornire automaticamentegli stimatori <strong>di</strong> massima verosimiglianza, <strong>in</strong>serendo <strong>in</strong> <strong>in</strong>gresso il vettore <strong>di</strong>campioni provenienti dalla <strong>di</strong>stribuzione con parametri ignoti. In figura 5.11si osserva il confronto tra le <strong>di</strong>stribuzioni <strong>di</strong> R ∗ simulata e stimata, entramberiscalate sull’<strong>in</strong>tervallo [0,1]. Si può qu<strong>in</strong><strong>di</strong> concludere che la variabile R ∗ ,<strong>per</strong> questo tipo <strong>di</strong> <strong>in</strong>gresso, possiede le seguenti caratteristiche:dove f(x) = xâ−1 (1 − x)ˆb−1R ∗ = 6Xcon â = 4.5005 e ˆb = 3.0848Per valutare la bontà della stima ottenuta si è effettuato <strong>un</strong> test <strong>di</strong> buonadattamento tra il semivettore <strong>di</strong> R ∗ dest<strong>in</strong>ato alla validazione della stimae la <strong>di</strong>stribuzione stimata. Si è scelto <strong>di</strong> utilizzare il test <strong>di</strong> Kolmogorov-Smirnoff sui parametri stimati; <strong>in</strong> questo test le ipotesi messe a confronto
CAPITOLO 5. SIMULAZIONE 43sono:H 0 : la <strong>di</strong>stribuzione reale co<strong>in</strong>cide con la <strong>di</strong>stribuzione stimataH 1 : la <strong>di</strong>stribuzione reale è <strong>di</strong>fferente dalla <strong>di</strong>stribuzione stimata.Questo test è già implementato nella rout<strong>in</strong>e kstest.m presente <strong>in</strong> Matlab.Questa f<strong>un</strong>zione ha <strong>di</strong>versi utilizzi <strong>in</strong> base agli <strong>in</strong>gressi forniti ed agli outputsrichiesti. Nel caso <strong>in</strong> esame si è posto <strong>in</strong> <strong>in</strong>gresso il campione su cui effettuareil test, la <strong>di</strong>stribuzione cumulata stimata, <strong>un</strong> livello <strong>di</strong> significatività del testpari a 0.05 e la tipologia <strong>di</strong> default del test, che rappresenta proprio l’ipotesialternativa da noi desiderata. Gli outputs richiesti sono stati il risultato deltest e il p-value.Il test, restituendo <strong>un</strong> p-value pari a 0.6232, ha dato risultato positivo,confermando che non è possibile rifiutare l’ipotesi <strong>di</strong> uguaglianza delle due<strong>di</strong>stribuzioni.
CAPITOLO 5. SIMULAZIONE 4410.90.80.70.60.50.40.30.20.100 0.5 1 1.5 2 2.5 3 3.5 4Figura 5.9: Distribuzione Beta, a=3 e b=4, <strong>di</strong>latata su [0,4]10.90.80.70.6H(y)0.50.40.30.20.100 1 2 3 4 5 6yFigura 5.10: Distribuzione <strong>di</strong> R*, <strong>in</strong>gresso Beta a=3 b=4, parametri <strong>di</strong>gam=1.5 e k=4
CAPITOLO 5. SIMULAZIONE 451.41.210.8H(y)0.60.40.200 1 2 3 4 5 6yFigura 5.11: Confronto tra la <strong>di</strong>stribuzione simulata <strong>di</strong> R* <strong>per</strong> <strong>in</strong>gresso Beta(blu) e <strong>di</strong>stribuzione data dagli stimatori <strong>di</strong> massima verosimiglianza (rosso)
CAPITOLO 5. SIMULAZIONE 465.2 Analisi delle probabilità <strong>di</strong> secca e <strong>di</strong> overflowIl passo successivo all’<strong>in</strong>terpretazione <strong>di</strong> casi particolari è stato quello<strong>di</strong> valutare come <strong>di</strong>versi <strong>in</strong>gressi si comport<strong>in</strong>o nel caso <strong>di</strong> <strong>di</strong>ghe generiche,ovvero con i parametri caratteristici k (capacità utile) e m (uscita della <strong>di</strong>ga)variabili su range ampi, non più qu<strong>in</strong><strong>di</strong> <strong>per</strong> valori prefissati.Si sono analizzati <strong>in</strong>gressi Esponenziali, utili anche <strong>in</strong> questo caso <strong>per</strong> validarel’algoritmo, ed <strong>un</strong> <strong>in</strong>gresso Beta, <strong>per</strong> il quale non si hanno risultat<strong>in</strong>oti. L’attenzione, <strong>in</strong> questo paragrafo, si è spostata non più sulla ricerca<strong>di</strong> <strong>un</strong>a <strong>di</strong>stribuzione stazionaria, ottenuta <strong>in</strong> <strong>un</strong> caso ben specifico, ma nell’ottenererisultati importanti <strong>per</strong> la progettazione delle <strong>di</strong>ghe, <strong>in</strong> f<strong>un</strong>zione<strong>di</strong> parametri variabili.Le quantità <strong>di</strong> maggior <strong>in</strong>teresse nella fase <strong>di</strong> progettazione sono, comegià accennato nei capitoli precedenti, la frazione <strong>di</strong> tempo passata <strong>in</strong> overflow(ovvero quando la quantità <strong>di</strong> acqua presente nella <strong>di</strong>ga eccede la capacitàutile) e quella passata <strong>in</strong> secca (ovvero quando si ha assenza <strong>di</strong> acqua nella<strong>di</strong>ga e l’uscita risulta qu<strong>in</strong><strong>di</strong> essere sotto il livello m).Nella <strong>simulazione</strong> si sono scelti i parametri variabili nei seguenti <strong>in</strong>tervalli:k assume valori <strong>di</strong>screti nell’<strong>in</strong>tervallo [1, 15] con passo <strong>un</strong>itario, mentrem assume valori <strong>di</strong>screti nell’<strong>in</strong>tervallo [0, 5] con passo pari a 0.1. Sono statiscelti questi valori poichè, pur essendo ipotizzati, sono rappresentativi <strong>di</strong> casiverosimili se si assumono come <strong>un</strong>ità <strong>di</strong> misura [km 3 ] <strong>per</strong> k e [km 3 /anno]<strong>per</strong> m.Nell’implementazione delle rout<strong>in</strong>es necessarie ci si basa sui programmigià creati <strong>per</strong> la <strong>di</strong>stribuzione stazionaria, generalizzandoli sui <strong>di</strong>versiparametri della <strong>di</strong>ga. I programmi utilizzati <strong>in</strong> questa fase <strong>di</strong> <strong>simulazione</strong>sono i seguenti:• frazioneoverexp.m : Questa rout<strong>in</strong>e riceve <strong>in</strong> <strong>in</strong>gresso il parametro della<strong>di</strong>stribuzione Esponenziale <strong>in</strong> considerazione, l’<strong>in</strong>tervallo <strong>di</strong> tempo <strong>per</strong>cui si vuole analizzare il comportamento della <strong>di</strong>ga, gli <strong>in</strong>tervalli entrocui si vogliono fare variare i parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazionidesiderate. Genera qu<strong>in</strong><strong>di</strong> al suo <strong>in</strong>terno <strong>un</strong>a matrice contenentegli <strong>in</strong>gressi aleatori alla <strong>di</strong>ga, provenienti da <strong>di</strong>stribuzione Esponenziale,dove ciasc<strong>un</strong>a colonna rappresenta <strong>un</strong>a <strong>simulazione</strong> ampiaquanto l’<strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> considerazione. Questo processo <strong>di</strong>memorizzazione degli <strong>in</strong>gressi <strong>per</strong>mette <strong>un</strong>a maggiore velocità <strong>di</strong> calcolodel programma. In seguito valuta la porzione <strong>di</strong> tempo <strong>in</strong> cuiil contenuto d’acqua della <strong>di</strong>ga su<strong>per</strong>a la capacità utile della stessa,ovvero la frazione <strong>di</strong> tempo <strong>in</strong> cui la <strong>di</strong>ga si trova <strong>in</strong> overflow. L’outputdella rout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valori delle frazioni <strong>di</strong>tempo <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.• frazioneoverbeta.m : Il f<strong>un</strong>zionamento è analogo alla rout<strong>in</strong>e precedente;si hanno <strong>in</strong> <strong>in</strong>gresso i parametri della <strong>di</strong>stribuzione Beta (com-
CAPITOLO 5. SIMULAZIONE 47preso il coefficiente <strong>di</strong> <strong>di</strong>latazione), l’<strong>in</strong>tervallo <strong>di</strong> tempo, gli <strong>in</strong>tervallidei parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazioni desiderate.• frazioneseccaexp.m : Il f<strong>un</strong>zionamento è analogo alle rout<strong>in</strong>es precedenti;riceve <strong>in</strong> <strong>in</strong>gresso il parametro della <strong>di</strong>stribuzione Esponenziale,l’<strong>in</strong>tervallo <strong>di</strong> tempo, gli <strong>in</strong>tervalli entro cui variano i parametri della<strong>di</strong>ga e il numero <strong>di</strong> simulazioni desiderate. Genera al suo <strong>in</strong>terno lamatrice <strong>di</strong> <strong>in</strong>gressi aleatori ed <strong>in</strong> seguito valuta la porzione <strong>di</strong> tempo<strong>in</strong> cui il contenuto d’acqua stoccato nella <strong>di</strong>ga è nullo, ovvero la <strong>di</strong>gasi trova <strong>in</strong> secca.• frazioneseccabeta.m : Il f<strong>un</strong>zionamento è analogo alla rout<strong>in</strong>e precedente;riceve <strong>in</strong> <strong>in</strong>gresso i parametri della <strong>di</strong>stribuzione Beta (compresoil coefficiente <strong>di</strong> <strong>di</strong>latazione), l’<strong>in</strong>tervallo <strong>di</strong> tempo, gli <strong>in</strong>tervalli entrocui variano i parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazioni desiderate.Le simulazioni sono state effettuate sulle tipologie <strong>di</strong> <strong>in</strong>gressi già analizzatenella determ<strong>in</strong>azione della <strong>di</strong>stribuzione stazionaria: Esponenziale <strong>di</strong>parametro p=0.5, Esponenziale <strong>di</strong> parametro p=0.8, Beta <strong>di</strong> parametri a=3e b=4 <strong>di</strong>latata sull’<strong>in</strong>tervallo chiuso [0,4]. Il parametro k è stato fatto variarenel range tra 1 e 15 con passo <strong>un</strong>itario, mentre il parametro m nel range tra0 e 5 con passo 0.1 . L’accuratezza della <strong>simulazione</strong> effettuata è <strong>di</strong> 1000simulazioni <strong>di</strong> serie <strong>di</strong> <strong>in</strong>gressi alla <strong>di</strong>ga, ciasc<strong>un</strong>a <strong>di</strong> 200 passi temporali.I risultati ottenuti sono stati tradotti nei grafici contenuti nelle figure da5.12 a 5.23. Si noti che le su<strong>per</strong>fici tri<strong>di</strong>mensionali sono troncate l<strong>un</strong>go la curvala cui proiezione sul dom<strong>in</strong>io è rappresentata dalla l<strong>in</strong>ea k = m. Questoavviene a causa della restrizione del dom<strong>in</strong>io posta dal v<strong>in</strong>colo k > m, <strong>per</strong>cui la su<strong>per</strong>ficie <strong>in</strong> questa regione non è def<strong>in</strong>ita.Grazie alla descrizione analitica della <strong>di</strong>stribuzione stazionaria (<strong>per</strong> <strong>in</strong>gressi<strong>di</strong> tipo Esponenziale), si è <strong>in</strong>oltre riuscito a confrontrare, allo scopo<strong>di</strong> validare il software <strong>per</strong> il calcolo delle frazioni <strong>di</strong> tempo, i risultati dellesimulazioni con i valori teorici, calcolati al variare dei parametri k e m. Ci siriferisce a questo proposito al lavoro <strong>di</strong> A. Ghosal, “Empt<strong>in</strong>ess <strong>in</strong> the f<strong>in</strong>itedam”.Siano Π O la frazione <strong>di</strong> tempo passata <strong>in</strong> overflow e Π S quella passata<strong>in</strong> secca. Siano <strong>in</strong>oltre O = [k, +∞), ovvero l’<strong>in</strong>sieme degli stati che provocaoverflow nella <strong>di</strong>ga, e S = [0, m], ovvero l’<strong>in</strong>sieme degli stati che provocasecca nella <strong>di</strong>ga. Sfruttando <strong>un</strong>a variante del teorema ergo<strong>di</strong>co si ottienecosì:Π O =n−11 ∑lim χ O (R i ) = P (R ∗ > k) = 1 − P (R ∗ ≤ k) = 1 − H(k)n→+∞ nΠ S =i=0n−11 ∑lim χ S (R i ) = P (R ∗ ≤ m) = H(m)n→+∞ ni=0
CAPITOLO 5. SIMULAZIONE 48dove χ(R) <strong>in</strong><strong>di</strong>ca la f<strong>un</strong>zione <strong>in</strong><strong>di</strong>catrice dell’<strong>in</strong>sieme R.I valori <strong>di</strong> Π O e <strong>di</strong> Π S sono stati calcolati sui <strong>di</strong>versi <strong>in</strong>tervalli deiparametri grazie alle rout<strong>in</strong>es overflowanalitico.m e seccaanalitica.m, chevalutano i valori della <strong>di</strong>stribuzione ed effettuano anche i controlli sui <strong>di</strong>versiparametri <strong>di</strong> k e m (si ricorda che <strong>per</strong> ottenere la <strong>di</strong>stribuzione stazionariaanalitica è necessario, oltre alla con<strong>di</strong>zione generale k > m, che k sia multiplo<strong>in</strong>tero <strong>di</strong> m). In queste due rout<strong>in</strong>es è stata tradotta la <strong>di</strong>stribuzioneanalitica, già presentata nel paragrafo relativo all’analisi dell’<strong>in</strong>gresso Esponenziale,ed attraverso cicli for concatenati vengono effettuati i controlli suiparametri della <strong>di</strong>ga e la valutazione della cumulata analitica. Gli <strong>in</strong>gressialle rout<strong>in</strong>es sono qu<strong>in</strong><strong>di</strong> gli <strong>in</strong>tervalli entro cui variano i parametri della <strong>di</strong>gaed il parametro della <strong>di</strong>stribuzione Esponenziale. L’output delle rout<strong>in</strong>es è<strong>un</strong>a matrice contenente i valori delle frazioni <strong>di</strong> tempo rispettive <strong>in</strong> f<strong>un</strong>zionedegli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.Nelle figure da 5.24 a 5.27 si sono sovrapposti i risultati ottenuti tramite<strong>simulazione</strong> e i risultati teorici, valutati nei p<strong>un</strong>ti <strong>in</strong> cui è stato possibilefarlo, date le limitazioni <strong>per</strong> il calcolo della R ∗ teorica.Si è qu<strong>in</strong><strong>di</strong> proceduto al calcolo dell’errore effettuato durante la <strong>simulazione</strong>,confrontando valori ottenuti durante la <strong>simulazione</strong> e quelli teorici.Esso è rappresentato nelle figure da 5.28 a 5.31 . Per la <strong>simulazione</strong> dellafrazione <strong>di</strong> tempo passata <strong>in</strong> overflow si è ottenuto <strong>un</strong> errore me<strong>di</strong>o del0.0037 <strong>per</strong> Esponenziale <strong>in</strong> <strong>in</strong>gresso <strong>di</strong> parametro p=0.5 ed <strong>un</strong> errore me<strong>di</strong>odel 0.0017 <strong>per</strong> p=0.8. Gli errori relativi rispettivi sono del 2% e del 2.5%,<strong>per</strong> cui ci si può <strong>di</strong>re sod<strong>di</strong>sfatti della <strong>simulazione</strong>. Per la <strong>simulazione</strong> dellafrazione <strong>in</strong> secca si sono ottenuti errori me<strong>di</strong> del 0.0029 <strong>per</strong> p=0.5 e del0.0019 <strong>per</strong> p=0.8, con rispettivi errori relativi <strong>di</strong> 1% e 0.5%, <strong>per</strong> cui anche<strong>in</strong> questo caso si può validare l’algoritmo <strong>di</strong> <strong>simulazione</strong>.
CAPITOLO 5. SIMULAZIONE 49porzione10.90.80.70.60.50.40.30.20.1000.90.80.70.60.50.40.30.2k51015543m2100.1Figura 5.12: Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.5141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.13: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.5
CAPITOLO 5. SIMULAZIONE 5010.90.90.80.80.70.7porzione0.60.50.40.30.60.50.20.40.1000.30.25k1015543m2100.1Figura 5.14: Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.8141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.15: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.8
CAPITOLO 5. SIMULAZIONE 51porzione10.90.80.70.60.50.40.30.20.1000.90.80.70.60.50.40.350.2k1015543m2100.1Figura 5.16: Frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Beta<strong>di</strong>latata141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.17: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> overflow, <strong>in</strong>caso <strong>di</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata
CAPITOLO 5. SIMULAZIONE 520.90.8porzione10.90.80.70.60.50.40.30.20.70.60.50.40.30.10543m2101510k500.20.1Figura 5.18: Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.5141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.19: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso<strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.5
CAPITOLO 5. SIMULAZIONE 530.9porzione10.90.80.70.60.50.40.80.70.60.50.40.30.30.20.100.20543m2101510k50.1Figura 5.20: Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressoEsponenziale p=0.8141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.21: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso<strong>di</strong> <strong>in</strong>gresso Esponenziale p=0.8
CAPITOLO 5. SIMULAZIONE 5410.9porzione10.90.80.70.60.50.40.30.20.80.70.60.50.40.30.10543m2101510k500.20.1Figura 5.22: Frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso <strong>di</strong> <strong>in</strong>gresso Beta<strong>di</strong>latata141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 5.23: Curve <strong>di</strong> livello della frazione <strong>di</strong> tempo passata <strong>in</strong> secca, <strong>in</strong> caso<strong>di</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata
CAPITOLO 5. SIMULAZIONE 5510.90.80.7porzione0.60.50.40.30.20.1005k1015543m210Figura 5.24: Confronto tra frazione <strong>in</strong> overflow simulata (su<strong>per</strong>ficie verde)e calcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.510.90.80.70.6porzione0.50.40.30.20.1005k1015543m210Figura 5.25: Confronto tra frazione <strong>in</strong> overflow simulata (su<strong>per</strong>ficie verde)e calcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8
CAPITOLO 5. SIMULAZIONE 5610.90.80.7porzione0.60.50.40.30.20.100543m2101510k5Figura 5.26: Confronto tra frazione <strong>in</strong> secca simulata (su<strong>per</strong>ficie verde) ecalcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.510.8porzione0.60.40.201510k50012m345Figura 5.27: Confronto tra frazione <strong>in</strong> secca simulata (su<strong>per</strong>ficie verde) ecalcolata <strong>in</strong> via teorica (stelle rosse) <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8
CAPITOLO 5. SIMULAZIONE 570.030.0250.02errore0.0150.010.0050151045k50123mFigura 5.28: Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>overflow, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.50.0250.020.015errore0.010.0050151045k50123mFigura 5.29: Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong>overflow, <strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8
CAPITOLO 5. SIMULAZIONE 58x 10 −38765errore43210151045k50123mFigura 5.30: Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong> secca,<strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.5x 10 −38765errore432101510k50123m45Figura 5.31: Analisi dell’errore <strong>di</strong> <strong>simulazione</strong> <strong>per</strong> frazione <strong>di</strong> tempo <strong>in</strong> secca,<strong>per</strong> <strong>in</strong>gresso Esponenziale con p=0.8
Capitolo 6Problema dell’<strong>ottimizzazione</strong>In questo capitolo si presentano i risultati relativi alla parte più concreta<strong>di</strong> questa trattazione. Si affronta <strong>in</strong>fatti il problema <strong>di</strong> ottimizzare i guadagnigenerati da <strong>un</strong>a <strong>di</strong>ga, scegliendo i parametri migliori <strong>di</strong> capacità utile k e <strong>di</strong>portata <strong>in</strong> uscita m. Questo <strong>per</strong>mette <strong>in</strong>fatti, <strong>in</strong> sede <strong>di</strong> progetto, <strong>di</strong> sceglierei parametri ottimali che, a fronte <strong>di</strong> <strong>un</strong>a <strong>di</strong>stribuzione <strong>di</strong> probabilità degli<strong>in</strong>gressi, <strong>per</strong>mettano <strong>di</strong> massimizzare i guadagni attesi.Per prima cosa si è presentato il metodo utilizzato <strong>per</strong> la def<strong>in</strong>izione <strong>di</strong><strong>un</strong>a f<strong>un</strong>zione guadagno realistica, <strong>di</strong>pendente dai soli parametri k e m. Essatiene conto della maggior parte dei fenomeni presenti all’<strong>in</strong>terno <strong>di</strong> <strong>un</strong>’o<strong>per</strong>a<strong>di</strong> derivazione; tuttavia i valori assegnati sono puramente esemplificativi. Incompenso, la trattazione generica è facilmente applicabile a qualsiasi altrostu<strong>di</strong>o particolare.Si è poi proceduto alla <strong>simulazione</strong> del valore atteso <strong>di</strong> questa f<strong>un</strong>zione,sia sul breve term<strong>in</strong>e (30 anni <strong>di</strong> f<strong>un</strong>zionamento), che sul l<strong>un</strong>go term<strong>in</strong>e(100 anni <strong>di</strong> f<strong>un</strong>zionamento). Nel paragrafo relativo alla <strong>simulazione</strong> si fariferimento alla rout<strong>in</strong>e centrale <strong>di</strong> questa tesi, che è riportata <strong>in</strong>teramentenell’Appen<strong>di</strong>ce.Ottenuta la f<strong>un</strong>zione <strong>di</strong> guadagno atteso si è passato al processo <strong>di</strong> <strong>ottimizzazione</strong>della stessa. Come sarà meglio specificato nei paragrafi relativisi è utilizzato <strong>un</strong> metodo <strong>di</strong> <strong>ottimizzazione</strong> facente parte <strong>di</strong> <strong>un</strong>’ampia classe<strong>di</strong> modelli detti <strong>di</strong> “ricerca <strong>di</strong>retta”, denom<strong>in</strong>ato compass search. Attraversol’implementazione <strong>di</strong> questo metodo si è qu<strong>in</strong><strong>di</strong> arrivati ai parametri ottimi<strong>per</strong> le tipologie <strong>di</strong> <strong>in</strong>gressi <strong>di</strong> densità Esponenziale con parametri p = 0.5 ep = 0.8 e Beta <strong>di</strong>latata con parametri a = 3, b = 4, c = 4.59
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 606.1 Determ<strong>in</strong>azione della f<strong>un</strong>zione guadagnoPer def<strong>in</strong>ire accuratamente il problema dell’<strong>ottimizzazione</strong> della gestionedella <strong>di</strong>ga, dal p<strong>un</strong>to <strong>di</strong> vista economico, si devono <strong>per</strong> prima cosa determ<strong>in</strong>arecorrettamente tutti i costi e le possibilità <strong>di</strong> guadagno presenti nellagestione. Per fare questo si devono associare ai valori generati nelle simulazionile rispettive <strong>un</strong>ità <strong>di</strong> misura. Per quanto riguarda la capacità utilek della <strong>di</strong>ga si tratta <strong>di</strong> [km 3 ], mentre <strong>per</strong> la portata annuale <strong>in</strong> uscita m sitratta <strong>di</strong> [km 3 /anno].6.1.1 Determ<strong>in</strong>azione dei costiIn questa sezione si dà spiegazione dei <strong>di</strong>versi costi implicati nella progettazionedella <strong>di</strong>ga. Essi consistono nell’<strong>in</strong>vestimento <strong>in</strong>iziale <strong>per</strong> la costruzionedella struttura e nei costi <strong>di</strong> manutenzione e fiscali. Nello sviluppare lecaratteristiche <strong>di</strong> ciasc<strong>un</strong> costo si fà riferimento all’articolo <strong>di</strong> Avi-Itzhak eBen-Tuvia [1963], “A problem of optimiz<strong>in</strong>g a collect<strong>in</strong>g reservoir system”.Per <strong>un</strong>a trattazione più ampia si faccia <strong>in</strong>vece riferimento al lavoro redattoda Prabhu [1998], “Stochastic storage processes: queues, <strong>in</strong>surance risk,dams, and data comm<strong>un</strong>ication”.Il lavoro <strong>di</strong> Avi-Itzhak e Ben-Tuvia ci <strong>in</strong><strong>di</strong>ca che non è possibile costruiregeneriche descrizioni dei costi, poichè esse variano a seconda della tipologiadella <strong>di</strong>ga, del paese <strong>in</strong> cui la si vuole costruire e delle tipologie <strong>di</strong> politicheeconomiche utilizzate <strong>per</strong> gestire gli <strong>in</strong>vestimenti. La <strong>di</strong>scussione sarà <strong>per</strong>ciòcostruita su <strong>di</strong> <strong>un</strong> caso esemplificativo, ipotizzando f<strong>un</strong>zioni <strong>di</strong> costoverosimili. La <strong>di</strong>scussione effettuata può essere facilmente rimodellata su<strong>di</strong>versi casi, così pure i programmi sviluppati <strong>per</strong> la successiva analisi sonostati progettati <strong>per</strong> <strong>un</strong> utilizzo più generico.L’<strong>in</strong>vestimento <strong>in</strong>iziale <strong>per</strong> la costruzione della struttura è composto siadalla spesa <strong>per</strong> la costruzione del serbatoio (della <strong>di</strong>ga vera a propria) cheda quella riferita alla costruzione della centrale <strong>per</strong> la produzione <strong>di</strong> energia.Esso è espresso <strong>in</strong> f<strong>un</strong>zione della grandezza k della <strong>di</strong>ga e verrà <strong>in</strong><strong>di</strong>catodalla f<strong>un</strong>zione C 1 (k). Per il caso esempio abbiamo fatto riferimento ai costi<strong>in</strong>iziali sostenuti durante la costruzione della Diga delle Tre Gole sul fiumeChang Jang, <strong>in</strong> C<strong>in</strong>a, ottenendo la f<strong>un</strong>zioneC 1 (k) = 4500 · √k[10 6 Euros]dove k è espresso sempre <strong>in</strong> [km 3 ].Altra voce <strong>di</strong> costo è rappresentata dai costi aggi<strong>un</strong>tivi alla struttura,quali ad esempio manutenzione, tasse, ammortamenti. Essi possono essereconsiderati complessivamente e valutati come <strong>un</strong>a <strong>per</strong>centuale del valoreass<strong>un</strong>to da C 1 (k) <strong>per</strong> ogni k. Nel caso preso come esempio questa <strong>per</strong>centualeè stata fissata pari al 10%. Avremo così la f<strong>un</strong>zione <strong>di</strong> costo totale C(k):C(k) = 4950 · √k[10 6 Euros]
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 616.1.2 Determ<strong>in</strong>azione dei ricaviNella <strong>di</strong>scussione sulla determ<strong>in</strong>azione dei ricavi dati dalla gestione della<strong>di</strong>ga si è considerato il caso <strong>di</strong> <strong>un</strong>a <strong>di</strong>ga volta alla sola produzione <strong>di</strong>energia idroelettrica, trascurando gli altri possibili utilizzi, quali il rifornimento<strong>di</strong> acqua <strong>per</strong> irrigazione o l’utilizzo della su<strong>per</strong>ficie d’acqua a scopi <strong>di</strong>navigazione. Per determ<strong>in</strong>are la f<strong>un</strong>zione dei ricavi sarà necessaria <strong>un</strong>a valutazionedell’energia prodotta dall’impianto idroelettrico posto a valle della<strong>di</strong>ga.Il processo <strong>di</strong> produzione dell’energia è <strong>di</strong> <strong>per</strong> sè molto semplice: l’acqua,che cade dal serbatoio ad altezza elevata, mette <strong>in</strong> moto delle turb<strong>in</strong>e all’<strong>in</strong>ternodella centrale, le quali mettono a loro volta <strong>in</strong> moto dei generatori cheproducono elettricità. L’energia idroelettrica generata da questo processo èdata dalla formula:mP = η · ρ · g ·1000 · H [KW],nel caso <strong>in</strong> cui si abbiano i valori <strong>di</strong> m e H espressi rispettivamente <strong>in</strong> [m 3 /s]e [m]. Mo<strong>di</strong>ficando la formula <strong>per</strong> <strong>in</strong>trodurre le <strong>un</strong>ità <strong>di</strong> misura utilizzate,si ottiene qu<strong>in</strong><strong>di</strong>:P = η · ρ · g ·m · 10 931536000 · H [KW],dove η è l’efficienza delle turb<strong>in</strong>e, ρ [Kg/m 3 ] è la densità dell’acqua (ass<strong>un</strong>taa 1000), g [m/s 2 ] è l’accelerazione <strong>di</strong> gravità (ass<strong>un</strong>ta a 9.81), m [km 3 /anno]è la portata <strong>in</strong> uscita della <strong>di</strong>ga e H [km] è l’altezza netta effettiva dell’acquaall’<strong>in</strong>terno della <strong>di</strong>ga.Poichè lo scopo è quello <strong>di</strong> ottenere i KJ prodotti dalla <strong>di</strong>ga nell’anno<strong>di</strong> esercizio, si mo<strong>di</strong>fica la formula precedente <strong>in</strong> modo da ottenere latrasformazione da KW a KJ/anno:P = η · ρ · g · m · 10 9 · H[KJ/anno].Si procede con il calcolo <strong>di</strong> H, altezza netta effettiva dell’acqua. Per ottenereH è necessario determ<strong>in</strong>are prima l’altezza totale H 0 , ovvero la <strong>di</strong>fferenzatra il pelo d’acqua all’<strong>in</strong>terno del serbatoio e il livello al quale è posta lacentrale idroelettrica. Si ipotizza che la centrale idroelettrica sia posta al <strong>di</strong>sotto <strong>di</strong> 100m dal livello delle fondamenta della <strong>di</strong>ga.Per la determ<strong>in</strong>azione <strong>di</strong> H è necessario effettuare delle ipotesi sulla geometriadella <strong>di</strong>ga: si può assimilare con buona approssimazione la struttura<strong>di</strong> <strong>un</strong>a generica <strong>di</strong>ga ad <strong>un</strong> semicono rovesciato, a pareti lisce. Sotto questeipotesi si può qu<strong>in</strong><strong>di</strong> <strong>di</strong>re che il legame tra H 0 n, l’altezza posseduta dall’acquaal tempo n, e R n , ovvero il volume d’acqua contenuto all’<strong>in</strong>terno della <strong>di</strong>gaal tempo n, è dato da <strong>un</strong>a relazione cubica:H 0 n = 3√ α · R n + 0.1[km]
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 62dove α è <strong>un</strong>a costante caratteristica della forma propria della <strong>di</strong>ga e l’addendo0.1 è dovuto alla <strong>di</strong>fferenza <strong>di</strong> livello tra fondamenta e centrale idroelettrica,come ipotizzato precedentemente.L’altezza d’acqua <strong>di</strong>sponibile <strong>per</strong> la produzione <strong>di</strong> energia al tempon, H n , sarà <strong>per</strong>ciò l’altezza totale, H 0 n, alla quale vengono sottratte le<strong>per</strong><strong>di</strong>te <strong>di</strong> energia, espresse <strong>in</strong> altezza (ve<strong>di</strong> figura 6.1). Queste <strong>per</strong><strong>di</strong>te sonocausate pr<strong>in</strong>cipalmente dal trasporto, attraverso <strong>un</strong> sistema <strong>di</strong> condutture,dell’acqua dal serbatoio alla centrale a valle; parte dell’energia potenzialeposseduta dall’acqua viene <strong>in</strong>fatti <strong>di</strong>ssipata a causa dei fenomeni idrologiciche si sviluppano durante il trasporto. Si traduce qu<strong>in</strong><strong>di</strong> questa energia<strong>di</strong>ssipata come <strong>un</strong>’altezza, che è <strong>di</strong>rettamente proporzionale alla portata <strong>in</strong>uscita m. Si ha qu<strong>in</strong><strong>di</strong> che la prevalenza Loss è espressa da:Loss = β · m[km]dove β costante <strong>di</strong> proporzionalità. L’espressione complessiva dell’altezzanetta effettiva al tempo n sarà <strong>per</strong>ciò:H n = H 0 n − Loss = 3√ α · R n + 0.1 − β · m[km].Fissando ora le costanti relative al caso preso come esempio pari a α = 0.8 eβ = 0.3 (valori ragionevoli <strong>per</strong> <strong>un</strong> caso verosimile) si ottiene il valore <strong>di</strong> H 0<strong>in</strong> f<strong>un</strong>zione della capacità utile e dell’uscita della <strong>di</strong>ga:H n = 3√ 0.8 · R n + 0.1 − 0.3 · m[km].Fissando ora l’efficienza delle turb<strong>in</strong>e a η = 0.9, la densità dell’acqua aρ = 1000Kg/m 3 e l’accelerazione <strong>di</strong> gravità a g = 9.81m/s 2 si ottiene <strong>un</strong>apotenza complessiva prodotta dalla centrale idroelettrica al tempo n pari a:P n = 0.9 · 1000 · 9.81 · m · 10 9 · ( 3√ 0.8 · R n + 0.1 − 0.3 · m)[KJ/anno]ovvero:P ≈ 883 · 10 10 · m · ( 3√ 0.8 · R n + 0.1 − 0.3 · m)[KJ/anno].Ipotizzando <strong>un</strong> ricavo <strong>di</strong> 0.05 Euros <strong>per</strong> KJ, si ha che la f<strong>un</strong>zione complessiva<strong>di</strong> ricavo <strong>per</strong> l’anno n risulta essere:Q n (k, m) = 44.15 · 10 4 · m · ( 3√ 0.8 · R n + 0.1 − 0.3 · m)[10 6 Euros].
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 63Figura 6.1: Sezione laterale della <strong>di</strong>ga, che evidenzia il f<strong>un</strong>zionamento dellacentrale idroelettrica6.1.3 Determ<strong>in</strong>azione della f<strong>un</strong>zione guadagnoSfruttando i risultati dei paragrafi precedenti è ora possibile trovare <strong>in</strong>maniera semplice la f<strong>un</strong>zione guadagno al term<strong>in</strong>e del t − esimo anno <strong>di</strong>esercizio, che non è altro che la <strong>di</strong>fferenza tra i ricavi effettuati durante i tanni <strong>di</strong> esercizio ed i costi <strong>in</strong>iziali. Si avrà <strong>per</strong>ciò:ovvero,t∑G t (k, m) = Q n (k, m) − C(k)n=1G t (k, m) = 44.15·10 4·mt∑( 3√ 0.8 · R n +0.1−0.3·m)−4950 √ k [10 6 Euros].n=1
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 646.2 Simulazione della f<strong>un</strong>zione guadagno nei casi<strong>in</strong> analisiPer la <strong>simulazione</strong> della f<strong>un</strong>zione guadagno si è sviluppata <strong>un</strong>a rout<strong>in</strong>egenerica, guadagno.m, analizzante sia gli <strong>in</strong>gressi <strong>di</strong> tipo Esponenziale chegli <strong>in</strong>gressi <strong>di</strong> tipo Beta, poichè riceve <strong>in</strong> <strong>in</strong>gresso <strong>un</strong>a matrice contenentegli <strong>in</strong>gressi delle simulazioni. La generalità <strong>di</strong> questa rout<strong>in</strong>e risiede nel fattoche tutti i parametri della <strong>simulazione</strong> vengono passati <strong>in</strong> <strong>in</strong>gresso, siaquelli relativi alle <strong>di</strong>stribuzioni degli <strong>in</strong>gressi alla <strong>di</strong>ga che le def<strong>in</strong>izioni dellef<strong>un</strong>zioni <strong>di</strong> ricavo e <strong>di</strong> costo. Questo <strong>per</strong>mette l’utilizzo della rout<strong>in</strong>e <strong>in</strong>qualsiasi <strong>simulazione</strong> desiderata dall’utente, senza necessitare <strong>di</strong> mo<strong>di</strong>ficheal programma.Dapprima si illustrano i <strong>di</strong>versi parametri che la f<strong>un</strong>zione riceve <strong>in</strong> <strong>in</strong>gresso:• La matrice contenente gli <strong>in</strong>gressi aleatori alla <strong>di</strong>ga, provenienti dallarispettiva <strong>di</strong>stribuzione, dove ad ogni colonna corrisponde <strong>un</strong>a <strong>simulazione</strong><strong>di</strong> ampiezza temporale data dalla somma <strong>di</strong> transitorio e orizzontetemporale.• Gli <strong>in</strong>tervalli entro cui si vogliono far variare i parametri della <strong>di</strong>ga,ovvero la capacità utile k e l’uscita costante m.• La stima della durata del transitorio, valutata <strong>in</strong> precedenza dall’utente.• L’orizzonte temporale <strong>di</strong> f<strong>un</strong>zionamento a regime della <strong>di</strong>ga, valutatoa partire dalla f<strong>in</strong>e del transitorio.• La f<strong>un</strong>zione <strong>di</strong> costo, passata come str<strong>in</strong>ga <strong>di</strong> caratteri.• La f<strong>un</strong>zione <strong>di</strong> ricavo, passata come str<strong>in</strong>ga <strong>di</strong> caratteri.• Il numero <strong>di</strong> simulazioni considerate, ovvero il numero <strong>di</strong> colonne dellamatrice passata <strong>in</strong> <strong>in</strong>gresso.A fronte <strong>di</strong> questi <strong>in</strong>gressi la rout<strong>in</strong>e restituisce <strong>un</strong>a matrice contenente iguadagni me<strong>di</strong> sviluppati dalla <strong>di</strong>ga e f<strong>un</strong>zioni della capacità utile, dell’uscitae dell’orizzonte temporale. Per ogni valore <strong>di</strong> k ed m la f<strong>un</strong>zione effettuadapprima il controllo k > m necessario alla <strong>simulazione</strong>, poi calcola il costo<strong>in</strong> f<strong>un</strong>zione <strong>di</strong> k. Per ogni <strong>simulazione</strong> valuta la sequenza dei contenutid’acqua nella <strong>di</strong>ga e ne memorizza il guadagno totale che ne deriva. Nellamatrice memorizza qu<strong>in</strong><strong>di</strong> la me<strong>di</strong>a dei guadagni risultante dalle simulazionie plotta la f<strong>un</strong>zione guadagno e le rispettive l<strong>in</strong>ee <strong>di</strong> livello.O<strong>per</strong>ativamente la <strong>simulazione</strong> si è svolta nel seguente modo. Innanzitutto sisono considerate le tipologie <strong>di</strong> <strong>in</strong>gressi già analizzate nel capitolo precedente:
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 65• Distribuzione Esponenziale con parametro p=0.5.• Distribuzione Esponenziale con parametro p=0.8.• Distribuzione Beta con parametri a=3 e b=4, <strong>di</strong>latata sull’<strong>in</strong>tervallochiuso [0,4].Si è valutata poi la durata del transitorio, effettuata tramite <strong>di</strong>versi tentativi.Possedendo dal capitolo precedente la <strong>di</strong>stribuzione stazionaria, sisono ricavate <strong>di</strong>verse <strong>di</strong>stribuzioni dei contenuti d’acqua nella <strong>di</strong>ga, relativea <strong>di</strong>versi archi <strong>di</strong> tempo <strong>di</strong> f<strong>un</strong>zionamento. La durata del transitorio è statastimata come l’arco <strong>di</strong> tempo <strong>in</strong> cui la <strong>di</strong>stribuzione ottenuta si <strong>di</strong>scostavasufficientemente dalla <strong>di</strong>stribuzione stazionaria. La durata del transitoriorisultante dalle stime è <strong>di</strong> 20 passi temporali.I parametri della <strong>di</strong>ga sono stati fatti variare all’<strong>in</strong>terno degli <strong>in</strong>tervalli giàconsiderati nel capitolo precedente: k nell’<strong>in</strong>tervallo chiuso [1,15] con passo<strong>un</strong>itario, mentre m nell’<strong>in</strong>tervallo chiuso [0,5] con passo 0.1. Le f<strong>un</strong>zioni <strong>di</strong>costo e <strong>di</strong> ricavo sono state <strong>in</strong>serite traducendo <strong>in</strong> str<strong>in</strong>ga Matlab <strong>di</strong> caratterile f<strong>un</strong>zioni ottenute nel paragrafo precedente:costo = ’4950*sqrt(k)’;ricavo=’441500*m*((0.8.*r).^(1/3)+0.1-0.3*m)’;Inf<strong>in</strong>e si è scelto <strong>di</strong> effettuare 1000 simulazioni <strong>per</strong> ogni valore <strong>di</strong> k e m.6.2.1 Simulazione a breve term<strong>in</strong>eI primi risultati ottenuti dalle simulazioni sono riferiti agli <strong>in</strong>gressi <strong>in</strong>analisi su <strong>un</strong> arco <strong>di</strong> tempo breve: è stato considerato <strong>un</strong> f<strong>un</strong>zionamento aregime della durata <strong>di</strong> 30 anni, successivo ad <strong>un</strong> transitorio della durata <strong>di</strong>4 anni (come stimato <strong>in</strong> precedenza). I risultati <strong>di</strong> queste simulazioni sonoriportati nelle figure da 6.2 a 6.7.6.2.2 Simulazione a l<strong>un</strong>go term<strong>in</strong>eLe simulazioni successive sono sempre relative agli <strong>in</strong>gressi <strong>in</strong> analisi, mavalutati su <strong>un</strong> arco <strong>di</strong> tempo a l<strong>un</strong>go term<strong>in</strong>e: si è considerato <strong>un</strong> f<strong>un</strong>zionamentoa regime <strong>di</strong> durata 100 passi temporali, a seguito <strong>di</strong> <strong>un</strong> transitoriodella durata <strong>di</strong> 4 anni (come da stima). I risultati <strong>di</strong> queste simulazioni sonoriportati nelle figure da 6.8 a 6.13.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 66x 10 7x 10 7342.5321.52110.500−0.5−1−1−215−1.5−3510−20 1 2 3 4 5m0kFigura 6.2: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenziale conp=0.5, calcolata su orizzonte temporale <strong>di</strong> 30 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.3: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.5, calcolata su orizzonte temporale <strong>di</strong> 30 anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 6732x 10 7x 10 721.510.5100−1−0.5−1−1.5−2−2−315−2.5−40 1 2 3 4 50510k−3mFigura 6.4: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenziale conp=0.8, calcolata su orizzonte temporale <strong>di</strong> 30 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.5: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.8, calcolata su orizzonte temporale <strong>di</strong> 30 anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 684x 10 7x 10 7332.52211.501−10.5−20−3−0.515−1k10500 1 2 3 4 5m−1.5−2Figura 6.6: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata cona=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 30 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.7: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoBeta <strong>di</strong>latata con a=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 30 anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 69x 10 7121086420−2−4−6−815x 10 71086420−210−4k5−60012m345Figura 6.8: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenziale conp=0.5, calcolata su orizzonte temporale <strong>di</strong> 100 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.9: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.5, calcolata su orizzonte temporale <strong>di</strong> 100 anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 701x 10 8x 10 7860.5402−0.50−2−1−1.515−4−610−8k500123m45−10Figura 6.10: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Esponenziale conp=0.8, calcolata su orizzonte temporale <strong>di</strong> 100 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.11: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoEsponenziale con p=0.8, calcolata su orizzonte temporale <strong>di</strong> 100anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 71x 10 7x 10 712101088646204−22−4−60−815−2k10−450012m345−6Figura 6.12: F<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata cona=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 100 anni141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.13: L<strong>in</strong>ee <strong>di</strong> livello della f<strong>un</strong>zione guadagno determ<strong>in</strong>ata <strong>per</strong> <strong>in</strong>gressoBeta <strong>di</strong>latata con a=3, b=4; calcolata su orizzonte temporale <strong>di</strong> 100anni
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 726.3 Determ<strong>in</strong>azione delle regioni ammissibili <strong>per</strong>l’<strong>ottimizzazione</strong>Per l’identificazione delle regioni ammissibili <strong>per</strong> l’<strong>ottimizzazione</strong> ci si èriferite ai risultati ottenuti nel precedente capitolo <strong>per</strong> le frazioni <strong>di</strong> tempopassate dalla <strong>di</strong>ga <strong>in</strong> overflow ed <strong>in</strong> secca. Si è stabilito che ai f<strong>in</strong>i <strong>di</strong> <strong>un</strong> buonf<strong>un</strong>zionamento della <strong>di</strong>ga e <strong>di</strong> contenimento delle <strong>per</strong><strong>di</strong>te f<strong>in</strong>anziarie dovutea questi due fenomeni, fosse auspicabile che le probabilità <strong>di</strong> overflow e <strong>di</strong>secca non su<strong>per</strong>assero rispettivamente il 20% ed il 5%. Questa <strong>di</strong>fferenza èdovuta al fatto che la <strong>per</strong><strong>di</strong>ta che si affronterebbe nel fermare la produzioneelettrica è molto più alta <strong>di</strong> quella della semplice fuoriuscita <strong>di</strong> acqua dalserbatoio. Questi valori <strong>di</strong> <strong>per</strong>centuali sono stati scelti poichè verosimili, mala <strong>di</strong>scussione è facilmente generalizzabile <strong>per</strong> qualsiasi valore scelto.Per la determ<strong>in</strong>azione dei parametri entro i quali è utile effettuare l’<strong>ottimizzazione</strong>sono state tracciate le l<strong>in</strong>ee <strong>di</strong> livello delle su<strong>per</strong>fici già trovatenel capitolo precedente, ai livelli corrispondenti alle <strong>per</strong>centuali fissate <strong>per</strong>ciasc<strong>un</strong>o dei due fenomeni. Le coppie <strong>di</strong> parametri utili sono qu<strong>in</strong><strong>di</strong> quellerappresentate dai p<strong>un</strong>ti residenti nella regione su<strong>per</strong>iore, <strong>di</strong> forma triangolare,compresa tra le due l<strong>in</strong>ee <strong>di</strong> livello.Nelle figure da 6.14 a 6.16 sono rappresentate le regioni <strong>di</strong> parametriammissibili <strong>per</strong> gli <strong>in</strong>gressi analizzati.141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.14: Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Esponenziale(p=0.5): l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a 0.05 (rosso), l<strong>in</strong>ea<strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a 0.2 (verde), v<strong>in</strong>colo k > m (blu).
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 73141210k86420 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.15: Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Esponenziale(p=0.8): l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a 0.05 (rosso), l<strong>in</strong>ea<strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a 0.2 (verde), v<strong>in</strong>colo k > m (blu).141210k86421 1.5 2 2.5 3 3.5 4 4.5 5mFigura 6.16: Analisi dei parametri ottimali <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata (a=3,b=4, <strong>di</strong>lataz=4): l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> secca pari a 0.05 (rosso),l<strong>in</strong>ea <strong>di</strong> livello <strong>di</strong> probabilità <strong>di</strong> overflow pari a 0.2 (verde), v<strong>in</strong>colo k > m(blu).
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 746.4 Metodo <strong>di</strong> <strong>ottimizzazione</strong> adottatoIl problema <strong>di</strong> <strong>ottimizzazione</strong> che si deve affrontare nella <strong>simulazione</strong>è riassumibile come <strong>un</strong> problema <strong>di</strong> massimizzazione v<strong>in</strong>colata, nella qualenon si ha espressione esplicita della f<strong>un</strong>zione obiettivo, qu<strong>in</strong><strong>di</strong> espressione esplicitadelle derivate e del gra<strong>di</strong>ente della stessa. Per affrontare questo tipo<strong>di</strong> problema, tra la miriade <strong>di</strong> meto<strong>di</strong> <strong>di</strong> possibile utilizzo si è scelto <strong>un</strong>o <strong>di</strong>facile implementazione, tratto da <strong>un</strong> articolo <strong>di</strong> rassegna <strong>di</strong> Kolda, Lewise Torczon “Optimization by <strong>di</strong>rect search” (riferimento bibliografico [6]) <strong>in</strong>cui si analizza <strong>in</strong> maniera completa questa tipologia <strong>di</strong> <strong>ottimizzazione</strong> e sistu<strong>di</strong>ano algoritmi efficienti <strong>per</strong> la ricerca dei p<strong>un</strong>ti <strong>di</strong> ottimo. Lo stu<strong>di</strong>o èaffrontato sia dal p<strong>un</strong>to <strong>di</strong> vista analitico, fornendo risultati esatti <strong>per</strong> la convergenzadegli algoritmi, sia dal p<strong>un</strong>to <strong>di</strong> vista computazionale, analizzandopregi e <strong>di</strong>fetti degli algoritmi <strong>in</strong> term<strong>in</strong>i <strong>di</strong> implementazione <strong>in</strong>formatica.I meto<strong>di</strong> <strong>di</strong> <strong>ottimizzazione</strong> <strong>per</strong> il tipo <strong>di</strong> problema <strong>in</strong> analisi si chiamanometo<strong>di</strong> <strong>di</strong> ricerca <strong>di</strong>retta. A questa classe appartengono numerosi algoritmi,con <strong>di</strong>verse caratteristiche computazionali. Per affrontare l’<strong>ottimizzazione</strong>oggetto <strong>in</strong> questa tesi ci si è riferiti all’algoritmo <strong>di</strong> base <strong>di</strong> questaclasse <strong>di</strong> meto<strong>di</strong>, denom<strong>in</strong>ato compass search, sviluppato da E. Fermi e N.Metropolis. Questa scelta è stata dettata dai numerosi lati positivi che l’algoritmopossiede: è semplice da implementare, non è oneroso computazionalmente,possiede basi teoriche forti e ne è <strong>di</strong>mostrata la convergenza. Presenta<strong>per</strong>ò <strong>un</strong> lato negativo: si tratta <strong>di</strong> <strong>un</strong> algoritmo molto veloce nei primipassi che compie, ma più converge alla soluzione più la velocità <strong>di</strong>m<strong>in</strong>uisce,e questo lo rende <strong>un</strong>o degli algoritmi più lenti all’<strong>in</strong>terno della classe deimeto<strong>di</strong> <strong>di</strong> ricerca <strong>di</strong>retta. Tuttavia si è preferito sacrificare la velocità <strong>di</strong>calcolo a favore dell’efficienza dell’algoritmo.La descrizione generale dell’algoritmo è molto semplice, soprattutto nelcaso <strong>di</strong> f<strong>un</strong>zione <strong>di</strong> due variabili: partendo da <strong>un</strong> generico p<strong>un</strong>to del dom<strong>in</strong>ioci si sposta <strong>in</strong> quattro <strong>di</strong>verse <strong>di</strong>rezioni: nord, est, sud e ovest; se almeno<strong>un</strong>o <strong>di</strong> questi passi porta ad <strong>un</strong> aumento del valore della f<strong>un</strong>zione allorail p<strong>un</strong>to rispettivo al maggiore aumento <strong>di</strong>venta la nuova iterata. Se ness<strong>un</strong>p<strong>un</strong>to porta ad <strong>un</strong> miglioramento, allora si provano passi <strong>di</strong> l<strong>un</strong>ghezza<strong>di</strong>mezzata. Si nota subito che quando l’algoritmo approssima la soluzione,si riduce la l<strong>un</strong>ghezza dei passi compiuti; questo è proprio il p<strong>un</strong>to centralenella <strong>di</strong>mostrazione della convergenza del metodo. L’algoritmo term<strong>in</strong>a <strong>in</strong>fattiquando la l<strong>un</strong>ghezza del passo scende al <strong>di</strong> sotto <strong>di</strong> <strong>un</strong> certo valore <strong>di</strong>tolleranza fissato.In questa sezione si sono descritti, dapprima, il metodo <strong>in</strong> maniera piùchiara e formale nel caso <strong>di</strong> <strong>ottimizzazione</strong> non v<strong>in</strong>colata, ed, <strong>in</strong> seguito,si è fornita la <strong>di</strong>mostrazione della convergenza del metodo. Inf<strong>in</strong>e è statoillustrato come è possibile estendere il metodo <strong>in</strong> caso <strong>di</strong> <strong>ottimizzazione</strong> conv<strong>in</strong>coli generici sul dom<strong>in</strong>io della f<strong>un</strong>zione.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 756.4.1 Def<strong>in</strong>izione dell’algoritmo <strong>per</strong> l’<strong>ottimizzazione</strong> non v<strong>in</strong>colataIl problema <strong>di</strong> <strong>ottimizzazione</strong> non v<strong>in</strong>colato risulta essere:Max f(x)dove f(x) : R n → R è detta f<strong>un</strong>zione obiettivo. Le variabili x sono quelle<strong>di</strong>rettamente manipolate dall’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>. La <strong>di</strong>mensionedel problema è n, numero <strong>di</strong> variabili considerato.Si formalizza ora il metodo compass search nel caso <strong>di</strong> <strong>ottimizzazione</strong>non v<strong>in</strong>colata. Sia k l’<strong>in</strong><strong>di</strong>ce <strong>di</strong> ogni iterazione. Sia x k ∈ R n la k − esimaiterata, con x 0 il p<strong>un</strong>to <strong>in</strong>iziale dell’algoritmo, scelto <strong>in</strong> maniera casuale. SiaD ⊕ l’<strong>in</strong>sieme delle 2n <strong>di</strong>rezioni coor<strong>di</strong>nate def<strong>in</strong>ite dai versori coor<strong>di</strong>nati:D ⊕ = {e 1 , e 2 , ..., e n , −e 1 , −e 2 , ..., −e n } .Sia ∆ k il parametro che controlla la l<strong>un</strong>ghezza dello spostamento; esso dovràqu<strong>in</strong><strong>di</strong> essere <strong>in</strong>izializzato ad <strong>un</strong> valore <strong>di</strong> partenza ∆ 0 a scelta. L’iterazioneè detta proficua quando si trova almeno <strong>un</strong>a <strong>di</strong>rezione nella quale avviene<strong>un</strong>a crescita nella f<strong>un</strong>zione obiettivo. La <strong>di</strong>rezione che produce il maggior<strong>in</strong>cremento all’<strong>in</strong>terno <strong>di</strong> <strong>un</strong>a iterazione proficua è detta d k e la sottosequenzadelle iterazioni proficue è <strong>in</strong><strong>di</strong>cata con S. Nel caso <strong>in</strong> cui ness<strong>un</strong>o dei 2n p<strong>un</strong>ti<strong>di</strong> prova x k + ∆ k d, d ∈ D ⊕ produca <strong>un</strong>a crescita nella f<strong>un</strong>zione obiettivo,l’iterazione è detta fallimentare e la l<strong>un</strong>ghezza del passo viene <strong>di</strong>mezzata.La sottosequenza <strong>di</strong> iterazioni fallimentari è <strong>in</strong><strong>di</strong>cata con U. Inoltre, dopociasc<strong>un</strong>a iterazione fallimentare (dove ∆ k è <strong>di</strong>mezzata), ∆ k viene confrontatacon la tolleranza ∆ tol , <strong>per</strong> osservare la convergenza dell’algoritmo. Quandoil parametro <strong>di</strong> controllo della l<strong>un</strong>ghezza scende al <strong>di</strong> sotto della tolleranza,la ricerca term<strong>in</strong>a con x ∗ = x k+1 . Si noti che ∆ k viene <strong>di</strong>mezzato solo dopo<strong>un</strong>’iterazione fallimentare, mentre la ricerca non term<strong>in</strong>a f<strong>in</strong>chè non vi è<strong>un</strong>’iterazione sod<strong>di</strong>sfacente.Per maggiore chiarezza si descrive l’algoritmo compass search <strong>in</strong> manieraschematica, <strong>per</strong> meglio capire anche l’implementazione dello stesso nel programmacompass.m.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 76Inizializzazione.Sia f(x) : R n → R data.Sia x 0 ∈ R n il p<strong>un</strong>to <strong>in</strong>iziale, arbitrario.Sia ∆ tol > 0 la tolleranza fissata <strong>per</strong> verificare la convergenza.Sia ∆ 0 > ∆ tol il valore <strong>in</strong>iziale del parametro <strong>di</strong> controllo della l<strong>un</strong>ghezza.Algoritmo.Per ciasc<strong>un</strong>a iterazione k = 1,2,...Passo 1. Sia D ⊕ l’<strong>in</strong>sieme delle <strong>di</strong>rezioni coor<strong>di</strong>nate {±e i |i = 1, ..., n}, dove e iè l’i-esimo versore <strong>in</strong> R n . Sia D = {d ∈ D ⊕ , f(x k + ∆ k d) > f(x k )}.Passo 2. Se D è non vuoto allora d k ∈ D è tale che massimizza l’<strong>in</strong>cremento.• fissare x k+1 = x k + ∆ k d k (cambiare l’iterata).• fissare ∆ k+1 = ∆ k (ness<strong>un</strong> cambio nel parametro <strong>di</strong> controllo dellal<strong>un</strong>ghezza dei passi).Passo 3. Altrimenti, D è vuoto, allora :• fissare x k+1 = x k (mantenere l’iterata).• fissare ∆ k+1 = 0.5 · ∆ k (contrazione del parametro <strong>di</strong> controllo dellal<strong>un</strong>ghezza dei passi).• se ∆ k+1 < ∆tol, allora term<strong>in</strong>are il programma.6.4.2 Convergenza del metodo compass searchEssendo alla ricerca <strong>di</strong> <strong>un</strong> massimo locale, si ipotizza la <strong>di</strong>fferenziabilità<strong>di</strong> f e l’esistenza del ∇f. Si consider<strong>in</strong>o le <strong>di</strong>rezioni coor<strong>di</strong>nate contenutenell’<strong>in</strong>sieme D ⊕ . Come facilmente visualizzabile nel caso <strong>di</strong> f<strong>un</strong>zione <strong>di</strong> duevariabili, se non si è già <strong>in</strong> <strong>un</strong> p<strong>un</strong>to <strong>di</strong> massimo, almeno <strong>un</strong>a <strong>di</strong>rezionecontenuta <strong>in</strong> questo <strong>in</strong>sieme sarà <strong>un</strong>a <strong>di</strong>rezione <strong>di</strong> crescita <strong>per</strong> la f<strong>un</strong>zione:trattandosi <strong>di</strong> <strong>di</strong>rezioni coor<strong>di</strong>nate, almeno <strong>un</strong>a si troverà <strong>in</strong> <strong>un</strong> arco <strong>di</strong> 45 ◦dalla <strong>di</strong>rezione del gra<strong>di</strong>ente, <strong>in</strong><strong>di</strong>pendentemente da essa.Si suppone ora che all’iterazione k si stia effettuando <strong>un</strong> passo <strong>di</strong> l<strong>un</strong>ghezza∆ k > 0 l<strong>un</strong>go ciasc<strong>un</strong>a <strong>di</strong>rezione coor<strong>di</strong>nata, ma ness<strong>un</strong>o <strong>di</strong> questi passiproduca <strong>un</strong>a crescita:f(x k ) ≥ f(x k + ∆ k d) <strong>per</strong> ogni d ∈ D ⊕ . (6.1)Come già spiegato prima questa <strong>di</strong>suguaglianza rappresenta <strong>un</strong>a iterazionefallimentare, ed è proprio ciò che accade <strong>in</strong> questo tipo <strong>di</strong> iterazione cheprova la convergenza del metodo.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 77La <strong>di</strong>mostrazione <strong>in</strong>izia formalizzando quanto detto. Si prenda <strong>un</strong> vettorearbitrario v e la più vic<strong>in</strong>a <strong>di</strong>rezione coor<strong>di</strong>nata, il coseno dell’angolopiù grande tra essi è limitato su<strong>per</strong>iormente dal fattore √ 1n. Questo significache <strong>in</strong><strong>di</strong>pendentemente dalla <strong>di</strong>rezione del gra<strong>di</strong>ente, ci sarà almeno <strong>un</strong>a<strong>di</strong>rezione d ∈ D ⊕ tale <strong>per</strong> cui:1√ n‖∇f(x k )‖ ‖d‖ ≤ ∇f(x k ) T d. (6.2)Se l’iterazione k è fallimentare si ha la situazione <strong>in</strong> (6.1), allora <strong>per</strong> ilteorema del valore me<strong>di</strong>o si ha0 ≤ f(x k ) − f(x k + ∆ k d) = −∇f(x k + α k ∆ k d) T ∆ k ddove α k valore arbitrario che prende valori nell’<strong>in</strong>tervallo chiuso [0,1].somm<strong>in</strong>o ad ambi i membri la quantità ∆ k ∇f(x k ) T d e si ottieneSi∆ k ∇f(x k ) T d ≤ ∆ k (∇f(x k ) − ∇f(x k + α k ∆ k d)) T d.Semplificando entrambi i membri <strong>per</strong> ∆ k si ha∇f(x k ) T d ≤ (∇f(x k ) − ∇f(x k + α k ∆ k d)) T d,applicando la (6.2) si ottiene qu<strong>in</strong><strong>di</strong>1√ n‖∇f(x k )‖ ‖d‖ ≤ (∇f(x k ) − ∇f(x k + α k ∆ k d)) T d. (6.3)Si ipotizza ora che f sia <strong>di</strong>fferenziabile con cont<strong>in</strong>uità e che il ∇f sia <strong>di</strong>Lipschitz con costante M > 0 (ipotesi che, oltre ad essere ragionevoli nelproblema <strong>di</strong> <strong>ottimizzazione</strong> <strong>in</strong> esame, semplificano notevolmente la <strong>di</strong>mostrazionedella convergenza). Queste ipotesi <strong>per</strong>mettono qu<strong>in</strong><strong>di</strong> <strong>di</strong> scrivere la seguentecatena <strong>di</strong> <strong>di</strong>suguaglianze a partire dalla <strong>di</strong>suguaglianza (6.3):1√ n‖∇f(x k )‖ ‖d‖ ≤ M ‖α k ∆ k d‖ ‖d‖ ≤ M∆ k ‖d‖ 2 .Poichè d è versore <strong>per</strong> def<strong>in</strong>izione si ha che ‖d‖ = 1, che porta qu<strong>in</strong><strong>di</strong> alla<strong>di</strong>suguaglianza‖∇f(x k )‖ ≤ √ nM∆ k . (6.4)Ciò significa che, anche non avendo <strong>un</strong>’espressione esplicita del ∇f adogni iterazione fallimentare si ha <strong>un</strong> controllo dall’alto implicito, che è f<strong>un</strong>zionedel solo parametro <strong>di</strong> controllo della l<strong>un</strong>ghezza ∆ k . Si può <strong>di</strong>mostrareche <strong>per</strong> ogni k appartenente alla sottosequenza <strong>di</strong> iterazioni fallimentari U,il limite all’<strong>in</strong>f<strong>in</strong>ito <strong>di</strong> ∆ k è uguale a 0, ovverolim ∆ k = 0 k ∈ U.k→∞
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 78Applicando il passaggio al limite alla <strong>di</strong>suguaglianza (6.4) si conclude chelim ‖∇f(x √k)‖ ≤ lim nM∆k = 0 k ∈ U,k→∞ k→∞ovvero, ogni sottosuccessione <strong>di</strong> iterazioni fallimentari converge ad <strong>un</strong> p<strong>un</strong>to<strong>di</strong> ottimo, dove il gra<strong>di</strong>ente si annulla.Poichè la convergenza della sottosuccessione implica la convergenza dellasuccessione delle iterate, si ha che l’algoritmo converge al p<strong>un</strong>to <strong>di</strong> ottimo.6.4.3 Estensione dell’algoritmo al caso <strong>di</strong> <strong>ottimizzazione</strong> v<strong>in</strong>colataNel caso <strong>di</strong> <strong>ottimizzazione</strong> v<strong>in</strong>colata il problema da analizzare <strong>di</strong>ventapiù complesso; si ha:Max f(x) dove x ∈ Ω.Ω è detta regione ammissibile ed è la regione entro cui x può prendere valore.Come nel paragrafo precedente, si descrive dapprima l’algoritmo <strong>in</strong> maniera<strong>in</strong>tuitiva. Data <strong>un</strong>a f<strong>un</strong>zione <strong>di</strong> due variabili, si provano passi suldom<strong>in</strong>io <strong>di</strong>retti a nord, est, sud e ovest. Se <strong>un</strong>o <strong>di</strong> questi passi porta ad<strong>un</strong> aumento nella f<strong>un</strong>zione obiettivo e sod<strong>di</strong>sfa il v<strong>in</strong>colo allora il p<strong>un</strong>to<strong>di</strong>venta <strong>un</strong>a nuova iterata. Se ness<strong>un</strong> passo porta ad <strong>un</strong> <strong>in</strong>cremento ammissibile,l’iterazione è fallimentare, il p<strong>un</strong>to fuori dalla regione ammissibileviene posto a −∞ e si <strong>di</strong>mezza la l<strong>un</strong>ghezza del passo. Come nell’algoritmo<strong>per</strong> l’<strong>ottimizzazione</strong> non v<strong>in</strong>colata, esso term<strong>in</strong>a quando il parametro <strong>di</strong>controllo della l<strong>un</strong>ghezza scende al <strong>di</strong> sotto <strong>di</strong> <strong>un</strong>a data tolleranza.Ovviamente, applicare la versione del compass search ad <strong>un</strong> problemav<strong>in</strong>colato produce le stesse iterate che l’applicazione del metodo al problemanon v<strong>in</strong>colato:Max ˆf(x)dove{ f(x) se x ∈ Ωˆf(x) =−∞ altrimentiUtilizzare questo tipo <strong>di</strong> approccio al problema v<strong>in</strong>colato assicura sia chele iterate rimangano ammissibili (dalla def<strong>in</strong>izione stessa del problema), siache il metodo converga (dalla convergenza <strong>per</strong> il problema non v<strong>in</strong>colato).
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 796.5 Risultati dell’<strong>ottimizzazione</strong> nei casi <strong>in</strong> analisiIl metodo <strong>di</strong> <strong>ottimizzazione</strong> v<strong>in</strong>colata compass search è stato implementatoattraverso l’<strong>un</strong>ione delle rout<strong>in</strong>es ottimoexp.m (caso <strong>di</strong> <strong>in</strong>gressi Esponenziali)o ottimobeta.m (caso <strong>di</strong> <strong>in</strong>gressi Beta) con la rout<strong>in</strong>e centratura.m.Le prime due f<strong>un</strong>zioni implementano il vero e proprio metodo e <strong>per</strong>mettonola ricerca del p<strong>un</strong>to <strong>di</strong> ottimo, mentre l’ultima effettua il controllo <strong>di</strong>appartenenza dei p<strong>un</strong>ti alla regione ammissibile.Si procede dapprima con la descrizione della rout<strong>in</strong>e centratura.m. Essariceve <strong>in</strong> <strong>in</strong>gresso il p<strong>un</strong>to da analizzare e i limiti destro e s<strong>in</strong>istro (descritti<strong>per</strong> p<strong>un</strong>ti) e restituisce 1 se il p<strong>un</strong>to appartiene alla regione ammissibile oppure0 se il p<strong>un</strong>to non vi appartiene. Per valutare l’appartenenza confrontale coor<strong>di</strong>nate del p<strong>un</strong>to con le serie <strong>di</strong> coor<strong>di</strong>nate dei v<strong>in</strong>coli.Le rout<strong>in</strong>es ottimoexp.m e ottimobeta.m contengono al loro <strong>in</strong>terno centratura.m,e sono sostanzialmente molto simili, poichè varia soltanto la parte<strong>di</strong> programma atta a generare la matrice degli <strong>in</strong>gressi aleatori. Le f<strong>un</strong>zionisono anch’esse sviluppate <strong>per</strong> essere le più generiche possibili e contengonoqu<strong>in</strong><strong>di</strong> <strong>in</strong> <strong>in</strong>gresso tutti i parametri sia della <strong>simulazione</strong> che dell’<strong>ottimizzazione</strong>.Questo <strong>per</strong> far si che l’utente le possa utilizzare qual<strong>un</strong>que siala situazione che egli voglia analizzare e qual<strong>un</strong>que siano l’accuratezza e lavelocità dell’algoritmo da lui desiderate. I parametri <strong>in</strong> <strong>in</strong>gresso sono qu<strong>in</strong><strong>di</strong>:• I parametri caratterizzanti le <strong>di</strong>stribuzioni possedute dagli <strong>in</strong>gressi alla<strong>di</strong>ga: p parametro della <strong>di</strong>stribuzione Esponenziale (ottimoexp.m) oppurea, b, c parametri della <strong>di</strong>stribuzione Beta <strong>di</strong>latata (ottimobeta.m).• La stima della durata del transitorio, valutata <strong>in</strong> precedenza dall’utente.• L’orizzonte temporale <strong>di</strong> f<strong>un</strong>zionamento a regime della <strong>di</strong>ga, valutatoa partire dalla f<strong>in</strong>e del transitorio.• La f<strong>un</strong>zione <strong>di</strong> costo, passata come str<strong>in</strong>ga <strong>di</strong> caratteri.• La f<strong>un</strong>zione <strong>di</strong> ricavo, passata come str<strong>in</strong>ga <strong>di</strong> caratteri.• Il numero <strong>di</strong> simulazioni desiderate.• Il p<strong>un</strong>to <strong>di</strong> partenza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>.• La l<strong>un</strong>ghezza <strong>in</strong>iziale del passo dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>.• La tolleranza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>.• Le descrizioni <strong>per</strong> p<strong>un</strong>ti dei v<strong>in</strong>coli destro e s<strong>in</strong>istro. Questo <strong>per</strong>chè siconsiderano solo casi <strong>in</strong> cui la regione è delimitata su<strong>per</strong>iormente da<strong>un</strong>a retta e <strong>in</strong>feriormente da 0.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 80• I massimi valori assumibili dall’ascissa (il massimo valore <strong>di</strong> m, uscitadella <strong>di</strong>ga, considerato) e dall’or<strong>di</strong>nata (il massimo valore <strong>di</strong> k, capacitàutile della <strong>di</strong>ga, considerato; il m<strong>in</strong>imo è posto a 0 <strong>in</strong> entrambi).A fronte dei numerosi <strong>in</strong>gressi la rout<strong>in</strong>e restituisce le coor<strong>di</strong>nate sul dom<strong>in</strong>iodel p<strong>un</strong>to <strong>di</strong> ottimo e il valore della f<strong>un</strong>zione guadagno valutata nel p<strong>un</strong>to.Il processo che implementa la f<strong>un</strong>zione non è altro che l’algoritmo compasssearch <strong>per</strong> l’<strong>ottimizzazione</strong> v<strong>in</strong>colata descritto precedentemente.La ricerca dell’ottimo è avvenuta sulle f<strong>un</strong>zioni guadagno già analizzate,ovvero quelle corrispondenti agli <strong>in</strong>gressi Esponenziali con parametro p = 0.5e p = 0.8 e Beta <strong>di</strong>latata con parametri a = 3, b = 4 e coefficiente <strong>di</strong><strong>di</strong>latazione c = 4. O<strong>per</strong>ativamente la ricerca è avvenuta fissando i seguentiparametri <strong>per</strong> la <strong>simulazione</strong> e l’<strong>ottimizzazione</strong>:• Stima della durata del transitorio pari a 20, come valutato <strong>in</strong> precedenza.• Orizzonti temporali <strong>di</strong> f<strong>un</strong>zionamento a regime pari a 30 anni (<strong>per</strong> la<strong>simulazione</strong> a breve term<strong>in</strong>e) e 100 anni (<strong>per</strong> la <strong>simulazione</strong> a l<strong>un</strong>goterm<strong>in</strong>e).• F<strong>un</strong>zione <strong>di</strong> costo:costo=’4950*sqrt(k)’• F<strong>un</strong>zione <strong>di</strong> ricavo:ricavo=’441500*m*((0.8.*r).^(1/3)+0.1-0.3*m)’• Numero <strong>di</strong> simulazioni desiderate: 1500.• P<strong>un</strong>to <strong>di</strong> partenza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong> scelto come le coor<strong>di</strong>natecorrispondenti al massimo valore <strong>di</strong>scretizzato restituito comeoutput della rout<strong>in</strong>e guadagno.m (ve<strong>di</strong> paragrafi precedenti). Questascelta è stata fatta <strong>per</strong> agevolare i passi <strong>in</strong>iziali dell’algoritmo <strong>di</strong> <strong>simulazione</strong>,fornendo già <strong>un</strong> p<strong>un</strong>to <strong>in</strong>iziale vic<strong>in</strong>o al p<strong>un</strong>to <strong>di</strong> massimo eappartenente alla regione ammissibile.• L<strong>un</strong>ghezza <strong>in</strong>iziale del passo: 0.1 .• Tolleranza: 0.005 .• Descrizioni <strong>per</strong> p<strong>un</strong>ti dei v<strong>in</strong>coli destro e s<strong>in</strong>istro: descrizioni <strong>per</strong> p<strong>un</strong>tidelle l<strong>in</strong>ee <strong>di</strong> livello corrispondenti a 0.2 <strong>per</strong> la frazione <strong>di</strong> tempopassata <strong>in</strong> overflow (v<strong>in</strong>colo s<strong>in</strong>istro) e 0.05 <strong>per</strong> la frazione <strong>di</strong> tempopassata <strong>in</strong> secca (v<strong>in</strong>colo destro).• Massimi valori assumibili da m e k: rispettivamente 5 e 15.Si elencano ora i risultati ottenuti dal processo <strong>di</strong> <strong>ottimizzazione</strong> sulbreve <strong>per</strong>iodo (30 anni):
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 81• Ingresso Esponenziale <strong>di</strong> parametro p = 0.5: guadagno ottimo pari a3.40 · 10 13 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.61 [km 3 /anno] e a<strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].• Ingresso Esponenziale <strong>di</strong> parametro p = 0.8: guadagno ottimo pari a2.16 · 10 13 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.025 [km 3 /anno] e a<strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].• Ingresso Beta <strong>di</strong>latata <strong>di</strong> parametri a = 3, b = 4, c = 4: guadagnoottimo pari a 3.08 · 10 13 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.305[km 3 /anno] e a <strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].I valori ottenuti dal processo <strong>di</strong> <strong>ottimizzazione</strong> sul l<strong>un</strong>go <strong>per</strong>iodo (100anni) risultano essere:• Ingresso Esponenziale <strong>di</strong> parametro p = 0.5: guadagno ottimo pari a1.18 · 10 14 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.6313 [km 3 /anno] ea <strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].• Ingresso Esponenziale <strong>di</strong> parametro p = 0.8: guadagno ottimo pari a8.13 · 10 13 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.0438 [km 3 /anno] ea <strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].• Ingresso Beta <strong>di</strong>latata <strong>di</strong> parametri a = 3, b = 4, c = 4: guadagnoottimo pari a 1.14 · 10 14 [Euros] corrispondente a <strong>un</strong>’uscita <strong>di</strong> 1.513[km 3 /anno] e a <strong>un</strong>a capacità utile <strong>di</strong> 15 [km 3 ].I risultati ottenuti numericamente sono stati plottati sovrapponendoli allef<strong>un</strong>zioni guadagno calcolate nei paragrafi precedenti, sia <strong>per</strong> confermarne lacorrettezza che <strong>per</strong> meglio visualizzarli. Le figure <strong>di</strong> riferimento sono quelleda fig.6.17 a fig.6.22.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 82x 10 7343210x 10 72.521.510.50−0.5−115−1−210−1.5−3012m34505k−2Figura 6.17: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.5; calcolato su orizzonte temporale <strong>di</strong> 30 anni.32x 10 7x 10 721.510.5100−1−0.5−1−1.5−2−2−315−2.5−40 1 2 3 4 50510k−3mFigura 6.18: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.8; calcolato su orizzonte temporale <strong>di</strong> 30 anni.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 834x 10 7x 10 7332.52211.501−10.5−20−3−0.515−1k10500 1 2 3 4 5m−1.5−2Figura 6.19: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata <strong>di</strong>parametri a=3 e b=4; calcolato su orizzonte temporale <strong>di</strong> 30 anni.x 10 7x 10 712101088646204−22−4−60−815−210−4k50012m345−6Figura 6.20: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.5; calcolato su orizzonte temporale <strong>di</strong> 100 anni.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 841x 10 8x 10 7860.540−0.5−1−1.51520−2−4−610−8k500123m45−10Figura 6.21: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Esponenziale <strong>di</strong>parametro p=0.8; calcolato su orizzonte temporale <strong>di</strong> 100 anni.x 10 7x 10 712101088646204−22−4−60−815−2k10−450012m345−6Figura 6.22: Plottaggio del p<strong>un</strong>to <strong>di</strong> ottimo <strong>per</strong> <strong>in</strong>gresso Beta <strong>di</strong>latata <strong>di</strong>parametri a=3 e b=4; calcolato su orizzonte temporale <strong>di</strong> 100 anni.
CAPITOLO 6. PROBLEMA DELL’OTTIMIZZAZIONE 856.6 ConclusioniDall’analisi dei grafici del valore atteso del guadagno, sia a breve term<strong>in</strong>eche a l<strong>un</strong>go term<strong>in</strong>e, si osserva che la regione <strong>in</strong> cui la f<strong>un</strong>zione assume valorimaggiori corrisponde proprio alla regione ammissibile identificata. Questoconferma ulteriormente che la f<strong>un</strong>zione guadagno atteso è strettamente correlatacon le frazioni <strong>di</strong> tempo <strong>in</strong> cui la <strong>di</strong>ga si trova <strong>in</strong> secca e <strong>in</strong> overflow,come si era <strong>in</strong>izialmente ipotizzato.Analizzando i risultati sia a breve term<strong>in</strong>e che a l<strong>un</strong>go term<strong>in</strong>e, si osservache i valori ottenuti rispecchiano situazioni verosimili. Per quanto riguardai valori ottimi delle portate <strong>in</strong> uscita si ha che essi corrispondono a valoriragionevoli. Facendo riferimento al registro italiano delle <strong>di</strong>ghe, si ha che ivalori da noi ottenuti sono nell’or<strong>di</strong>ne delle portate <strong>in</strong> uscita possedute damolte <strong>di</strong>ghe realmente costruite.Per quanto riguarda <strong>in</strong>vece il valore della capacità utile ottenuta, si devonoevidenziare pr<strong>in</strong>cipalmente due fatti. Innanzitutto, come <strong>per</strong> le portate<strong>in</strong> uscita, si ha che i valori sono nell’or<strong>di</strong>ne delle capacità utili <strong>di</strong> molte <strong>di</strong>gherealmente costruite. Il risultato più importante è <strong>per</strong>ò legato all’andamentodei guadagni attesi simulati: si osserva <strong>in</strong>fatti che le f<strong>un</strong>zioni sono monotonerispetto alla capacità utile e che il p<strong>un</strong>to ottimo si trova proprio <strong>in</strong> corrispondenzadella capacità utile massima analizzata. Questo lascia <strong>in</strong>tendere chei guadagni maggiori si abbiano costruendo <strong>di</strong>ghe più gran<strong>di</strong> possibili, compatibilmentecon la situazione ambientale, e spiega la recente tendenza allacostruzione <strong>di</strong> o<strong>per</strong>e <strong>di</strong> derivazione sempre più gran<strong>di</strong>.
Appen<strong>di</strong>ce AScript del softwaresviluppatoA.1 errestar.merrestar.m è il programma che simula il f<strong>un</strong>zionamento della <strong>di</strong>ga <strong>per</strong>determ<strong>in</strong>ati passi temporali e che ritorna la <strong>di</strong>stribuzione stazionaria. Essodescrive il vero e proprio f<strong>un</strong>zionamento della <strong>di</strong>ga a fronte <strong>di</strong> determ<strong>in</strong>ati<strong>in</strong>gressi. Questa rout<strong>in</strong>e restituisce <strong>un</strong>a realizzazione della variabile R ∗ ,a fronte dei parametri della <strong>di</strong>ga e del vettore contenente la serie temporaledegli <strong>in</strong>gressi nella <strong>di</strong>ga. Essa restituisce anche la serie temporale dellequantità <strong>di</strong> acqua stoccate nella <strong>di</strong>ga durante la <strong>simulazione</strong>.f<strong>un</strong>ction [R,r,z]=errestar(x,m,k)% [R,r,z]=errestar(x,m,k)% rout<strong>in</strong>e che simula il f<strong>un</strong>zionamento della <strong>di</strong>ga% attraverso il <strong>modello</strong> <strong>di</strong> Moran% output:% R = realizzazione della variabile limite% r = vettore delle quantità d’acqua presenti nella <strong>di</strong>ga% nei vari passi del processo% z = vettore delle quantità d’acqua stoccate nella <strong>di</strong>ga% nei vari passi del processo% <strong>in</strong>put:% x = vettore degli <strong>in</strong>gressi nella <strong>di</strong>ga% m = uscita costante della <strong>di</strong>ga% k = grandezza della <strong>di</strong>gaz=zeros(1,length(x));z(1)=0;86
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 87for n=1:(length(x)-1);d=z(n)+x(n);if dm & d=kz(n+1)=k-m;endendfor i=1:length(x)r(i)=z(i)+x(i);endR=r(length(r));A.2 stazionariagamma.mstazionariagamma.m è il programma che implementa la <strong>simulazione</strong> <strong>per</strong><strong>in</strong>gresso della <strong>di</strong>ga <strong>di</strong> tipo Gamma. Esso comb<strong>in</strong>a la f<strong>un</strong>zione errestar.m,descritta nella sezione precedente, alla generazione <strong>di</strong> numeri random provenientida <strong>di</strong>stribuzione Gamma. Crea, <strong>per</strong> ogni <strong>simulazione</strong>, il vettore <strong>di</strong><strong>in</strong>gressi alla <strong>di</strong>ga, lo passa ad errestar.m, ne prende la realizzazione dellavariabile limite <strong>in</strong> uscita e lo <strong>in</strong>serisce nel vettore <strong>di</strong> realizzazioni <strong>di</strong> R ∗ , cheavrà qu<strong>in</strong><strong>di</strong> ampiezza pari alle simulazioni richieste. La f<strong>un</strong>zione richiede<strong>per</strong>ciò <strong>in</strong> <strong>in</strong>gresso solo i parametri della <strong>di</strong>ga e quelli della <strong>di</strong>stribuzioneGamma, poichè contiene già al suo <strong>in</strong>terno il processo <strong>di</strong> generazione delleserie temporali <strong>in</strong> <strong>in</strong>gresso alla <strong>di</strong>ga nelle varie simulazioni. Per la <strong>simulazione</strong><strong>di</strong> <strong>in</strong>gresso Esponenziale basta qu<strong>in</strong><strong>di</strong> porre il parametro n dellaGamma pari a 1, ottenendo così il vettore <strong>di</strong> realizzazioni della variabilelimite corrispondente.f<strong>un</strong>ction r=stazionariagamma(m,k,n,p,sim,l<strong>un</strong>gh)% r=stazionariagamma(m,k,n,p,sim,l<strong>un</strong>gh)% rout<strong>in</strong>e che simula il f<strong>un</strong>zionamento della <strong>di</strong>ga con <strong>in</strong>gresso% Gamma e calcola la <strong>di</strong>stribuzione stazionaria.% output:% r = vettore realizzazioni della variabile% aleatoria limite% <strong>in</strong>put:% m = uscita costante della <strong>di</strong>ga% k = grandezza della <strong>di</strong>ga
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 88% n , p = parametri della <strong>di</strong>stribuzione Gamma% sim = simulazioni del processo effettuate% l<strong>un</strong>gh = l<strong>un</strong>ghezza <strong>per</strong>iodo <strong>di</strong> f<strong>un</strong>zionamento% <strong>in</strong> considerazioner=zeros(1,sim);for t=1:simx=zeros(1,l<strong>un</strong>gh);for i=1:l<strong>un</strong>ghu=rand(n,1);s=1;for j=1:ns=s*u(j);endx(i)=-(1/p)*log(s);end[R,v,z]=errestar(x,m,k);r(t)=R;endA.3 stazionariabeta.mstazionariabeta.m è il programma che implementa la <strong>simulazione</strong> <strong>per</strong> <strong>in</strong>gressodella <strong>di</strong>ga <strong>di</strong> tipo Beta. Esso procede <strong>in</strong> modo analogo alla rout<strong>in</strong>estazionariagamma.m descritta nella sezione precedente, generando <strong>per</strong>ò numerirandom provenienti da <strong>un</strong>a <strong>di</strong>stribuzione Beta <strong>di</strong>latata <strong>per</strong> la <strong>simulazione</strong>dell’<strong>in</strong>gresso.f<strong>un</strong>ction r=stazionariabeta(m,k,a,b,c,sim,l<strong>un</strong>gh)% r=stazionariabeta(m,k,a,b,c,sim,l<strong>un</strong>gh)% rout<strong>in</strong>e che simula il f<strong>un</strong>zionamento della <strong>di</strong>ga con <strong>in</strong>gresso% Beta e calcola la <strong>di</strong>stribuzione stazionaria.% output:% r = vettore realizzazioni della variabile% aleatoria limite% <strong>in</strong>put:% m = uscita costante della <strong>di</strong>ga% k = grandezza della <strong>di</strong>ga% a , b = parametri della <strong>di</strong>stribuzione Beta% c = estremo destro dell’<strong>in</strong>tervallo [0,c] su cui si vuole% <strong>di</strong>latare la <strong>di</strong>stribuzione% sim = simulazioni del processo desiderate% l<strong>un</strong>gh = l<strong>un</strong>ghezza <strong>per</strong>iodo <strong>di</strong> f<strong>un</strong>zionamento
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 89% <strong>in</strong> considerazioner=zeros(1,sim);for j=1:simx=zeros(1,l<strong>un</strong>gh);z=0:0.01:1;y=(z.^(a-1)).*((1-z).^(b-1));m=max(y);for i=1:l<strong>un</strong>ghu1=rand;u2=rand;while u2>=((u1.^(a-1)).*((1-u1).^(b-1)))/mu1=rand;u2=rand;endx(i)=u1;endx=x.*c;[R,v,z]=errestar(x,m,k);r(j)=R;endA.4 ritornadensita.mritornadensita.m è il programma che calcola la <strong>di</strong>stribuzione <strong>di</strong> <strong>un</strong>a variabilealeatoria. Inserendo il vettore <strong>di</strong> realizzazioni <strong>di</strong> <strong>un</strong>a variabile e la<strong>di</strong>stanza tra i p<strong>un</strong>ti <strong>in</strong> cui si vuole valutare la cumulata, restituisce sia ilplottaggio della <strong>di</strong>stribuzione che i vettori dei p<strong>un</strong>ti <strong>in</strong> cui la cumulata vienevalutata e dei valori della stessa.f<strong>un</strong>ction [x,hx]=ritornadensita(r,passo)% [x,hx]=ritornadensita(r,passo)% dato il vettore r <strong>di</strong> realizzazioni della variabile aleatoria% ne restituisce il plottaggio della <strong>di</strong>stribuzione% output:% x = vettore dei p<strong>un</strong>ti <strong>di</strong> valutazione della cumulata% hx = valori ass<strong>un</strong>ti dalla cumulata% <strong>in</strong>put:% r = vettore delle realizzazioni della variabile% passo = <strong>di</strong>stanza tra i p<strong>un</strong>ti <strong>di</strong> valutazionex_m<strong>in</strong>=m<strong>in</strong>(r);x_max=max(r);
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 90dx=passo;x=l<strong>in</strong>space(x_m<strong>in</strong>,x_max,(x_max-x_m<strong>in</strong>)/dx);istnorm=histc(r,x)/(length(r)*dx);hx=zeros(1,length(istnorm));hx(1)=istnorm(1)*dx;for i=2:length(hx)hx(i)=istnorm(i)*dx+hx(i-1);endfigureplot(x,hx)A.5 densitaanalitica.mdensitaanalitica.m è il programma che <strong>per</strong>mette il calcolo della <strong>di</strong>stribuzioneanalitica della quantità <strong>di</strong> acqua presente nella <strong>di</strong>ga a fronte <strong>di</strong><strong>in</strong>gressi <strong>di</strong> tipo Esponenziale. Traduce la formulazione teorica della <strong>di</strong>stribuzionestazionaria e <strong>per</strong>mette la valutazione dell’errore commesso durantela <strong>simulazione</strong>. Esso <strong>in</strong>fatti richiede <strong>in</strong> <strong>in</strong>gresso il vettore dei valoridella cumulata simulata e quello dei p<strong>un</strong>ti <strong>in</strong> cui è stata valutata, proprioallo scopo <strong>di</strong> effettuare il confronto con la cumulata teorica e <strong>di</strong> calcolarel’errore. Inserendo qu<strong>in</strong><strong>di</strong> <strong>in</strong> <strong>in</strong>gresso l’output della <strong>simulazione</strong> e i parametridella <strong>di</strong>ga e dell’Esponenziale, si hanno <strong>in</strong> uscita il vettore dei valori della cumulatateorica e quello degli errori commessi (entrambi calcolati negli stessip<strong>un</strong>ti <strong>di</strong> valutazione della simulata).f<strong>un</strong>ction [h,scarti]=densitaanalitica(k,m,p,x,hx)% [h,scarti]=densitaanalitica(k,m,p,x,hx)% rout<strong>in</strong>e che restituisce la <strong>di</strong>stribuzione stazionaria% analitica <strong>per</strong> il <strong>modello</strong> <strong>di</strong> Moran con <strong>in</strong>gresso esponenziale% e il vettore degli scarti risultanti dalla <strong>simulazione</strong>% output :% h = vettore <strong>di</strong>stribuzione analitica% scarti = vettore degli scarti <strong>in</strong> valore assoluto% <strong>in</strong>put :% m = uscita della <strong>di</strong>ga% k = grandezza della <strong>di</strong>ga% p = parametro dell’esponenziale% x = vettore contenente i p<strong>un</strong>ti <strong>in</strong> cui la cumulata% simulata viene valutata (output <strong>di</strong> ritornadensita)% hx = vettore dei valori della cumulata% (output <strong>di</strong> ritornadensita)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 91y=x;h=zeros(1,length(y));n=(k/m)-1;N=floor(n);L=p*exp(-p*m);t=1;qt=1;for j=1:Nqt=qt*j;t=t+((-L)^j)*((k-j*m)^j)/qt;endcost=exp(-p*k)/t;for i=1:length(y)for s=0:(N-1)if y(i)>=s*m & y(i)=N*mh(i)=1-cost*exp(p*(k-y(i)));endendplot(y,h,’r’);figureplot(y,h,’r’);hold onplot(x,hx,’b’);figurescarti=abs(h-hx);plot(x,scarti);
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 92A.6 frazioneoverexp.mfrazioneoverexp.m è il programma <strong>per</strong> il calcolo della frazione <strong>di</strong> tempo<strong>in</strong> cui la <strong>di</strong>ga con <strong>in</strong>gresso Esponenziale si trova <strong>in</strong> overflow. Riceve <strong>in</strong><strong>in</strong>gresso il parametro della <strong>di</strong>stribuzione Esponenziale, l’<strong>in</strong>tervallo <strong>di</strong> tempo<strong>per</strong> cui si vuole analizzare il comportamento della <strong>di</strong>ga, gli <strong>in</strong>tervalli entrocui si vogliono fare variare i parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazionidesiderate. Genera qu<strong>in</strong><strong>di</strong> al suo <strong>in</strong>terno <strong>un</strong>a matrice contenente gli <strong>in</strong>gressialeatori alla <strong>di</strong>ga, dove ciasc<strong>un</strong>a colonna rappresenta <strong>un</strong>a <strong>simulazione</strong> ampiaquanto l’<strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> considerazione. In seguito valuta la porzione<strong>di</strong> tempo <strong>in</strong> cui il contenuto d’acqua della <strong>di</strong>ga su<strong>per</strong>a la capacità utiledella stessa, ovvero la frazione <strong>di</strong> tempo <strong>in</strong> cui la <strong>di</strong>ga si trova <strong>in</strong> overflow.L’output della rout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valori delle frazioni <strong>di</strong>tempo <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.f<strong>un</strong>ction matrix=frazioneoverexp(p,tempo,K,M,sim)% matrix=frazioneoverexp(p,tempo,K,M,sim)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> overflow% da parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo% <strong>in</strong> parametro% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% p = parametro della <strong>di</strong>stribuzione Esponenziale% tempo = <strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> valutazione% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazione% sim = simulazioni del processo desiderateE=[];for i=1:simx=exprnd(p,tempo,1)E=[E x];endfor i=1:length(K)for j=1:length(M)if K(i)>M(j)prop=zeros(1,sim);for v=1:length(prop)[R,b,z]=errestar(E(:,v),M(j),K(i));s=0;for t=1:length(z)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 93if z(t)==K(i)-M(j)s=s+1;endendprop(v)=s/tempo;endmatrix(i,j)=mean(prop);elsematrix(i,j)=NaN;endendendfiguresurf(M,K,matrix);colormap(summer);figurecontour(M,K,matrix);colormap(summer);A.7 frazioneoverbeta.mfrazioneoverbeta.m è il programma <strong>per</strong> il calcolo della frazione <strong>di</strong> tempo<strong>in</strong> cui la <strong>di</strong>ga con <strong>in</strong>gresso Beta <strong>di</strong>latata si trova <strong>in</strong> overflow. Il f<strong>un</strong>zionamentoè analogo alla rout<strong>in</strong>e contenuta nella sezione precedente; si hanno <strong>in</strong> <strong>in</strong>gressoi parametri della <strong>di</strong>stribuzione Beta (compreso il coefficiente <strong>di</strong> <strong>di</strong>latazione),l’<strong>in</strong>tervallo <strong>di</strong> tempo, gli <strong>in</strong>tervalli dei parametri della <strong>di</strong>ga e il numero <strong>di</strong>simulazioni desiderate. L’output della rout<strong>in</strong>e è <strong>un</strong>a matrice contenente ivalori delle frazioni <strong>di</strong> tempo <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione deiparametri.f<strong>un</strong>ction matrix=frazioneoverbeta(a,b,c,tempo,K,M,sim)% matrix=frazioneoverbeta(a,b,c,tempo,K,M)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> overflow% da parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo% <strong>in</strong> parametro% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% a , b , c = parametri della <strong>di</strong>stribuzione Beta <strong>di</strong>latata% tempo = <strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> valutazione% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazione
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 94% sim = simulazioni del processo desiderateE=[];for i=1:simx=betarnd(a,b,tempo,1)x=4*x;E=[E x];endfor i=1:length(K)for j=1:length(M)if K(i)>M(j)prop=zeros(1,sim);for v=1:length(prop)[R,l,z]=errestar(E(:,v),M(j),K(i));s=0;for t=1:length(z)if z(t)==K(i)-M(j)s=s+1;endendprop(v)=s/tempo;endmatrix(i,j)=mean(prop);elsematrix(i,j)=NaN;endendendfiguresurf(M,K,matrix);colormap(summer);figurecontour(M,K,matrix);colormap(summer);A.8 frazioneseccaexp.mfrazioneseccaexp.m è il programma <strong>per</strong> il calcolo della frazione <strong>di</strong> tempo<strong>in</strong> cui la <strong>di</strong>ga con <strong>in</strong>gresso Esponenziale si trova <strong>in</strong> secca. Il f<strong>un</strong>zionamentoè analogo alle rout<strong>in</strong>es precedenti; riceve <strong>in</strong> <strong>in</strong>gresso il parametro della <strong>di</strong>stribuzioneEsponenziale, l’<strong>in</strong>tervallo <strong>di</strong> tempo, gli <strong>in</strong>tervalli entro cui varianoi parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazioni desiderate. Genera al suo<strong>in</strong>terno la matrice <strong>di</strong> <strong>in</strong>gressi aleatori ed <strong>in</strong> seguito valuta la porzione <strong>di</strong>
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 95tempo <strong>in</strong> cui il contenuto d’acqua stoccato nella <strong>di</strong>ga è nullo, ovvero la <strong>di</strong>gasi trova <strong>in</strong> secca. L’output della rout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valoridelle frazioni <strong>di</strong> tempo <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.f<strong>un</strong>ction matrix=frazioneseccaexp(p,tempo,K,M,sim)% matrix=frazioneseccaexp(p,tempo,K,M,sim)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> secca da% parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo <strong>in</strong> parametro% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% p = parametro della <strong>di</strong>stribuzione Esponenziale% tempo = <strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> valutazione% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazione% sim = simulazioni del processo desiderateE=[];for i=1:simx=exprnd(p,tempo,1)E=[E x];endfor i=1:length(K)for j=1:length(M)if K(i)>M(j)prop=zeros(1,sim);for v=1:length(prop)[R,l,z]=errestar(E(:,v),M(j),K(i));s=0;for t=1:length(z)if z(t)==0s=s+1;endendprop(v)=s/tempo;endmatrix(i,j)=mean(prop);elsematrix(i,j)=NaN;endendend
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 96figuresurf(M,K,matrix);colormap(summer);figurecontour(M,K,matrix);colormap(summer);A.9 frazioneseccabeta.mfrazioneseccabeta.m è il programma <strong>per</strong> il calcolo della frazione <strong>di</strong> tempo<strong>in</strong> cui la <strong>di</strong>ga con <strong>in</strong>gresso Beta <strong>di</strong>latata si trova <strong>in</strong> secca. Il f<strong>un</strong>zionamentoè analogo alle rout<strong>in</strong>es precedenti; riceve <strong>in</strong> <strong>in</strong>gresso i parametridella <strong>di</strong>stribuzione Beta (compreso il coefficiente <strong>di</strong> <strong>di</strong>latazione), l’<strong>in</strong>tervallo<strong>di</strong> tempo, gli <strong>in</strong>tervalli dei parametri della <strong>di</strong>ga e il numero <strong>di</strong> simulazionidesiderate. Genera al suo <strong>in</strong>terno la matrice <strong>di</strong> <strong>in</strong>gressi aleatori ed <strong>in</strong> seguitovaluta la porzione <strong>di</strong> tempo <strong>in</strong> cui il contenuto d’acqua stoccato nella <strong>di</strong>gaè nullo, ovvero la <strong>di</strong>ga si trova <strong>in</strong> secca. L’output della rout<strong>in</strong>e è <strong>un</strong>a matricecontenente i valori delle frazioni <strong>di</strong> tempo <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong>variazione dei parametri.f<strong>un</strong>ction matrix=frazioneseccabeta(a,b,c,tempo,K,M,sim)% matrix=frazioneseccabeta(a,b,c,tempo,K,M,sim)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> secca da% parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo <strong>in</strong> parametro% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% a , b , c = parametri della <strong>di</strong>stribuzione Beta <strong>di</strong>latata% tempo = <strong>in</strong>tervallo <strong>di</strong> tempo <strong>in</strong> valutazione% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazione% sim = simulazioni del processo desiderateE=[];for i=1:simx=betarnd(a,b,tempo,1)x=c*x;E=[E x];endfor i=1:length(K)for j=1:length(M)if K(i)>M(j)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 97prop=zeros(1,sim);for v=1:length(prop)[R,l,z]=errestar(E(:,v),M(j),K(i));s=0;for t=1:length(z)if z(t)==0s=s+1;endendprop(v)=s/tempo;endmatrix(i,j)=mean(prop);elsematrix(i,j)=NaN;endendendfiguresurf(M,K,matrix);colormap(summer);figurecontour(M,K,matrix);colormap(summer);A.10 overflowanalitico.moverflowanalitico.m è il programma che valuta la frazione <strong>di</strong> tempo <strong>in</strong>cui la <strong>di</strong>ga con <strong>in</strong>gresso Esponenziale si trova <strong>in</strong> overflow, attraverso la <strong>di</strong>stribuzionestazionaria teorica della quantità <strong>di</strong> acqua presente nella <strong>di</strong>ga. Siè tradotta la <strong>di</strong>stribuzione analitica ed attraverso cicli for concatenati vengonoeffettuati i controlli sui parametri della <strong>di</strong>ga e la valutazione della cumulataanalitica. Gli <strong>in</strong>gressi alla rout<strong>in</strong>e sono qu<strong>in</strong><strong>di</strong> gli <strong>in</strong>tervalli entro cuivariano i parametri della <strong>di</strong>ga ed il parametro della <strong>di</strong>stribuzione Esponenziale.L’output della rout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valori delle frazioni<strong>di</strong> tempo rispettive <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.Nella seguente f<strong>un</strong>zione viene richiamata la rout<strong>in</strong>e analitica.m. Si trattadella identica densitaanalitica.m, alla quale sono stati elim<strong>in</strong>ati tutti i coman<strong>di</strong>grafici, allo scopo <strong>di</strong> utilizzarla agevolmente all’<strong>in</strong>terno <strong>di</strong> <strong>un</strong> ciclo for,e l’analisi degli scarti, poichè essa è necessario farla a f<strong>un</strong>zione conclusa (<strong>per</strong>problemi legati alle restrizioni sui parametri <strong>per</strong> il calcolo della <strong>di</strong>stribuzionestazionaria teorica).
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 98f<strong>un</strong>ction matrix=overflowanalitico(K,M,p)% matrix=overflwanalitico(K,M,p)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> overflow% da parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo% <strong>in</strong> parametro% attraverso la <strong>di</strong>stribuzione stazionaria.% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% p = parametro della <strong>di</strong>stribuzione Esponenziale% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazionex=0.1:0.1:max(K);for i=1:length(K)for j=1:length(M)if K(i)>M(j)r=(K(i)/M(j));w=floor(r);if w==r[y,h]=analitica(K(i),M(j),p,x);E=0;for t=1:length(y)if y(t)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 99A.11 seccaanalitica.mseccaanalitica.m è il programma che valuta la frazione <strong>di</strong> tempo <strong>in</strong> cui la<strong>di</strong>ga con <strong>in</strong>gresso Esponenziale si trova <strong>in</strong> secca, attraverso la <strong>di</strong>stribuzionestazionaria teorica della quantità <strong>di</strong> acqua presente nella <strong>di</strong>ga. Si è tradottala <strong>di</strong>stribuzione analitica ed attraverso cicli for concatenati vengono effettuatii controlli sui parametri della <strong>di</strong>ga e la valutazione della cumulata analitica.Gli <strong>in</strong>gressi alla rout<strong>in</strong>e sono qu<strong>in</strong><strong>di</strong> gli <strong>in</strong>tervalli entro cui variano iparametri della <strong>di</strong>ga ed il parametro della <strong>di</strong>stribuzione Esponenziale. L’outputdella rout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valori delle frazioni <strong>di</strong> temporispettive <strong>in</strong> f<strong>un</strong>zione degli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.Nella seguente f<strong>un</strong>zione viene richiamata la rout<strong>in</strong>e analitica.m. Si trattadella identica densitaanalitica.m, alla quale sono stati elim<strong>in</strong>ati tutti i coman<strong>di</strong>grafici, allo scopo <strong>di</strong> utilizzarla agevolmente all’<strong>in</strong>terno <strong>di</strong> <strong>un</strong> ciclo for,e l’analisi degli scarti, poichè essa è necessario farla a f<strong>un</strong>zione conclusa (<strong>per</strong>problemi legati alle restrizioni sui parametri <strong>per</strong> il calcolo della <strong>di</strong>stribuzionestazionaria teorica).f<strong>un</strong>ction matrix=seccaanalitica(K,M,p)% matrix=seccaanalitica(K,M,p)% rout<strong>in</strong>e che calcola la porzione <strong>di</strong> tempo passata <strong>in</strong> secca da% parte della <strong>di</strong>ga, valutata sull’arco <strong>di</strong> tempo <strong>in</strong> parametro% attraverso la <strong>di</strong>stribuzione stazionaria.% output:% matrix = matrice contenente le frazioni <strong>di</strong> tempo% <strong>in</strong> f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% p = parametro della <strong>di</strong>stribuzione Esponenziale% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazionex=0.1:0.1:max(K);for i=1:length(K)for j=1:length(M)if K(i)>M(j)r=(K(i)/M(j));w=floor(r);if w==r[y,h]=analitica(K(i),M(j),p,x);E=0;for t=1:length(y)if y(t)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 100endendendendmatrix(i,j)=E;endelsematrix(i,j)=NaN;endA.12 guadagno.mguadagno.m è il programma <strong>per</strong> la <strong>simulazione</strong> dell’andamento della f<strong>un</strong>zioneguadagno, analizzante sia gli <strong>in</strong>gressi <strong>di</strong> tipo Esponenziale che gli <strong>in</strong>gressi<strong>di</strong> tipo Beta, poichè riceve <strong>in</strong> <strong>in</strong>gresso <strong>un</strong>a matrice contenente gli <strong>in</strong>gressidelle simulazioni. Possiede numerosi parametri <strong>in</strong> <strong>in</strong>gresso, <strong>per</strong> cui sirimanda allo script dell’help <strong>per</strong> la loro descrizione accurata. L’output dellarout<strong>in</strong>e è <strong>un</strong>a matrice contenente i valori del guadagno atteso <strong>in</strong> f<strong>un</strong>zionedegli <strong>in</strong>tervalli <strong>di</strong> variazione dei parametri.f<strong>un</strong>ction G=guadagno(E,M,K,trans,tempo,costo,ricavo,sim)% G=guadagno(E,M,K,trans,tempo,costo,ricavo,sim)% rout<strong>in</strong>e che valuta il valore del guadagno atteso dato <strong>un</strong>% orizzonte temporale <strong>di</strong> calcolo.% output:% G = matrice contenente i valori <strong>di</strong> guadagno atteso <strong>in</strong>% f<strong>un</strong>zione dei parametri% <strong>in</strong>put:% E = matrice contenente le simulazioni degli <strong>in</strong>gressi alla% <strong>di</strong>ga (dove ogni colonna rappresenta <strong>un</strong>a <strong>simulazione</strong>)% M = <strong>in</strong>tervallo <strong>di</strong> uscita della <strong>di</strong>ga <strong>in</strong> valutazione% K = vettore <strong>di</strong> capacità utili <strong>in</strong> valutazione% trans = valore stimato della durata del transitorio% tempo = <strong>per</strong>iodo <strong>di</strong> f<strong>un</strong>zionamento <strong>in</strong> analisi% (escluso transitorio)% costo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile;% <strong>per</strong> esempio: costo=’4950*sqrt(k)’% ricavo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile,% m l’uscita della <strong>di</strong>ga e r la quantità <strong>di</strong> acqua% presente nella <strong>di</strong>ga; <strong>per</strong> esempio:% ricavo=’441500*m*((0.8.*r).^(1/3)+0.1-0.3*m)’
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 101% sim = numero <strong>di</strong> colonne della matrice Efor i=1:length(K)for j=1:length(M)if K(i)>M(j)k=K(i);m=M(j);c=eval(costo);g=zeros(1,sim);for s=1:sim[r,R,z]=errestar(E(:,s),m,k);S=0;z=1;for t=trans:tempo+transif R(t)>kr(z)=k;elser(z)=R(t);endz=z+1;endv=eval(ricavo);g(s)=sum(v);endG(i,j)=mean(g)-c;elseG(i,j)=NaN;endendendA.13 centratura.mcentratura.m è il programma che effettua il controllo <strong>di</strong> appartenenza<strong>di</strong> determ<strong>in</strong>ati p<strong>un</strong>ti ad <strong>un</strong>a regione ammissibile, caratterizzata dal limite<strong>in</strong>feriore pari a zero, dal limite su<strong>per</strong>iore pari a <strong>un</strong>a retta (il cui valore èpassato <strong>in</strong> <strong>in</strong>gresso) e dai limiti laterali generici (il cui andamento descritto<strong>per</strong> p<strong>un</strong>ti è passato <strong>in</strong> <strong>in</strong>gresso). Esso restituisce 1 se il p<strong>un</strong>to appartienealla regione ammissibile oppure 0 se il p<strong>un</strong>to non vi appartiene. Per valutarel’appartenenza confronta le coor<strong>di</strong>nate del p<strong>un</strong>to con le serie <strong>di</strong> coor<strong>di</strong>natedei v<strong>in</strong>coli.
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 102f<strong>un</strong>ction a=centratura(seme,v<strong>in</strong>dx,v<strong>in</strong>sx)% a=centratura(seme,v<strong>in</strong>dx,v<strong>in</strong>sx)% rout<strong>in</strong>e che determ<strong>in</strong>a l’appartenenza <strong>di</strong> <strong>un</strong> p<strong>un</strong>to% a <strong>un</strong> data regione <strong>di</strong> ammissibiità.% output:% a = risultato della valutazione% a = 1 il p<strong>un</strong>to appartiene alla regione% a = 0 il p<strong>un</strong>to non appartiene alla regione% <strong>in</strong>put:% seme = p<strong>un</strong>to <strong>in</strong> analisi% v<strong>in</strong>dx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> destra% (ogni colonna rappresenta le coor<strong>di</strong>nate% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)% v<strong>in</strong>sx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> s<strong>in</strong>istra% (ogni colonna rappresenta le coor<strong>di</strong>nate% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)ld=length(v<strong>in</strong>dx);ls=length(v<strong>in</strong>sx);vd=v<strong>in</strong>dx(2,2:ld);vs=v<strong>in</strong>sx(2,2:ls);for i=1:length(vd)-1if vd(i)=seme(2)b=v<strong>in</strong>dx(1,i+1);elseb=v<strong>in</strong>dx(1,ld);endendfor i=1:length(vs)-1if vs(i)=seme(2)d=v<strong>in</strong>sx(1,i+1);elsed=v<strong>in</strong>sx(1,ls);enden<strong>di</strong>f seme(1)>d & seme(1)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 103A.14 ottimoexp.mottimoexp.m è il programma che implementa il metodo <strong>di</strong> <strong>ottimizzazione</strong>v<strong>in</strong>colata compass search <strong>per</strong> la ricerca dei parametri ottimi <strong>di</strong> <strong>di</strong>ghe con<strong>in</strong>gressi Esponenziali (<strong>per</strong> la descrizione dell’algoritmo si veda il paragrafo6.4.1). Contiene al suo <strong>in</strong>terno centratura.m, descritto nella sezione precedente.In <strong>in</strong>gresso sono posti tutti i parametri sia della <strong>simulazione</strong> chedell’<strong>ottimizzazione</strong>, <strong>per</strong>ciò essi sono molto numerosi. Si rimanda allo scriptdell’help <strong>per</strong> la loro descrizione accurata. La rout<strong>in</strong>e restituisce le coor<strong>di</strong>natesul dom<strong>in</strong>io del p<strong>un</strong>to <strong>di</strong> ottimo e il valore della f<strong>un</strong>zione guadagno valutatanel p<strong>un</strong>to.f<strong>un</strong>ction [ott,G]=ottimoexp(p,trans,tempo,costo,ricavo,sim,seme,s,tol,v<strong>in</strong>dx,v<strong>in</strong>sx,maxx,maxy)% [ott,G]=ottimoexp(p,trans,tempo,costo,ricavo,sim,seme,s,% tol,v<strong>in</strong>dx,v<strong>in</strong>sx,maxx,maxy)% rout<strong>in</strong>e che restituisce il p<strong>un</strong>to <strong>di</strong> ottimo della f<strong>un</strong>zione% guadagno (<strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressi Esponenziali alla <strong>di</strong>ga)% e i rispettivi valori <strong>di</strong> uscita m e capacità utile k.% output:% ott = coor<strong>di</strong>nate (m,k) del p<strong>un</strong>to <strong>di</strong> ottimo% G = valore della f<strong>un</strong>zione guadagno nel p<strong>un</strong>to <strong>di</strong> ottimo% <strong>in</strong>put:% p = parametro dell’<strong>in</strong>gresso esponenziale% trans = valore stimato della durata del transitorio% tempo = <strong>per</strong>iodo <strong>di</strong> f<strong>un</strong>zionamento <strong>in</strong> analisi% (escluso transitorio)% costo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile;% <strong>per</strong> esempio: costo=’4950*sqrt(k)’% ricavo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile,% m l’uscita della <strong>di</strong>ga e r la quantità <strong>di</strong> acqua% presente nella <strong>di</strong>ga; <strong>per</strong> esempio:% ricavo=’441500*m*((0.8.*r).^(1/3)+0.1-0.3*m)’% sim = numero <strong>di</strong> simulazioni desiderato <strong>per</strong> il calcolo% della f<strong>un</strong>zione guadagno% seme = p<strong>un</strong>to <strong>di</strong> partenza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>% s = l<strong>un</strong>ghezza <strong>in</strong>iziale del passo nell’algoritmo% <strong>di</strong> <strong>ottimizzazione</strong>% tol = tolleranza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>% v<strong>in</strong>dx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> destra% (ogni colonna rappresenta le coor<strong>di</strong>nate
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 104% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)% v<strong>in</strong>sx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> s<strong>in</strong>istra% (ogni colonna rappresenta le coor<strong>di</strong>nate% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)% maxx = massimo valore ass<strong>un</strong>to dall’ascissa% maxy = massimo valore ass<strong>un</strong>to dall’or<strong>di</strong>nataE=[];for i=1:simx=exprnd(p,tempo+trans,1);E=[E x];endg=guadagno(E,seme(1),seme(2),trans,tempo,costo,ricavo,sim);M=-<strong>in</strong>f;w=0;while w==0g=max(M,g);p<strong>un</strong>tix=[seme(1)+s seme(1) seme(1)-s seme(1)];p<strong>un</strong>tiy=[seme(2) seme(2)+s seme(2) seme(2)-s];p<strong>un</strong>ti=[p<strong>un</strong>tix;p<strong>un</strong>tiy];for i=1:4t=p<strong>un</strong>ti(:,i);a=centratura(t,v<strong>in</strong>dx,v<strong>in</strong>sx);if a==1 & t(1)
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 105A.15 ottimobeta.mottimobeta.m è il programma che implementa il metodo <strong>di</strong> <strong>ottimizzazione</strong>v<strong>in</strong>colata compass search <strong>per</strong> la ricerca dei parametri ottimi <strong>di</strong> <strong>di</strong>ghe con<strong>in</strong>gressi Beta (<strong>per</strong> la descrizione dell’algoritmo si veda il paragrafo 6.4.1).Contiene al suo <strong>in</strong>terno centratura.m, descritto precedentemente. In <strong>in</strong>gressosono posti tutti i parametri sia della <strong>simulazione</strong> che dell’<strong>ottimizzazione</strong>,<strong>per</strong>ciò essi sono molto numerosi. Si rimanda allo script dell’help <strong>per</strong> la lorodescrizione accurata. La rout<strong>in</strong>e restituisce le coor<strong>di</strong>nate sul dom<strong>in</strong>io delp<strong>un</strong>to <strong>di</strong> ottimo e il valore della f<strong>un</strong>zione guadagno valutata nel p<strong>un</strong>to.f<strong>un</strong>ction [ott,G]=ottimobeta(a,b,c,trans,tempo,costo,ricavo,sim,seme,s,tol,v<strong>in</strong>dx,v<strong>in</strong>sx,maxx,maxy)% [ott,G]=ottimobeta(a,b,c,trans,tempo,costo,ricavo,sim,% seme,s,tol,v<strong>in</strong>dx,v<strong>in</strong>sx,maxx,maxy)% rout<strong>in</strong>e che restituisce il p<strong>un</strong>to <strong>di</strong> ottimo della f<strong>un</strong>zione% guadagno (<strong>in</strong> caso <strong>di</strong> <strong>in</strong>gressi Beta alla <strong>di</strong>ga)% e i rispettivi valori <strong>di</strong> uscita m e capacità utile k.% output:% ott = coor<strong>di</strong>nate (m,k) del p<strong>un</strong>to <strong>di</strong> ottimo% G = valore della f<strong>un</strong>zione guadagno nel p<strong>un</strong>to <strong>di</strong> ottimo% <strong>in</strong>put:% a , b , c = parametri dell’<strong>in</strong>gresso beta <strong>di</strong>latata% (dove c coefficiente <strong>di</strong> <strong>di</strong>latazione)% trans = valore stimato della durata del transitorio% tempo = <strong>per</strong>iodo <strong>di</strong> f<strong>un</strong>zionamento <strong>in</strong> analisi% (escluso transitorio)% costo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile;% <strong>per</strong> esempio: costo=’4950*sqrt(k)’% ricavo = (str<strong>in</strong>ga) f<strong>un</strong>zione <strong>di</strong> costo relativa alla <strong>di</strong>ga,% nella quale k rappresenta la capacità utile,% m l’uscita della <strong>di</strong>ga e r la quantità <strong>di</strong> acqua% presente nella <strong>di</strong>ga; <strong>per</strong> esempio:% ricavo=’441500*m*((0.8.*r).^(1/3)+0.1-0.3*m)’% sim = numero <strong>di</strong> simulazioni desiderato <strong>per</strong> il calcolo% della f<strong>un</strong>zione guadagno% seme = p<strong>un</strong>to <strong>di</strong> partenza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>% s = l<strong>un</strong>ghezza <strong>in</strong>iziale del passo nell’algoritmo% <strong>di</strong> <strong>ottimizzazione</strong>% tol = tolleranza dell’algoritmo <strong>di</strong> <strong>ottimizzazione</strong>% v<strong>in</strong>dx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> destra% (ogni colonna rappresenta le coor<strong>di</strong>nate
APPENDICE A. SCRIPT DEL SOFTWARE SVILUPPATO 106% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)% v<strong>in</strong>sx = descrizione <strong>per</strong> p<strong>un</strong>ti del bo<strong>un</strong>d <strong>di</strong> s<strong>in</strong>istra% (ogni colonna rappresenta le coor<strong>di</strong>nate% (x,y) <strong>di</strong> ogni p<strong>un</strong>to)% maxx = massimo valore ass<strong>un</strong>to dall’ascissa% maxy = massimo valore ass<strong>un</strong>to dall’or<strong>di</strong>nataE=[];for i=1:simx=betarnd(a,b,tempo+trans,1);x=c.*x;E=[E x];endg=guadagno(E,seme(1),seme(2),trans,tempo,costo,ricavo,sim);M=-<strong>in</strong>f;w=0;while w==0g=max(M,g);p<strong>un</strong>tix=[seme(1)+s seme(1) seme(1)-s seme(1)];p<strong>un</strong>tiy=[seme(2) seme(2)+s seme(2) seme(2)-s];p<strong>un</strong>ti=[p<strong>un</strong>tix;p<strong>un</strong>tiy];for i=1:4t=p<strong>un</strong>ti(:,i);a=centratura(t,v<strong>in</strong>dx,v<strong>in</strong>sx);if a==1 & t(1)
Bibliografia[1] AA.VV. Le <strong>di</strong>ghe <strong>di</strong> ritenuta degli impianti idroelettrici italiani, a curadella commissione ANIDEL <strong>per</strong> lo stu<strong>di</strong>o dei problemi <strong>in</strong>erenti alle<strong>di</strong>ghe. ANIDEL, Roma, 1961.[2] AA.VV. Stochastic hydrology and its use <strong>in</strong> water resources systemssimulation and optimization. Kluwer Academic Publishers <strong>in</strong>coo<strong>per</strong>ation with NATO Scientific Affair Division,Dordrecht, 1993.[3] Asmussen, S. Applied probability and queues. John Wiley and Sons, NewYork, 1987.[4] Avi-Itzhak, B. e Ben-Tuvia, S. “A problem of optimiz<strong>in</strong>g a collect<strong>in</strong>greservoir system”. Opns. Res., 11, 122-136, 1963.[5] Evangelisti, G. Impianti idroelettrici - 3rd ed. - vol I: o<strong>per</strong>e <strong>di</strong>derivazione. Casa E<strong>di</strong>trice Prof. Riccardo Pàtron, Bologna, 1964.[6] Ghosal, A. “Empt<strong>in</strong>ess <strong>in</strong> the f<strong>in</strong>ite dam”. Ann. Math. Stat., 31, 803-808, 1960.[7] Kolda, T.G. - Lewis, R.M. - Torczon, V. “Optimization by <strong>di</strong>rectsearch: new <strong>per</strong>spectives on some classical and modern methods”.SIAM Review, 45, 385-482, 2003.[8] Loynes, R.M. “The stability of a queue with non-<strong>in</strong><strong>di</strong>pendent <strong>in</strong>terarrivaland service times”. Proc. Cam. Phil. Soc., 58, 497-520, 1962.[9] Novak, P. - Moffat, A.I.B. - Nalluri, C. - Narayanan, R. HydraulicStructures - 2nd ed. E & FN Spon, London, 1996.[10] Prabhu, N.U. Queues and Inventories: a study of their basic stochasticprocesses. John Wiley and Sons, New York, 1965.[11] Prabhu, N.U. Stochastic storage processes: queues, <strong>in</strong>surance risk,dams, and data comm<strong>un</strong>ication - 2nd ed. Spr<strong>in</strong>ger - Verlag, New York,1998.107
BIBLIOGRAFIA 108[12] Rohatgi, V.K. An <strong>in</strong>troduction to probability theory and mathematicalstatistics. John Wiley and Sons, New York, 1976[13] Ross, S.M. Introduction to probability models - 7th ed. Academic Press,San Diego, 2000[14] Ross, S.M. Simulation - 3rd ed. Academic Press, San Diego, 2002[15] Vischer, D.L. e Hager, W.H. Dam hydraulics. John Wiley and Sons,Chichester, 1998.