Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Zanimljivo
  • Savremeni problemi nauke i obrazovanja. Korištenje Kalman filtera

Savremeni problemi nauke i obrazovanja. Korištenje Kalman filtera

Kalmanov filter

Kalmanov filter se široko koristi u inženjerskim i ekonometrijskim aplikacijama, od radarskih i vizuelnih sistema do procjena parametara makroekonomskog modela. Kalmanovo filtriranje je važan dio teorije upravljanja i igra veliku ulogu u kreiranju upravljačkih sistema. Zajedno sa linearno-kvadratičnim kontrolerom, Kalmanov filter omogućava rješavanje problema linearno-kvadratnog Gaussovog upravljanja. Kalmanov filter i linearno-kvadratni regulator - moguće rješenje za većinu fundamentalnih problema u teoriji upravljanja.

U većini aplikacija, broj parametara koji definiraju stanje objekta veći je od broja vidljivih parametara dostupnih za mjerenje. Uz pomoć objektnog modela za niz dostupnih mjerenja, Kalmanov filter vam omogućava da dobijete procjenu unutrašnjeg stanja.

Kalmanov filter je namenjen za rekurzivno potcenjivanje vektora stanja a priori poznatog dinamičkog sistema, odnosno za izračunavanje trenutnog stanja sistema potrebno je poznavati trenutno merenje, kao i prethodno stanje filtera. sama. Dakle, Kalmanov filter, kao i mnogi drugi rekurzivni filteri, implementiran je u vremenu, a ne u frekvencijskoj reprezentaciji.

Jasan primjer mogućnosti filtera je dobijanje tačnih, kontinuirano ažuriranih procjena položaja i brzine objekta na osnovu rezultata vremenske serije netačnih mjerenja njegove lokacije. Na primjer, u radaru je zadatak pratiti cilj, odrediti njegovu lokaciju, brzinu i ubrzanje, dok rezultati mjerenja dolaze postepeno i vrlo su bučni. Kalmanov filter koristi model vjerovatnoće ciljne dinamike koji specificira tip objekta koji će se vjerovatno kretati, što smanjuje utjecaj buke i daje dobre procjene položaja objekta u sadašnjem, budućem ili prošlom trenutku u vremenu.

Uvod

Kalmanov filter radi sa konceptom vektora stanja sistema (skup parametara koji opisuju stanje sistema u nekom trenutku) i njegovim statističkim opisom. U opštem slučaju, dinamika nekog vektora stanja opisuje se gustinama verovatnoće distribucije njegovih komponenti u svakom trenutku vremena. Ukoliko postoji određeni matematički model posmatranja sistema, kao i model apriorne promene parametara vektora stanja (naime, kao proces Markovljevog formiranja), moguće je napisati jednačinu za a posteriorna gustina vjerovatnoće vektora stanja u bilo kojem trenutku. Ova diferencijalna jednačina se zove Stratonovičeva jednačina. Stratonovičeva jednačina u opštem obliku nije riješena. Analitičko rješenje se može dobiti samo u slučaju brojnih ograničenja (pretpostavki):

  • Gaussova apriorna i aposteriorna gustoća vjerovatnoće vektora stanja u bilo kojem trenutku (uključujući početnu)
  • Gausov šum oblikovanja
  • Gausovnost šuma posmatranja
  • bjelina posmatranja šuma
  • linearnost modela posmatranja
  • linearnost modela procesa formiranja (koji, podsjećamo, mora biti Markovljev proces)

Klasični Kalmanov filter je jednačina za izračunavanje prvog i drugog momenta posteriorne gustine vjerovatnoće (u smislu vektora matematičkih očekivanja i matrice varijansi, uključujući i međusobne) pod datim ograničenjima. Pošto, za normalnu gustinu verovatnoće, očekivanje i matrica varijanse u potpunosti definišu gustinu verovatnoće, možemo reći da Kalmanov filter izračunava posteriornu gustinu verovatnoće vektora stanja u svakom trenutku u vremenu. To znači da u potpunosti opisuje vektor stanja kao slučajnu vektorsku veličinu.

Izračunate vrijednosti matematičkih očekivanja u ovom slučaju su optimalne procjene prema kriteriju srednje kvadratne greške, što uzrokuje njegovu široku primjenu.

Postoji nekoliko varijanti Kalmanovog filtera, koje se razlikuju po aproksimacijama i trikovima koje je potrebno primijeniti da bi se filter sveo na opisani oblik i smanjila njegova dimenzija:

  • Prošireni Kalmanov filter (EKF, Prošireni Kalmanov filter). Pomirenje modela nelinearnog posmatranja i formativnog procesa linearizacijom putem proširenja Taylorovog niza.
  • Kalman filter bez mirisa (UKF). Koristi se u problemima u kojima jednostavna linearizacija dovodi do uništenja korisnih veza između komponenti vektora stanja. U ovom slučaju, "linearizacija" se zasniva na nemirisanoj -transformaciji.
  • Filter ansambla Kalman (EnKF). Koristi se za smanjenje dimenzije problema.
  • Moguće su varijante sa nelinearnim dodatnim filterom, koji omogućavaju svođenje ne-Gaussovih opažanja na normalna.
  • Postoje opcije sa filterom za "izbjeljivanje" koji vam omogućava da radite sa "obojenim" šumom
  • itd.

Korišteni model dinamičkog sistema

Kalmanovi filteri su bazirani na vremenski uzorkovanim linearnim dinamičkim sistemima. Takvi sistemi su modelirani Markovljevim lancima koristeći linearne operatore i termine sa normalnom distribucijom. Stanje sistema opisuje se vektorom konačne dimenzije - vektorom stanja. U svakom vremenskom koraku, linearni operator djeluje na vektor stanja i prenosi ga na drugi vektor stanja (deterministička promjena stanja), neki normalni vektor šuma (slučajni faktori) i, u općenitom slučaju, upravljački vektor koji simulira utjecaj dodat je kontrolni sistem. Kalmanov filter se može posmatrati kao analog skrivenih Markovljevih modela, s tom razlikom što su varijable koje opisuju stanje sistema elementi beskonačnog skupa realnih brojeva (za razliku od konačnog skupa prostora stanja u skrivenim Markovljevim modelima ). Osim toga, skriveni Markovljevi modeli mogu koristiti proizvoljne distribucije za sljedeće vrijednosti vektora stanja, za razliku od Kalmanovog filtera, koji koristi normalno raspoređeni model šuma. Postoji stroga veza između jednačina Kalmanovog filtera i skrivenog Markovljevog modela. Pregled ovih i drugih modela dali su Roweis i Chahramani (1999).

Prilikom korištenja Kalmanovog filtera za dobivanje procjena vektora stanja procesa iz serije šumnih mjerenja, potrebno je model ovog procesa prikazati u skladu sa strukturom filtera – u obliku matrične jednačine određenog tipa. Za svaki ritam k rada filtera, potrebno je odrediti matrice u skladu sa opisom ispod: evolucija procesa F k; matrica posmatranja H k; matrica kovarijanse procesa Q k; matrica kovarijanse mjerenja šuma R k; u prisustvu kontrolnih radnji - matrica njihovih koeficijenata B k .

Ilustracija rada filtera. Matrice su označene kvadratima. Elipse označavaju matrice multivarijatnih normalnih distribucija (uključujući srednje vrijednosti i kovarijance). Vektori su ostavljeni nezaokruženi. U najjednostavnijem slučaju, neke matrice se ne mijenjaju u vremenu (ne ovise o indeksu k), ali ih filter i dalje koristi u svakom ciklusu rada.

Model sistema/procesa implicira da je pravo stanje u ovom trenutku k dobijeno iz stvarnog stanja u ovom trenutku k−1 prema jednačini:

,
  • F k- matrica evolucije procesa/sistema koja utiče na vektor x k−1 (vektor stanja u ovom trenutku k−1 );
  • B k- upravljačka matrica, koja se primjenjuje na vektor upravljačkih radnji u k ;
  • w k- normalan slučajni proces sa nultim matematičkim očekivanjem i matricom kovarijanse Q k, koji opisuje slučajnu prirodu evolucije sistema/procesa:

U momentu k posmatranje (mjerenje) z k vektor pravog stanja x k, koji su međusobno povezani jednačinom:

gdje H k- matrica mjerenja koja povezuje pravi vektor stanja i vektor izvršenih mjerenja, v k- bijeli Gaussov mjerni šum sa nultom srednjom i matricom kovarijanse R k :

Početno stanje i vektori slučajnih procesa u svakom ciklusu ( x 0 , w 1 , …, w k , v 1 , …, v k) smatraju se nezavisnim.

Mnogi realni dinamički sistemi ne mogu se precizno opisati ovim modelom. U praksi, dinamika koja nije uzeta u obzir u modelu može ozbiljno pokvariti performanse filtera, posebno kada se radi sa nepoznatim stohastičkim signalom na ulazu. Štaviše, dinamika koja nije uzeta u obzir u modelu može učiniti filter nestabilnim. S druge strane, nezavisni bijeli šum kao signal neće uzrokovati divergaciju algoritma. Zadatak odvajanja mjerne buke od dinamike koja nije uzeta u obzir u modelu je težak, rješava se korištenjem teorije robusnih upravljačkih sistema.

Kalmanov filter

Kalmanov filter je vrsta rekurzivnog filtera. Za izračunavanje procjene stanja sistema za tekući ciklus rada potrebna mu je procjena stanja (u obliku procjene stanja sistema i procjene greške u određivanju ovog stanja) na prethodni ciklus rada i mjerenja u tekućem ciklusu. Ovo svojstvo ga razlikuje od paketnih filtera, koji zahtevaju poznavanje istorije merenja i/ili evaluacija u trenutnom ciklusu rada. Nadalje, pod pisanjem podrazumijevamo procjenu pravog vektora u ovom trenutku n uzimajući u obzir mjere od trenutka početka radova pa do trenutka m inkluzivno.

Stanje filtera postavljaju dvije varijable:

Iteracije Kalmanovog filtera podijeljene su u dvije faze: ekstrapolacija i korekcija. Tokom ekstrapolacije, filter prima preliminarnu procjenu stanja sistema (u literaturi na ruskom jeziku često se označava, gdje znači "ekstrapolacija", a k- broj ciklusa u kojem je primljen) za tekući korak prema konačnoj procjeni stanja iz prethodnog koraka (ili preliminarnu procjenu za sljedeći ciklus prema konačnoj ocjeni trenutnog koraka, ovisno o tumačenje). Ova preliminarna procjena se također naziva procjena prethodnog stanja, pošto se zapažanja odgovarajućeg koraka ne koriste da bi se dobila. U fazi korekcije, apriorna ekstrapolacija je dopunjena relevantnim trenutnim mjerenjima kako bi se ispravila procjena. Prilagođena procjena se također naziva procjena posteriornog stanja ili jednostavno procjena vektora stanja. Obično se ove dvije faze izmjenjuju: ekstrapolacija se vrši na osnovu rezultata korekcije do sljedećeg promatranja, a korekcija se izvodi zajedno sa zapažanjima dostupnim u sljedećem koraku, itd. Međutim, moguć je i drugi razvoj događaja, ako za neke ako se posmatranje pokazalo nedostupnim, tada se faza korekcije može preskočiti i ekstrapolirati iz neprilagođene procjene (apriorna ekstrapolacija). Slično, ako su nezavisna mjerenja dostupna samo u određenim ciklusima rada, korekcije su još uvijek moguće (obično korištenjem druge matrice zapažanja H k ).

korak ekstrapolacije

Faza korekcije

Primljeno odstupanje po koraku k zapažanja iz zapažanja koja se očekuju pri ekstrapolaciji:
Matrica kovarijanse za vektor devijacije (vektor greške):
Kalman-optimalna matrica pojačanja formirana na osnovu matrica kovarijanse raspoložive ekstrapolacije vektora stanja i dobijenih mjerenja (preko matrice kovarijanse vektora devijacije):
Korekcija prethodno dobijene ekstrapolacije vektora stanja - dobijanje procene vektora stanja sistema:
Izračunavanje matrice kovarijanse za procjenu vektora stanja sistema:

Izraz za matricu kovarijanse za procjenu vektora stanja sistema vrijedi samo kada se koristi reduciran optimalni vektor koeficijenata. Općenito, ovaj izraz ima složeniji oblik.

Invarijante

Ako je model apsolutno tačan i početni uvjeti su i apsolutno točno specificirani, tada se sljedeće vrijednosti čuvaju nakon bilo kojeg broja iteracija operacije filtera - one su invarijante:

Matematička očekivanja procjena i ekstrapolacija vektora stanja sistema, matrice grešaka su nulti vektori:

gdje je matematičko očekivanje.

Izračunate kovarijansne matrice ekstrapolacija, procjene stanja sistema i vektor greške poklapaju se sa pravim matricama kovarijanse:

Primjer izgradnje filtera

Zamislite kolica koja stoje na beskonačno dugim šinama u odsustvu trenja. U početku leži u položaju 0, ali pod utjecajem slučajnih faktora na njega djeluje nasumično ubrzanje. Mjerimo poziciju kolica svaki ∆ t sekundi, ali mjerenja nisu tačna. Želimo dobiti procjenu položaja kolica i njegove brzine. Primijenimo Kalmanov filter na ovaj problem i odredimo sve potrebne matrice.

U ovom problemu, matrice F , H , R i Q ne zavise od vremena, izostavljamo njihove indekse. Osim toga, mi ne kontrolišemo kolica, dakle upravljačku matricu B nedostaje.

Koordinatu i brzinu kolica opisuje vektor u prostoru linearnog stanja

gdje je brzina (prvi izvod koordinate u odnosu na vrijeme).

Pretpostavićemo da između k−1 )th i k-ti ciklusi kolica se kreću konstantnim ubrzanjem a k, distribuiran prema normalnom zakonu sa nultim matematičkim očekivanjem i standardnom devijacijom σ a. Prema Njutnovoj mehanici, može se pisati

.

Kovarijansna matrica slučajnih utjecaja

(σ a- skalar).

U svakom ciklusu rada mjeri se položaj kolica. Pretpostavimo da je greška mjerenja v k ima normalnu distribuciju sa nultom srednjom vrijednosti i standardnom devijacijom σz. Onda

a matrica kovarijansne buke posmatranja ima oblik

.

Početni položaj kolica je tačno poznat

, .

Ako su pozicija i brzina kolica poznati samo približno, tada se matrica disperzije može inicijalizirati s dovoljno velikim brojem L, tako da broj premašuje disperziju mjerenja koordinate

, .

U tom slučaju, u prvim ciklusima rada, filter će koristiti rezultate mjerenja s većom težinom od dostupnih a priori informacija.

Izvođenje formula

Matrica kovarijansne procjene vektora stanja

Po definiciji matrice kovarijanse P k|k

zamjenjujemo izraz za procjenu vektora stanja

i napišite izraz za vektor greške

i vektor mjerenja

izvaditi vektor greške mjerenja v k

budući da je vektor greške mjerenja v k nije u korelaciji sa drugim argumentima, dobijamo izraz

u skladu sa svojstvima kovarijanse vektora, ovaj izraz se transformiše u oblik

zamjenjujući izraz za matricu kovarijanse ekstrapolacije vektora stanja sa P k|k−1 i određivanje kovarijansne matrice opservacijskog šuma na R k, dobijamo

Rezultirajući izraz vrijedi za proizvoljnu matricu koeficijenata, ali ako je Kalmanova optimalna matrica koeficijenata, onda se ovaj izraz za matricu kovarijanse može pojednostaviti.

Matrica optimalnog pojačanja

Kalmanov filter minimizira zbir kvadrata očekivanih grešaka u procjeni vektora stanja.

Vektor greške procjene vektora stanja

Zadatak je da se minimizira zbir matematičkih očekivanja kvadrata komponenti datog vektora

,

što je ekvivalentno minimiziranju traga matrice kovarijanse procjene vektora stanja P k|k. Zamijenimo dostupne izraze u izraz za matricu kovarijanse procjene vektora stanja i dopunimo ga do punog kvadrata:

Imajte na umu da je posljednji član matrica kovarijanse neke slučajne varijable, tako da njen trag nije negativan. Minimalni trag se postiže kada se zadnji član postavi na nulu:

Tvrdi se da je ova matrica željena i da, kada se koristi kao matrica koeficijenata u Kalmanovom filteru, minimizira zbir srednjih kvadrata grešaka procjene vektora stanja.

Kovarijansna matrica procjene vektora stanja kada se koristi optimalna matrica koeficijenata

Izraz za matricu kovarijanse procjene vektora stanja P k|k kada se koristi optimalna matrica koeficijenata će poprimiti oblik:

Ova formula je računski jednostavnija i stoga se gotovo uvijek koristi u praksi, ali je ispravna samo kada se koristi optimalna matrica koeficijenata. Ako, zbog niske računske točnosti, postoji problem s računskom stabilnošću, ili se posebno koristi matrica neoptimalnih koeficijenata, treba koristiti opću formulu za matricu kovarijanse procjene vektora stanja.

Kritika Kalmanovog filtera

Trenutno se glavna kritika Kalmanovog filtera odnosi na sljedeće oblasti

  • tutorial

Na internetu, uključujući Habré, možete pronaći mnogo informacija o Kalmanovom filteru. Ali teško je pronaći lako probavljivu derivaciju samih formula. Bez zaključka, sva ova znanost se doživljava kao neka vrsta šamanizma, formule izgledaju kao bezličan skup simbola, a što je najvažnije, mnoge jednostavne izjave koje leže na površini teorije su nerazumljive. Svrha ovog članka bit će govoriti o ovom filteru na najpristupačnijem jeziku.
Kalmanov filter je moćan alat za filtriranje podataka. Njegov glavni princip je da se prilikom filtriranja koriste informacije o fizici samog fenomena. Recimo, ako filtrirate podatke sa brzinomjera automobila, onda vam inercija automobila daje za pravo da percipirate prebrze skokove brzine kao grešku u mjerenju. Kalmanov filter je zanimljiv jer je, na neki način, najbolji filter. U nastavku ćemo detaljnije razgovarati o tome šta tačno znače riječi „najbolji“. Na kraju članka ću pokazati da se u mnogim slučajevima formule mogu pojednostaviti do te mjere da od njih ne ostane gotovo ništa.

Likbez

Prije nego što se upoznamo s Kalmanovim filterom, predlažem da se prisjetimo nekih jednostavnih definicija i činjenica iz teorije vjerojatnosti.

Slučajna vrijednost

Kada kažu da je data slučajna varijabla, oni misle da ova varijabla može poprimiti slučajne vrijednosti. Poprimi različite vrijednosti s različitim vjerovatnoćama. Kada bacite, recimo, kockicu, ispašće diskretni skup vrijednosti: . Kada je u pitanju, na primjer, brzina lutajuće čestice, onda se, očito, mora nositi s kontinuiranim skupom vrijednosti. Označit ćemo "ispuštene" vrijednosti slučajne varijable kroz, ali ponekad ćemo koristiti isto slovo koje označava slučajnu varijablu:
U slučaju kontinuiranog skupa vrijednosti, slučajnu varijablu karakterizira gustina vjerovatnoće , koja nam diktira da je vjerovatnoća da slučajna varijabla "ispadne" u malom susjedstvu tačke dužine jednaka . Kao što vidimo sa slike, ova vjerovatnoća je jednaka površini zasjenjenog pravokutnika ispod grafikona:

Vrlo često u životu, slučajne varijable se distribuiraju prema Gausu, kada je gustina vjerovatnoće .

Vidimo da funkcija ima oblik zvona sa središtem u točki i s karakterističnom širinom reda .
Budući da je riječ o Gausovoj raspodjeli, bio bi grijeh ne spomenuti odakle je došla. Kao što su brojevi čvrsto utemeljeni u matematici i pojavljuju se na najneočekivanijim mjestima, tako je i Gausova raspodjela duboko ukorijenila u teoriji vjerovatnoće. Jedna izvanredna izjava koja djelimično objašnjava Gausovu sveprisutnost je sljedeća:
Neka postoji slučajna varijabla koja ima proizvoljnu distribuciju (zapravo, postoje neka ograničenja za ovu proizvoljnost, ali ona nisu nimalo kruta). Provodimo eksperimente i izračunajmo zbir "ispuštenih" vrijednosti slučajne varijable. Hajde da uradimo mnogo ovih eksperimenata. Jasno je da ćemo svaki put dobiti različitu vrijednost sume. Drugim riječima, ovaj zbir je sam po sebi slučajna varijabla sa svojim određenim zakonom raspodjele. Ispostavilo se da za dovoljno velike, zakon raspodjele ove sume teži Gausovoj raspodjeli (usput, karakteristična širina "zvona" raste kao ). Pročitajte više na wikipediji: centralna granična teorema. U životu vrlo često postoje veličine koje se sastoje od velikog broja jednako raspoređenih nezavisnih slučajnih varijabli, pa su stoga raspoređene po Gaussu.

Zlo

Prosječna vrijednost slučajne varijable je ono što dobijemo u granici ako provedemo mnogo eksperimenata i izračunamo aritmetičku sredinu ispuštenih vrijednosti. Srednja vrijednost se označava na različite načine: matematičari je vole označavati kroz (očekivanje ili srednja vrijednost), a strani matematičari kroz (očekivanje). Fizika isto kroz ili. Na strani način ćemo označiti:.
Na primjer, za Gaussovu distribuciju , srednja vrijednost je .

Disperzija

U slučaju Gausove distribucije, možemo jasno vidjeti da slučajna varijabla preferira da ispadne u nekom susjedstvu svoje srednje vrijednosti.

Još jednom se divite Gausovoj raspodjeli



Kao što se može vidjeti iz grafikona, karakteristični raspršivanje vrijednosti reda je . Kako možemo procijeniti ovu širinu vrijednosti za proizvoljnu slučajnu varijablu ako znamo njenu distribuciju. Možete nacrtati graf njegove gustine vjerovatnoće i okom procijeniti karakterističnu širinu. Ali mi radije idemo algebarskim putem. Možete pronaći prosječnu dužinu (modulus) odstupanja od prosječne vrijednosti: . Ova vrijednost će biti dobra procjena karakterističnog širenja vrijednosti. Ali vi i ja vrlo dobro znamo da je korištenje modula u formulama glavobolja, tako da se ova formula rijetko koristi za procjenu karakterističnog širenja.
Lakši način (jednostavan u smislu proračuna) je pronaći . Ova veličina se naziva varijansa i često se naziva . Korijen varijanse je dobra procjena širenja slučajne varijable. Korijen varijanse se također naziva standardnom devijacijom.
Na primjer, za Gaussovu distribuciju, možemo pretpostaviti da je gore definirana varijansa točno jednaka , što znači da je standardna devijacija jednaka , što se vrlo dobro slaže s našom geometrijskom intuicijom.
U stvari, ovdje se krije mala prevara. Činjenica je da se u definiciji Gausove raspodjele ispod eksponenta nalazi izraz . Ovo dva u nazivniku je upravo zato da bi standardna devijacija bila jednaka koeficijentu. Odnosno, sama formula Gaussove distribucije je napisana u obliku posebno izoštrenom za činjenicu da ćemo uzeti u obzir njegovu standardnu ​​devijaciju.

Nezavisne slučajne varijable

Slučajne varijable mogu ili ne moraju biti zavisne. Zamislite da bacite iglu na ravan i zapišete koordinate oba kraja iste. Ove dvije koordinate su zavisne, povezane su uvjetom da je razmak između njih uvijek jednak dužini igle, iako su slučajne varijable.
Slučajne varijable su nezavisne ako je ishod prve potpuno nezavisan od ishoda druge. Ako su slučajne varijable i nezavisne, tada je prosječna vrijednost njihovog proizvoda jednaka proizvodu njihovih prosječnih vrijednosti:

Dokaz

Na primjer, imati plave oči i završiti školu sa zlatnom medaljom su nezavisne slučajne varijable. Ako su plavooki, recimo osvajači zlatne medalje , onda plavooki osvajači medalja Ovaj primjer nam govori da ako su slučajne varijable i date njihovim gustoćama vjerovatnoće i , tada se nezavisnost ovih veličina izražava u činjenici da je gustina vjerovatnoće (prva ispala vrijednost, a druga ) se nalazi po formuli:

Iz ovoga odmah proizilazi da:

Kao što vidite, dokaz se provodi za slučajne varijable koje imaju kontinuirani spektar vrijednosti i date su njihovom gustoćom vjerovatnoće. U drugim slučajevima, ideja dokaza je slična.

Kalmanov filter

Formulacija problema

Označimo vrijednošću koju ćemo mjeriti, a zatim filtrirati. To može biti koordinata, brzina, ubrzanje, vlažnost, stepen smrada, temperatura, pritisak, itd.
Počnimo s jednostavnim primjerom, koji će nas dovesti do formulacije općeg problema. Zamislite da imamo radio kontrolisani automobil koji može da ide samo napred i nazad. Mi smo, znajući težinu automobila, oblik, površinu puta itd., izračunali kako upravljački džojstik utiče na brzinu kretanja.

Tada će se koordinate mašine promijeniti u skladu sa zakonom:

U stvarnom životu ne možemo uzeti u obzir u našim proračunima male smetnje koje djeluju na automobil (vjetar, neravnine, kamenčići na putu), pa će se stvarna brzina automobila razlikovati od izračunate. Na desnu stranu napisane jednačine dodaje se slučajna varijabla:

Na automobilu imamo ugrađen GPS senzor koji pokušava da izmeri pravu koordinatu automobila, a naravno ne može da je tačno izmeri, već meri sa greškom, koja je takođe slučajna varijabla. Kao rezultat, dobijamo pogrešne podatke od senzora:

Problem je u tome što, znajući pogrešna očitanja senzora, pronaći dobru aproksimaciju za prave koordinate mašine. Ovu dobru aproksimaciju ćemo označiti kao .
U formulaciji općeg problema za koordinatu može biti odgovorno bilo šta (temperatura, vlažnost...), a termin odgovoran za upravljanje sistemom izvana označićemo kao (u primjeru sa mašinom). Jednadžbe za očitavanje koordinata i senzora će izgledati ovako:

(1)

Hajde da detaljno razgovaramo o onome što znamo:

Korisno je napomenuti da zadatak filtriranja nije zadatak izglađivanja. Ne želimo da izgladimo podatke sa senzora, već da dobijemo vrednost najbližu realnoj koordinati.

Kalmanov algoritam

Rezonovaćemo indukcijom. Zamislite da smo u -tom koraku već pronašli filtriranu vrijednost sa senzora, koja dobro aproksimira pravu koordinatu sistema. Ne zaboravite da znamo jednačinu koja kontrolira promjenu nepoznate koordinate:

Stoga, a da još ne dobijemo vrijednost od senzora, možemo pretpostaviti da se u koraku sistem razvija prema ovom zakonu i senzor će pokazati nešto blizu . Nažalost, ništa preciznije još ne možemo reći. S druge strane, na koraku ćemo imati neprecizno očitavanje senzora na našim rukama.
Kalmanova ideja je da, da bismo dobili najbolju aproksimaciju pravoj koordinati, moramo izabrati sredinu između netačnog očitavanja senzora i - našeg predviđanja onoga što smo očekivali da će vidjeti. Očitavanju senzora dat ćemo težinu i predviđena vrijednost će imati težinu:

Koeficijent se naziva Kalmanov koeficijent. Zavisi od koraka iteracije, pa bi bilo ispravnije napisati , ali za sada, kako ne bismo zatrpali formule za izračunavanje, izostavićemo njegov indeks.
Kalmanov koeficijent moramo odabrati tako da dobijena optimalna vrijednost koordinate bude najbliža pravoj koordinati. Na primjer, ako znamo da je naš senzor vrlo precizan, tada ćemo više vjerovati njegovom očitanju i dati vrijednosti veću težinu (blizu jedan). Ako senzor, naprotiv, nije nimalo tačan, onda ćemo se više fokusirati na teoretski predviđenu vrijednost .
Općenito, da biste pronašli tačnu vrijednost Kalmanovog koeficijenta, jednostavno je potrebno minimizirati grešku:

Koristimo jednadžbe (1) (one sa plavom pozadinom u okviru) da prepišemo izraz za grešku:

Dokaz


Sada je vrijeme da razgovaramo o tome šta znači izraz minimiziranje greške? Na kraju krajeva, greška je, kao što vidimo, sama po sebi slučajna varijabla i svaki put poprima različite vrijednosti. Zaista ne postoji jedinstveni pristup za definisanje šta znači da greška bude minimalna. Kao i u slučaju varijanse slučajne varijable, kada smo pokušali da procenimo karakterističnu širinu njenog raspršenja, tako ćemo i ovde izabrati najjednostavniji kriterijum za proračune. Minimizirat ćemo srednju vrijednost iz kvadratne greške:

Napišimo zadnji izraz:

ključ za dokaz

Iz činjenice da su sve slučajne varijable uključene u izraz za nezavisne i da su prosječne vrijednosti grešaka senzora i modela jednake nuli: , slijedi da su svi "ukršteni" članovi jednaki nuli:
.
Osim toga, formule za varijanse izgledaju mnogo jednostavnije: i (jer )

Ovaj izraz poprima minimalnu vrijednost kada (postavi derivaciju na nulu)

Ovdje već pišemo izraz za Kalmanov koeficijent sa indeksom koraka, pa naglašavamo da on zavisi od koraka iteracije.
Zamijenite u izrazu za srednju kvadratnu grešku vrijednost Kalmanovog koeficijenta koji je minimizira. Dobijamo:

Naš zadatak je riješen. Dobili smo iterativnu formulu za izračunavanje Kalmanovog koeficijenta.

Sve formule na jednom mestu


Primjer

Reklamna slika na početku članka filtrirala je podatke iz fiktivnog GPS senzora instaliranog na fiktivnom automobilu koji putuje jednoliko s poznatim fiktivnim ubrzanjem.

Pogledajte ponovo rezultat filtera


Matlab kod

očisti sve; N=100% broj uzoraka a=0,1% ubrzanje sigmaPsi=1 sigmaEta=50; k=1:N x=k x(1)=0 z(1)=x(1)+normrnd(0,sigmaEta); za t=1:(N-1) x(t+1)=x(t)+a*t+normrnd(0,sigmaPsi); z(t+1)=x(t+1)+normrnd(0,sigmaEta); kraj; %kalman filter xOpt(1)=z(1); eOpt(1)=sigmaEta; % eOpt(t) je kvadratni korijen disperzije greške (varijanse). To "nije slučajna varijabla. za t=1:(N-1) eOpt(t+1)=sqrt((sigmaEta^2)*(eOpt(t)^2+sigmaPsi^2)/(sigmaEta^2) +eOpt(t)^2+sigmaPsi^2)) K(t+1)=(eOpt(t+1))^2/sigmaEta^2 xOpt(t+1)=(xOpt(t)+a*t )*(1-K(t+1))+K(t+1)*z(t+1) kraj;grafikon(k,xOpt,k,z,k,x)

Analiza

Ako pratimo kako se Kalmanov koeficijent mijenja s korakom iteracije, onda možemo pokazati da se uvijek stabilizuje na određenu vrijednost. Na primjer, kada se RMS greške senzora i modela odnose jedna na drugu kao deset prema jedan, tada dijagram Kalmanovog koeficijenta u zavisnosti od koraka iteracije izgleda ovako:

U sljedećem primjeru raspravljat ćemo o tome kako nam to može znatno olakšati život.

Drugi primjer

U praksi se često dešava da ne znamo baš ništa o fizičkom modelu onoga što filtriramo. Na primjer, želite da filtrirate očitanja sa svog omiljenog akcelerometra. Ne znate unaprijed po kojem zakonu namjeravate okrenuti akcelerometar. Najviše informacija koje možete prikupiti je varijanca greške senzora. U tako teškoj situaciji, svo nepoznavanje modela kretanja može se pretvoriti u slučajnu varijablu:

Ali, iskreno, takav sistem više ne zadovoljava uslove koje smo nametnuli na slučajnu varijablu, jer je sada tu skrivena sva nama nepoznata fizika kretanja, pa stoga ne možemo reći da su u različitim vremenima greške modela su nezavisni jedan od drugog i da su njihove srednje vrijednosti nula. U ovom slučaju, uglavnom, teorija Kalmanovog filtera nije primjenjiva. Ali, nećemo obraćati pažnju na ovu činjenicu, već glupo primijeniti sav kolos formula, skupljajući koeficijente i na oko, tako da filtrirani podaci izgledaju lijepo.
Ali postoji još jedan, mnogo lakši put. Kao što smo vidjeli gore, kako se broj koraka povećava, Kalmanov koeficijent se uvijek stabilizuje na vrijednost . Stoga, umjesto odabira koeficijenata i pronalaženja Kalmanovog koeficijenta korištenjem složenih formula, možemo smatrati da je ovaj koeficijent uvijek konstanta i odabrati samo ovu konstantu. Ova pretpostavka neće pokvariti gotovo ništa. Prvo, mi već nelegalno koristimo Kalmanovu teoriju, a drugo, Kalmanov koeficijent se brzo stabilizuje na konstantu. Na kraju će sve biti vrlo jednostavno. Uopće nam ne trebaju nikakve formule iz Kalmanove teorije, samo trebamo odabrati prihvatljivu vrijednost i ubaciti je u iterativnu formulu:

Sljedeći grafikon prikazuje podatke iz fiktivnog senzora filtrirane na dva različita načina. Pod uslovom da ne znamo ništa o fizici fenomena. Prvi način je pošten, sa svim formulama iz Kalmanove teorije. A drugi je pojednostavljen, bez formula.

Kao što vidimo, metode su gotovo iste. Mala razlika se uočava samo na početku, kada se Kalmanov koeficijent još nije stabilizovao.

Diskusija

Kao što smo vidjeli, glavna ideja Kalmanovog filtera je pronaći koeficijent takav da filtrirana vrijednost

U prosjeku bi se najmanje razlikovala od stvarne vrijednosti koordinate . Vidimo da je filtrirana vrijednost linearna funkcija očitavanja senzora i prethodne filtrirane vrijednosti. A prethodna filtrirana vrijednost je, zauzvrat, linearna funkcija očitavanja senzora i prethodne filtrirane vrijednosti. I tako sve dok se lanac potpuno ne rasklopi. Odnosno, filtrirana vrijednost zavisi od sve prethodna očitanja senzora linearno:

Stoga se Kalmanov filter naziva linearnim filterom.
Može se dokazati da je Kalmanov filter najbolji od svih linearnih filtara. Najbolji u smislu da je srednji kvadrat greške filtera minimalan.

Multivarijantni slučaj

Cijela teorija Kalmanovog filtera može se generalizirati na višedimenzionalni slučaj. Formule tamo izgledaju malo strašnije, ali sama ideja njihovog izvođenja je ista kao u jednodimenzionalnom slučaju. Možete ih vidjeti u ovom sjajnom članku:
Ovaj filter se koristi u raznim oblastima - od radiotehnike do ekonomije. Ovdje ćemo raspravljati o glavnoj ideji, značenju, suštini ovog filtera. Biće predstavljen na najjednostavnijem mogućem jeziku.
Pretpostavimo da imamo potrebu da izmjerimo neke količine nekog objekta. U radiotehnici se najčešće bave mjerenjem napona na izlazu određenog uređaja (senzora, antene i sl.). U primjeru sa elektrokardiografom (vidi) radi se o mjerenju biopotencijala na ljudskom tijelu. U ekonomiji, na primjer, izmjerena vrijednost može biti devizni kurs. Svaki dan kurs je drugačiji, tj. svaki dan "njegova mjerenja" nam daju drugačiju vrijednost. A da generalizujemo, možemo reći da se većina ljudskih aktivnosti (ako ne i sva) svodi na stalna mjerenja-poređenja određenih veličina (vidi knjigu).
Recimo da stalno nešto mjerimo. Pretpostavimo i da naša mjerenja uvijek dolaze sa nekom greškom - to je razumljivo, jer ne postoje idealni mjerni instrumenti i svi daju rezultat sa greškom. U najjednostavnijem slučaju, to se može svesti na sljedeći izraz: z=x+y, gdje je x prava vrijednost koju želimo izmjeriti i koju bismo mjerili da imamo idealan mjerni uređaj, y je greška mjerenja koju uvodi mjerni uređaj, a z je vrijednost koju smo mjerili. Dakle, zadatak Kalmanovog filtera je da ipak pogodi (odredi) iz z koji smo izmjerili, kolika je bila prava vrijednost x kada smo dobili naš z (u kojem "sjede" prava vrijednost i greška mjerenja). Neophodno je filtrirati (odsjenjivati) pravu vrijednost x iz z - ukloniti šum izobličenja y iz z. Odnosno, imajući samo iznos pri ruci, moramo pogoditi koji su uslovi dali ovaj iznos.
U svjetlu gore navedenog, sada sve formulišemo na sljedeći način. Neka postoje samo dva slučajna broja. Dat nam je samo njihov zbir i od nas se traži da iz tog zbira odredimo koji su pojmovi. Na primjer, dobili smo broj 12 i kažu: 12 je zbir brojeva x i y, pitanje je čemu su x i y jednaki. Da bismo odgovorili na ovo pitanje, pravimo jednačinu: x+y=12. Dobili smo jednu jednačinu sa dvije nepoznate, dakle, strogo govoreći, nije moguće pronaći dva broja koja su dala ovaj zbir. Ali ipak možemo nešto reći o ovim brojevima. Možemo reći da su to bili ili brojevi 1 i 11, ili 2 i 10, ili 3 i 9, ili 4 i 8, itd., također su ili 13 i -1, ili 14 i -2, ili 15 i - 3 itd. Odnosno, zbirom (u našem primjeru 12) možemo odrediti skup mogućih opcija koje ukupno daju tačno 12. Jedna od ovih opcija je par koji tražimo, a koji je trenutno dao 12. Također vrijedi napominjući da sve varijante parova brojeva koji daju u zbiru 12 čine pravu liniju prikazanu na slici 1, koja je data jednačinom x+y=12 (y=-x+12).

Fig.1

Dakle, par koji tražimo leži negdje na ovoj pravoj liniji. Ponavljam, nemoguće je od svih ovih opcija izabrati par koji je stvarno postojao – koji je dao broj 12, a da nema dodatnih tragova. ali, u situaciji za koju je Kalmanov filter izmišljen, postoje takvi nagoveštaji. Nešto se unaprijed zna o slučajnim brojevima. Konkretno, tamo je poznat takozvani histogram distribucije za svaki par brojeva. Obično se dobija nakon dovoljno dugih posmatranja pada ovih veoma slučajnih brojeva. Odnosno, na primjer, iz iskustva je poznato da u 5% slučajeva par x=1, y=8 obično ispadne (ovaj par označavamo na sljedeći način: (1,8)), u 2% slučajeva par x=2, y=3 (2,3), u 1% slučajeva par (3,1), u 0,024% slučajeva par (11,1) itd. Opet, ovaj histogram je postavljen za sve parove brojeva, uključujući i one koji imaju zbir do 12. Dakle, za svaki par koji daje 12, možemo reći da, na primjer, par (1, 11) ispadne u 0,8% slučajeva, par (2, 10) - u 1% slučajeva, par (3, 9) - u 1,5% slučajeva itd. Tako iz histograma možemo odrediti u kom procentu slučajeva je zbir članova para 12. Neka, na primjer, u 30% slučajeva zbir daje 12. A u preostalih 70% preostali parovi padaju out - to su (1.8), (2, 3), (3,1) itd. - oni koji zbrajaju brojeve različite od 12. Štaviše, neka, na primjer, par (7,5) ispadne u 27% slučajeva, dok svi ostali parovi koji daju ukupno 12 ispadnu u 0,024% + 0,8% + 1%+1,5%+…=3% slučajeva. Dakle, prema histogramu smo saznali da brojevi koji daju ukupno 12 ispadaju u 30% slučajeva. Istovremeno, znamo da ako je 12 ispalo, onda je najčešće (27% od 30%) razlog za to par (7,5). Odnosno, ako već 12 bacanih, možemo reći da je u 90% (27% od 30% - ili, što je isto, 27 puta od svakih 30) razlog za bacanje 12 par (7.5). Znajući da je par (7.5) najčešće razlog za dobijanje sume jednake 12, logično je pretpostaviti da je, najverovatnije, sada ispao. Naravno, još uvijek nije činjenica da broj 12 zapravo formira ovaj par, međutim, sljedeći put, ako naiđemo na 12, pa opet pretpostavimo par (7,5), onda smo negdje u 90% slučajeva 100% u pravu. Ali ako pretpostavimo par (2, 10), bićemo u pravu samo 1% od 30% vremena, što je jednako 3,33% tačnih nagađanja u poređenju sa 90% kada se pogađa par (7,5). To je sve - ovo je poenta algoritma Kalmanovog filtera. Odnosno, Kalmanov filter ne garantuje da neće pogrešiti u određivanju sabirka, ali garantuje da će pogrešiti minimalan broj puta (verovatnoća greške će biti minimalna), jer koristi statistiku - histogram ispadanja parova brojeva. Također treba naglasiti da se u Kalmanovom algoritmu filtriranja često koristi tzv. gustina raspodjele vjerovatnoće (PDD). Međutim, mora se shvatiti da je značenje tamo isto kao i histograma. Štoviše, histogram je funkcija izgrađena na bazi PDF-a i njegova je aproksimacija (vidi, na primjer, ).
U principu, ovaj histogram možemo prikazati kao funkciju dvije varijable – odnosno kao neku vrstu površine iznad xy ravni. Tamo gdje je površina veća, vjerovatnoća da će odgovarajući par ispasti je također veća. Slika 2 prikazuje takvu površinu.


sl.2

Kao što vidite, iznad prave x + y = 12 (koje su varijante parova koje daju ukupno 12), nalaze se površinske tačke na različitim visinama, a najveća visina je u varijanti sa koordinatama (7,5). A kada naiđemo na zbir jednak 12, u 90% slučajeva par (7,5) je razlog za pojavu ovog zbira. One. upravo ovaj par, koji sabira 12, ima najveću vjerovatnoću da će se pojaviti, pod uslovom da je zbir 12.
Stoga je ovdje opisana ideja koja stoji iza Kalmanovog filtera. Na njemu su izgrađene sve vrste njegovih modifikacija - jednostepene, višestepene rekurentne itd. Za dublje proučavanje Kalmanovog filtera, preporučujem knjigu: Van Tries G. Theory of detection, estimation and modulation.

p.s. Za one koji su zainteresovani da objasne pojmove matematike, ono što se zove "na prste", možemo preporučiti ovu knjigu, a posebno poglavlja iz njenog odeljka "Matematika" (možete kupiti samu knjigu ili pojedina poglavlja na to).

Neka postoji neki sistem čije stanje jedinstveno karakteriše određeni skup veličina, po pravilu, nepristupačnih za merenje (vektor stanja sistema).

Postoji niz varijabli. Na neki način povezan sa stanjem sistema, koje se može meriti sa datom tačnošću. Algoritam Kalmanovog filtera vam omogućava da izgradite stvarnu procjenu stanja sistema u realnom vremenu, na osnovu mjerenja koja sadrže greške. Mjerni vektor se smatra višedimenzionalnim izlaznim signalom sistema, dok je šumni, vektor stanja nepoznati višedimenzionalni signal, koji se određuje uvjetom optimalnosti konstruirane procjene je min njegova srednja vrijednost - kvadrat. greške.

Karakteristike Kalman filtera:

    Omogućava vam da dobijete rješenje problema formulirano u pr……………kompoziciji

    Filter nije nepomičan

    Ima rekurentni oblik, odnosno pogodan je za programiranje. Nove procjene se dobijaju prilagođavanjem starih na osnovu novih zapažanja.

U opštem slučaju, dan je n-dimenzionalni Hilbertov prostor.

Dat je proces koji je formiran od strane linearnog dinamičkog sistema koji se naziva filter za oblikovanje

Dx/dt =A(t) x(t) +B(t)u(t)+V(t)

    X(t) - slučajni n-dimenzionalni proces.

- UTC hrpe b.w. proces sa matricom kovarijanse

K u (t, M (t)(t-)

X(t) posmatrano metrom:

Y(t) = c(t)x(t) +n(t)

n(t) =B.Sh.

K n (t, ) = M=R(t)(t-)

Na osnovu zapažanja at unutar vremenskog intervala, potrebno je pronaći procjenu signala x(t) tx(t))

x (t)=x(t) – x(t)- greška u procjeni

Kriterijum optimalnosti je njegov kvadrat. Forma

//X (t) // 2 min

Procesi u(t) i x(t) i V(t) i n(t) nisu u korelaciji, a filter za oblikovanje zadovoljava uslove fizičke realizacije.

U(t) x(t) x(t) n(t)

FF - filter za oblikovanje

u

U(t) y(t)

L

x(t) x(t)

Dinamička svojstva sistema zavise od L izbor L pruža

X(t) – x(t)o

t

Početni uslovi na svakom novom ciklusu algoritma služe kao procena stanja sistema i vrednost karakteriše njegovu grešku.

Algoritam sekvencijalno obrađuje novopristigle mjerne vektore, uzimajući u obzir ovu vrijednost, kalc. na prethodnom ciklusu. On sp. Korak, sa obradom mjerenja, dorađeni su od n.o.s. za ovaj algoritam kalc. bez korekcija istih na osnovu kovar.matrica. Ispravljeno ovako. Pa. i su izlaz Kalmanovog filtera za svaki ciklus. U završnoj fazi algoritma vrše se pripreme za dolazak novog vektora mjerenja. Na osnovu date linearne transformacije, povezivanjem njegovog naknadnog vektora stanja sa prethodnim, predviđa se procjena stanja sistema u vrijeme sljedećeg mjerenja.

Razmotrimo višedimenzionalni Kalmanov filter za stacionarno kućište. Opis samog objekta bi trebao biti poznat:

X(K+1) = Ax(K)+Bu(K)+V(k)

Y(K) = cx(K0+n(K)

A 1 B 1 C=konst(stacionarna kutija)

A priori informacije o signalu moraju biti poznate:

M[x]=x o u cov [x] = o

Moraju biti poznate a priori informacije o buci, tj. R(v) - Gausova gustina  M[v]=o; cov[V]=V

P(n)M[n]=o; cov[n]=N

V - buka objekta; n - mjerni šum

Kalmanov algoritam filtera:

X(K+1) = Ax(k)+Bu(k)+L(K+1)

Svaki rezultat je zasnovan na prethodnom. x(K) i na osnovu trenutnog mjerenja y(u+1); predviđa trenutni uzorak − Ax(u)+Bu(K)- ekstrapolirano stanje.

L Cbu(K) prilagođava trenutnu procjenu na osnovu procjene greške

C- novost između posmatrane i predviđene vrednosti.

L(K+1) - vremenski promjenjivi Kalmanov koeficijent.

L= KoC 1 str -1 p- matrica samog signala; Ko- jedino pozitivno definitivno rješenje algebarske matrične jednadžbe (Reccati jednadžba)

Ovaj identifikator mora biti stabilan, tj. svojstvena vrijednost matrice ima "-" pravi dio.

Kalmanova filtarska jednadžba jedinstveno određuje sve identifikacijske koeficijente iz podataka o prirodi smetnje u skladu s izborom kriterija min CK greške.

Napišimo rekurzivni oblik:

L(K+1) =(K+1) c 1 -1 = P(K+1)C 1 N -1

(K+1) = AP(K)A 1 +V

P(K+1)=[ -1 (K+1)>C 1 N -1 C] -1 = (K+1)- (K+1)C 1 -1 c(k+1)

(K+1)- a priori vrijednost kovarijansne matrice signala x, na osnovu k zapažanja.

Prvo izračunato:

1. (k+1)

2.P(k+1)

3. L(k+1)

4.x(k+1)

primjer: pojednostavljeno jer: a priori slučaj (Kalmanov komorni filter); i c=1

Uzimajući u obzir stacionarne slučajne signale x(k) sa poznatim statističkim znakovima, iskrivljen je od strane stats.b.sh. max/ najbolja vrijednost x(s)

X(k+1) = ax(k)+v(k)

Y(k) = x(k)+n(k)

X(o)= x o P(o)=P o

M[v]=o M=Vij

M[k]=o M=Nij

M=O

x^(n+1)=ax(k)+L(k+1)

l(k+1)=(k+1)[(k+1)+N] -1 = (k+1)/(k+1)+N

(k+1)=AP(k)A 1 +V=a 2 P(k)+v

P(k+1)=[ -1 (k+1)+N -1 ] -1 = (k+1)N/(k+1)+N

X(k+1)=(1-l(k+1))ax(k)+l(k+1)y(k+1)=N/ (k+1)+N ax(k)+(k+1)/ (k+1)+N y(k+1)

L

L(k+1)+ (k+1)=1

Pretpostavimo da imamo a priori informacije:

X o =o P o =o N=V=

K(k) l(k) P(k)

1N 0,5 0,5N

2 1 ,25 N0,555 0,555 N

3 1 ,28 N 0,56 0,56N

4 1 ,28 N 0,56 0,56N

x o =o P o = N=Va=

k(k) l(k) P(k)

o

1 1N

2 1 ,5 N0,6 0,6 N

3 1.3N 0,565 0,565 N

4 1 ,283 N0,56 0,565 N

5 1 ,28 N0,56 0,56 N

0 ,56 N

P(k)=P(k-1)=P - stanje stacionarnosti filtera

R= N/+N =(a 2 P+V)N/a 2 P+N+V

(a 2 P+V)N=PN+P(a 2 P+V)

P 2 + N+V-a 2 N / A 2 P – VN/a 2 =O

P 2 +3Np – 2N 2 =O

P=0,56 N

    Dobitak L ne zavisi od zapažanja i mogu se izračunati unaprijed za cijeli postupak.

    Vremenska zavisnost matrica A, B, WITH ne pravi fundamentalne promjene (kada su ove matrice potpuno poznate)

    Kalmanov filter implementira proces paralitičke procjene.

    Sa parcijalnom distribucijom slučajnih varijabli u stacionarnom slučaju, razmatrani filter je optimalan, u smislu polima. Kvadrati, ako sistem nije stacionaran, onda je filter optimalan.

Simultana procjena parametara i stanje objekta

S obzirom na problem procjene stanja, kada je poznata samo struktura matrice objekta, odnosno poznate su funkcije koje sadrže matrice, a nisu poznate vrijednosti parametara koji sadrže same funkcije. Direktan pristup rješavanju takvog problema uključuje proširenje vektora stanja nepoznatim parametrima.

U(t) x 1 (t)

Y 1 (t)

Y 2 (t)

Status treba procijeniti X i prosječna vrijednost buke P prema dostupnim zapažanjima signala at 1 i at 2 pri čemu a nepoznato.

Sastavimo prošireni vektor stanja, koji ćemo definirati:

X 1 (t) x 1 (t)

X(t)= a = x 2 (t)

N x 3 (t)

A=n=o(jer nisu vremenski filteri)

X 1 (t)/u(t) = 1/a+s x 1 o (t) = -x 1 (t)x 2 (t)+u(t)

X 1 (t) = u(t)/a+s

X 1 (t)(a+s)= u(t)x 1 x 2 +sx 1 =u

Za vektor stanja zapišite jednačinu relacije x(t) i u(t) nemoguće.

X = A(x(t)+B(x(t),t) u(t)

-x 1 +x 2 (t)1

A = o B = o

Razmotrimo vektor zapažanja

Y(t) =c(x(t), t) + v(t)

C(x(t), t) =

V(t) =

Neka objekat bude opisan

X = j(x,u, a, v, t)

Y = g(x,u,sa,n, t)

X(x,u,a, v, t)

[x/a] se ne može konvertovati u M- linearni oblik, gdje M ne zavisi od X i a.

Čak i za linearni objekat, zadatak je zajednički.

Procjena parametara i stanja u odnosu na ovaj parametar i vektor stanja. Svi pristupi bi trebali biti zasnovani na podešavanju modela i biti iterativni.

Razmotrite na osnovu uzorka signala:

X(k+1) = t(x(k), u(k), a(k), v(k), k)

Y9k) = g(x(k), n(k),sa(k), n(k), k)

Koristi se nelinearni nestacionarni objekt

(x(k), u(k), a(k), k) + G(k)V(k)g(x(k)u(k)c(k)k)+n(k)

(aditiv za buku objekta) (aditiv za buku posmatranja)

A(k)x(k) +B(k)u(k) c(k)x(k)+D(k)u(k)

(linearni objekt) vidljiv linearno relativnih varijabli stanja

Ax(k)+Bu(k) cx(k) + Du(k)

(stacionarni objekat) matrica posmatranja je konstantna)

(k)=o

U ovom obliku, problem se naziva problemom u dvije tačke.

Identifikacija nelinearnih objekata

Hammerstein tip nelinearnosti.

Ovaj model se zasniva na pretpostavci da se nelinearnost i dinamika mogu odvojiti. Ovo se može predstaviti kao uzastopne kombinacije 2 karike: nelinearne inercijalne i dinamičke linearne.

U(t) y(t)

Y(t) = d

U jednodimenzionalnom signalu moraju se identificirati 2 funkcije. Ove funkcije su predstavljene kao proširenje u smislu nekih funkcija koje je specificirao sistem.

(u)=aj j (u); w(t) =b i w i (t)

j=1 i=1

Hajde da uvedemo sljedeću notaciju:

Y ij (t) = i () j }

Top Related Articles