• No results found

identificazione

N/A
N/A
Protected

Academic year: 2021

Share "identificazione"

Copied!
120
0
0

Loading.... (view fulltext now)

Full text

(1)

Filtraggio e Identificazione

Gianluca Antonelli

2009

Dipartimento di Automazione, Elettromagnetismo, Ingegneria dell’Informazione e Matematica Industriale

Universit`a degli Studi di Cassino

Via G. Di Biasio 43, 03043 Cassino (FR), Italy [email protected]

(2)

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.

(3)

Indice

1 Il problema della stima 6

1.1 Stimatori . . . 6

1.1.1 Caratteristiche degli stimatori . . . 6

1.2 Osservatore di Luenberger . . . 8

1.3 Il filtro di Kalman . . . 13

1.3.1 Aggiornamento temporale . . . 14

1.3.2 Equazioni del filtro di Kalman . . . 15

1.3.3 The Optimum Transient Observer . . . 21

1.3.4 Considerazioni . . . 23

1.3.5 Stabilit`a . . . 23

1.3.6 Bianchezza del processo di innovazione . . . 24

1.3.7 Ortogonalit`a fra stima ed errore . . . 25

1.3.8 Il Filtro di Wiener-Hopf . . . 26

1.3.9 Il Filtro di Kalman esteso . . . 26

1.4 Dualit`a stima-controllo . . . 32

2 Identificazione parametrica 34 2.1 L’approccio sistemistico e l’identificazione dei modelli . . . 34

2.2 Identificazione in linea e fuori linea . . . 35

2.3 Applicazioni . . . 35

2.4 Introduzione alla individuazione dei parametri di un modello dinamico . . . 36

2.5 Modelli per l’identificazione dei sistemi dinamici e delle serie temporali . . . 38

2.5.1 Modelli a errore d’uscita . . . 38

2.5.2 Modelli a errore d’ingresso. . . 38

2.5.3 Modelli a errore d’equazione. . . 38

2.6 Forma predittiva dei modelli per l’identificazione . . . 42

2.7 Minimizzazione dell’errore di predizione . . . 45

2.8 Regressore . . . 45

2.9 Algoritmo a minimi quadrati . . . 46

(4)

2.9.1 Algoritmo a minimi quadrati pesati . . . 49

2.9.2 Media e Covarianza dell’errore di stima . . . 50

2.9.3 Disuguaglianza di Cram´er-Rao . . . 51

2.9.4 Persistente eccitazione . . . 51

2.9.5 Legame fra l’errore e i dati . . . 54

2.10 Algoritmo a Massima Verosimiglianza . . . 57

2.11 Algoritmo di Gauss-Newton . . . 59

2.12 Algoritmo a Minimi Quadrati ricorsivo . . . 59

2.12.1 Algoritmo a minimi quadrati esteso e massima verosimiglianza approssimata 61 2.12.2 Inizializzazione degli algoritmi ricorsivi. . . 63

2.12.3 Persistente eccitazione per gli algoritmi ricorsivi . . . 64

2.12.4 Gestione della covarianza . . . 64

2.13 Cenni sulla identificazione non parametrica . . . 70

2.13.1 Analisi della risposta impulsiva . . . 70

2.13.2 Analisi della correlazione . . . 71

2.13.3 Analisi della risposta in frequenza . . . 72

2.14 Scelta della complessit`a del modello . . . 73

2.14.1 Errore di predizione finale . . . 73

2.14.2 Criterio dell’informazione di Akaike . . . 73

2.14.3 Criterio sulla descrizione a lunghezza minima . . . 74

2.15 Validazione dell’identificazione . . . 74

2.15.1 Differenza fra simulazione e predizione . . . 75

3 Identificazione in pratica 77 3.1 Aspetti pratici per l’identificazione . . . 77

3.1.1 Eliminazione delle componenti continue, derive o componenti stagionali . . 77

3.1.2 Scalatura degli ingressi e delle uscite . . . 78

3.1.3 Scelta del modello . . . 78

3.1.4 Determinazione del ritardo ingresso-uscita . . . 79

3.1.5 Determinazione dell’ordine del sistema . . . 79

3.1.6 Scelta dell’algoritmo . . . 82

3.1.7 Inizializzazione degli algoritmi ricorsivi. . . 82

3.1.8 Validazione . . . 82

3.2 Forno elettrico . . . 82

3.3 Magellan. . . 84

3.4 MIB30 . . . 89

(5)

G. Antonelli - FI (2009) 4

A 97

A.1 GNU Free Documentation License . . . 97

A.2 Cenni storici . . . 102

A.3 La Z trasformata . . . 104

A.4 Segnali aleatori . . . 106

A.5 Polinomi . . . 109

A.6 Matrici. . . 110

A.7 Formula di Ackermann . . . 113

A.8 Simbologia . . . 114

Bibliografia 115

(6)
(7)

Capitolo 1

Il problema della stima

La determinazione di una grandezza incerta `e un problema ricorrente in innumerevoli campi dell’ingegneria e della scienza in generale. Basandosi su misure e modelli matematici si cerca di stimare il valore di una specifica variabile. In questo contesto si far`a riferimento ad un caso particolare: la stima di una grandezza di un sistema dinamico tempo-discreto. `E quindi un segnale (variabile) tempo-variante. Il caso particolare di stima di una grandezza costante di un sistema dinamico (parametro) prende il nome di Identificazione Parametrica e sar`a affrontato nel Capitolo2.

1.1

Stimatori

Sia k ∈ IN la variabile che denota il tempo, dato un insieme di misure d ed una grandezza vettoriale da stimare θ si definisce stimatore quella funzione che associa alle misure una stima ˆ

θ(k) di θ:

ˆ

θ(k) = f (d). (1.1)

La stima di una grandezza tempo-variante `e, ovviamente, funzione del tempo k. Pi`u precisamente, supponendo di avere a disposizione un insieme di N dati, la stima pu`o essere riscritta come ˆθ(k|N), vale a dire la stima al passo k disponendo dei dati fino al passo N . Si distinguono diversi casi:

k > N Problema di predizione, cerco di stimare il valore di una grandezza per istanti futuri;

k = N Problema di filtraggio, utile essenzialmente per stimare grandezze non accessibili alla misura o per ripulire dal rumore di misura;

1 < k < N Problema della interpolazione (smoothing), per filtraggi anticausali dei dati.

1.1.1 Caratteristiche degli stimatori

Definiamo il valor vero della grandezza da stimare come θ◦. Ogni esperimento che fornisce un insieme di dati `e un esperimento casuale. In questo senso, ogni insieme dei dati `e un vettore aleatorio funzione dell’esito s e del valor vero da stimare d = d(s, θ◦). Anche lo stimatore f e la stima ˆθ(k) sono variabili casuali per le quali ha senso parlare di media e varianza.

(8)

Non polarizzazione

Uno stimatore si definisce non polarizzato, o anche corretto o non deviato, se:

E[ˆθ(k)] = θ◦. (1.2)

Lo stimatore non polarizzato, quindi, non presenta nessun errore sistematico di stima.

Minima varianza

Fra due stimatori non polarizzati `e certamente migliore lo stimatore con minore varianza, cio`e lo stimatore con minore dispersione della stima. Poich`e la varianza, nel caso vettoriale, `e una matrice, il confronto fra due stimatori si effettua sulla differenza fra le due matrici. La matrice varianza della stima ˆθ1: V ar[ˆθ1] `e maggiore della matrice varianza della stima ˆθ2: V ar[ˆθ2] se:

V ar[ˆθ1] − V ar[ˆθ2] ≥ O (1.3)

quindi se la loro differenza `e semidefinita positiva.

Si noti che se questa relazione non sussiste non si possono trarre conclusioni sulla grandezza relativa delle varianze. Se, al contrario, `e soddisfatta, gli elementi diagonali della prima sono strettamente maggiori della seconda; questi sono le varianze dei singoli elementi da stimare.

La varianza di uno stimatore `e comunque limitata inferiormente. Intuitivamente `e facile comprendere come la presenza di disturbi nella sorgente dei dati infici la precisione con cui si pu`o stimare la grandezza in esame indipendentemente dalla bont`a dello stimatore (si veda la Sezione2.9.3).

Caratteristiche asintotiche

Si supponga che il valor vero della grandezza da stimare θ◦ sia costante. Se i dati disponibili crescono col tempo ci aspettiamo che il nostro stimatore fornisca risultati sempre migliori, ci aspettiamo cio`e che la sua varianza diminuisca all’aumentare dei dati disponibili:

lim

N→∞V ar[ˆθ(N )] = O. (1.4)

Questo implica la cosiddetta convergenza in media quadratica definita come: lim N→∞E  θˆ(N ) − θ◦ 2 = 0, (1.5)

spesso scritta come

l.i.m.

N → ∞θ(N ) = θˆ

. (1.6)

Poich`e la stima `e funzione di un esito la sua convergenza al crescere dei dati non `e assicurata. Definendo come A l’insieme degli esiti per cui la stima converge al valore vero e S l’insieme degli esiti; si definisce convergenza certa il caso in cui A = S e convergenza quasi certa il caso in cui P (A) = 1 (per cui `e sufficiente che l’insieme S − A abbia misura nulla).

(9)

G. Antonelli - FI (2009) 8 Studiare la caratteristica asintotica di uno stimatore ha senso per θ◦ costante. In questo caso, infatti, l’aumento dei dati dovrebbe portare nuove informazioni utili sulla stessa grandezza. Se θ◦ fosse tempo-variante, θ◦(k), non potremmo pi`u ragionevolmente considerare utili, al passo k, dei dati acquisiti per tempi lontani da k. Si ricorre allora alla richiesta di non divergenza della stima dal valor vero. In formule si richiede che:

E θˆ(k|k − l) − θ◦(k) 2 ≤ c (1.7)

con l e c scalari positivi.

1.2

Osservatore di Luenberger

In questa Sezione verr`a presentato l’osservatore di Luenberger (osservatore asintotico), uno sti-matore dello stato per sistemi lineari. Si far`a il caso di sistemi dinamici tempo-discreti. Il modello di riferimento `e deterministico:



x(k + 1) = Φx(k) + Γ u(k)

y(k) = Hx(k) (1.8)

dove x ∈ IRn`e lo stato, y ∈ IRm sono le uscite, u ∈ IRp gli ingressi e le matrici sono di dimensione opportuna: Φ ∈ IRn×n, Γ ∈ IRn×p, e H ∈ IRm×n.

La grandezza da stimare x(k) `e lo stato del sistema, `e quindi tempo-variante. Il motivo per cui si ricorre alla stima `e che spesso non tutti gli stati sono fisicamente accessibili, oppure il costo per l’aggiunta di un ulteriore trasduttore vuole essere risparmiato. Nel caso in cui lo stato sia misurabile ma affetto da molto rumore, la stima tramite osservatore rappresenta una sorta di filtraggio dello stato stesso.

Si costruisca un sistema lineare stazionario:

w(k + 1) = F w(k) + Bu(k) + Gy(k), (1.9)

si vuole che: 

limk→∞kx − wk = 0

∀u, ∀x(0), ∀w(0). (1.10)

L’uscita dell’osservatore, dopo un transitorio, deve convergere numericamente al valore dello stato. Poich`e lo stato `e tempo-variante la loro differenza si manterr`a limitata nel tempo. Questo deve valere per ogni ingresso e per ogni stato iniziale sia dell’osservatore che del sistema dinamico (in generale x(0) non `e noto). In Figura1.1uno schema dell’osservatore.

Si definisca un errore, e(k) = x(k) − w(k), e se ne calcoli la dinamica:

e(k + 1) = x(k + 1) − w(k + 1) = Φx(k) + Γ u(k) − F w(k) − Bu(k) − Gy(k), (1.11) affinch`e sia indipendente dall’ingresso `e necessario che sia B = Γ . Si noti come questa posizione sia stringente, `e richiesta la conoscenza esatta dell’influenza dell’ingresso sul sistema per poterla compensare esattamente. Si ottiene quindi:

(10)

u y G B obs w x

Figura 1.1: Schema dell’osservatore di Luenberger.

Si sceglie F tale da fornire un sistema omogeneo:

F = Φ − GH (1.13)

in questo modo la dinamica dell’errore `e caratterizzata dell’equazione:

e(k + 1) = F e(k) (1.14)

ossia dall’evoluzione:

e(k) = Fke(0). (1.15)

Si deve quindi richiedere che gli autovalori della matrice dinamica F siano tutti all’interno del cerchio di raggio unitario per garantire che l’errore converga a zero.

I gradi di libert`a del progettista sono G e F . Si potrebbe pensare di prendere G = O e F = Φ. Questa soluzione ha due inconvenienti fondamentali, pu`o essere utilizzata solo per sistemi stabili e l’evoluzione dell’errore dell’osservatore evolve con la stessa dinamica del sistema da osservare. Questo significa che, a causa dei differenti stati iniziali, i valori dell’osservatore diventano utili quando il transitorio del sistema si `e estinto.

Il procedimento da seguire `e quello di assegnare gli autovalori di F , che equivale ad assegnare l’evoluzione dell’errore. Esistono infinite matrici caratterizzate dagli stessi autovalori, quindi assegnare gli autovalori di F non significa averne vincolato tutti gli elementi. Si calcola poi G e da questa si determina univocamente F . Nel dettaglio, si assegnano gli n autovalori desiderati λd,i tutti all’interno del cerchio di raggio unitario:

λd= {λd,1, . . . , λd,n} . (1.16) da questi si ricavano i coefficienti del polinomio caratteristico desiderato:

n Y i=1

(λ − λd,i) = λn+ d1λn−1+ . . . + dn. (1.17) A questo punto `e fissato il polinomio caratteristico che `e dato da:

(11)

G. Antonelli - FI (2009) 10 in cui si hanno come incognite gli elementi della matrice G. Supponendo di assegnare lo stesso polinomio caratteristico per tutte le uscite, tramite il principio di identit`a dei polinomi, si potrebbe pensare di ricavare i Gi,i tramite un sistema di equazioni di dimensioni opportune. In realt`a ci`o non `e in generale possibile, le incognite, infatti, dopo l’operazione di calcolo del determinante compaiono in forma nonlineare e la risoluzione del sistema sarebbe estremamente complessa.

`

E possibile utilizzare una formula, nota come formula di Ackermann, la cui derivazione pu`o essere trovata in AppendiceA.7. Nel seguito, per semplicit`a di notazione, si far`a riferimento ad un sistema con una uscita scalare, le matrici H e G, quindi, sono vettori riga o colonna e verranno rispettivamente indicate con i simboli h e g.

Si calcoli il polinomio caratteristico della matrice dinamica del sistema Φ dato da:

|λI − Φ| = λn+ a1λn−1+ . . . + an. (1.19) Si calcoli la matrice: T =hhT ΦThT . . . ΦTn−1hT i       an−1 an−2 . . . a1 1 an−2 an−3 . . . 1 0 . . . . . . . . 1 0 . . . 0 0       , (1.20)

della quale `e necessario verificarne il rango pieno, che si riduce a verificare il rango della prima matrice che `e proprio la trasposta della matrice di osservabilit`a del sistema (dettagli in A.7). Definendo

d = dn . . . d1T a = an . . . a1

T

`e possibile scrivere la formula di Ackermann:

g= −T -T (a − d) . (1.21)

Questo determina univocamente l’incognita g, sostituendola nella (1.13) si ottiene la matrice F.

Esempio : nonlinearit`a degli elementi Gi,i

Data la matrice dinamica Φ ∈ IR3×3:

Φ=   .6 .2 .3 .1 .7 .2 0 .2 .7  

e la matrice delle uscite H ∈ IR2×3:

H=  1 0 0 0 1 0  ,

(12)

la matrice G cercata ha dimensioni 3 × 2: G=   G1,1 G1,2 G2,1 G2,2 G3,1 G3,2  .

Calcolando l’espressione del polinomio caratteristico per l’osservatore (1.18), si ottiene il polinomio del terzo ordine:

λ3+ (−2 − G2,2− G1,1)λ2+

(−0.3G3,1− 0.1G1,2− 0.2G3,2− 0.2G2,1+ 1.4G1,1− G2,1G1,2+ 1.27 + 1.3G2,2+ G1,1G2,2)λ +

−0.45G1,1+ 0.07G1,2+ 0.08G2,1− 0.42G2,2+ 0.17G3,1+ 0.09G3,2− 0.2G3,1G1,2+

+0.2G1,1G3,2+ 0.3G3,1G2,2+ 0.7G2,1G1,2− 0.7G1,1G2,2− 0.262 − 0.3G2,1G3,2

in cui compaiono i prodotti delle 6 incognite Gi,i. Questa espressione, ovviamente non-lineare,

non pu`o essere facilmente, e sistematicamente, trattata tramite il principio di identit`a dei polinomi

per poter assegnare gli autovalori desiderati dell’osservatore in eq. (1.17).

♦ Scelta degli autovalori di F

Ci`o che si richiede ad un osservatore `e di convergere il pi`u velocemente possibile al valore dello stato. Non ci sono limiti teorici nella scelta della posizione degli autovalori ne energetici, consi-derando che l’osservatore `e un emulatore, implementato al calcolatore, del sistema reale. I limiti sono dovuti alla inevitabile presenza di rumore sulla misura.

Osservatore ridotto

La formulazione appena fornita dell’osservatore prevede di stimare tutto lo stato. Nel caso in cui parte dello stato sia accessibile `e possibile partizionare il vettore di stato ed implementare i risultati ottenuti a sottoinsiemi del sistema originario [9].

(xxx estendere guardando anche appunti zanasi)

Riformulazione in termini di retroazione

L’equazione (1.9), alla luce della (1.13) pu`o essere riscritta come:

w(k + 1) = Φw(k) + Bu(k) + G (y(k) − Hw(k)) , (1.22) che mette in evidenza come l’osservatore sia costituito da una componente che emula il pro-cesso pi`u una retroazione, pesata tramite G, sull’uscita misurabile per ipotesi. In molti testi l’osservatore viene presentato direttamente in questa forma. xxx schema a blocchi.

Sulla conoscenza del modello

L’implementazione di un buon osservatore richiede un’accurata conoscenza del modello matema-tico. La procedura di progetto dell’osservatore, infatti, si basa sulla compensazione degli ingressi

(13)

G. Antonelli - FI (2009) 12 e sulla conoscenza delle matrici dinamiche e di uscita del sistema al fine di ottenere un sistema omogeneo nell’errore. La conoscenza inesatta di queste matrici ha come conseguenza l’immissione di disturbi nella dinamica dell’errore. In pratica, quindi, l’errore non converge esattamente a zero per le inaccuratezze parametriche, le dinamiche non modellate e gli errori di misura. Apparente-mente, quindi, sembra di non ritrovare le propriet`a di robustezza ed insensibilit`a alle variazioni parametriche tipiche della retroazione, si noti per`o che il sistema utilizza una combinazione linea-re dello stato (l’uscita) per estrarne informazioni e che la compensazione degli inglinea-ressi `e fatta a ciclo aperto.

In dettaglio, si consideri l’evoluzione dell’errore:

e(k + 1) = (Φ − GH) x(k) − F w(k),

in cui la matrice B non compensa perfettamente Γ e la conoscenza di Φ `e soggetta ad un errore, mentre supporremo H noto:

F = Φˆ − GH = Φ − ˜Φ− GH B = Γˆ = Γ − ˜Γ

l’evoluzione dell’errore `e quindi determinata dall’equazione:

e(k + 1) = F e(k) + ˜Φw(k) + ˜Γ u(k).

Procedura operativa

I passi per la progettazione di un osservatore asintotico sono:

1. si verifica la osservabilit`a del sistema ed eventualmente si trasforma in forma canonica di osservabilit`a, impostando poi il progetto per il sottospazio osservabile;

2. porre B = Γ ;

3. determinare gli autovalori desiderati assegnando il vettore d; 4. calcolare la matrice di trasformazione lineare T tramite la (1.20); 5. calcolare g tramite la (1.21);

6. calcolare F tramite la (1.13).

Esempio : stima della corrente in un ramo di un circuito RLC xxx

(14)

1.3

Il filtro di Kalman

Dato il modello discreto:



x(k + 1) = Φx(k) + Γ u(k) + Γ1w(k)

y(k) = Hx(k) + v(k) (1.23)

dove x ∈ IRn`e lo stato, y ∈ IRmsono le uscite, u ∈ IRpgli ingressi, w ∈ IRq il rumore di processo, v ∈ IRm il rumore di misura, le matrici sono di dimensione opportuna: Φ ∈ IRn×n, Γ ∈ IRn×p, Γ1 ∈ IRn×q e H ∈ IRm×n. I rumori sono considerati a media nulla, incorrelati fra loro e con lo stato e di covarianza nota,

E[w(k)] = 0 E[v(k)] = 0

E[w(i)wT(j)] = Rwδ(i − j) E[v(i)vT(j)] = Rvδ(i − j)

E[wh(i)vlT(j)] = 0 per ogni i, j, h, l E[xh(i)vlT(j)] = 0 per ogni i, j, h, l.

Supponendo accessibili le sole uscite si vuole trovare uno stimatore ottimo dello stato. (xxx rappresentazione schematica delle ipotesi, kailath pg 311).

Si definisce ˆx(k) la stima dello stato all’istante k usando i dati fino all’istante k e x(k) la stima dello stato all’istante k usando i dati fino all’istante k − 1. Si noti che ˆx(k − 1) 6= x(k). Si veda la Figura1.2 per una rappresentazione grafica delle grandezze definite.

k P(k) ˆ x(k) aggiorn. temporale k + 1 M(k + 1) x(k + 1) P(k + 1) ˆ x(k + 1)

Figura 1.2: Diagramma temporale del filtro di Kalman.

Si definisca P (k) la stima della covarianza dell’errore al passo k ottenuta utilizzando i dati fino al passo k: P (k) = E[˜x(k)˜xT(k)], con ˜x(k) = x(k) − ˆx(k). Si introduca una stima della covarianza dell’errore al passo k ottenuta utilizzando i dati fino al passo k − 1. Definiamo questa stima M (k). Si crea cos`ı un legame analogo a quello che esiste fra x(k) e ˆx(k) (Figura 1.2).

Si supponga di disporre di una stima dello stato all’istante k senza aver ancora utilizzato i dati correnti. Per definizione questa stima `e indicata con x(k). Il problema diventa l’aggiornamento di questa stima basandosi sulla misura all’istante k dato il modello in (1.23).

Osservando l’equazione di uscita del modello si osserva come il legame che sussite fra la misura y(k) e il vettore da stimare x(k) `e lo stesso che si ottiene nel caso del problema dell’identificazione.

(15)

G. Antonelli - FI (2009) 14 La differenza `e che in questo caso, essendo lo stato tempo-variante, non `e possibile utilizzare la formula a lotti ma solo quella ricorsiva:

ˆ

x(k) = x(k) + L(k) [y(k) − Hx(k)] . (1.24) dove

L(k) = M (k)HTRv+ HM (k)HT−1. (1.25) L’equazione (2.95) viene corrispondentemente modificata in:

P(k) = M (k) − L(k)HM(k). (1.26)

1.3.1 Aggiornamento temporale

Si consideri il caso in cui le misure siano disponibili ad una frequenza minore rispetto a quella di monitoraggio dello stato stesso. Si pu`o pensare di aggiornare la stima, in attesa della successiva misura, sulla base della conoscenza del modello stesso. Questa intuizione, nota come modifica di S.F. Schmidt, si traduce in due equazioni di aggiornamento per lo stato e la stima della covarianza dell’errore di stima.

Il valore di x(k +1) viene quindi calcolato partendo da ˆx(k) e conoscendo la dinamica in (1.23). Poich`e il rumore w(k) ha media nulla si ottiene:

x(k + 1) = Φˆx(k) + Γ u(k). (1.27)

Si noti che l’eq. (1.27) `e definita aggiornamento temporale in contrapposizione all’eq. (1.24), definita aggiornamento di misura.

Poich`e: P(k) = E[(x(k) − ˆx(k))(x(k) − ˆx(k))T] (1.28) calcoliamo M(k + 1) = E[(x(k + 1) − x(k + 1))(x(k + 1) − x(k + 1))T], (1.29) sapendo che x(k + 1) − x(k + 1) = Φ(x(k) − ˆx(k)) + Γ1w(k) (1.30) e che v e w sono incorrelati fra loro cos`ı come x e w si ottiene:

M(k + 1) = E[Φ(x(k) − ˆx(k))(x(k) − ˆx(k))TΦT+ Γ1w(k)w(k)TΓT1], (1.31) che fornisce l’equazione cercata:

M(k + 1) = ΦP (k)ΦT+ Γ1RwΓT1. (1.32) Come per la stima, l’eq. (1.32) `e definita aggiornamento temporale della covarianza mentre l’eq. (1.26) `e definita aggiornamento di misura della covarianza.

L’uso delle due equazioni di aggiornamento temporale ha senso anche in caso di uguale fre-quenza di misura e monitoraggio.

(16)

1.3.2 Equazioni del filtro di Kalman

Il filtro `e quindi dato dall’implementazione delle equazioni (1.24), (1.25), (1.26), (1.27) e (1.32) che vengono qui riportate e sono definite, rispettivamente, guadagno, aggiornamento di misura della stima, aggiornamento di misura della covarianza, aggiornamento temporale della stima e aggiornamento temporale della covarianza:

L(k) = M (k)HTRv+ HM (k)HT−1 (1.33) ˆ x(k) = x(k) + L(k) [y(k) − Hx(k)] (1.34) P(k) = M (k) − L(k)HM(k) (1.35) x(k + 1) = Φˆx(k) + Γ u(k) (1.36) M(k + 1) = ΦP (k)ΦT+ Γ1RwΓT1 (1.37) in cui x(0) e M (0) sono note e costituiscono una stima iniziale delle grandezze corrispondenti. Il corrispondente schema a blocchi `e riportato in Figura1.3.

u(k) Γ + + + 1 z x(k) H + + y(k) + − L(k) + + Φ + + Γ1w(k) v(k) Φ 1 z x(k) H ˆ x(k)

Figura 1.3: Schema a blocchi del filtro di Kalman.

Si noti, inoltre, come la misura non entri nella dinamica delle matrici di covarianza dell’errore di stima (schema a blocchi da gelb xxx).

Formulazione alternativa della matrice dei guadagni

Si consideri la seguente espressione per l’aggiornamento temporale della covarianza (per dettagli si veda la sezione2.12):

P(k)−1= M (k)−1+ HTR−1v H (1.38) e si riscriva il guadagno come:

L(k) = P(k)P (k)−1M(k)HTRv+ HM (k)HT −1 = P (k) M (k)−1+ HTR−1v HM(k)HTRv+ HM (k)HT −1 = P (k)HT I+ R−1v HM(k)HT   Rv+ HM (k)HT −1 (1.39) da cui si ricava infine

L(k) = P (k)HTR−1v (1.40)

(17)

G. Antonelli - FI (2009) 16 Influenza delle covarianze di rumore sulla dinamica della stima

Nel filtro di Kalman si devono fornire due matrici di covarianza, rispettivamente sul rumore d’uscita e quello dello stato. La matrice Rvha spesso una chiara interpretazione fisica, rappresenta il rumore dei sensori associati alla uscita. Nel caso di pi`u uscite incorrelate fra loro Rv `e una matrice diagonale contenente le covarianze di rumore dei differenti sensori.

La stessa cosa non pu`o dirsi per Rw. Il filtro di Kalman viene spesso utilizzato per stimare lo stato che quindi `e non misurabile. In questo caso, non avendo ulteriori informazioni, si potrebbe pensare di porre Rw = O. Analizziamone le conseguenze: la matrice M (k), supposto il sistema stabile, tende ad annullarsi, cos`ı come il guadagno L(k); il filtro, quindi, si troverebbe privo di retroazione ed emulerebbe semplicemente il processo. L’interpretazione `e semplice, l’assenza di Rw significa dire al filtro che il modello matematico `e perfetto, il risultato `e che il filtro considera come stima ottima l’evoluzione del suo stato senza considerare la misura delle uscite che sono affette da rumore.

A valle di queste considerazioni appare evidente come sia necessario fornire una stima, spesso euristica, della matrice Rw. Una buona scelta, in assenza di informazioni ulteriori, `e quella di prendere una matrice diagonale definita positiva; il valore degli elementi, poi, va opportunamente scelto.

Il valore relativo fra Rw e Rv ha quindi un significato ben preciso, fornendo un alto rapporto Rw vs Rv (kRwk >> kRvk) significa tarare il filtro in maniera tale da dare maggior peso alle misure rispetto alla evoluzione dello stato.

Appare chiaro, quindi, che la matrice P (k) `e effettivamente una misura della covarianza della stima dello stato solo se le matrici di covarianza dei rumori sono state ottenute da considerazioni fisiche.

Incidenza delle condizioni iniziali sulla dinamica della stima

Quando si progetta un filtro di Kalman si `e chiamati a fornire una stima dello stato all’istante iniziale e la corrispondente covarianza dell’errore. Lo stato, x(0) `e in genere ricavato in base alla conoscenza del modello oppure posto uguale a zero se nessuna informazione `e accessibile. Il valore di M (0) pu`o significativamente influenzare la dinamica del filtro. Si consideri, inizialmente, di prendere un valore alto di M (0), questo significa affermare che la stima fornita di x(0) `e poco attendibile. Un buon approccio potrebbe essere quello di fornire agli elementi diagonali di M (0) associati a stati misurabili proprio il valore dell’elemento diagonale di Rw corrispondente. Considerazioni intuitive sul guadagno

Per comprendere l’effetto del guadagno si consideri lo stesso nella forma alternativa (1.40):

L(k) = P (k)HTR−1v . (1.40)

Per darne un’interpretazione intuitiva si consideri H = I, vale a dire che tutti gli stati sono misurabili. In questo caso, siano P (k) che Rv sono matrici delle stesse dimensioni. Supponendo inoltre che Rv sia diagonale (non c’`e correlazione fra i diversi rumori di misura) si osserva come il guadagno L(k) sia diagonale e rappresenti il rapporto fra due grandezze statistiche, l’incertezza sulla stima e l’incertezza sulla misura. Precisamente il guadagno `e proporzionale all’incertezza

(18)

sulla stima ed inversamente proporzionale all’incertezza sulla misura. Una piccola incertezza nella stima ed una grande incertezza sulle misure suggeriscono al guadagno di non aggiornare molto la stima corrente, al contrario, una grande incertezza sulla stima ed una piccola incertezza sulle misure suggeriscono che i dati correnti contengano una grande quantit`a di informazione da utilizzare per l’aggiornamento della stima.

Guadagno a regime

Il filtro di Kalman `e caratterizzato da un guadagno L(k) tempo-variante. `E interessante stu-diarne le caratteristiche. Sotto ipotesi di linearit`a, stazionariet`a, osservabilit`a e controllabilit`a, il guadagno tende a regime ad un valore costante a causa del raggiungimento del regime delle matrici P (k) e M (k) (la stima della covarianza dell’errore di stima, quindi, converge ad un valore finito). Ha quindi senso utilizzare direttamente il valore di regime per un evidente risparmio com-putazionale. L’uso di un guadagno costante non deve far pensare che il filtro di Kalman degeneri in un osservatore, il procedimento utilizzato per ricavare i due stimatori `e differente.

Il guadagno assume quindi la forma:

L= MHTRv+ HM∞HT−1 (1.41) dove il pedice ∞ indica il valore di regime della corrispondente matrice.

Per ottenere la matrice M, si sostituisca l’equazione di aggiornamento di misura della cova-rianza (1.26), nell’aggiornamento temporale della covarianza (1.32), facendo tendere ad infinito le matrici (M= P). Si ottiene quindi:

M= ΦMΦT− ΦnMHTRv+ HMHT −1

HMoΦT+ Γ1RwΓT1 (1.42) nota come equazione di Riccati, la cui soluzione non `e banale a causa della sua evidente struttura nonlineare. Esistono delle tecniche numeriche per la risoluzione di questa equazione, si pu`o quindi assumere che, una volta risolta l’equazione di Riccati, sia noto il guadagno a regime Ldel filtro di Kalman.

Questo permette di riscrivere le equazioni del filtro di Kalman nella forma: ˆ

x(k) = x(k) + L[y(k) − Hx(k)]

x(k + 1) = Φˆx(k) + Γ u(k) (1.43)

Legame fra il filtro di Kalman e l’osservatore di Luenberger

L’osservatore di Luenberger suppone di stimare lo stato di un processo deterministico, riferendosi a (1.23), quindi, sono assenti w(k) e v(k). Il filtro di Kalman, ed in generale i predittori, sono utilizzati per stimare lo stato di un sistema dinamico stocastico soddisfacendo dei criteri di ottimo appena descritti. Nell’osservatore il guadagno L `e costante e progettato per fornire all’osservatore stesso uno specifico comportamento dinamico.

(19)

G. Antonelli - FI (2009) 18 Si consideri come esempio il problema di stimare in linea il valore di una costante tramite una sua misura rumorosa. La dinamica di uno scalare, costante, `e data dalla semplice equazione:

x(k + 1) = x(k), in cui la matrice dinamica `e Φ = φ = 1. L’equazione di uscita `e:

y(k) = x(k) + v(k),

in cui H = H = 1 e v(k) `e per ipotesi incorrelato e Gaussiano a media nulla e varianza rv.

Sia assegnata la matrice di covarianza M (0) che si riduce ad uno scalare m(0) = m0`e possibile

calcolare le equazioni di aggiornamento della covarianza dell’errore e del guadagno:

l(k) = m(k)

rv+ m(k)

p(k) = m(k)rv

rv+ m(k)

m(k + 1) = p(k). All’istante iniziale si ha:

l(0) = m0 rv+ m0 p(0) = m0rv rv+ m0 m(1) = p(0), per k = 1 si ottiene: l(1) = m(1) rv+ m(1) = p(0) rv+ p(0) = m0rv r2 v+ m0rv+ m0rv = m0 rv+ 2m0 p(1) = m0rv rv+ 2m0 m(2) = m0rv rv+ 2m0 ,

iterando `e possibile calcolare simbolicamente il guadagno in

l(k) = m0

rv+ (k + 1)m0

= m0/rv

1 + (k + 1)m0/rv

, la stima vale quindi:

ˆ

x(k) = x(k) + m0/rv

1 + (k + 1)m0/rv[y(k) − x(k)] ,

in cui si nota come, al crescere di k, le nuove misure non vengano utilizzate per aggiornare la stima.

Si noti inoltre come il guadagno sia fortemente influenza dal rapporto fra m0 e rv secondo quelle

considerazioni qualitative fatte precedentemente, maggiore `e il rapporto fra m0e rvmaggiore sar`a

il guadagno e quindi la capacit`a del filtro di modificare la stima; il contrario quando m0/rv `e

piccolo, indice di una varianza di misura maggiore della covarianza del rumore di stima.

In questo esempio `e stata fatta l’ipotesi che il modello matematico sia perfetto, e quindi che nessun rumore di processo insista sulla dinamica del sistema, in caso contrario si sarebbe introdotto un segnale w(k), possibilmente Gaussiano a media nulla e di una certa varianza nota, che avrebbe impedito al guadagno di tendere a zero.

(20)

Esempio : Fusione sensoriale

In questo esempio si mostra come sia possibile, tramite l’uso di un filtro di Kalman, fondere l’utilizzo di un INS (Inertial Navigation System) e la misura della posizione via radio.

La misura della posizione tramite un INS, basata essenzialmente sull’integrazione di uno o pi`u accelerometri, `e caratterizzata da una deriva dell’errore. Considerando la misura di posizione come:

pIN S = pt+ δp,

dove pt `e la posizione esatta e δp l’errore dell’INS, `e possibile scrivere le equazioni dell’errore

dell’INS in tempo continuo:

δ ˙p = δv

δ ˙v = δa

δ ˙a = 0

ossia, in forma matriciale:

 δ ˙p δ ˙v δ ˙a  =   0 1 0 0 0 1 0 0 0     δp δv δa  .

Discretizzando con passo di campionamento T si ottiene la matrice dinamica tempo-discreto del sistema dinamico rappresentante l’errore dell’INS:

eFt= I + F t + F2t2 2 =   1 t t2 2 0 1 t 0 0 1  = Φ. Assumendo di porre P(0) = diag{cp(0), cv(0), ca(0)}

l’equazione di aggiornamento temporale della covarianza, al primo campione, fornisce:

M(1) = ΦP (0)ΦT=    cp(0) + cv(0)T 2 2 + ca(0) T4 4 cv(0)T + ca(0) T3 2 ca(0) T2 2 cv(0)T + ca(0)T 3 2 cv(0) + ca(0)T2 ca(0)T ca(0)T 2 2 ca(0)T ca(0)   

che `e simmetrica e definita positiva ma non diagonale, il che mostra come la covarianza dell’errore di posizione sia ora correlato a quello di velocit`a e accelerazione.

In assenza di altri sensori, l’INS fornisce una stima il cui errore diverge secondo una polinomiale

del secondo ordine (Figura1.4). Utilizzando la misura della posizione via radio:

pradio= pt+ ep,

che, pu`o essere inserito nel modello d’errore:

z = pradio− pIN S= pt+ ep− pt− δp,

ossia, in forma matriciale:

z(k) =−1 0 0   δp(k) δv(k) δa(k)  + ep(k),

dove si suppongono gli errori di misura epincorrelati e stazionari, `e invece possibile ridurre questo

errore. Si progetta quindi un filtro di Kalman in cui T = 1 s e si eseguono le misure via radio ogni 30 s.

(21)

G. Antonelli - FI (2009) 20 0 50 100 150 −5 0 5 10 15 20 25 30 35 tempo [s] [m]

Figura 1.4: Errore di posizione utilizzando il solo INS.

I parametri della simulazione sono:

Rv = 10−1

Rw = 10−3I3

M(0) = I3

La figura1.5mostra l’errore di posizone dell’INS e del filtro di Kalman, si nota come l’utilizzo delle

misure di posizone permetta di contenere l’errore di posizione. Fino alla prima misura (t = 30 s), inoltre, l’errore del filtro `e uguale a quello dell’INS.

0 50 100 150 −5 0 5 10 15 20 25 30 35 tempo [s] [m]

Figura 1.5: Errore di posizione utilizzando il solo INS (x) e il filtro di Kalman (o). Il filtro permette anche una ricostruzione ottima della velocit`a, grandezza non direttamente

ac-cessibile alla misura nell’esempio fatto. In figura 1.6 gli errori di velocit`a per l’INS e per il filtro

sono riportati. Si noti come per il filtro tale errore `e limitato mentre per l’INS cresca linearmente con il tempo.

La figura1.7, infine, mostra l’andamento delle tre componenti del guadagno nei 6 istanti di misura.

(22)

0 50 100 150 −0.4 −0.2 0 0.2 0.4 tempo [s] [m/s]

Figura 1.6: Errore di velocit`a utilizzando il solo INS (x) e il filtro di Kalman (o).

1 2 3 4 5 6 0 0.2 0.4 0.6 0.8 1 − −

Figura 1.7: Andamento temporale delle 3 componenti della matrice di guadagno L ∈ IR3. ♦

1.3.3 The Optimum Transient Observer

Una formulazione alternativa del filtro di Kalman, nota come Optimum Transient Observer si ottiene fissando a priori la struttura dell’osservatore e minimizzando la covarianza dell’errore di stima.

Si consideri il modello descritto dall’equazione (1.23): 

x(k + 1) = Φx(k) + Γ u(k) + Γ1w(k)

y(k) = Hx(k) + v(k) (1.23)

Si fissi la seguente struttura dell’osservatore: ˆ

(23)

G. Antonelli - FI (2009) 22 che `e identica a quella del filtro mostrata in (1.3.2).

Si vuole individuare il guadagno L(k) che minimizza la covarianza dell’errore di stima. Si noti come le equazioni relative all’aggiornamento temporale (1.27) e (1.32) siano ancora valide.

Media dell’errore di stima

L’errore di stima dello stato `e definito come: ˜

x(k) = x(k) − ˆx(k), (1.45)

che pu`o essere esplicitato conoscendo la dinamica del sistema ed utilizzando le equazioni di aggiornamento di misura e temporale dello stato:

˜ x(k) = Φx(k − 1) + Γ u(k − 1) + Γ1w(k − 1) − x(k) − L(k) [Hx(k) + v(k) − Hx(k)] = Φ˜x(k − 1) + Γ1w(k − 1) − L(k) [Hx(k) + v(k) − Hx(k)] = Φ˜x(k − 1) + Γ1w(k − 1) + −L(k) [HΦx(k − 1) + HΓ u(k − 1) + HΓ1w(k − 1) + v(k) − HΦˆx(k − 1) − HΓ u(k − 1)] = Φ˜x(k − 1) + Γ1w(k − 1) − L(k)HΦ˜x(k − 1) − L(k)HΓ1w(k − 1) − L(k)v(k). In definitiva, la dinamica dell’errore di stima `e data dell’equazione seguente:

˜

x(k) = (I − L(k)H) Φ˜x(k − 1) + (I − L(k)H) Γ1w(k − 1) − L(k)v(k). (1.46) Applicando l’operatore di valore atteso ad entrambi i membri, portando fuori operatore le variabili deterministiche, si ottiene:

E[˜x(k)] = (I − L(k)H) ΦE[˜x(k − 1)] (1.47) che `e identicamente nullo se si assume ˆx(0) = E[x(0)].

Calcolo del guadagno

Come detto, il calcolo del guadagno dell’osservatore si ottiene minimizzando la covarianza del-l’errore di stima P (k) = E[˜x(k)˜x(k)T]:

E[˜x(k)˜x(k)T] = (I − L(k)H) ΦP (k − 1)ΦT(I − L(k)H)T+

+ (I − L(k)H) Γ1RwΓT1 (I − L(k)H)T+ L(k)RvLT(k) (1.48) che, considerando l’aggiornamento temporale della covarianza (1.32), pu`o essere riscritta come:

E[˜x(k)˜x(k)T] = (I − L(k)H) M (k) (I − L(k)H)T+ L(k)RvLT(k) = M (k) + L(k) Rv+ HM (k)HT



LT(k) − M (k)HTLT(k) − L(k)HM (k). Aggiungendo e sottraendo il termine M (k)HT Rv+ HM (k)HT

−1

HMT(k) l’equazione pre-cedente pu`o essere riscritta come:

E[˜x(k)˜x(k)T] = M (k) + Rv+ HM (k)HT −1

+ A Rv+ HM (k)HT 

(24)

dove

A= L(k) − M(k)HT Rv+ HM (k)HT −1

. (1.50)

Si osservi ora l’espressione (1.49). L’unico termine che dipende dal guadagno `e il termine quadratico in A. Il nucleo di tale termine Rv+ HM (k)HT



, `e definito positivo per ipotesi. Il termine contenente il guadagno quindi, pu`o al massimo essere annullato. Questo `e possibile scegliendo il guadagno stesso:

L(k) = M (k)HT Rv+ HM (k)HT −1

(1.51) espressione identica alla (1.33).

1.3.4 Considerazioni

Si faccia riferimento al modello in eq. (1.23), supponendo di non avere informazioni probabilistiche sui rumori di processo e di misura, la minimizzazione dell’errore quadratico medio dell’equazione di misura fornirebbe ancora la (1.24) con la differenza che la matrice Rv `e ora una matrice di pesi. Assumendo di conoscere le caratteristiche probabilistiche di processo e di misura si potrebbe procedere con il metodo della Massima Verosimiglianza (Maximum Likelihood): ossia scegliere quella stima ˆx(k) che massimizza la probabilit`a delle misure y(k) eseguite conoscendo le propriet`a statistiche di v(k). Si vuole massimizzare p(y|x). Assumendo per v(k) valor atteso nullo e funzione densit`a di probabilit`a Gaussiana si ottiene esattamente lo stesso risultato in (1.24) a meno di interpretare Rv come covarianza del rumore di misura (pg. 103 gelb, verificare eq. 4.0-6).

L’approccio a massima verosimiglianza non fa uso di informazioni probabilistiche di x(k). Un approccio alternativo, in cui si usano tutte le caratterizzazioni stocastiche, `e la stima Bayesiana, in cui si utilizza il teorema di Bayes:

p(x|y) = p(y|x)p(x)p(y) (1.52)

per soddisfare uno specifico criterio di ottimo, es., per ricavare la stima a minima varianza Bayesiana. Sotto semplici ipotesi, questi 3 criteri di stima forniscono risultati uguali [10].

1.3.5 Stabilit`a

Un aspetto importante del filtro di Kalman riguarda il suo comportamento dinamico nel caso in cui le misure siano soppresse. Dalle equazioni del filtro, supponendo assente l’ingresso, `e possibile ricavare la dinamica della stima:

ˆ

x(k) = (Φ − L(k)HΦ) ˆx(k − 1) (1.53) che, anche in condizioni di ottimalit`a del guadagno, non `e garantita essere stabile. `E necessario richiedere delle ipotesi abbastanza stringenti ([10]) sebbene nella maggior parte dei casi pratici il filtro non presenti problemi di stabilit`a.

(25)

G. Antonelli - FI (2009) 24

1.3.6 Bianchezza del processo di innovazione

La grandezza

e(k) = y(k) − H ˆx(k) (1.54)

viene spesso definita come innovazione. La si riscriva come:

e(k) = Hx(k) + v(k) − H ˆx(k) = H ˜x(k) + v(k), (1.55) vogliamo calcolarne la correlazione:

Ee(i)e(j)T = HEx(i)˜˜ x(j)THT | {z } + Ev(i)v(j)T | {z } + HEx(i)v(j)˜ T | {z } + Ev(i)˜x(j)THT | {z } . A B C D

Dalla relazione (1.46) `e noto che: ˜

x(k) = (I − L(k)H) Φ˜x(k − 1) + (I − L(k)H) Γ1w(k − 1) − L(k)v(k). (1.46) Si consideri il caso i > j. Il termine B vale, per ipotesi:

Ev(i)v(j)T= Rvδ(i − j), (1.56) il termine D `e nullo essendo ˜x(j) funzione del rumore di misura v(k) fino all’istante j < i. Al fine di calcolare gli altri due termini si scriva ˜x(i) in funzione di ˜x(j):

˜ x(j + 1) = (I − L(j + 1)H) Φ˜x(j) + (I − L(j + 1)H) Γ1w(j) − L(j + 1)v(j + 1) ˜ x(j + 2) = (I − L(j + 2)H) Φ˜x(j + 1) + (I − L(j + 2)H) Γ1w(j + 1) − L(j + 2)v(j + 2) = (I − L(j + 2)H) Φ (I − L(j + 1)H) Φ˜x(j)+ (I − L(j + 2)H) Φ ((I − L(j + 1)H) Γ1w(j) − L(j + 1)v(j + 1)) + (I − L(j + 2)H) Γ1w(j + 1) − L(j + 2)v(j + 2) . . . . ˜

x(i) = ΦP(i, j)˜x(j) + ζ(i) in cui ΦP(i, j) = (I − L(i)H) Φ · . . . · (I − L(j + 1)H) Φ = j+1 Y l=i (I − L(l)H) Φ (1.57) e ζ(i) ha un espressione simbolicamente leggermente pi`u complessa, in questa sede si vuole evidenziare la dipendenza di ζ(i):

ζ(i) = ζ(w(j), . . . , w(i − 1), v(j + 1), . . . , v(i)). (1.58) Si calcoli ora il termine A utilizzando le espressioni appena ricavate:

HEx(i)˜˜ x(j)THT = HE(ΦP(i, j)˜x(j) + ζ(i)) ˜x(j)THT = HΦP(i, j)E

 ˜

x(j)˜x(j)THT+ HEζ(i)˜x(j)THT = HΦP(i, j)P (j)HT.

Analogamente per il termine C:

HEx(i)v(j)˜ T = HE(ΦP(i, j)˜x(j) + ζ(i)) ˜v(j)T 

(26)

= HΦP(i, j)Ex(j)˜˜ v(j)THT+ HEζ(i)˜v(j)THT = HΦP(i, j) (−L(j)Rv)

che si ottiene sostituendo a ˜x(j) la sua espressione (1.46) ed osservando che ζ(i) e v(j) sono incorrelati.

Sommando i termini ricavati si ottiene:

Ee(i)e(j)T= HΦP(i, j) P (j)HT− L(j)Rv 

+ Rvδ(i − j), (1.59) sapendo che il guadagno pu`o essere espresso nella forma L(j) = P (j)HTR−1v si ottiene facilmente che:

Ee(i)e(j)T= Rvδ(i − j), (1.60) vale a dire la bianchezza del processo di innovazione.

Si noti come, giunti al passaggio (1.59) sia possibile imporre la bianchezza del processo di innovazione e ricavare il guadagno ottimo. In altre parole la bianchezza garantisce che non ci siano informazioni utili nell’errore e(k).

1.3.7 Ortogonalit`a fra stima ed errore

Si vuole verificare la validit`a della seguente relazione

Ex(k)˜ˆ x(k)T= O (1.61)

vale a dire l’ortogonalit`a fra la stima ottima e l’errore.

Si consideri un sistema privo di ingresso e con Γ1 = I, all’istante iniziale si avr`a:

x(1) = Φx(0) + w(0) (1.62)

e una corrispondente stima: ˆ

x(1) = Φˆx(0) + L(1)[y(1) − HΦˆx(0)]

= Φˆx(0) + L(1)[HΦx(0) + Hw(0) + v(1) − HΦˆx(0)]

= Φˆx(0) + L(1)[HΦ˜x(0) + Hw(0) + v(1)] (1.63) ed un errore di stima che, dalla (1.46), `e possibile scrivere come

˜

x(1) = (I − L(1)H) Φ˜x(0) + (I − L(k)H) w(0) − L(1)v(1). Sapendo che Ex(0)˜ˆ x(0)T= O si calcola direttamente:

Ex(1)˜ˆ x(1)T = E[{Φˆx(0) + L(1)[HΦ˜x(0) + Hw(0) + v(1)]} {(I − L(1)H) Φ˜x(0) + (I − L(1)H) w(0) − L(1)v(1)}T] = L(1)HΦP (0)ΦT(I − L(1)H)T+ L(1)HRw(0) (I − L(1)H)T− L(1)RvL(1)T = L(1)HM (1) (I − L(1)H)T− L(1)RvL(1)T = L(1)HM(1) (I − L(1)H)T− RvL(1)T  = L(1) HP (1) − RvLT(1) = O (1.64)

in cui si `e fatto uso della formulazione alternativa per il guadagno. Per induzione si generalizza al campione k esimo.

(27)

G. Antonelli - FI (2009) 26

1.3.8 Il Filtro di Wiener-Hopf

Il primo tentativo di stimare una grandezza a partire da un insieme di osservazioni risale agli inizi del 1800 con Gauss che comincia ad utilizzare la tecnica dei Minimi Quadrati deterministici. Agli inizi del 1900 Fisher, introducendo concetti probabilistici, propone l’approccio a Massima Verosimiglianza. Verso il 1940 Wiener studia l’implementazione di filtri ottimi nel dominio della frequenza affrontando il problema nel tempo-continuo per processi stazionari a regime. Verso il 1960 il lavoro di Kalman estende il risultato di Wiener che pu`o essere considerato come un caso particolare del filtro di Kalman. Dai primi sforzi di Gauss al filtro di Kalman `e possibile individuare molte similitudini. Gauss riconosce implicitamente concetti quali la ridondanza dei dati per eliminare il rumore di misura, la necessit`a di un ingresso eccitante, si avvicina a concetti quali l’osservabilit`a del sistema. Kalman pu`o essere infatti considerato come la versione ricorsiva del lavoro di Gauss [10].

Si riscrivano le equazioni del filtro di Kalman a regime considerando, per semplicit`a, l’assenza di ingresso:

ˆ

x(k) = x(k) + L[y(k) − Hx(k)] x(k + 1) = Φˆx(k)

queste possono essere riscritte come:

x(k + 1) = Φ {x(k) + L[y(k) − Hx(k)]} (1.65) ossia:

x(k + 1) − Φx(k) + ΦLHx(k) = ΦLy(k) (1.66) che, Z-trasformando, fornisce:

X(z) = (zI − Φ + ΦLH)−1ΦLY(z) (1.67) che nel caso scalare diventa:

X(z) = f l∞ z − f(1 − l∞h)

Y (z) (1.68)

Si noti come in alcuni testi questo approccio `e noto come Kolmogorov-Wiener invece di Wiener-Hopf. Si ribadiscono le differenze rispetto al risultato di Kalman. Wiener `e applicabile a sistemi ingresso-uscita stazionari e stabili, Kalman a sistemi ingresso-stato-uscita tempo-varianti e non necessariamente stabili.

1.3.9 Il Filtro di Kalman esteso

Il Filtro di Kalman esteso (EKF, Extended Kalman Filter) si applica ai sistemi nonlineari o ai sistemi dinamici in cui si voglia identificare uno o pi`u parametri incogniti.

Si consideri il modello 

x(k + 1) = f (x(k), k) + Γ u(k) + Γ1w(k)

y(k) = h(x(k), k) + v(k) . (1.69)

Si definiscano le due matrici:      ˆ Φ(k) = ∂f(xx(k),k) x= ˆx(k) ˆ H(k) = ∂h(xx(k),k) x= ˆx(k) (1.70)

(28)

che vengono utilizzate per il calcolo della matrice di covarianza e del guadagno. La stima ottima `e quindi fornita dalle equazioni:

L(k) = M (k) ˆH(k)ThRv+ ˆH(k)M (k) ˆH(k)T i−1 (1.71) ˆ x(k) = x(k) + L(k) [y(k) − h(x(k), k)] (1.72) P(k) = M (k) − L(k) ˆH(k)M (k) (1.73) x(k + 1) = f (ˆx(k), k) + Γ u(k) (1.74) M(k + 1) = Φ(k)P (k) ˆˆ Φ(k)T+ Γ1RwΓT1. (1.75) Si osservi come ora non sia possibile calcolare il guadagno a regime ma sia necessario calcolarlo istante per istante, le matrici dinamiche del modello lineare, infatti, sono calcolate sulla base della conoscenza di ˆx(k).

Il Filtro di Kalman esteso pu`o anche essere utilizzato per stimare il valore di un parametro costante del modello fisico. Si definisca con θ un vettore di parametri incerti del modello. Il modello (1.69) diventa



x(k + 1) = f (x(k), θ, k) + Γ u(k) + Γ1w(k)

y(k) = h(x(k), θ, k) + v(k) (1.76)

in cui si `e evidenziata la dipendenza (nonlineare) dalle variabili incerte. L’idea `e quella di consi-derare tali parametri, costanti, come ulteriori stati del sistema caratterizzati dall’avere dinamica nulla:

θ(k + 1) = θ(k). (1.77)

Definendo il vettore degli stati esteso:

xE =  x θ  (1.78) si ottiene il modello:  xE(k + 1) = fE(xE(k), k) + ΓEu(k) + ΓE,1wE(k) y(k) = h(xE(k), k) + v(k) (1.79)

in cui, oltre ovviamente ad fE e ΓE si `e modificato anche la matrice ΓE,1 come: ΓE,1=  Γ1 O O I  (1.80) e wE =  w wθ  . (1.81)

Si noti come, l’aggiunta di un rumore wθ (bianco, di covarianza Rθ) alla dinamica costante dei parametri significa dare incertezza al valore stesso del parametro e quindi ammettere una sua variazione nel filtro stesso. L’aspetto critico del filtro di Kalman esteso `e proprio nella scelta dei valori delle covarianze.

Sul modello (1.79) si progetta poi un filtro di Kalman esteso come in (1.71)–(1.75).

Il filtro di Kalman esteso fu originariamente sviluppato calcolando le matrici linearizzate ri-spetto alla traiettoria nominale (e non alla stima al passo precedente). Date le condizioni iniziali,

(29)

G. Antonelli - FI (2009) 28 infatti, le equazioni dinamiche possono essere integrate e fornire l’evoluzione nel tempo dello sta-to del sistema. In un cersta-to senso, `e come se, utilizzando la traietsta-toria nominale, si progetti un filtro a ciclo aperto laddove, utilizzando la stima precedente, si retroazioni l’informazione utile. `

E anche possibile dimostrare come, in alcuni casi, l’errore del filtro di Kalman esteso progettato sulla traiettoria nominale risulti eccessivo per ogni applicazione pratica. L’utilizzo della stima corrente per linearizzare fu proposto ancora da S.F. Schmidt alla NASA durante gli studi per il progetto di atterraggio della navetta spaziale Apollo.

Esempio

Le equazioni cinematiche di un robot mobile caratterizzato da una cinematica di tipo uniciclo sono:    ˙x = v cos θ ˙y = v sin θ ˙θ = ω (1.82)

dove x e y sono le coordinate della posizione del veicolo in terna inerziale, θ `e l’orientamento di una terna solidale al veicolo rispetto ad una terna inerziale, v e ω sono, rispettivamente, la velocit`a lineare ed angolare del veicolo espresse in terna solidale. Supponendo di misurare le velocit`a di rotazione delle ruote e di risalire, da queste, a v ed ω, si vuole stimare la posizione e l’orientamento del veicolo.

Le stesse equazioni, in tempo discreto, sono fornite da: 

 

x(k + 1) = x(k) + T v(k) cos θ(k) y(k + 1) = y(k) + T v(k) sin θ(k) θ(k + 1) = θ(k) + T ω(k)

(1.83) dove T `e il tempo di campionamento. La semplice integrazione di queste equazioni fornisce una stima caratterizzata da una deriva numerica.

Si pu`o pensare di utilizzare un ulteriore sensore per misurare una stima di posizione, si pensi,

ad esempio, all’utilizzo di una bussola per conoscere l’orientamento assoluto del veicolo θ(k). Si avrebbe:

H=0 0 1 (1.84)

che indica che la nostra sola misura `e il terzo elemento dello stato. La linearizzazione della dinamica fornisce: ˆ Φ(k) = ∂f (x(k), k) ∂x x= ˆx(k) =   1 0 −T v(k) sin ˆθ(k) 0 1 T v(k) cos ˆθ(k) 0 0 1  . (1.85)

Ponendo P (0) = diag{px, py, pθ} e Rv= rv, si ottiene una matrice dei guadagni:

L(k) =    − pθ rv+ pθT v(k) sin ˆθ(k) pθ rv+ pθT v(k) cos ˆθ(k) pθ rv+ pθ    . (1.86)

che mostra come, evidentemente, non si raggiunga un regime per le prime due componenti.

La figura 1.8 mostra l’andamento temporale dello stato del veicolo soggetto ad un ingresso v, ω

sinusoidale e lo stato ricostruito per semplice integrazione con T = 0.1 s. `E possibile notare come

ci sia una deriva numerica sulla stima dello stato.

Supponendo di misurare l’orientamento ogni 5 s e di impostare un filtro di Kalman esteso con i guadagni:

(30)

0 20 40 60 80 −4 −2 0 2 4 tempo [s] [m]/[rad]

Figura 1.8: Andamento temporale delle 3 componenti dello stato, x, y e θ (linea continua) e loro stima per semplice integrazione (x).

Rw = 10−2I3

M(0) = 100I3

si ottiene un andamento dell’errore di stima della posizione come quello mostrato in figura 1.9,

in cui con la linea continua si rappresenta l’errore di stima utilizzando il filtro di Kalman esteso e con il segno x si rappresenta l’errore ottenuto per semplice integrazione. Si nota come, la misura di una posizione assoluta (θ) permetta di contenere l’errore anche per gli stati non direttamente misurabili (x e y). 0 20 40 60 80 −0.4 −0.2 0 0.2 0.4 0.6 errori tempo [s] [m]/[rad]

Figura 1.9: Andamento temporale dell’errore di stima, x, y e θ per il filtro di Kalman esteso (linea continua) e loro stima per semplice integrazione (x).

La figura1.10mostra infine l’andamento delle componenti del guadagno. La terza componente,

cos`ı come derivato simbolicamente si assesta su un valore costante.

(31)

G. Antonelli - FI (2009) 30 0 5 10 15 20 −0.5 0 0.5 1 − −

Figura 1.10: Andamento temporale delle componenti del guadagno. Esempio

Una possibile applicazione dell’EKF risiede nella stima e inseguimento di frequenze [5, 16]. Si

supponga di voler stimare la frequenza, tempo-variante, di un segnale

s(t) = A cos(ωt + ϕ) (1.87)

corrotto da rumore bianco n(t).

Un possibile modello discreto nonlineare in spazio di stato `e fornito da:   x1(k + 1) x2(k + 1) x3(k + 1)   =   cos x3(k) − sin x3(k) 0 sin x3(k) cos x3(k) 0 0 0 1 − α     x1(k) x2(k) x3(k)  +   0 0 w(k)   y(k) = x1(k) + v(k) (1.88)

dove il parametro α ∈ [0, 1] rappresenta la velocit`a di variazione di x3ed `e scelto in maniera tale

che la frequenza sia lentamente variabile. I due rumori w(k) e v(k) sono rumori bianchi incorrelati

fra loro con covarianze rw e rv rispettivamente.

In simulazione il tempo finale `e t = 100 s, il tempo di campionamento T = 0.1 s. Il segnale s(t) da simulare `e:

s(t) = cos(π/6t) ∀t ≤ 30 (1.89)

e

s(t) = cos(2π/3t) ∀t > 70 (1.90)

per t ∈]30, 70] la frequenza varia linearmente. La covarianza di rumore rv= 0.01.

♦ Esercizio : Atterragio di un veicolo spaziale

(32)

L’esercizio `e tratto da [11], un veicolo rientra nell’atmosfera monitorato da un radar. Un possibile modello matematico per alte quote e velocit`a `e dato da:

˙x1(t) = x3(t) (1.91)

˙x2(t) = x4(t) (1.92)

˙x3(t) = d(t)x3(t) + g(t)x1(t) (1.93)

˙x4(t) = d(t)x4(t) + g(t)x2(t) (1.94)

˙x5(t) = 0 (1.95)

in cui x1(t) e x2(t) rappresentano la posizione del veicolo su un piano verticale in cui la prima

componente `e la quota, x3(t) e x4(t) le componenti della velocit`a, x5(t) `e un parametro legato a

propriet`a aerodinamiche, le funzioni nonlineari d(t) (drag) e g(t) (gravit`a) sono date da:

d(t) = −β0ex5(t)e

r0−r(t)

h0 v(t) (1.96)

g(t) = −gm0

r3(t) (1.97)

in cui r(t) `e la distanza dal centro della terra e v(t) la velocit`a, le loro espressioni sono:

r(t) = q x2 1+ x22 (1.98) v(t) = q x2 3+ x24 (1.99)

Il radar, di posizione nota xr, yr misura distanza ed angolo del veicolo dal radar stesso. Le due

misure disponibili sono quindi:

y1(t) = p (x1− xr)2+ (x2− yr)2+ v1 (1.100) y2(t) = atan x2− yr x1− xr  + v2 (1.101)

I dati dell’esercizio sono:

β0 = 0.597 h0 = 13.406 gm0 = 3.9860 · 105 r0 = 6374 xr = r0 yr = 0 Rv1 = 1 Rv2 = 17

di dimensioni opportune e con condizioni iniziali (le posizioni sono espresse in km)

x=       6500 349 −1.8 −6.8 0.7      

(33)

G. Antonelli - FI (2009) 32 Si progetti un filtro con passo di campionamento T = 0.1 s. Le condizioni iniziali della stima si pongano pari a: ˆ x=       6490 345 −2 −7 0.6       . 

1.4

Dualit`

a stima-controllo

Kalman ricav`o il risultato, oggi noto come filtro di Kalman, nel 1960 [13]. Nel 1958 aveva pubblicato ([14]), con Koepcke, il risultato ad un problema di Controllo Lineare Quadratico (LQR Linear Quadratic Regulator). Nell’articolo del 1960 riconobbe una similitudine formale che lo port`o a definire i problemi l’uno il duale dell’altro.

Si consideri un sistema lineare tempo-discreto:

x(k + 1) = Φx(k) + Γ u(k) (1.102)

per il quale si cerca un controllo a retroazione dello stato con lo scopo di portare a zero lo stato del tipo:

u(k) = −K(k)x(k) (1.103)

con K(k) guadagno tempo-variante da individuare. Il guadagno si ottiene minimizzando il seguente indice:

J = 1 2 N X k=0  xT(k)Q1x(k) + uT(k)Q2u(k) (1.104) in cui le due matrici di peso Q1 e Q2 sono simmetriche e definite positive. L’indice `e un compro-messo fra due esigenze, quella di portare a zero lo stato velocemente, pesando molto, quindi, lo stato stesso, e quella di preservare lo sforzo del controllo pesando, ovviamente, il controllo stesso. Il problema si pu`o riscrivere come un problema di minimo vincolato in cui si cerca il valore di u(k) k = 0, 1, . . . , N che minimizzi l’indice J soggetto ai vincoli:

− x(k + 1) + Φx(k) + Γ u(k) = 0 k = 0, 1, . . . , N. (1.105) Per la soluzione, ottenibile con vari strumenti matematici fra cui i moltiplicatori di Lagrange, si rimanda a testi di approfondimento [9]. Il valore del guadagno K(k), tempo-variante, `e dato dall’espressione:

K(k) =Q2+ ΓTS(k + 1)Γ−1ΓTS(k + 1)Φ (1.106) in cui le matrici S(k) e N (k) si ottengono tramite ricorsione all’indietro delle seguenti equazioni:

S(k) = ΦTN(k + 1)Φ + Q1, (1.107)

N(k) = S(k) − S(k)ΓQ2+ ΓTS(k)Γ−1ΓTS(k). (1.108) Il controllo LQR, quindi, si risolve nei seguenti passi:

(34)

controllo stima Φ ΦT N P S M Q1 Γ1RwΓT1 Γ HT Q2 Rv

Tabella 1.1: Dualit`a stima-controllo. 1. inizializzare l’algoritmo ponendo S(N ) = Q1, K(N ) = O e k = N ; 2. calcolare N (k) tramite la (1.108)

3. calcolare K(k − 1) tramite la (1.106) 4. calcolare S(k − 1) tramite la (1.107) 5. porre k = k − 1 e ripetere dal passo 2

La ricorsione di N (k) e S(k) `e formalmente uguale a quella del filtro di Kalman delle matrici M(k) e P (k) a meno di fare dei cambi di variabile e di implementare una ricorsione all’avanti o all’indietro. In particolare, riscrivendo le equazioni del filtro di Kalman:

P(k) = M (k) − L(k)HM (k) M(k + 1) = ΦP (k)ΦT+ Γ1RwΓT1

si nota come i due problemi siano uguali a meno dei cambi di variabile mostrati in tabella1.1. Una volta appurata questa analogia, `e possibile sfruttarla, per es., per ricavare il controllo a regime del controllo LQR direttamente dalla soluzione ottenuta per la stima.

(35)

Capitolo 2

Identificazione parametrica

2.1

L’approccio sistemistico e l’identificazione dei modelli

Un sistema `e un’oggetto in cui variabili di diversa natura interagiscono e producono segnali osservabili. I segnali di interesse sono usualmente definiti uscite. Il sistema `e generalmente soggetto all’influenza di stimoli esterni. Quegli stimoli (variabili) gestibili dall’utente sono definiti ingressi, quelli non influenzabili dall’utente ingressi non manipolabili o disturbi. Il concetto di sistema `e vasto e ci si `e limitati ad una definzione semplice. Un sistema viene generalmente schematizzato come in Figura (2.1).

u y

v

Figura 2.1: Sistema con ingresso u, uscita y e disturbo v.

L’approccio sistemistico consiste nel gestire dei sistemi di natura differente con strumenti metodologici unificati.

In termini generali, la conoscenza delle modalit`a con cui le variabili di un sistema interagiscono fra di loro `e il modello del sistema. Il modello fornisce gli aspetti salienti del comportamento del sistema. `E possibile fornire varie definizioni di modello di un sistema a diversi livelli di accuratezza matematica. In questo contesto `e sufficiente una definizione discorsiva. Questo ci porta a fare una prima osservazione di validit`a generale nel campo della identificazione: l’accuratezza del modello non `e un valore assoluto ma funzionale all’utilizzo del modello stesso.

Il modello matematico di un sistema pu`o essere utilizzato per obiettivi di

• Previsione. Si vuole stimare il valore futuro di alcune variabili di un sistema o se ne vuole simulare il comportamento;

• Verifica. Si vuole verificare al calcolatore l’efficacia di un possibile intervento; 34

(36)

• Intervento. La progettazione di un controllore per modificare il comportamento dinamico del sistema.

L’obiettivo dell’identificazione `e quello di determinare la struttura “ottimale” del modello matematico e dei coefficienti (parametri) che compaiono nelle equazioni del modello a partire dall’osservazione dei dati.

2.2

Identificazione in linea e fuori linea

Una prima importante classificazione concernente l’identificazione riguarda la sua eventuale im-plemenazione in linea, ossia durante il funzionamento dell’impianto, o fuori linea. Nel caso di identificazione in linea si vuole utilizzare l’informazione per tarare opportunamente le strategie di controllo (filtraggio) che si stanno implementando sul processo (segnale) e si vuole che questa azio-ne sia adattativa rispetto a precedenti errori di stima dei parametri o deriva dei parametri stessi. Facendo riferimento agli schemi generali di controllo e filtraggio delle figure (2.2) e (2.3) possiamo affermare che l’identificazione fuori linea pu`o essere stata utilizzata per tarare opportunamente le strategie di controllo e filtraggio.

riferimento + − controllore u sistema y disturbo

Figura 2.2: Schema generale di controllo.

segnale + + filtro y disturbo (rumore)

Figura 2.3: Schema generale di filtraggio.

Nel caso riportato nelle figure (2.4) e (2.5) la strategia viene continuamente elaborata in maniera tale da adattarsi a possibili cambiamenti nel sistema in esame.

Faremo riferimento a derive del modello lente (in un senso che verr`a chiarito nel seguito).

(37)

G. Antonelli - FI (2009) 36 riferimento + − controllore u sistema y strategia di adattamento

Figura 2.4: Schema generale di controllo adattativo.

segnale

filtro y strategia di

adattamento

Figura 2.5: Schema generale di filtraggio adattativo. Esempi di possibili applicazioni:

• controllo adattativo di sistemi meccanici o elettromeccanici (motori, robot, veicoli autonomi, ecc.);

• soppressione del disturbo; • equalizzazione di un canale;

• cancellazione di interferenze (es., soppressione dell’eco in telefonate intercontinentali); • soppressione delle vibrazioni;

• applicazioni di controllo in impianti industriali (colonna di distillazione, scambiatore di calore, impianto di combustione, ecc.);

• campi non ingegneristici: economia, biologia, geofisica, sociologia, ecc.

2.4

Introduzione alla individuazione dei parametri di un modello

dinamico

Il problema dell’identificazione si pu`o ricondurre alla costruzione di modelli matematici di sistemi dinamici sulla base di dati estratti dal sistema stesso.

(38)

Un modello matematico ricavato sulla base delle equazioni che regolano la fisica del sistema si rileva spesso troppo complesso per poter avere un’applicazione ingegneristica (es., fenomeno sismico). In alcuni casi, tali equazioni sono strutturalmente inesatte ed uno sforzo eccessivo di modellistica potrebbe non avere senso (es., fenomeni economici).

L’identificazione `e quel procedimento che cerca di descrivere il sistema dinamico tramite delle equazioni semplici ricavate sulla base di osservazioni. Il livello di raffinatezza nella descrizione del sistema `e ovviamente legato anche all’uso che si vuole fare di tale modello. Si vuole quindi individuare il membro M(ˆθ) di una famiglia di modelli M caratterizzato da un vettore di parametri θ appartenente ad un insieme di valori ammissibili.

Si far`a riferimento a modelli lineari e stazionari tempo discreto.

In alcuni casi, l’ingresso (o variabile esogena) non `e presente, si far`a riferimento in questo caso ad identificazione di serie temporali.

In generale, il procedimento di identificazione pu`o essere scomposto in diverse fasi. Ogni fase `e critica per la buona riuscita dell’identificazione; `e spesso vincente un approccio ingegneristico al problema pi`u che puramente matematico. Di seguito vengono fatti dei commenti generali, casi pratici di identificazione vengono riportati nel Capitolo3:

Raccolta dati. In questa fase l’utente deve decidere quali dati utilizzare per impostare il procedimento di identificazione: che serie storica di ingressi fornire al sistema, con che ampiezza e frequenza di campionamento, ecc. Spesso non `e possibile impostare un espe-rimento, oppure la serie storica desiderata non `e compatibile con i limiti fisici del sistema stesso e si deve ricorrere a dati acquisiti durante il normale funzionamento dell’impianto (o durante l’osservazione del fenomeno).

Scelta del modello. `E difficile pensare ad un’identificazione in cui del fenomeno da identi-ficare non si abbiano informazioni di alcun tipo, anche solo dalla osservazione delle strisciate di dati si pu`o cominciare a trarre informazioni utili che condizionano la scelta del modello da utilizzare. Scelte pi`u ponderate possono essere fatte nel caso in cui il fenomeno abbia una forte caratterizzazione fisica e sia possibile scriverne (semplici) equazioni dinamiche, si parla in questo caso di identificazione a scatola trasparente. Si definisce identificazione a scatola nera il caso in cui non ci siano informazioni preliminari sul modello matematico. Un aspetto importante nella scelta del modello `e l’uso che si deve fare del modello identificato, se finalizzato al controllo o al filtraggio, ecc.

Identificazione dei parametri del modello. Una volta scelto il modello e i dati da utilizzare si procede con il calcolo dei parametri del modello. Esistono algoritmi diversi per uno stesso modello ed i problemi da risolvere in questa fase sono essenzialmente di natura numerica.

Validazione del modello. Il modello appena identificato deve essere validato. Si devono quindi individuare una serie di indicatori che forniscano una sorta di misura della bont`a dell’identificazione. In caso di mancata validazione il procedimento va rianalizzato in toto per capire il motivo del fallimento dell’identificazione stessa.

In un procedimento di identificazione `e sempre consigliabile utilizzare tutta la conoscenza a-priori che si ha del modello da identificare.

(39)

G. Antonelli - FI (2009) 38

2.5

Modelli per l’identificazione dei sistemi dinamici e delle serie

temporali

Si vuole modellare una componente di incertezza e/o errore considerando dei modelli stocastici di sistemi dinamici, in cui la componente stocastica rappresenta un’incertezza legata alla misurazione o alla descrizione del fenomeno stesso. L’uscita sar`a quindi stocastica. Lo stato sar`a stocastico se influenzato dalla componente stocastica del sistema. `E utile rimarcare come la componente stocastica non individui solamente un rumore additivo fisicamente presente nell’ingresso e/o nella misurazione dell’uscita ma anche l’incertezza del modello matematico stesso.

Si definisca u(k) l’ingresso deterministico del sistema, y(k) l’uscita, ζ(k) il rumore bianco e G(z) la f.d.t. ingresso-uscita.

2.5.1 Modelli a errore d’uscita

Tale modello, anche definito modello a rumore d’uscita, presuppone che all’uscita del modello dinamico si sovrapponga del rumore:

y(k) = G(z)u(k − 1) + ζ(k) (2.1)

supponendo quindi che l’unica causa di errore sia la misura dell’uscita.

2.5.2 Modelli a errore d’ingresso

Tale modello, anche definito modello a rumore d’ingresso, presuppone che all’ingresso del modello dinamico si sovrapponga del rumore bianco:

y(k) = G(z) [u(k − 1) + ζ(k)] (2.2)

supponendo quindi che l’unica causa di errore sia la misura dell’ingresso.

2.5.3 Modelli a errore d’equazione

Tale famiglia di modelli, anche definiti modelli a rumore di processo, ha maggiore interesse pratico e si basa sulla considerazione che le equazioni che descrivono il sistema in esame siano inevitabil-mente inaccurate. Questa inaccuratezza `e portata in conto aggiungendo un processo stocastico (rumore di processo) alla descrizione del fenomeno. Introducendo i polinomi a coefficienti reali A(z−1), B(z−1) e C(z−1), con A(z−1) e C(z−1) monici:

A(z−1) = 1 − a1z−1− a2z−2+ . . . − anaz−n a (2.3) B(z−1) = b1+ b2z−1+ . . . + bnbz−n b+1 (2.4) C(z−1) = 1 + c1z−1+ c2z−2+ . . . + cncz−n c , (2.5)

si pu`o scrivere il modello dinamico come:

(40)

oppure, in forma di f.d.t, y(k) = z−dB(z−1) A(z−1)u(k) + C(z−1) A(z−1)ζ(k). (2.7) Si noti

• Non `e una limitazione considerare lo stesso denominatore per la f.d.t. dell’ingresso e del rumore, ci`o `e evidente riscrivendo l’equazione precedente come:

y(k) = z−dB1 A1 u(k) + C2 A2 ζ(k) = z−dB1A2 A1A2 u(k) + C2A1 A1A2 ζ(k); (2.8)

• z−1`e l’operatore di ritardo unitario. L’influenza dell’ingresso sull’uscita, per sistemi causali, ha effetto con almeno un campione di ritardo. Ha quindi senso mettere in evidenza il termine z−d per tenere in conto ritardi ingresso-uscita;

• I termini na, nb e nc rappresentano proprio il numero di coefficienti da individuare per caratterizzare pienamente il modello. Nel caso generale si pu`o porre d = 1, il ritardo effettivo d `e poi implicitamente identificato una volta noti i coefficienti bi;

• I polinomi sono scritti in funzione della variabile ritardo unitario z−1. A meno di una traslazione temporale, ininfluente per sistemi stazionari, questo `e equivalente a scrivere i polinomi per potenze positive della variabile z;

• Alcuni processi vengono modellati considerando la presenza additiva di un rumore colorato, questo `e proprio ci`o che si ottiene filtrando un rumore bianco per C(z−1).

ARMAX

Il modello descritto dall’equazione (2.7) `e definito ARMAX. Il nome `e un acronimo che ne descrive la componente AutoRegressive (A(z−1)y(k)), eXogeneous (z−dB(z−1)u(k)) e Moving Average (C(z−1)ζ(k)).

Si noti che la componente C(z−1)ζ(k), che prende il nome di residuo d’equazione, `e ora un rumore colorato.

ARX

Il modello privo della componente Moving Average prende il nome di ARX. `E un caso particolare di ARMAX in cui C(z−1) = 1:

y(k) = z−dB(z−1) A(z−1)u(k) +

1

(41)

G. Antonelli - FI (2009) 40 o equivalentemente

A(z−1)y(k) = z−dB(z−1)u(k) + ζ(k). (2.10)

Si pu`o osservare come il modello ARX abbia una debole interpretazione fisica, dalla eq. (2.9) si nota infatti come, per ipotesi, il rumore influenzi l’uscita con la stessa dinamica del proces-so. Nonostante questa ipotesi sia molto restrittiva, l’importanza di questo modello risiede nella possibilit`a di scriverlo in forma di regressione lineare, come verr`a mostrato pi`u avanti.

AR

L’assenza anche della componente esogena da luogo al modello AR

y(k) = 1

A(z−1)ζ(k), (2.11)

o equivalentemente

A(z−1)y(k) = ζ(k). (2.12)

ARMA

Il modello caratterizzato da rumore colorato ma privo della componente esogena da luogo al modello ARMA y(k) = C(z−1) A(z−1)ζ(k), (2.13) o equivalentemente A(z−1)y(k) = C(z−1)ζ(k). (2.14) ARIMA

Un caso particolare del modello ARMA si ottiene considerando A = (1 − z−1)A′, cio`e

y(k) = C(z−1)

References

Related documents

The most significant means to reduce nuclear power plant capital costs identified by the study were: increasing plant size, constructing multiple unit plants, standardisation

[r]

, α &gt; , with order one for s , and then we show how this operator can be applied to find the formal solutions of partial fractional differential equations (PFDEs).. This problem

In a previous study investigating the availability of information on methods and selected outcomes of clinical trials in different types of reporting formats, we used the pool

With respect to any examples or hints given herein, any typical values stated herein and/or any information regarding the application of the device, Infineon Technologies

It includes all the deluxe amenities of a mini-suite, plus these premiums: luxury teak balcony furniture, deluxe canapés, fresh flowers, DVD/CD player, free access to a DVD

For most of the work we report here, we concentrate on occurrences of noun+verb MWEs in verb final sentences (i.e. German subclauses, ca. 20-25% of all corpus text), because in

strands in the exchange rate literature: a number of studies indicate some influence of the monetary model's fundamentals on exchange rates, results from the market