\section{Risultati sperimentali}
In questa sezione vengono analizzati e confrontati i modelli ricavati dalle identificazioni effettuate con i metodi presentati precedentemente. Si darà una descrizione dei risultati ottenuti con i singoli metodi al variare del numero di dati in ingresso (si cerca di valutare la robustezza del metodo in condizioni critiche, ovvero quando le variabili da stimare sono molte rispetto ai dati disponibili) e di alcuni parametri specifici all'algoritmo in questione. Le metriche che vengono utilizzate per valutare la bontà dei risultati ed effettuare i confronti sono quelle della Sezione \ref{chap:Validazione}.

I dati sono stati raccolti per due settimane in un edificio adibito ad uso commerciale a Vicenza tra la fine di agosto e l'inizio di settembre. Durante il periodo di acquisizione dei dati l'edificio è rimasto chiuso al pubblico, non si sono così registrate perturbazioni dovute ad agenti esterni (come l'improvvisa apertura di finestre o il semplice riscaldamento termico dovuto alla presenza di un gran numero di persone). Esso è composto da due uffici separati da un muro di cartongesso come illustrato dalla mappa in Figura \ref{Mappa_Vi}. Per la locazione dei sensori si rimanda alle illustrazioni relative alla GUI creata (Sezione \ref{sec:GUI}).
\begin{figure}[htpb]
\begin{center}
\includegraphics[width=11cm]{figure/MappaVi.eps}
\caption{Mappa dell'edificio utilizzato per la raccolta dei dati.}
\label{Mappa_Vi}
\end{center}
\end{figure}
Il tempo di campionamento utilizzato è di 8 minuti, un periodo più che sufficiente per le dinamiche termiche di un edificio. Precedenti lavori (si veda \cite{Bonollo07}) hanno dimostrato che questo non è un parametro critico di progettazione e che anche valori superiori (10-15 minuti) danno risultati soddisfacenti.
Una volta ottenuti i dati (seguendo la procedura descritta nella Sezione \ref{}), un primo controllo che si è effettuato per valutarne l'integrità è stato quello della tensione di alimentazione. Il grafico in Figura \ref{ref:tens_alim} mostra l'andamento di tutti e dodici i sensori. Si è visto subito che una misurazione è da scartare poichè la tensione si era abbassata ad un livello non accettabile. Per questo motivo si è deciso di scartare quel sensore. 
\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/tens_alim.eps}
\caption{Andamento della tensione di alimentazione}
\label{ref:tens_alim}
\end{center}
\end{figure}

Guardando il grafico delle temperature misurate (Figura \ref{ref:temp_tot}) si è osservata la presenza di un rumore anomalo verso la fine dei dati, per circa $n\geq 1750$. Confrontando questo fenomeno con l'andamento delle tensioni se ne capisce immediatamente il motivo; alcuni sensori fin dall'inizio partivano con batterie non pienamente cariche e questo ha fatto si che la loro autonomia fosse minore degli altri. Per non scartare troppi sensori si è scelto di troncare i dati utilizzati. I dati rimanenti sono stati suddivisi in due insiemi dove il primo è stato utilizzato per l'identificazione ed il secondo come set di dati ``freschi'' per la validazione. 


\begin{figure}[htpb]
\begin{center}
\includegraphics[width=13cm]{figure/temp_tot.eps}
\caption{Andamento della temperature misurate (quella maggiore si riferisce al sensore posizionato all'esterno). Si noti il rumore finale e la misura del sensore avariato che esce dal range illustrato (arriva fino a 7000 gradi). }
\label{ref:temp_tot}
\end{center}
\end{figure}

Per eseguire il pre-filtraggio dei dati si è eseguito la classica rimozione della media per evitare che ci siano errori dovuti al bias in fase di identificazione. Analizzando poi il grafico dell'intensità luminosa registrata ci si è accorti che i dati nel complesso presentavano ordini di grandezza troppo differenti (la luminosità è sull'ordine dei $10^5\, lux$). Per evitare problemi di condizionamento numerico degli algoritmi si è preferito effettuare una standardizzazione dei dati togliendo a ciascuna misura la sua varianza. Questi due procedimenti sono leciti poichè sono due informazioni che possono essere facilmente reintrodotte alla fine sommando la media e moltiplicando per la deviazione standard i dati in uscita dalle identificazioni. In Figura \ref{ref:dati_per_iden} si può vedere un esempio di come si presentano i dati pronti per la fase di identificazione.

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=13cm]{figure/dati_per_iden.eps}
\caption{Esempio di dati pronti per l'identificazione dell'uscita relativa al terzo sensore. }
\label{ref:dati_per_iden}
\end{center}
\end{figure}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Risultati ottenuti con PEM}
Il metodo PEM è stato testato con un vettore di dati di lunghezza variabile da 600 fino ad 1500 campioni. Si ricorda che il tempo di campionamento utilizzato è stato di 8 minuti, cioè per l'identificazione si è utilizzato un numero di dati che si sarebbe ottenuto come se l'acquisizione fosse durata da un minimo 3 ad un massimo di 8 giorni. I dati rimanenti sono stati lasciati per la validazione. La classe a cui fa riferimento il metodo è il seguente modello vettoriale:
\begin{equation}
Ay(t)=B\mathbf{u}(t-1)+Ce(t)
\end{equation}
dove $\mathbf{u}$ è il vettore contenente i 32 ingressi del sistema, $A,C$ sono polinomi di ordine $m$ e $B$ è un vettore riga di cui ogni elemento è un polinomio anch'esso di ordine $m$ che consta quindi di $32\times m$ elementi. Per la scelta della dimensione delle matrici si è scelto di utilizzare gli indici di AICC e BIC (vedi (\ref{aicc}) e (\ref{bic})) avendo impostato un limite superiore per l'ordine dei modelli ARMAX pari a 15. Confrontando i risultati si è notato nel caso in cui i FIT sono elevati i due metodi danno risultati simili. Spesso però succede che laddove AICC porta ad avere modelli non accettabili (FIT molto bassi o negativi, cioè instabilità) BIC dà buoni risultati. In Tabella \ref{pem aicVsbic tab} viene riportato un esempio di questo fenomeno.

\begin{table}[htpb]
\begin{center}
\begin{tabular}{|c||c|c|}
\hline
 & AICC & BIC \\
\hline
\hline
n=600 & -0.37 & -0.64 \\
\hline
n=800 & -7.64 & 0.98\\
\hline
n=1100 & -0.96 & 0.99\\
\hline
n=1500 & 0.99 & 0.98\\
\hline
\end{tabular}
\end{center}
\caption{Confronto tra i risultati ottenuti con PEM+AICC e PEM+BIC in termini di COD (valore medio nei primi 30 passi di predizione) avendo scelto come uscita il terzo sensore. }
\label{pem aicVsbic tab}
\end{table}


Dalla Tabella \ref{pem aicVsbic tab} si vede inoltre come varino i risultati in funzione del numero $n$ di campioni in ingresso. Per $n=600$ quasi la metà dei modelli (nel caso migliore BIC) sono instabili e una buona parte dei rimanenti non ha prestazioni di rilievo. Questo avviene perchè i dati a disposizione sono troppo pochi per stimare l'elevato numero di parametri che presenta questo sistema
\footnote{Come già detto l'ordine massimo imposto è stato di 15, in generale però l'ordine dei modelli è stato selezionato fra il 5 e il 10, cioè si hanno da 170 fino a 340 parametri di cui deve essere effettuata una stima.}; l'algoritmo, non facendo alcuna selezione degli ingressi (e delle relative funzioni di trasferimento da stimare), non è così in grado di far fronte a situazioni di questo tipo. Il fatto che la stima effettuta sia pessima si può evincere anche guardando il test dei residui. A titolo di esempio si porta la Figura \ref{fig:bianc pem}, in cui si vede un residuo decisamente non bianco indice che gran parte dell'informazione non è stata catturata. Il test di indipendenza dell'uscita con gli ingressi da esiti che in generale sono positivi con quasi tutte le correlazioni che stanno all'interno della banda di confidenza ( rappresentata in giallo in Figura \ref{fig:bianc pem} (a)). Da questo test si trova inoltre conferma all'utilizzo di dati normalizzati, infatti per i dati non normalizzati il test di indipendenza presenta molto spesso valori di cross-correlazione esterni alla banda di confidenza (un esempio è riportato in Figura \ref{fig:bianc pem} (b)). Dei risultati analoghi si ottengono valutando il test dei residui per ogni altro algoritmo utilizzato, per questo nel proseguo non verrà riportato.\\
All'aumentare del numero di dati disponibili le prestazioni di PEM aumentano, non di molto per $n=800$, decisamente meglio per valori di $n$ superiori al migliaio con valori di FIT che si attestano attorno al $98\%$ e di COD sul $0.99$; la PEM messa nelle condizioni più favorevoli conferma così il suo carattare di ottimalità.
 
\begin{figure}[htpb]
\centering
\subfloat[Test di bianchezza]{
\includegraphics[width=0.47\textwidth]{figure/test_bianc_sens3.eps} }
\hspace{0cm}
\subfloat[Test di indipendenza]{
\includegraphics[width=0.47\textwidth]{figure/test_indip_sens7_nonorm.eps} }
\caption{Test di bianchezza effettuato con l'uscita nel terzo sensore e particolare del test di indipendenza sul settimo sensore.}
\label{fig:bianc pem}
\end{figure}


Nell'utilizzare i risultati per effettuare la predizione dell'evoluzione dell'uscita è utile osservare come variano gli indici FIT e COD. Ciò che si verifica è che le prestazioni peggiorano nei primi passi di predizione e poi si stabilizzano da un certo valore di $k$ in poi. Da quell'istante in poi si deve parlare di simulazione invece che di predizione, le uscite del modello non sono più influenzate dalle uscite degli istanti passati e quindi è come se il predittore lavorasse in catena aperta. In Figura \ref{fig:fitcodpem} ne è riportato un esempio per il terzo sensore (per le altre uscite si ottengono risultati analoghi). In questo caso l'andamento si stabilizza dopo una decina di passi per il modello ben identificato (ottenuto con BIC) e continua ad oscillare per il modello non affidabile (ottenuto con AICC). Nella successiva Figura \ref{fig:fitpem} si trova la valutazione del risultato in termini di FIT per le identificazioni di ogni sensore con $n=1100$ campioni, è evidente la differenza delle prestazioni di BIC e AICC.

\begin{figure}[htpb]
\centering
\subfloat[PEM+BIC]{
\includegraphics[width=0.47\textwidth]{figure/FitCod_pemBic_n1100.eps} }
\hspace{0cm}
\subfloat[PEM+AICC]{
\includegraphics[width=0.47\textwidth]{figure/FitCod_pemAicc_n1100.eps} }
\caption{Andamento della predizione per i modelli ricavati con PEM e i due indici di stima dell'ordine per il sensore numero 3 con $n=1100$.}
\label{fig:fitcodpem}
\end{figure}



\begin{figure}[htpb]
\centering
\subfloat[PEM+BIC]{
\includegraphics[width=0.47\textwidth]{figure/Fit_pemBic_n1100.eps} }
\hspace{0cm}
\subfloat[PEM+AICC]{
\includegraphics[width=0.47\textwidth]{figure/Fit_pemAicc_n1100.eps} }
\caption{FIT per ogni sensore di uscita con $n=1100$.}
\label{fig:fitpem}
\end{figure}

Per rendersi conto della differenza fra l'uscita reale e quella che si ricava facendo la predizione di 10 passi in avanti si riporta la Figura \ref{ref:33_pem}. Ottenuta rapidamente dall'interfacci si da qui è possibile vedere che con FIT superiore al $90\%$ (in questo caso $93\%$) si hanno errori medi minori di 2 decimi di grado (in particolare in questo caso si ha $RMS=0.16$ e $COD=0.97$).

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/33_pem.eps}
\caption{Confronto fra uscita reale e predetta a 10 passi con modello ricavato da PEM+BIC.}
\label{ref:33_pem}
\end{center}
\end{figure}






%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Risultati ottenuti con N4SID}
L'algoritmo ai sottospazi N4SID è stato testato al variare del numero di dati in ingresso, si è scelto di utilizzare dai 600 ai 1000 campioni. Per quanto riguarda l'ordine del modello la scelta è stata affidata ad una routine interna all'algoritmo implementato dalla funzione \texttt{n4sid} di Matlab. Questo metodo di identificazione si è mostrato essere computazionalmente il più efficiente. I tempi di calcolo sono stati in assoluto i minori (dell'ordine di pochi secondi) ottenendo delle prestazioni di poco peggiori rispetto alla PEM. All'aumentare del numero di dati in generale le prestazioni migliorano ma non è stato così per ogni sensore, si è deciso quindi di selezionare di volta in volta i modelli migliori ottenendo i FIT riportati in Figura \ref{ref:n4sidTMP}, complessivamente volendo fare una media dei migliori fit si trova un valore di 69.08. 

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/Fit_n4sid.eps}
\caption{Prestazioni migliori per ogni sensore ottenute con n4sid.}
\label{ref:n4sidTMP}
\end{center}
\end{figure}


In Figura \ref{ref:FitCod_n4sid} viene mostrato l'andamento degli indici FIT e COD in funzione dei passi di predizione.

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/FitCod_n4sid.eps}
\caption{Indici di FIT e COD in funzione dei passi di predizione.}
\label{ref:FitCod_n4sid}
\end{center}
\end{figure}

Anche in questo grafico si osserva lo stesso fenomeno di stabilizzazione degli indici all'aumentare dei passi $k$ di predizione riportato per la PEM.




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Risultati ottenuti con GLAR}
Come spiegato in Sezione \ref{glars} non è immediato trovare il modo di scegliere il numero di sensori che l'algoritmo GLAR deve scartare. Per questo viene usato un ciclo che ad ogni passo aumenta il numero di sensori che deve utilizzare GLAR calcolando anche ad ogni passo l'RMS utilizzando un set di validazione. Alla fine viene tenuto in considerazione solo il modello che ha dato il miglior RMS sul set di validazione.\\
Sono stati provati diversi $n$ ma le simulazioni hanno dato spesso errore. E' stato scelto un valore di $n=500$ che ha dato risultati stabili per tutte le simulazioni.\\
Viene creato anche un secondo modello Mgls con l'idea di aumentare ulteriormente la sparsità applicando un'altra volta l'algoritmo ma tenendo in considerazione solo i sensori usati prima. Si è notato però (ad esempio vedi Figura \ref{fig:sparsGLAR}) (a) che con l'ultima passata spesso non si ottengono dei modelli in grado di descrivere il sistema. In Figura \ref{fig:sparsGLAR} (b) viene riportata la situazione di sparsità ricavata con i due differenti modelli. Nel secondo caso la sparsità è effettivamente maggiore ma solo nei casi di modelli ben identificati il che la rende difficilmente utilizzabile in generale.

\begin{figure}[htpb]
\centering
\subfloat[FIT di GLAR]{
\includegraphics[width=0.60\textwidth]{figure/Fit_glarMglMgls_n500.eps} }
\hspace{0cm}
\subfloat[Sparsità di GLAR]{
\includegraphics[width=0.60\textwidth]{figure/Spars_glarMglMgls_n500.eps} }
\caption{FIT (a) e sparsità (b) raggiunta dell'algoritmo GLAR con $n=500$ dati in ingresso. A confronto la soluzione ottima (Mgl) e sub-ottima (Mgls).}
\label{fig:sparsGLAR}
\end{figure}

Il comportamento dei modelli in funzione dei passi di predizione viene riportato in Figura \ref{ref:FitCod_glarMgl_n500} solo per il metodo che ha dato i risultati migliori (Mgl) e presenta un andamento regolare.


\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/FitCod_glarMgl_n500.eps}
\caption{Indici di FIT e COD in funzione dei passi di predizione.}
\label{ref:FitCod_glarMgl_n500}
\end{center}
\end{figure}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Risultati ottenuti con SSGLAR}
L'algoritmo SSGLAR produce in uscita due modelli dinamici. Il primo rappresenta la soluzione ottima eseguendo i passi descritti in sezione \ref{sec:StabilSplineGroupLARSSGLARAlgoritm} mentre il secondo rappresenta una soluzione sub-ottima che cerca di aumentare la sparsità tollerando un peggioramento del 2\% delle prestazioni (RMS calcolato su un insieme di validazione).\\
Come per GLAR sono stati provati diversi $n$ che però in simulazione hanno dato spesso errore. E' stato scelto un valore di $n=500$ che anche qui ha dato risultati stabili per tutte le simulazioni.\\
Le prestazioni che si ottengono in termini di FIT sono illustrate a confronto in Figura \ref{fig:sparsSSGLAR} (a) mentre in Figura \ref{fig:sparsSSGLAR} (b) si confrontano le sparsità; solo per il secondo sensore si riscontra un aumento della sparsità significativo (che passa dal 30\% al 60\% di funzioni di trasferimento messe a zero) con un lieve peggioramento della prestazione. In tutti gli altri casi le prestazioni si mantengono pressochè identiche. Da questi risultati sembra dunque che il metodo sub-ottimo sia da preferirsi all'ottimo per sistemi di queste dimensioni. 

\begin{figure}[htpb]
\centering
\subfloat[FIT di SSGLAR]{
\includegraphics[width=0.60\textwidth]{figure/Fit_ssglarMnpcMnpg_n500.eps} }
\hspace{0cm}
\subfloat[Sparsità di SSGLAR]{
\includegraphics[width=0.60\textwidth]{figure/Spars_ssglarMnpcMnpg_n500.eps} }
\caption{FIT (a) e sparsità (b) raggiunta dell'algoritmo SSGLAR con $n=500$ dati in ingresso. A confronto la soluzione ottima (Mnpg) e sub-ottima (Mnpc).}
\label{fig:sparsSSGLAR}
\end{figure}

Il comportamento predittivo dei modelli ottenuti si comporta sostanzialmente con un andamento simile a quello riportato in Figura \ref{ref:FitCod_ssglarMnpg_n500} ed è del tutto simile tra le due soluzioni trovate.

\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/FitCod_ssglarMnpg_n500.eps}
\caption{Indici di FIT e COD in funzione dei passi di predizione.}
\label{ref:FitCod_ssglarMnpg_n500}
\end{center}
\end{figure}




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Risultati ottenuti con SSEH}
In questo caso sono stati utilizzati due classi di modelli differenti, la prima in cui viene modellizzata la parte autoregressiva (modello ARMAX, nel seguito indicato con $yy$) e la seconda in cui questa parte manca (modello Output Error, $ny$). Usando il modello $ny$ per fare predizione si osserva che le prestazioni non hanno transitorio al cambiare del numero di passi $k$ di predizione. Questo fenomeno si presenta, perché non presentando il modello $ny$ la parte autoregressiva, nel fare predizione non viene tenuto conto delle uscite passate e quindi equivale a fare solo simulazione. Questa è la differenza principale delle due classi di modelli, in termini di FIT e sparsità infatti si ottengono risultati simili come si vedrà dalle figure seguenti.\\
Essendo l'algoritmo da cui teoricamente ci si aspettano le prestazioni migliori si è deciso di prova a testarlo in condizioni più critiche rispetto ai precedenti. Si è scelto così una lunghezza di dati diminuita fino a $100$ campioni (cioè circa dodici ore di acquisizione) aumentata poi fino a $400$ a passi di un centinaio. Si fornisce ora una descrizione dell'andamento ottenuto nei due casi estremi e poi si passa ad un confronto da un punto di vista della predizione.\\
Per $n=100$ e $p=20$ (lunghezza delle risposte impulsive trovate) il FIT e la sparsità ottenuti sono visibili in Figura \ref{fig:sparsSSEH100}.

\begin{figure}[htpb]
\centering
\subfloat[FIT di SSEH]{
\includegraphics[width=0.48\textwidth]{figure/Fit_ssehYYNY_n100p20.eps} }
\hspace{0cm}
\subfloat[Sparsità di SSEH]{
\includegraphics[width=0.48\textwidth]{figure/Spars_ssehYYNY_n100p20.eps} }
\caption{FIT (a) e sparsità (b) raggiunta dell'algoritmo SSEH con $n=100$ e $p=20$. A confronto la soluzione con modello $yy$ e $ny$.}
\label{fig:sparsSSEH100}
\end{figure}

Per $n=400$ e $p=20$ (lunghezza delle risposte impulsive trovate) invece i risultati sono stati come da Figura \ref{fig:sparsSSEH}

\begin{figure}[htpb]
\centering
\subfloat[FIT di SSEH]{
\includegraphics[width=0.48\textwidth]{figure/Fit_ssehYYNY_n400p20.eps} }
\hspace{0cm}
\subfloat[Sparsità di SSEH]{
\includegraphics[width=0.48\textwidth]{figure/Spars_ssehYYNY_n400p20.eps} }
\caption{FIT (a) e sparsità (b) raggiunta dell'algoritmo SSEH con $n=400$ e $p=20$. A confronto la soluzione con modello $yy$ e $ny$.}
\label{fig:sparsSSEH}
\end{figure}



Un particolare che evidenzia come con $n$ piccoli si ottengono delle percentuali di sparsità molto elevate è riportato nella Tabella \ref{udfaasd}.

\begin{table}[htpb]
\begin{center}
\begin{tabular}{|c||c|c|c|c|}
\hline
$n$ & 100 & 200 & 300 & 400\\
\hline
\hline
FIT $yy$ & 0.91 & 0.92 & 0.93 & 0.93\\
\hline
Sparsità [\%] $yy$ & 72 & 60 & 50 & 41\\
\hline
FIT $ny$ & 0.95 & 0.93 & 0.93 & 0.92\\
\hline
Sparsità [\%] $ny$ & 72 & 50 & 40 & 34\\
\hline
\end{tabular}
\end{center}
\caption{FIT e sparsità ottenute per la predizione di un passo nell'identificare l'uscita del terzo sensore al variare di $n$. }
\label{udfaasd}
\end{table}

Come viene mostrato successivamente con $n$ piccoli gli algoritmi forniscono modelli che entrano in simulazione da subito anche usando modelli $yy$ (presentano un FIT costante al variare del passo di predizione). In altre parole le predizioni che vengono effettuate con questi risultati non tengono conto delle uscite passate, e dunque sono di fatto delle simulazioni. La differenza fra due andamenti del genere si trova in Figura \ref{conf_pred_sim} dove a sinistra si vede che non ci sono variazioni all'aumentare di $k$ e invece a destra si vede che il FIT diminuisce solo nei primi passi prima di stabilizzarsi ed entrare in simulazione. In generale si è notato che a partire da circa $n=200$ iniziano ad esserci modelli $yy$ che presentano transitori del FIT. Questi transitori aumentano all'aumentare del numero di campioni $n$.



\begin{figure}[htpb]
\centering
\subfloat[$n=100$]{
\includegraphics[width=0.48\textwidth]{figure/FitCod_ssehYY_n100p20.eps} }
\hspace{0cm}
\subfloat[$n=400$]{
\includegraphics[width=0.48\textwidth]{figure/FitCod_ssehYY_n400p10.eps} }
\caption{Andamento di FIT e COD con l'identificazione SSEH al variare del passo di predizione usando rispettivamente $n=100$ e $n=400$ campioni. Nei due casi si sono utilizzati i modelli $yy$ con $p=20$ per il terzo sensore.}
\label{conf_pred_sim}
\end{figure}


Nell'identificazione SSEH si è cercato anche di capire come cambiano le prestazioni dei modelli al cambiare del parametro $p$ (lunghezza delle risposte impulsive identificate). Nei risultati sono stati notati cambiamenti significativi cambiando $p$ in termini di prestazioni. Non si può però affermare che all'aumentare di $p$ le prestazioni migliorano, ma sembra che queste cambino in modo aleatorio al cambiare di $p$. In Figura \ref{ref:Fit_ssehYY_n300pVariante} è riportato un esempio in cui si conferma quanto appena detto. Una soluzione a questo problema è di scegliere al variare di $p$ il modello che ha dato i miglior prestazioni calcolati su un set di validazione, detto in altri termini fare una stima di $p$.



\begin{figure}[htpb]
\begin{center}
\includegraphics[width=9cm]{figure/Fit_ssehYY_n300pVariante.eps}
\caption{Indici di FIT in funzione dei passi di predizione con $n=300$ e diversi valori di $p$ per il terzo sensore come uscita.}
\label{ref:Fit_ssehYY_n300pVariante}
\end{center}
\end{figure}




In Figura \ref{fig:map_y} viene riportato un particolare della selezione effettuata dall'algoritmo nell'identificazione della temperatura in uscita del sensore 8 (evidenziato in figura). Essendo una misura di temperatura ci si potrebbe aspettare che i dati che assumono maggior rilievo siano gli andamenti delle temperature circostanti. In verità se si riflette sul funzionamento dell'algoritmo e sul fatto che l'ambiente circostante subisce poche variazioni si capisce che viene presa la prima misura di temperatura e poi tutte le altre vengono scartate perchè molto correlate con la prima. Una volta presa la prima le loro proiezioni sullo spazio attivo saranno molto piccole, indice del fatto che non portano informazione e che vanno scartate. Lo stesso probabilmente avviene per l'umidità differente è invece la questione per la luminosità. Rifrazioni della radiazione luminosa sui muri e orientamento dei sensori porta a misure che sono tra loro incorrelate e vengono quindi selezionate per effetturare la stima.\\

\begin{figure}[htbp]
	\centering
		\includegraphics[width=13cm]{figure/map_y.eps}
	\caption{Sensori scelti dal modello}
	\label{fig:map_y}
\end{figure}

\subsection{Confronti}
Il confronto fra  le prestazioni ottenute con i vari metodi è riportato in Figura \ref{ref:Fit_confronto}. Dalla figura si vede che spesso il metodo PEM produce i modelli più accurati richiedendo però un elevato numero di dati in ingresso (in figura i risultati riportati sono per $n=1100$). Questo è un punto debole dell'algoritmo che, come si è già detto,  con pochi dati rispetto ai parametri non è adeguatamente accurato. Da questo punto di vista il metodo SSEH è senza dubbio il migliore e non ha eguali fra gli algoritmi utilizzati (ha funzionato anche con $n=100$). Anche gli altri algoritmi a gruppi (GLAR, SSGLAR) hanno bisogno di relativamente pochi dati rispetto ad PEM ed N4SID.\\
Se si confronta l'onere computazionale invece il migliore è stato N4SID con tempi di calcolo di qualche secondo per la singola identificazione. La PEM ha richiesto più tempo (meno di una decina di minuti per sensore), dovuto soprattutto alla stima dell'ordine che richiede più iterazioni. Gli algoritmi che favoriscono la sparsità invece da questo punto di vista sono peggiori. Richiedono tempi di calcolo che dipende molto dal numero di campioni (e per SSEH dalla lunghezza delle risposte impulsive). Per $n$ elevati facilmente arrivano a superare i tempi di calcolo di un'ora per ogni singolo sensore.


\begin{figure}[htpb]
\begin{center}
\includegraphics[width=12cm]{figure/Fit_confronto.eps}
\caption{Confonto fra i FIT ottenuti utilizzando i modelli migliori dei metodi PEM, N4SID, GLAR, SSGLAR, SSEH.}
\label{ref:Fit_confronto}
\end{center}
\end{figure}



I risultati sulla sparsità sono riportati nella Figura \ref{ref:Spars_confronto}.  In questo caso si è usata una $n=500$ per GLAR e SSGLAR e $n=400$ per SSEH. Dalla figura sembra che il GLAR dia i migliori risultati si è però visto come per esempio nel caso di SSEH questi risultati dipendano fortemente dai parametri con cui si impostano gli algoritmi. Quindi il significato di questa figura è relativo al particolare settaggio degli algoritmi, che dovranno essere scelti anche in funzione della sparsità che si vuole ottenere.


\begin{figure}[htpb]
\begin{center}
\includegraphics[width=12cm]{figure/Spars_confronto.eps}
\caption{Confronto della sparsità ottenuta con i metodi che GLAR, SSGLAR, SSEH.}
\label{ref:Spars_confronto}
\end{center}
\end{figure}
