note di Identificazione e Filtraggio -...

174
note di Identificazione e Filtraggio Gianluca Antonelli 2008 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 antonelli@unicas.it http://webuser.unicas.it/antonelli

Transcript of note di Identificazione e Filtraggio -...

Page 1: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

note di Identificazione e Filtraggio

Gianluca Antonelli

2008Dipartimento di Automazione, Elettromagnetismo,

Ingegneria dell’Informazione e Matematica IndustrialeUniversita degli Studi di Cassino

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

http://webuser.unicas.it/antonelli

Page 2: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Copyright (c) 2007 GIANLUCA ANTONELLI.

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

Page 3: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Indice

1 Generalita 7

1.1 L’approccio sistemistico e l’identificazione dei modelli . . . . . . . . . . . . . . . . 7

1.2 Identificazione in linea e fuori linea . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.3 Applicazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Sistemi digitali 10

2.1 Sistemi lineari e stazionari a tempo discreto . . . . . . . . . . . . . . . . . . . . . . 10

2.1.1 Equazioni lineari alle differenze . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2 Risposta in evoluzione libera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3 Risposta in evoluzione forzata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.4 Corrispondenza fra le costanti di tempo continuo e discreto . . . . . . . . . . . . . 16

2.5 Funzione di trasferimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.5.1 Forme di rappresentazione della funzione di trasferimento . . . . . . . . . . 18

2.6 Funzione di risposta armonica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.6.1 Forme di rappresentazione della funzione di risposta armonica . . . . . . . . 20

2.7 Stabilita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.7.1 Criteri per la determinazione della stabilita di un sistema tempo discreto . 23

2.8 Sistemi a dati campionati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.8.1 Campionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.8.2 Spettro di un segnale campionato e aliasing . . . . . . . . . . . . . . . . . . 27

2.8.3 Quantizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.8.4 Organo di tenuta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.9 Tecniche di discretizzazione per equivalenza . . . . . . . . . . . . . . . . . . . . . . 31

2.9.1 Metodo delle differenze all’avanti . . . . . . . . . . . . . . . . . . . . . . . . 32

2.9.2 Metodo delle differenze all’indietro . . . . . . . . . . . . . . . . . . . . . . . 32

2.9.3 Metodo dei trapezi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.9.4 Metodo della corrispondenza poli-zeri . . . . . . . . . . . . . . . . . . . . . 34

2.9.5 Equivalenza ai campioni della risposta impulsiva . . . . . . . . . . . . . . . 35

2.9.6 Equivalenza ai campioni della risposta indiciale . . . . . . . . . . . . . . . . 35

2

Page 4: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 3

2.9.7 Confronto fra le tecniche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.9.8 Discretizzazione dei modelli con ritardo . . . . . . . . . . . . . . . . . . . . 36

2.10 Discretizzazione di sistemi dinamici tempo continuo: un esempio . . . . . . . . . . 36

2.10.1 a) Metodo del rapporto incrementale in avanti . . . . . . . . . . . . . . . . 37

2.10.2 b) Metodo del rapporto incrementale all’indietro . . . . . . . . . . . . . . . 40

2.10.3 c) Metodo della trasformazione bilineare (Tustin) . . . . . . . . . . . . . . . 40

2.10.4 d) Metodo della mappatura poli-zeri . . . . . . . . . . . . . . . . . . . . . . 45

2.10.5 e) Metodo dell’equivalenza della risposta indiciale . . . . . . . . . . . . . . . 45

3 Sistemi in Retroazione 49

3.1 Sensibilita alle variazioni parametriche del ciclo aperto e del ciclo chiuso . . . . . . 50

3.2 Reiezioni ai disturbi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

3.3 Disturbi non reiettabili . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

3.4 Allargamento della banda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.5 Linearizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3.6 Precisione dei sistemi in controreazione . . . . . . . . . . . . . . . . . . . . . . . . . 54

3.7 Errore per ingressi non manipolabili . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.8 Criterio di Nyquist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.8.1 Effetto delle variazioni del guadagno . . . . . . . . . . . . . . . . . . . . . . 59

3.8.2 Effetto della retroazione positiva . . . . . . . . . . . . . . . . . . . . . . . . 60

3.8.3 Effetto del ritardo temporale . . . . . . . . . . . . . . . . . . . . . . . . . . 60

3.8.4 Presenza di poli sulla circonferenza unitaria . . . . . . . . . . . . . . . . . . 61

3.9 Un esempio di azione di controllo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

4 Identificazione parametrica 65

4.1 Introduzione e definizione del problema della individuazione dei parametri di unmodello dinamico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.2 Modelli per l’identificazione dei sistemi dinamici e delle serie temporali . . . . . . . 66

4.2.1 Modelli a errore d’uscita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.2.2 Modelli a errore d’ingresso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.2.3 Modelli a errore d’equazione . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.3 Forma predittiva dei modelli per l’identificazione . . . . . . . . . . . . . . . . . . . 70

4.4 Minimizzazione dell’errore di predizione . . . . . . . . . . . . . . . . . . . . . . . . 73

4.5 Regressore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4.6 Algoritmo a minimi quadrati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.6.1 Algoritmo a minimi quadrati pesati . . . . . . . . . . . . . . . . . . . . . . 78

4.6.2 Media e Covarianza dell’errore di stima . . . . . . . . . . . . . . . . . . . . 79

4.6.3 Disuguaglianza di Cramer-Rao . . . . . . . . . . . . . . . . . . . . . . . . . 79

Page 5: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 4

4.6.4 Persistente eccitazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

4.6.5 Legame fra l’errore e i dati . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4.7 Algoritmo a Massima Verosimiglianza . . . . . . . . . . . . . . . . . . . . . . . . . 85

4.8 Algoritmo di Gauss-Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

4.9 Algoritmo a Minimi Quadrati ricorsivo . . . . . . . . . . . . . . . . . . . . . . . . . 87

4.9.1 Algoritmo a minimi quadrati esteso e massima verosimiglianza approssimata 89

4.9.2 Inizializzazione degli algoritmi ricorsivi . . . . . . . . . . . . . . . . . . . . . 91

4.9.3 Persistente eccitazione per gli algoritmi ricorsivi . . . . . . . . . . . . . . . 91

4.9.4 Gestione della covarianza . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

4.10 Cenni sulla identificazione non parametrica . . . . . . . . . . . . . . . . . . . . . . 98

4.10.1 Analisi della risposta impulsiva . . . . . . . . . . . . . . . . . . . . . . . . . 98

4.10.2 Analisi della correlazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

4.10.3 Analisi della risposta in frequenza . . . . . . . . . . . . . . . . . . . . . . . 100

4.11 Scelta della complessita del modello . . . . . . . . . . . . . . . . . . . . . . . . . . 101

4.11.1 Errore di predizione finale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

4.11.2 Criterio dell’informazione di Akaike . . . . . . . . . . . . . . . . . . . . . . 101

4.11.3 Criterio sulla descrizione a lunghezza minima . . . . . . . . . . . . . . . . . 102

4.12 Validazione dell’identificazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

4.12.1 Differenza fra simulazione e predizione . . . . . . . . . . . . . . . . . . . . . 102

5 Identificazione in pratica 105

5.1 Aspetti pratici per l’identificazione . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5.1.1 Eliminazione delle componenti continue, delle derive o delle componentistagionali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5.1.2 Scalatura degli ingressi e delle uscite . . . . . . . . . . . . . . . . . . . . . . 106

5.1.3 Scelta del modello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

5.1.4 Determinazione del ritardo ingresso-uscita . . . . . . . . . . . . . . . . . . . 107

5.1.5 Determinazione dell’ordine del sistema . . . . . . . . . . . . . . . . . . . . . 107

5.1.6 Scelta dell’algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.1.7 Inizializzazione degli algoritmi ricorsivi . . . . . . . . . . . . . . . . . . . . . 110

5.1.8 Validazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.2 Magellan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.3 MIB30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

5.4 Canale GSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

6 Il problema della stima 124

6.1 Stimatori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

6.1.1 Caratteristiche degli stimatori . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Page 6: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 5

6.2 Osservatore di Luenberger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

6.3 Il filtro di Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

6.3.1 Aggiornamento temporale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

6.3.2 Equazioni del filtro di Kalman . . . . . . . . . . . . . . . . . . . . . . . . . 132

6.3.3 The Optimum Transient Observer . . . . . . . . . . . . . . . . . . . . . . . 139

6.3.4 Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

6.3.5 Stabilita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

6.3.6 Bianchezza del processo di innovazione . . . . . . . . . . . . . . . . . . . . . 142

6.3.7 Ortogonalita fra stima ed errore . . . . . . . . . . . . . . . . . . . . . . . . 143

6.3.8 Il Filtro di Wiener-Hopf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.3.9 Il Filtro di Kalman esteso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.4 Dualita stima-controllo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

A 151

A.1 GNU Free Documentation License . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

A.2 Cenni storici . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

A.3 La Z trasformata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

A.4 Segnali aleatori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

A.5 Polinomi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

A.6 Matrici . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

A.7 Formula di Ackermann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

A.8 Simbologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

Bibliografia 169

Indice analitico 171

Page 7: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 6

rem tene, verba sequentur. Cicerone

Page 8: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 1

Generalita

1.1 L’approccio sistemistico e l’identificazione dei modelli

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

u y

v

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

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

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

Il modello matematico di un sistema puo essere utilizzato per obiettivi di

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

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

7

Page 9: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 8

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

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

1.2 Identificazione in linea e fuori linea

Una prima importante classificazione concernente l’identificazione riguarda la sua eventuale implemenazionein linea, ossia durante il funzionamento dell’impianto, o fuori linea. Nel caso di identificazionein 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 azione siaadattativa rispetto a precedenti errori di stima dei parametri o deriva dei parametri stessi. Facendoriferimento agli schemi generali di controllo e filtraggio delle figure (1.2) e (1.3) possiamo affermareche l’identificazione fuori linea puo essere stata utilizzata per tarare opportunamente le strategiedi controllo e filtraggio.

riferimento+

−controllore

usistema

y

disturbo

Figura 1.2: Schema generale di controllo.

segnale+

+

filtro

y

disturbo (rumore)

Figura 1.3: Schema generale di filtraggio.

Nel caso riportato nelle figure (1.4) e (1.5) la strategia viene continuamente elaborata in manieratale da adattarsi a possibili cambiamenti nel sistema in esame.

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

1.3 Applicazioni

Page 10: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 9

riferimento+

−controllore

usistema

y

strategia di

adattamento

Figura 1.4: Schema generale di controllo adattativo.

segnale

filtro

y

strategia di

adattamento

Figura 1.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 dicalore, impianto di combustione, ecc.);

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

Page 11: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 2

Sistemi digitali

2.1 Sistemi lineari e stazionari a tempo discreto

I sistemi dinamici lineari e stazionari rappresentano la classe di sistemi maggiormente studiata inletteratura. Essi sono una idealizzazione dei processi reali, nonostante questo le loro caratteristicheben rappresentano la maggior parte dei sistemi osservabili in natura.

Una classe di sistemi dinamici a tempo discreto e caratterizzata dall’avere la variabile tempointera piuttosto che reale come nei sistemi dinamici a tempo continuo. Questo tipo di modellotrova larga applicazione nei problemi di elaborazione e trasmissione dei segnali e nello studiodei problemi di controllo digitale. In settori non ingegneristici trova applicazione nello studio difenomeni economici, sociologici, gestionali, ecc.

Considerando f una funzione generica e possibile rappresentare un sistema dinamico a tempodiscreto con la seguente simbologia:

y(k) = f(y(k − 1), y(k − 2), . . . , y(k − n), u(k), u(k − 1), . . . , u(k −m)). (2.1)

Si noti come l’uscita dipenda da un numero finito di uscite ed ingressi passati.

Un sistema dinamico e lineare se y(k) dipende linearmente dall’ingresso e dai suoi valori passati.E stazionario se la sua evoluzione puo essere espressa in funzione del tempo trascorso ed e, quindi,invariante rispetto a traslazioni nel dominio del tempo; ovvero se la sua evoluzione non dipendedal tempo assoluto.

2.1.1 Equazioni lineari alle differenze

L’evoluzione nel tempo dei sistemi lineari e stazionari a tempo discreto e governata da un’equazionealle differenze ordinaria a coefficienti costanti esprimibile nella forma:

n∑

i=0

aiy(k − i) =

m∑

i=0

biu(k − i), (2.2)

ossia, risolta rispetto all’uscita al tempo corrente y(k):

y(k) =1

a0

[

−n∑

i=1

aiy(k − i) +m∑

i=0

biu(k − i)]

. (2.3)

10

Page 12: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 11

L’eq. 2.2 e, analiticamente parlando, una equazione alle ricorrenze. Nell’ambito dei sistemidigitali e comune definirla equazione alle differenze. Questa scelta verra seguita in queste note.

La soluzione di questa equazione richiede quindi la conoscenza passata dell’uscita e il segnaledi ingresso.

In virtu della proprieta di linearita e applicabile il principio di sovapposizione degli effetti. Sisupponga che all’ingresso u1(k) con storia passata dell’uscita

{y1(k − 1), y1(k − 2), . . . , y1(k − n)}

corrisponda l’uscita y1(k), e all’ingresso u2(k) con storia passata dell’uscita

{y2(k − 1), y2(k − 2), . . . , y2(k − n)}

corrisponda l’uscita y2(k). Allora all’ingresso αu1(k) + βu2(k) con storia passata dell’uscita

α{y1(k − 1), y1(k − 2), . . . , y1(k − n)}+ β{y2(k − 1), y2(k − 2), . . . , y2(k − n)}

corrisponde l’uscita αy1(k) + βy2(k) dove α e β sono due scalari qualsiasi.

Questa proprieta permette di studiare separatamente gli effetti dell’ingresso e delle condizioniiniziali (intese come storia passata dell’uscita) sull’evoluzione di un sistema. L’uscita effettiva delsistema si ottiene sommando i seguenti contributi

• Risposta in evoluzione libera, yl(k). Si ottiene considerando un ingresso nullo a partire dacondizioni iniziali assegnate.

• Risposta in evoluzione forzata, yf (k). Si ottiene considerando uno specifico ingresso partendoda una situazione di quiete.

Considerando l’enunciato precedente del principio di sovrapposizione degli effetti significa prendereα = 1, β = 1, u1(i) = 0 ∀i e y2(i) = 0 i = k − 1, . . . , k − n. Si ha quindi:

y(k) = yl(k) + yf (k). (2.4)

2.2 Risposta in evoluzione libera

La risposta in evoluzione libera si ha considerando la soluzione all’equazione alle differenzeomogenea:

n∑

i=0

aiy(k − i) = 0, (2.5)

che soddisfi le condizioni iniziali:

y(i) = yi i = k − 1, . . . , k − n. (2.6)

La soluzione generale della (2.5) puo essere ricavata dalla combinazione lineare del sistemafondamentale ottenuto considerando n soluzioni particolari indipendenti.

Page 13: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 12

Il sistema fondamentale della (2.5) si determina considerando le n radici dell’equazione polinomiale

n∑

i=0

aiλn−i = 0 (2.7)

definita equazione caratteristica associata alla (2.5).

La soluzione dell’equazione polinomiale in (2.7), che quindi e la generica soluzione particolaredell’equazione alle differenze omogenea (2.5), assume la forma

khλki (2.8)

in cui h e un intero minore della molteplicita della radice λi. In caso di radice singola, quindi, lagenerica soluzione particolare assume la forma λk

i .

Indicando con r il numero delle radici distinte dell’equazione caratteristica e con ni la molteplicitadella radice i esima, si ottiene:

yl(k) =r∑

i=1

ni−1∑

h=0

ci,hkhλk

i (2.9)

L’equazione caratteristica (2.7) ha coefficienti reali, le sue radici, quindi, possono essere reali ocomplesse coniugate (se esiste una radice complessa esiste anche la sua coniugata). Le soluzioniparticolari corrispondenti alle singole radici (reali o complesse coniugate) caratterizzano i modi

di evoluzione del sistema.

Come si vede dalla (2.7), le radici λi dipendono solo dai coefficienti ai cioe dalla struttura delsistema e non dal forzamento.

La radice λi e un numero complesso, puo quindi essere espressa come:

λi = αi + jωi = ρiejνi . (2.10)

I modi di evoluzione del sistema vengono classificati in base alla posizione della radice λi sulpiano complesso. In dettaglio, si distinguono:

• Modi aperiodici . Modi corrispondenti a λi reali positivi;

• Modi alternati . Modi corrispondenti a λi reali negativi;

• Modi pseudoperiodici . Modi corrispondenti a λi complessi coniugati.

Modi aperiodici

Ad una radice reale positiva di molteplicita ni corrispondono ni modi di evoluzione aperiodicidella forma:

khαki per h = 0, . . . , ni − 1 (2.11)

con αi > 0.

Per h = 0 il modo e descritto dall’espressione

αki . (2.12)

Page 14: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 13

E possibile osservare come un valore di αi > 1 corrisponda ad un modo divergente al divergeredel tempo. Per αi = 1 il modo e costante. Per αi < 1 il modo converge a zero al divergeredel tempo. Il numero di campioni necessari per convergere a zero e tanto minore quanto minoree il valore di αi. In altre parole la velocita del modo dipende dalla posizione nella semirettareale positiva della radice: una radice “vicina” al punto (1, j0) (ma minore dell’unita in modulo)corrisponde ad un modo lento, una radice vicina all’origine ad un modo veloce.

k

Figura 2.1: Posizione nel piano complesso (sinistra) e modo di evoluzione di due poli,contrassegnati con i simboli x e * appartenenti alla semiretta reale positiva e con modulostrettamente minore dell’unita (destra).

k

Figura 2.2: Posizione nel piano complesso (sinistra) e modo di evoluzione di due poli,contrassegnati con i simboli x e * appartenenti alla semiretta reale positiva e con modulorispettivamente uguale e maggiore dell’unita (destra).

Modi alternati

Ad una radice reale negativa di molteplicita ni corrispondono ni modi di evoluzione alternatidella forma:

khαki per h = 0, . . . , ni − 1 (2.13)

con αi < 0.

Rispetto al caso precedente e possibile fare le stesse osservazioni. L’unica differenza e che,avendo ora la radice segno negativo, il segno del modo e alternato. I campioni che si succedono,

Page 15: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 14

cioe, hanno lo stesso modulo dei campioni del modo corrispondente a |αi| ma il loro segno sialterna.

k

Figura 2.3: Posizione nel piano complesso (sinistra) e modo di evoluzione di due poli,contrassegnati con i simboli x e * appartenenti alla semiretta reale negativa e con modulostrettamente minore dell’unita (destra).

k

Figura 2.4: Posizione nel piano complesso (sinistra) e modo di evoluzione di due poli,contrassegnati con i simboli x e * appartenenti alla semiretta reale positiva e con modulorispettivamente uguale e maggiore dell’unita (destra).

Modi pseudoperiodici

L’evoluzione libera deve essere una funzione reale di k. Le soluzioni particolari del tipo:

khλki = khρk

i ejνik = khρk

i (cos(νik) + j sin(νik)) (2.14)

devono quindi combinarsi con le corrispondenti soluzioni coniugate in maniera tale da fornireun’evoluzione i cui campioni siano reali. Questo accade quando i corrispondenti coefficienti ci,hsono anch’essi complessi coniugati. Si consideri quindi la combinazione lineare di una radicecomplessa e della sua coniugata:

ci,hkhρk

i ejνik + c∗i,hk

hρki e

−jνik (2.15)

equivalente al modo pseudoperiodico, a valori reali:

ci,hkhρk

i sin(νik + θi,h) (2.16)

Page 16: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 15

in cui i numeri reali ci,h e θi,h dipendono dalle condizioni iniziali.

Ad una coppia di radici complesse coniugate di molteplicita ni corrispondono ni modi dievoluzione pseudoperiodici della forma:

khρki sin(νik). (2.17)

Una coppia di radici di molteplicita singola evolve quindi secondo la

ρki sin(νik), (2.18)

dalla quale si vede come il modulo della radice influenzi la velocita di convergenza/divergenza delmodo in maniera simile ai modi visti in precedenza e νi influenzi le oscillazioni.

grafici. xxx

Caratteristiche di convergenza dei modi

Al crescere del tempo (per k → ∞) il sistema non forzato tende a raggiungere un equilibrio o adivergere all’infinito. Lo studio dei modi fornisce delle indicazioni preziose sulle caratteristichedel sistema. Si puo affermare quindi che:

• se ρ < 1 il modo e convergente al valore nullo;

• se ρ = 1 con ni = 1 il modo e ad inviluppo costante e non diverge;

• negli altri casi il modo e divergente.

Condizione necessaria e sufficiente affinche la risposta in evoluzione libera di un sistema dinamicostazionario tempo discreto converga a zero, indipendentemente dalle condizioni iniziali, e che imodi di evoluzione del sistema abbiano tutti ρi < 1.

2.3 Risposta in evoluzione forzata

Considerando l’equazione alle differenze completa:

n∑

i=0

aiy(k − i) =m∑

i=0

biu(k − i), (2.19)

la risposta in evoluzione forzata e ottenuta ricavandone la soluzione particolare con condizioniiniziali tutte nulle. Si vede chiaramente come tale soluzione dipendera sia dal forzamento chedalle caratteristiche del sistema.

Risulta utile considerare quelle che comunemente sono definite risposte ad ingressi canonici ,vale a dire risposte in evoluzione forzata a particolari tipi di ingressi che forniscono informazionisulla risposta in evoluzione forzata ad un ingresso generico. Due esempi di ingressi canonici sonol’impulso ed il gradino.

Page 17: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 16

Risposta impulsiva

La risposta impulsiva e la risposta w(k) all’impulso discreto unitario δ(k) definito come:

δ(k) =

{1 k = 00 k 6= 0

. (2.20)

Per le proprieta di causalita si ha w(k) = 0 k < 0.

grafico. xxx

Tramite la risposta impulsiva e possibile descrivere la risposta ad un segnale generico. Siainfatti u(k) un generico ingresso (nullo per k < 0). Il segnale puo essere riscritto come

u(k) =∞∑

i=−∞u(i)δ(k − i). (2.21)

All’ingresso δ(k) corrisponde l’uscita w(k), per la sovrapposizione degli effetti all’ingresso αδ(k)corrisponde αw(k). L’uscita y(k) del generico ingresso u(k) puo essere quindi espressa comesomma di convoluzione

y(k) =∞∑

i=−∞u(i)w(k − i). (2.22)

Considerando la causalita: w(k) = 0 per k < 0, e che u(k) = 0 per k < 0, possiamo restringere lasommatoria all’intervallo [0, k] ottenendo:

y(k) =

k∑

i=0

u(i)w(k − i). (2.23)

Risposta indiciale

La risposta indiciale e la risposta w−1(k) al gradino discreto unitario δ−1(k) definito come:

δ−1(k) =

{0 k < 01 k ≥ 0

. (2.24)

Per le proprieta di causalita si ha w−1(k) = 0 per k < 0.

grafico. xxx

2.4 Corrispondenza fra le costanti di tempo continuo e discreto

E noto dalla teoria dei sistemi dinamici tempo continuo [8] che un modo aperiodico del primoordine e rappresentato dalla funzione

y(t) = e−λct (2.25)

in cui si e considerato per semplicita y(0) = 1. Tale funzione, per λc < 0, ha un andamentorappresentato in Figura xxx. Si noti che la derivata alla funzione in t = 0 interseca l’asse delleascisse in −1/λc, definendo come

τ = − 1

λc(2.26)

Page 18: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 17

t y(t)/y(0)

0 10.69 τ 0.52.30 τ 0.13.00 τ 0.054.60 τ 0.016.90 τ 0.001

Tabella 2.1: Decadimento a zero di un modo naturale di evoluzione del primo grado con costantedi tempo τ .

la costante di tempo del modo si puo osservare come la convergenza a zero del modo sia legataa tale grandezza. La tabella 2.1 fornisce dei valori numerici di convergenza a zero del modo epermette di notare come, dal punto di vista pratico, un modo possa considerarsi estinto dopo chesiano trascorsi 4÷ 5 intervalli di tempo τ .

Nel caso di modi pseudoperiodici del secondo ordine si noti come le stesse considerazioni possanoessere fatte sull’inviluppo del modo stesso e quindi sia possibile definire la costante di tempo come

τ = − 1

IR(λc)(2.27)

in cui λc e un numero complesso.

Si consideri ora un modo aperiodico tempo discreto:

y(k) = λk

dove, ancora, si e posto y(0) = 1 e λ ∈]0, 1[. E possibile riscriverlo come

y(k) = λk = eln(λ)k

= ekln(λ) = e−kτ

in cui

τ = − 1

ln(λ)

puo essere interpretata come la costante di tempo discreta del modo associato a λ. Il transitoriopuo considerarsi estinto dopo

τ = − 5

ln(λ),

in cui la variabile τ rappresenta dei campioni ed e, quindi, una variabile appartenente ai numerinaturali; la variabile τ deve essere quindi approssimata al valore intero piu vicino e va quindiinterpretata con cautela per piccoli valori di λ, si noti infatti come−5/ln(.01) = 1.09 e−5/ln(.1) =2.17. (grafico di tau con approx all’intero xxx).

Date due costanti di tempo nel continuo τ1 = τ2c , seguendo le relazioni precedenti nel discreto

si ottiene:τ1τ2

=ln(λ2)

ln(λ1)=

1

c

che implicaλ1 = λc

2.

Page 19: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 18

2.5 Funzione di trasferimento

Un utile strumento di analisi dei sistemi dinamici lineari tempo discreto si ottiene Z-trasformandola relazione

n∑

i=0

aiy(k − i) =m∑

i=0

biu(k − i), (2.28)

sfruttando le proprieta di linearita e ritardo temporale si ottiene:

n∑

i=0

aiz−iY (z) =

m∑

i=0

biz−iU(z). (2.29)

La risposta in evoluzione forzata puo quindi essere ottenuta come

Y (z) = W (z)U(z) (2.30)

dove la funzione razionale fratta1

W (z) = zn−m

∑mi=0 biz

m−i

∑ni=0 aizn−i

(2.31)

e detta funzione di trasferimento (fdt). Questa e stata ottenuta dalla (2.29) mettendo in evidenzarispettivamente z−m e z−n al numeratore e al denominatore.

Sapendo che la Z-trasformata dell’impulso e U(z) = 1, e immediato riconoscere come la fdtsia la Z-trasformata della risposta impulsiva.

2.5.1 Forme di rappresentazione della funzione di trasferimento

Forma polinomiale

La forma polinomiale si ottiene direttamente dalla Z-trasformata dell’equazione alle differenzemoltiplicando numeratore e denominatore per zn:

W (z) =b0z

n + b1zn−1 + · · ·+ bmz

n−m

a0zn + a1zn−1 + · · ·+ an. (2.32)

Osserviamo ora chelimz→1

W (z) = limz→1

(z − 1)W (z)z

z − 1, (2.33)

che, ricordando il teorema del valor finale per la Z-trasformata, ci permette di concludere cheW (1) rappresenta il rapporto fra il valore di regime della risposta indiciale (se non divergente) el’ampiezza del gradino applicato. W (1) e definito guadagno statico del sistema.

1Una funzione razionale f(x) e una funzione polinomiale in x. Una funzione razionale fratta e il rapporto didue funzioni razionali.

Page 20: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 19

Forma poli-zeri

Definendo come zeri le radici del numeratore e poli le radici del denominatore, la fdt puo esserefacilmente scritta come:

W (z) = k′∏m

i=1(z − zi)∏ni=1(z − pi)

. (2.34)

k′ non e il guadagno statico. Si osserva facilmente come i poli della fdt corrispondano alle radicidel polinomio caratteristico.

Rappresentazione canonica di una fdt

Una funzione di trasferimento W (z) e rappresentata in forma canonica se W (z) e rapporto dipolinomi monici, coprimi e di ugual grado; le radici del numeratore e del denominatore, inoltredevono trovarsi all’interno del cerchio di raggio unitario.

2.6 Funzione di risposta armonica

Si vuole studiare la risposta a regime permanente ad ingressi del tipo

u(k) = U sin(νk), (2.35)

in cui k e un intero e ν e espresso in radianti. Si faccia l’ipotesi che la fdt del sistema abbia tuttipoli a modulo strettamente inferiore dell’unita. Z-trasformando l’ingresso si ottiene:

U(z) =z sin(ν)

z2 + 2z cos(ν) + 1U =

z sin(ν)

(z − ejν)(z − e−jν)U. (2.36)

La Z-trasformata dell’uscita puo quindi essere scritta come:

Y (z) = W (z)U(z) = k′∏

(z − zi)∏

(z − pi)

z sin(ν)

(z − ejν)(z − e−jν)U. (2.37)

Si consideri lo sviluppo in fratti semplici:

Y (z)

z=

r∑

i=1

ni∑

h=1

c′i,h(z − pi)ni+1−h

+r1

(z − ejν) +r2

(z − e−jν)(2.38)

in cui:

c′i,h =1

(h− 1)!

dh−1

dzh−1(z − pi)

niY (z)

z

∣∣∣∣z=pi

r1 = (z − ejν) Y (z)

z

∣∣∣∣z=ejν

= W (ejν)sin(ν)

ejν − e−jνU

r2 = (z − e−jν)Y (z)

z

∣∣∣∣z=e−jν

= W (e−jν)sin(ν)

e−jν − ejνU (2.39)

La doppia sommatoria dello sviluppo corrisponde ai modi propri del sistema e ne caratterizzail transitorio. Gli ultimi due termini corrispondono agli effetti del segnale di ingresso. Perl’ipotesi sulla convergenza dei modi (poli tutti con modulo < 1), il transitorio, atteso un tempo

Page 21: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 20

sufficientemente lungo, si estingue e la risposta coincide con la risposta in regime permanenteyr(k). Antitrasformando si ha:

yr(k) = r1ejνk + r2e

−jνk =W (ejν)ejνk −W (e−jν)e−jνk

ejν − e−jνsin(ν)U (2.40)

che, ricordando

sin(ν) =ejν − e−jν

2j

puo essere riscritta come

yr(k) =W (ejν)ejνk −W (e−jν)e−jνk

2jU. (2.41)

Il numero complesso W (ejν) puo essere scritto in termini di modulo e fase

W (ejν) =∣∣W (ejν)

∣∣ ej∠W (ejν)

che conduce a scrivere l’uscita come:

yr(k) =∣∣W (ejν)

∣∣ej(νk+∠W (ejν)) − e−j(νk+∠W (ejν))

2jU, (2.42)

che equivale a:yr(k) =

∣∣W (ejν)

∣∣U sin(νk + ∠W (ejν)). (2.43)

Questo ci permette di affermare che la risposta a regime permanente di un sistema discreto adun ingresso sinusoidale e ancora una sinusoide della stessa pulsazione ν dell’ingresso con il moduloamplificato di

∣∣W (ejν)

∣∣ e la fase ritardata di ∠W (ejν) rispetto all’ingresso. Si puo riconoscere

quindi come la funzione di risposta armonica sia la particolarizzazione della fdt al cerchio di raggiounitario, ossia si ottiene dalla W (z) ponendo z = ejν .

Una seconda osservazione da fare riguarda le periodicita della funzione di risposta armonica.In quanto funzione di ejν e periodica in ν di periodo 2π. Per questo motivo la si calcola in unintervallo di pulsazioni limitato generalmente a ν ∈] − π, π] oppure ν ∈ [0, 2π[. Inoltre, poicheW (e−jν) = W ⋆(ejν), e sufficiente calcolare la funzione nell’intervallo ν ∈ [0, π].

2.6.1 Forme di rappresentazione della funzione di risposta armonica

Diagrammi di Bode

LaW (ejν) e graficamente rappresentata tramite una coppia di diagrammi che riportano rispettivamentemodulo e fase, espressi in dB e gradi, in funzione di ν. A differenza del caso dei diagrammi diBode per sistemi lineari tempo continui non esistono regole di tracciamento asintotico, non epossibile, quindi, individuare una tecnica semplice per tracciare qualitativamente una bozza deidiagrammi di Bode per una funzione di risposta armonica tempo disceto.

La Figura 2.5 riporta un esempio di tracciamento del diagramma di Bode per la funzioneW (z) = 1

z2−1.1z+0.28; si nota la periodicita di modulo e fase sull’intervallo 2π e la simmetria

W (e−jν) = W ⋆(ejν).

Page 22: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 21

0 0

1

2

3

4

5

6

0 −400

−300

−200

−100

0

[rad]

[rad]

[deg

]

−2π

−2π

−π

−π

π

π

[-]

Figura 2.5: Esempio di tracciamento del diagramma di Bode della fdt: W (z) = 1z2−1.1z+0.28

nell’intervallo [−2π, 2π].

Page 23: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 22

Diagrammi di Nyquist

La W (ejν) e graficamente rappresentata sul piano complesso tramite una curva parametrizzatain ν.

xxx esempio precedente

2.7 Stabilita

Si supponga di considerare un sistema nello stato di equilibrio descritto dalla coppia {u, y}. Apartire da un istante k0 si perturba l’equilibrio tramite una variazione dell’ingresso di ampiezzalimitata e di durata finita:

u = u+∆u

{0 < |∆u| < U ∀k ∈ [k0, k0 +N ]

∆u = 0 ∀k > k0 +N(2.44)

con riferimento allo scostamento dell’uscita la risposta presenta 3 tipi di comportamento:

• risposta divergente, si discosta illimitatamente dall’uscita di equilibrio al crescere del tempo:

∀Y > 0 ∃k ≥ k0 : |∆y| > Y. (2.45)

• risposta limitata, si discosta dall’uscita di equilibrio rimanendo in un intorno finito dellostesso:

∃Y > 0 : ∀k ≥ k0 : |∆y| < Y. (2.46)

• risposta convergente, la risposta e limitata, e si ha:

limk→∞

∆y = 0. (2.47)

In relazione ai tre tipi di comportamento appena descritti il sistema viene definito rispettivamenteinstabile, stabile, e asintoticamente stabile.

Per un sistema lineare l’equilibrio non dipende dal punto di equilibrio ne dall’entita dellaperturbazione. E possibile quindi fare riferimento, eventualmente tramite un cambiamento diriferimento, alla coppia di equilibrio {u = 0, y = 0}. Si vede quindi come, esaurita la perturbazione∆u, il sistema si trovi ad evolvere in evoluzione libera con condizioni iniziali diverse da zero. Cisi e quindi ricondotti allo studio dei modi di evoluzione (l’evoluzione libera, infatti e proprio lasomma dei modi del sistema), vale a dire alle radici dell’equazione caratteristica:

• stabilita asintotica. Tutte le radici dell’equazione caratteristica hanno modulo minore di 1.

• stabilita. Le radici dell’equazione caratteristica hanno modulo minore di 1, oppure hannomodulo unitario con molteplicita unitaria.

• instabilita. Esiste almeno una radice dell’equazione caratteristica con modulo maggiore di1, oppure con modulo unitario e molteplicita maggiore di 1.

Si e del resto mostrato come le radici dell’equazione caratteristica siano i poli della fdt, lecondizioni sulle radici stesse, quindi, si applicano ai poli della fdt. In particolare, siamo interessatialla collocazione dei poli pi sul piano complesso.

Page 24: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 23

2.7.1 Criteri per la determinazione della stabilita di un sistema tempo discreto

La maniera concettualmente piu semplice di determinare la stabilita di un sistema lineare estazionario a tempo discreto e quella di risolvere numericamente il polinomio caratteristico.Individuate le radici e immediato verificare se il loro modulo sia inferiore all’unita. Sebbenequesta operazione, ricorrendo ad un programma di calcolo numerico, sia estremamente facile, lasoluzione sarebbe specifica del polinomio considerato e non sarebbe possibile trarre conclusionigenerali.

Esistono criteri per ottenere le stesse informazioni senza ricavare esplicitamente le radici dell’equazionecaratteristica. Questi criteri possono essere implementati rispetto ad un parametro (es., unguadagno) e fornire quindi informazioni di natura piu ampia rispetto alla sola stabilita di unospecifico polinomio.

Si definiscap(z) = a0z

n + a1zn−1 + . . .+ an, (2.48)

in cui, senza perdita di generalita, si assume a0 > 0.

Condizioni necessarie

Condizioni necessarie affinche l’equazione caratteristica abbia radici con modulo minore di 1 sono:

|an| < a0

p(1) > 0p(−1)p(−1)n > 0 (2.49)

Criterio di Jury

Il criterio di Jury consiste nella costruzione della tabella:

1234...

∣∣∣∣∣∣∣∣∣∣

a0 a1 . . . an−1 an

an an−1 . . . a1 a0

c0 c1 . . . cn−1

cn−1 cn−2 . . . c0...

.... . .

(2.50)

in cui le righe di ordine pari riportano in ordine inverso gli elementi della riga che le precedono.I coefficienti ai sono quelli del polinomio caratteristico mentre i coefficienti ci sono definiti come:

ci = ai −an

a0an−i =

1

a0

∣∣∣∣

a0 an−i

an ai

∣∣∣∣. (2.51)

La successiva riga dispari si ottiene applicando la stessa costruzione alla coppia di righe che laprecedono (utilizzando quindi i ci al posto degli ai). Si ottengono 2(n+ 1) righe complessive.

La condizione necessaria e sufficiente affinche le radici di p(z) siano tutte in modulo minore di1 e che tutti gli elementi in prima colonna delle righe dispari siano positivi.

Page 25: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 24

Esempio : applicazione del criterio di Jury

Si consideri il polinomio caratteristico:

p(z) = z2 − 0.1z − 0.12,

che soddisfa le condizioni necessarie essendo:

|−0.12| < 1p(1) = 0.78 > 0

p(−1) = 0.98⇒ 0.98 · 0.982 > 0

le prime due righe della tabella necessaria all’applicazione dei criterio di Jury sono:

12

∣∣∣∣

1 −0.1 −0.12−0.12 −0.1 1

che, applicando la (2.51), viene completata in:

123456

∣∣∣∣∣∣∣∣∣∣∣

1 −0.1 −0.12−0.12 −0.1 10.9856 −0.112−0.112 0.98560.97290.9729

i cui elementi in prima colonna di righe dispari sono positivi. Le radici sono quindi tutte minori di1; nel caso in esame le radici sono in p1 = −0.3 + 0j e p2 = 0.4 + 0j.

Criterio di Routh

Il criterio di Routh, anche detto criterio di Routh-Hurwitz, introdotto per sistemi lineari stazionaria tempo continuo, puo essere applicato ai sistemi a tempo discreto utilizzando la trasformazionebilineare (si veda la Sezione 2.9.3).

Alla variabile z del polinomio caratteristico si esegue la trasformazione:

z =1 + s

1− s (2.52)

e si applica il criterio di Routh al polinomio risultante p′(s). Il criterio consiste nel costruire latabella di Routh dai coefficienti del polinomio caratteristico. Consiste in n+ 1 righe:

12...

∣∣∣∣∣∣∣∣∣∣∣∣∣∣

a0 a2 a4 . . .a1 a3 a5 . . .. . . . . . . . . . . .c′0 c′1 c′2 . . .c′′0 c′′1 c′′2 . . .c0 c1 c2 . . ....

.... . .

(2.53)

La prima riga contiene i coefficienti di posto pari del polinomio caratteristico (considerando 0 comeindice del grado maggiore), la seconda riga contiene i coefficienti di posto dispari del polinomio

Page 26: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 25

caratteristico. Dalla terza riga in poi si utilizzano le due righe precedenti, secondo la seguenteformula:

ci = c′i+1 −c′0c

′′i+1

c′′0= − 1

c′′0

∣∣∣∣

c′0 c′i+1

c′′0 c′′i+1

∣∣∣∣. (2.54)

Quando gli elementi per il calcolo di ci non sono definiti vanno considerati nulli. Se accade chec′′0 = 0 allora la tabella di Routh non e ben definita.

Condizione necessaria e sufficiente affinche il sistema sia asintoticamente stabile e che glielementi della prima riga siano definiti e tutti dello stesso segno.

Il criterio di Routh trova anche applicazione nella tecnica di sintesi di controllori nota comeluogo delle radici per la quale si rimanda a testi di controllo.

Esempio : applicazione del criterio di Routh

Se si effettua la trasformazione bilineare al polinomio caratteristico dell’esempio precedente

p(z) = z2 − 0.1z − 0.12,

si ottiene

p′(s) =

(1 + s

1− s

)2

− 0.11 + s

1− s − 0.12 =0.98s2 + 2.24s+ 0.78

(1− s)2 ,

da cui si costruisce banalmente la tabella di Routh di n+ 1 = 3 righe:

123

∣∣∣∣∣∣

0.98 0.782.24 00.78

che corrisponde ad un polinomio p(z) con tutte le radici all’interno del cerchio unitario.

2.8 Sistemi a dati campionati

Il controllo ed il filtraggio sono operazioni effettuate tramite calcolatori, tramite, cioe dellemacchine tempo-discrete. Le variabili di interesse sono, nella maggior parte dei casi, dellegrandezze fisiche intrinsecamente tempo-continue. E quindi necessario interfacciare variabilidi diversa natura. In questo paragrafo verranno brevemente mostrate le conseguenze dellatrasformazione continuo-discreto.

E utile sottolineare come operazioni quali l’identificazione di un modello matematico o l’implementazionedi un filtro di Kalman tempo-discreto richiedano inevitabilmente di valutare, magari implicitamente,l’effetto di una conversione continuo-discreto. La scelta, ad esempio, della frequenza di acquisizionedei dati, ha effetti determinanti interpretabili alla luce delle considerazioni fatte nel seguito.

2.8.1 Campionamento

Nel seguito si daranno per scontate conoscenze elementari della Trasformata di Laplace e dellosviluppo in serie di Fourier.

Page 27: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 26

Il convertitore da analogico a digitale (A/D) preso in considerazione e il campionamento ad

impulsi che converte un segnale a tempo continuo in una sequenza di campioni prelevati adintervalli di tempo T (periodo di campionamento) come illustrato schematicamente in Figura (2.6).

r(t)

A/D

r(k) r(t)

A

Tr⋆(t)

r(kT )

B

quant.

r(k)

C

codifica

D

Figura 2.6: Rappresentazione di un convertitore analogico/digitale: A - segnale continuo, B -segnale discreto, C - segnale digitale, D - parola macchina.

La rappresentazione matematica del campionatore si ottiene considerando il campionatore adimpulsi che risponde alla esigenza di poter utilizzare la trasformata di Laplace (definita per segnalicontinui) come strumento di analisi di un segnale discreto.

Dato un generico segnale r(t) il suo segnale campionato e definito come:

r⋆(t) =∞∑

k=−∞r(t)δ(t− kT ). (2.55)

L’impulso gode di proprieta di interesse in questo contesto:

• per ogni funzione f continua in a:

∫ ∞

−∞f(t)δ(t− a)dt = f(a) (2.56)

• ∫ t

−∞δ(τ)dτ = δ−1(t) (2.57)

•L[δ(t− a)] =

∫ ∞

−∞δ(τ)e−sτdτ = 1 (2.58)

Si calcoli ora la trasformata di Laplace del segnale r⋆(t):

L[r⋆(t)] =

∫ ∞

−∞r⋆(τ)e−sτdτ =

∫ ∞

−∞

∞∑

k=−∞r(τ)δ(τ − kT )e−sτdτ. (2.59)

Invertendo la sommatoria e l’integrale ed utilizzando la prima proprieta dell’impulso elencata siottiene:

R⋆(s) =∞∑

k=−∞r(kT )e−skT (2.60)

dove R⋆(s) rappresenta la trasformata di Laplace del segnale campionato ad impulsi.

Page 28: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 27

2.8.2 Spettro di un segnale campionato e aliasing

Per comprendere gli effetti del campionamento sul segnale si operi su una diversa rappresentazionedella r⋆(t). Il treno di impulsi e un segnale periodico di periodo T , suscettibile, quindi dirappresentazione in serie di Fourier:

∞∑

k=−∞δ(t− kT ) =

∞∑

k=−∞cke

j(2πk/T )t. (2.61)

dove i coefficienti di Fourier, ck, sono definiti come:

ck =1

T

∫ T/2

−T/2

∞∑

i=−∞δ(t− iT )e−jk(2πt/T )dt =

1

T

∫ T/2

−T/2δ(t)e−jk(2πt/T )dt =

1

T, (2.62)

in cui si e considerato che un solo impulso cade nel dominio dell’integrale e si e applicata la primadelle proprieta elencate. Si ottiene infine:

∞∑

k=−∞δ(t− kT ) =

1

T

∞∑

k=−∞ej(2πk/T )t. (2.63)

Si definisca la pulsazione di campionamento:

ωs =2π

T, (2.64)

si consideri la trasformata di Laplace del segnale campionato utilizzando la pulsazione di campionamento:

L[r⋆(t)] =

∫ ∞

−∞r(t)

[

1

T

∞∑

k=−∞ejkωst

]

e−stdt =1

T

∞∑

k=−∞

∫ ∞

−∞r(t)ejkωste−stdt (2.65)

che, combinando gli esponenziali, diventa:

R⋆(s) =1

T

∞∑

k=−∞

∫ ∞

−∞r(t)e−(s−jkωs)tdt (2.66)

che altri non e se non la sommatoria infinita della Trasformata di Laplace di r(t) traslata in s.Si ottiene quindi:

R⋆(s) =1

T

∞∑

k=−∞R(s− jkωs). (2.67)

La relazione in (2.67) e particolarmente significativa ed ha un’immediata interpretazione frequenziale.Disegnando |R⋆(jω)| e |R(jω)| si nota come R⋆ sia una replica infinta in frequenza di R le cuirepliche sono centrate nei multipli interi di ωs.

grafico. xxx

Il campionamento pone quindi il problema dell’aliasing . Quando il segnale ha un contenutoinformativo significativo oltre la frequenza ωs/2 la replica in frequenza causa una sovrapposizionedi queste bande con quelle a bassa frequenza causando cosı la perdita di informazione del segnalestesso. L’aliasing ha una chiara interpretazione nel dominio del tempo: due sinusoidi tempocontinuo campionate male sono indistinguibili a valle del campionamento. grafico. xxx

Page 29: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 28

Una conseguenza dell’aliasing e la seguente: se il segnale analogico ha delle componenti centratein kωs (multipli della pulsazione di campionamento) queste componenti, trovandosi tutte incontinua a valle del campionamento, vengono perse nel campionamento; non sono, cioe, visibilidai dati digitali. Si parla quindi di oscillazioni nascoste.

La pulsazione ωN = ωs/2 e definita pulsazione di Nyquist .

Teorema del campionamento o di Shannon

Il segnale analogico puo essere ricostruito dai suoi campioni se la pulsazione di campionamentoωs e almeno pari al doppio della frequenza piu alta del segnale.

nota Il teorema del campionamento richiede che la banda del segnale sia strettamente inferiorela frequenza di Nyquist. Nessun segnale reale ha banda finita, il fenomeno dell’aliasing,quindi, per quanto attenuato, e sempre presente. Un modo per ovviare in parte a questoproblema e quello di porre un pre-filtro analogico passabasso sul segnale prima che vengacampionato. La banda del pre-filtro e inferiore a ωN .

Dalla (2.60):

R⋆(s) =∞∑

k=−∞r(kT )e−skT (2.60)

si osserva un’importante corrispondenza fra i dati campionati ed il segnale campionato. Larelazione precedente, infatti, e riscrivibile come:

R⋆(s) = R(z)|z=esT .

Ribadendo che il segnale campionato e ancora un segnale analogico si osserva una corrispondenzaformale fra la Z-trasformata della sequenza discreta r(k) e la Trasformata di Laplace del segnalecampionato. Questa corrispondenza si traduce nella posizione

z = esT . (2.68)

Questa proprieta si estende in generale ai sistemi dinamici tempo-continuo e si puo considerareche regoli anche la mappatura dei poli nel piano complesso di un sistema dinamico caratterizzatoda una certa fdt. In altre parole, un sistema caratterizzato da un modo dominato dal polo p,campionato con passo T , avra un polo dominante in epT .

nota Dalla (2.68) si osserva una caratteristica dei sistemi sovracampionati. Si supponga dicampionare con un passo di campionamento T numericamente molto inferiore rispetto ai polidel sistema pi. Il prodotto piT ≈ 0, mappando i poli del sistema continuo tutti nell’intornodel punto (1, j0), e infatti z = e≈0 ≈ 1, rende questi poli indistinguibili e pone problemi dinatura numerica.

Page 30: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 29

2.8.3 Quantizzazione

La quantizzazione e l’operazione di conversione di una grandezza a valori continui in una a valoridiscreti. Precede la codifica del dato in parola macchina. Un intervallo di valori in ingressoviene associato ad un solo livello di uscita, detto livello di quantizzazione. Il numero di livelli diquantizzazione dipende dalla lunghezza della parola macchina, per una parola di n bit avremo 2n

livelli di quantizzazione.

grafico. xxx

A parita di escursione della variabile di ingresso la risoluzione del quantizzatore e tantomaggiore quanto maggiore e il numero di livelli di quantizzazione (numero di bit) e minore risultal’errore di troncamento.

Senza entrare nei dettagli analitici, discussi, per es. in [9], la quantizzazione puo essere ritenutatrascurabile se sono verificate 3 ipotesi:

• il segnale varia rapidamente;

• il livello di quantizzazione e basso (alto numero di bit);

• il segnale e uniformemente distribuito all’interno del livello di quantizzazione.

2.8.4 Organo di tenuta

L’organo di tenuta e un componente del convertitore digitale/analogico schematicamente illustratoin Figura (2.7).

Per organo di tenuta di intende quello strumento che ci consente di passare da un segnaledigitale ad un segnale analogico. L’ingresso, definito negli istanti kT , e mantenuto per tuttol’intervallo di tempo [kT, (k+1)T [ fino al campione successivo (Figura xxx). Si noti come questasia un’operazione di interpolazione del primo ordine da cui la definizione di Zero-Order Hold oZOH per l’organo di tenuta. Sono possibili interpolazioni di ordine maggiore che, utilizzando unmaggiore numero di campioni passati, interpolano con polinomi di ordine maggiore. Il bloccotenuta dello schema (2.7) va inteso nel senso piu generale di interpolatore.

r(k)

D/A

r(t)

A

decodifica

r(k) = r(kT )

B

tenuta

r(t)

C

Figura 2.7: Rappresentazione di un convertitore digitale/analogico: A - parola macchina, B -segnale digitale, C - segnale continuo.

Con leggerezza matematica possiamo immaginare lo ZOH come un sistema in cui entra unsegnale digitale ed esce un segnale analogico. Ogni singolo campione in ingresso puo essereinterpretato come un ingresso impulsivo. Essendo la fdt la Trasformata di Laplace della rispostaimpulsiva e possibile calcolarla come:

G(s) = L[y(t)] = L[δ−1(t)− δ−1(t− T )] =1

s− 1

se−sT =

1− e−sT

s. (2.69)

Page 31: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 30

La relazione precedente e stata individuata considerando la tenuta di un impulso unitario applicatonell’origine come la differenza di due gradini di segno opposto e traslati nel tempo di T. Nel calcolodella trasformata di Laplace, poi, si e utilizzata la proprieta della traslazione nel tempo.

Per comprendere l’effetto dello ZOH sul segnale se ne studiano le caratteristiche frequenzialinel tempo continuo. Si ponga s = jω. La G(jω) puo essere riscritta come:

G(jω) = e−jωT/2 ejωT/2 − e−jωT/2

2T

2T= Te−jωT/2 sin(ωT/2)

ωT/2= Te−jωT/2sinc(ωT/2). (2.70)

Si valutino separatamente modulo e fase. Il modulo di questo segnale ha l’andamento descrittoin Figura xxx. Per ω = 0 vale T , si annulla per ω pari ai multipli interi di ωs. La fase vale

∠G(jω) = −ωT/2 + ∠sinc(ωT/2), (2.71)

ha quindi un andamento a dente di sega (Figura xxx).

In Figura 2.8 e riportato un segnale sinusoidale campionato e interpolato tramite una tenutadi ordine zero. Il segnale originale, tempo continuo, presenta una sola armonica, quello in uscitaallo ZOH presenta chiaramente un contenuto armonico maggiore. Queste armoniche, definiteimpostori , sono un effetto indesiderato della interpolazione. Approfondire da [9].

0 0.05 0.1 0.15 0.2 0.25−1

−0.5

0

0.5

1

t/T

[−]

Figura 2.8: Rappresentazione temporale del seno e del segnale campionato e interpolato tramiteZOH.

Questa fdt altera palesemente il segnale in ingresso e non puo essere trascurata. Per piccolefrequenze il modulo e prossimo a T . Se il segnale e stato ottenuto tramite un campionamento estato precedentemente amplificato per 1/T . Si usa quindi approssimare la fdt dello ZOH con

G(jω) = e−jωT/2 ω < ωs/8 (2.72)

che rappresenta un ritardo puro di T/2 nel dominio del tempo ed una distorsione massima del3% del modulo.

Lo ZOH fa parte della classe piu ampia degli interpolatori. Non e, ovviamente, l’unicointerpolatore ma e stato scelto per le caratteristiche di causalita e minimo ritardo rispetto ad altrepossibili tecniche di conversione discreto-continuo. Un possibile interpolatore e rappresentato daun filtro passa-basso ideale con pulsazione di taglio ωs/2. Nel dominio del tempo tale filtro ha un

Page 32: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 31

variabile T

servomeccanismo 10 msvelocita di flusso 1 spressione 1 slivello 10 stemperatura 10 sdistillazione 100 s

Tabella 2.2: Ordine di grandezza del passo di campionamento per alcuni tipi di variabili.

risposta impulsiva del tipo sinc(

ωst2

)che e anticausale. Applicando l’operazione di convoluzione

si osserva come la ricostruzione del segnale originario sia possibile solo avendo a disposizione ilsegnale su tutto l’arco dei tempi. Non e quindi di interesse per applicazioni di controllo e diidentificazione/filtraggio in tempo reale.

In Figura (2.9) si riporta uno schema di collegamento di un calcolatore ad un sistema fisicotempo-continuo.

quant. codifica PC dec tenuta

︸ ︷︷ ︸

sistema digitale

︸ ︷︷ ︸

sistema discreto

sistema reale︷ ︸︸ ︷

Figura 2.9: Calcolatore connesso al dominio tempo-continuo.

La tabella 2.2 mostra gli ordini di grandezza per il passo di campionamento T per alcuni tipidi variabili comuni.

2.9 Tecniche di discretizzazione per equivalenza

Una parte consistente della latteratura sul progetto di filtri e/o controllori e basata sul tempo-continuo. Si vuole quindi determinare quando una funzione di trasferimento C(z) ha un comportamentoequivalente ad una C(s), in altre parole, progettata la C(s) con tecniche di sintesi tempo-continuo,si vuole determinare l’algoritmo da implementare al calcolatore per realizzare un comportamentoequivalente.

Data una fdt continua C(s) si vuole determinare il suo equivalente discreto C(z). L’equazionealle differenze rappresentata da C(z) deve approssimare l’equazione differenziale rappresentatada C(s). Il problema e ricondotto alla individuazione di regole di integrazione per la valutazionedel termine incrementale che lega il valore al passo k a quello al passo k − 1. In senso piu

Page 33: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 32

ampio e un problema matematico di integrazione numerica di equazioni differenziali per la cuisoluzione esistono molte tecniche, anche analiticamente onerose. Nel seguito verranno trattatealcune semplici tecniche a passo costante.

2.9.1 Metodo delle differenze all’avanti

Basato sulla cosiddetta regola di integrazione di Eulero. Data una funzione calcolata in kT , f(kT ),il suo valore attuale, moltiplicato per l’ampiezza dell’intervallo, viene utilizzato per aggiornare ilvalore dell’integrale i(·) all’istante (k + 1)T :

i((k + 1)T ) = i(kT ) + Tf(kT ), (2.73)

in cui si puo riconoscere come si stia calcolando l’area della funzione f come somma dei rettangoliottenuti mantenendo costante il valore della funzione da kT a (k + 1)T (grafico xxx). Z-trasformando la relazione precedente si ottiene:

(z − 1)I(z) = TF (z) ⇒ I(z)

F (z)=

T

z − 1. (2.74)

Questa fdt discreta equivale alla fdt continua 1/s. Da cui:

s =z − 1

T⇒ z = 1 + sT. (2.75)

La fdt cercata, quindi, si ottiene ponendo:

C(z) = C(s)|s= z−1

T. (2.76)

Questa approssimazione puo essere vista come una trasformazione che lega il piano s al pianoz. grafico xxx. Da questo puo vedersi che, a meno, di una scalatura per T l’asse immaginario,che rappresenta il limite di stabilita, si mappa in un asse parallelo a quello immaginario che passaper (1, j0). fdt stabili in s possono dar luogo ad fdt instabili in z.

La trasformazione trovata puo essere vista anche come un’approssimazione al primo ordinedel legame z = esT . Vale infatti esT ≈ 1 + sT . Il legame z = esT pone in relazione la Z-trasformata della sequenza f(k) e la trasformata di Laplace del segnale campionato tramite untreno di impulsi. Il legame esatto non ha molta utilita perche da luogo ad una fdt non razionalefratta.

Dal punto di vista frequenziale l’equivalenza fra C(s) e C(z) si ottiene finche C(jω) ≈ C(ejωT ).Si puo verificare, graficamente e immediato, che questa approssimazione e valida finche ωT ≪ 1.

2.9.2 Metodo delle differenze all’indietro

Data una funzione calcolata in (k + 1)T , f((k + 1)T ), il suo valore, moltiplicato per l’ampiezzadell’intervallo, viene utilizzato per aggiornare il valore dell’integrale i(·) all’istante (k + 1)T :

i((k + 1)T ) = i(kT ) + Tf((k + 1)T ), (2.77)

Page 34: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 33

in cui si puo riconoscere come si stia calcolando l’area della funzione f come somma dei rettangoliottenuti mantenendo costante il valore assunto dalla funzione in (k+1)T da kT a (k+1)T (graficoxxx). Z-trasformando la relazione precedente si ottiene:

(z − 1)I(z) = zTF (z) ⇒ I(z)

F (z)=

zT

z − 1. (2.78)

Questa fdt discreta equivale alla fdt continua 1/s. Da cui:

s =z − 1

zT⇒ z =

1

1− sT . (2.79)

La fdt cercata, quindi, si ottiene ponendo:

C(z) = C(s)|s= z−1

zT. (2.80)

Anche questa approssimazione puo essere vista come una trasformazione che lega il piano sal piano z. grafico xxx. Da questo puo vedersi che, a meno, di una scalatura per T l’asseimmaginario, che rappresenta il limite di stabilita, si mappa in una circonferenza con centro in(0.5, j0) e raggio pari a 0.5. fdt instabili in s possono dar luogo ad fdt stabili in z.

La trasformazione trovata puo essere vista anche come un’approssimazione al primo ordine dellegame 1

z = e−sT . Vale infatti e−sT ≈ 1− sT . Dal punto di vista frequenziale l’equivalenza anchein questo caso si puo verificare che questa approssimazione e valida finche ωT ≪ 1.

2.9.3 Metodo dei trapezi

Detto anche trasformazione bilineare o medoto di Tustin.

Il valore dell’integrale i(·) all’istante (k+1)T viene calcolato tramite una combinazione linearedei valori della funzione f in kT e (k + 1)T :

i((k + 1)T ) = i(kT ) + Tf((k + 1)T ) + f(kT )

2, (2.81)

in cui si puo riconoscere come si stia calcolando l’area della funzione f come somma dei trapeziottenuti approssimando il valore assunto dalla funzione da kT a (k + 1)T con il segmento cheunisce f(kT ) a f((k + 1)T )(grafico xxx). Z-trasformando la relazione precedente si ottiene:

(z − 1)I(z) = (z + 1)T/2F (z) ⇒ I(z)

F (z)=T

2

z + 1

z − 1. (2.82)

Questa fdt discreta equivale alla fdt continua 1/s. Da cui:

s =2

T

z − 1

z + 1⇒ z =

1 + sT/2

1− sT/2 . (2.83)

La fdt cercata, quindi, si ottiene ponendo:

C(z) = C(s)|s= 2

Tz−1

z+1

. (2.84)

Anche questa approssimazione puo essere vista come una trasformazione che lega il piano s alpiano z. grafico xxx. Da questo puo vedersi che, a meno, di una scalatura, l’asse immaginario simappa nella circonferenza di raggio unitario. Si preserva biunivocamente la stabilita.

Page 35: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 34

La trasformazione trovata puo essere vista anche come un’approssimazione al primo ordine dellegame s = 1

T ln(z). Vale infatti

s =1

Tln(z) ≈ 1

T· 2(x+

x3

3+ . . .) con x =

z − 1

z + 1. (2.85)

Dal punto di vista frequenziale si puo verificare come l’asse immaginario in s venga trasformatonella circonferenza di raggio unitario. Si deve fare un’osservazione, quando ω corre da −∞ a ∞la circonferenza immaginaria viene descritta una sola volta. Eppure sappiamo che l’asse dellepulsazioni discrete descrive infinite volte la circonferenza di raggio unitario. C’e quindi unadistorsione in frequenza. Tale distorsione puo ritenersi trascurabile quando ω < ωs/8, vale infatti:

jω =2

T

ejωT − 1

ejωT + 1= j

2

Ttan

(ωT

2

)

, (2.86)

che, nell’intervallo di frequenza visto, non supera il 5%.

Poiche la distorsione, per una specifica frequenza, e calcolabile, e possibile operare un’operazione,detta prewarp., per annullare, nel discreto, la distorsione alla frequenza desiderata (dettagli in[9]).

2.9.4 Metodo della corrispondenza poli-zeri

Si costruisce la fdt C(z) equivalente alla fdt C(s) mediante regole euristiche per allocare poli,zeri e fissare il guadagno. Il metodo e basato sulla corrispondenza formale individuata tramite larelazione

z = esT (2.87)

che lega la Z-trasformata del segnale campionato e la trasformata di Laplace di quello originario.Non si possono fare ipotesi sulla allocazione degli zeri. Il metodo presuppone che gli zeri simappino secondo la stessa regola.

Si procede secondo i punti seguenti:

1 I poli di C(s), pi vengono trasfomati in poli di C(z) tramite la relazione pi = epiT ;

2 Gli zeri al finito di C(s), zi vengono trasfomati in zeri di C(z) tramite la relazione zi = eziT ;

3 Gli zeri all’infinito di C(s), tranne uno, vengono trasformati in zeri di C(z) in −1;

4 Si eguagliano i guadagni:C(z)|z=1 = C(s)|s=0

La scelta di uno zero di C(z) all’infinito rende l’eccesso poli-zeri unitario, vale a dire un ritardoingresso-uscita unitario. Questa semplifica la realizzazione equivalente della C(z).

La trasformazione degli zeri all’infinito nel continuo in zeri in −1 nel discreto puo essereinterpretata come la corrispondenza fra la piu alta frequenza continua ω → ∞ e la piu altafrequenza discreta ωT = π ⇒ ejπ = −1.

Page 36: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 35

2.9.5 Equivalenza ai campioni della risposta impulsiva

Si costruisce C(z) in modo tale che la sua risposta impulsiva coincida con la sequenza dei campionidella risposta impulsiva di C(s). Ossia

Z−1[C(z)] = c(kT ) con c(t) = L−1[C(s)] (2.88)

che equivale a dire che:C(z) = Z[c(kT )]. (2.89)

Nel caso di una C(s) di struttura complessa si ricorre alla scomposizione in fratti semplici edalla trasformazione dei termini elementari ottenuti. Questo comporta una C(z) con gli stessi polidel metodo basato sull’equivalenza poli-zeri ma diversi zeri.

Con questa tecnica si conservano le proprieta di stabilita ma si introduce una distorsione dellarisposta armonica.

2.9.6 Equivalenza ai campioni della risposta indiciale

Si costruisce C(z) in modo tale che la sua risposta indiciale coincida con la sequenza dei campionidella risposta indiciale di C(s). Ossia

Z−1

[

C(z)z

z − 1

]

= c−1(kT ) con c−1(t) = L−1

[C(s)

s

]

(2.90)

che equivale a dire che:

C(z) =z − 1

zZ [c−1(kT )] . (2.91)

Osservando che (z − 1)/z = 1− z−1 e possibile riscrivere la fdt come:

C(z) = (1− z−1)Z [c−1(kT )] = Z [c−1(kT )− c−1((k − 1)T )] = Z [c−1(kT )] , (2.92)

in cui

c−1(kT ) = L−1

[

(1− e−sT )C(s)

s

]

. (2.93)

L’espressione trovata mostra che la trasformazione considerata fornisce un’equivalenza allatenuta di ordine zero, vale a dire che, con questa tecnica, si individua il modello equivalente in zdel modello complessivo ZOH-C(s)-campionamento (in Figura 2.10).

C(z) ⇐⇒ ZOH C(s)

Figura 2.10: L’equivalenza ai campioni della risposta indiciale fornisce direttamente la C(z) dellasequenza tenuta-C(s)-campionamento.

Viene quindi utilizzata nella sintesi di schemi di controllo basata su tecniche discrete. Inparole, si individua l’equivalente discreto della parte analogica dello schema di controllo digitalee si lavora con tecniche discrete (luogo delle radici, ecc.).

Questa tecnica conserva la stabilita della C(s), ma non la sua risposta impulsiva ne la suarisposta armonica.

Page 37: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 36

2.9.7 Confronto fra le tecniche

La determinazione di una fdt tempo discreto (controllore o filtro) C(z) che presenti caratteristicheequivalenti ad una C(s) non e univoca.

L’unico metodo che, da una C(s) stabile possa ottenere una C(z) instabile e l’integrazione inavanti.

Tutti i metodi presentano una distorsione della C(z) rispetto alla C(s). Tale distorsione eaccettabile per ωs ≥ 10ωB.

Volendo estrarre una tecnica migliore, le prestazioni piu efficaci si hanno con la trasformazionebilineare e l’equivalenza poli-zeri.

Il metodo di equivalenza della risposta indiciale e usato per costruire un equivalente discretodella parte analogica di un sistema di controllo digitale (processo+ZOH+campionatore).

passi per il progetto di un filtro numerico utilizzando le tecniche tempo-continue. xxx

2.9.8 Discretizzazione dei modelli con ritardo

xxx

2.10 Discretizzazione di sistemi dinamici tempo continuo: unesempio

Si consideri un circuito RLC di parametri:

R = 1.3 kOhmL = 100 mHC = 10 nF.

Si consideri la tensione in ingresso al circuito come ingresso u, la tensione ai capi del condensatorecome uscita y, la corrente nell’induttore come stato x1, y e anche lo stato x2. La rappresentazionei− s− u tempo continuo e data dal sistema:

x = Ax + buy = cx + du

che, nel caso in esame, assumono i valori:

A =

[−1.3 · 104 −10

108 0

]

b =

[100

]

c = [ 0 1 ]

d = 0.

La funzione di trasferimento H(S) e:

H(S) =109

s2 + 1.3 · 104s+ 109

Page 38: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 37

Si vuole ricavare il corrispondente discreto con campionamento T = 4 · 10−7 s e T = 4 · 10−5 sprendendo in esame i metodi:

a) Metodo del rapporto incrementale in avanti

b) Metodo del rapporto incrementale all’indietro

c) Metodo della trasformazione bilineare (Tustin)

d) Metodo della mappatura poli-zeri

e) Metodo dell’equivalenza della risposta indiciale

2.10.1 a) Metodo del rapporto incrementale in avanti

Considerando la trasformazione di Laplace del sistema dinamico tempo continuo ed applicandola trasformazione del metodo del rapporto incrementale in avanti

s =z − 1

T

si perviene alla Z-trasformata del corrispondente sistema dinamico tempo discreto che, antitrasformato,fornisce:

w(k + 1) = Fw(k) + ge(k)y(k) = hw(k) + qe(k)

in cui, considerando il campionamento a frequenza maggiore, si ottiene:

F =

[0.9948 −4 · 10−6

40 1

]

g =

[4 · 10−6

0

]

h = [ 0 1 ]

q = 0.

Questa e l’unica delle trasformazioni per cui w(k) = x(k). Passando dalla rappresentazionei− s− u alla f.d.t si ottiene:

H(z) =1.59 · 10−4

z2 − 1.9948z + 0.99496

si noti l’assenza di zeri, si ha H(z)|z=1 = 1. Il diagramma di Bode e la risposta al gradinotempo-continuo e tempo-discreto sono riportati in Figura 2.11.

Abbassando la frequenza di campionamento l’efficacia dell’algoritmo si perde e la fdt discretarisulta addirittura instabile. Senza riportare i conti, la Figura 2.12 mostra i risultati.

Page 39: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 38

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

a

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

a

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.11: label

Page 40: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 39

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

a

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

a

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

−1000

−500

0

500

1000

1500

2000

2500

3000From: U(1)

To:

Y(1

)

Figura 2.12: label

Page 41: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 40

2.10.2 b) Metodo del rapporto incrementale all’indietro

Applicando la trasformazione del metodo del rapporto incrementale all’indietro

s =z − 1

Tz

considerando la stessa struttura per il sistema dinamico tempo discreto e lo stesso campionamento,si ottengono le seguenti matrici:

F =

[0.9946 −3.9786 · 10−6

39.7867 0.9998

]

g =

[−3.9786 · 10−6

1.5914 · 10−4

]

h = [ 39.7867 0.9998 ]

q = 1.5914 · 10−4.

Si puo osservare come, per esprimere il sistema nella forma canonica, si sia reso necessario uncambio nelle variabili di stato. La corrispondente f.d.t e:

H(z) =1.5914 · 10−4z2

z2 − 1.99450z + 0.99466

si ha H(z)|z=1 = 1.

Anche in questo caso, la fdt ottenuta con un alta frequenza di campionamento (Fig. 2.13)fornisce una buona approssimazione mentre a frequenza inferiore (Fig. 2.14), sebbene la fdt siaora stabile, la risposta indiciale mostra errore eccessivo rispetto al corrispondente tempo-continuo.

2.10.3 c) Metodo della trasformazione bilineare (Tustin)

Applicando la trasformazione di Tustin

s =2

T

z − 1

z + 1

con lo stesso campionamento e struttura del modello tempo discreto si perviene alle matrici:

F =

[0.9947 −3.9894 · 10−6

39.8946 0.9999

]

g =

[0.0063070.1261

]

h = [ 0.01261 6.3243 · 10−4 ]

q = −3.9894 · 10−5.

La corrispondente f.d.t e:

H(z) =3.9894 · 10−5z2 + 7.9789 · 10−5z + 3.9894 · 10−5

z2 − 1.99465z + 0.99481

si ha H(z)|z=1 = 1.

Ad entrambe le frequenze di campionamento la fdt discreta risultante fornisce una buonaapprossimazine (Fig. 2.15 e 2.16).

Page 42: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 41

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

b

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

b

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.13: label

Page 43: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 42

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

b

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

b

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.14: label

Page 44: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 43

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

c

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

c

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.15: label

Page 45: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 44

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

c

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

c

Time (sec.)

Am

plitu

de

Step Response

0 0.2 0.4 0.6 0.8 1 1.2

x 10−3

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.16: label

Page 46: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 45

2.10.4 d) Metodo della mappatura poli-zeri

La funzione di trasferimento H(s) ha due poli in p1,2 = −6.5 · 103 ± 3.0947 · 104j. La f.d.t. H(z)avra quindi due poli in z = epiT = 0.99732± 0.12346j. Non ci sono zeri al finito in H(s), occorrequindi inserire semplicemente uno zero in z = −1. Bisogna infine calcolare il guadagno in manieratale che

H(s)|s=0 = H(z)|z=1.

Poiche H(0) = 1 si deve scegliere

H(z) = 7.9791 · 10−5 z + 1

z2 − 1.99465z + 0.99481

da cui e possibile, se necessario, risalire ad una forma i− s− u.Ad entrambe le frequenze di campionamento la fdt discreta risultante fornisce una buona

approssimazine (Fig. 2.17 e 2.18).

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

d

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

d

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.17: label

2.10.5 e) Metodo dell’equivalenza della risposta indiciale

Page 47: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 46

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

d

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

d

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.18: label

Page 48: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 47

Si vuole costruire H(z) in maniera che la sua risposta indiciale coincida con i campioni dellarisposta indiciale di H(s). Si consideri dapprima la funzione:

Q(s) =H(S)

s=

109

s(s2 + 1.3 · 104s+ 109).

Questa espressione e facilmente trasformabile in Z consultando la tabelle:

a2 + b2

s((s+ a)2 + b2)⇔ z(Az +B)

(z − 1)(z2 − 2e−aT (cos bT )z + e−2aT )con

A = 1− e−aT cos bT − a

be−aT sin bT

B = e−2aT +a

be−aT sin bT − e−aT cos bT (2.94)

e fornisce:

Q(z) =z(7.986 · 10−5z + 7.9722 · 10−5)

(z − 1)(z2 − 1.99465z + 0.99481).

La funzione di trasferimento cercata e quindi:

H(z) =z − 1

z

z(7.986 · 10−5z + 7.9722 · 10−5)

(z − 1)(z2 − 1.99465z + 0.99481)=

7.986 · 10−5z + 7.9722 · 10−5

z2 − 1.99465z + 0.99481,

anche in questo caso si ha H(z)|z=1 = 1.

Per questo metodo si riporta la Figura alla frequenza maggiore (Fig. 2.19).

Page 49: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 48

100

105

−80

−60

−40

−20

0

20

[rad/s]

[db]

e

100

105

−250

−200

−150

−100

−50

0

50

[rad/s]

[deg

]

e

Time (sec.)

Am

plitu

de

Step Response

0 1.5 3 4.5 6 7.5 9

x 10−4

0

0.5

1

1.5

2From: U(1)

To:

Y(1

)

Figura 2.19: label

Page 50: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 3

Sistemi in Retroazione

In questo capitolo vengono illustrate brevemente le caratteristiche principali dei sistemi dinamicitempo-discreto chiusi in retroazione.

Nel seguito, con C(z) si indichera la fdt di un controllore (filtro), con P (z) la fdt del sistemada retroazionare, con H il trasduttore. Per motivi che non vengono approfonditi in queste note,si considera H algebrico, e quindi un semplice guadagno.

Lo schema di riferimento e riportato in Figura (3.1) in cui r e il riferimento, u l’ingressomanipolabile, d il disturbo (ingresso non manipolabile) e y l’uscita.

r+

−C(z)

uP (z)

y+

d

H

Figura 3.1: Schema generale di controllo.

Spesso controllore-processo sono considerate con una sola fdt detta della catena d’andataG(z) = C(z)P (z) ottenendo lo schema in Figura (3.2).

r+

−G(z)

y

H

Figura 3.2: Schema generale di sistema in retroazione.

49

Page 51: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 50

Il comportamento ingresso-uscita del sistema retroazionato, considerando come ingresso r ecome uscita y e dato da:

Y (z) = P (z)C(z) [R(z)−HY (z)] (3.1)

esplicitando la Y (z);

W (z) =C(z)P (z)

1 + C(z)P (z)H, (3.2)

esprimibile con la fdt W (z):Y (z) = W (z)R(z). (3.3)

3.1 Sensibilita alle variazioni parametriche del ciclo aperto e delciclo chiuso

Il progetto di un controllore si basa sul modello matematico del processo. Tale modello eintrinsecamente inaccurato. I sistemi fisici, inoltre, sono soggetti a fenomeni di deriva dei parametrinel tempo, si pensi, ad es., all’usura di componenti meccanici che provoca cambiamenti delleproprieta fisiche quali l’attrito con conseguente cambiamento dei parametri (coefficienti) delmodello matematico. E di interesse, quindi, valutare l’effetto di un’errata modellazione neiconfronti dell’uscita o della fdt a ciclo chiuso.

Si consideri lo schema a ciclo aperto in Figura (3.3).

xG(z)

y

Figura 3.3: Controllo in ciclo aperto.

Detto α un parametro generico, e α il corrispondente valore nominale, si puo scrivere:

G(z) = G(z, α) = G(z, α) +∂G

∂α

∣∣∣∣α=α

dα = G(z) +△G(z) (3.4)

in cui G(z) assume il significato di fdt nominale, calcolata in corrispondenza delle condizioni dilavoro nominali. Il termine △G(z) rappresenta l’errore di approssimazione. L’uscita puo esserescritta come:

Y (z) = G(z)X(z) = G(z)X(z) +△G(z)X(z)︸ ︷︷ ︸

△Y (z)

(3.5)

ossia△Y (z)

Y (z)=△G(z)X(z)

G(z)X(z)=△G(z)

G(z). (3.6)

L’errore di modello si ripercuote in maniera percentualmente identica sull’uscita. La conseguenzae che sia il transitorio che il regime sono affetti da questo errore ed il comportamento dinamicocomplessivo e scadente. In altri termini, se la fdt G(z) e la cascata fra un controllore(filtro) edun processo difficilmente l’uscita soddisfa specifiche stringenti.

Page 52: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 51

Consideriamo ora la stessa G(z) chiusa in controreazione (Fig. (3.2)); il ciclo chiuso saracaratterizzato da un fdt:

W (z) =G(z)

1 +G(z)H. (3.7)

Si definisca △WG come le variazioni rispetto a G:

△WG =∂W

∂G

∂G

∂αdα =

∂W

∂G△G =

(1

1 +GH

)2

△GGG

=W△G

(1 +GH)G(3.8)

che implica△WG

W=

1

1 +GH

△GG

. (3.9)

Le variazioni percentuali di G, quindi, si ripercuotono sulla fdt a ciclo chiuso a meno di unfattore 1/(1 +GH).

Si tracci il diagramma di Bode della funzione GH (Fig. 3.4), l’andamento dei sistemi realie di tipo passabasso, oltre una certa frequenza, quindi, il modulo della fdt e decrescente. Perdiminuire l’effetto delle variazioni parametriche della G sulla fdt a ciclo chiuso si deve cercare diottenere un alto modulo di GH nel maggior intervallo di frequenze possibile.

0 1 2 3−40

−20

0

20

40

th [rad]

GH

[dB

]

Figura 3.4: Diagramma di Bode della funzione GH = 10(z2+0.7z)z2−z+0.5

. Convenzionalmente, i modulisuperiori a 20 dB (20 dB= 10) sono considerati alti e i moduli inferiori a −20 dB (−20 dB= 0.1)sono considerati bassi.

Si calcoli ora la variazione della fdt a ciclo chiuso rispetto alle variazioni di H:

△WH =∂W

∂H

∂H

∂αdα =

∂W

∂H△H = − G2

(1 +GH)2△H = − WGH△H

(1 +GH)H(3.10)

che implica△WH

W= − GH

1 +GH

△HH

. (3.11)

Le variazioni di H, quindi, nell’intervallo di frequenze in cui |GH| ≫ 1, si ripercuotonoidenticamente sulla fdt a ciclo chiuso. Il blocco H e il trasduttore, ossia lo strumento di misuradella variabile di uscita. Questa relazione formalizza una considerazione intuitivamente ovvia:non si possono tollerare errori o variazioni parametriche sullo strumento di misura.

Page 53: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 52

3.2 Reiezioni ai disturbi

Si consideri lo schema in Figura 3.1, si vuole determinare la sensibilita dei sistemi chiusi inretroazione rispetto alla presenza di un disturbo, ossia un ingresso non manipolabile, di tipoadditivo fra il controllore e il processo. Si pone il riferimento nullo e si valuta la fdt ingresso-uscita:

Yz(z) =P (z)

1 + P (z)C(z)HD(z) (3.12)

dove D(z) e la Z-trasformata del disturbo. Poniamo |PCH| ≫ 1 (|GH| ≫ 1):

Yz ≈D

CH. (3.13)

Richiedere che il disturbo abbia poco effetto sull’uscita significa imporre Yz ≈ 0. Si impone quindi|CH| ≫ 1. Poche H non e generalmente un grado di liberta significa che si deve progettare ilcontrollore con alti guadagni.

Si calcoli la grandezza in uscita al controllore, definiamo questa variabile q:

Q(z) =−C(z)P (z)H

1 + C(z)P (z)HD(z), (3.14)

quando |PCH| ≫ 1 otteniamoQ(z) ≈ −D(z). (3.15)

Con guadagno elevato e C opportuno il controllore ricostruisce il disturbo, reiettandolo. In altafrequenza, dove si puo avere |PCH| ≪ 1, si ha

Yz(z) ≈ P (z)D(z), (3.16)

poiche P (z) e passabasso il disturbo viene naturalmente filtrato.

3.3 Disturbi non reiettabili

Si consideri la presenza dei disturbi riportati in Figura (3.5).

r+

−C(z)

uP (z)

y+

d1

H

+

d5

+

d2

+

d3

+

d4

Figura 3.5: Possibili disturbi in un sistema chiuso in retroazione.

Page 54: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 53

Il disturbo d2 e legato all’uscita tramite la seguente fdt:

Yz2(z) =1

1 + C(z)P (z)HD2(z) (3.17)

per cui e possibile ripetere le stesse considerazioni fatte per un disturbo in d1. Tale disturbo equindi reiettato dalla controreazione.

Il disturbo d3 non entra nel ciclo, non e, quindi, reiettato.

Il disturbo d4 e legato all’uscita tramite la seguente fdt:

Yz4(z) = − C(z)P (z)H

1 + C(z)P (z)HD4(z) (3.18)

da cui si osserva come l’uscita sia fortemente influenzata dal disturbo. Dal punto di vista fisico,essendo H uno strumento di misurra, questo significa che non sono in gado di dire se l’uscita deltrasduttore e il segnale di interesse o il disturbo.

Il disturbo d5 si confonde con il riferimento. Non si puo reiettare a meno di non sapere cheil contenuto frequenziale del riferimento e del disturbo siano molto differenti fra loro. In questocaso un normale filtraggio in frequenza potrebbe attenuare l’effetto del disturbo.

In definitiva e possibile reiettare i disturbi d1 e d2.

3.4 Allargamento della banda

Si vuole mettere in relazione la banda della fdt a ciclo aperto GH con la banda della fdt a ciclochiuso W . In Figura 3.6 e riportato il diagramma di Bode di una generica fdt a ciclo apertopriva di poli nel punto (1, j0). La figura evidenzia la banda a 3 dB definita come l’angolo incui il modulo della fdt assume un valore 3 dB inferiore al valore di regime (angolo nullo). Sonoevidenziate anche 3 regioni, nella prima, il modulo della fdt a ciclo aperto e grande (20 dB = 10),nella terza e piccolo (−20 dB = .1), la seconda regione e il complemento dell’intervallo [0, π].

Sapendo che la fdt a ciclo chiuso vale:

W =G

1 +GH(3.19)

e possibile fare delle osservazioni sulla banda di W nelle tre regioni individuate. Poniamo persemplicita H = 1, nella prima regione si ottiene:

W ≈ 1

H≈ 1 (0 dB). (3.20)

Nella terza regione valeW ≈ G, (3.21)

quindi W ha un andamento passabasso. Nella seconda regione |GH| e confrontabile con 1, non equindi possibile estrarre informazioni generali. La conclusione e che a ciclo aperto la banda eraall’interno della prima regione, chiudendo la retroazione la banda a 3 dB si trova nella secondaregione, c’e stato quindi un allargamento della banda passante del sistema. Questo effetto e tantomaggiore quanto e maggiore l’intervallo di frequenze in cui |GH| ≫ 1.

Page 55: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 54

0 1 2 3−40

−20

0

20

40

th [rad]

GH

[dB

]

w3

1 2 3

Figura 3.6: Diagramma di Bode di una generica fdt ad anello aperto. Le tre regioni corrispondonoalle situazioni in cui |GH| ≫ 1 (regione 1), |GH| ≪ 1 (regione 3) e la regione complementare(regione 2).

La Figura 3.7 mostra, con la lina doppia, la fdt a ciclo chiuso nella prima e terza regione. Sinota come la nuova banda passante, appartenente alla seconda regione, sia maggiore di quellaprecedente.

La conseguenza di un allargamento della banda e in una risposta piu pronta come mostratoin Figura 3.7 per una risposta indiciale. Il limite pratico all’allargamento della banda e, nellamaggior parte dei casi, di natura energetica: un forzamento eccessivo puo portare, per es., asaturazioni dei componenti. Nel caso di sistemi dinamici tempo-discreto chiusi in retroazione ilguadagno non puo essere aumentato indefinitamente causa l’instabilita del sistema.

3.5 Linearizzazione

Si consideri una generica relazione non-lineare chiusa in retroazione con un grosso guadagno:

Si vuole trovare un nuovo ingresso proporzionale all’uscita in modo tale da ottenere unalinearizzazione del legame non-lineare. Con elevato guadagno l’ingresso del controllore (filtro)e numericamente piccolo: a ≈ 0. Questo implica:

a ≈ r −Hy ≈ 0 ⇒ r ≈ Hy ⇒ y =r

H(3.22)

quindi, nelle ipotesi che H sia costante, esiste un legame proporzionale fra r e y.

3.6 Precisione dei sistemi in controreazione

Si vuole imporre un legame proporzionale fra l’uscita e il riferimento

yd(k) = kdr(k) (3.23)

Page 56: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 55

0 1 2 3−40

−20

0

20

40

th [rad]

GH

, W [d

B]

w3

Figura 3.7: Diagramma di Bode di una generica fdt ad anello aperto e corrispondente fdt a ciclochiuso (linea doppia) con H ≈ 1 nella prima e W ≈ G terza regione. Si nota come la nuova bandapassante, appartenente alla seconda regione, sia maggiore di quella precedente.

in cui kd e una costante dimensionale. L’uscita reale y(k) non sara mai identicamente uguale aquella desiderata proprio per la natura dinamica del sistema. Ci interessa calcolarne l’errore:

e(k) = yd(k)− y(k) = kdr(k)− y(k) (3.24)

ossia, passando alla Z-Trasformata:

E(z) = kdR(z)− Y (z) = kdR(z)−W (z)R(z) =

[

kd −C(z)P (z)

1 + C(z)P (z)H

]

R(z). (3.25)

Si considerino 3 ingressi canonici e si calcoli l’errore a regime, assumendo il sistema stabile peripotesi, rispetto agli ingressi:

gradino R(z) =z

z − 1

rampa R(z) =Tz

(z − 1)2

parabola R(z) =T 2z(z + 1)

2(z − 1)3,

applicando il teorema del valor finale:

ek→∞(k) = limz→1

(z − 1)E(z) = limz→1

[

kd −C(z)P (z)

1 + C(z)P (z)H

]

(z − 1)R(z)

= limz→1

[kd + kdC(z)P (z)H − C(z)P (z)

1 + C(z)P (z)H

]

(z − 1)R(z) (3.26)

scegliendo H = 1/kd:

ek→∞(k) = limz→1

[kd

1 + C(z)P (z)/kd

]

(z − 1)R(z). (3.27)

Page 57: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 56

0 10 20 30 400

0.2

0.4

0.6

0.8

1

campioni

y

G

W

Figura 3.8: Risposta indiciale normalizzata di una fdt del primo ordine a ciclo aperto G e dellacorrispondente fdt chiusa in retroazione W .

r+

ak

xNL

y

H

Figura 3.9: Relazione non-lineare chiusa in retroazione.

Si consideri ora un riferimento a gradino, l’errore a regime vale:

ek→∞(k) = limz→1

[kd

1 + C(z)P (z)/kd

]

z, (3.28)

che vale

e(∞) =k2

d

kd + kpse lim

z→1C(z)P (z) = kp

e(∞) = 0 se limz→1

C(z)P (z) =∞. (3.29)

Se la fdt G(z) = C(z)P (z) ha almeno un polo in (1, j0) allora si riesce ad ottenere un errore aregime nullo per un riferimento a gradino. Negli altri casi l’errore a regime, finito, puo esserediminuito aumentando il guadagno della fdt di andata G(z). Si noti come kd leghi la diversanatura del riferimento e dell’uscita e non e, in genere, un grado di liberta. Si consideri ora uningresso a rampa:

ek→∞(k) = limz→1

[kd

1 +G(z)/kd

]Tz

z − 1, (3.30)

che vale

e(∞) = ∞ se limz→1

G(z) = kp

Page 58: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 57

e(∞) =Tk2

d

kvse lim

z→1(z − 1)G(z) = kv

e(∞) = 0 se limz→1

(z − 1)G(z) =∞. (3.31)

Definendo come tipo di un sistema chiuso in controreazione come il numero di poli in (1, j0) dellafdt di andata G(z), si puo quindi costruire una tabella riferita al tipo di un sistema e all’ingressocanonico scelto:

gradino rampa parabola

tipo 0k2

d

kd + kp∞ ∞

tipo 1 0Tk2

d

kv∞

tipo 2 0 0T 2k2

d

ka

♦Un alto guadagno, quindi, serve per:

• Rendere la fdt a ciclo chiuso W insensibile alle variazioni parametriche;

• Reiettare i disturbi;

• Allargare la banda;

• Linearizzare un legame non-lineare;

• Aumentare la precisione a regime.

L’aspetto negativo dell’innalzamento del guadagno e legato alla stabilita del sistema come verraaffrontato in seguito.

3.7 Errore per ingressi non manipolabili

Si consideri un disturbo a gradino e se ne calcoli l’errore a regime:

Ez(z) = − P (z)

1 + C(z)P (z)H

z

z − 1, (3.32)

ripetendo i conti appena fatti si ottiene che, a regime, l’errore e nullo se C(z) ha un polo in (1, j0).In questo caso il sistema si definisce astatico.

3.8 Criterio di Nyquist

la fdt a ciclo chiuso W , conoscendo la fdt d’andata G e quella di ritorno H, e data da:

W =G

1 +GH, (3.33)

Page 59: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 58

il criterio di Nyquist e uno strumento per calcolare la stabilita a ciclo chiuso avendo informazionisulle fdt a ciclo aperto. Definendo

F = GH (3.34)

otteniamo

1 + F = 1 +NumF

DenF=DenF +NumF

DenF. (3.35)

Si consideri ora un generico polinomio:

p(z) =∏

i

(z − λi) (3.36)

se ne vuole determinare la variazione di fase per z = ejθ al variare di θ ∈ [0, 2π[. Il punto zvaria quindi sulla circonferenza di raggio unitario come in Figura 3.10. In caso di sistema a daticampionati gli stessi risultati sono validi per θ = ωT con ω ∈ [0, ωs[.

θ = 0

θ = 2π

Figura 3.10: Percorso di z al variare di θ.

Si consideri il contributo di fase di due generiche radici, rispettivamente con modulo inferiore esuperiore all’unita. Per queste radici si traccino i vettori z − λi per due valori generici di z = ejθ

(Figura 3.11); tali vettori sono centrati in λi con termine in z = ejθ. Quando θ passa da 0 a 2π lavariazione di fase della radice a modulo inferiore dell’unita, |λi| < 1, e di 2π. La variazione dellaradice con modulo maggiore dell’unita e nulla.

Figura 3.11: Vettore z − λi per due generiche coppie di radici-frequenze.

La variazione complessiva di p(z) e data dal contributo additivo delle singole variazioni di fase.Definendo con n il numero di radici e con np il numero di radici con modulo maggiore dell’unita

Page 60: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 59

si ottiene la relazione seguente:←−

∆∠p(z)θ0→2π

= (n− np)2π (3.37)

in cui le frecce servono per indicare che si e fatta la convenzione di considerare positiva unavariazione di fase corrispondente al verso antiorario.

Applicando questo risultato ad F (z) = F (ejθ) si ottiene:

←−∆∠1 + F (ejθ)

θ0→2π

= ∆∠(Numf +DenF )−∆∠DenF = 2π [n− nW − (n− nF )] = 2π(nF − nW )

(3.38)in cui nW e il numero di poli a modulo maggiore di uno di W e nF e il numero di poli a modulomaggiore di uno di F . Si noti che F e W hanno, per costruzione, lo stesso numero di poli.

L’applicazione di questo risultato diventa agevole nella sua interpretazione grafica. Si disegniil diagramma di Nyquist di una F generica (Figura 3.12). Il vettore 1 + F (ejθ), a meno di unatraslazione nel punto (−1, j0) e proprio il vettore indicato in figura per una generica pulsazione.La sua fase e quindi l’angolo che forma con il verso positivo dell’asse delle ascisse. La relazione(3.38) indica che la variazione di fase del primo membro e un multiplo intero di 2π, interpretandoogni variazione di 2π come un giro attorno al punto (−1, j0) del vettore 1 + F in figura, quindi,e possibile riscrivere la (3.38) come

←−N1+F

= nF − nW (3.39)

che implica, dal punto di vista implementativo, semplicemente di diagrammare la F (ejθ).

La condizione necessario e sufficiente affinche la fdt d’anello F (z), chiusa in retroazione, siaasintoticamente stabile e che

←−N1+F

= nF . (3.40)

La fdt d’anello dell’esempio nelle figure precedenti e:

F (z) =z + 0.3

(z − 0.5)(z − 0.2)(3.41)

per la quale vale: nF = 0. Dal diagramma di Nyquist della F si nota come il vettore 1+F (ejθ), alvariare di θ, non percorra alcun giro attorno al punto (−1, j0). E quindi soddisfatta la relazione(3.40) e il sistema a ciclo chiuso e asintoticamente stabile. Si puo infatti verificare che

W (z) =z + 0.3

z2 + 0.3z + .4(3.42)

che ha due poli complesso coniugati in (−0.15± 0.61j).

3.8.1 Effetto delle variazioni del guadagno

Le considerazione sull’errore a regime e sulla reiezione dei disturbi hanno messo in evidenza comeun alto guadagno nella catena di andata abbia, in generale, effetti benefici. Il criterio di Nyquist

Page 61: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 60

θ = 0

θ = π(−1, j0)

Figura 3.12: Diagramma di Nyquist della fdt F (z) = z+0.3(z−0.5)(z−0.2) e tracciamento del vettore

1 + F centrato in (−1, j0) per una specifica frequenza.

ci permette di osservare anche un effetto destabilizzante dell’aumento del guadagno. Si consideriuna diminuzione del guadagno del controllore, possiamo quindi diagrammare una fdt kF (z) conk ∈]0, 1[ come mostrato in Figura 3.13. Il diagramma si ottiene da quello della F a meno dimoltiplicare ogni vettore F (ejθ) per k; non c’e, quindi, alterazione di fase.

Si osserva come anche per il punto F (ejπ) vale questa amplificazione/attenuazione. Nel caso inesame F (ejπ) = 0.39, aumentando il guadagno di un fattore > 2.56, quindi, il primo membro della(3.40) diventa pari a −1 (contiamo un giro in senso orario quindi convenzionalmente negativo),mentre non sono cambiati i poli a modulo maggiore di 1 della F .

3.8.2 Effetto della retroazione positiva

La fdt a ciclo chiuso associata ad una retroazione positiva e:

W (z) =G(z)

1− F (z)(3.43)

che equivale ad applicare il criterio di Nyquist ad una retroazione negativa per una fdt pari a−F (z). In Figura 3.14 si nota come questo richiederebbe di diminuire il guadagno statico dellaF per valori inferiori all’unita. Questa richiesta e in contrasto con l’effetto generalmente positivodi un alto guadagno. la retroazione positiva, quindi, si utilizza solo per specifiche applicazioni.

3.8.3 Effetto del ritardo temporale

Si consideri la Z-Trasformata di una fdt con un ritardo temporale secco di n campioni. Definiamola fdt priva di ritardo come F (z), si avra una fdt equivalente z−nF (z). In ω:

e−jnθF (ejθ). (3.44)

Page 62: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 61

Figura 3.13: Diagramma di Nyquist della fdt F (z) (linea continua) e di kF (z) con k ∈]0, 1[ (lineatratteggiata).

Il diagramma di Nyquist di questa fdt si ottiene da quello della F ruotando (sfasando) ognipunto di −nθ, senza, quindi, variarne il modulo (Figura 3.15). Si noti come questo ritardo crescalinearmente con θ.

Data la struttura passabasso della F questo implica che punti con un modulo alto (> 1) siavvicinino al punto (−1, j0) creando una situazione simile a quella vista nel caso di amplificazionedella fdt. Il numero di giri varia mentre non cambiano il numero dei poli a modulo > 1 della F eil sistema, se stabile prima del ritardo, viene quindi portato verso l’instabilita.

3.8.4 Presenza di poli sulla circonferenza unitaria

Nel caso in cui la F (z) presenti uno o piu poli sulla circonferenza unitaria il procedimento appenadescritto necessita di alcuni commenti. Il calcolo della variazione di fase di (z − λi) per |λi| = 1subisce una discontinuita e non e possibile, quindi, calcolarlo semplicemente come fatto per radicicon modulo non unitario (si veda fig. xxx).

Per semplicita si consideri che ci sia una sola radice a modulo unitario in (−1, j0). Si immaginidi alterare localmente la circonferenza unitaria in maniera tale da far si che il punto (−1, j0)sia interno alla circonferenza stessa. In questo caso il calcolo della variazione di fase puo esserefatto in maniera analoga a quanto fatto per i |λi| < 1 ed il risultato e che la radice fornisce uncontributo alla variazione di fase di 2π senza modificare il numero np di radici a modulo maggioredell’unita. Il criterio si applica quindi semplicemente considerando i poli sulla circonferenza comese fossero interni alla stessa. xxx chisura del diagramma...

Lo stesso risultato si deve raggiungere se, alterando localmente la circonferenza unitaria, laradice ma modulo unitario venisse spostata all’esterno della circonferenza unitaria. Il contributoalla variazione di fase fornito dalla radice sarebbe ora nullo ma cambierebbe anche np, il numerodelle radici instabili, con il risultato complessivo che la risposta fornita sarebbe coerente con

Page 63: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 62

Figura 3.14: Diagramma di Nyquist della fdt F (ejωT ) (linea continua) e di −F (ejωT ) (lineatratteggiata), il punto (−1, j0) e indicato con il simbolo x.

quella che si sarebbe avuta spostando la radice unitaria all’interno della circonferenza.

Sebbene da un punto di vista pratico sia improbabile che un modello matematico forniscauna funzione di trasferimento con uno o piu poli sulla circonferenza e bene notare come il polonel punto (−1, j0) corrisponda ad una delle operazioni di integrazione nel tempo discreto e sia,quindi, tutt’altro che improbabile.

3.9 Un esempio di azione di controllo

Nel 1922 Nicholas Minorsky presento una legge di controllo basata su tre azioni elementari [1].Al momento della pubblicazione la teoria del controllo era ancora immatura, in particolare, moltistrumenti matematici attualmente in uso per la comprensione della retroazione non erano ancorastati individuati, le conclusioni di Minorsky, quindi, erano basate su considerazioni euristiche.Quel controllo, noto come azione PID , e oggi uno dei controlli piu utilizzati nella realta industrialee la sua efficacia e stata ampiamente dimostrata in letteratura.

Minorsky realizzo il controllo PID semplicemente osservando le azioni dei timonieri di un’imbarcazione.In questo paragrafo, l’azione PID verra brevemente illustrata per il controllo di rotta di una nave.

Si definisca δ come l’angolo del timone rispetto alla direzione poppa-prua dell’imbarcazione,l’imbardata (yaw, angolo della direzione poppa-prua rispetto ad un riferimento inerziale) delveicolo con il simbolo ψ. Si faccia l’ipotesi di avanzamento del veicolo a velocita costante. Fra laposizione del timone e l’imbardata del veicolo esiste un legame dinamico non-lineare ψ = f(δ),supponendo di campionare e linearizzare il legame e possibile scrivere:

ψ = P (z)δ (3.45)

che comporta uno schema in retroazione del tipo in Figura 3.16.

Page 64: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 63

Figura 3.15: Diagramma di Nyquist della fdt F (ejθ) (linea continua) e di e−jθF (ejθ) (lineatratteggiata), il punto (−1, j0) e indicato con il simbolo x. I due vettori corrispondono allo stessoangolo θ.

r+

−timoniere

δP (z)

y+

d

bussola

Figura 3.16: Schema generale di controllo PID per il mantenimento di rotta.

Il termine PID e un acronimo che indica le tre azioni elementari: Proporzionale, Integrale eDerivativa.

Per le osservazioni fatte sull’errore a regime la variabile in ingresso al controllore puo essereconsiderata proporzionale all’errore e(k), l’azione proporzionale e del tipo Kpe(k) e rappresentaun’azione di richiamo verso il valore e = 0. Puo essere interpretata come la forza di una mollatanto maggiore quanto maggiore e la distanza dal valore di riposo (e = 0).

L’azione derivativa, del tipoKve(k)−e(k−1)

T , rappresenta un’azione anticipatrice, volta a diminuirel’azione di controllo quando la derivata dell’errore e diretta verso il valore e = 0. Intuitivamentepuo essere interpretata come la necessita di annullare l’azione prima di giungere al valore desiderato.Con la sola azione proporzionale, infatti, il timoniere tenderebbe a pendolare intorno al valoredesiderato. In z, l’azione di tipo derivativo, espressa da uno zero in (1, j0) non e fisicamenterealizzabile, e sufficiente allora considerare un polo in alta frequenza che non alteri il guadagnoKv.

Page 65: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 64

L’azione integrale, del tipo Ki(i(k)+Te(k)), con i(k) valore dell’integrale al campione k, serveper compensare l’effetto dei disturbi persistenti e per avere errore nullo per un riferimento agradino. In presenza di corrente, infatti, le sole azioni P e D, portano il sistema a regime ad unvalore differente da quello desiderato. L’azione integrale si carica con un valore dell’errore diversoda zero portando l’errore verso valori decrescenti. Alla luce dei risultati sull’errore a regime sinota come l’azione integrale metta un polo nel punto (1, j0) facendo diventare quindi il sistemadi tipo 1 e garantendo errore nullo per riferimento a gradino e disturbo a gradino (rotta costantecon corrente marina costante).

In definitiva, l’azione PID, puo essere ottenuta tramite la fdt:

Kp +Kvz − 1

(1/(1− p))(z − p) +Ki

z − 1(3.46)

in cui T e stata assorbita nelle costanti e p e un polo in alta rispetto alla dinamica del sistemaretroazionato.

Esercizio

Per la seguente fdt:

P (z) =z − .2

(z − 0.6)(z − 0.5)

si simuli un controllo PID in retroazione con H = 1 rispetto ad un riferimento a gradino diampiezza unitaria. Sulla base delle osservazioni fatte, partendo da valori dei guadagni il cuiordine di grandezza e 0.1 si proceda a tarare il controllore tramite trial and error . A valle dellasimulazione si traccino i segnali di uscita e l’ingresso alla P (z) (forzamento).

Si solleciti la P (z) a ciclo aperto con un gradino di ampiezza pari al regime dell’attuazione dellasimulazione precedente. Si confrontino le due uscite (ciclo aperto - ciclo chiuso). Si diagrammiBode per P (z) e W (z) e si calcolino le due bande passanti.

Si consideri un disturbo a gradino di ampiezza 0.5 con istante di applicazione successivo altransitorio della fdt riferimento-uscita. A valle della simulazione si traccino i segnali in ingresso aP (z) ed in uscita a C(z).

In assenza di disturbo si modifichi il riferimento a gradino con una rampa lineare. Si valutinumericamente l’errore a regime.

Si calcoli, eseguendo diverse simulazioni, il valore del guadagno per cui il sistema diventa instabile.

Page 66: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 4

Identificazione parametrica

4.1 Introduzione e definizione del problema della individuazionedei parametri di un modello dinamico

Il problema dell’identificazione si puo ricondurre alla costruzione di modelli matematici di sistemidinamici sulla base di dati estratti dal sistema stesso.

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

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

Si fara riferimento a modelli lineari e stazionari tempo discreto.

In alcuni casi, l’ingresso (o variabile esogena) non e presente, si fara riferimento in questo casoad identificazione di serie temporali .

In generale, il procedimento di identificazione puo essere scomposto in diverse fasi. Ogni fasee critica per la buona riuscita dell’identificazione; e spesso vincente un approccio ingegneristicoal problema piu che puramente matematico. Di seguito vengono fatti dei commenti generali, casipratici di identificazione vengono riportati nel Capitolo 5:

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

Scelta del modello. E difficile pensare ad un’identificazione in cui del fenomeno daidentificare non si abbiano informazioni di alcun tipo, anche solo dalla osservazione dellestrisciate di dati si puo cominciare a trarre informazioni utili che condizionano la scelta del

65

Page 67: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 66

modello da utilizzare. Scelte piu ponderate possono essere fatte nel caso in cui il fenomenoabbia 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. Unaspetto 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 dautilizzare si procede con il calcolo dei parametri del modello. Esistono algoritmi diversi peruno stesso modello ed i problemi da risolvere in questa fase sono essenzialmente di naturanumerica.

Validazione del modello. Il modello appena identificato deve essere validato. Si devonoquindi individuare una serie di indicatori che forniscano una sorta di misura della bontadell’identificazione. In caso di mancata validazione il procedimento va rianalizzato in totoper 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.

4.2 Modelli per l’identificazione dei sistemi dinamici e delle serietemporali

Si vuole modellare una componente di incertezza e/o errore considerando dei modelli stocastici disistemi dinamici, in cui la componente stocastica rappresenta un’incertezza legata alla misurazioneo alla descrizione del fenomeno stesso. L’uscita sara quindi stocastica. Lo stato sara stocasticose influenzato dalla componente stocastica del sistema. E utile rimarcare come la componentestocastica non individui solamente un rumore additivo fisicamente presente nell’ingresso e/o nellamisurazione 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 eG(z) la f.d.t. ingresso-uscita.

4.2.1 Modelli a errore d’uscita

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

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

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

4.2.2 Modelli a errore d’ingresso

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

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

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

Page 68: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 67

4.2.3 Modelli a errore d’equazione

Tale famiglia di modelli, anche definiti modelli a rumore di processo, ha maggiore interessepratico e si basa sulla considerazione che le equazioni che descrivono il sistema in esame sianoinevitabilmente inaccurate. Questa inaccuratezza e portata in conto aggiungendo un processostocastico (rumore di processo) alla descrizione del fenomeno. Introducendo i polinomi a coefficientireali 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−na (4.3)

B(z−1) = b1 + b2z−1 + . . .+ bnbz

−nb+1 (4.4)

C(z−1) = 1 + c1z−1 + c2z

−2 + . . .+ cncz−nc, (4.5)

si puo scrivere il modello dinamico come:

A(z−1)y(k) = z−dB(z−1)u(k) + C(z−1)ζ(k), (4.6)

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). (4.7)

Si noti

• Non e una limitazione considerare lo stesso denominatore per la f.d.t. dell’ingresso e delrumore, cio e evidente riscrivendo l’equazione precedente come:

y(k) = z−dB1

A1u(k) +

C2

A2ζ(k) = z−dB1A2

A1A2u(k) +

C2A1

A1A2ζ(k); (4.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 terminez−d per tenere in conto ritardi ingresso-uscita;

• na, nb e nc rappresentano proprio il numero di coefficienti da individuare per caratterizzarepienamente il modello. Nel caso generale si puo porre d = 1, il ritardo effettivo d e poiimplicitamente identificato una volta noti i coefficienti bi;

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

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

Page 69: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 68

ARMAX

Il modello descritto dall’equazione (4.7) e definito ARMAX. Il nome e un acronimo che ne descrivela 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 unrumore colorato.

ARX

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

y(k) = z−dB(z−1)

A(z−1)u(k) + 1

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

o equivalentemente

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

Si puo osservare come il modello ARX abbia una debole interpretazione fisica, dalla eq. (4.9) sinota infatti come, per ipotesi, il rumore influenzi l’uscita con la stessa dinamica del processo.Nonostante questa ipotesi sia molto restrittiva, l’importanza di questo modello risiede nellapossibilita di scriverlo in forma di regressione lineare, come verra mostrato piu avanti.

AR

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

y(k) = 1A(z−1)

ζ(k), (4.11)

o equivalentemente

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

ARMA

Il modello caratterizzato da rumore colorato ma privo della componente esogena da luogo almodello ARMA

y(k) =C(z−1)

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

Page 70: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 69

o equivalentemente

A(z−1)y(k) = C(z−1)ζ(k). (4.14)

ARIMA

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

y(k) =C(z−1)

(1− z−1)A′(z−1)ζ(k), (4.15)

il cui acronimo prende in considerazione esplicitamente il fatto che questo modello rappresental’integrazione di rumore colorato: AutoRegressive Integrated Moving Average. Nel tempo infattisi ha:

y(k) = y(k − 1) +C(z−1)

A′(z−1)ζ(k). (4.16)

Se il rumore non e colorato (A′ = C = 1), il modello diviene:

y(k) = y(k − 1) + ζ(k), (4.17)

vale a dire integrale di rumore bianco, noto come moto browniano o passeggiata casuale (randomwalking). L’equivalente tempo-continuo, vale a dire l’integrale di rumore bianco, e noto anchecome processo di Wiener [19].

Il modello matematico della passeggiata casuale ha una caratteristica interessante. Definendocome σζ la varianza del rumore bianco, se si calcola il valor atteso e la varianza dell’uscita siottiene

E[y(k)] = E[y(k − 1) + ζ(k)] = E[y(k − 1)] + E[ζ(k)] = 0

per quanto concerne il valor atteso e

E[y2(k)] = E[(y(k − 1) + ζ(k))2]

= E[y2(k − 1)] + 2E[y(k − 1)ζ(k)] + E[ζ2(k)]

= E[y2(k − 1)] + σζ

= E[y2(k − 2)] + 2σζ

= . . .

= kσζ (4.18)

per quanto concerne la varianza. In parole, la varianza dell’integrale di rumore bianco ha unvalore che cresce linearmente con il tempo trascorso.

Page 71: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 70

OE

Quando C(z−1) = A(z−1) il modello a rumore di processo coincide con il modello a rumore diuscita e prende il nome di Output Error. E quindi un caso particolare di ARMAX rappresentatodalle equazioni:

y(k) = z−dB(z−1)

A(z−1)u(k) + ζ(k), (4.19)

o equivalentemente

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

♦Si noti come l’estensione al caso multivariabile sia semplice e non modifichi la struttura delle

equazioni.

Per le serie temporali i modelli idonei alla loro descrizione sono ovviamente l’AR, e l’ARMA. Peri sistemi dinamici con caratterizzazione ingresso-uscita i rimanenti modelli ARX, OE, ARMAX.Esistono altri modelli matematici che non verranno trattati in questa sede, es., l’ARIMAX,l’ARXARX, il Box-Jenkins [16].

La Figura 4.1 rappresenta lo schema generale. La tabella 4.1 permette di discernere fra idifferenti modelli presentati.

u(k)

G(z)+

+

y(k)

ζ(k)

W(z)

Figura 4.1: Schema generale dei modelli presentati (si veda la Tabella 4.1).

4.3 Forma predittiva dei modelli per l’identificazione

Data una famiglia di modelli M = M(θ), il procedimento di identificazione vuole individuareil vettore dei parametri che meglio rappresenta il fenomeno in esame. Nel caso di un modelloAR, per esempio, l’identificazione consiste nel trovare i coefficenti ai ottimali . Forniti degli ai

di tentativo deve essere possibile confrontare il modello individuato con i dati e validare o menola bonta dei coefficienti stessi. Si rende quindi necessario introdurre una misura di errore legataalla misura dei dati a disposizione, una delle possibilita e quella di mettere il modello in formapredittiva. In parole, utilizzando i dati a disposizione (tipicamente ingressi e/o uscite misurate),

Page 72: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 71

modello G(z) W (z)

ARMAX G(z) =z−dB(z−1)

A(z−1)W (z) =

C(z−1)

A(z−1)

ARMA G(z) = 0 W (z) =C(z−1)

A(z−1)

ARX G(z) =z−dB(z−1)

A(z−1)W (z) = 1

A(z−1)AR G(z) = 0 W (z) = 1

A(z−1)

OE G(z) =z−dB(z−1)

A(z−1)W (z) = 1

Tabella 4.1: Famiglie di modelli (si veda la Figura 4.1).

si vuole generare una predizione per il passo successivo e verificare quanto questa predizione sianumericamente vicina al valore misurato. Si definisce come predizione al passo k usando i datifino al passo k − 1 la variabile:

y(k|k − 1) (4.21)

o, piu semplicemente y(k), l’errore di predizione cercato (ad un passo) e allora dato da:

ε(k) = y(k)− y(k|k − 1). (4.22)

In maniera analoga puo essere definito l’errore a n passi.

Un modello “ottimo” e quindi il modello che, su una serie di dati, minimizza una cifra dimerito. Nel seguito si considerera come cifra di merito l’errore quadratico medio:

JN (θ) =1

N

x+N−1∑

k=x

ε2(k). (4.23)

Verra inoltre mostrato come sia necessario non fermarsi ad un solo indice di merito nella sceltadel modello ma si renda necessario fare una serie di considerazioni differenti.

A questo punto e necessario individuare il predittore M(θ), cioe un meccanismo, un algoritmo,che associ al modello scelto e ai dati passati una predizione per l’uscita.

Si riscriva l’equazione del modello ARMAX:

y(k) = z−dB(z−1)

A(z−1)u(k) +

C(z−1)

A(z−1)ζ(k) (4.24)

e si faccia l’ipotesi che W (z) = C(z−1)A(z−1)

sia rappresentato in forma canonica. Si dividano entrambi

i membri per W (z) e si sommi e sottragga y(k):

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k) + ζ(k) (4.25)

poiche A(z) e C(z) sono monici e di egual grado, effettuando la lunga divisione otteniamo che il

termine in parentesi quadre[

1− A(z−1)C(z−1)

]

ha la potenza maggiore di grado −1 al massimo. Questo

Page 73: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 72

significa che, al secondo membro, non c’e dipendenza dai dati al passo k ma solo dai dati passati.Si noti infatti come ζ(k) sia un rumore bianco. La cosa piu sensata da fare, quindi, e sostituirlocon la sua media supposta nulla per ipotesi. Il predittore del modello ARMAX quindi e:

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k) (4.26)

ARMAX

Il predittore per un modello ARMAX e proprio dato dall’eq. (4.26). Nel seguito con la notazioneARMAX(na,nb,d,nc) si caratterizzera la struttura del modello. Si supponga un modello particolarmentesemplice ARMAX(1,1,1,1):

A(z−1) = 1− a1z−1

B(z−1) = b1C(z−1) = 1 + c1z

−1,

scrivendo esplicitamente il predittore si ottiene:

y(k) = (a1 + c1)y(k − 1)− c1(a1 + c1)y(k − 2) + . . .+ b1u(k − 1)− c1b1u(k − 2) + . . . (4.27)

la dipendenza dai parametri dell’uscita stimata, quindi, e abbastanza complessa anche per unmodello estremamente semplice, ed e, evidentemente, nonlineare.

Si faccia attenzione alla necessita di rappresentare C(z−1) in forma canonica, e facile verificare,infatti, come la stabilita di C(z−1) (zeri all’interno del cerchio del raggio unitario) sia indispensabileper non far divergere la predizione. Il predittore infatti dipende dai valori passati di y a meno diC(z−1).

ARX

Sostituendo C(z) = 1 nella forma generale (4.26) si ottiene il predittore per il modello ARX:

y(k) =[1−A(z−1)

]y(k) + z−dB(z−1)u(k) (4.28)

che, scritto in forma esplicita, assume una forma particolarmente attraente in quanto linearenei parametri da identificare:

y(k) = a1y(k − 1) + a2y(k − 2) + . . .+ b1u(k − d) + b2u(k − d− 1) + . . . (4.29)

esso, inoltre, e stabile in quanto non dipende dai valori passati di y ma dalle sole misure y.

Page 74: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 73

AR

Il modello AR, utilizzato per le serie storiche si ottiene facilmente come:

y(k) =[1−A(z−1)

]y(k) (4.30)

ossia, scritto in forma esplicita:

y(k) = a1y(k − 1) + a2y(k − 2) + . . . (4.31)

ARMA

Il modello ARMA, utilizzato per le serie storiche si ottiene facilmente come:

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) (4.32)

anche in questo caso, la dipendenza dai parametri e non lineare.

OE

Il modello OE e un caso particolare di ARMAX con A(z) = C(z): Il suo predittore e quindi datoda:

y(k) = z−dB(z−1)

A(z−1)u(k) (4.33)

anche in questo caso, la dipendenza dai parametri e non lineare.

Esercizio

Si derivi il predittore per il moto browniano.

4.4 Minimizzazione dell’errore di predizione

I modelli, scritti in forma predittiva, permettono di valutare la bonta dell’identificazione secondola (4.23). Ci si chiede se la minimizzazione di questo indice sia un criterio efficiente nella sceltadei parametri di un modello. In particolare, si vuole mettere in relazione il risultato al numerodi campioni N dei dati.

Page 75: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 74

Si supponga di aver generato la serie di dati ingresso-uscita al calcolatore secondo il modelloARMAX caratterizzato da un vettore dei parametri θ◦ = [ a1 . . . ana b1 . . . bnb c1 . . . cnc ].In questo caso e possibile dimostrare che, al crescere di N , la stima θ ottenuta minimizzandol’indice (4.23) per un modello ARMAX in forma predittiva converge proprio al valore vero deiparametri (o ad un insieme equivalente, si veda [2] per dettagli).

I modelli matematici sono astrazioni mentali e nessun dato reale e generato da un modelloARMAX (e affini). Non esiste nessun vettore dei parametri vero e i dati non sono rappresentabilicon un sistema dinamico linerare tempo-invariante. In parole, la famiglia di modelli all’internodella quale cerchiamo la soluzione non contiene il meccanismo di generazione dei dati. Sebbenemolti algoritmi di identificazione dei parametri si basino sulla minimizzazione dell’errore quadraticomedio, quindi, questo indice non e sufficiente a validare, da solo, la bonta del modello. Si dovrannocercare altri indicatori e valutare opportunamente i risultati ottenuti.

Una possibile soluzione alla limitatezza della famiglia dei modelli e quella di espanderla. Questoconduce a considerare delle famiglie di funzioni, dette approssimatori universali (es. reti neurali),che, cosı come l’espansione in serie di Fourier approssima il valore di una funzione periodica,approssimano una generica funzione nonlineare.

4.5 Regressore

I modelli ARX e AR possono essere riscritti in termini di regressore. Scrivendo esplicitamentel’equazione alle differenze otteniamo:

y(k) = a1y(k − 1) + a2y(k − 2) + . . .+ anay(k − na)++b1u(k − d) + b2u(k − d− 1) + . . .+ bnb

u(k − d− nb + 1) + ζ(k) (4.34)

che puo essere riscritta come operazione matriciale:

y(k) = [ y(k − 1) . . . y(k − na) u(k − d) . . . u(k − d− nb + 1) ]

a1

. . .ana

b1. . .bnb

+ ζ(k) (4.35)

ossiay(k) = H(k)θ + ζ(k) (4.36)

in cui H(k) e il regressore ed il vettore θ il vettore dei parametri da identificare.

Nel seguito, si considera il caso di sistema MIMO (Multi-Input-Multi-Output) con m uscitey(k). Si considera inoltre che il vettore dei parametri θ abbia dimensione n, funzione del numero diingressi e dell’ordine del modello scelto. Di conseguenza il regressore e una matrice H(k) ∈ IRm×n

ed il rumore un vettore delle dimensioni dell’uscita di covarianza Rv. La relazione precedente,quindi, assume la forma:

y(k) = H(k)θ + ζ(k) (4.37)

Si noti come in molti testi il regressore sia presentato come un vettore, colonna per definizione,e nella (4.36) compaia quindi trasposto.

Page 76: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 75

Il predittore assume quindi la semplice forma:

y(k) = H(k)θ (4.38)

e l’errore di predizione:ε(k) = y(k)− y(k) = y(k)−H(k)θ (4.39)

4.6 Algoritmo a minimi quadrati

La relazione (4.38) non e, in generale, direttamente utilizzabile per stimare θ; poiche m < n,infatti, il regressore e una matrice rettangolare bassa. Esistono infiniti vettori dei parametri cheforniscono una determinata uscita per un determinato regressore.

Si puo osservare, pero, come quella relazione debba essere valida istante per istante. Siconsiderino quindi un numero sufficientemente alto di istanti di misura: y(k − l),y(k − l +1), . . . ,y(k). Si definisca un vettore y(k) ∈ IRm·l ottenuto impilando i vettori y(·):

y(k) =

y(k − l)y(k − l + 1)

...y(k)

. (4.40)

In maniera analoga si puo definire il vettore v(k) ottenuto impilando i corrispondenti istantidi tempo di ζ(·). Si definisca inoltre la matrice H(k) come

H(k) =

H(k − l)H(k − l + 1)

...H(k)

. (4.41)

La relazione (4.37), calcolata su piu istanti di tempo, puo essere quindi riscritta come:

y(k) = H(k)θ + v(k); (4.42)

si noti che, essendo la matrice H(k) ottenuta impilando in colonna le matrici H(k), il vettore θ elo stesso di (4.37). L’eq. (4.42) differisce dall’eq. (4.37) solo per il numero di righe della matriceH(k) e dei vettori y(k) e v(k). Affinche il problema sia correttamente definito e necessario chela matrice H(k) sia rettangolare alta, cioe che m · l > n.

E immediato scrivere un vettore impilato di errori di predizione:

e(k) = y(k)− y(k) = y(k)−H(k)θ. (4.43)

L’indice, scalare, rispetto al quale si calcola la soluzione ottima e la somma del quadrato deglierrori di predizione:

J = e(k)Te(k). (4.44)

L‘equazione (4.44) puo essere riscritta come:

J = [y(k)−H(k)θ]T [y(k)−H(k)θ]

Page 77: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 76

= yT(k)y(k)− yT(k)H(k)θ − θTHT(k)y(k) + θTHT(k)H(k)θ. (4.45)

Condizione necessaria affinche J abbia un estremo relativo (punto stazionario) e che le derivateparziali rispetto a θ siano nulle. Imponendo questa condizione otteniamo la cosiddetta equazione

normale:∂J

∂θ= 0 ⇒ −2yT(k)H(k) + 2θTHT(k)H(k) = 0. (4.46)

Supponendo invertibili le matrici interessate si ottiene la soluzione ai minimi quadrati (LS, LeastSquares):

θ =(HT(k)H(k)

)−1HT(k)y(k). (4.47)

La matrice che lega i dati alla stima ha dimensione (n × l · m) ed e la pseudoinversa dellamatrice H. Si definisce:

H† =(HT(k)H(k)

)−1HT(k). (4.48)

Si noti che l’indice di merito e funzione del vettore n-dimensionale θ, la sua derivata parziale,quindi, ha dimensione n. La soluzione trovata non e solo un estremo relativo ma un minimo dellafunzione come si puo facilmente dimostrare calcolando la matrice (n× n) delle derivate secondedi J rispetto a θ:

∂J

∂θ

(∂J

∂θ

)

= 2HT(k)H(k) (4.49)

che e definita positiva per costruzione.

Esempio : retta interpolante

Una semplice applicazione della formula dei minimi quadrati e fornita dalla interpolazione di datiottenuti tramite una misura corrotta da rumore. Si supponga di voler interpolare dei dati con unaretta:

y = αx+ y0

in un insieme di l punti,x = [x1 . . . xl ]

T

ottenendo un corrispondente insieme di l misure

ymis = [ ymis,1 . . . ymis,l ]T

che, impilando le misure ed aggiungendo il rumore di misura, gaussiano bianco per ipotesi, permettedi scrivere la seguente relazione:

ymis,1

...ymis,l

= α

x1...xl

+

y0...y0

+

ζ1...ζl

in cui, esplicitando la linearita nei parametri:

ymis,1

...ymis,l

=

x1 1...

...xl 1

[α y0 ] +

ζ1...ζl

= Hθ + ζ

Page 78: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 77

da cui e immediato ricavare una stima utilizzando la formula dei minimi quadrati:

θ = H†ymis.

Considerando il problema in esame di 2 incognite si consideri l = 10. Si abbia:

x = [ 1 2 3 4 5 6 7 8 9 10 ]T

e si supponga di avere generato i dati realmente tramite una retta in cui:

α = 1y0 = −2

e il rumore ha varianza σ = 1, cui corrisponde un vettore delle misure:

ymis = [−1.43 −1.66 1.12 2.28 1.85 5.19 6.18 5.96 7.32 8.17 ]T

e i parametri stimati:

α = 1.14y0 = −2.78.

In figura 4.2 e rappresentata la retta interpolante (linea sottile), quella che ha generato i dati (lineaspessa) e i punti di misura.

Figura 4.2: Retta originaria (linea spessa), dati misurati (punti) e retta interpolante (linea sottile).

E utile osservare come si possa diminuire l’errore sulla stima dei parametri incrementando il numerodi misure. Asintoticamente, inoltre, tale errore puo convergere al valore nullo perche il modelloutilizzato per la stima e uguale al meccanismo di generazione dei dati.

Esercizio : polinomio interpolante

Si generalizzi l’esempio precedente considerando di interpolare i dati tramite un polinomio di gradon.

Page 79: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 78

4.6.1 Algoritmo a minimi quadrati pesati

Modificando la cifra di merito da minimizzare si ottiene una differente soluzione, definita MinimiQuadrati Pesata (WLS, Wighted Least Square). L’indice e ora la somma pesata del quadratodegli errori di stima:

J = e(k)TW(k)e(k) (4.50)

in cui la matrice di peso W(k) e scelta impilando l matrici W definite positive come gia fatto perH. W e definita positiva per costruzione. Se si pone W = R−1

v si ottiene la stima Markoviana.

Ripetendo i passaggi della Sezione precedente, l’equazione (4.50) puo essere riscritta come:

J = [y(k)−H(k)θ]T W(k) [y(k)−H(k)θ]= yT(k)W(k)y(k)− yT(k)W(k)H(k)θ − θTHT(k)W(k)y(k)+

+θTHT(k)W(k)H(k)θ. (4.51)

La corrispondente equazione normale assume la forma:

∂J

∂θ= 0 ⇒ −2yT(k)W(k)H(k) + 2θTHT(k)W(k)H(k) = 0. (4.52)

Supponendo invertibili le matrici interessate si ottiene la soluzione ai minimi quadrati pesata:

θ =(HT(k)W(k)H(k)

)−1HT(k)W(k)y(k). (4.53)

Derivando ancora∂J

∂θ

(∂J

∂θ

)

= 2HT(k)W(k)H(k) (4.54)

che e definita positiva per costruzione e conferma i risultati della soluzione ai minimi quadraticome caso particolare dei minimi quadrati pesati con W = I.

Esercizio : Minimi Quadrati regolarizzati

Come alternativa all’indice (4.50), si consideri

J = (θ − θ0)TΠ−1(θ − θ0) + e(k)TW(k)e(k)

in cui la matrice Π ∈ IRn×n e definita positiva e θ0 ∈ IRn e un vettore noto. Il vantaggio diquesto indice e che permette di ottenere una soluzione anche nel caso in cui la matrice H nonabbia rango pieno. Nel caso di matrice H malcondizionata, inoltre, questo indice consente di avereun problema meglio condizionato numericamente.

Si dimostri che:

θ = θ0 +[Π−1 + HT(k)W(k)H(k)

]−1HT(k)W(k) [y(k)−H(k)θ0] .

Page 80: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 79

4.6.2 Media e Covarianza dell’errore di stima

Supponendo di aver generato i dati con il modello ARX o AR e possibile valutare le proprietastocastiche della stima ottenuta con i minimi quadrati. Si fa riferimento al caso pesato con ovviaparticolarizzazione al caso non pesato.

L’errore di stima al passo k e fornito da:

θ = θ − θ = θ −(HT(k)W(k)H(k)

)−1HT(k)W(k)y(k)

= −(HT(k)W(k)H(k)

)−1HT(k)W(k)v(k) (4.55)

da cui, calcolando il valor atteso e portando i valori deterministici fuori dell’operatore:

E[θ] =(HT(k)W(k)H(k)

)−1HT(k)W(k)E[v(k)]. (4.56)

Affinche il valore atteso dell’errore di stima sia nullo e quindi necessario che la matrice da invertireabbia rango pieno (si veda sezione 4.6.4) e che il rumore (bianco per ipotesi) abbia valor attesonullo. Se il rumore non fosse bianco ed avesse, quindi, una correlazione nel tempo dei propricampioni e se il meccanismo di generazione dei dati avesse na ≥ 1 allora e possibile vedere comeil valore atteso dell’errore non sia nullo.

La covarianza dell’errore, supponendo E[ζ(k)ζ(k)T] = Rv, e fornita da:

E[θθT] =

(HT(k)W(k)H(k)

)−1HT(k)W(k)E[v(k)v(k)T]WT(k)H(k)

(HT(k)W(k)H(k)

)−T. (4.57)

L’espressione (4.57) puo essere minimizzata in funzione del peso. Si ottiene la cosiddetta stimaMarkoviana, in cui W = R−1

v :

E[θθT] =

(HT(k)W(k)H(k)

)−1(4.58)

dove si sono usate le proprieta di simmetria delle matrici W e HT(k)W(k)H(k). Si noti come inquesto caso si suppone nota la covarianza del rumore.

Nel caso dei minimi quadrati, W = I; supponendo inoltre E[v(k)v(k)T] = σ2I si ottiene

E[θθT] = σ2

(HT(k)H(k)

)−1. (4.59)

Si noti che la covarianza dell’errore di stima e proporzionalmente legata, a meno della matriceH, alla covarianza del rumore di misura.

4.6.3 Disuguaglianza di Cramer-Rao

La sezione 4.6.2 mostra una relazione importante per l’operazione dei Minimi Quadrati. Lacovarianza dell’errore e legata alla covarianza del rumore. E di interesse fornire un risultatogenerale dato dalla disuguaglianza di Cramer-Rao: Sia θ una possibile stima di θ tale che lamedia dell’errore sia nulla. Il vettore θ e funzione dei dati y(k) ∈ IRm·l: θ = θ(y) con unafunzione densita di probabilita fy (θ,y). Si ha

E[θθT] ≥M−1 (4.60)

Page 81: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 80

in cui la matrice M ∈ IRn×n definita matrice di informazione di Fisher e definita come:

M = E

[(∂

∂θlog fy (θ,y)

)(∂

∂θlog fy (θ,y)

)T]

= −E[∂2

∂θ2 log fy (θ,y)

]

. (4.61)

Si noti come la valutazione della matrice M richieda la conoscenza del valore esatto deiparametri θ da individuare che non e, ovviamente, disponibile all’utente. La dimostrazione puoessere trovata, per es., in [16].

4.6.4 Persistente eccitazione

Si consideri un caso banale in cui l’ingresso di un modello ingresso-uscita sia costantementenullo durante l’acquisizione dati. E facile immaginare come in questo caso, qualunque valore sidia ai coefficienti bi, non sia possibile individuarne l’eventuale correttezza della stima; durantel’intervallo di interesse, infatti, l’uscita predetta sara indipendente dai valori di bi (si osserva, percondizioni iniziali diverse da zero, la sola evoluzione libera). Il regressore impilato di un modello,per es., ARX(2,2) sara caratterizzato dall’avere due colonne nulle e di essere, quindi, di rango nonpieno. Le formule per risalire alla stima dei parametri, quindi, non possono essere implementate.

La persistente eccitazione puo essere definita, a parole, come la richiesta che l’ingresso varisempre abbastanza da provocare, eccitare tutte le dinamiche del sistema. In formule si richiedeche la la matrice HT(k)H(k) (o la matrice HT(k)W(k)H(k)) sia di rango pieno.

Si consideri il caso:y(k) = b1u(k − 1) + b2u(k − 2) + ζ(k),

con regressore impilato

H =

u(2) u(1)u(3) u(2)

......

u(N) u(N − 1)

,

la matrice HT(k)H(k) assume la forma:

HTH =

[u(2) u(3) . . . u(N)u(1) u(2) . . . u(N − 1)

]

u(2) u(1)u(3) u(2)

......

u(N) u(N − 1)

=

[ ∑u2(i)

∑u(i)u(i− 1)

∑u(i− 1)u(i)

∑u2(i− 1)

]

,

ci si chiede se tali sommatorie possano divergere. Al crescere di N , e sotto ipotesi di stazionarieta,si ottiene:

HTH = N

[ru(0) ru(1)ru(1) ru(0)

]

.

La matrice HT(k)H(k) e simmetrica, e i suoi elementi rappresentano la stima numerica dellacorrelazione degli elementi sugli N dati disponibili. Si consideri un caso limite di ingresso costanteu(k) = 1 ∀k. La matrice in questione sarebbe una matrice quadrata di 1 (con dimensioni parial numero dei parametri da identificare) chiaramente singolare, quindi non invertibile.

Se il segnale d’ingresso fosse rumore bianco la matrice (4.6.4) sarebbe la matrice identitamoltiplicata per la varianza del rumore. Il rumore bianco, a meno di problemi legati alla fisicarealizzabilita, e quindi un segnale idoneo per l’identificazione.

Page 82: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 81

Un’osservazione da fare riguarda il numero dei parametri, un possibile metodo per renderequesta matrice non-singolare potrebbe essere quello di ridurre il numero dei parametri fino arendere la matrice piena (un parametro, in questo caso). Invertendo il ragionamento possiamoaffermare che un problema malcondizionato puo essere causato da un eccessivo numero di parametri,da un modello, cioe, sovraparametrizzato.

In pratica il rumore di misura rende sempre la matrice HT(k)H(k) (o la matrice HT(k)W(k)H(k))di rango pieno, dall’osservazione circa la covarianza dell’errore di stima e facile osservare comeil pieno rango non sia sufficiente per una buona identificazione. E necessario anche che il suonumero di condizione sia basso, vale infatti [18]:

∥∥∥θ

∥∥∥

‖θ‖ ≤ cond(H)‖v‖‖y‖ (4.62)

inoltre, ricordando l’espressione della covarianza dell’errore di stima, supponendo cond(H) = 1,e definendo come λ1(H) il valor singolare del regressore, si ha:

E[θθT] =

λ1(H)

]2

I (4.63)

in cui I e la matrice identita di dimensioni opportune. Dal punto di vista teorico, una matrice esingolare quando una o piu colonne posso essere espresse in combinazione lineare delle altre oppurequando almeno una colonna e nulla. Dal punto di vista pratico il rumore di misura garantisce chequesta condizione non sia mai verificata. Le relazione precedenti, pero, ci impongono di verificareche il regressore, per quanto sempre di rango pieno, sia numericamente ben bilanciato.

Osservando la relazione (4.59) e possibile notare come il regressore, oltre ad essere numericamentebilanciato, debba anche essere, in modulo, grande rispetto alla varianza del rumore.

Si parla di identificabilita strutturale per cio che concerne i modelli, sperimentale per cio cheriguarda i dati.

♦Un’ulteriore considerazione e necessaria per comprendere la relazione che intercorre fra l’errore

e la natura dell’ingresso. Ci si chiede se sia possibile avere un errore di predizione nullo conparametri stimati diversi da quelli reali. Si supponga di aver generato i dati tramite un modelloSISO del tipo:

A(z)Y (z) = B(z)U(z) (4.64)

cui corrisponde un predittore del tipo

y(k) =[

1− A(z)]

y(k) + B(z)u(k) (4.65)

ed un errore di predizione:

ε(k) = y(k)− y(k) =B(z)

A(z)u(k)−

[

1− A(z)] B(z)

A(z)u(k)− B(z)u(k) (4.66)

che si suppone nullo: ε(k) = 0:

ε(k) = B(z)u(k)−B(z)u(k) + A(z)B(z)u(k)−A(z)B(z)u(k) = 0. (4.67)

Page 83: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 82

Dobbiamo quindi verificare se la seguente equazione possa essere soddisfatta per stime dei parametridiverse da quelle vere: (

A(z)B(z)−A(z)B(z))

u(k) = 0. (4.68)

Concentriamo l’attenzione sul caso na = 1, nb = 1, d = 1:

A(z) = 1− a1z−1

B(z) = b1z−1

che permette di particolarizzare la (4.68) in:[

(1− a1z−1)b1z

−1 − (1− a1z−1)b1z

−1]

u(k) =[

(b1 − b1)z−1 + (a1b1 − a1b1)z−2]

u(k) = 0. (4.69)

Si supponga di sollecitare il sistema con un ingresso u(k) = cost., riscrivendo la (4.69) nel tempoosserviamo:

(b1 − b1)u(k − 1) + (a1b1 − a1b1)u(k − 2) =[

(b1 − b1) + (a1b1 − a1b1)]

cost. = 0, (4.70)

relazione soddisfatta anche per

(b1 − b1) + (a1b1 − a1b1) = 0 (4.71)

equivalente ab1

1− a1=

b11− a1

(4.72)

che permette di trarre un prima conclusione. Sollecitando il sistema in esame con un ingressocostante e possibile ottenere un errore di predizione nullo che non implica l’identificazione deiparametri corretti. Nel caso specifico di ingresso costante cio che si osserva e che il modelloidentificato ha lo stesso guadagno del modello che ha generato i dati. Siamo in presenza,evidentemente, di un ingresso poco adatto alla identificazione. L’equazione (4.69) e un’equazionealle differenze la cui soluzione, a meno di una traslazione temporale, e data da:

u(k) = λk =

(

−α1

α0

)k

=

(

−a1b1 − a1b1

b1 − b1

)k

. (4.73)

Supponendo di poter sollecitare il sistema esattamente con questo ingresso avremmo un errore dipredizione nullo senza poter, in alcun modo, trarre conclusioni circa la correttezza dei parametri.Si scelga quindi come ingresso un segnale sinusoidale, certamente non soluzione della (4.69), deltipo u(k) = sin(θk), si ottiene che l’errore di predizione e nullo se e solo se

(b1 − b1) = (a1b1 − a1b1) = 0 (4.74)

che implica l’esattezza dei parametri identificati. Per questo caso semplice, sapendo che n =na + nb = 2, si e ottenuto che, ad ingresso sinusoidale ed errore di predizione nullo corrispondela possibilita di identificare due parametri. Nel caso generale e possibile dimostrare ([14]) che unsegnale sinusoidale che contenga un numero di componenti maggiore della meta dei parametri daidentificare, associato ad un errore di predizione nullo, e sufficiente per la corretta identificazionedei parametri.

Questo risultato, ottenuto supponendo che i dati siano stati generati tramite la (4.64) e cheil numero delle incognite sia noto, va generalizzato in un contesto di identificazione praticaosservando che l’indicazione che fornisce e coerente con la condizione di persistente eccitazione:lo spettro del segnale di ingresso deve essere sufficientemente ricco di armoniche.

Page 84: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 83

4.6.5 Legame fra l’errore e i dati

Si consideri la soluzione ai minimi quadrati (4.47)

θ =(HT(k)H(k)

)−1HT(k)y(k)

la definizione dell’errore in (4.43):

e(k) = y(k)− y(k) = y(k)−H(k)θ.

moltiplicando primo e secondo membro per HT si ottiene facilmente:

HT(k)e(k) = HTy(k)−HTH(k)(HT(k)H(k)

)−1HT(k)y(k) = 0. (4.75)

L’interpretazione geometrica di questo risultato e immediata, la proiezione dell’errore di predizionenel range della matrice H(k) e nulla. Oppure, dalla definizione stessa dell’errore, significa direche la soluzione ai minimi quadrati individua come valore ottimo di θ la proiezione di y(k) lungoil range di H(k).

La matrice H(k) e composta dalle misure degli ingressi e delle uscite, la relazione (4.75) esprimeun’ortogonalita fra errore e misure, grossolanamente, l’errore e composto da quelle componentinon contenute nei dati. Sotto l’ipotesi di ergodicita, e possibile giungere alla conclusione che:

E[HT(k)e(k)] = 0, (4.76)

ossia, dalla definizione delle variabili coinvolte:

E[y(k − i)ε(i)] = 0 per i = 1, . . . , naE[u(k − i)ε(i)] = 0 per i = d, . . . , d+ nb− 1

l’errore di predizione, quindi, e quella quantita incorrelata agli ingressi ed alle uscite precedenti.

La rappresentazione geometrica in uno spazio euclideo con θ ∈ IR2 e y ∈ IR3 e data dallaFigura 4.3. Alla luce di questa nuova interpretazione acquista anche piu chiarezza il bisogno digenerare degli ingressi eccitanti.

R(H)y = Hθ

y − yy

Figura 4.3: Interpretazione geometrica del legame fra errore e dati per y ∈ IR3 e θ ∈ IR2.

Page 85: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 84

Esercizio

Si consideri il modello ARX(2,1,2) caratterizzato dai polinomi:

A(z−1) = 1− 1.6z−1 + 0.66z−2

B(z−1) = 2z−2.

Si realizzi la simulazione in Simulink con tempo finale k = 100 considerando un rumore biancocon varianza σ2 = 10−3 ed ingressi:

• Gradino di ampiezza unitaria applicato in k = 5;

• Successione di gradini di ampiezza unitaria di durata k = 40 (20 campioni alti e 20 nulli);

• Rumore bianco con varianza σ2 = 10−1.

Per ogni simulazione di salvi in un file .mat usando il comando save dal prompt del Matlab.

Si realizzi un funzione Matlab per l’identificazione ai Minimi Quadrati con in ingresso le seriestoriche ingresso-uscita e l’ordine del modello ARX ed in uscita il vettore dei parametri identificatoed il numero di condizione del regressore impilato. Utilizzando questa funzione, e lo stesso insiemedi dati generato, si faccia l’identificazione dei modelli ARX(2,1,2), ARX(2,2,1), ARX(2,4,1),ARX(3,3,1), ARX(1,1,2) utilizzando come ingresso la successione di gradini. Si giustifichino idiversi valori del numero di condizione ottenuti anche costruendo un tabella in cui, per ogniidentificazione, si riportano il numero di condizione e la norma di HTH, il vettore dei parametriidentificato e la posizione dei poli della fdt (zeri di A(z)).

Per il modello ARX(2,1,2) (il modello che ha generato i dati), si facciano diverse identificazioniutilizzando un numero decrescente di campioni (es. 100, 50, 10, 5).

Per lo stesso modello si utilizzino i dati ottenuti tramite la simulazione del gradino e del rumorebianco. Si giustifichino le differenze fra i risultati.

Al modello Simulink si aggiunga ora un rumore colorato tramite:

C(z−1) = 1− 0.3z−1,

e si utilizzino i Minimi Quadrati per identificare il modello ARX(2,1,2). Quale proprieta della stimanon e piu garantita?

Per i modelli ARX individuati si provveda poi ad effettuare una opportuna validazione. Per ognunodei modelli si calcoli il valore della cifra di merito (errore quadratico medio), la eventuale bianchezzadel vettore dell’errore di predizione tramite, ad es., il test di Anderson, e si simuli l’uscita rispettoad un ingresso canonico, ad es., un gradino, confrontando graficamente l’uscita simulata con quellamisurata1. Per una piu facile interpretazione dei dati si riportino i risultati in una tabella.

L’esercitazione e finalizzata a far riflettere su alcuni punti evidenziati in teoria nelle sezioni precedenti:

• importanza della scelta di un ingresso opportuno e indicatori quantitativi sulla bonta dellostesso;

• in caso di dubbio sul ritardo d ingresso-uscita, e possibile porre d = 1 e verificare il modulodei coefficienti bi identificati; in generale sovrastimare i coefficienti bi non lede il processo diidentificazione;

• a parita di dati, un modello sovraparametrizzato comporta un problema numericamentemalcondizionato;

• e possibile ottenere una matrice HTH malcondizionata sia per una sovraparametrizzazionedel modello che per una scelta poco eccitante dell’ingresso;

1La predizione al passo k si ottiene utilizzando le uscite misurate dei passi precedenti; la simulazione si ottieneutilizzando le uscite simulate dei passi precedenti (si veda la sezione 4.12.1)

Page 86: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 85

4.7 Algoritmo a Massima Verosimiglianza

La derivazione dei Minimi Quadrati e stata possibile senza introdurre concetti di tipo probabilistico.In questa Sezione verra brevemente introdotto un metodo di identificazione, definito a MassimaVerosimiglianza (MLE Maximum Likelihood Estimator), che si basa sulla conoscenze di caratteristicheprobabilistiche delle variabili in gioco. Per dettagli si faccia riferimento, per es., a [9].

Si supponga di avere a disposizione un vettore di osservazioni y ∈ IRN . Per questo vettore sidefinisce una funzione densita di probabilita:

fy(θ,x) (4.77)

funzione di un vettore di parametri, θ ∈ IRn, da identificare, e della variabile N -dimensionale x.Con lo scopo di identificare θ partendo dall’osservazione dei dati y si considera uno stimatore deltipo:

θ(y) (4.78)

che e una funzione da IRN a IRn. Se il valore osservato di y e y⋆ allora la stima e fornita da:

θ⋆

= θ(y⋆). (4.79)

Un possibile stimatore e stato introdotto da Fisher nel 1912, e puo essere descritto nel modoseguente: la pdf congiunta del vettore casuale dei dati da osservare e dato dalla (4.77), laprobabilita che la osservazione assuma proprio il valore vettoriale y⋆ e quindi proporzionale a:

fy(θ,y⋆). (4.80)

Fornito il valore numerico delle osservazioni y⋆ questa funzione e una funzione numerica di θ,chiamata funzione di verosimiglianza; rappresenta la verosimiglianza che quei dati abbiano luogo.Un possibile stimatore e quello che massimizza la verosimiglianza dei dati:

θML = maxθ

fy(θ,y⋆) (4.81)

e prende appunto il nome di MLE (Maximum Likelihood Estimator).

Esempio

Si considerino N variabili casuali indipendenti con pdf gaussiana a media θ ignota, costante perle N variabili e varianza nota λi. Un possibile stimatore della media e fornito da

θ =1

N

N∑

i=1

y⋆i . (4.82)

Per calcolare lo stimatore MLE si deve ricavare la pdf congiunta del vettore y delle osservazioni.Per ogni elemento yi si ha:

fyi(θ, xi) =

1√2πλi

exp

[

− (xi − θ)22λi

]

data l’indipendenza delle variabili si ottiene:

fy(θ,x) =N∏

i=1

1√2πλi

exp

[

− (xi − θ)22λi

]

.

Page 87: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 86

La funzione di verosimiglianza si ottiene quindi sostituendo y a x. Poiche la funzione logaritmo emonotona crescente la massimizzazione puo essere fatta sul logaritmo della fy:

θML = maxθ

log (fy(θ,y⋆))

= maxθ

{

−N2

log(2π)−N∑

i=1

1

2log(λi)−

1

2

N∑

i=1

(yi − θ)2λi

}

da cui si ricava

θML =1

∑N

i=1(1/λi)

N∑

i=1

y⋆i

λi

.

La differenza rispetto alla stima (4.82), ottenuta assumendo di non avere informazioni sullacaratterizzazione probabilistica dei dati, e data dal fatto che ogni osservazione viene ora pesataper l’inverso della varianza. Lo stimatore MLE pesa in maniera maggiore i valori ottenuti dallevariabili a varianza minore.

♦Si ricavera ora la stima a Massima Verosimiglianza per un vettore delle osservazioni uscita di

un sistema dinamico. Si consideri un modello ARMAX

y(k) = z−dB(z−1)

A(z−1)u(k) +

C(z−1)

A(z−1)ζ(k) (4.83)

Il modello in forma di predizione e dato da:

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k) (4.84)

e l’errore di predizioneε(k) = y(k)− y(k|k − 1) (4.85)

in cui si e evidenziato che la predizione al passo k utilizza i dati fino al campione k − 1. Ognielemento ha pdf fe(k,x,θ) indipendente per ipotesi. Si cerca ora la funzione di verosimiglianzadei dati. Dalla (4.85) si ottiene:

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k) + ε(k) (4.86)

che ha pdf congiunta:

fy(k,y|u,θ) =N∏

i=k

fe (k, y(k)− y(k),θ) (4.87)

di cui si cerca il massimo. Il massimo di fy e anche il massimo di

1

Nlog fy(k,y,θ) =

1

N

N∑

k=1

log fe(ε(k),θ, k), (4.88)

in cui si sfrutta la proprieta che il logaritmo del prodotto e pari alla somma dei logaritmi; definendo

l(k, ε(k),θ) = − log fe(k, ε(k),θ) (4.89)

Page 88: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 87

si ottiene

θML(y) = minθ

1

N

N∑

k=1

l(k, ε(k),θ) (4.90)

che ha un’analogia formale immediata con l’indice utilizzato per ricavare i Minimi Quadrati pesati.

Se la pdf fe e Gaussiana si ottiene:

l(k, ε,θ) = − log fe =1

2log 2π +

1

2log λ+

1

2

ε2

λ(4.91)

in cui, se λ e nota, otteniamo proprio il criterio dei minimi quadrati con minimizzazione dell’errorequadratico. Si noti, infatti, che si deve minimizzare il solo termine in ε2 essendo l la somma ditutti termini definiti positivi.

4.8 Algoritmo di Gauss-Newton

xxx

Esempio

xxx

4.9 Algoritmo a Minimi Quadrati ricorsivo

La soluzione ai minimi quadrati in (4.53) prevede di calcolare la stima dopo aver misurato uncerto intervallo di campioni (da k− l a k). In applicazioni, ad es., di controllo adattativo potrebbeessere inefficiente attendere un intero lotto di dati e poi effettuare un’identificazione fuori linea, edi interesse avere una stima ad ogni passo k da utilizzare per un controllo adattativo. I vantaggidi un algoritmo ricorsivo sono:

• adattativo ai cambiamenti del sistema;

• riduzione della dimensione dei dati da immagazzinare;

• minor carico computazionale;

• utilizzo in applicazioni in tempo reale.

Si vuole quindi mettere in relazione la stima al passo k con la stima al passo k − 1.

Si prenda il primo termine della (4.53), direttamente dalla definizione delle matrici coinvolteotteniamo la seguente scomposizione:

HT(k)W(k)H(k) = HT(k − 1)W(k − 1)H(k − 1) + HT(k)WH(k). (4.92)

Si definisca P (k) ∈ IRn×n come

P (k) =(HT(k)W(k)H(k)

)−1. (4.93)

Page 89: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 88

Si noti come, per la stima Markoviana, la matrice P (k) sia proprio la covarianza dell’erroredi stima. Nel caso dei minimi quadrati e proporzionale alla matrice di covarianza a menodella covarianza del rumore (costante). Anche nel caso generico la matrice P (k) e strettamentelegata alla covarianza tanto che, nel seguito, parleremo di P (k) correntemente come covarianzadell’errore di stima.

In virtu di (4.92), P (k) puo essere riscritta come:

P (k) =[P−1(k − 1) + H(k)TWH(k)

]−1, (4.94)

sfruttando il lemma riportato in appendice si ottiene

P (k) = P (k − 1)− P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1H(k)P (k − 1). (4.95)

Si passi poi alla scomposizione del secondo termine della (4.53) ottenendo:

HT(k)W(k)y(k) = HT(k − 1)W(k − 1)y(k − 1) + HT(k)Wy(k). (4.96)

E possibile riscrivere la (4.53) secondo le due scomposizioni (4.95) e (4.96) ottenendo:

θ(k) ={

P (k − 1)− P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1H(k)P (k − 1)

}

∗{HT(k − 1)W(k − 1)y(k − 1) + HT(k)Wy(k)

}, (4.97)

il prodotto dei primi termini delle due parentesi e proprio la (4.53) all’istante k − 1: θ(k − 1). Epossibile quindi riscrivere l’equazione precedente:

θ(k) = θ(k − 1) + P (k − 1)HT(k)Wy(k)+

−P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1H(k)θ(k − 1)+

−P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1H(k)P (k − 1)HT(k)Wy(k)

si definisca ora la matrice dei guadagni L(k) ∈ IRm×n:

L(k) = P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1, (4.98)

che permette di riscrivere l’equazione come:

θ(k) = θ(k − 1) + P (k − 1)HT(k)Wy(k)+−L(k)H(k)θ(k − 1)−L(k)H(k)P (k − 1)HT(k)Wy(k), (4.99)

per far comparire come moltiplicatore comune L(k) fra il secondo e terzo prodotto del secondotermine si aggiunga la seguente identita:

[W−1 + H(k)P (k − 1)HT(k)

]−1 [W−1 + H(k)P (k − 1)HT(k)

](4.100)

questo permette di riarrangiare i termini secondo:

θ(k) = θ(k − 1)+

Page 90: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 89

+L(k)[

y(k) + H(k)P (k − 1)HT(k)Wy(k)−H(k)θ(k − 1)−H(k)P (k − 1)HT(k)Wy(k)]

che fornisce la relazione cercata nota come ai Minimi Quadrati Pesata Ricorsiva (WRLS, WeightedRecursive Least Square):

θ(k) = θ(k − 1) + L(k)[

y(k)−H(k)θ(k − 1)]

. (4.101)

Ovviamente i conti fatti riconducono ai Minimi Quadrati Ricorsivi (RLS, Recursive LeastSquare) per W = I.

y(k)+

−L(k)

+

+

θ(k)

z−1H(k)

θ(k − 1)

Figura 4.4: Rappresentazione a blocchi dei Minimi Quadrati Ricorsivi.

Esistono molte versioni di minimi quadrati ricorsivi piu o meno onerose dal punto di vistacomputazionale. In particolare, nel caso di uscita scalare, e possibile aggiornare la stima senzaricorrere ad inversioni matriciali.

4.9.1 Algoritmo a minimi quadrati esteso e massima verosimiglianza approssimata

Gli algoritmi presentati, LS, WLS, RLS, WRLS, ben si adattano ai modelli AR e ARX chepresentano l’importante proprieta di linearita nei parametri. Questa permette di riscrivere ilmodello ed il corrispondente predittore in forma di regressione e di impostare il problema diminimo che fornisce gli algoritmi suddetti. Per tutti i modelli con rumore colorato MA nonsi possono banalmente applicare i risultati visti. La conseguenza sarebbe quella di avere unapolarizzazione nella stima dei parametri [20].

Una prima osservazione da fare riguarda l’operazione che e stata fatta per ricavare la stima:impostata una funzione obiettivo (o cifra di merito) si e cercato il minimo assoluto. Questaoperazione puo essere ripetuta anche per modelli nonlineari nei parametri usando specifichetecniche di ricerca del minimo. In caso di funzioni scalari di n variabili e noto che sussiste ilproblema della possibilita di imbattersi in un minimo locale. Le tecniche utilizzate allora sarannoalgoritmicamente piu onerose ma concettualmente identiche al LS. Spesso, inoltre, si tratta ditecniche ricorsive basate sul gradiente della funzione stessa.

In questo contesto si vuole perseguire una diversa strada, ci si chiede se sia possibile utilizzarei risultati ottenuti per una soluzione, magari approssimata, ma semplice.

Per semplicita di notazione, si consideri il caso ad una uscita del modello ARMA. Scrivendoesplicitamente l’equazione alle differenze otteniamo:

y(k) = a1y(k − 1) + a2y(k − 2) + . . .+ anay(k − na)+

Page 91: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 90

+c1ζ(k − 1) + c2ζ(k − 2) + . . .+ cncζ(k − nc) + ζ(k) (4.102)

che puo essere riscritta come operazione matriciale:

y(k) = [ y(k − 1) . . . y(k − na) ζ(k − 1) . . . ζ(k − nc) ]

a1

. . .ana

c1. . .cnc

+ ζ(k) (4.103)

ossiay(k) = H(k)θ + ζ(k) (4.104)

Si noti come i valori passati di ζ non siano accessibili per definizione. Non e quindi possibilericavare numericamente questo regressore. Esistono una serie di tecniche per stimare il valorepassato di ζ ed inserirlo nel calcolo del regressore.

Una prima soluzione consiste nel sostituire i valori passati di ζ con i corrispondenti valoripassati dell’errore di predizione ε(k) = y(k)−H(k)θ(k − 1) ottenendo:

y(k) = [ y(k − 1) . . . y(k − na) ε(k − 1) . . . ε(k − nc) ]

a1

. . .ana

c1. . .cnc

+ ζ(k) (4.105)

su cui e possibile lavorare con i risultati del RLS. Questa tecnica e nota come Minimi QuadratiRicorsivi Estesi (RELS, Recursive Extended Least Square). Il motivo per cui si pensa di sostituireζ con ε e dato dall’osservazione che, a regime, sotto ipotesi di aver fatto una buona osservazione,l’errore di predizione dovrebbe coincidere proprio con il rumore ζ. Questo algoritmo, ottenuto inmaniera completamente euristica, non converge sempre al valore vero anche nel caso in cui i datisiano generati da un modello ARMA(X); per un controesempio si veda [2].

L’errore di predizione e anche definito errore a priori poiche e calcolato utilizzando i daticorrenti e la stima dei parametri precedente. Nella matrice regressore si potrebbe pensare diutilizzare una stima piu raffinata dell’errore di predizione, definita errore di predizione a posterioriη(k) = y(k) −H(k)θ(k) calcolata al passo precedente. Questa tecnica e nota come MassimaVerosimiglianza Approssimata (AML, Approximate Maximum Likelihood). Per dettagli [2, 20].

Si noti come entrambe queste tecniche approssimate siano definite solo per la versione ricorsiva.

♦Per riassumere, i passi necessari alla implementazione delle tecniche ricorsive ai minimi quadrati

sono riassunti:

1. calcolo di H(k). per ERLS utilizzando i valori passati dell’errore di predizione a priori ε(k),per AML dell’errore a posteriori η(k);

2. calcolo di ε(k) = y(k)−H(k)θ(k − 1);

Page 92: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 91

3. calcolo del guadagno L(k) secondo la (4.98):

L(k) = P (k − 1)HT(k)[W−1 + H(k)P (k − 1)HT(k)

]−1;

4. calcolo della matrice di covarianza P (k):

P (k) = P (k − 1)−L(k)H(k)P (k − 1);

5. aggiornamento della stima θ(k) = θ(k − 1) + L(k)ε(k);

6. nel caso dell’AML calcolo di η(k) = y(k)−H(k)θ(k).

Per l’algoritmo ricorsivo si pone il problema della inizializzazione della stima θ(0) e dellacovarianza P (0).

4.9.2 Inizializzazione degli algoritmi ricorsivi

Si e visto come, per tutti gli algoritmi ricorsivi, siano necessarie delle informazioni relative al passoprecedente. E quindi necessario, in qualche modo, fornire delle informazioni relative a k = 0, valea dire inizializzare l’algoritmo.

La prima osservazione da fare riguarda la costruzione del regressore, e evidente che, prima dipoter fornire una stima dell’uscita, e necessario avere na campioni dell’uscita e nb+d dell’ingresso.Il massimo fra questi valori +1 determina l’istante k nel quale il predittore fornisce una primastima y(k) (in formule, k = max (na, nb + d− 1) + 1).

Il calcolo dell’errore a priori richiede una stima iniziale del vettore dei parametri, la stessa cosavale per il calcolo della matrice L, in questo caso serve una stima della covarianza dell’errore. Unmodo per ottenere queste due stime e quello di implementare un algoritmo di minimi quadratia lotti e poi cominciare la stima iterativa utilizzando questa prima stima come valore iniziale (siveda Figura 4.5). Questa tecnica, valida, ovviamente, solo per le tecniche con un corrispondentea lotti, garantisce l’aderenza esatta dei risultati fra i minimi quadrati a lotti e ricorsivi a menodi derive di natura numerica. In realta, se la stima e fatta durante un applicazione in lineal’ingresso e deciso per scopi non legati all’identificazione e, con buona propabilita, non e adattoper un primo lotto ben condizionato numericamente.

La stima θ puo anche essere inizializzata ad un valore fornito da una conoscenza della fisicadel sistema in esame.

Per P (0) si consideri la possibilita di prendere una matrice identita moltiplicata per unguadagno scalare. Un alto valore implica incertezza nella stima di θ, di conseguenza il guadagnodell’algoritmo e alto e ci si possono attendere forti variazioni nel valore numerico dei parametri nelcorso delle iterazioni. L’opposto per un valore piccolo della covarianza. Una conoscenza accuratadei parametri, inoltre, potrebbe anche permettere l’evoluzione con guadagni differenti per lediverse componenti di θ semplicemente scegliendo una matrice diagonale e tarando opportunamentei valori sulla diagonale.

4.9.3 Persistente eccitazione per gli algoritmi ricorsivi

La scelta di un ingresso eccitante e stata giustificata per l’algoritmo a Minimi Quadrati a lotti.Anche nella versione ricorsiva l’ingresso deve eccitare tutti i modi del sistema; a differenza della

Page 93: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 92

k

︸ ︷︷ ︸

lotto per stima inizialeinizio algoritmo ricorsivo

Figura 4.5: Possibile inizializzazione di un algoritmo ricorsivo, il primo lotto di dati vieneutilizzato per una stima iniziale.

versione a lotti, pero, il problema che si incontra non riguarda l’invertibilita di matrici, sia P (k)che L(k), infatti, sono sempre definite per costruzione, ma la possibilita di causare un’instabilitaalgoritmica. Localmente, vale a dire per un numero limitato di campioni, nessun ingresso puoconsiderarsi eccitante; se pero la presenza di un ingresso non eccitante viene prolungata per unintervallo di campioni sufficiente ampio allora si puo incorrere in instabilita algoritmica.

Alcuni segnali utilizzati per l’identificazione tramite algoritmi ricorsivi sono:

Onda quadra Permette di scegliere l’ampiezza dell’ingresso evitando quindi la eventuale sollecitazionedi dinamiche non-lineari non modellate. La frequenza dell’onda quadra va scelta in manieraopportuna, la risposta del sistema, infatti, deve avere il tempo di raggiungere il regime malo stesso regime non deve essere predominante nell’intervallo della singola onda. Una regolaeuristica consiste nel prendere un’onda quadra di durata pari a circa 6 volte la costante ditempo del sistema.

Rumore binario pseudo-casuale Conserva la limitatezza dell’ingresso dell’onda quadra masollecita uno spettro piu ampio. Euristicamente si sceglie la frequenza di clock pari allabanda del processo.

Rumore a fdp uniformemente distribuita Conserva la limitatezza dell’ingresso ma, a differenzadei due segnali precedenti, assume tutti i valori di un determinato intervallo. In sistemi connon-linearita di tipo dead-zone questo ingresso non e appropriato.

Rumore a fdp Gaussiana E l’unico segnale che non limita con certezza l’ampiezza dell’ingresso,questo puo forzare alla scelta di una bassa varianza con conseguente concentrazione delsegnale di energia per basse ampiezze del segnale. Si possono incontrare anche in questicasi problemi in sistemi con non-linearita di tipo dead-zone.

4.9.4 Gestione della covarianza

Gli algoritmi ricorsivi presentati hanno una forte limitazione. La matrice di covarianza P (k)tende ad annullarsi per k ⇒∞.

Questo puo essere visto in maniera intuitiva, se l’identificazione procede correttamente eauspicabile che la covarianza dell’errore di stima decresca monotonamente. La conseguenza eche l’algoritmo smette semplicemente di aggiornare la stima dei parametri indipendentementedall’errore di stima. Si noti come questa caratteristica non sia strettamente legata alla sceltaeccitante degli ingressi. Anche per ingressi eccitanti la covarianza decresce a zero. Se i parametrisubiscono una variazione, quindi, l’algoritmo non e in grado di reagire ed aggiornare correttamenteil valore della stima.

Page 94: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 93

Un altro modo per verificare semplicemente la decrescenza della covarianza si ha considerandola formula (4.94) in cui il termine HT(k)WH(k) e definito positivo per costruzione.

Si devono quindi introdurre degli artifici che tengano il guadagno dell’algoritmo alto.

Passeggiata casuale

Se e noto il momento i cui i parametri sono soggetti a cambiamento si potrebbe anche tollerareche il guadagno converga a zero a meno di fornire all’algoritmo la capacita di adattamento nelmomento in cui, o appena prima, i parametri cambieranno il loro valore. In formule, per un soloistante k:

P (k) = P (k − 1)−L(k)H(k)P (k − 1) + R (4.106)

dove R e una matrice semidefinita positiva di dimensioni pari al numero dei parametri. Si noticome la scelta naturale di R sia una matrice diagonale con gli elementi della diagonale diversi dazero in corrispondenza dei parametri soggetti a cambiamento.

L’interpretazione qualitativa della (4.106) e semplice, si lascia decrescere il guadagno a zero elo si resetta ad un valore diverso da zero per quei parametri per cui e avvenuto un cambiamento.

Il modello passeggiata casuale (Random Walk) anche detto moto Browniano, e un l’integraledi un rumore bianco:

p(k) = p(k − 1) + ζ(k).

E possibile dimostrare che se la deriva dei parametri e descritta dall’integrale un rumore biancodi covarianza R allora la (4.106), applicata ad ogni istante e il cui valore rappresenta la stimadella covarianza con cui derivano i parametri, soddisfa dei criteri di ottimo secondo il filtro diKalman (per dettagli [20]).

Fattore di oblio

Il modo piu popolare per ovviare all’annullamento del guadagno e l’introduzione del fattore dioblio. Si sfruttano i risultati dell’algoritmo RWLS definendo opportunamente il peso. Si considerila cifra di merito:

J = e(k)TW(k)e(k)

in cui W e ottenuta, come noto, impilando le matrici W . Si supponga di considerare W tempo-variante e di legarlo alla differenza fra il tempo corrente e l’istante in cui si calcola l’errore:

W(k) = diag{. . . , µ2I, µ1I, I}.

con µ < 1. Valori tipici per µ sono µ ∈ [0.95, 1[. L’indice J , riscritto in termini di sommatoria,potrebbe essere scelto come:

J =k∑

i=k0

µk−iεT(i)ε(i),

il cui peso e mostrato in Figura 4.6. Dalla definizione di P (k) in (4.93) e dalla definizione diW(k) si ottiene la (4.94) che, particolarizzata per questo specifico peso, puo essere scritta come:

P (k) =[HT(k − 1) (µW(k − 1))H(k − 1) + H(k)TWH(k)

]−1

=[µP−1(k − 1) + H(k)TH(k)

]−1,

Page 95: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 94

applicando ancora il lemma di inversione matriciale si ottiene

P (k) =1

µP (k − 1)− 1

µP (k − 1)HT(k)

[µI + H(k)P (k − 1)HT(k)

]−1H(k)P (k − 1). (4.107)

Ripetendo poi i passaggi in maniera analoga a quanto fatto per i minimi quadrati ricorsivi siarriva alla definizione di una matrice dei guadagni L(k):

L(k) = P (k − 1)HT(k)[µI + H(k)P (k − 1)HT(k)

]−1, (4.108)

e dell’equazione di aggiornamento della stima dei parametri formalmente analoga alla (4.101).

L’introduzione del fattore di oblio ha proprio lo scopo evitare il decrescere a zero del guadagno.Questo meccanismo ha un difetto, una scelta errata del valore iniziale di P (0) (la sua norma etroppo alta) o la presenza di intervalli di tempo in assenza di ingressi eccitanti puo avere effettidestabilizzanti sulla dinamica del guadagno. Questo fenomeno e noto come wind-up della matricedi covarianza.

1

k = 0k = −100

µ = 0.97

µ = 0.9

Figura 4.6: Variazione del peso dei dati per due valori di µ nei 100 campioni passati.

Algoritmi a traccia costante

Una tecnica per ovviare al problema precedente e quella di forzare la matrice in (4.106) adavere una traccia costante scegliendo una opportuna R(k). Applicando l’operatore di traccia, edimponendo costante la traccia di P (k), otteniamo la condizione:

tr[R(k)] = tr [L(k)H(k)P (k − 1)] (4.109)

soddisfatta scegliendo una matrice

R(k) =tr[R(k)]I

tr[I]. (4.110)

Si noti come la matrice identita delle ultime due equazioni va scelta di dimensioni opportune,pari al numero delle uscite nel primo caso, pari al numero dei parametri da identificare, nelsecondo.

Page 96: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 95

Operativamente, quindi, si stima prima la traccia della matrice R(k) al passo k, poi si costruiscela matrice stessa e si somma all’aggiornamento della covarianza cosı come fatto per la passeggiatacasuale.

Si noti come permane il problema di ingresso non eccitante per un intervallo, in questo caso lamatrice R(k) tende ad annullarsi vanificando il suo contributo. Una possibile soluzione e quelladi limitare inferiormente la matrice R(k).

Fattore di oblio direzionale

Una seconda tecnica per ovviare al wind-up della matrice di covarianza e quella di utilizzare unfattore di oblio variabile solo nelle direzioni dello spazio dei parametri in cui le informazioni sonosignificative.

In pratica il fattore di oblio µ non e costante ma tempo variante e legato al contenutoinformativo dei nuovi dati.

Esempio

Al calcolatore si e generata una serie ingressi-uscite del modello ARX:

A(z−1) = 1− 1.6z−1 + 0.66z−2 (4.111)

B(z−1) = 2z−2,

in cui, quindi, na = 2, d = 2 e nb = 1. La fdt ingresso-uscita, a meno di una traslazione temporale,puo essere scritta in potenze positive di z come:

G(z) =2

z2 − 1.6z + 0.66.

La fdt rumore-uscita:

W (z) =1

z2 − 1.6z + 0.66.

Si generano, tramite simulazione, due serie storiche di dati di 100 campioni che verranno utilizzateper identificare e validare l’identificazione (figure 4.7 e 4.8).

Il rumore di modello e stato simulato tramite la generazione di un numero casuale con funzionedensita di probabilita gaussiana a media nulla e varianza 10−3.

L’identificazione a lotti, ponendo d = 2 ha fornito come risultato:

θLS = [−1.6015 0.66129 1.9977 ]T,

con cifra di merito calcolata sulla traiettoria di validazione

JLS = 1.0243 · 10−3,

il test di Anderson risulta soddisfatto e la simulazione, effettuata sulla traiettoria di validazione,mostra una buona aderenza fra l’uscita misurata e quella simulata (figura 4.9). Si noti come, incaso di mancata conoscenza del parametro d, si sarebbe potuto procedere identificando nb = 2, iltermine in k−1 identificato sarebbe stato numericamente prossimo allo zero. Questi risultati sonoovvi, il modello usato per identificare i dati e uguale al meccanismo di generazione dei dati e latraiettoria e eccitante. Cerchiamo ora di mettere in evidenza le proprieta dinamiche dell’algoritmoricorsivo indipendenti dalla natura dei dati.

Page 97: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 96

0 20 40 60 80 100

0

0.2

0.4

0.6

0.8

1

ingr

esso

campioni

0 20 40 60 80 100

0

10

20

30

40

usci

ta

campioni

Figura 4.7: Ingresso e uscita di identificazione.

Si esegue ora lo stesso algoritmo in forma ricorsiva con W = I con condizioni iniziali:

θRLS(0) = [ 0 0 0 ]T,

eP RLS(0) = 103I.

I risultati ottenuti sono simili ai precenti:

θRLS = [−1.6015 0.66132 1.9975 ]T,

con cifra di merito calcolata sulla traiettoria di validazione

JLS = 1.0241 · 10−3,

test di Anderson soddisfatto e simulazione analoga al caso precedente. L’aspetto negativo dell’implementazionedei minimi quadrati ricorsivi senza nessun meccanismo di gestione della covarianza si puo facilmenteverificare dalla figura 4.10 in cui e riportata la traccia della matrice. Si nota chiaramente come,dopo pochi campioni, la traccia converga a zero vanificando cosı il meccanismo di retroazionesull’errore (il guadagno, infatti, e proporzionale alla covarianza).

Page 98: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 97

0 20 40 60 80 100

0

0.2

0.4

0.6

0.8

1

ingr

esso

campioni

0 20 40 60 80 100

0

10

20

30

40

usci

ta

campioni

Figura 4.8: Ingresso e uscita di validazione.

A causa delle condizioni ideali di questa identificazione la stima del vettore dei parametri convergeal valore vero dopo pochi passi. Anche ripetendo l’identificazione con un diverso valore iniziale,quindi, si giunge rapidamente al valore vero e non si risente dell’assenza del guadagno. Per mostrarecome la convergenza a zero della covarianza sia un problema si ripete l’identificazione partendodai valori iniziali:

θRLS(0) = [−1.2 0.3 1.3 ]T.

La figura 4.11 mostra l’andamento nel tempo della stima del vettore identificato partendo dalledue matrici di covarianza:

P RLS(0) = 1I

eP RLS(0) = 103I.

Si puo notare come, nel caso di bassa covarianza, l’algoritmo smetta di identificare prima diaver raggiunto il valore corretto dei dati nonostante la traiettoria sia sostanzialmente eccitante eperiodica. Un altro aspetto negativo e evidenziato nel caso in cui il modello sia soggetto a parametrilentamente variabili nel tempo. Con covarianza, e quindi guadagno, nullo, infatti, nessuno deglialgoritmi iterativi e in grado di adattarsi a questo cambiamento.

Page 99: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 98

0 50 100 1500

10

20

30

40LS

usci

ta m

isur

ata

(−)

e si

mul

ata

(−x−

)

campioni

Figura 4.9: uscita misurata e simulata per l’identificazione a lotti.

Per ovviare a questo inconveniente si puo ricorrere ad una delle tecniche mostrate. Nel dettaglio,la tecnica dell’identificazione a traccia costante fornisce:

θRLS = [−1.5915 0.65237 2.022 ]T,

con cifra di merito calcolata sulla traiettoria di validazione

JLS = 1.1337 · 10−3.

La tecnica del random walking e del forgetting factor danno risultati scadenti. Il motivo e daricercare nella tipologia di ingresso scelta, vale a dire una successione di gradini, questi ingressihanno lunghi intervalli in cui non sono eccitanti e possono provocare effetti destabilizzanti in questidue algoritmi.

4.10 Cenni sulla identificazione non parametrica

Quando il modello matematico identificato non e riconducibile ad una delle strutture presentateod e, per es., fornito tramite il diagramma di Bode per punti, si parla di identificazione nonparametrica. In questa Sezione vengono elencati alcuni dei metodi di identificazione non parametrica.

4.10.1 Analisi della risposta impulsiva

Si consideri un modello SISO:y(k) = G(z)u(k) + ζ(k) (4.112)

sollecitato da un ingresso impulsivou(k) = αδ(k), (4.113)

la corrispondente uscita sara il segnale αw(k) che caratterizza completamente il comportamentoingresso-uscita del sistema.

In sistemi reali l’ingresso impulsivo spesso non e applicabile per ovvi motivi e diversi ingressi,per es., a gradino, possono essere utilizzati.

Page 100: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 99

0 20 40 60 80 1000

500

1000

1500

2000

2500ARX RLS

trac

cia

P

campioni

Figura 4.10: Andamento temporale della traccia della matrice di covarianza per l’identificazionericorsiva senza gestione della covarianza.

4.10.2 Analisi della correlazione

Si riscriva l’uscita di un modello SISO tramite somma di convoluzione

y(k) =k∑

i=0

w(i)u(k − i) + ζ(k) (4.114)

in cui w(k) e la risposta impulsiva. Si consideri un ingresso con funzione di autocorrelazione:

ru(τ) = E [u(k)u(k − τ)] (4.115)

scorrelata dal rumore: ruζ = 0. Vale:

E [y(k)u(k − τ)] = ryu(τ) = E

[(k∑

i=0

w(i)u(k − i) + ζ(k)

)

u(k − τ)]

=

k∑

i=0

w(i)ru(i− τ).

(4.116)

Se fosse possibile scegliere un ingresso bianco, tale quindi che ru = αδ(τ) si avrebbe:

ryu(τ) = αw(τ) (4.117)

in cui il primo membro puo facilmente essere stimato dai dati tramite la:

ryu(τ) =1

N

N∑

i=1

y(i)u(i+ τ) (4.118)

ottenendo quindi la risposta impulsiva w(k).

Nel caso di ingresso generico si deve stimare la correlazione dell’ingresso tramite la:

ru(τ) =1

N

N∑

i=1

u(i)u(i+ τ) (4.119)

Page 101: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 100

0 20 40 60 80 100−2

−1

0

1

2

3

campioni

para

met

ri

Figura 4.11: Andamento temporale della stima dei 3 parametri per due diversi valori dellacovarianza iniziale.

che fornisce la relazione

ryu(τ) =k∑

i=0

w(i)ru(i− τ) (4.120)

che, risolta numericamente, fornisce ancora la risposta impulsiva. Si noti infatti che questarelazione lega linearmente le incognite; riscrivendola per diversi valori di τ e possibile giungeread un sistema di equazioni lineare ben definito.

Spesso un’analisi della correlazione dei dati puo rappresentare un primo passo per stimare ilritardo ingresso-uscita in un processo di identificazione parametrica.

4.10.3 Analisi della risposta in frequenza

Un metodo molto semplice per aver informazioni sulla funzione di risposta armonica di un processoe dato dalla sollecitazione del sistema con segnali sinusoidali del tipo:

u(k) = U sin(νk), (4.121)

cui corrisponde, per sistemi asintoticamente stabili, un’uscita misurata a regime

yr(k) =∣∣G(ejν)

∣∣U sin(νk + ∠G(ejν)) + ζ(k). (4.122)

E sufficiente quindi cambiare l’ingresso per diverse frequenze in un intervallo di interesse, perognuna delle quali si misura l’uscita a valle dell’estinzione del transitorio, e costruire per punti lafunzione di risposta armonica.

Esercizio : identificazione non parametrica della risposta in frequenza

Si costruisca per punti il diagramma di Bode del modello

A(z−1) = 1− 1.6z−1 + 0.66z−2

B(z−1) = 2z−2,

simulando l’uscita ad ingressi sinusoidali in Simulink.

Page 102: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 101

4.11 Scelta della complessita del modello

Si e ripetuto piu volte come la minimizzazione dell’indice J porti ad inviduare il vettore θ ottimo

secondo un criterio che non deve essere considerado infallibile. La minimizzazione del funzionale,infatti, non sempre porta ad inviduare il modello con le stesse proprieta dinamiche del modelloche ha generato i dati. Spesso, inoltre, serve un compromesso fra un modello aderente ai dati macon una complessita’ non troppo elevata. Potrebbe essere quindi di ausilio disporre di metodi perdecidere l’ordine del sistema da utilizzare. In questa sezione verrano brevemente illustrati alcunimetodi.

4.11.1 Errore di predizione finale

Il metodo basato sull’errore di predizione finale (FPE, dall’inglese Final Prediction Error) si basasulla considerazione che la complessita ideale e quella che minimizza la formula:

FPE =N + n

N − nJ(θ) (4.123)

relativa al caso ARX. Si rimanda al testo di Bittanti [2] per dettagli e per la dimostrazione.L’interpretazione della (4.123) permette di vedere la presenza di due termini, l’indice di merito J ,che ci aspettiamo decrescente rispetto all’ordine n del modello ARX ed il rapporto (N+n)/(N−n)che tende all’infinito quando n tende ad N . E immediato osservare come FPE → ∞, pern → N . Poiche, per piccoli valori di n, ci si puo aspettare una diminuzione di J maggiorerispetto all’incremento del rapporto, il minimo di questa funzione viene assunto per valori finitidi n. Si e fatta l’ipotesi che l’indice di merito, per l’inevitabile presenza di rumore, non si annullimai. Un caso numerico e sviluppato nel Capitolo 5.

La formula (4.123), ricavata per AR, si utilizza comunemente anche per modelli ARX eARMAX avendo cura di considerare n come n = na + nb o n = na + nb + nc.

4.11.2 Criterio dell’informazione di Akaike

Questo criterio, il cui acronimo e AIC, Akaike Information Criterion, e basato su considerazionidi tipo statistico che portano alla formula:

AIC = 2n

N+ lnJ(θ). (4.124)

Ci sono, quindi, due termini additivi. Al logaritmo naturale dell’indice, ancora decrescente alcrescere di n, si somma un retta in n con pendenza positiva, quindi crescente al crescere di n.La pendenza di questa retta e inversamente proporzionale alla lunghezza N dei dati, cio sta asignificare che la formula pesa meno dei modelli complessi quando i dati sono numerosi. Anchein questo caso, a causa della presenza di rumore, l’indice J si mantiene positivo, seppur prossimoallo zero, e quindi il suo ln negativo finito, e l’andamento divergente della funzione e determinatodalla componente proporzionale a n.

Page 103: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 102

4.11.3 Criterio sulla descrizione a lunghezza minima

Il criterio sulla lunghezza minima (MDL, Minimum Description Length) fonda le sue basi sullateoria dei codici. Si perviene alla formula:

MDL = lnNn

N+ lnJ(θ) (4.125)

molto simile alla formula AIC con un coefficiente differente per la pendenza della retta. Con Nsufficientemente elevato, la formula MDL porta a scegliere dei modelli con un numero inferiore diparametri rispetto al criterio AIC.

4.12 Validazione dell’identificazione

Come piu volte detto, l’identificazione e un procedimento che prevede un certo numero di tentativi.Decidere quale modello sia il modello ottimale rispetto ad un insieme di possibili modelli eun’operazione delicata, in cui considerazioni ingegneristiche sono spesso piu utili rispetto adindicatori analitici. In questa Sezione si daranno delle considerazioni da tenere presente nellavalidazione del modello.

Per ognuno dei modelli presi in esame e opportuno prendere in considerazione:

Cross-validazione. La validazione deve essere effettuata usando un insieme di dati diversorispetto a quello utilizzato per l’identificazione. I due insiemi devono pero condividere lostesso contenuto frequenziale per evitare che si cerchi di validare con dei dati che hannoeccitato delle frequenze non presenti nei dati di identificazione. Dei buoni dati di identificazionee validazione dovrebbero essere intercambiabili.

Valore della cifra di merito. La cifra di merito e stata minimizzata per il modelloin esame e con i dati di identificazione, a meno di errori grossolani, quindi, ci si aspettaun errore basso di tale indice e spesso e cosıRiportare numericamente il suo valore, pero,permette proprio di evidenziare la presenza di palesi errori di modello, non-linearita, ordinetroppo basso, ecc.

Bianchezza dell’errore. L’errore calcolato sulla predizione va quindi sottoposto al testdi Anderson per verificarne la bianchezza. La presenza di correlazione sui residui puosignificare un errore di identificazione. Quando si lavora con dati reali non bisogna attenersistrettamente agli indicatori e pochi campioni fuori soglia nel test di Anderson possonocorrispondere egualmente con un buon modello.

Simulazione. Nel paragrafo 4.12.1 vengono evidenziate le differenze fra la simulazionee la predizione. Ogni validazione deve sempre passare attraverso una simulazione in cuil’ingresso, per esempio, e scelto a gradino per evidenziare le caratteristiche dei modi dievoluzione del sistema.

4.12.1 Differenza fra simulazione e predizione

L’operazione di identificazione si basa sulla minimizzazione di una cifra di merito. Ci sonomolteplici motivi che possono portare a sbagliare un’identificazione pur ottenendo un valore basso

Page 104: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 103

della cifra di merito. Per questo e importante, oltre a seguire le cosiderazioni fatte nella sezioneprecedente, anche capire la differenza fra simulazione e predizione.

La predizione si ottiene utilizzando il modello in forma predittiva definito in

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k) (4.26)

si noti come, in ogni istante k, solo il campione dell’uscita all’istante k stesso e una stima mentrei campioni precedenti sono ottenuti tramite delle misure.

Nella simulazione, al contrario, non si utilizzano misure dell’uscita ma solo le stime dei campioniprecedenti. Riferendosi alla equazione (4.26) si puo affermare che la simulazione e equivalente aduna formula del tipo:

y(k) =

[

1− A(z−1)

C(z−1)

]

y(k) + z−dB(z−1)

C(z−1)u(k),

laddove gli ingressi sono gli stessi per i due casi. Appare evidente come la simulazione integri ilproprio errore indefinitamente e risultati molto piu sensibile ad errori di modello.

Questa differenza comporta dei risultati drammaticamente differenti per la simulazione e lapredizione in quanto, rappresentando, ad es., le uscite solo graficamente, la predizione puo darela sensazione di rappresentare meglio il sistema identificato rispetto ad una simulazione anchequando la situazione e esattamente opposta.

La figura 4.12 mostra un semplice confronto fra le uscite di un sistema dinamico di tipoARX(1,1,1) con

b1 = 0.5a1 = 0.5

la predizione (simbolo o) di una identificazione che ha fornito come risultato

b1 = 0.3a1 = 0.7

e la simulazione (simbolo x) di una identificazione che ha fornito come risultato

b1 = 0.45a1 = 0.55

si nota come, a fronte di identificazioni dal risultato palesemente diverso, le sole rappresentazionigrafiche diano risultati accettabili in entrambi i casi.

Page 105: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 104

campioni

y

Figura 4.12: Confronto fra le uscite di un modello dinamico ARX(1,1,1) (linea tratto-punto) edella predizione (linea tratto-o) e della simulazione (linea tratto-x) di due diverse identificazioni.

Page 106: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 5

Identificazione in pratica

In questo capito verrano fornite delle linee metodologiche generali per effettuare un’identificazionein pratica. Alcuni casi pratici verrano quindi presentati.

5.1 Aspetti pratici per l’identificazione

Nel capitolo precedente sono stati forniti un certo numero di algoritmi e modelli dinamici stocastici.Alcuni, risultati, inoltre, sono stati ricavati solo per condizioni ideali difficilmente riproducibili inun caso di identificazione reale. In questa sezione verrano fornite delle linee guida per impostarel’identificazione in un caso reale.

Come precisato nel Capitolo precedente in un procedimento di identificazione e sempre consigliabileutilizzare tutta la conoscenza a-priori che si ha del modello da identificare.

5.1.1 Eliminazione delle componenti continue, delle derive o delle componentistagionali

Una delle ipotesi utilizzate nel ricavare i risultati dell’identificazione e la stazionarieta dei processi.Questo implica un primo trattamento dei dati per verificare, e quindi eliminare un’eventualepresenza di stagionalita. Per quanto concerne il valor medio e sufficiente depolarizzare ingresso euscita e lavorare quindi con segnali a valor medio nullo:

y′(k) = y(k)− 1

N

N∑

i=1

y(i)

u′(k) = u(k)− 1

N

N∑

i=1

u(i).

Nel seguito, dove non esplicitamente detto, i segnali ingresso-uscita si considerereranno a medianulla.

E anche possibile che il segnale sia costituito da una componente di deriva (drift), ossia chela sua derivata prima non abbia media nulla. Anche in questo caso, e buona norma eliminare

105

Page 107: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 106

questa deriva dai dati applicando ai dati stessi un filtro derivatore:

y′(k) = µy′(k − 1) + y(k)− y(k − 1)

u′(k) = µu′(k − 1) + u(k)− u(k − 1),

in cui il parametro µ, costante del filtro, deve essere scelto con molta attenzione. Valori tipici diµ sono µ ∈]0, 0.5]. Diversi filtri possono ovviamente essere usati allo scopo.

5.1.2 Scalatura degli ingressi e delle uscite

Nella Sezione 4.5 e stato ricavato il regressore per un modello ARX o AR. E immediato osservarecome il regressore contenga elementi dipendenti dall’ingresso ed elementi dipendenti dall’uscita,questi formano delle colonne, rispettivamente dipendenti dall’ingresso e dall’uscita, per il regressoreimpilato. Nei casi pratici di identificazione all’ingresso e all’uscita corrispondono delle variabilifisiche, misurate tramite sensori e quindi dotate di una loro unita di misura. Puo accadere,quindi, che, benche il problema sia stato correttamente impostato, ingressi e uscite abbianovalori numerici molto diversi fra di loro. La conseguenza e un malcondizionamento mumericodel regressore. E possibile in questo caso scalare una delle due grandezze moltiplicandola odividendola per una costante e rendere cosı il problema meglio condizionato numericamente.

Questa operazione modifica il valore del guadagno del modello identificato per cui e poinecessario scalare corrispondentemente i coefficienti identificati ai (bi).

Si noti come il malcondizionamento causato da uno sbilanciamento numerico di ingresso euscita non abbia nulla a che vedere con i problemi di malcondizionamento causati dalla scelta diun ingresso non eccitante.

5.1.3 Scelta del modello

Utilizzare le informazioni a-priori permette di ridurre la complessita del modello da identificare. Inalcuni casi e possibile scrivere le equazioni dinamiche del sistema e quindi conoscere esattamentele equazioni alle differenze che lo descrivono. In altri casi e noto un ordine minimo del sistema ola presenza di rumore colorato. Nella descrizione dei modelli lineari stazionari stocastici si e vistocome il modello ARMAX comprenda come casi particolari molti dei modelli presentati, e altresıevidente come un modello ARX possa beneficiare di algoritmi di identificazione che sfruttano lasua proprieta di linearita nei parametri; e quindi preferibile, laddove sia noto, limitare la sceltadel modello al meno complesso possibile.

Presenza di un integratore puro

Nel caso in cui il sistema da identificare presenti un integratore e bene utilizzare questa conoscenzadel modello. Per questo motivo puo essere utile imporre la struttura del modello ad essere unARIMA invece di un ARMA che, come noto, contiene l’ARIMA come caso particolare. Questasituazione puo verificarsi quando si scrivono le equaizoni alle differenze rispetto ad una variabile,ad esempio un’accelerazione, e si misura la sua integrata, la velocita; questo legame fisico puoessere preso in considerazione imponendo la presenza dell’integratore piuttosto che lasciandoneidentificare la sua presenza all’algoritmo.

Page 108: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 107

5.1.4 Determinazione del ritardo ingresso-uscita

Nel caso in cui non si abbia conoscenza a-priori del ritardo ingresso-uscita la scelta piu ovvia edi porre il ritardo d = 0. Se, per ipotesi, fosse stato d > 0, si sarebbe identificato un valore di b1piccolo rispetto a b2 dove si puo convenzionalmente intendere piccolo come:

∣∣∣b1

∣∣∣ < 0.15

∣∣∣b2

∣∣∣

a questo punto si potrebbe ripete l’identificazione ponendo d = 1 e procedendo iterativamentefino ad individuare il ritardo effettivo d.

Un altro metodo per individuare il ritardo ingresso-uscita consiste nell’analizzare la stimanumerica della sua risposta impulsiva (si veda la Sezione 4.10.1 e succ.) ed analizzarne i coefficientiw(k). Anche in questo caso, se:

|w(i)| < 0.15 |w(j)| ∀i < j

si puo consideare d = j come prima approssimazione del ritardo ingresso-uscita.

E bene notare come i due metodi esposti siano fortemente dipendenti dal livello di rumore delsegnale e situazioni ambigue possano presentarsi con estrema facilita.

5.1.5 Determinazione dell’ordine del sistema

Le indicazioni fornite nel Capitolo precedente sulle formule per determinare l’ordine del sistemavanno interpretate alla luce della inevitabile presenza di rumore di misura. E infatti possibile,se non frequente, che le formule FPE, AIC e MDL non forniscano un minimo in corrispondenzadello stesso sistema. La stessa formula, inoltre, puo dare minimi multipli o cambiare il minimoal variare del numero di punti N . Vale la pena di ribadire che le analisi sull’ordine del sistemapossono essere inficiate anche da errori grossolani quali, ad esempio, la scelta di un ingresso noneccitante.

L’identificazione si conferma come un procedimento fatto di tentativi che portano, con l’ausiliodi opportuni strumenti matematici, ad inviduare un modello spesso frutto di diversi compromessi.

Esempio : caso numerico per la scelta dell’ordine del sistema

Si consideri il modello ARX(2,2,1):

A(z−1) = 1− 0.8z−1 + 0.07z−2

B(z−1) = 1 + 0.3z−1

d = 1,

che puo essere scritto, supponendo di identificare d insieme agli elementi di B(z−1), come unARX(2,3,0)

A(z−1) = 1− 0.8z−1 + 0.07z−2

B(z−1) = 0 + 1z−1 + 0.3z−2.

Si realizza una simulazione al calcolatore con N = 1000 campioni, ingresso pari ad una Gaussianaa media nulla e varianza 10 e rumore ancora pari ad una Gaussiana a media nulla e varianzaunitaria. Si noti come le condizioni di identificazioni siano ideali.

Page 109: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 108

Si eseguono 25 identificazioni con l’algoritmo dei minimi quadrati a lotti per na = 1, . . . , 5 enb = 1, . . . , 5 e si calcolano gli indici di merito J e gli indici FPE, AIC e MDL.

L’indice J ottenuto e:na\nb 1 2 3 4 51 326.6188 22.5193 2.2945 2.1275 2.12332 327.5110 3.7437 2.1223 2.1224 2.12153 328.3099 2.3075 2.1218 2.1220 2.12224 327.8558 2.1259 2.1233 2.1242 2.12785 328.2169 2.1317 2.1212 2.1206 2.1173

osservando il quale e possibile fare alcune interpretazioni. La colonna corrispondente a nb = 1 hadegli indici che sono due ordini di grandezza maggiori rispetto al resto della griglia. Si puo quindiipotizzare che il sistema abbia almeno un campione di ritardo fra ingresso e uscita. Un’altro modellosensibilmente diverso rispetto agli altri identificati e quello corrispondente ad un ARX(1,2,0).I rimanenti indici hanno tutti lo stesso ordine di grandezza, incrementando na e nb, inoltre,notiamo dei miglioramenti decisamente marginali. In questo caso il minimo viene raggiunto perl’ARX(5,5,0). Se facessimo affidamento solo sull’indice per determinare l’ordine, quindi, dovremmoconcludere che e necessario aggiungere altre identificazioni con un ordine maggiore.

La matrice relativa alla formula FPE fornisce:na\nb 1 2 3 4 51 327.9279 22.6548 2.3129 2.1489 2.14902 329.4820 3.7738 2.1437 2.1480 2.15143 330.9469 2.3307 2.1474 2.1520 2.15654 331.1508 2.1516 2.1532 2.1584 2.16655 332.1793 2.1618 2.1554 2.1591 2.1601

che, essendo in questo specifico caso (N + n)/(N − n) ≈ 1, e numericamente molto vicino aJ . La formula, pero, modifica il valore del minimo individuato che ora corrisponde al modelloARX(2,3,0). In questo caso, vicino ad una identificazione ideale, il minimo corrisponde al modelloche ha generato i dati ed i valori identificati sono:

A(z−1) = 1− 0.8z−1 + 0.07z−2

B(z−1) = 10−16 + 1z−1 + 0.3z−2 ≈ z−1 + 0.3z−2.

quindi numericamente eccellenti.

Se si fosse utilizzata la formula AIC si avrebbe avuto:na\nb 1 2 3 4 51 0.0232 0.0187 0.0066 0.0075 0.00902 0.0347 0.0106 0.0075 0.0090 0.01053 0.0464 0.0084 0.0090 0.0105 0.01204 0.0579 0.0091 0.0105 0.0121 0.01365 0.0695 0.0106 0.0120 0.0135 0.0150

in cui il minimo viene raggiunto per ARX(1,3,0). La formula MDL in questo caso fornisce lo stessominimo, si ha infatti:

na\nb 1 2 3 4 51 0.0800 0.0645 0.0229 0.0261 0.03122 0.1200 0.0365 0.0260 0.0312 0.03643 0.1601 0.0289 0.0312 0.0364 0.04164 0.2001 0.0313 0.0364 0.0416 0.04695 0.2401 0.0366 0.0416 0.0467 0.0518

ed i valori identificati sarebbero:

A(z−1) = 1− 0.71908z−1

B(z−1) = 7 · 10−4 + 1.0005z−1 + 0.38153z−2 ≈ 1.0005z−1 + 0.38153z−2.

Page 110: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 109

La differenza e significa sia rispetto al modello scelto con la formula FPE che con il modello cheha generato i dati, in questo caso, infatti, l’ordine del sistema e 1, si ha cioe un solo polo a frontedei 2 poli del vero modello.

Per la sola formula MDL si riporta il grafico della griglia individuata in Figura 5.1, si puo notarecome la formula introduca effettivamente un minimo locale e come esistano molti punti con valoriassoluti prossimi al minimo stesso.

1 2 3 4 50

0.05

0.1

0.15

0.2

0.25

nb

MDL

na = 1

na = 5

Figura 5.1: Formula MDL al variare dell’ordine na e nb, il minimo e evidenziato.

Si cerca ora di valutare l’effettiva differenza fra i modelli paragonando graficamente le risposteindiciali. La Figura 5.2 mostra la risposta indiciale simulata.

0 10 20 30 40 50−1

0

1

2

3

4

5

k

y

Figura 5.2: Risposta indiciale del modello ARX(2,3,0), simbolo x, individuato utilizzando laformula FPE, e il modello ARX(1,3,0), simbolo *, individuato utilizzando le formule AIC e MDL.

Si nota facilmente come la risposta dei due modelli sia molto simile, in particolare per quantoconcerne il tempo di assestamento, ed una differenza marginale, inferiore al 3 %, per la stima delguadagno statico.

Il commento che si puo fare riguarda il modello scelto come modello generatore dei dati, la suadinamica dominante, infatti, e data proprio da un polo semplice e la sua risposta indiciale nonpresenta sovraelongazioni. In questo caso, quindi, le formule MDL e AIC hanno permesso di

Page 111: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 110

individuare un modello piu semplice rispetto alla formula FPE, ed ancora piu semplice rispetto alsolo indice J , ma che ha identificato le caratteristiche principali dei dati.

5.1.6 Scelta dell’algoritmo

La scelta dell’algoritmo da utilizzare e strettamente legata al modello scelto. E evidente cheper i modelli che mostrano un legame lineare fra errore e parametri, l’AR e l’ARX, l’utilizzodei Minimi Quadrati, pesati o meno, sia la scelta piu ovvia. In particolare, se non sussistonoesigenze di identificazione in tempo reale, la formula dei Minimi Quadrati a lotti permette anchedi verificare numericamente la bonta dei dati. Quando si lavora con modelli quali l’ARMA,l’ARMAX o l’OE e evidente che il problema di minimizzare l’errore quadratico medio diventi unproblema di minimizzazione multivariabile non-lineare. Richiede, quindi, algoritmi appositi quali,ad esempio, l’algoritmo di Gauss-Newton o di qualunque altro algoritmo basato sulle tecniche ditipo gradiente. In questo caso, trattandosi di algoritmi iterativi, diventa importante la sceltadei guadagni di convergenza ed, eventualmente, il confronto fra diversi algoritmi per uno stessoproblema di identificazione.

5.1.7 Inizializzazione degli algoritmi ricorsivi

Gli algoritmi basati su tecniche di tipo gradiente individuano un minimo locale di una funzionemultivariabile non-lineare, nel caso in esame la cifra di merito, l’errore quadratico medio. Questoimplica che il risultato finale, a parita di dati e di guadagni algoritmici, e in genere funzionedelle condizioni iniziali per i coefficienti ai, bi e ci. L’assenza di qualsiasi tipo di informazionesuggerisce di scelgliere come valore iniziale il valore nullo per tutte le variabili. Ci sono situazioni,al contrario, che permettono di fornire una soluzione di tentativo quando, ad esempio, si hannodelle conoscenze a-priori sulla costante di tempo.

Si supponga di sapere che un determinato processo abbia una dinamica del primo ordine, quindipriva di sovraelongazioni, e che, ad un ingresso di tipo gradino, risponda con una dinamica cheva a regime in circa 5 secondi; il tempo di campionamento T , inoltre e pari a T = 0.5 s. Dallaconoscenza dei sistema dinamici tempo-continuo [8] si sa che il polo dominante nel piano complessotempo-continuo e posizionato in un intorno del punto (−0.7, j0). La mappatura (2.68)

z = esT

permette di concludere che il polo dominante, nel piano complesso tempo-discreto, e in:

z = e(−0.7,j0)·0.5 = 0.7047.

Supponendo di aver scelto di identificare con na = 1 una scelta idonea per a1 potrebbe essereproprio a1 = 0.7.

5.1.8 Validazione

5.2 Magellan

Page 112: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 111

Magellan, mostrato in Figura 5.3, e un robot mobile di tipo uniciclo commercializzato dalla iRobot(www.rwii.com). E anolonomo, e puo essere controllato assegnando due grandezze desiderate alcontrollo di basso livello: la velocita di avanzamento e la velocita angolare. E compito dell’utente,usando la sensoristica del robot, chiudere un ulteriore anello di controllo per gestire al meglio lasua mobilita.

Figura 5.3: Magellan.

Dai primi esperimenti compiuti sul robot si e evidenziato un comportamento dinamico pocoefficace. In particolare, fornendo come ingresso al sistema la velocita lineare desiderata vd, l’uscitamisurata v assume i valori schematizzati nella Figura 5.4. E evidente una sovraelongazioneeccessiva che inficia il comportamento globale del robot in termini di aderenza al percorsoassegnato. Una descrizione accurata della relazione ingresso-uscita potrebbe essere possibile,siamo in presenza di equazioni meccaniche apparentemene semplici. In realta questa strada none percorribile, sia per la presenza dell’attrito, sia per la presenza di parametri soggetti a fortivariazioni nel tempo (es., la pressione delle ruote), sia per l’impossibilita di accedere ai guadagnidel controllo d’asse del costruttore.

Scopo di questa Sezione e quello di mostrare, passo per passo, le operazioni da fare perl’identificazione di un sistema reale.

Determinazione ingresso-uscita

In questo caso la determinazione e semplice, l’ingresso e vd e l’uscita v. Potremmo anche pensaread un modello accoppiato in cui individuare due ingressi vd, ωd e due uscite v, ω. Sulla base diesperimenti opportuni si e verificato un sostanziale disaccoppiamento fra i due moti. Si decidequindi di procedere con il modello SISO (Single-Input Single-Output).

Page 113: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 112

0 50 100 150 2000

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

dati misurati

Figura 5.4: Ingresso di velocita lineare a gradino e corrispondente uscita per Magellan.

Vincoli di attuazione per esperimenti

E noto come la forma d’onda dell’ingresso sia decisiva per il successo dell’identificazione. In questocaso, nel progettare l’esperimento, si deve tener conto della presenza di ostacoli, della saturazionedegli attuatori, dei fenomeni di attrito a basse velocita, ecc.

Si decide quindi di sollecitare il sistema con un gradino e di valutarne qualitativamente larisposta. Il nostro desiderio sarebbe di poter visualizzare la risposta al gradino nel tempo continuoper poi decidere come campionare i dati. Poiche e possibile acquisire dati solo tramite PC si ha adisposizione dei dati tempo discreto. Si effettuano quindi degli esperimenti alla massima frequenzatollerabile dall’hardware disponibile: 50 Hz, decidendo di campionare successivamente. Si fannodiversi esprimenti per diversi livelli di ingresso. La risposta mostra un comportamento lineare

del sistema; in caso negativo l’identificazione, con queste tecniche, non poteva essere effettuata.

Cicli limite

In realta, si puo osservare come, estinto il transitorio, il sistema sia soggetto a cicli limite (inparticolar modo sulla velocita angolare). Questo comportamento, probabilmente causato dafenomeni di attrito, inficera il procedimento di identificazione.

Correzione manuale dei dati

E ovviamente un’operazione estremamente delicata. In alcuni casi, e possibile modificare a

mano i dati se sussiste il fondato motivo che uno o piu dati siano soggetti ad errori in fasedi acquisizione. Nel nostro caso possiamo osservare un comportamento strano; il primo gradinoprovoca una sovraelongazione del 50%, il secondo, che riporta a zero la vd non ha prasticamentesovraelongazione. Il motivo risiede nel fatto che il controllo di basso livello attiva i freni meccaniciquando riceve in ingresso riferimenti nulli. Per non corrompere l’identificazione la parte finale deidati va eliminata.

Page 114: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 113

Media, filtraggio e campionamento

I modelli presentati sono validi per sistemi a valor medio nullo. I dati di ingresso e uscita, quindi,vanno decurtati del valor medio.

Per grandezze di ingresso-uscita fisicamente differenti puo presentarsi il caso che il loro valorenumerico sia notevolmente differente fra loro a causa della scelta delle unita di misura. Questoporta ad un regressore numericamente sbilanciato con conseguenti errori numerici di stima deiparametri. Puo essere quindi opportuno scalare uno dei due vettori di dati ricordandosi poi discalare coerentemente i coefficienti individuati. Nel nostro caso, essendo la grandezza fisica iningresso uguale a quella in uscita, questa operazione non e necessaria.

Conoscendo la banda del sistema e possibile effettuare un prefiltraggio sui dati volto adeliminare il rumore in alta frequenza. Sarebbe necessario filtrare analogicamente i dati prima delcampionamento per evitare di riportare in bassa il rumore. In ogni caso, il filtraggio va effettuatorigorosamente prima del campionamento dei dati. Per sapere a che banda fissare la frequenza ditaglio del filtro passa-basso sono necessarie alcune considerazioni sul contenuto frequenziale delsistema stesso.

Dalla risposta indiciale si puo individuare un tempo di assestamento al 10% di circa 2 s. Inprima approssimazione possiamo considerare la banda a 3 db del sistema pari a 0.5 Hz. Scegliamoquindi una frequenza di cut-off del filtro passa-basso di circa 4 Hz. Si noti come, operando fuorilinea, sia possibile rimediare all’inevitabile ritardo introdotto da filtri passa-basso utilizzando deifiltri anticausali (es., il comando filtfilt del Matlab) In Figura 5.5, si puo osservare il segnalefiltrato.

0 50 100 150 2000

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

dati filtrati

Figura 5.5: Ingresso di velocita lineare a gradino e corrispondente uscita per Magellan, datifiltrati.

In teoria, un sovracampionamento non dovrebbe avere problemi se non quello di addensare ipoli del sistema intorno al punto (1, 0j) (tutte le dinamiche del sistema, infatti, sono lente). Inpratica questo causa dei forti problemi di natura numerica nell’implementazione degli algoritmidi identificazione e nella successiva simulazione del sistema. Un sottocampionamento, d’altraparte, porterebbe a perdere la dinamica del sistema. Non esiste una regola precisa nella scelta

Page 115: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 114

del campionamento, un metodo euristico consiste nel fare in modo che, nel transitorio iniziale,cadano da 4 a 10 punti di misura. A valle della identificazione si deve comunque verificare che ipoli non siamo addensati intorno all’origine o al punto (1, 0j). Nel caso in esame, si e scelto dicampionare con passo 4, la nuova frequenza di campionamento e quindi di 12.5 Hz.

Un’ultima modifica da fare ai dati riguarda l’ingresso; il suo valore costante rende malcondizionatigli algoritmi di identificazione. Possiamo, in prima battuta, aggiungere un valore nullo ai vettoridi ingresso e uscita sicuri di non alterare la fisica del problema. La Figura 5.6 riporta i datitrattati.

0 20 40 600

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

dati posttrattamento

Figura 5.6: Ingresso di velocita lineare a gradino e corrispondente uscita per Magellan, datipost-trattamento.

In questo caso e risultata agevole la stima della banda del sistema grazie alla forma particolaredell’ingresso. Nei casi in cui, dalla semplice osservazione della serie storica, non e possibile questastima si puo ricorrere a tecniche numeriche di analisi spettrale (es., si vedano i demo del MatlabIdentification Toolbox).

Scelta del modello

Dalla risposta indiciale appare evidente che il modello e almeno del secondo ordine, si decidequindi na ≥ 2. Non ci sono particolari indicazioni circa il ritardo ingresso-uscita, in questo caso,una buona scelta potrebbe essere d = 1 lasciando poi al procedimento il compito di identificareun eventuale b1 ≈ 0 indicativo di un ritardo maggiore. Si sceglie nb = 3. Come primo tentativosi decide di utilizzare un modello ARX(2,3).

In [14] vengono forniti dei valori tipici di na per differenti sistemi fisici. Il valore di nb esolitamente scelto ≥ 2 per prendere in considerazione anche i ritardi frazionali.

Inizializzazione degli algoritmi

Si decide di utilizzare una procedura ricorsiva, e quindi necessario inizializzare la stima inizialedei parametri e la matrice di covarianza. Sarebbe possibile assegnare un valore casuale a θ0, in

Page 116: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 115

realta, poiche abbiamosi hanno informazioni macroscopiche sulla banda e sulla sovraelongazionedel sistema sarebbe piu utile inizializzare l’algoritmo con un valore ragionevole dei parametri. Sidecide quindi di posizionare i poli nel punto (0.5± 0.5j), cui corrispondono i valori

a1 = −1 a2 = 0.5

e di prendere bi nulli.

Il valore di V0 e influenzato da molti fattori. Una scelta rigorosa potrebbe essere quella dilegarlo al regressore. Spesso pero questo puo portare ad una sottostima del suo valore, o meglio,l’algoritmo potrebbe beneficiare di un valore piu alto e convergere piu velocemente. A questosi aggiunga che la traiettoria usata per l’identificazione non e eccitante e, esaurito il transitorioinziale, non c’e modo di aggiornare i parametri. Dopo alcuni tentativi si fissa V0 = 500I.

Prima identificazione

Si e deciso per un algoritmo WRLS con fattore di oblio µ = 0.99. A valle della identificazione ebene verificare il valore del guadagno (della sua norma, in questo caso) nel corso dell’identificazione,un valore troppo alto di µ, infatti, o una traiettoria poco eccitante, farebbero decrescere il valoredel guadagno a zero terminando, di fatto, l’aggiornamento della stima dei paramtri.

Si sono identificati i valori:

a1 = −1.4179 a2 = 0.66693 b1 = 0.10068 b2 = 0.10068 b3 = 0.049341

E ora necessario validare questi valori o ripetere il procedimento.

Validazione

Il problema di identificazione dei parametri e stato ricondotto ad un problema di ottimizzazione.La cifra di merito, l’errore quadratico medio, calcolata su diversi dati campionati alla stessafrequenza, ma non filtrati, ha dato come risultato:

J = 0.00037

Apparentemente quindi, l’identificazione e andata a buon fine, come puo essere verificato dalgrafico della predizione in Figura 5.7.

Anche la stima della varianza della stima dei parametri ha un valore numerico basso, in norma:

‖ ˆV ar[θ]‖ = 0.013. In realta abbiamo si ha bisogno di un ulteriore verifica, la simulazione. Solo

simulando il modello possiamo capire se i poli del sistema identificato sono coerenti con il sistemareale. La simulazione, riportata in figura 5.8, mostra che sia la dinamica sia la sovraelongazionesono sottostimate. Infine, il test di Anderson non e soddisfatto e questo comporta un errorecolorato indicativo della presenza di dinamica non identificata nel modello. La figura 5.9 mostral’autocorrelazione dell’errore e conferma questi commenti.

Seconda identificazione

Page 117: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 116

0 20 40 600

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

uscita misurata (x) e predetta (o)

Figura 5.7: Velocita misurata e predetta su traiettoria differente da quella di identificazione,modello ARX(2,3).

La seconda identificazione viene ripetuta con na = 3. Lasciando inalterati gli altri parametri siottiene:

a1 = −1.0367 a2 = −0.074934 a3 = 0.4381 b1 = 0.12611 b2 = 0.12611 b3 = 0.07424,

cui corrisponde:J = 0.00027.

In questo caso, l’autocorrelazione dell’errore di predizione mostra un residuo sostanzialmentebianco (figura xx), il test di Anderson e soddisfatto e la simulazione mostra una riproduzionefedele della risposta al gradino del sistema (figura 5.10). La stima della varianza della stima dei

parametri ha un valore numerico, in norma: ‖ ˆV ar[θ]‖ = 0.056.

La f.d.t. identificata ha quindi poli in poli in

p1 = 0.79− 0.41j p2 = 0.79 + 0.41j p3 = −0.55.

Si noti come il procedimento di identificazione puo richiedere molte iterazioni. In molti casi none evidente quando fermarsi nel progressivo aumento della complessita del modello. L’indicazionefornita dalla cifra di merito e solo indicativa e non deve essere intepretata come l’unico elementodi scelta. In [2, 14, 16] vengono proposti dei possibili criteri, con forti connotazioni euristiche,per determinare un criterio di scelta del modello.

5.3 MIB30

Il MIB30 e una media pesata del prezzo dei primi 30 titoli per capitalizzazione quotati allaBorsa di Milano. Il suo andamento nel tempo fornisce un’indicazione sull’andamento mediodei prezzi e quindi, banalizzando, sullo stato della Borsa italiana. Non e l’unico indicatore,lo stesso prezzo ufficiale di un titolo, in quanto media degli ultimi n contratti e una sorta di

Page 118: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 117

0 20 40 600

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

uscita misurata (x) e simulata (o)

Figura 5.8: Velocita misurata e simulata su traiettoria differente da quella di identificazione,modello ARX(2,3).

indicatore. Una corrente dell’economia finanziaria, nota come Analisi Tecnica [17], propone distudiare l’andamento di un titolo osservandone il grafico. Esistono molte tecniche differenti, lecandele giapponesi, gli istogrammi, i grafici punto-croce, tutti hanno in comune l’osservazionedi alcuni dati particolari: il prezzo di apertura, il prezzo di chiusura, il minino, il massimo ed ivolumi scambiati durante la giornata. Dalla osservazione di queste serie storiche, opportunamentedisegnate e sovrapposte, gli analisti cercano di trarre informazioni sulla salute di un titolo. Inquesto contesto si valuta l’opportunita di identificare la f.d.t. che lega dei possibili ingressi, adun’uscita di interesse, ad es., il prezzo di chiusura di un titolo. Se fosse possibile ottenere unabuona predizione sarebbe anche possibile condizionare la propria scelta finanziaria.

In Figura 5.11 e riportato l’andamento del MIB30. In Figura 5.12, le sue variazioni giornaliere.Analizziamo innanzitutto questa serie storica, la sua media, nell’intervallo considerato e di −66punti, cioe circa il 3% della variazione massima e lo 0.16% del prezzo medio. Valutiamone lacovarianza, riportata in Figura 5.13. La covarianza assume un aspetto molto vicino a quella di unrumore bianco, si deve considerare, infatti, che la formula usata per stimare la covarianza e esattaper vettori di grandi dimensioni. In particolare, se ci si divertisse a generare un vettore di rumorebianco e a calcolarne la covarianza si otterrebbe un grafico qualitativamente indistinguibile daquello generato dalle variazioni di prezzo.

Se le variazioni di prezzo sono assimilabili ad un rumore bianco il prezzo assume la forma dellapasseggiata casuale:

p(k) = p(k − 1) + ζ(k),

spesso utilizzato in simulazione per generare intenzionalmente una deriva casuale in un parametro.

Un risultato del tutto analogo e stato ottenuto con una serie storica di due mesi sui titoliFiat e Seat Pagine Gialle nonche su una serie di 2 anni del titolo Compaq quotato alla borsa diNew York. Il lettore puo esercitarsi a identificare le possibili combinazioni di dati e costruire ilcorrispondente preditorre. Probabilmente otterra un valore della cifra di merito molto bassa, mala stima del prezzo risultera sempre in ritardo di un giorno rispetto al prezzo corrente rendendodi fatto inutili i risultati ottenuti.

Page 119: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 118

0 50 100−1

−0.5

0

0.5

1

Figura 5.9: Autocorrelazione dell’errore di predizione, modello ARX(2,3).

Il fatto che un’identificazione sia fallita non significa, ovviamente, che il sistema non siaidentificabile. Probabilmente esistono delle deboli dinamiche su specifici intervalli temporali.In particolare, per intervalli molto lunghi (molti anni) e difficile pensare di poter identificare unadinamica attendibile a causa delle profonde trasformazioni al contorno del sistema Borsa: mezzidi produzione e comunicazione, cultura, guerre, ecc.

In letteratura esiste una teoria dei prezzi nota come Random Walk Theory che giunge adun conclusione simile alla nostra, il prezzo di un titolo e fondamentalmente l’integrale di unrumore, ricorrendo solo a concetti di economia ed in particolare alla teoria dell’Efficient MarketHypothesis. Per correttezza, e da notare come la comunita degli analisti tecnici rifiuti decisamentequesta possibilita con argomentazioni euristiche varie [17].

Il risultato ottenuto dalla Analisi Tecnica e del resto molto debole, facendo un grande uso dimedie e derivate di ogni tipo (Media Mobile, Relative Strength Index, Momento, Rate of Change,Commodity Channel Index, ecc.) utilizzando un approccio statistico si e verificata l’esistenza diuna polarizzazione marginale a favore dell’Analisi Tecnica stessa.

5.4 Canale GSM

1 Il GSM (Global System for Mobile “communication”) e un sistema di comunicazione digitale chefa uso di un canale ad accesso ibrido FDMA/TDMA (Frequency-Division/Time-Division MultipleAccess) utilizzando una modulazione di tipo GMSK (Gaussian Minimum Shift Keying). Ogni bitdel segnale inviato e affetto da ISI (Inter Symbolic Interference), noto, causato dalla modulazionestessa, e da fading, non noto, causato dai cammini multipli di uno stesso bit. I bit fanno partedi pacchetti di dati fra i quali il piu usato e il cosiddetto NB (Normal Burst) costituito da bitinformativi intervallati da bit di addestramento il cui scopo e proprio quello di identificare il fadingche insiste sul segnale. La figura 5.14 mostra il pacchetto di 26 bit di addestramento circondatida 58 informativi, a questi vanno aggiunti 3 tail bit prima e dopo ed infine 8.25 bit di guard allafine del pacchetto. Una volta identificato il fading e possibile demodulare il pacchetto informativo

1Esempio tratto dall’elaborato di Gianfranco Miele e Daniele Pinchera

Page 120: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 119

0 20 40 600

0.1

0.2

0.3

0.4

0.5

0.6

m/s

campioni

uscita misurata (x) e simulata (o)

Figura 5.10: Velocita misurata e simulata su traiettoria differente da quella di identificazione,modello ARX(3,3).

del segnale. Dal punto di vista applicativo il primo pacchetto informativo e memorizzato, poi ilcanale e identificato tramite il pacchetto di addestramento ed infine primo e secondo pacchettoinformativo sono demodulati. Il pacchetto di addestramento e posto al centro del contenutoinformativo del segnale per minimizzare gli effetti di tempo-varianza del fading. I 3 bit di tailsono nulli per assicurare che il demodulatore, basato sull’algoritmo di Viterbi (citare un testoxxx), inizi e termini in uno stato noto.

Esistono diversi pacchetti di addestramento, celle contigue usano diversi pacchetti di addestramentoper evitare possibili interferenze. In figura 5.15 e riportato il pacchetto di addestramento usatoin questo esempio.

Il segnale ricevuto e modellato come una sequenza di bit ottenuti tramite un modello ARX:

y(k) = G(z)u(k) + ζ(k) (5.1)

in cui G(z) e dato dalla convoluzione fra l’ISI e il fading:

G(z) = Gi(z) ∗Gf (z)

In questo esempio l’ISI e rappresentato da

Gi(z) = 0.2 + z−1 + 0.2z−2

mentre per il fading e possibile modellizzare il comportamento dei tipici ambienti (rurale, cittadino...)sulla base di misure sperimentali/analisi statistiche; in particolare per ottenere l’omologazioneun dispositivo deve dimostrare di comportarsi bene in un certo numero di situazioni standard,tabellate nelle specifiche GSM, che stiamo considerando in questo esempio (si veda Tabella 5.1).

Considerando, ad es., il fading cittadino, la G(z) da identificare nel nostro esempio e:

G(z) = 0.2 + 0.92z−1 − 0.22z−2 − 0.18z−3 − 0.02z−4.

Nelle figure 5.16 e 5.17 sono riportate le sequenze rispettivamente inviate e ricevute attraversoil canale GSM simulato; si e considerato un rumore additivo di varianza 10−2.

Page 121: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 120

0 20 40 603.4

3.6

3.8

4

4.2

4.4

4.6x 10

4

punt

i

giorni

MIB30

Figura 5.11: Andamento del MIB30 su un intervallo di circa due mesi.

Gf (z) ambiente

1− 0.4z−1 − 0.1z−2 cittadino−1 + 0.1z−1 rurale1 + z−1 + z−2 pseudo EQ1− z−1 + z−2 − z−3 + z−4 EQ1− 0.1z−1 + 0.3z−4 collinare

Tabella 5.1: Tipici valori della Gf (z) per diversi ambienti.

Acquisendo i bit e costruendo un regressore impilato per la sequenza di bit di addestramento(noti) e possibile risalire ai coefficienti della G(z). Questi possono poi essere utilizzati perequalizzare la sequenza dei bit informativi (non noti).

Page 122: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 121

0 20 40 60−2000

−1000

0

1000

2000

punt

i

giorni

variazioni MIB30

Figura 5.12: Andamento delle variazioni del MIB30 su un intervallo di circa due mesi.

0 50 100 150−1

−0.5

0

0.5

1

[−]

giorni

covarianza variazioni MIB30

Figura 5.13: Stima della covarianza delle variazioni del MIB30 su un intervallo di circa due mesi.

tail bits

3

information bits

58

training sequence

26

information bits

58

tail bits

3

guard

8.25

Figura 5.14: Pacchetto normale per il sistema GSM.

Page 123: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 122

0 5 10 15 20 25

0

1

sequenza di addestramento

campioni

Figura 5.15: Sequenza di addestramento per il canale GSM.

0 200 400 600

0

1

sequenza inviata

campioni

Figura 5.16: Sequenza inviata.

Page 124: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 123

0 200 400 600

0

1

sequenza ricevuta

campioni

Figura 5.17: Sequenza ricevuta.

Page 125: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Capitolo 6

Il problema della stima

La determinazione di una grandezza incerta e un problema ricorrente in molti campi dell’ingegneriae della scienza in generale. Basandosi su misure e modelli matematici si cerca quindi di stimarne

il valore. In questo contesto si fara riferimento ad un caso particolare: la stima di una grandezzadi un sistema dinamico tempo-discreto. E quindi un segnale (variabile) tempo-variante. Il casoparticolare di stima di una grandezza costante di un sistema dinamico (parametro) prende il nomedi Identificazione Parametrica ed e stato affrontato nel capitolo precedente.

6.1 Stimatori

Dato un insieme di misure d ed una grandezza vettoriale da stimare θ si definisce stimatore quellafunzione che associa alle misure una stima θ(k) di θ:

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

La stima di una grandezza tempo-variante e, ovviamente, funzione del tempo k. Piu precisamente,supponendo di avere a disposizione un insieme diN dati, la stima puo 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 istantifuturi;

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

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

6.1.1 Caratteristiche degli stimatori

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

124

Page 126: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 125

Non polarizzazione

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

E[θ(k)] = θ◦. (6.2)

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

Minima varianza

Fra due stimatori non polarizzati e certamente migliore lo stimatore con minore varianza, cioelo stimatore con minore dispersione della stima. Poiche la varianza, nel caso vettoriale, e unamatrice, il confronto fra due stimatori si effettua sulla differenza fra le due matrici. La matricevarianza 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 (6.3)

quindi se la loro differenza e semidefinita positiva.

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

La varianza di uno stimatore e comunque limitata inferiormente. Intuitivamente e facilecomprendere come la presenza di disturbi nella sorgente dei dati infici la precisione con cui sipuo stimare la grandezza in esame indipendentemente dalla bonta dello stimatore (si veda laSezione 4.6.3).

Caratteristiche asintotiche

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

limN→∞

V ar[θ(N)] = O. (6.4)

Questo implica la cosiddetta convergenza in media quadratica definita come:

limN→∞

E

[∥∥∥θ(N)− θ◦

∥∥∥

2]

= 0, (6.5)

spesso scritta comel.i.m.

N →∞ θ(N) = θ◦. (6.6)

Poiche 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 degliesiti; si definisce convergenza certa il caso in cui A = S e convergenza quasi certa il caso in cuiP (A) = 1 (per cui e sufficiente che l’insieme S −A abbia misura nulla).

Uno stimatore per cui sussista la convergenza quasi certa si dice consistente.

Page 127: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 126

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 piu ragionevolmente considerare utili, al passo k,dei dati acquisiti per tempi lontani da k. Si ricorre allora alla richiesta di non divergenza dellastima dal valor vero. In formule si richiede che:

E

[∥∥∥θ(k|k − l)− θ◦(k)

∥∥∥

2]

≤ c (6.7)

con l e c scalari positivi.

6.2 Osservatore di Luenberger

In questo paragrafo verra presentato l’osservatore di Luenberger (osservatore asintotico), unostimatore dello stato per sistemi lineari. Si fara il caso di sistemi dinamici tempo-discreti. Ilmodello di riferimento e deterministico:

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

y(k) = Hx(k)(6.8)

dove x ∈ IRn e lo stato, y ∈ IRm sono le uscite, u ∈ IRp gli ingressi, le matrici sono di dimensioneopportuna: Φ ∈ 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 percui si ricorre alla stima e che spesso non tutti gli stati sono fisicamente accessibili, oppure il costoper l’aggiunta di un ulteriore trasduttore vuole essere risparmiato. Nel caso in cui lo stato siamisurabile ma affetto da molto rumore, la stima tramite osservatore rappresenta una sorta difiltraggio dello stato stesso.

Si costruisca un sistema lineare stazionario:

w(k + 1) = Fw(k) + Bu(k) + Gy(k), (6.9)

si vuole che: {limk→∞ ‖x−w‖ = 0∀u,∀x(0),∀w(0).

(6.10)

L’uscita dell’osservatore, dopo un transitorio, deve convergere numericamente al valore dello stato.Poiche lo stato e tempo-variante la loro differenza si manterra limitata nel tempo. Questo devevalere per ogni ingresso e per ogni stato iniziale sia dell’osservatore che del sistema dinamico (ingenerale x(0) non e noto). In Figura 6.1 uno 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)− Fw(k)−Bu(k)−Gy(k), (6.11)

affinche sia indipendente dall’ingresso e necessario che sia B = Γ . Si noti come questa posizionesia stringente, e richiesta la conoscenza esatta dell’influenza dell’ingresso sul sistema per poterlacompensare esattamente. Si ottiene quindi:

e(k + 1) = x(k + 1)−w(k + 1) = (Φ−GH)x(k)− Fw(k). (6.12)

Page 128: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 127

u y

G

B

obsw

x

Figura 6.1: Schema dell’osservatore di Luenberger.

Si sceglie F tale da fornire un sistema omogeneo:

F = Φ−GH (6.13)

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

e(k + 1) = Fe(k) (6.14)

ossia dall’evoluzione:e(k) = F ke(0). (6.15)

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

I gradi di liberta del progettista sono G e F . Si potrebbe pensare di prendere G = O e F = Φ.Questa soluzione ha due inconvenienti fondamentali, puo essere utilizzata solo per sistemi stabilie 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 utiliquando il transitorio del sistema si e estinto.

Il procedimento da seguire e quello di assegnare gli autovalori di F , che equivale ad assegnarel’evoluzione dell’errore. Esistono infinite matrici caratterizzate dagli stessi autovalori, quindiassegnare gli autovalori di F non significa averne vincolato tutti gli elementi. Si calcola poi G eda 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} . (6.16)

da questi si ricavano i coefficienti del polinomio caratteristico desiderato:

n∏

i=1

(λ− λd,i) = λn + d1λn−1 + . . .+ dn. (6.17)

A questo punto e fissato il polinomio caratteristico che e dato da:

|λI − (Φ−GH)| (6.18)

Page 129: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 128

in cui si hanno come incognite gli elementi della matrice G. Supponendo di assegnare lo stessopolinomio caratteristico per tutte le uscite, tramite il principio di identita dei polinomi, si potrebbepensare di ricavare i Gi,i tramite un sistema di equazioni di dimensioni opportune. In realta cionon e in generale possibile, le incognite, infatti, dopo l’operazione di calcolo del determinantecompaiono in forma nonlineare e la risoluzione del sistema sarebbe estremamente complessa.

E possibile utilizzare una formula, nota come formula di Ackermann, la cui derivazione puoessere trovata in Appendice A.7. Nel seguito, per semplicita di notazione, si fara riferimento adun sistema con una uscita scalare, le matrici H e G, quindi, sono vettori riga o colonna e verrannorispettivamente 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. (6.19)

Si calcoli la matrice:

T =[

hT ΦThT . . . ΦTn−1hT]

an−1 an−2 . . . a1 1an−2 an−3 . . . 1 0. . . . . . . . . . . . . . .. . . . . . . . . . . . . . .1 0 . . . 0 0

, (6.20)

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

d = [ dn . . . d1 ]T

a = [ an . . . a1 ]T

e possibile scrivere la formula di Ackermann:

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

Questo determina univocamente l’incognita g, sostituendola nella (6.13) si ottiene la matriceF .

Esempio : nonlinearita degli elementi Gi,i

Data la matrice dinamica Φ ∈ IR3×3:

Φ =

.6 .2 .3

.1 .7 .20 .2 .7

e la matrice delle uscite H ∈ IR2×3:

H =

[1 0 00 1 0

]

,

Page 130: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 129

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 (6.18), si ottiene il polinomiodel 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 puo essere facilmente, e sistematicamente, trattata tramite il principio di identita dei polinomiper poter assegnare gli autovalori desiderati dell’osservatore (6.17).

Esercizio

Si calcoli l’espressione (6.18) per un sistema dinamico di dimensioni qualsiasi con una sola uscita(H e una matrice riga) commentando il legame ottenuto fra le incognite Gi,i.

Scelta degli autovalori di F

Cio che si richiede ad un osservatore e di convergere il piu velocemente possibile al valore dellostato. Non ci sono limiti teorici nella scelta della posizione degli autovalori ne energetici, considerandoche l’osservatore e un emulatore, implementato al calcolatore, del sistema reale. I limiti sonodovuti alla inevitabile presenza di rumore sulla misura.

Osservatore ridotto

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

(estendere guardando anche appunti zanasi)

Riformulazione in termini di retroazione

L’equazione (6.9), alla luce della (6.13) puo essere riscritta come:

w(k + 1) = Φw(k) + Bu(k) + G (y(k)−Hw(k)) , (6.22)

che mette in evidenza come l’osservatore sia costituito da una componente che emula il processopiu una retroazione, pesata tramite G, sull’uscita misurabile per ipotesi. In molti testi l’osservatoreviene presentato direttamente in questa forma. xxx schema a blocchi.

Page 131: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 130

Sulla conoscenza del modello

L’implementazione di un buon osservatore richiede un’accurata conoscenza del modello matematico.La procedura di progetto dell’osservatore, infatti, si basa sulla compensazione degli ingressi esulla conoscenza delle matrici dinamiche e di uscita del sistema al fine di ottenere un sistemaomogeneo nell’errore. La conoscenza inesatta di queste matrici ha come conseguenza l’immissionedi disturbi nella dinamica dell’errore. In pratica, quindi, l’errore non converge esattamentea zero per le inaccuratezze parametriche, le dinamiche non modellate e gli errori di misura.Apparentemente, quindi, sembra di non ritrovare le proprieta di robustezza ed insensibilitaalle variazioni parametriche tipiche della retroazione, si noti pero che il sistema utilizza unacombinazione lineare dello stato (l’uscita) per estrarne informazioni e che la compensazione degliingressi e fatta a ciclo aperto.

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

e(k + 1) = (Φ−GH)x(k)− Fw(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) = Fe(k) + Φw(k) + Γ u(k).

Procedura operativa

I passi per la progettazione di un osservatore asintotico sono:

1. porre B = Γ ;

2. determinare gli autovalori desiderati assegnando il vettore d;

3. calcolare la matrice di trasformazione lineare T tramite la (6.20);

4. calcolare g tramite la (6.21);

5. calcolare F tramite la (6.13).

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

xxx

Page 132: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 131

6.3 Il filtro di Kalman

Dato il modello discreto:{

x(k + 1) = Φx(k) + Γu(k) + Γ 1w(k)y(k) = Hx(k) + v(k)

(6.23)

dove x ∈ IRn e lo stato, y ∈ IRm sono le uscite, u ∈ IRp gli 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 lostato e di covarianza nota,

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

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

l (j)] = 0 per ogni i, j, h, lE[xh(i)vT

l (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 stimadello stato all’istante k usando i dati fino all’istante k − 1. Si noti che x(k − 1) 6= x(k). Si vedala Figura 6.2 per una rappresentazione grafica delle grandezze definite.

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

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

Osservando l’equazione di uscita del modello si osserva come il legame che sussite fra la misuray(k) e il vettore da stimare x(k) e lo stesso che si ottiene nel caso del problema dell’identificazione.La differenza e che in questo caso, essendo lo stato tempo-variante, non e possibile utilizzare laformula a lotti ma solo quella ricorsiva:

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

doveL(k) = M(k)HT

[Rv + HM(k)HT

]−1. (6.25)

L’equazione (4.95) viene corrispondentemente modificata in:

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

Page 133: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 132

6.3.1 Aggiornamento temporale

Si consideri il caso in cui le misure siano disponibili ad una frequenza minore rispetto a quella dimonitoraggio dello stato stesso. Si puo pensare di aggiornare la stima, in attesa della successivamisura, sulla base della conoscenza del modello stesso. Questa intuizione, nota come modifica diS.F. Schmidt, si traduce in due equazioni di aggiornamento per lo stato e la stima della covarianzadell’errore di stima.

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

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

Si noti che l’eq. (6.27) e definita aggiornamento temporale in contrapposizione all’eq. (6.24),definita aggiornamento di misura.

Poiche:P (k) = E[(x(k)− x(k))(x(k)− x(k))T] (6.28)

calcoliamoM(k + 1) = E[(x(k + 1)− x(k + 1))(x(k + 1)− x(k + 1))T], (6.29)

sapendo chex(k + 1)− x(k + 1) = Φ(x(k)− x(k)) + Γ 1w(k) (6.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 ], (6.31)

che fornisce l’equazione cercata:

M(k + 1) = ΦP (k)ΦT + Γ 1RwΓ T1 . (6.32)

Come per la stima, l’eq. (6.32) e definita aggiornamento temporale della covarianza mentrel’eq. (6.26) e definita aggiornamento di misura della covarianza.

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

6.3.2 Equazioni del filtro di Kalman

Il filtro e quindi dato dall’implementazione delle equazioni (6.24), (6.25), (6.26), (6.27) e (6.32)che vengono qui riportate e sono definite, rispettivamente, guadagno, aggiornamento di misuradella stima, aggiornamento di misura della covarianza, aggiornamento temporale della stima eaggiornamento temporale della covarianza:

L(k) = M(k)HT[Rv + HM(k)HT

]−1(6.33)

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

P (k) = M(k)−L(k)HM(k) (6.35)

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

M(k + 1) = ΦP (k)ΦT + Γ 1RwΓ T1 (6.37)

Page 134: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 133

in cui x(0) e M(0) sono note e costituiscono una stima iniziale delle grandezze corrispondenti.

Il diagramma temporale del filtro di Kalman e il corrispondente schema a blocchi sono riportatinelle Figure 6.2–6.3.

k

P (k)

x(k) aggiorn. temporale

k + 1

M(k + 1)

x(k + 1)

P (k + 1)

x(k + 1)

Figura 6.2: Diagramma temporale del filtro di Kalman.

u(k)

Γ+

+

+

1z

x(k)

H+

+ y(k)+

−L(k)

+

++

Γ 1w(k) v(k)

Φ 1z

x(k)H

x(k)

Figura 6.3: Schema a blocchi del filtro di Kalman.

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

Formulazione alternativa della matrice dei guadagni

Si consideri la seguente espressione per l’aggiornamento temporale della covarianza:

P (k)−1 = M(k)−1 + HTR−1v H (6.38)

e si riscriva il guadagno come:

L(k) =(P (k)P (k)−1

)M(k)HT

[Rv + HM(k)HT

]−1

= P (k)(M(k)−1 + HTR−1

v H)M(k)HT

[Rv + HM(k)HT

]−1

= P (k)HT(I + R−1

v HM(k)HT) [

Rv + HM(k)HT]−1

(6.39)

da cui si ricava infineL(k) = P (k)HTR−1

v (6.40)

che rappresenta la forma cercata.

Page 135: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 134

Influenza delle covarianze di rumore sulla dinamica della stima

Nel filtro di Kalman si devono fornire due matrici di covarianza, rispettivamente sul rumored’uscita e quello dello stato. La matrice Rv ha spesso una chiara interpretazione fisica, rappresentail rumore dei sensori associati alla uscita. Nel caso di piu uscite incorrelate fra loro Rv e unamatrice diagonale contenente le covarianze di rumore dei differenti sensori.

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

A valle di queste considerazioni appare evidente come sia necessario fornire una stima, spessoeuristica, della matrice Rw. Una buona scelta, in assenza di informazioni ulteriori, e quella diprendere 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 rapportoRw vs Rv (‖Rw‖ >> ‖Rv‖) significa tarare il filtro in maniera tale da dare maggior peso allemisure rispetto alla evoluzione dello stato.

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

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’istanteiniziale e la corrispondente covarianza dell’errore. Lo stato, x(0) e in genere ricavato in base allaconoscenza del modello oppure posto uguale a zero se nessuna informazione e accessibile. Il valoredi M(0) puo significativamente influenzare la dinamica del filtro. Si consideri, inizialmente, diprendere un valore alto di M(0), questo significa affermare che la stima fornita di x(0) e pocoattendibile. 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 in una forma alternativa (6.40):

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

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

Page 136: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 135

sulla stima ed inversamente proporzionale all’incertezza sulla misura. Una piccola incertezzanella stima ed una grande incertezza sulle misure suggeriscono al guadagno di non aggiornaremolto la stima corrente, al contrario, una grande incertezza sulla stima ed una piccola incertezzasulle misure suggeriscono che i dati correnti contengano una grande quantita di informazione dautilizzare per l’aggiornamento della stima.

Guadagno a regime

Il filtro di Kalman e caratterizzato da un guadagno L(k) tempo-variante. E interessante studiarnele caratteristiche. Sotto ipotesi di linearita, stazionarieta, osservabilita e controllabilita, il guadagnotende 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). Haquindi senso utilizzare direttamente il valore di regime per un evidente risparmio computazionale.L’uso di un guadagno costante non deve far pensare che il filtro di Kalman degeneri in unosservatore, il procedimento utilizzato per ricavare i due stimatori e differente.

Il guadagno assume quindi la forma:

L∞ = M∞HT[Rv + HM∞HT

]−1(6.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 dellacovarianza (6.26), nell’aggiornamento temporale della covarianza (6.32), facendo tendere ad infinitole matrici (M∞ = P∞). Si ottiene quindi:

M∞ = ΦM∞ΦT −Φ{

M∞HT[Rv + HM∞HT

]−1HM∞

}

ΦT + Γ 1RwΓ T1 (6.42)

nota come equazione di Riccati, la cui soluzione non e banale a causa della sua evidente strutturanonlineare. Esistono delle tecniche numeriche per la risoluzione di questa equazione (e.g., comandoDARE del Matlab), si puo quindi assumere che, una volta risolta l’equazione di Riccati, sia noto ilguadagno a regime L∞ del 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) (6.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, riferendosia (6.23), quindi, sono assenti w(k) e v(k). Il filtro di Kalman, ed in generale i predittori, sonoutilizzati per stimare lo stato di un sistema dinamico stocastico soddisfacendo dei criteri di ottimoappena descritti. Nell’osservatore il guadagno L e costante e progettato per fornire all’osservatorestesso uno specifico comportamento dinamico.

Esempio : Stima di una costante

Page 137: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 136

Si consideri come esempio il problema di stimare in linea il valore di una costante tramite una suamisura 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 possibilecalcolare le equazioni di aggiornamento della covarianza dell’errore e del guadagno:

l(k) =m(k)

rv +m(k)

p(k) =m(k)rvrv +m(k)

m(k + 1) = p(k).

All’istante iniziale si ha:

l(0) =m0

rv +m0

p(0) =m0rvrv +m0

m(1) = p(0),

per k = 1 si ottiene:

l(1) =m(1)

rv +m(1)=

p(0)

rv + p(0)=

m0rvr2v +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/rv1 + (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 quelleconsiderazioni qualitative fatte precedentemente, maggiore e il rapporto fra m0 e rv maggiore sarail guadagno e quindi la capacita del filtro di modificare la stima; il contrario quando m0/rv epiccolo, 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 nessunrumore di processo insista sulla dinamica del sistema, in caso contrario si sarebbe introdotto unsegnale w(k), possibilmente Gaussiano a media nulla e di una certa varianza nota, che avrebbeimpedito al guadagno di tendere a zero.

Page 138: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 137

Esempio : Fusione sensoriale

In questo esempio si mostra come sia possibile, tramite l’uso di un filtro di Kalman, fonderel’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 piuaccelerometri, e caratterizzata da una deriva dell’errore. Considerando la misura di posizionecome:

pINS = pt + δp,

dove pt e la posizione esatta e δp l’errore dell’INS, e possibile scrivere le equazioni dell’erroredell’INS in tempo continuo:

δp = δvδv = δaδa = 0

ossia, in forma matriciale:

δpδvδa

=

0 1 00 0 10 0 0

δpδvδa

.

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

eF t = I + F t+ F 2 t2

2=

1 t t2

20 1 t0 0 1

= Φ.

Assumendo di porreP (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)T 4

4 cv(0)T + ca(0)T 3

2 ca(0)T 2

2

cv(0)T + ca(0)T 3

2 cv(0) + ca(0)T 2 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’erroredi posizione sia ora correlato a quello di velocita e accelerazione.

In assenza di altri sensori, l’INS fornisce una stima il cui errore diverge secondo una polinomialedel secondo ordine (Figura 6.4). Utilizzando la misura della posizione via radio:

pradio = pt + ep,

che, puo essere inserito nel modello d’errore:

z = pradio − pINS = 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 ep incorrelati e stazionari, e invece possibile ridurre questoerrore. Si progetta quindi un filtro di Kalman in cui T = 1 s e si eseguono le misure via radio ogni30 s.

Page 139: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 138

0 50 100 150−5

0

5

10

15

20

25

30

35

tempo [s]

[m]

Figura 6.4: Errore di posizione utilizzando il solo INS.

I parametri della simulazione sono:

Rv = 10−1

Rw = 10−3I3

M(0) = I3

La figura 6.5 mostra l’errore di posizone dell’INS e del filtro di Kalman, si nota come l’utilizzo dellemisure 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 6.5: Errore di posizione utilizzando il solo INS (x) e il filtro di Kalman (o).

Il filtro permette anche una ricostruzione ottima della velocita, grandezza non direttamenteaccessibile alla misura nell’esempio fatto. In figura 6.6 gli errori di velocita per l’INS e per il filtrosono riportati. Si noti come per il filtro tale errore e limitato mentre per l’INS cresca linearmentecon il tempo.

La figura 6.7, infine, mostra l’andamento delle tre componenti del guadagno nei 6 istanti di misura.Si nota come venga presto raggiunto un valore di regime.

Page 140: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 139

0 50 100 150−0.4

−0.2

0

0.2

0.4

tempo [s]

[m/s

]

Figura 6.6: Errore di velocita utilizzando il solo INS (x) e il filtro di Kalman (o).

1 2 3 4 5 60

0.2

0.4

0.6

0.8

1

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

6.3.3 The Optimum Transient Observer

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

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

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

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

Si fissi la seguente struttura dell’osservatore:

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

Page 141: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 140

che e identica a quella del filtro mostrata in (6.3.2).

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

Media dell’errore di stima

L’errore di stima dello stato e definito come:

x(k) = x(k)− x(k), (6.45)

che puo essere esplicitato conoscendo la dinamica del sistema ed utilizzando le equazioni diaggiornamento 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). (6.46)

Applicando l’operatore di valore atteso ad entrambi i membri, portando fuori operatore le variabilideterministiche, si ottiene:

E[x(k)] = (I −L(k)H) ΦE[x(k − 1)] (6.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 dell’erroredi 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Γ T

1 (I −L(k)H)T + L(k)RvLT(k) (6.48)

che, considerando l’aggiornamento temporale della covarianza (6.32), puo 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

)−1HMT(k) l’equazione precedente

puo essere riscritta come:

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

)−1+ A

(Rv + HM(k)HT

)AT (6.49)

Page 142: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 141

doveA = L(k)−M(k)HT

(Rv + HM(k)HT

)−1. (6.50)

Si osservi ora l’espressione (6.49). L’unico termine che dipende dal guadagno e il terminequadratico in A. Il nucleo di tale termine

(Rv + HM(k)HT

), e definito positivo per ipotesi.

Il termine contenente il guadagno quindi, puo al massimo essere annullato. Questo e possibilescegliendo il guadagno stesso:

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

)−1(6.51)

espressione identica alla (6.33).

6.3.4 Considerazioni

Si faccia riferimento al modello in eq. (6.23), supponendo di non avere informazioni probabilistichesui rumori di processo e di misura, la minimizzazione dell’errore quadratico medio dell’equazionedi misura fornirebbe ancora la (6.24) con la differenza che la matrice Rv e ora una matricedi pesi. Assumendo di conoscere le caratteristiche probabilistiche di processo e di misura sipotrebbe procedere con il metodo della Massima Verosimiglianza (Maximum Likelihood): ossiascegliere quella stima x(k) che massimizza la probabilita delle misure y(k) eseguite conoscendole proprieta statistiche di v(k). Si vuole massimizzare p(y|x). Assumendo per v(k) valor attesonullo e funzione densita di probabilita Gaussiana si ottiene esattamente lo stesso risultato in (6.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). Unapproccio 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)(6.52)

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

6.3.5 Stabilita

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

x(k) = (Φ−L(k)HΦ) x(k − 1) (6.53)

che, anche in condizioni di ottimalita del guadagno, non e garantita essere stabile. E necessariorichiedere delle ipotesi abbastanza stringenti ([10]) sebbene nella maggior parte dei casi pratici ilfiltro non presenti problemi di stabilita.

Page 143: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 142

6.3.6 Bianchezza del processo di innovazione

La grandezzae(k) = y(k)−Hx(k) (6.54)

viene spesso definita come innovazione. La si riscriva come:

e(k) = Hx(k) + v(k)−Hx(k) = Hx(k) + v(k), (6.55)

vogliamo calcolarne la correlazione:

E[e(i)e(j)T

]= HE

[x(i)x(j)T

]HT

︸ ︷︷ ︸+E

[v(i)v(j)T

]

︸ ︷︷ ︸+ HE

[x(i)v(j)T

]

︸ ︷︷ ︸+E

[v(i)x(j)T

]HT

︸ ︷︷ ︸.

A B C D

Dalla relazione (6.46) e noto che:

x(k) = (I −L(k)H)Φx(k − 1) + (I −L(k)H)Γ 1w(k − 1)−L(k)v(k). (6.46)

Si consideri il caso i > j. Il termine B vale, per ipotesi:

E[v(i)v(j)T

]= Rvδ(i− j), (6.56)

il termine D e nullo essendo x(j) funzione del rumore di misura v(k) fino all’istante j < i. Alfine 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∏

l=i

(I −L(l)H) Φ (6.57)

e ζ(i) ha un espressione simbolicamente leggermente piu complessa, in questa sede si vuoleevidenziare la dipendenza di ζ(i):

ζ(i) = ζ(w(j), . . . ,w(i− 1),v(j + 1), . . . ,v(i)). (6.58)

Si calcoli ora il termine A utilizzando le espressioni appena ricavate:

HE[x(i)x(j)T

]HT = HE

[(ΦP (i, j)x(j) + ζ(i)) x(j)T

]HT

= HΦP (i, j)E[x(j)x(j)T

]HT + HE

[ζ(i)x(j)T

]HT

= HΦP (i, j)P (j)HT.

Analogamente per il termine C:

HE[x(i)v(j)T

]= HE

[(ΦP (i, j)x(j) + ζ(i)) v(j)T

]HT

Page 144: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 143

= HΦP (i, j)E[x(j)v(j)T

]HT + HE

[ζ(i)v(j)T

]HT

= HΦP (i, j) (−L(j)Rv)

che si ottiene sostituendo a x(j) la sua espressione (6.46) ed osservando che ζ(i) e v(j) sonoincorrelati.

Sommando i termini ricavati si ottiene:

E[e(i)e(j)T

]= HΦP (i, j)

(P (j)HT −L(j)Rv

)+ Rvδ(i− j), (6.59)

sapendo che il guadagno puo essere espresso nella forma L(j) = P (j)HTR−1v si ottiene facilmente

che:E[e(i)e(j)T

]= Rvδ(i− j), (6.60)

vale a dire la bianchezza del processo di innovazione.

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

6.3.7 Ortogonalita fra stima ed errore

Si vuole verificare la validita della seguente relazione

E[x(k)x(k)T

]= O (6.61)

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

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

x(1) = Φx(0) + w(0) (6.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)] (6.63)

ed un errore di stima che, dalla (6.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 E[x(0)x(0)T

]= O si calcola direttamente:

E[x(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)−RvL

T(1))

= O (6.64)

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

Page 145: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 144

6.3.8 Il Filtro di Wiener-Hopf

Il primo tentativo di stimare una grandezza a partire da un insieme di osservazioni risale agliinizi 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 MassimaVerosimiglianza. Verso il 1940 Wiener studia l’implementazione di filtri ottimi nel dominio dellafrequenza affrontando il problema nel tempo-continuo per processi stazionari a regime. Versoil 1960 il lavoro di Kalman estende il risultato di Wiener che puo essere considerato come uncaso particolare del filtro di Kalman. Dai primi sforzi di Gauss al filtro di Kalman e possibileindividuare molte similitudini. Gauss riconosce implicitamente concetti quali la ridondanza deidati per eliminare il rumore di misura, la necessita di un ingresso eccitante, si avvicina a concettiquali l’osservabilita del sistema. Kalman puo essere infatti considerato come la versione ricorsivadel lavoro di Gauss [10].

Si riscrivano le equazioni del filtro di Kalman a regime considerando, per semplicita, l’assenzadi 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)]} (6.65)

ossia:x(k + 1)−Φx(k) + ΦL∞Hx(k) = ΦL∞y(k) (6.66)

che, Z-trasformando, fornisce:

X(z) = (zI −Φ + ΦL∞H)−1ΦL∞Y (z) (6.67)

che nel caso scalare diventa:

X(z) =fl∞

z − f(1− l∞h)Y (z) (6.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 sistemiingresso-uscita stazionari e stabili, Kalman a sistemi ingresso-stato-uscita tempo-varianti e nonnecessariamente stabili.

6.3.9 Il Filtro di Kalman esteso

Il Filtro di Kalman esteso (EKF, Extended Kalman Filter) si applica ai sistemi nonlineari o aisistemi dinamici in cui si voglia identificare uno o piu 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)

. (6.69)

Si definiscano le due matrici:

Φ(k) =∂f (x(k),k)

∂x

∣∣∣x=x(k)

H(k) = ∂h(x(k),k)∂x

∣∣∣x=x(k)

(6.70)

Page 146: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 145

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)T[

Rv + H(k)M(k)H(k)T]−1

(6.71)

x(k) = x(k) + L(k) [y(k)− h(x(k), k)] (6.72)

P (k) = M(k)−L(k)H(k)M(k) (6.73)

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

M(k + 1) = Φ(k)P (k)Φ(k)T + Γ 1RwΓ T1 . (6.75)

Si osservi come ora non sia possibile calcolare il guadagno a regime ma sia necessario calcolarloistante per istante, le matrici dinamiche del modello lineare, infatti, sono calcolate sulla base dellaconoscenza di x(k).

Il Filtro di Kalman esteso puo anche essere utilizzato per stimare il valore di un parametrocostante del modello fisico. Si definisca con θ un vettore di parametri incerti del modello. Ilmodello (6.69) diventa

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

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

in cui si e evidenziata la dipendenza (nonlineare) dalle variabili incerte. L’idea e quella diconsiderare tali parametri, costanti, come ulteriori stati del sistema caratterizzati dall’averedinamica nulla:

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

Definendo il vettore degli stati esteso:

xE =

[x

θ

]

(6.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)

(6.79)

in cui, oltre ovviamente ad fE e Γ E si e modificato anche la matrice Γ E,1 come:

Γ E,1 =

[Γ 1 O

O I

]

(6.80)

e

wE =

[w

]

. (6.81)

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

Sul modello (6.79) si progetta poi un filtro di Kalman esteso come in (6.71)–(6.75).

Il filtro di Kalman esteso fu originariamente sviluppato calcolando le matrici linearizzaterispetto alla traiettoria nominale (e non alla stima al passo precedente). Date le consizioni

Page 147: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 146

iniziali, infatti, le equazioni dinamiche possono essere integrate e fornire l’evoluzione nel tempodello stato del sistema. In un certo senso, e come se, utilizzando la traiettoria nominale, si progettiun 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 progettatosulla traiettoria nominale risulti eccessivo per ogni applicazione pratica. L’utilizzo della stimacorrente per linearizzare fu proposto ancora da S.F. Schmidt alla NASA durante gli studi per ilprogetto 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 θ

θ = ω(6.82)

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

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

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

(6.83)

dove T e il tempo di campionamento. La semplice integrazione di queste equazioni fornisce unastima caratterizzata da una deriva numerica.

Si puo 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). Siavrebbe:

H = [ 0 0 1 ] (6.84)

che indica che la nostra sola misura e il terzo elemento dello stato. La linearizzazione della dinamicafornisce:

Φ(k) =∂f(x(k), k)

∂x

∣∣∣∣x=x(k)

=

1 0 −Tv(k) sin θ(k)

0 1 Tv(k) cos θ(k)0 0 1

. (6.85)

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

L(k) =

− pθrv + pθ

Tv(k) sin θ(k)pθ

rv + pθTv(k) cos θ(k)pθ

rv + pθ

. (6.86)

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

La figura 6.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 comeci 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 iguadagni:

Rv = 10−2

Page 148: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 147

0 20 40 60 80

−4

−2

0

2

4

tempo [s]

[m]/[

rad]

Figura 6.8: Andamento temporale delle 3 componenti dello stato, x, y e θ (linea continua) e lorostima 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 6.9,in cui con la linea continua si rappresenta l’errore di stima utilizzando il filtro di Kalman esteso econ il segno x si rappresenta l’errore ottenuto per semplice integrazione. Si nota come, la misuradi una posizione assoluta (θ) permetta di contenere l’errore anche per gli stati non direttamentemisurabili (x e y).

0 20 40 60 80

−0.4

−0.2

0

0.2

0.4

0.6errori

tempo [s]

[m]/[

rad]

Figura 6.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 figura 6.10 mostra infine l’andamento delle componenti del guadagno. La terza componente,cosı come derivato simbolicamente si assesta su un valore costante.

Page 149: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 148

0 5 10 15 20−0.5

0

0.5

1

Figura 6.10: Andamento temporale delle componenti del guadagno.

Esempio

Una possibile applicazione dell’EKF risiede nella stima e inseguimento di frequenze [5, 15]. Sisupponga di voler stimare la frequenza, tempo-variante, di un segnale

s(t) = A cos(ωt+ ϕ) (6.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)

=

cosx3(k) − sinx3(k) 0sinx3(k) cosx3(k) 0

0 0 1− α

x1(k)x2(k)x3(k)

+

00

w(k)

y(k) = x1(k) + v(k) (6.88)

dove il parametro α ∈ [0, 1] rappresenta la velocita di variazione di x3 ed e scelto in maniera taleche la frequenza sia lentamente variabile. I due rumori w(k) e v(k) sono rumori bianchi incorrelatifra 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 (6.89)

es(t) = cos(2π/3t) ∀t > 70 (6.90)

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

6.4 Dualita stima-controllo

Kalman ricavo il risultato, oggi noto come filtro di Kalman, nel 1960 [12]. Nel 1958 avevapubblicato ([13]), con Koepcke, il risultato ad un problema di Controllo Lineare Quadratico(LQR Linear Quadratic Regulator). Nell’articolo del 1960 riconobbe una similitudine formaleche lo porto a definire i problemi l’uno il duale dell’altro.

Page 150: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 149

Si consideri un sistema lineare tempo-discreto:

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

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

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

con K(k) guadagno tempo-variante da individuare.

Il guadagno si ottiene minimizzando il seguente indice:

J =1

2

N∑

k=0

[xT(k)Q1x(k) + uT(k)Q2u(k)

](6.93)

in cui le due matrici di peso Q1 e Q2 sono simmetriche e definite positive. L’indice e uncompromesso 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, ilcontrollo stesso. Il problema si puo riscrivere come un problema di minimo vincolato in cui sicerca 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. (6.94)

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 datodall’espressione:

K(k) =[Q2 + Γ TS(k + 1)Γ

]−1Γ TS(k + 1)Φ (6.95)

in cui le matrici S(k) e N(k) si ottengono tramite ricorsione all’indietro delle seguenti equazioni:

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

N(k) = S(k)− S(k)Γ[Q2 + Γ TS(k)Γ

]−1Γ TS(k). (6.97)

Il controllo LQR, quindi, si risolve nei seguenti passi:

1. inizializzare l’algoritmo ponendo S(N) = Q1, K(N) = O e k = N ;

2. calcolare N(k) tramite la (6.97)

3. calcolare K(k − 1) tramite la (6.95)

4. calcolare S(k − 1) tramite la (6.96)

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 matriciM(k) e P (k) a meno di fare dei cambi di variabile e di implementare una ricorsione all’avanti oall’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Γ T

1

si nota come i due problemi siano uguali a meno dei cambi di variabile mostrati in tabella 6.1.

Una volta appurata questa analogia, e possibile sfruttarla, per es., per ricavare il controllo aregime del controllo LQR direttamente dalla soluzione ottenuta per la stima.

xxx schemi a blocchi gelb.

Page 151: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 150

controllo stima

Φ ΦT

N P

S M

Q1 Γ 1RwΓ T1

Γ HT

Q2 Rv

Tabella 6.1: Dualita stima-controllo.

Page 152: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Appendice A

A.1 GNU Free Documentation License

GNU Free Documentation License Version 1.2, November 2002

Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor,Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies ofthis license document, but changing it is not allowed.

0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other functional and usefuldocument free in the sense of freedom: to assure everyone the effective freedom to copy andredistribute it, with or without modifying it, either commercially or noncommercially. Secondarily,this License preserves for the author and publisher a way to get credit for their work, while notbeing considered responsible for modifications made by others.

This License is a kind of copyleft, which means that derivative works of the document mustthemselves be free in the same sense. It complements the GNU General Public License, which isa copyleft license designed for free software.

We have designed this License in order to use it for manuals for free software, because freesoftware needs free documentation: a free program should come with manuals providing the samefreedoms that the software does. But this License is not limited to software manuals; it can beused for any textual work, regardless of subject matter or whether it is published as a printedbook. We recommend this License principally for works whose purpose is instruction or reference.

1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work, in any medium, that contains a noticeplaced by the copyright holder saying it can be distributed under the terms of this License. Sucha notice grants a world-wide, royalty-free license, unlimited in duration, to use that work underthe conditions stated herein. The “Document”, below, refers to any such manual or work. Anymember of the public is a licensee, and is addressed as “you”. You accept the license if you copy,modify or distribute the work in a way requiring permission under copyright law.

A “Modified Version” of the Document means any work containing the Document or a portionof it, either copied verbatim, or with modifications and/or translated into another language.

A “Secondary Section” is a named appendix or a front-matter section of the Document thatdeals exclusively with the relationship of the publishers or authors of the Document to theDocument’s overall subject (or to related matters) and contains nothing that could fall directlywithin that overall subject. (Thus, if the Document is in part a textbook of mathematics, a

151

Page 153: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 152

Secondary Section may not explain any mathematics.) The relationship could be a matter ofhistorical connection with the subject or with related matters, or of legal, commercial, philosophical,ethical or political position regarding them.

The “Invariant Sections” are certain Secondary Sections whose titles are designated, as beingthose of Invariant Sections, in the notice that says that the Document is released under thisLicense. If a section does not fit the above definition of Secondary then it is not allowed to bedesignated as Invariant. The Document may contain zero Invariant Sections. If the Documentdoes not identify any Invariant Sections then there are none.

The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts orBack-Cover Texts, in the notice that says that the Document is released under this License. AFront-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.

A “Transparent” copy of the Document means a machine-readable copy, represented in aformat whose specification is available to the general public, that is suitable for revising thedocument straightforwardly with generic text editors or (for images composed of pixels) genericpaint programs or (for drawings) some widely available drawing editor, and that is suitable forinput to text formatters or for automatic translation to a variety of formats suitable for input totext formatters. A copy made in an otherwise Transparent file format whose markup, or absenceof markup, has been arranged to thwart or discourage subsequent modification by readers is notTransparent. An image format is not Transparent if used for any substantial amount of text. Acopy that is not “Transparent” is called “Opaque”.

Examples of suitable formats for Transparent copies include plain ASCII without markup,Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD,and standard-conforming simple HTML, PostScript or PDF designed for human modification.Examples of transparent image formats include PNG, XCF and JPG. Opaque formats includeproprietary formats that can be read and edited only by proprietary word processors, SGML orXML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposesonly.

The “Title Page” means, for a printed book, the title page itself, plus such following pages asare needed to hold, legibly, the material this License requires to appear in the title page. Forworks in formats which do not have any title page as such, “Title Page” means the text near themost prominent appearance of the work’s title, preceding the beginning of the body of the text.

A section “Entitled XYZ” means a named subunit of the Document whose title either isprecisely XYZ or contains XYZ in parentheses following text that translates XYZ in anotherlanguage. (Here XYZ stands for a specific section name mentioned below, such as “Acknowledgements”,“Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” of such a section whenyou modify the Document means that it remains a section “Entitled XYZ” according to thisdefinition.

The Document may include Warranty Disclaimers next to the notice which states that thisLicense applies to the Document. These Warranty Disclaimers are considered to be included byreference in this License, but only as regards disclaiming warranties: any other implication thatthese Warranty Disclaimers may have is void and has no effect on the meaning of this License.

2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either commercially or noncommercially,

Page 154: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 153

provided that this License, the copyright notices, and the license notice saying this License appliesto the Document are reproduced in all copies, and that you add no other conditions whatsoeverto those of this License. You may not use technical measures to obstruct or control the readingor further copying of the copies you make or distribute. However, you may accept compensationin exchange for copies. If you distribute a large enough number of copies you must also followthe conditions in section 3.

You may also lend copies, under the same conditions stated above, and you may publiclydisplay copies.

3. COPYING IN QUANTITY

If you publish printed copies (or copies in media that commonly have printed covers) of theDocument, numbering more than 100, and the Document’s license notice requires Cover Texts,you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must alsoclearly and legibly identify you as the publisher of these copies. The front cover must present thefull title with all words of the title equally prominent and visible. You may add other material onthe covers in addition. Copying with changes limited to the covers, as long as they preserve thetitle of the Document and satisfy these conditions, can be treated as verbatim copying in otherrespects.

If the required texts for either cover are too voluminous to fit legibly, you should put the firstones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacentpages.

If you publish or distribute Opaque copies of the Document numbering more than 100, you musteither include a machine-readable Transparent copy along with each Opaque copy, or state in orwith each Opaque copy a computer-network location from which the general network-using publichas access to download using public-standard network protocols a complete Transparent copy ofthe Document, free of added material. If you use the latter option, you must take reasonablyprudent steps, when you begin distribution of Opaque copies in quantity, to ensure that thisTransparent copy will remain thus accessible at the stated location until at least one year afterthe last time you distribute an Opaque copy (directly or through your agents or retailers) of thatedition to the public.

It is requested, but not required, that you contact the authors of the Document well beforeredistributing any large number of copies, to give them a chance to provide you with an updatedversion of the Document.

4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under the conditions ofsections 2 and 3 above, provided that you release the Modified Version under precisely thisLicense, with the Modified Version filling the role of the Document, thus licensing distributionand modification of the Modified Version to whoever possesses a copy of it. In addition, you mustdo these things in the Modified Version:

A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document,and from those of previous versions (which should, if there were any, be listed in the History sectionof the Document). You may use the same title as a previous version if the original publisher ofthat version gives permission. B. List on the Title Page, as authors, one or more persons orentities responsible for authorship of the modifications in the Modified Version, together with at

Page 155: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 154

least five of the principal authors of the Document (all of its principal authors, if it has fewer thanfive), unless they release you from this requirement. C. State on the Title page the name of thepublisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of theDocument. E. Add an appropriate copyright notice for your modifications adjacent to the othercopyright notices. F. Include, immediately after the copyright notices, a license notice giving thepublic permission to use the Modified Version under the terms of this License, in the form shownin the Addendum below. G. Preserve in that license notice the full lists of Invariant Sectionsand required Cover Texts given in the Document’s license notice. H. Include an unaltered copyof this License. I. Preserve the section Entitled “History”, Preserve its Title, and add to it anitem stating at least the title, year, new authors, and publisher of the Modified Version as givenon the Title Page. If there is no section Entitled “History” in the Document, create one statingthe title, year, authors, and publisher of the Document as given on its Title Page, then add anitem describing the Modified Version as stated in the previous sentence. J. Preserve the networklocation, if any, given in the Document for public access to a Transparent copy of the Document,and likewise the network locations given in the Document for previous versions it was based on.These may be placed in the “History” section. You may omit a network location for a workthat was published at least four years before the Document itself, or if the original publisher ofthe version it refers to gives permission. K. For any section Entitled “Acknowledgements” or“Dedications”, Preserve the Title of the section, and preserve in the section all the substance andtone of each of the contributor acknowledgements and/or dedications given therein. L. Preserveall the Invariant Sections of the Document, unaltered in their text and in their titles. Sectionnumbers or the equivalent are not considered part of the section titles. M. Delete any sectionEntitled “Endorsements”. Such a section may not be included in the Modified Version. N. Donot retitle any existing section to be Entitled “Endorsements” or to conflict in title with anyInvariant Section. O. Preserve any Warranty Disclaimers.

If the Modified Version includes new front-matter sections or appendices that qualify asSecondary Sections and contain no material copied from the Document, you may at your optiondesignate some or all of these sections as invariant. To do this, add their titles to the list ofInvariant Sections in the Modified Version’s license notice. These titles must be distinct from anyother section titles.

You may add a section Entitled “Endorsements”, provided it contains nothing but endorsementsof your Modified Version by various parties–for example, statements of peer review or that thetext has been approved by an organization as the authoritative definition of a standard.

You may add a passage of up to five words as a Front-Cover Text, and a passage of up to25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version.Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or througharrangements made by) any one entity. If the Document already includes a cover text for thesame cover, previously added by you or by arrangement made by the same entity you are actingon behalf of, you may not add another; but you may replace the old one, on explicit permissionfrom the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License give permission to usetheir names for publicity for or to assert or imply endorsement of any Modified Version.

5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this License, underthe terms defined in section 4 above for modified versions, provided that you include in the

Page 156: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 155

combination all of the Invariant Sections of all of the original documents, unmodified, and listthem all as Invariant Sections of your combined work in its license notice, and that you preserveall their Warranty Disclaimers.

The combined work need only contain one copy of this License, and multiple identical InvariantSections may be replaced with a single copy. If there are multiple Invariant Sections with thesame name but different contents, make the title of each such section unique by adding at theend of it, in parentheses, the name of the original author or publisher of that section if known,or else a unique number. Make the same adjustment to the section titles in the list of InvariantSections in the license notice of the combined work.

In the combination, you must combine any sections Entitled “History” in the various originaldocuments, forming one section Entitled “History”; likewise combine any sections Entitled “Acknowledgements”,and any sections Entitled “Dedications”. You must delete all sections Entitled “Endorsements”.

6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other documents released underthis License, and replace the individual copies of this License in the various documents with asingle copy that is included in the collection, provided that you follow the rules of this Licensefor verbatim copying of each of the documents in all other respects.

You may extract a single document from such a collection, and distribute it individually underthis License, provided you insert a copy of this License into the extracted document, and followthis License in all other respects regarding verbatim copying of that document.

7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate and independent documentsor works, in or on a volume of a storage or distribution medium, is called an “aggregate” if thecopyright resulting from the compilation is not used to limit the legal rights of the compilation’susers beyond what the individual works permit. When the Document is included in an aggregate,this License does not apply to the other works in the aggregate which are not themselves derivativeworks of the Document.

If the Cover Text requirement of section 3 is applicable to these copies of the Document, thenif the Document is less than one half of the entire aggregate, the Document’s Cover Texts maybe placed on covers that bracket the Document within the aggregate, or the electronic equivalentof covers if the Document is in electronic form. Otherwise they must appear on printed coversthat bracket the whole aggregate.

8. TRANSLATION

Translation is considered a kind of modification, so you may distribute translations of theDocument under the terms of section 4. Replacing Invariant Sections with translations requiresspecial permission from their copyright holders, but you may include translations of some or allInvariant Sections in addition to the original versions of these Invariant Sections. You may includea translation of this License, and all the license notices in the Document, and any WarrantyDisclaimers, provided that you also include the original English version of this License andthe original versions of those notices and disclaimers. In case of a disagreement between thetranslation and the original version of this License or a notice or disclaimer, the original versionwill prevail.

If a section in the Document is Entitled “Acknowledgements”, “Dedications”, or “History”,the requirement (section 4) to Preserve its Title (section 1) will typically require changing the

Page 157: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 156

actual title.

9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except as expressly providedfor under this License. Any other attempt to copy, modify, sublicense or distribute the Documentis void, and will automatically terminate your rights under this License. However, parties whohave received copies, or rights, from you under this License will not have their licenses terminatedso long as such parties remain in full compliance.

10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the GNU Free DocumentationLicense from time to time. Such new versions will be similar in spirit to the present version, butmay differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

Each version of the License is given a distinguishing version number. If the Document specifiesthat a particular numbered version of this License “or any later version” applies to it, you have theoption of following the terms and conditions either of that specified version or of any later versionthat has been published (not as a draft) by the Free Software Foundation. If the Document doesnot specify a version number of this License, you may choose any version ever published (not asa draft) by the Free Software Foundation.

A.2 Cenni storici

Eulero Leonhard Euler, nato a Basilea, Svizzera nel 1707, morto nel 1783 a Pietroburgo.Figlio di un pastore protestante doveva intraprendere la carriera ecclesiastica. Cominciapero a frequentare alcuni dei numerosi, ed attivi, membri della famiglia Bernoulli, Jeaned i figli Nicolaus e Daniel in fuga dal Belgio per questioni razziali e si orienta verso lamatematica, studiando anche teologia, medicina e lingue orientali. E chiamato all’Accademiadi Pietroburgo nel 1727 per coprire il posto di professore di medicina, per una serie difortuite coincidenze diventa professore di filosofia naturale ed infine, alla eta di 26 anni, dimatematica. Nella sua vita ha pubblicato una media di 800 pagine l’anno senza diminuirela sua frenetica attivita nemmeno dopo aver perso la vista ad un occhio nel 1735 ed esserediventato cieco nel 1771. Negli ultimi anni di vita scrive, cieco, su una grande lavagnadescrivendo e dettando ad alcuni dei sui 13 figli le sue idee. Di lingua madre tedescascrive in latino e francese. La tradizione vuole che dicesse che la sua penna lo superava inintelligenza. I contributi di Eulero sono estremamente vasti, un segno della sua importanzanella storia della matematica e implicitamente dato dall’osservazione che lui utilizza perla prima volta una simbologia ancor oggi comune; la lettera e per la base del sistema deilogaritmi naturali, il simbolo π per il rapporto fra circonferenza e diametro del cerchio, ilsimbolo i per la radice di -1,

∑per la sommatoria, ecc.

Gauss Karl Friedrich Gauss, nato a Brunswick, Germania, nel 1777, morto a Gottinga nel1855. Dimostra che le radici di un’equazione polinomiale sono in numero pari al suo grado,abbandona la geometria euclidea per avventurarsi nel concetto di spazio curvo.

Jury Pubblica nel 1961, con Blanchard, il test di stabilita noto come test di Jury.

Kalman Rudolph Emil Kalman presenta ad una conferenza a Mosca nel 1960 il suo lavorodegli ultimi 10 anni in cui mostra l’evidenza della dualita esistente fra il controllo in

Page 158: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 157

retroazione multivariabile ed il filtraggio in retroazione multivariabile. Pochi anni dopopresenta il filtro noto come filtro di Kalman-Bucy.

Kolmogorov Andrei Nikolaecih Kolmogorov, nato a Tambov, Russia, nel 1903 e morto aMosca, URSS, nel 1987. Entra all’Universita di Mosca nel 1920 dove comincia a studiarecalcolo delle probabilita. Nel 1933 pubblica la monografia “Concetti fondamentali di probabilita”in cui pone di fatto le basi matematiche al calcolo delle probabilita e presenta, fra le altrecose, “la legge dei grandi numeri”. La sua teoria, sviluppata contemporaneamente maindipendentemente da Norbert Wiener, fornisce per la prima volta gli strumenti analiticiper affrontare i problemi di filtraggio e predizione dei dati.

Laplace nasce in Francia nel 1749 da un famiglia popolare, muore nel 1823. Riesce adentrare in un’accademia militare ed ad avvicinarsi alla matematica. Contemporaneo diLagrange, Condorcet, Monge, Legendre e Carnot; con loro condivide le esperienze dellarivoluzione francese (1789) e lo studio della matematica. Ha un ruolo minore rispetto ai suoicontemporanei in entrambi i campi, politico e scientifico. Pubblica, nel 1812, la “’Theorieanalytique des probabilites” in cui introduce la funzione oggi nota come “Trasformata diLaplace” e dimostra rigorosamente la teoria dei minimi quadrati gia formulata da Legendre.Ha fatto parte del “Comitato sui Pesi e sulle Misure”, fu ministro della Pubblica Amministrazionesotto Napoleone senza raccogliere particolari consensi.

Nyquist Harry Nyquist (1889-1976) pubblica nel 1932 un lavoro dal titolo “RegenerationTheory” durante lo sviluppo di un amplificatore con retroazione negativa da parte dellaAT&T. Si intravede lo sviluppo di quello che oggi e noto come “criterio di Nyquist” e sicominciano a comprendere gli effetti benefici della retroazione negativa.

Riccati Jacopo Francesco Riccati, nato a Venezia nel 1676, morto nel 1754. Dopo averintrapreso studi di legge presso i gesuiti si dedica all’astronomia per poi studiare definitivamentele scienze naturali. Provveditore di Castelfranco Veneto per oltre 30 anni, viaggia poco e nonfrequenta le accademie ed universita, il suo contributo scientifico e ricavabile tramite la fittacorrispondenza che aveva con studiosi contemporaneai italiani ed europei. Il suo contributo,e quello di Vincenzo Riccati, uno dei suoi 18 figli, risiede essenzialmente nello studio di quellache d’Alembert definira “equazione di Riccati”, cui Eulero dara un contributo determinantealla soluzione.

Routh Edward J. Routh (1831-1907). Nel 1877 pubblica in un trattato “Stability ofMotion” il criterio oggi noto come “criterio di Routh-Hurwitz”. Hurwitz (Svizzera, 1859-1919) non collaboro con Routh ma trovo il risultato indipendentemente nel 1895.

Tustin Arnold Tustin, nato in Inghilterra. Chairman della “Automatic Control”, il primocongresso mai tenuto sul controllo automatico nel 1951 a Cranfield, Inghilterra.

Wiener Norbert Wiener (Columbia 1894- Stoccolma 1964). Per molti anni professore dimatematica al Massachusetts Institute of Technology e un personaggio dotato di spiccatequalita analitiche, un “prodigio” secondo i suoi contemporanei. Durante la seconda guerramondiale dedica le sue risorse allo studio della predizione della posizione di un aereo inistanti futuri. Nel 1948 pubblica “Cibernetica”, inaugurando la nuova disciplina che studiacontrollo e comunicazione di animali e macchine. Nel 1949-1950 lavora con Shannon allateoria dell’informazione. Fornisce contributi significativi nel calcolo delle probabilita, nella

Page 159: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 158

teoria degli spazi lineari e nella definizione degli spazi di Banach. Utilizza modelli stocasticiper modellare non solo il rumore ma anche i segnali. Studia l’applicazione della logicamatematica all’attivita del sistema nervoso.

A.3 La Z trasformata

La Z trasformata di una sequenza f(k), con f(k) = 0 per k < 0 e definita come:

F (z) = Z [f(k)] =∞∑

k=0

f(k)z−k. (A.1)

L’importanza di questa trasformazione risiede nel fatto che equazioni alle differenze vengonoconvertite in equazioni algebriche (cosı come la trasformata di Laplace trasforma equazionidifferenziali in equazioni algebriche).

Se la serie a secondo membro della (A.1) converge in corrispondenza di un z, F (z) risultadefinita per ogni z tale che |z| ≥ |z|. Il piu piccolo valore di |z| per cui e definita F (z) e definitoraggio di convergenza, la regione del piano caratterizzata da avere |z| maggiore del raggio diconvergenza e definita regione di convergenza.

Il metodo di antitrasformazione piu generale e fornito dalla relazione:

f(k) = Z−1 [F (z)] =1

2πj

ΓF (z)zk−1dz k ≥ 0 (A.2)

dove Γ e una curva chiusa del piano complesso che racchiude tutte le radici del denominatore diF (z) (i poli); Γ e contenuta nella regione di convergenza.

Lasciando i dettagli a testi specializzati e bene rimarcare un punto importante: per sequenzef(k) nulle per k < 0 la corrispondenza con la sua Z-trasformata e biunivoca, non c’e quindiperdita di informazione nel lavorare con la sequenza f(k) o la sua Z-trasformata F (z).

Proprieta principali

Linearita

Sia

F1(z) = Z [f1(k)]F2(z) = Z [f2(k)]

allora, considerando α e β due scalari qualsiasi, vale:

αF1(z) + βF2(z) = Z [αf1(k) + βf2(k)]

Page 160: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 159

Anticipo

SiaF (z) = Z [f(k)]

vale:

Z [f(k +m)] = zmF (z)− zmm−1∑

k=0

f(k)z−k (A.3)

con m intero positivo. Particolarizzando per m = 1 si ottiene:

Z [f(k + 1)] = zF (z)− zf(0), (A.4)

che mostra come la moltiplicazione per z nel dominio della variabile complessa (con f(0)=0)equivale ad anticipare di un passo nel dominio del tempo. Da questo la denominazione di z comeoperatore di anticipo unitario.

Ritardo

SiaF (z) = Z [f(k)]

vale:Z [f(k −m)] = z−mF (z) (A.5)

con m intero positivo. Particolarizzando per m = 1 si ottiene:

Z [f(k − 1)] = z−1F (z), (A.6)

che mostra come la moltiplicazione per z−1 nel dominio della variabile complessa equivale adritardare di un passo nel dominio del tempo. Da questo la denominazione di z−1 come operatore

di ritardo unitario.

Valore iniziale

SiaF (z) = Z [f(k)]

vale:f(0) = lim

|z|→∞F (z) (A.7)

Valore finale

SiaF (z) = Z [f(k)]

vale:lim

k→∞f(k) = lim

z→1(z − 1)F (z) (A.8)

Page 161: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 160

Convoluzione

Sia

F1(z) = Z [f1(k)]F2(z) = Z [f2(k)]

vale:

f1 ⋆ f2 =k∑

i=0

f1(i)f2(k − i) = F1(z)F2(z) (A.9)

Trasformate notevoli

f(k) Z[f(k)]

δ(k) ⇔ 1

δ−1(k) ⇔z

z − 1

akδ−1(k) ⇔z

z − a

knakδ−1(k) ⇔n!z

(z − a)n

δ−1(k) sin(νk) ⇔ z sin(ν)

z2 − 2z cos(ν) + 1

δ−1(k) cos(νk) ⇔ z(z − cos(ν))

z2 − 2z cos(ν) + 1

Antitrasformazione di funzioni razionali fratte

Le funzioni razionali fratte, che rappresentano la fdt di legami ingresso-uscita espressi tramiteequazioni alle differenze, possono essere antitrasformate in maniera relativamente semplice. Esufficiente decomporre in fratti semplici la funzione e ricondursi all’antitrasformata di una seriedi traformate notevoli.

Un secondo metodo, di valenza numerica, consiste nel dividere numeratore e denominatoredella F (z) tramite l’algoritmo euclideo riportato in seguito nell’appendice. In questo modo siottiene la F (z) come serie di potenze di z−1 i cui coefficienti, sulla base della definizione dellaZ-trasformata sono proprio i valori della f(k).

A.4 Segnali aleatori

Sia x(k) t ∈ IN un segnale discreto (sequenza). Un segnale aleatorio e una collezione di segnali(deterministici) ciascuno corrispondente ad un singolo esperimento casuale. Se χ individua il

Page 162: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 161

risultato di un singolo esprimento, cioe un elemento dell’insieme dei possibili risultati o spazio deicampioni S:

x(k, χ) segnale aleatoriox(k, χ) realizzazione del segnale aleatoriox(k, χ) variabile aleatoriax(k, χ) numero

Data una variabile aleatoria si possono definire alcune caratterizzazioni statistiche

distribuzione di probabilita e funzione di densita di probabilita

Data la variabile aleatoria x(k, χ) si definisce funzione di distribuzione cumulativa:

Px(x; k) = Pr{x(k) = x}.

Nel caso continuo al segno di eguaglianza si sostituisce il segno di ≤ e la funzione prende il nomedi funzione di distribuzione cumulativa. La sua derivata parziale rispetto a x, detta funzionedensita di probabilita, e impulsiva nel caso discreto:

fx(x; k) =∑

i

Pr{x(k) = xi}δ(x(k)− xi).

valore atteso (media statistica)

In termini non rigorosi si puo ritenere il valore atteso come il valore da sotituire alla variabilealeatoria se fosse necessario quantificarla:

µx(k) = E[x(k)] =∑

i

xiPr{x(k) = xi}.

varianza

E una misura della dispersione della variabile intorno al valor atteso:

σ2x = V ar[x(k)] = E[(x(k)− µx(k))2].

autocorrelazione

rx(k1, k2) = E[x(k1)x(k2)].

Page 163: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 162

covarianza

cx(k1, k2) = Cov[x(k1), x(k2)] = E[(x(k1)− µx(k1))(x(k2)− µx(k2))].

cx(τ) = Cov[x(k), x(k + τ)] = E[(x(k)− µx(k))(x(k + τ)− µx(k + τ))].

La covarianza soddisfa le seguenti proprieta:

1. cx(0) > 0

2. cx(−τ) = cx(τ)

3. ‖cx(τ)‖ < cx(0)

4. La seguente matrice simmetrica ottenuta dai valori della covarianza e semidefinita positiva:

cx(0) cx(1) cx(2) cx(N − 1)cx(1) cx(0) cx(1) . . . cx(N − 2)cx(2) cx(1) cx(0) cx(N − 3)

.... . .

cx(N − 1) cx(N − 2) cx(N − 3) cx(0)

(A.10)

stima dell’autocorrelazione

Le formule usate per stimare l’autocorrelazione di una serie numerica a valor medio nullo sono:

rx(τ) =1

N

N−τ∑

i=1

x(i)x(i+ τ),

rx(τ) =1

N − τ

N−τ∑

i=1

x(i)x(i+ τ).

Per N ⇒∞ le due formule sono ovviamente coincidenti. Per N finito la prima puo fornire unastima polarizzata mentre la seconda non fornisce una matrice (4) semidefinita positiva.

segnale aleatorio stazionario

E il segnale aleatorio per cui le caratterizzazioni statistiche non dipendono dalla scelta dell’originedei tempi ma dal ritardo τ = k2 − k1. Se questa proprieta e valida fino all’ordine N si definiscesegnale aleatorio stazionario di ordine N .

Un segnale stazionario in senso lato (SSL) ha la media costante nel tempo e l’autocorrelazionefunzione solo di τ .

Page 164: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 163

ergodicita

Un segnale SSL e ergodico se, al crescere della dimensione N di una sua realizzazione, le medietemporali coincidono con l’operazione di valor atteso.

rumore bianco

Si definisce rumore bianco il segnale aleatorio ζ(k) caratterizzato da una funzione di autocorrelazioneimpulsiva:

E[ζ(k)ζT(l)] = Rδ(k − l).

test di Anderson

Il test di Anderson e un diffuso test di bianchezza per un segnale aleatorio. Si consideri unsegnale ε(k), di dimensione N e a valor medio nullo. Si puo dimostrare che, se ε(k) e bianco, perN ⇒ ∞ la covarianza normalizzata tende ad una gaussiana con media nulla e varianza 1/N . Iltest, quindi, si riconduce a verificare la gaussianita di un segnale.

1. si calcoli la covarianza secondo la

r(τ) =1

N

N−τ∑

i=1

ε(i)ε(i+ τ).

2. se ne calcoli la covarianza campionaria normalizzata:

γ(τ) =r(τ)

r(0).

3. si fissi un livello di confidenza per il test, es. α = 5%, e si individuino le code della gaussianache coprono un’area α attraverso un valore dell’ascissa β, es. ad α = 5% corrisponde unvalore di β = 1.96.

4. si contino il numero di campioni che sono fuori del valore ± β√N

su un numero di valutazioni,

es. 30, (calcolando γ(1) . . . γ(30)).

5. se, in percentuale sul numero di valutazioni (30 nell’esempio), i campioni fuori dell’intervallo(± β√

N) sono minori della soglia α (5%) allora il segnale puo considerarsi bianco.

xxx grafico con l’interpretazione del test.

A.5 Polinomi

lunga divisione

Si prendano due polinomi da dividere: (x3 + 4x2 + 3x+ 1) e (x+ 1):

x3 +4x2 +3x +1 |x+ 1

Page 165: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 164

si divide la potenza maggiore del primo polinomio x3, per la potenza maggiore del secondo xottenendo x2 e si moltiplica il secondo polinomio per x2

x3 +4x2 +3x +1 |x+ 1x3 +x2 x2

sottranendox3 +4x2 +3x +1 |x+ 1x3 +x2 x2

+3x2 3x +1

si ripete l’operazione fra 3x2 e x ottenendo 3x:

x3 +4x2 +3x +1 |x+ 1x3 +x2 x2 + 3x

+3x2 3x +1+3x2 3x

sottraendo ancora si ottiene 1 che e inferiore alla potenza maggiore del divisore. Il risultato equindi (x3 + 4x2 + 3x+ 1) = (x+ 1)(x2 + 3x) + 1.

polinomio monico

Si definisce polinomio monico il polinomio il cui coefficiente della potenza piu elevata e unitario.

polinomi coprimi

Due polinomi si definiscono coprimi se non hanno fattori in comune.

A.6 Matrici

vedere il quaderno 1 di balestrino celentano. (def matrice compagna orizzontale inferiore)

Inversione e trasposizione del prodotto di due matrici

A = BC

A−1 = C−1B−1

AT = CTBT

La matrice inversa della trasposta (o trasposta dell’inversa)

A-T =(A−1

)T=(

AT)−1

(AB)-T = B-TA-T

Page 166: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 165

Minore principale

Data una matrice A ∈ IRn×n, si definisce minore principale di ordine k la sottomatrice estrattada A considerando le prime k righe e le prime k colonne.

Lemma di inversione matriciale

(A + BCD)−1 = A−1 −A−1B(C−1 + DA−1B

)−1DA−1

Traccia di una matrice

La traccia di una matrice A e definita come la somma degli elementi diagonali

tr[A] =∑

i

ai,i

Positiva definitezza

Una matrice quadrata A si definisce definita positiva se, per ogni vettore x con almeno unelemento diverso da zero, e verificata:

xTAx > 0.

Si definisce semi-definita positiva se la relazione e verificata anche con il segno di eguaglianza. Ladefinizione si estende banalmente alla negativa (semi)definitezza. Definendo

As =1

2

(A + AT

)

condizione necessaria e sufficiente affinche A sia definita positiva e che lo sia anche As. Perverificare se una matrice e o meno definita positiva si possono utilizzare diversi test quali la verificadel segno degli autovalori o il test di Sylvester che sono validi solo per matrici simmetriche. Enecessario quindi calcolare prima la As e poi applicare il test.

Test di Sylvester

Una matrice simmetrica e definita positiva se il determinante di tutti i suoi minori principali epositivo.

Matrice compagna

Un matrice A si definisce compagna orizzontale inferiore se assume la forma:

A =

0 1 0 . . . 00 0 1 . . . 0. . . . . . . . . . . . . . .. . . . . . . . . . . . . . .−an −an−1 −an−2 . . . −a1

. (A.11)

In maniera analoga e possibile definire la matrice compagna verticale destra.

Page 167: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 166

Decomposizione in valor singolari

La decomposizione in valor singolari (SVD, Singular Value Decomposition) e uno strumentomatematico che permette di estrarre informazioni importanti su una matrice. Sia A ∈ IRn×m

allora

A =

U [ Λ O ] V T se n ≤ m

U

O

]

V T se n ≥ m

in cui U ∈ IRn×n e V ∈ IRm×m sono matrici ortonormali, per le quali, quindi, vale UUT = I eV V T = I. La matrice Λ, semidefinita positiva, di dimensioni opportune, e una matrice diagonalei cui elementi λi sono definiti valor singolari (λi ≥ 0). La matrice Λ e generalmente arrangiata inmodo tale da avere i valori singolari in ordine decrescente. Il numero p di valor singolari diversi dazero rappresenta proprio il rango della matrice A. Le colonne di U e V sono definite autovettorisinistri e destri rispettivamente.

Il massimo valor singolare della matrice A rappresenta proprio la sua norma-2 definita come

‖A‖2 = max‖x‖=1

‖Ax‖ ,

in cui la norma del vettore e quella Euclidea. Si ha quindi ‖A‖2 = λ1(A). Esistono diversedefinizioni di norma di una matrice, alcune delle quali direttamente riconducibili a delle relazionisui valor singolari.

La decomposizione in valor singolari assume un’importanza fondamentale anche nel calcolodelle pseudoinverse. Si definisca:

Λ† = diag{λ−1

1 , λ−12 , . . . , λ−1

p , 0, . . . , 0}

di dimensioni opportune. Si ha

A† =

V

[Λ†

O

]

UT se n ≤ m

V [ Λ† O ]UT se n ≥ m

per le pseudoinverse vale

AA†A = A

A†AA† = A†(

AA†)T

= AA†

(

A†A)T

= A†A

se, inoltre, la matrice A ha rango pieno allora

A† =

AT(AAT

)−1se n ≤ m

(ATA

)−1AT se n ≥ m

in cui si riconosce che, nel caso rettangolare alto, l’operazione di pseudoinversa e proprio quellanecessaria per trovare la soluzione a Minimi Quadrati.

Page 168: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 167

Si definisce numero di condizione della matrice A:

cond(A) =λmax(A)

λmin(A)

A.7 Formula di Ackermann

xxx

Si deve quindi ricorrere ad un artificio che evidenzi un’espressione semplice delle incognite. Sitratta di rappresentare il sistema in forma canonica di osservabilita tramite una trasformazionelineare; gli autovalori, infatti, sono invarianti rispetto a tali trasformazioni.

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

|λI −Φ| = λn + a1λn−1 + . . .+ an.

Nel seguito, per semplicita di notazione, si fara riferimento ad un sistema con una uscita scalare,le matrici H e G, quindi, sono vettori riga o colonna e verranno rispettivamente indicate con isimboli h e g.

Si applichi la trasformazione lineare allo stato:

e = Te,

l’equazione dinamica, nel nuovo stato, diventa:

Te(k + 1) = FTe(k)e(k + 1) = T−1FTe(k).

Per il calcolo della nuova matrice dinamica si faccia riferimento alla sua trasposta (anche in questocaso, gli autovalori sono invarianti rispetto a questa operazione):

T−1(ΦT − hTgT

)T = T−1ΦTT − T−1hTgTT . (A.12)

Si scelga, come matrice di trasformazione lineare, la matrice:

T =[

hT ΦThT . . . ΦTn−1hT]

an−1 an−2 . . . a1 1an−2 an−3 . . . 1 0. . . . . . . . . . . . . . .. . . . . . . . . . . . . . .1 0 . . . 0 0

affinche questa matrice sia invertibile e necessario che siano invertibili entrambe le matrici chela compongono: la seconda ha rango pieno per costruzione, la prima matrice e la trasposta dellamatrice di osservabilita del sistema. Se ha rango pieno il sistema si definisce completamenteosservabile. Si noti come l’osservabilita di un sistema dipenda dalla coppia (Φ,h) e non da Γ .In parole, un sistema e non osservabile se esiste un particolare stato la cui evoluzione libera eindistinguibile dallo stato nullo, ossia se fornisce in uscita una evoluzione libera identicamentenulla in un qualsiasi intervallo di tempo. Si noti, inoltre, che la proprieta di osservabilita di

Page 169: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 168

un sistema si conserva rispetto a trasformazioni lineari dello stato. A questo punto e possibileriscrivere il primo termine della (A.12) nella forma compagna orizzontale inferiore:

T−1ΦTT =

0 1 0 . . . 00 0 1 . . . 0. . . . . . . . . . . . . . .. . . . . . . . . . . . . . .−an −an−1 −an−2 . . . −a1

,

e il secondo termine della (A.12) come

T−1hT =

0...1

,

definiamo infine kT = −gTT . La matrice dinamica del sistema, nel nuovo stato, assume anch’essauna forma compagna orizzontale inferiore:

T−1F TT =

0 1 0 . . . 00 0 1 . . . 0. . . . . . . . . . . . . . .. . . . . . . . . . . . . . .

kn − an kn−1 − an−1 kn−2 − an−2 . . . k1 − a1

,

che, definendo

d = [ dn . . . d1 ]T

a = [ an . . . a1 ]T

permette di scrivere la relazione vettoriale:

k − a = −d

che fornisceg = −T -T (a− d) .

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

A.8 Simbologia

x variabile scalare

x vettore (r × 1)

X matrice (r1 × r2)

x derivata temporale della variabile x

x (x) stima della variabile x (x)

Page 170: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 169

diag{x1, . . . , xn} matrice diagonale riempita con xi in riga i, colonna i e zero in tuttigli altri elementi

blockdiag{X1, . . . ,Xn} matrice diagonale a blocchi riempita con le matrici X1, . . . ,Xn lungola diagonale principale e zero in tutti gli altri elementi

R(K) rango della matrice K

‖x‖ norma 2 del vettore x

xT(XT

)transposta del vettore x (matrice X)

K† inversa di Moore-Penrose (pseudoinversa) della matrice K

Ir (r × r) matrice identita (r × r)

Or1×r2matrice nulla (r1 × r2)

Page 171: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Bibliografia

[1] S. Bennett, “A Brief History of Automatic Control,” IEEE Control Systems Magazine,pp. 17–25, 1996.

[2] S. Bittanti, Identificazione dei Modelli e Controllo Adattativo, Pitagora Editrice, Bologna,I, 2000.

[3] S. Bittanti, Teoria della Predizione e del Filtraggio, Pitagora Editrice, Bologna, I, 2000.

[4] S. Bittanti and M. Campi, Raccolta di Problemi di Identificazione Filtraggio Controllo

Predittivo, Pitagora Editrice, Bologna, I, 1995.

[5] S. Bittanti and S.M. Savaresi, “On the Parametrization and Design of an Extended KalmanFilter Frequency Tracker,” IEEE Trans. on Automatic Control , vol. 45, n. 9, pp. 1718–1724,2000.

[6] C. Bonivento, C. Melchiorri and R. Zanasi, Sistemi di Controllo Digitale, Progetto Leonardo,Bologna, I, 1995.

[7] C. B. Boyer, A History of Mathematics, John Wiley & Sons Inc., 1968.

[8] S. Chiaverini, F. Caccavale, L. Villani and L. Sciavicco, Fondamenti di Sistemi Dinamici ,McGraw-Hill, Milano, I, 2003.

[9] G.F. Franklin, J.D. Powell and M.L. Workman, Digital Control of Dynamic Systems,Addison-Wesley, Reading, M, 1990.

[10] A. Gelb, Applied Optimal Estimation, M.I.T. Press, M, 1990.

[11] T. Kailath, A.H. Sayed and B. Hassibi, Linear Estimation, Prentice Hall, Upper SaddleRiver, NJ, 1999.

[12] R.E. Kalman, “A new approach to linear filtering and prediction problems,” Trans. ASME

J. Basic Eng., 82, pp. 34–45, 1960.

[13] R.E. Kalman and R.W. Koepcke, “Optimal synthesis of linear sampling control systems usinggeneralized performance indices,” Trans. ASME Ser.D., J. Basic Engr , 80, pp. 1820–1826,1958.

[14] J.D. Landau, System Identification and Control Design, Prentice Hall, Englewood Cliffs, NJ,1990.

170

Page 172: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 171

[15] B.F. La Scala and R.R. Bitmead, “Design of an Extended Kalman Filter Frequency Tracker,”IEEE Trans. on Signal Processing , vol. 44, n. 3, pp. 739–742, 1996.

[16] L. Ljung, System Identification: Theory for the User , Prentice Hall PTR, Upper SaddleRiver, NJ, 1999.

[17] J.J. Murphy, Technical Analysis of the Financial Markets, New York Institute of Finance,New York, 1999.

[18] C. Presse and M. Gautier, “New Criteria of Exciting Trajectories for Robot Identification,”Proc. 1993 IEEE Int. Conf. on Robotics and Automation, Atlanta, GA, pp. 907–912, 1993.

[19] T. Soderstrom, Discrete-time Stochastic Systems: Estimation and Control , Springer-Verlag,London, GB, 2002.

[20] P.E. Wellstead and M.B. Zarrop, Self-Tuning Systems. Control and Sygnal Processing , JohnWiley & Sons, Chichester, UK, 1991.

Page 173: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

Indice analitico

Ackermann, formula di, 128, 167AIC, 101Akaike, 101AR, 68AR, predittore, 73ARIMA, 69ARMA, 68ARMA, predittore, 73ARMAX, 68ARMAX, predittore, 72ARX, 68ARX, predittore, 72

controllo lineare quadratico, 148convergenza in media quadratica, 125

diagrammi di Bode, 20diagrammi di Nyquist, 22disturbi, 7dualita stima-controllo, 148

equazione alle differenze, 10equazione alle ricorrenze, 11Eulero, 32Eulero, cenni storici, 156

filtraggio, 124Fisher, 85, 144forma canonica di una fdt, 19FPE, 101funzione razionale fratta, 18

Gauss, 144Gauss, cenni storici, 156Gauss-Newton, algoritmo di, 87guadagno statico, 18

Hurwitz, 24

identificazione, 66innovazione, 142

interpolazione, 124

Jury, cenni storici, 156Jury, criterio di, 23

Kalman, 93, 131, 148Kalman, aggiornamento di misura, 132Kalman, aggiornamento temporale, 132Kalman, cenni storici, 156Kalman, filtro esteso, 144Kolmogorov, 144Kolmogorov, cenni storici, 157

Laplace, 25Laplace, cenni storici, 157LS, 76Luenberger, 126

Massima Verosimiglianza, 85, 141MDL, 102Minimi Quadrati regolarizzati, 78MLE, 85modelli a errore d’equazione, 67modelli a errore d’ingresso, 66modelli a errore d’uscita, 66modi alternati, 13modi aperiodici, 12modi pseudoperiodici, 14

numero di condizione, 84, 167Nyquist, 28, 57Nyquist, cenni storici, 157

OE, 70OE, predittore, 73Optimum Transient Observer, 139osservatore asintotico, 126

predittiva, forma, 70predizione, 124predizione, errore di, 73

172

Page 174: note di Identificazione e Filtraggio - webuser.unicas.itwebuser.unicas.it/antonelli/didattica/note_if.pdf · fra di loro `e il modello del sistema. Il modello fornisce gli aspetti

G. Antonelli - IF (2008) 173

pseudoinversa, 76, 166

raccolta dati, 65Riccati, 135Riccati, cenni storici, 157RLS, 89Routh, cenni storici, 157Routh, criterio di, 24RWLS, 89

scelta del modello, 65Schmidt, 146Schmidt, modifica di, 132stimatore consistente, 125SVD, 166Sylvester, test di, 165

Tustin, 33Tustin, cenni storici, 157

validazione, 66valor singolare, 81, 166Viterbi, 119

Wiener, 144Wiener, cenni storici, 157Wiener, processo di, 69WLS, 78