Anteprima
Vedrai una selezione di 7 pagine su 26
Relazione Analisi dei Sistemi Ambientali Pag. 1 Relazione Analisi dei Sistemi Ambientali Pag. 2
Anteprima di 7 pagg. su 26.
Scarica il documento per vederlo tutto.
Relazione Analisi dei Sistemi Ambientali Pag. 6
Anteprima di 7 pagg. su 26.
Scarica il documento per vederlo tutto.
Relazione Analisi dei Sistemi Ambientali Pag. 11
Anteprima di 7 pagg. su 26.
Scarica il documento per vederlo tutto.
Relazione Analisi dei Sistemi Ambientali Pag. 16
Anteprima di 7 pagg. su 26.
Scarica il documento per vederlo tutto.
Relazione Analisi dei Sistemi Ambientali Pag. 21
Anteprima di 7 pagg. su 26.
Scarica il documento per vederlo tutto.
Relazione Analisi dei Sistemi Ambientali Pag. 26
1 su 26
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

ANFIS.

A differenza dei modelli tradizionali FIS (Fuzzy Inference System) un modello ANFIS

è in grado di acquisire conoscenza sui dati da elaborare sfruttando dei dati di

allenamento (training data) definendo in tal modo le regole e le funzioni di

appartenenza; per tale ragione si è preferito utilizzarlo.

Il procedimento logico per l’implementazione del modello ANFIS si compone, in

generale, di quattro fasi: [6]

 definizione della matrice dei dati di input/output;

training, ovvero l’utilizzo del modello ANFIS per

 addestrare il modello FIS ad

emulare i dati di allenamento forniti;

checking, ovvero l’utilizzo di dati di controllo, diversi da quelli di allenamento,

 per verificare il potenziale di overfitting (sovradattamento) del modello ai dati;

attraverso la function “evalfis”.

 utilizzo del modello neuro-fuzzy

Per quanto concerne la matrice dei dati, invece di immettere direttamente come input

le piogge medie giornaliere dei pluviometri del Casentino si è deciso di utilizzare le

variabili ottenute dalla PCA, ovvero la matrice Z .

a

In particolare l’addestramento è stato effettuato sfruttando la prima metà dei dati

, l’altra metà è stata invece utilizzata per la fase di controllo.

della matrice Z a

Si è quindi generato un modello FIS di Sugeno caratterizzato da tre funzioni di

appartenenza (rappresentanti i qualificatori linguistici basso-medio-alto) di tipo

gaussmf (campana di Gauss) in ingresso e da una uscita di tipo lineare.

Per quanto riguarda l’allenamento del modello ANFIS è possibile osservare un

decremento dell’errore continuo per ogni epoca, ovvero per ogni ciclo di utilizzo delle

osservazioni.

6 Le colonne della matrice sono i dati di input tranne l’ultima colonna che rappresenta l’output. Pagina | 11

Capitolo 3- Adaptive Neuro-Fuzzy Inference System (ANFIS)

Figura 3.1 – Generazione del modello FIS

L’errore di training rappresenta la differenza tra i valori della colonna di output forniti

) e l’uscita prodotta dal FIS

al modello ANFIS (ovvero la seconda colonna di Z a

generato. Figura 3.2 – Training con 100 epoche Pagina | 12

Capitolo 3- Adaptive Neuro-Fuzzy Inference System (ANFIS)

Figura 3.3 - Checking

La struttura dell’ANFIS così realizzato presenta un unico ingresso, a cui sono

associate le tre membership, un’uscita e le tre regole corrispondenti.

Di seguito si riporta la struttura ottenuta e le tre funzioni di appartenenza.

Figura 3.4 – Architettura del modello ANFIS Pagina | 13

Capitolo 3- Adaptive Neuro-Fuzzy Inference System (ANFIS)

in1mf1 in1mf2 in1mf3

1

0.8

membership 0.6

of 0.4

Degree 0.2

0 100 200 300 400 500 600

input1

Figura 3.5 - Membership

Per mostrare il funzionamento del modello FIS ottenuto si riporta a titolo di esempio

l’immagine seguente: preso un valore generico del supporto (input = 274) vengono

individuati i gradi appartenenza ad ogni membership ed il relativo output.

Figura 3.6 – Rule viewer Pagina | 14

Capitolo 3- Adaptive Neuro-Fuzzy Inference System (ANFIS)

Il valore deterministico dell’output (output = 1.9) è ottenuto dalla defuzzificazione, che

nel modello Sugeno si riduce alla semplice media pesata dei singleton dei

conseguenti.

Il modello ANFIS, sfruttando i dati della matrice di addestramento fornita, ha dunque

generato, in modo autonomo, la FIS. [7]

In conclusione il modello definito è stato richiamato attraverso la function evalfis

che nel nostro caso restituisce, in uscita, la portata elaborata dal modello inferenziale

fuzzy.

I risultati ottenuti, per poter essere confrontati con i dati a disposizione, sono stati

dunque trasformati dal sistema PCA a quello dei dati originali con la trasformazione:

anfis[8] Ta

∙W

X = Z

anfis

7 output = evalfis(Input,progpluv).

Input è una matrice, specificando I valori in ingresso, progpluv è la FIS generata.

8 Z è la matrice ottenuta sommando la prima colonna di Z all’output generato dal modello.

anfis a Pagina | 15

Capitolo 4- Risultati e conclusioni

4. Risultati e conclusioni

Per verificare il corretto funzionamento del modello fuzzy generato sono stati infine

confrontati i risultati ottenuti con i valori reali di portata in nostro possesso.

Confronto portate primi 500 giorni

100 uscita ANFIS1

Portata Subbiano

80

Portate 60

40

20 50 100 150 200 250

Giorni

600

400

Portate 200 300 350 400 450 500

Giorni

Confronto portate 200 giorni

400 uscita ANFIS1

Portata Subbiano

350

300

250

Portate 200

150

100

50

5000 5020 5040 5060 5080 5100 5120 5140 5160 5180 5200

Giorni

Figura 4.1 – Confronto tra le portate (primi 500 giorni)

Figura 4.2 – Confronto tra le portate (200 giorni) Pagina | 16

Capitolo 4- Risultati e conclusioni

Dal confronto riportato in figura 4.1 (relativo ai primi 500 giorni) è possibile osservare

che effettivamente i valori elaborati dal modello (in rosso) approssimano in modo

soddisfacente i valori registrati dall’idrometro (in blu).

La bontà dell’approssimazione può essere ancor meglio apprezzata considerando

periodi temporali inferiori; in figura 4.2 è riportato a titolo esemplificativo il confronto

per 200 giorni.

In conclusione, i risultati ottenuti con il modello appena descritto sono stati confrontati

con quelli ricavati sfruttando un approccio diverso nella costruzione del modello

ANFIS tramite la Principal Component Analysis.

Il secondo metodo differisce dal primo per la modalità con cui è stata utilizzata

l’analisi delle componenti principali: nel primo caso la PCA è stata impiegata per

generare i dati in ingresso del modello ANFIS, nel secondo caso per eseguire un

confronto, a coppie, tra le stazioni pluviometriche in modo da individuare quelle meno

correlate da utilizzare per l’implementazione del modello ANFIS.

Attraverso la costruzione delle ellissi di correlazione, alcune delle quali riportate

come esempio nella figura seguente, è stato possibile individuare come stazioni

pluviometriche di riferimento quelle di Salutio e Stia.

Figura 4.3 – Confronto, a coppie, delle stazioni pluviometriche Pagina | 17

Capitolo 4- Risultati e conclusioni

I dati relativi alle suddette stazioni pluviometriche sono stati dunque utilizzati come

ingressi per il modello ANFIS.

In figura seguente si riporta dunque il confronto dei risultati ottenuti con i due

approcci utilizzati con riferimento ai primi 750 giorni di misure.

PCA con tutti i pluviometri

600 uscita ANFIS1

Portata Subbiano

400

portata 200 100 200 300 400 500 600 700

tempo

Pluviometri: Stia - Salutio

600 uscita ANFIS2

Portata Subbiano

400

portata 200

0 100 200 300 400 500 600 700

tempo

Figura 4.4 – Confronto dei risultati ottenuti dai due approcci (750 giorni)

In conclusione l’obiettivo del presente lavoro era realizzare un modello ANFIS in

grado di prevedere i deflussi conseguenti a precipitazioni note e tale modello è stato

ricavato a partire da una sinergia con il metodo della Principal Component Analysis.

Dal raffronto tra i risultati ottenuti con i due approcci risulta evidente che ambedue le

uscite dei modelli ANFIS forniscono un valore confrontabile con la portata reale;

tuttavia tra le due opzioni la seconda mostra un risultato molto più accurato e preciso,

questo deriva dal fatto che la Principal Component Analysis è stata sfruttata nella

modalità più appropriata. Pagina | 18

Capitolo 5- Bibliografia, sitografia e software

5. Bibliografia, sitografia e software

William J.Palm “Matlab 7. Per l’ingegneria e le scienze” –

[1]. McGraw-Hill, 2005

[2]. Dispense di Analisi dei Sistemi Ambientali Stefano Marsili-Libelli

[3]. Appunti del corso di Analisi dei Sistemi Ambientali

Appunti del corso di Metodi Numerici per l’Ingegneria

[4].

[5]. Tesi di laurea triennale di Michele Abruzzese

a) www.adbarno.it

b) www.qgis.org/it

c) www.sinanet.isprambiente.it

d) www.sir.toscana.it

1. Matlab versione 7.11.0 (R2010b)

2. QGis Dufour 2.0 Pagina | 19

Appendice A

Appendice A

Si riporta di seguito lo script utilizzato per la costruzione del modello ANFIS sulla

base del primo approccio.

clear

clc

close all

%Pricipal Component Analysis (PCA)

%X (all) sono i dati di pioggia e portata nel ventennio 1992-2012

%W è la matrice degli autovettori ordinata per autovalori descrescenti

%L sono gli autovalori di W

%Z sono i dati X trasformati nel sistema PCA

load all;

X=all;

[W,Z,L]=princomp(X);

disp(W)

disp(L)

bs1=scree(L,1);

Wa=W(:,1:2);

Za=X*Wa;

Z1=Za(:,1);

%Generazione dei dati di input per ANFIS, creato con le due componenti

principali

Training=[Za(1:3653,1) Za(1:3653,2)];

Checking=[Za(3654:7671,1) Za(3654:7671,2)];

%Output ANFIS

%Q1 è l'uscita dell'Anfis

%Out è l’uscita dell’ANFIS nel sistema di riferimento dei dati originali

[9]

port1=readfis('progpluv') ;

Q1=evalfis([Z1],port1);

zanfis=[Z1 Q1];

xanfis=zanfis*Wa';

Out=xanfis(:,7);

%Caricamento delle portate reali

load subbiano;

S=subbiano;

%Plot dei risultati

k=size(Z1);

K=(1:k);

figure(2)

plot(K,Out,'r','Linewidth',1.5)

hold on

plot(K,S,'b','Linewidth',1.5)

axis tight

xlabel('time')

ylabel('flow')

title('Confronto portate')

legend('uscita ANFIS1','Portata Subbiano')

9 ‘progpluv’ è il nome del FIS generato con il primo approccio. Pagina | 20

Appendice A

Si riporta inoltre la porzione di codice che permette di confrontare i risultati ottenuti

con i due approcci descritti.

Questa parte è conseguente alla porzione di codice definita in precedenza.

%Confronto tra i due metodi utilizzati per la costruzione del modello ANFIS

%Caricamento delle piogge e delle portate reali primi 750 giorni

load stia750

load salutio750

load subbiano750

%Plot dei risultati (750 giorni)

%Q2 è l'uscita dell'ANFIS realizzato con il secondo approccio

k=size(stia750);

K=(1:k);

figure(3)

subplot(2,1,1)

plot(K,Out(1:749,1),'r','Linewidth',1.5)

hold on

plot(K,subbiano750,'b','Linewidth',1.5)

axis tight

xlabel('tempo')

ylabel('portata')

title('PCA con tutti i pluviometri')

legend('uscita ANFIS1','Portata Subbiano')

subplot(2,1,2) 10

port2=readfis('progpluv2') ;

Q2=evalfis([stia750 salutio750 ],port

Dettagli
Publisher
A.A. 2013-2014
26 pagine
SSD Ingegneria industriale e dell'informazione ING-INF/04 Automatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Nobody.1990 di informazioni apprese con la frequenza delle lezioni di Analisi dei Sistemi Ambientali e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Firenze o del prof Marsili Libelli Stefano.