… se si impiega anche la conoscenza del modello del sistema , si perviene al filtro di kalman

33
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion … se si impiega anche la conoscenza del modello del sistema, si perviene al Filtro di Kalman Filtro di Kalman

Upload: rafael-fisher

Post on 03-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

… se si impiega anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman. Filtro di Kalman. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

… se si impiega anche la conoscenza del modello del sistema, si perviene al

Filtro di Kalman

Filtro di Kalman

Page 2: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

È possibile costruire un filtro ricorsivo che prenda in ingresso tutte le

misure disponibili e combini tra loro le informazioni contenute in ciascun

dato, compresa la conoscenza del modello dello strumento che lo ha

fornito

Il temine ricorsivo è fondamentale per un’implementazione al calcolatore

del filtro di Kalman, esso indica infatti che l’algoritmo non richiede la

memorizzazione e la rielaborazione di tutta la storia dei dati ogni volta che

è disponibile una nuova misura

Filtro di Kalman

Page 3: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Stima Ottima dello Stato del Sistema

Controlli

Stato del sistema (desiderato, ma non noto)

Modello di stato del sistema Modello di osservazione

Filtro di Kalman

Strumenti di misura

Sistema

Fonti di incertezzasul sistema

Fonti di incertezzasulle misure

Misure (Osservazioni)

Stima Ottima dello Stato del Sistema

Controlli

Stato del sistema (desiderato, ma non noto)

Modello di stato del sistema Modello di osservazione

Filtro di Kalman

Strumenti di misura

Sistema

Fonti di incertezzasul sistema

Fonti di incertezzasulle misure

Misure (Osservazioni)

La conoscenza degli ingressi (controlli) e uscite (misure) può essere utilizzata per effettuare una stima dello stato del sistema

Filtro di Kalman

Stima dello stato basata

su modello del sistema

Page 4: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Le fonti di incertezza sul modello del sistema o incertezza di modello

derivano dalla non completa conoscenza di tutte le variabili che influiscono

sulla sua dinamica e da scostamenti dal modello matematico spesso

semplificato.

Le fonti di incertezza sulle misure comprendono:

- la non perfetta conoscenza di quali sono le relazioni tra le variabili di stato

e le uscite misurate (incertezza di modello degli strumenti) – effetti

principalmente modificanti

- l’incertezza dovuta agli errori casuali e sistematici – effetti principalmente

interferenti

Filtro di Kalman – fonti incertezza

Page 5: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Sotto le seguenti ipotesi il filtro di Kalman fornisce una stima ottima

dello stato:

- il sistema sia descritto da un modello lineare

- il rumore associato al sistema e alle misure sia bianco e Gaussiano

(ovvero a media nulla, con densità di potenza

spettrale distribuita uniformemente su tutta la banda

di frequenze e con distribuzione di probabilità

Normale, e non correlato nelle sua realizzazione

ovvero non c’è correlazione tra un suo campione ed il

successivo!)

Filtro di Kalman - ipotesi

Page 6: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Il modello di sistema lineare è giustificabile per varie ragioni.

- spesso un modello lineare si adatta bene allo scopo

- in presenza di non linearità, l’approccio ingegneristico più utilizzato è

quello della linearizzazione del modello attorno a una qualche

configurazione del sistema, ad esempio un punto o una traiettoria

- la teoria dei sistemi lineari è molto più completa e pratica di quelli non

lineari

Esistono dei metodi per estendere l’applicazione del filtro di Kalman ai

sistemi non lineari qualora essi dovessero rivelarsi inadeguati: Filtro di

Kalman esteso

Filtro di Kalman – ipotesi di linearità

Page 7: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

L’ipotesi di rumore bianco implica che i valori di rumore non sono correlati

tra di loro nel tempo.

In pratica, se si conosce quanto vale il rumore all’istante attuale, ciò non

aggiunge nessuna informazione ai fini di una previsione su quale sarà il

suo valore in un altro istante.

Filtro di Kalman – ipotesi di rumore bianco

Inoltre un rumore bianco ha uno spettro con uguale densità di potenza per

tutte le frequenze, ciò implica che un tale segnale ha potenza infinita!,

pertanto un rumore bianco non può esistere in natura

Poiché però ogni sistema fisico ha una banda passante limitata nello

spazio delle frequenze ed è tipicamente affetto da un rumore a larga

banda, dal punto di vista del sistema è equivalente ad assumere che vi sia

rumore bianco

Page 8: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Se invece all’interno della banda passante del sistema il rumore non ha

densità spettrale uniforme, oppure è correlato nel tempo, attraverso un

filtro aggiuntivo è possibile riprodurre, partendo da un rumore bianco,

qualsiasi forma di rumore correlato (il filtro consiste in un sistema lineare

chiamato “shaping filter”).

Tale filtro viene poi aggiunto alla dinamica del sistema.

Filtro di Kalman – ipotesi di rumore bianco

Page 9: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Mentre l’attributo “bianco” per un rumore è riferito alle sue caratteristiche

temporali (o di frequenza), l’attributo “Gaussiano” è riferito alla sua

ampiezza. Cioè, per ogni singolo istante temporale, la densità di probabilità

dell’ampiezza di un rumore Gaussiano ha la nota forma di una campana.

Questa assunzione è giustificata in senso fisico dal fatto che, tipicamente,

vi è un gran numero di piccole sorgenti che contribuiscono a creare il

rumore di misura.

Questo fenomeno è descritto dal teorema del limite centrale:

all’aumentare del numero di variabili casuali indipendenti che si sommano

tra loro, qualora non ve ne sia nessuna preponderante, qualunque sia la

distribuzione di probabilità di ciascuna, la distribuzione di probabilità della

somma tende ad essere quella Gaussiana

Filtro di Kalman – ipotesi di rumore gaussiano

Page 10: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Filtro di Kalman – modello sistema lineare

Page 11: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Filtro di Kalman – modello sistema discreto

Page 12: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

L’ipotesi di base per il filtro di Kalman in cui si assume che il rumore del processo di evoluzione dello stato e il rumore di misura siano a media nulla e temporalmente scorrelati si traduce rispettivamente con le equazioni

{ } { } 0,k kE v E w k= = ∀

{ } { }( ) ( ) ( ), ( ) ( ) ( )T Tij ijE v i v j Q i E w i w j R iδ δ= ⋅ = ⋅

è la stima dello stato all’istante k condizionata alle sole

informazioni ottenute fino all’istante k-1 è detta previsione di un passo in avanti.

Tale simbologia viene impiegata da ora in avanti

ˆ( | 1)x k k −

Page 13: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Si assume che al passo k-esimo siano noti i seguenti parametri:

la stima ˆ( 1 | 1)x k k− −

la covarianza condizionata ( 1 | 1)P k k− −

Si calcola la previsione:

ˆ ˆ( | 1) ( ) ( 1 | 1) ( ) ( )x k k F k x k k B k u k− = − − +

( | 1) ( ) ( 1 | 1) ( ) ( ) ( ) ( )T TP k k F k P k k F k G k Q k G k− = − − +

Page 14: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Si calcola l’aggiornamento:

ˆ ˆ ˆ( | ) ( | 1) ( )[ ( ) ( ) ( | 1)]x k k x k k W k z k H k x k k= − + − −

( | ) [1 ( ) ( )] ( | 1)[1 ( ) ( )] ( ) ( ) ( )T TP k k W k H k P k k W k H k W k R k W k= − − − +

1( ) ( | 1) ( )[ ( ) ( | 1) ( ) ( )]TW k P k k H k H k P k k H k R k −= − − +

Dove, la matrice di Kalman:

NOTA:

• la previsione è generata dal filtro utilizzando il modello di evoluzione del misurando

• l’aggiornamento fa uso del modello di misura

Scarto tra misura e previsione della misura

Page 15: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Stima iniziale

Previsione

Modello del sistema

Misura

Aggiornamento

Filtro di Kalman – schema ricorsivo

ˆ x k | k −1( ) P k | k −1( )

ˆ x k | k( ) P k | k( )

Page 16: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Si calcoli l’aggiornamento per un semplice caso scalare:

ˆ ˆ ˆ[ ]Fx x W z x= + ⋅ −

2

2 2x

x z

σ σ=

+Dove, la matrice di Kalman:

Filtro di Kalman – filtraggio Bayesiano!

2 2 2

2 2 2 2 2 2

2 2

2 2 2 2

ˆ ˆ ˆ ˆ ˆ[ ]

ˆ1

x x xF

x z x z x z

x x

x z x z

x x z x x z x

z x

σ σ σσ σ σ σ σ σ

σ σσ σ σ σ

= + ⋅ − = + ⋅ − ⋅ =+ + +

⎛ ⎞⋅ + − ⋅ =⎜ ⎟+ +⎝ ⎠

2 2

2 2 2 2ˆx z

x z x z

z xσ σ

σ σ σ σ⋅ + ⋅

+ +

2

2

:

( | 1)

( )

1

x

z

ipotesi

P k k

R k

H

σ

σ

− =

==

(combinazione Bayesiana della misura z e della previsione x)

Si noti anche che se misura e previsione sono uguali non c’è aggiornamento

Page 17: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Teorema di Bayes

Abbiamo visto i fondamenti dell’applicazione del teorema di

Bayes e del filtro di Kalman, per la combinazione delle

informazioni, ora vediamo un esempio concreto di SENSOR

FUSION!

Page 18: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

• Odometers

• Gyro - No drift

- Limited repeatability (motion, poor environment, …)

1° STEP (a & b)1° STEP (c)

2° STEP

• Laser Triangulating Scanner

- Smooth updates

- Drift

1 & 2° STEP: Smooth updates & no drift

Esempio di applicazione (veicoli mobili)

Page 19: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Sensor Fusion

Ln

Ln CX

En

En CX

Fn

Fn CX

Ek

Ek CX

Delay Comp.

Ckn

Ckn CX ++

Esempio di applicazione

( ) ( ) En

Ln

En

Ln

Ln

Ln

En

En

Fn XCCCXCCCX

11 −−+++=

( ) Ln

Ln

En

En

Fn CCCCC

1−+=

Page 20: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Laser Scan data

LS_NAV computation time

Data Fusion

Odometric estimation

Si fondono i dati all’istante Ts e poi si somma la variazione di posa e l’accumulo di covarianza

Ts1 = nTl

time

Tcomp = nTl+ kTo

Ts2 = (n+m)Tl

Tl

To

Esempio di applicazione

Xn+kC = Xn

F + XkE E

kFn

Ckn CCC +=+

XkE

Page 21: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

L’incertezza del LS_NAV è funzione della velocità angolare che provoca un degrado della mappa dovuto al moto del veicolo sovrapposto al moto di scansione del raggio laser

( ) ⎟⎟⎠

⎞⎜⎜⎝

⎛⋅+⋅⋅+⋅=

• 22

0 11 δβα vCC Ln

δv : velocità lineare ed angolare

Esempio di applicazione – stima incertezza laser

Page 22: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

LS NAV,Odometric,Fused Trajectory

X [m]

Y [m]

searching range inputLS NAV estimated poseLS NAV first guess poseodometric traj.fused traj.

In evidence initial guess of pose and searching fields of possible solutions derived from computed covariance given as an input to the LS_NAV algorithm

Esempio di applicazione

Page 23: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

50 60 70 80 90 100 110

-35

-30

-25

-20

-15

-10

-5

0

5

10

LS NAV and Fused Attitude

Odom. cycle time

[deg]

fused attitudeLS NAV attitudefused attitude uncertainty (95%)

76 78 80 82 84 86

-8

-7

-6

-5

-4

-3

-2

-1

0

1

2

LS NAV and Fused Attitude. Zoom

Odom. cycle time

[deg]

fused attitudeLS NAV attitudefused attitude uncertainty (95%)

Assetto fuso e relativo intervallo di confidenza

Esempio di applicazione – assetto fuso

Page 24: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

-0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5-2.5

-2

-1.5

-1

-0.5

0

0.5Trajectories comparison

X [m]

Y [m]

EncoderSensor Fusion

Esempio di applicazione – compensazione deriva

Page 25: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

SLAM

Simultanea localizzazione e mappatura di veicoli autonomi in

ambiente non strutturato

Page 26: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Strutturato:- Ingegnerizzazione dell’ambiente- Bassa flessibilità- Conoscenza a priori della mappa

Non strutturato:- Non necessita di infrastrutture- Alta flessibilità- Costruzione mappa in tempo reale

Passi fondamentali per interagire con ambiente non-strutturato:

- navigazione e propagazione incertezza mediante sistemi di misura autocontenuti

- autolocalizzazione mediante landmark naturali

- fusione tra navigazione incrementale e quella riferita all’ambiente

- mappatura dell’ambiente stesso

Ambiente in cui il robot opera

Page 27: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

- Veicolo a guida differenziale

- Sistema di acquisizione PXI LabView RTOS

Parametro Incertezza Range

distanze 5 cm 7-50 m

angoli 0.1 ° 0-180 °

- Laser a scansione IR [SICK PLS-101] : Tempo di volo

Risoluzione angolare max: 0.5°

Campo di scansione: (0°,180°)

Distanza massima: 50 m

Accuratezza = f(orientazione,materiali)

1

2D cT=

- 2 Encoder incrementali : nnoo:4000:4000

Veicolo e strumentazione

Page 28: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

2

2XkC =

xk xy x

y yy y

x y

δ

δ δ

δ δ δδ

σ σ σσ σ σσ σ σ

⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦

( )

( )

10

10

10

cos

sin

2

Rk R Lk Lk k k

rid

Rk R Lk Lk k k

rid

Rk R Lk Lk k

rid

n R n Rx x

n

n R n Ry y

n

n R n R

b n

π δη

π δη

δ δ πη

+

+

+

Δ ⋅ + Δ ⋅= + ⋅

Δ ⋅ + Δ ⋅= + ⋅

Δ ⋅ − Δ ⋅= +

⋅ ⋅

TXk+1 Xk ök ù k ökC = C + J C J⋅ ⋅

( )( )

, 1 , 1

, 1 , 1

, 1

cos

sin

ls k r k ls k

ls k r k ls k

ls k k ls

x x

y y

δ

δ

δ δ ϑ

+ +

+ +

+

= + Δ ⋅

= + Δ ⋅

= +

Parametro Valore Nominale µ

Deviazione standard σ

RR 89.50 mm 0.14 mm

RL 89.50 mm 0.14 mm

L 89.50 mm 0.5 mm

b 89.50 mm 0.5 mm

-1 0 1 2 3 4 5 6 7-1

0

1

2

3

4

5

6

7

8

X (m)

Y (m)

POSA con INCERTEZZA

Equazione cinematica di ricorrenza:

Equazione cinematica di ricorrenza(PLS):

Covarianza della posa:

Propagazione incertezza:

[x,y,δ]δ

PLS

RR

ΔLS

b

θLS

αi,j

RL

kC =ω

Parametri incerti:

Propagazione incertezza odometrica

Page 29: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Mappatura

Page 30: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

A

A

A

p

S

S S S

W

AGV

ringhiera

scala

scala

Sono stati fatti compiere al Sono stati fatti compiere al veicolo 2 giri del laboratorio veicolo 2 giri del laboratorio per verificare i metodi per verificare i metodi sviluppatisviluppati

Page 31: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Sono stati fatti compiere al veicolo 2 giri del laboratorio per verificare i Sono stati fatti compiere al veicolo 2 giri del laboratorio per verificare i metodi sviluppati: filmato che mostra l’ambiente, il veicolo ed una metodi sviluppati: filmato che mostra l’ambiente, il veicolo ed una tecnica di determinazione del percorso mediante scansioni e gestione del tecnica di determinazione del percorso mediante scansioni e gestione del grafo delle profonditàgrafo delle profondità

Page 32: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion

Page 33: … se si impiega  anche la conoscenza del modello del sistema , si perviene al Filtro di Kalman

M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion