Stavový model a Kalmanův filtr

Podobné dokumenty
Bodové odhady parametrů a výstupů

Vícerozměrná rozdělení

Odhady - Sdružené rozdělení pravděpodobnosti

Nejdřív spočítáme jeden příklad na variaci konstant pro lineární diferenciální rovnici 2. řádu s kostantními koeficienty. y + y = 4 sin t.

Regrese. 28. listopadu Pokud chceme daty proložit vhodnou regresní křivku, musíme obvykle splnit tři úkoly:

Příklady ke čtvrtému testu - Pravděpodobnost

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

Zadání Máme data hdp.wf1, která najdete zde: Bodová předpověď: Intervalová předpověď:

Náhodné veličiny jsou nekorelované, neexistuje mezi nimi korelační vztah. Když jsou X; Y nekorelované, nemusí být nezávislé.

Regresní analýza 1. Regresní analýza

Testování hypotéz o parametrech regresního modelu

0.1 Úvod do lineární algebry

0.1 Úvod do lineární algebry

11 Analýza hlavních komponet

Náhodný vektor a jeho charakteristiky

Soustavy lineárních diferenciálních rovnic I. řádu s konstantními koeficienty

8 Střední hodnota a rozptyl

Testování hypotéz o parametrech regresního modelu

4EK211 Základy ekonometrie

Odhad stavu matematického modelu křižovatek

AVDAT Klasický lineární model, metoda nejmenších

Měření dat Filtrace dat, Kalmanův filtr

Odhad - Problémy se sdruženým rozdělením pravděpodobnosti

NÁHODNÝ VEKTOR. 4. cvičení

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x).

1. Náhodný vektor (X, Y ) má diskrétní rozdělení s pravděpodobnostní funkcí p, kde. p(x, y) = a(x + y + 1), x, y {0, 1, 2}.

Tomáš Karel LS 2012/2013

Cvičení 5 - Inverzní matice

9. T r a n s f o r m a c e n á h o d n é v e l i č i n y

Náhodný vektor. Náhodný vektor. Hustota náhodného vektoru. Hustota náhodného vektoru. Náhodný vektor je dvojice náhodných veličin (X, Y ) T = ( X

Zpracování náhodného vektoru. Ing. Michal Dorda, Ph.D.

Pojmy z kombinatoriky, pravděpodobnosti, znalosti z kapitoly náhodná veličina, znalost parciálních derivací, dvojného integrálu.

Regresní a korelační analýza

Operace s maticemi

Bodové a intervalové odhady parametrů v regresním modelu

1. Přednáška. Ing. Miroslav Šulai, MBA

Měření dat Filtrace dat, Kalmanův filtr

AVDAT Náhodný vektor, mnohorozměrné rozdělení

Matice. Předpokládejme, že A = (a ij ) je matice typu m n: diagonálou jsou rovny nule.

Obr. 1: Vizualizace dat pacientů, kontrolních subjektů a testovacího subjektu.

PROSTORY SE SKALÁRNÍM SOUČINEM. Definice Nechť L je lineární vektorový prostor nad R. Zobrazení L L R splňující vlastnosti

Měření závislosti statistických dat

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

(Cramerovo pravidlo, determinanty, inverzní matice)

Téma 22. Ondřej Nývlt

X = x, y = h(x) Y = y. hodnotám x a jedné hodnotě y. Dostaneme tabulku hodnot pravděpodobnostní

Odhad parametrů N(µ, σ 2 )

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

Uspořádanou n-tici reálných čísel nazveme aritmetický vektor (vektor), ā = (a 1, a 2,..., a n ). Čísla a 1, a 2,..., a n se nazývají složky vektoru

Náhodné vektory a matice

Soustavy lineárních rovnic

Analytická geometrie. c ÚM FSI VUT v Brně

Cvičení ze statistiky - 8. Filip Děchtěrenko

4EK211 Základy ekonometrie

Value at Risk. Karolína Maňáková

AVDAT Mnohorozměrné metody, metody klasifikace

Regresní a korelační analýza

Poznámky k předmětu Aplikovaná statistika, 4. téma

AVDAT Nelineární regresní model

10. N á h o d n ý v e k t o r

Lineární regrese. Komentované řešení pomocí MS Excel

1 Rozptyl a kovariance

Regresní a korelační analýza

c ÚM FSI VUT v Brně 20. srpna 2007

Symetrické a kvadratické formy

SPECIÁLNÍCH PRIMITIVNÍCH FUNKCÍ INTEGRACE RACIONÁLNÍCH FUNKCÍ

MATEMATICKÁ STATISTIKA. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

EUKLIDOVSKÉ PROSTORY

Polynomy a interpolace text neobsahuje přesné matematické definice, pouze jejich vysvětlení

Poznámky k předmětu Aplikovaná statistika, 4. téma

1 Mnohočleny a algebraické rovnice

Řešení. Hledaná dimenze je (podle definice) rovna hodnosti matice. a a 2 2 1

AVDAT Geometrie metody nejmenších čtverců

4EK211 Základy ekonometrie

Normální rozložení a odvozená rozložení

BCH kódy. Alena Gollová, TIK BCH kódy 1/27

Aplikovaná numerická matematika - ANM

ANALYTICKÁ GEOMETRIE V ROVINĚ

Operace s maticemi. 19. února 2018

9. T r a n s f o r m a c e n á h o d n é v e l i č i n y

Náhodný vektor. Náhodný vektor. Hustota náhodného vektoru. Hustota náhodného vektoru. Náhodný vektor je dvojice náhodných veličin (X, Y ) T = ( X

Náhodné signály. Honza Černocký, ÚPGM

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

5. Lokální, vázané a globální extrémy

Jiří Neubauer. Katedra ekonometrie, FVL, UO Brno kancelář 69a, tel

Soustavy lineárních rovnic-numerické řešení. October 2, 2008

INDUKTIVNÍ STATISTIKA

Téma 9: Vícenásobná regrese

Rozhodnutí / Skutečnost platí neplatí Nezamítáme správně chyba 2. druhu Zamítáme chyba 1. druhu správně

1 Determinanty a inverzní matice

Časové řady, typy trendových funkcí a odhady trendů

Časové řady, typy trendových funkcí a odhady trendů

10. cvičení z PST. 5. prosince T = (n 1) S2 X. (n 1) s2 x σ 2 q χ 2 (n 1) (1 α 2 ). q χ 2 (n 1) 2. 2 x. (n 1) s. x = 1 6. x i = 457.

Bodové a intervalové odhady parametrů v regresním modelu

MÍRY ZÁVISLOSTI (KORELACE A REGRESE)

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

Bayesovské metody. Mnohorozměrná analýza dat

Transkript:

Stavový model a Kalmanův filtr 2 prosince 23 Stav je veličina, kterou neznáme, ale chtěli bychom znát Dozvídáme se o ní zprostředkovaně prostřednictvím výstupů Příkladem může býapř nějaký zašuměný signál, který měříme Stavem pak je onen signál nezašuměný, který se snažíme odhadnout Jiným příkladem může být zdravotní stav pacienta, který odhadujeme na základě výstupů různých vyšetření Ještě dalším příkladem může být stav křižovatky, který odhadujeme na základě výstupů několika čidel Pokud proces popisujeme lineárním modelem ormálním šumem, můžeme tento model převésa vektorový stavový model prvního řádu To je velmi důležité, protože na stavový model prvního řádu ormálním šumem mohu uplatnit velmi účinný algoritnus, který dělá bodové odhady stavu a který se jmenuje Kalmanův filtr Převod lineárního regresního modelu do stavového tvaru Popis stavového modelu Stavový model se skládá ze dvou částí Za prvé z modelu dynamiky stavu, který říká, jak závisí stav v příštím okamžiku na stavu v okamžiku minulém Tento lineární model prvního řádu vypadá takto: x n = M x n N u n w n Veličina x značí stav, u je řízení a w je normální bílý šum Koeficienty M a N jsou čísla respektive matice, pokud jsou ostatní veličiny vektory Druhou součástí stavového modelu je model měření výstupu, který říká, jak závisí aktuální výstup na aktuálním stavu: y n = A x n B u n v n Koeficienty A a B jsou čísla respektive matice, pokud jsou ostatní veličiny vektory Veličina v je normální bílý šum

Převod na stavový model Nyní si na příkladu ukážeme, jak převést lineární regresní model libovolného řádu na stavový model prvního řádu: Máme lineární regresní model druhého řádu s dvěmi řízeními s a t: y n = α β Cy n D E F y n 2 G 2 H 2 K e n Bílý šum má normální rozdělení s rozptylem R: e n N (, R) Vezmeme vektor vstupů a oddělíme část, která patří aktuálním veličinám Tím dostaneme stavový vektor pro minulý čas Ve sloupečkové podobě: x n = y n y n 2 2 2 Zvýšením indexů o jedna získáme stavový vektor pro aktuální čas: y n x n = y n Vztah mezi x n a x n určuje čtvercová matice M, kterou vytvoříme takto: V prvním řádku budou koeficienty příslušné veličinám z x n Další řádky jen zajišťují, aby se příslušné veličiny převedly Tedy y n na y n, na, na, apod: M = C D E F G H K Vektor aktuálního řízení vyrobíme také sloupečkový: ( ) sn u n = Matice N tedy bude mít dva sloupce Dosadíme příslušné konstanty tak, abychom na prvním řádku dostali původní rovnici pro výstup (zatím bez šumu) 2

a aby se příslušná řízení objevila na příslušných místech stavového vektoru, tedy na místě druhém a třetím: α β N = Šum umístíme na první místo vektoru šumu w n : e n w n = Náš model převedený do stavového tvaru vypadá tedy takto: y n C D E F G H K y n α β y n = y n 2 2 2 ( sn ) e n Druhá rovnice pro výstup nám pak pouze vypreparuje příslušný výstup: y n y n = P x n = ( ) y n Poznámka o šumu My jsme šum dosadili do prvé rovnice Mohli jsme jej však dosadit do rovnice druhé Jak to tedy je? Rozhodovat musíme případ od případu Vezměme si např zašuměný signál Šum v první rovnici odpovídá šumu, který bychom naměřili i v nezašuměném signálu Prostě proto, že náš model odpovídá datům jen přibližně Šum v druhé rovnici odpovídá šumu, který vzniká např při přenosu či měření signálu 3

Náš šum můžeme rozdělia šumy dva, do první i druhé rovnice Jaké mají mít tyto šumy vlastnosti? Normální rozdělení, nulovou střední hodnotu a rozptyly, jež dají v součtu celkový rozptyl R Tyto dva šumy označíme f a g Pokud dáme rozptyl i do druhé rovnice, výstup z této rovnice už nebude pouhou první položkou stavového vektoru Bude zašuměnou první položkou stavového vektoru Proto tyto dva výstupy odlišíme Ten zašuměný, který přímo měříme, budeme značit y Onen nezašuměný, který bychom chtěli znát, budeme značit Y Stavový model s oběma šumy bude vypadat takto: Y n Y n = C D E F G H K y n = P x n v n = ( ) Y n Y n 2 2 2 α Y n Y n β g n ) ( sn V datech máme k dispozici zašuměný výstup y n, rádi bychom ale znali nezašuměný výstup Y n Jak na to? f n, Filtrace a predikce Chceme tedy na základě zašuměných výstupů odhadovat stav Jak budou postupně přicházet data, budou se v našem odhadování neustále opakovat dva kroky - filtrace a predikce Filtrace Jsme v n-tém kole Z minulého kola máme odhad aktuálního stavu pro n-té kolo, ovšem z dat z (n ) kola Nyní dorazila data pro n-té kolo Na základě těchto nových dat opravíme náš odhad aktuálního stavu pro n-té kolo Tomuto se říká filtrace Z Bayesovy věty můžeme pro filtraci odvodiásledující vzorec: f (x n d (n)) = f (y n x n, u n ) f (x n d (n )) f (y n u n, d (n )) 4

Tento vzorec je obdobou vzorce pro rozdělení parametrů Tentokrát jsme jej napsali i s příslušnou konstantou ve jmenovateli Význam jednotlivých výrazů je následující: f (x n d (n ))odhad stavu na základě (n ) dat Pokud je stav vektorem, jde o sdružené rozdělení všech položek tohoto vektoru f (x n d (n))opravený odhad stavu na základě n-tých dat f (y n x n, u n )model ve tvaru hustoty pravděpodobnosti Získáme jej z modelu měření výstupu, tedy z druhé rovnice pro stavový model Za u n a y n dosadíme aktuální data f (y n u n, d (n ))normalizační konstanta V tomto výrazu se nevyskytuje neznámý stav Za u n, y n a d (n ) dosadíme Výsledkem je tedy konstanta, která zapříčiní, aby integrál přes celou hustotu pravděpodobnosti byl opravdu Predikce Jsme stále v n-tém kole Máme odhad pro aktuální stav x n Chceme odhadnout stav pro příští, (n ) kolo Ze sdružené hustoty pro stavy x n a x n na základě n-tých dat odvodíme vzorec pro hustotu pravděpodobnosti pro příští stav x n : ˆ f (x n d (n)) = f (x n x n, u n ) f (x n d (n)) dx n Ω Tento vzorec je obdobou vzorce pro rozdělení výstupu Význam jednotlivých výrazů je následující: f (x n d (n))odhad aktuálního stavu na základě n-tých dat Pokud je stav vektorem, jde o sdružené rozdělení všech položek tohoto vektoru Je to výsledek z minulého vzorce f (x n d (n))odhad příštího stavu na základě n-tých dat f (x n x n, u n )model příštího stavu ve tvaru hustoty pravděpodobnosti Získáme jej z modelu dynamiky stavu, tedy z první rovnice pro stavový model Ω dx nintegrujeme přes všechny položky aktuálního stavového vektoru Je to integrál určitý, přes celý definiční obor Poznámka Výpočet dle těchto vzorců, zejména integrace, může být poměrně náročná Pokud jsou všechny šumy gaussovské, můžeme místo vývoje funkcí počítat jen vývoj středních hodnot a rozptylů, což je nesrovnatelně jednodušší Normalita rozdělení se zachová Algoritmus, který toto provádí, se jmenuje Kalmanův filtr 5

Kalmanův filtr Kalmanův filtr má dvě části Filtraci a predikci Výstupem filtrace je bodový odhad pro střední hodnoty položek stavového vektoru Tento vektor středních hodnot budeme značit x n n První n znamená, že je to odhad stavu pro n-té kolo, druhé n znamená, že vycházíme z n-tých dat Právě tento vektor je pro nás důležitý, protože jeho první položku budeme interpretovat jako odhad nezašuměného výstupu Druhým výstupem filtrace je kovarianční matice pro položky stavového vektoru Tuto kovarianční matici budeme značit R n n Připomeneme, co je kovarianční matice Na diagonálách najdeme rozptyly pro jednotlivé položky Tyto rozptyly, resp názorněji směrodatné odchylky z nich vytvořené, nám říkají, jak moc bude sdružená gaussovka v tom či onom směru široká Čím budou tyto rozptyly menší, tím přesněji jsou příslušné položky stavového vektoru určeny Členy mimo diagonálu nám říkají, jak jsou jednotlivé položky mezi sebou závislé Nula na i-tém řádku a v j-tém sloupci znamená nezávislost i-té a j-té položky Kladné číslo znamená kladnou korelaci, záporné číslo zápornou V grafu sdružené hustoty pravděpodobnosti se tyto nediagonální členy projeví tím, že sdružená gaussovka bude protáhlá v nějakém šikmém směru Druhou částí Kalmanova filtru je predikce Jejím výstupem budou odhady pro střední hodnoty a kovarianční matice pro příští kolo Vektor bodových odhadů středních hodnot budeme značit x n n, kovarianční matici pro položky stavového vektoru R n n Druhé n připomíná, že stále vycházíme pouze z n- tých dat Vstupem do Kalmanova filtru jsou bodové odhady středních hodnot x n n a kovarianční matice R n n z minulého kola Pro první kolo volím vektor x např nulový a kovarianční matici R s velkými diagonálními členy (např ) To znamená, že svému odhadu prvního stavu x přikládám jen velmi malou váhu a že velkou váhu naopak budou mít přicházející data Správný stav se pak nastaví rychleji Dalšími vstupy jsou matice M, N, A a B z modelu Dalšími vstupy jsou matice kovariancí šumů r w a r v Matice kovariancí šumů U těchto matic se na chvíli zastavíme V našem modelu měla jen první položka šumových vektorů význam, ostatní byly nulové V principu ale můžeme zavést šumy i do ostatních položek šumových vektorů Např šum v druhé a třetí položce vektoru w znamená, že řízení s a t k nám doráží také zašuměné Pokud jsou šumy na první, druhé a třetí pozici šumového vektoru nezávislé, bude mít kovarianční matice šumů r w na prvních třech diagonálních místech rozptyly příslušných vektorů, jinde budou samé nuly Pokud bychom ale chtěli vyjádřit, že např řízení s a t jsou zašuměny sice náhodným, ale stejným šumem, byla by situace trochu náročnější Podrobněji to zde rozebíraebudeme 6

Kalmanův filtr Algoritmus Kalmanova filtru vypadá takto: Filtrace: y p = Ax n n Bu n předpověď výstupu R p = r v A R n n A kovariance výstupu R n n = R n n R n n A R p A R n n přepočet kovariance stavu K = R n n A r v Kalmanův gain x n n = x n n K (y n y p ) datová oprava stavu Predikce x n n = M x n n N u n předpověď stavu R n n = r w M R n n M předpověď kovariance stavu Slabina Kalmanova filtru K výpočtu Kalmanova filtru potřebujeme znát matice M, N, A a B a matice kovariancí šumů r w a r v Ty v reálu neznáme Bodový odhad parametrů ještě zvládneme pomocí datové matice To umíme Takže matice M, N, A a B nejsou takovým problémem I celkový šum pomocí datové matice spočteme Ale matice kovariancí šumů? Pokud máme v rovnici měření výstupu jen jeden šum, tak můžeme uvažovat, že právě toto je cca ten šum, který měříme z dat a že šum v nezašuměném signálu bude podstatně menší Ten ale musíme odhadnout Nepříjemné je, že běh Kalmanova filtru na volbě matic kovariancí šumů poměrně závisí Nezbývá tedy, než dobře analyzovat situaci, odhadovat a zkoušet 7