































































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Dispensa del corso "Model Identification and Data Analysis"
Tipologia: Dispense
1 / 71
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!
































































Stefano Invernizzi Anno accademico 2010-
Corso del prof. Sergio Bittanti
I modelli sono strumenti comunemente adottati per la descrizione di sistemi e fenomeni naturali. Essi possono essere di varia natura. Una delle tipologie di modelli è quella dei modelli deterministici , nei quali si assume in sostanza che il futuro “sia già scritto”, ovvero possa essere determinato in maniera esatta a partire dai dati relativi al presente o al passato. Tuttavia il mondo reale è governato dall’incertezza, e ciò fa sì che questi modelli risultino essere in sostanza sbagliati. A tale proposito è nota la citazione secondo la quale “tutti i modelli sono sbagliati, ma alcuni sono utili”. All’interno del nostro corso adotteremo il punto di vista secondo il quale le risposte alle domande relative ai sistemi sono fornite dai dati, che sono in sostanza dei fenomeni visibili complessi.
L’identificazione L’identificazione è l’insieme dei metodi e degli algoritmi che ci consentono di analizzare i dati per ottenere un certo modello. Il modello così individuato ci potrà essere utile ad esempio per risolvere problemi di controllo (cioè per far in modo che si possano determinare gli interventi da mettere in atto sull’impianto affinché quest’ultimo si comporti come desiderato), oppure per eseguire delle previsioni sulle variabili del modello stesso. Problemi I problemi che si incontrano durante l’identificazione, e che cercheremo di risolvere durante il corso, sono fondamentalmente suddivisibili in 3 classi:
Variabile casuale (o aleatoria, o stocastica) Una variabile casuale 1 è una funzione reale di un evento casuale, associato all’esito 2 di un esperimento causale. Possiamo allora indicare la variabile casuale come: 1#2% Gli unici concetti di interesse nel nostro corso tra quelli legati alle variabili casuali sono i seguenti:
1 = -
È un vettore casuale. Anche in questo caso sono definiti i concetti di valor medio e di varianza:
In altri termini, l’ 3 -esimo elemento della diagonale principale è la varianza dell’ 3 -esima componente del vettore casuale dato, mentre per le restanti posizioni, detta #3, 5%^ la posizione dell’elemento considerato, il corrispondente valore è la varianza incrociata tra la componente 3 -esima e la componente 5 -esima del vettore casuale di partenza.
Proprietà della varianza di un vettore casuale La matrice di varianza di un vettore causale è sempre semidefinita positiva: :;<516 ≥ 0
Memo sulle matrici semidefinite positive Data una matrice reale ; quadrata di dimensione 1 , diciamo che ; è semidefinita positiva (; ≥ 0 ) se: ∀. ∈ ℝ ;^ "#.% =. =^ ;. ≥ 0 Si noti infatti che, siccome. è un vettore colonna di dimensione 1 × 1, la forma quadratica "#.%^ sarà certamente un numero reale. Ad esempio, se 1 = 2, abbiamo: ; = -
E perciò: "#.% = 5.% .> 6 -
;
@,AB%
Memo sulle matrici definite positive Data una matrice reale ; quadrata di dimensione 1 , diciamo che ; è definita positiva (; > 0) se: ∀. ∈ ℝ ;^ $. E.. ≠ 0, "#.% =. =^ ;. > 0 Ovvero, per ogni vettore di ℝ ;^ , la forma quadratica "#.%^ è strettamente positiva, a patto che il vettore considerato non sia il vettore nullo (in quel caso ovviamente si avrà sempre "#.% = 0). Naturalmente, ogni matrice definita positiva è anche semiderfinita positiva, mentre una matrice semidefinita positiva può essere o non essere definita positiva.
Osservazione grafica Considerando ancora 1 = 2, notiamo che da un punto di vista grafico una matrice definita positiva rappresenta una conica del tipo mostrato nella figura a sinistra; una matrice semidefinita positiva, ma non definita positiva, rappresenta invece una conica come quella mostrata a destra.
Condizioni pratiche
y
z
x
y
z
x
Processo casuale (o aleatorio, o stocastico) Un processo casuale è un insieme numerabile (o finito) di variabili casuali. Si ha perciò di norma un insieme di infinite variabili casuali, che vengono indicizzate con una variabile solitamente indicata con $ (in tal modo si fa di solito riferimento al tempo, ma la variabile usata come indice può talvolta assumere significati diversi). Il processo casuale viene indicato con: 1#$% Tuttavia, tale notazione non mette in evidenza il fatto che in realtà si tratta di una funzione dipendente non solo dal tempo, ma anche dall’esito 2 dell’esperimento casuale, perciò la notazione (comunque ampiamente adottata) sottintende in realtà una scrittura del tipo: 1#$, 2%
Stagionale Un trend (o linea di tendenza ) Fluttuante
t
t
t
Processo casuale stazionario Un processo casuale stazionario è un processo casuale nel quale:
|O| = [
Ma '%( non è altro che la funzione di covarianza: '%( = 78#1% − "% %#1( − "( %9 = 78#1#$% % − "%#1#$( % − "%9 = Y#$% , $( % = Y#Z% La precedente disuguaglianza può allora essere così riscritta:
[
O#Z% =
In questo modo si ottiene una funzione sempre compresa tra −1 ed 1. Spettro di un processo stazionario Dato un processo stazionario con funzione di covarianza Y#Z%, possiamo calcolare la trasformata di Fourier di Y#Z%, ottenendo:
Γ#^% =? Y#Z% ∙ V _A`a
bc
aB_c
Lo spettro di un processo stazionario ha le seguenti proprietà:
unitario. Spesso si rappresenta il grafico dello spettro per pulsazioni tra – d e d, corrispondenti a frequenze tra −0,5 e 0,5; quest’ultimo valore è anche la massima frequenza che si può ottenere in campo discreto: il segnale periodico che varia più rapidamente è infatti quello fluttuante tra due valori. Essendo pari, spesso è sufficiente rappresentare lo spettro tra 0 e d.
Consideriamo una sequenza di dati ordinati con un indice $ (che possiamo immaginare rappresenti il tempo, anche se non è necessariamente così). Supponiamo di avere come dati: 1#1% 1#2% ⋮ 1#$ − 1% E di voler calcolare l’incognita: 1#$% Il problema può essere rappresentato come mostrato nella figura seguente:
Supponiamo inoltre di non essere a conoscenza di come i dati siano stati generati.
Il dato incognito 1#$%, come già abbiamo affermato, rappresenta il valore che 1 assumerà all’istante $. Tuttavia, dobbiamo distinguere tra il valore che effettivamente assumerà in tale istante e quello che si stima possa assumere; di conseguenza, indichiamo la stima di 1#$% con il simbolo 1 m#$%. Tale simbologia risulta però non sufficientemente chiara, perciò si utilizza la notazione seguente: 1 m#$|" − 1% Che indica che stimiamo il valore di & all’istante ", utilizzando tutti i dati misurati fino all’istante " − 1. Naturalmente, saranno lecite anche scritture come le seguenti (il cui significato risulta ovvio): &m("|" − 2 %^ &m(" + 1 |" − 1 %
Per prima cosa, proviamo a costruire un predittore lineare, ovvero un predittore che calcoli &m("|" − 1% come combinazione lineare dei dati a disposizione. Possiamo scegliere di realizzare:
Nel seguito analizzeremo solamente predittori lineari a memoria finita. Tuttavia, i problemi che dobbiamo affrontare nella realizzazione di questo predittore sono fondamentalmente 2:
Introduzione Naturalmente, una volta individuato il predittore, ovvero dopo aver fissato tutti i parametri che compaiono nell’equazione: 1 m#$|" − 1% = +% ∙ &(" − 1% + +/ ∙ &(" − 2% + ⋯ + +; ∙ &(" − 1% il predittore stesso potrà essere utilizzato anche sul passato. In altri termini, possiamo calcolare: &m(q|q − 1%, rVj q = " − 1, " − 2, … Per ognuno dei valori considerati possiamo calcolare l’errore di predizione, che è di fatto l’errore di stima. Definizione L’errore di stima è definito come la differenza tra il valore vero di una grandezza & e il suo valore stimato &m: s("% = &("% − &m("|" − 1% Naturalmente, siccome &(∙% e &m(∙% variano nel tempo, anche s(∙% varierà nel tempo. In particolare, siccome consideriamo &(∙% come un processo casuale, anche s(∙% sarà un processo casuale. Quali caratteristiche deve avere l’errore di predizione perché la stima sia considerata “buona”? Naturalmente, la situazione ideale sarebbe quella nella quale l’errore di predizione è costantemente nullo; ciò è tuttavia impossibile nella realtà dei fatti. Ci accontentiamo perciò di un risultato molto meno vincolante. A tale scopo, consideriamo gli andamenti dell’errore di predizione mostrati in figura:
s
s
Possiamo ora calcolare gli zeri e i poli della FdT così ottenuta:
t(N% =
e che sia alimentato da un rumore bianco. Vediamo ora che caratteristiche avrà il processo d’uscita & in relazione alle caratteristiche del processo d’ingresso.
Il processo MA(1) Sia dato un sistema dinamico lineare come quello mostrato nella figura seguente:
Supponiamo inoltre che il segnale d’ingresso v sia un rumore bianco di media v̅ e varianza A/^ : v~tu(v̅, A/^ % Supponiamo per praticità che si abbia v̅ = 0 (ma tale ipotesi non è in realtà necessaria). Analizziamo il sistema nel caso in cui il suo comportamento imponga la validità della seguente equazione: &("% = E{ v("% + E% v(" − 1%, E{ , E% ∈ ℝ Allora:
/
. = U -LE{ v("%M
/
. = E{/^ U -Lv("%M
/
. = E{/^ A/ c) |k&("% , "/ % = Y("% , "/ % = UV(&("% % − UV&("%W% ∙ (&("/ % − UV&("%W%W = UV&("% %&("/ %W = = UVE{/^ v("% %v("/ %W = E{/^ Y("% , "/ % = }
Siccome valgono tutte le relative proprietà, il segnale di uscita è ancora un processo stazionario, ed in particolare si tratta ancora di un rumore bianco.
v (^) t(N%
In sostanza quindi, nel caso in analisi, si ottiene ancora un processo stazionario, ma in questo caso non si tratta di un rumore bianco, perché la covarianza non si annulla nei valori ±1. Diciamo in questi casi che il processo in analisi è un rumore colorato.
Y#Z% = ~
0 DV Z = ±q, q > 1
Un processo di questo tipo è noto con il nome di processo MA(1) , dove l’acronimo MA sta per Moving Average , ovvero media mobile. Il nome è giustificato dal fatto che in sostanza il processo in uscita viene costruito calcolando la media dei 2 precedenti valori, sempre utilizzando gli stessi 2 coefficienti. Il caso generale: processo MA(n) Procedendo in maniera analoga, il processo MA(n), ottenuto con un sistema del tipo: &("% = E{ v("% + E% v(" − 1% + ⋯ + E; v(" − 1%, E{ , E% , … , E; ∈ ℝ Sarà ancora un processo casuale stazionario, con: UV&("%W = 0 XdeV&("%W = VE{/^ + E%/^ + ⋯ + E;/^ WA/ e sarà nuovamente un rumore colorato. In particolare, la sua funzione di covarianza sarà del tipo: Y(0% = VE{/^ + E%/^ + ⋯ + E;/^ WA/ Y(±1% = VE{ E% + E% E/ + ⋯ + E;% E; WA/ Y(±2% = VE{ E/ + E% Ef + ⋯ + E;/ E; WA/ … Y(±1% = E{ E; A/ Y(±q% = 0, q > 1 Possiamo ora provare a calcolare la funzione di trasferimento di un generico processo MA(n): &("% = E{ v("% + E% N _%^ v("% + ⋯ + E; N _;^ v("% &("% = (E{ + E% N _%^ + ⋯ + E; N _;^ %v("%
g(N% =
v("% = E{^ + E%^ N^
Osserviamo che si tratta di una funzione di trasferimento lineare, perciò potremo calcolarne zeri e poli; gli 1 poli saranno tutti coincidenti e posizionati nell’origine, mentre la posizione degli zeri dipende chiaramente dai valori che si attribuiscono ai vari coefficienti E{ , E% , … , E;. Il processo MA( ∞ ) Consideriamo ora ciò che accade se, anziché considerare un segnale che sia dato dalla media pesata tra i valori assunti dall’ingresso v negli ultimi 1 istanti (dove 1 è un numero finito), consideriamo il caso in cui il segnale d’uscita sia la combinazione lineare di v valutato in un numero infinito di istanti del passato: &("% = E{ v("% + E% v(" − 1% + ⋯ + E;_% v(" − 1% + E; v(" − 1% + E;b% v(" − 1 − 1% + ⋯ Avremo allora: Y(0% = VE{/^ + E%/^ + ⋯ + E;/^ + ⋯ WA/ Allora, affinché Y(0% sia una quantità finita, è necessario che sia finita la serie:
E{/^ + E%/^ + ⋯ =? E@/
bc
@B{ In tale ipotesi, Y sarà finita in ogni suo punto: sappiamo infatti che: |Y#Z%| ≤ Y#0% Perciò è sufficiente verificare che la covarianza sia finita per Z = 0.
Possiamo così concludere che, se |>% | < 1, allora il processo AR(1) è equivalente ad un processo MA(∞) ben definito, e perciò è stazionario, perché abbiamo già dimostrato che tutti i processi MA sono stazionari. La varianza del processo AR(1) può essere calcolata utilizzando la formula data per i processi MA(∞):
f>j81#$%9 = Y#0% = 8E{(^ + E%(^ + ⋯ + E;(^ + ⋯ 9'(^ = É? >%(@
bc
@B{
Inoltre, possiamo valutare la funzione di covarianza nei restanti punti:
Y#1% = #E{ E% + E% E( + ⋯ %'(^ = L>% + >%k^ + >%Ö^ + ⋯ M'(^ = >% É? >%(@
bc
@B{
bc
@B{
In maniera del tutto analoga:
Y#2% = #E{ E( + E% Ek + ⋯ %'(^ = #>%(^ + >%Ü^ + >%á^ + ⋯ %'(^ = >%(^ É? >%(@
bc
@B{
bc
@B{
E così via. Si ottiene così:
Y#Z% = >%a^ Y#0% =
%a
Da un punto di vista grafico allora la funzione di covarianza sarà rappresentata da un esponenziale negativo simmetrico a tempo discreto:
Come mostra la figura a destra, nel caso >% < 0, il segnale generato oscilla visivamente in modo molto più significativo. Con il termine segnale generato si intende quello che, in maniera più rigorosa, dovrebbe essere chiamato realizzazione del processo , ovvero l’insieme dei valori che il processo realmente assume se lo si osserva. In sostanza, considerare una realizzazione di un processo significa fissare un certo valore di S, che ricordiamo essere la variabile che indica l’esito dell’esperimento casuale: 1#$%^ dovrebbe infatti essere espresso come 1#$, S%. Diciamo allora che:
Analisi del processo AR(1) – secondo metodo: la lunga divisione La stessa analisi può in realtà essere condotta in maniera diversa, adottando cioè un punto di vista differente. L’obiettivo è ancora quello di esprimere la funzione di trasferimento nella forma: t#X% = E{ + E% X _%^ + E( X _(^ + ⋯ Per ottenere tale risultato, possiamo eseguire la lunga divisione tra il numeratore e il denominatore di:
t#X% =
La lunga divisione si esegue come di seguito mostrato: X X − >% N −>% 1 + >%N_%
% % −>%^ /N_% %^ /N_% E così via. Al primo passo otteniamo allora:
t(N% = 1 +
Al secondo passo, otteniamo:
t(N% = 1 + >% N _%^ +
Cioè, ad ogni passo indichiamo il risultato della divisione, cui si somma il resto diviso per il denominatore della funzione di trasferimento iniziale. Il procedimento viene iterato all’infinito, e si ottiene, se |>% | < 1: t#X% = 1 + >% X _%^ + >%(^ X _(^ + ⋯ Che equivale alla funzione di trasferimento di un processo MA(∞), a patto di porre E@ = >%@^ : t#X% = E{ + E% X _%^ + E( X _(^ + ⋯ Analisi del processo AR(1) – terzo metodo: le equazioni di Yule-Walker Un terzo metodo di analisi è quello che prevede di ricorrere all’uso delle equazioni di Yule-Walker:
(
. = 78â>% 1#$ − 1% + v#$%ä^ (^ 9 = 78>%(^1 (^ #$ − 1% + v (^ #$% + 2>% 1#$ − 1%v#$%9 = = >%(^781 (^ #$ − 1%9 + 78v (^ #$%9 + 2>% 781#$ − 1%v#$%9 = >%(^ f>j81#$ − 1%9 + '(^ + 2>% UV&(" − 1%v("%W Dove UV&(" − 1%v("%W è la correlazione tra &(" − 1% e v("%. Come è evidente dall’equazione che descrive &("%, &("%^ dipende da &(" − 1%^ e da v("%; a sua volta, &(" − 1%^ dipende da &(" − 2%^ e v(" − 1%, e così via. Possiamo allora affermare che &("% dipende dal passato di v(∙% fino all’istante ", mentre &(" − 1%^ dipende dal passato di v(∙%^ fino a " − 1. Se però v(∙% è un rumore bianco, allora v("% è incorrelato con tutti i valori precedenti, e perciò anche con &(" − 1%. Ne ricaviamo allora: Y(0% = >%/^ X>jV&(" − 1%W + A/ Inoltre, siccome &(∙% è un processo stazionario: X>jV&(" − 1%W = X>jV&("%W = Y(0% Perciò:
Y(0% = >%/^ Y(0% + A/^ → Y(0% =