stima ed algoritmi di consensus distribuito: considerazioni su ikf e decomposizione del modello
DESCRIPTION
Stima ed algoritmi di consensus distribuito: considerazioni su IKF e decomposizione del modello. Facoltà di Ingegneria Corso di Laurea in Ingegneria dell'Automazione Corso di Progettazione di Sistemi di Controllo A.A. 2008/09 Docente: Luca Schenato Loris Antoniazzi Marco Bortolomiol. - PowerPoint PPT PresentationTRANSCRIPT
Stima ed algoritmi di consensus distribuito:
considerazioni su IKF e decomposizione del modello
Facoltà di Ingegneria
Corso di Laurea in Ingegneria dell'Automazione
Corso di Progettazione di Sistemi di Controllo A.A. 2008/09
Docente: Luca Schenato
Loris AntoniazziMarco Bortolomiol
Introduzione
• Premessa:
- Varietà di sistemi fisici ai quali si possono applicare tecniche di stima distribuita
Quindi:
- Focalizzazione su sistemi su vasta scala, scomponibili in sottosistemi che condividono tra loro un numero limitato di componenti di stato
• Reti di sensori (WSN)
- Stima distribuita
Introduzione
1. IKF con algoritmi di consensus• Il tentativo di replicare il filtro centralizzato attraverso il consensus non
fornisce la scelta migliore nel caso ci siano poche comunicazioni per ogni periodo di campionamento
• Per i sistemi ai quali è destinata la trattazione non è necessario che ogni nodo conosca l’intero stato del sistema, nel caso del consensus sono sufficienti un numero ridotto di comunicazioni
• Riferimenti: R. Carli, A. Chiuso, L. Schenato, S. Zampieri - Distributed kalman filtering based on consensus strategies.
2. Decomposizione del modello• Il modello globale del sistema viene decomposto in più modelli ridotti
• L’implementazione di filtri locali IKF sui modelli ridotti fornisce le stesse prestazioni del caso centralizzato
• Riferimenti: Usman A. Khan, José M. F. Moura - Model Distribution For Distributed Kalman Filters: A Graph Theoretic Approach.
Indice
• Filtri di Kalman in forma di informazione• Centralizzato
• Locali
• con algoritmi di consensus
• Filtri distribuiti su modello ridotto• Distribuzione del modello per filtraggio distribuito
• Calcolo della matrice di covarianza dell’errore
• Fusione dei vettori di informazione
• Applicazione alla conduzione del calore
• Simulazioni e commento dei risultati
Modello del sistema
• Modello del sistema:
• Ipotesi:
- Rumore di osservazione associato a ciascun sensore è scorrelato da quello dei rimanenti
Filtro di Kalman in forma di informazione
1
1
111|11|1
11
1
|11
|11|11|1 ˆˆ
iN
i
iTikkkk
ik
N
i
iTikkkkkk
ckk
CRCPP
yRCxPPx
QAAPP
xAxT
kkkk
ikk
ikk
||1
||1 ˆˆ
kkiTi
kkiTi
kkkkkk
ik
iTikk
ikkkkkk
ikk
PCRCPCCPPP
yRCPxPPx
|1
1
|1|1|11|1
1
1
1|1|11
|11|11|1 ˆˆ
• Filtro centralizzato
• Filtri locali distribuiti
- Predizione:
- Aggiornamento:
Filtro di Kalman in forma di informazione
N
i
ik
iTikkkkkk
ckk
ckk
ckk
yRCxPPx
xAx
11
1
|11
|11|11|1
||1
ˆˆ
ˆˆ
• Con algoritmi di consensus
N
ik
iTickk yRC
NNPxL
11
1
||1
1ˆ
- Centralizzato:
- Locali:
ik
iTiikk
ikk
ikk
ikk
yRCNPxLx
xAx
1
1
||11|1
||1
ˆˆ
ˆˆ
Filtro di Kalman in forma di informazione
- Inizializzazione
- Evoluzione
iLkk
ikk
ik
ikk
ikk
xAx
MyxLx
1,1|10,1|2
1|10,1|1
ˆˆ
ˆˆ
N
j
ik
jTj
ij
jk
jTjij
N
j
jkk
iLkk
ij
jlkkij
ilkk
yRCN
yRCQ
xN
x
xQx
11
1
)(1
1
10,1|11,1|1
)(,1|11,1|1
1
ˆ1
ˆ
ˆˆ
• Iterazione di consensus
Grafo del sistema e suddivisione in modelli ridotti
• Ogni cerchio rappresenta una componente dello stato x
• L’arco (i,j) є E (matrice delle adiacenze), cioè Ej,i = 1 se Aj,i ≠ 0,
• I sottosistemi locali, racchiusi negli ovali, comprendono tutti gli stati che un sensore può osservare direttamente o indirettamente
Definizione dei modelli ridotti a partire dal grafo del modello globale
• Le matrici dei sistema ridotti, associate a ciascun sensore l, si ricavano direttamente da quelle del sistema globale
• d(l) vettore delle componenti dello stato x coinvolte nella dinamica di x (l)
)1()1(11211
)1(
,212
,4
,3
24
13
)1(
2221
11)1(1
)()()()(
)()()()()()()(1
00
0
0
kk
kk
k
kk
lk
lk
llk
lk
llk
llk
llk
wxccy
ub
x
x
a
a
xaa
ax
wxCy
uBdDxAx
Calcolo della matrice locale di covarianza dell’errore di stima P(l)
• Le matrici locali di covarianza dell’errore di stima sui modelli ridotti P(l), sono funzione della matrice di covarianza globale P = Z-1 (Z matrice di informazione supposta L-banded)
• E’ possibile esprimere il passo di predizione di P(l) in funzione di sole variabili locali
TlllTlkkl
lkk BQBAPAP )()()(
|)(|1
T
TllTll
TllT
lll
lddkk
lT
ldxkk
l
ldxkk
lllkk
llkk
BQB
DPDDPA
DPAAPAP
)()()(
)(|
)()(|
)(
)(|
)()()(|
)()(|1
)()()()(
)()(
Derivazione dei filtri locali dal filtro centralizzato in forma di informazione
N
ll
TN
lklk
Tk
llTll
lll
Tlkl
kkkkkkkkkkkk
kkkkkkkk
ICRCIiyRCi
CRCIyRCi
xZzxZz
ZPZP
1
1
1,
1
1)(1,
|1|1|1|||
1|1|1
1||
,
,
ˆˆ,ˆˆ
,
Definizione della simbologia per il filtro centralizzato:
Varianza dell’errore di stima e relativa inversa
Conversione dallo stato x all’informazione z
Vettore e matrice di informazione distribuiti
Vettore e matrice di informazione globali
101|01||1|| ,ˆˆ,
PZizzIZZ kkkkkkkkk
• Aggiornamento
01|01|0|1||1|1
11|
1||1 ˆ,ˆˆ, xZzzAZZzBQBAAZPZ kkkkkkkk
TTkkkkkk
• Predizione
Derivazione dei filtri locali dal filtro centralizzato in forma di informazione
Fusione dei vettori di informazione locali ik(l):
• Il metodo prevede che ad ogni nodo, le componenti del vettore d’informazione ik
(l) vengano sommate a quelle relative alla medesima componente xj dello stato,
provenienti dagli altri sensori che la osservano e riescono a comunicare direttamente.• In modo analogo si determina If
(l) fusione delle matrici di informazione I(l)
)3(
,
)3(,
)2(,)3(
,)3(
,)2(
,
)2(,
)1(,
)2(,
)2(,)2(
,)1(
,
)1(,)1(
,
5
44
44
3
22
22
1 ,,xk
xkxkkf
xkxk
xk
xkxk
kfxkxk
xkkf i
iii
ii
i
ii
iii
ii
)()()()(
)()()()(
1
1
llTll
lk
lTllk
CRCI
yRCi
Vettore e matrice di informazione locale:
)3(
,
)3(,)3(
)2(,
)2(,
)2(,
)2()1(
,
)1(,)1(
5
4
4
3
2
2
1 ,,xk
xkk
xk
xk
xk
kxk
xkk i
ii
i
i
i
ii
ii
Esempio di fusione dei vettori di informazione
Derivazione dei filtri locali dal filtro centralizzato in forma di informazione
Implementazione dei filtri locali di ordine ridotto:
)(,
)(1|
)(|
)()(1|
)(| ˆˆ, l
kflkk
lkk
lf
lkk
lkk izzIZZ • Aggiornamento:
)(|
)()(|
)()(|1
ˆˆˆ lkk
llkk
llkk dDxAx • Predizione:
• Condizioni iniziali: da x0 , P0 si ricavano facilmente x0(l) , P0
(l). Da queste attraverso il lemma di inversione di matrice con inversa L-banded si trova Z0
(l) e quindi z0
(l)
Attraverso l’algoritmo per l’inversione di matrice DICI si calcola Pk|k = Zk|k-1
si passa poi alle variabili in x utilizzando)(
|)(
|)(
| ˆˆ lkk
lkk
lkk zPx
TTllTllTllT llllddkk
lT
ldxkk
lldxkk
lllkk
llkk BQBDPDDPADPAAPAP )()()()(
|)()(
|)()(
|)()()(
|)()(
|1
)()()()()()(
attraverso il lemma di inversione di matrice con inversa L-banded si trova Zk+1|k(l) e
quindi zk+1|k(l)
Applicazione: conduzione del calore
• Fenomeno descritto tramite equazione differenziale alle derivate parziali (PDE)
2
2
2
2
2
2
z
u
y
u
x
uk
t
u
• Approssimazione secondo il metodo delle differenze finite:
nj
nj
nj
nj
nj
nj
nj
nj uquuquuu
x
tkuu 212 11112
1
Applicazione: conduzione del calore
• La matrice di evoluzione dello stato è di tipo circolante
qqq
qqq
qqq
qqq
A
2100
2100
00
0021
0021
Ipotesi sulla distribuzione dei sensori
Al fine di semplificare l’implementazione del metodo basato sulla distribuzione del modello si sono assunte alcune ipotesi:
• Ogni sensore osserva lo stesso numero di componenti dello stato x
• Le componenti dello stato osservate da ogni sensore sono pesate a seconda della distanza dal sensore stesso
• Ogni componente dello stato è osservata da almeno un sensore ed al massimo da due
• Per la comunicazione tra i nodi sensore si è considerato un grafo non orientato con pesi di metropolis
Condizioni iniziali ed evoluzione
Ipotesi sulla condizione iniziale e l’evoluzione della temperatura sulla barretta:
• La distribuzione di temperatura iniziale è di tipo sinusoidale
• La propagazione del calore avviene in evoluzione libera
Confronto tra le diverse implementazioni dei filtri di Kalman distribuiti con consensus
Nel caso di limitate comunicazioni per intervallo di campionamento:
• Il vettore di informazione non converge a quello del caso centralizzato
N
j
jk
jTj
ij
jk
jjij yRC
NyRCQ
T
1
1
)(
1 1
• L’ errore di stima compensato nel passo di aggiornamento è quindi riferito ad un’informazione diversa da quella del caso centralizzato. Questo comporta una sorta di errore a regime nella stima.
Confronto tra le diverse implementazioni dei filtri di Kalman distribuiti con consensus
La convergenza alle prestazioni del filtro centralizzato richiede un elevato numero di comunicazioni
Nell’ esempio in considerazione, in cui lo stato di dimensione n=20 è osservato da N=10 sensori, ciascuno dei quali osserva 3 stati e comunica con i vicini secondo un grafo circolare non orientato, con pesi di metropolis, si è verificato essere necessarie ben 60 iterazioni di consensus per intervallo di campionamento. L’autovalore λ1, della matrice di consensus Q vale infatti λ1 = 0,91.
Confronto tra le diverse implementazioni dei filtri di Kalman distribuiti con consensus
La convergenza alle prestazioni del filtro centralizzato richiede un elevato numero di comunicazioni
La varianza dell’errore di stima è stata valutata per via empirica su 20 esperimenti indipendenti e confrontata con il valore ottimo teorico di Pk|k
Filtri di Kalman distribuiti con consensus a limitate comunicazioni
Nel caso di limitate comunicazioni per intervallo di campionamento:
• Il filtro deve tener conto solo della limitata informazione che riceve rispetto al filtro centralizzato
• Ovviamente non si otterranno sin dai primi passi prestazioni paragonabili al caso centralizzato
• Seguendo questa logica, il passo di aggiornamento della stima locale si può
esprimere come: ik
iikk
ikk
iikk
ikk yRCPNxCKNIx
T 1
|1||| ˆ
• Come Ki si può utilizzare la colonna i del guadagno di Kalman ottimo del filtro centralizzato, oppure il guadagno ottimo del filtro che si basa sul solo sensore i. Mentre N non è più l’intero numero dei sensori, ma solo il numero di quelli che comunicano in un passo. Si effettua poi una sola iterazione di consensus ottenendo:
1
11||
1
11|| ˆ
1ˆ
1ˆ
i
ij
jkk
jjk
jkk
i
ij
jkk
ikk xCyK
NNx
Nx
Filtri di Kalman distribuiti con consensus a limitate comunicazioni
Confronto tra le prestazioni delle diverse implementazioni
Considerazioni sulla stima distribuita basata sulla decomposizione del modello
Note riguardo l’implementazione effettivamente utilizzata:
• Espressione d’ aggiornamento di x(l) secondo un filtro di Kalman che si basa sulla sola osservazione y(l)
• Si noti che ciascun vettore di informazione locale ik(l)=C(l)T R(l) -1yk
(l) è moltiplicato per un differente fattore P~
k(l)
• Tornando in z appare quindi scorretto effettuare la fusione sui vettori direttamente sui vettori d’informazione ik
(l)
• Ciò che è stato effettivamente implementato per il passo di aggiornamento è:
)(1)()(1
)(1)()(1)(1|
)(1|
1)(1|
1)(1)()(1)(
1|)(
| ˆˆ lk
lTlllTllkk
lkk
lkk
llTllkk
lkk yRCCRCPxPCRCPx
)()(1|
)(| ˆˆ l
klkk
lkk izz
• Si ricavano quindi le stime xk|k(l)con le quali si effettua poi il consensus con i vicini
• Particolare attenzione va posta nella determinazione delle matrici di varianza dell’errore di stima da usare nei passi di predizione ed aggiornamento
Considerazioni sulla stima distribuita basata sulla decomposizione del modello
Confronto tra filtro distribuito e filtri locali di ordine ridotto:
• Come errore di stima per la varianza campionaria si è usato quello relativo alle sole componenti dello stato viste con maggior peso dai sensori
Conclusioni
• Si è verificato come in particolari casi sia possibile applicare tecniche di stima distribuita, per la stima anche solo di una porzione dello stato x, ottenendo a regime prestazioni confrontabili con quelle del filtro centralizzato.
• Un approccio basato su filtri distribuiti in forma di informazione che stimano l’intero stato può presentare dei forti limiti, legati in un caso alla necessità di effettuare un elevato numero di comunicazioni, oppure ad una poca prontezza nel seguire la dinamica nel caso si utilizzi un filtro a ridotte comunicazioni.
• Con i filtri locali basati sul modello ridotto è invece possibile ottenere una stima accurata sulle variabili locali utilizzando un ridotto numero di comunicazioni. Si può pensare inoltre, se necessario, che ciascun nodo comunichi le proprie stime locali agli altri, così da avere a ciascun nodo a disposizione la stima dell’intero stato x.
Fine presentazione
Grazie per l’attenzione