Kalmani filter

Sissejuhatus

Kalmani filter on lineaarne, ennustav ja korduv algoritm. Ta on võimeline optimaalselt ennustama reaal-ajas süsteemi seisundit. Kui eksisteerivad mittelineaarsused, siis tuleb mudel eelnevalt lineariseerida.
Korduvus Kalmani filtris tähendab seda, et see ei nõua eelnevate andmete salvestamist ja ümber arvutamist niipea, kui uus mõõtmine on tehtud. Kalmani filtri töös kasutatakse (Maybeck, 1979): (1) teadmisi süsteemi ja mõõtmiste dünaamikast; (2) statistilist iseloomustust süsteemi müra, mõõtmiste vigade ning dünaamilistes mudelites oleva ebakindluse kohta; (3) informatsiooni algsete tingimuste kohta.
Kalmani filter töötab tingimustes, kus süsteemi oleks võimalik kirjeldada lineaarse mudeli abil ning süsteemi ja mõõtmiste müra on iseloomustatav valge gaussi mürana. Valge müra tähendab, et müra väärtus ei ole ajaga korrelatsioonis ning tal on võrdne tugevus kõikidel sagedustel. Gaussi müra on seotud müra amplituudiga. Eeldatakse, et igal ajahetkel Gaussi müra amplituudi tõenäosusjaotus moodustab kella-kujulise kõvera iga üksiku punkti jaoks.

Laiendatud Kalmani filter

Kalmani filter eeldab lineaarsust, kus on lubatud ainult tehted maatriksitega. Mõõtmine on seisukorra lineaarne funktsioon, kusjuures järgmine seisund on eelmise lineaarne funktsioon. Lineaarne Kalmani filter ei ole võimeline määrama juurdekasvu, ta ei suuda käsitleda pöördeid ega projektsiooni. Et sellest üle saada, kasutatakse Laiendatud Kalmani filtrit.
Laiendatud Kalmani filtri kasutamine aitab vähendada lähendamise vigu, mitte-lineaarne süsteem lineariseeritakse rakendades selleks parimat seisundi vektori määrangut, mida kasutatakse igas lineariseerimise sammus.
Olgu protsess on juhitud mitte-lineaarsete võrrandite poolt:
 (6)
mõõtmisega
, (7)
kus juhuslikud muutujad  ja  iseloomustavad protsessi ja mõõtmiste müra. Funktsioon  seob seisundi eelmisest ajaetapist  praegusse ajaetappi , mis sisaldab parameetreid ükskõik millise liikuva funktsiooni  ja keskmise müra  jaoks. Mittelineaarne funktsioon  mõõtmiste võrrandis seob seisundi  mõõtmistega .
Praktikas võiks määrata ligikaudselt seisundi ja mõõtmise vektori, teadmata konkreetseid väärtusi müra  ja  jaoks:
 (8)
ja
,(9)
kus  on aposterioorse seisundi määrang (eelmisest ajaetapist ).
Protsessi mittelineaarse erinevuse ja mõõtmise suhte määramiseks võiks alustada võrranditest, mis lineariseerivad valemid (8) ja (9):
 (10)
ja
, (11)
kus
 ja  on tegelikud seisundi ja mõõtmiste vektorid; 
 ja  on ligikaudsed seisundi ja mõõtmise vektorid valemitest (8) ja (9);
 on aposterioorne määrang viimasel aja etapil ;
Juhuslikud muutujad  ja  tähistavad protsessi ja mõõtmiste müra;
 on Jakobi maatriks osatuletistest funktsioonist  suhtes:
; (12)
 on Jakobi maatriks osatuletistest funktsioonist  suhtes:
; (13)
 on Jakobi maatriks osatuletistest funktsioonist  suhtes:
; (14)
 on Jakobi maatriks osatuletistest funktsioonist  suhtes:
. (15)
Ennustatava vea jaoks võib kirjutada:
, (16)
mõõtmiste hälve:
. (17)
Kasutades (31) ja (32) võib kirjutada valemid vea protsessi jaoks järgnevalt:
 (18)
ja
, (19)
kus  ja  tähistavad juhuslikke muutujad, mille keskmine on null ja koodispersiooni maatriksid on vastavalt  ja , kus  ja  on eelnevalt defineeritud.
Nüüd saab kasutada tegelikku mõõtmise hälvet  valemis (17) ja teist (oletuslikku) Kalmani filtrit et määrata ennustamise viga . Seda määrangut  võiks kasutada selleks, et saada aposterioorset seisundi määrangut originaalsest mitte-lineaarsest protsessist:
. (20)
Juhuslikud muutujad valemites (18) ja (19) omavad ligikaudselt järgnevat tõenäosusjaotust:
, (21)
, (22)
. (23)
Arvestades niisuguste lähendustega ja lubades ennustatava väärtuse nulliks, kasutatakse Kalmani filtri valemit  määramiseks:
. (24)
Asendades (24) tagasi valemisse (20) ja kasutades valemit (17) võib näha, et tegelikult me ei vajagi teist (oletuslikku) Kalmani filtrit:
. (25)
Valemit (40) võib seejärel kasutada mõõtmiste uuendamiseks Laiendatud Kalmani filtris, kus   ja   tulevad valemitest (8) ja (9), ja Kalmani juurdekasv   saadakse valemist (3) koos sobiva asendusega mõõtmiste vea koovariansile.
Täielik Laiendatud Kalmani filtri valemite komplekt on järgmine:
aja uuenduse valemid
 (26)
 (27)
mõõtmiste uuenduse valemid
 (28)
, (29)
. (30)
Alaindeks  on seotud Jakobi maatriksitega ,  ja  et tugevdada märget, et nad on erinevad igal aja etapil (ning seepärast alati uuesti arvutatud).
Aja uuenduse valemid projekteerivad seisundi ja koodispersiooni määrangud eelmisest aja etapist  järgmisse etappi . Funktsioon  valemis (26) tuleb valemist (8),  ja  on protsessi Jakobi maatriksid ajahetkel , ja  on protsessi müra koodispersioon ajahetkel .
Mõõtmiste uuenduse valemid korrigeerivad seisundi ja koodispersiooni määranguid mõõtmisega . Funktsioon  valemis (29) tuleb valemist (9),  ja  on mõõtmiste Jakobi maatriksid aja etapil , ja  on mõõtmiste müra koodispersioon aja etapil .  alaindeks lubab selle muutumist koos iga uue mõõtmisega.
Laiendatud Kalmani filtri oluline omadus on see, et Jakobi maatriks  Kalmani juurdekasvu valemis  võimaldab korrektselt levida ainult asjakohasel mõõtmiste informatsiooni komponendil.

GPS (Global Position System) / INS (Inertial Navigation System) integreerimine

Niisugusel juhul annab Kalmani filter täiendatud üldise navigatsiooni tulemuse. Tuleb meeles piadada, et INS toetab virtuaalselt müratut väljundit, mis aeglaselt sumbub ajas. GPS omab minimaalset triivi, aga müra on INS mürast suurem. Kalmani filter kasutab statistilisi mudeleid mõlemast süsteemist, minimeerides optimaalselt  nende vigade allikaid. See ongi Kalmani filtri kasutamise eeliseks GPS ja INS kombineerimisel.
GPS vead võivad olla vastuvõtja kell, ionosfääri ja troposfääri viivitus, mitmeteelisus ja satelliitide efemeriidid ning kella vead. Inertsiaalsed ebatäpsused võivad sisaldada asukoha, kiiruse, orientatsiooni, güroskoobi, kiirendusmõõturi ja raskuskiirenduse vigu.

GPS-navigatsioon

Kalmani filter asub vastuvõtjas, oletuslikud vastuvõtja liikumise valemid asendavad inertsiaalset süsteemi. Liikumise võrrandid (tavaliselt pime-navigatsioon liikuva vastuvõtja jaoks) laiendavad valemit nii, et vastuvõtja trajektoor määrab vigade mudeli, mida on vaja Kalmani filtri jaoks. Siin on Kalmani filtri eeliseks (versus üksiku, fikseeritud vähimruutude lahendus) see, et need liikumise valemid siluvad GPS müra, saavutades nii vajaliku tulemuse.

NÄIDE 1.

Olgu meil teostatud mõõtmine, mida iseloomustavad mõõtmine  ja selle dispersioon , ning mida võib iseloomustada normaaljaotusfunktsiooniga , ning mille kohta võib märkida, et  ja . Kui me teostame sama mõõtmise teist korda, siis seda mõõtmist iseloomistavad mõõtmine  ja selle dispersioon . Küsimus on, kuidas määrata  ja  vastavalt meile teadaolevatele andmetele.
Kombineerides hinnanguid, saame
Kombineerides dispersioone, saame
Kombineeritud määrang on  ja , mis on reaalajas saadud kaalutud keskmine!

NÄIDE 2.

Küsimus, mida Kalmani filter lahendab on järgmine: Me teame, kuidas süsteem käitub vastavalt süsteemi võrrandile, ja meil on teada asukoha mõõtmised, siis kuidas on võimalik kõige paremini määrata süsteemi muutujaid?
Dünaamilistes süsteemides (süsteemid, mis muutuvad ajas) on muutujad väljendatud terminiga "state variables" ehk seisundi muutujad. Oletame et süsteemi muutujad, mis on väljendatud vektoriga , on seotud valemiga
kus  on juhuslik protsessi müra, allindeksid vektorite juures tähistavad ajasamme. Näiteks vektor  võiks koosneda asukohast  ja kiirusest . Niisugusel juhul oleks süsteemi võrrand järgmine (Simon, 2004):
,

kus  on juhuslik, ajast sõltuv pöörlemine ja  on ajasamm  ja  vahel. Nüüd oletame, et meil on võimalik mõõta asukoht . Siis meie mõõtmine ajahetkel  võib olla väljendatud , kus  on juhuslik mõõtmise müra.