Cíle lokalizace Zjištění: 1. polohy a postavení robota (robot pose) 2. vzhledem k mapě 3. v daném prostředí 2
Jiný pohled Je to problém transformace souřadnic Mapa je globální souřadnicový systém nezávislý na pozici robota Robot používá svůj lokální systém Lokalizace = proces nalezení korespondence Problém: pozice nemůže být zjištěna přímo 3
Diskrétní model lokalizace v čase
Lokalizace v teorii 1. absolutní / relativní 2. lokální / globální 3. pasivní / aktivní 4. ve statickém / dynamickém prostředí 5
Lokalizace v praxi Podle mapy jsme na támhletom kopci. Kde to sakra jsem? Kam jsem se to zase sakra dostal? Jak poznám, že už jsme tady? -- Až budeme tady, vystoupíme. 6
1a Absolutní lokalizace měření / odhad bez ohledu na předchozí stav obvykle technicky či výpočetně náročnější orientační body (aktivní vs. pasivní) GPS / Glonass / Compass / Galileo 7
1b Relativní lokalizace měření / odhad změny od předchozího stavu typicky změna pozice a natočení celková poloha složením dílčích změn problém kumulace dílčích chyb vhodné pouze krátkodobě odometrie, inerciální navigace 8
1b Relativní lokalizace Dead Reckoning klasické navigační postupy: směr + rychlost + čas 9
1b Relativní lokalizace Dead Reckoning klasické navigační postupy 10
1a Relativní lokalizace Odometrie měření údajů o otáčení kol motor vs. hnací vs. běžná vs. dedikovaná systematické chyby rozdíl v obvodu kol nápravy rozdíl nominálních vs. skutečných parametrů nedokonalosti tvaru kola rozlišení, vzorkovací frekvence, výpočet nesystematické chyby nerovnosti terénu, překážky ztráta adheze neideální konktakt s povrchem 11
1a Relativní lokalizace nekontaktní senzorika Dopplerův efekt změna frekvence odraženého signálu f rr = f tx 1 + v c pohybující se vysílač i přijímač v 0 = c 2 f rr f tt 1 v aaa = v 0 cos α (v praxi rázový kmitočet) vzorkování povrchu, obrazové senzory 12
2a Lokální lokalizace sledování pozice, tracking počáteční poloha známá průběžné udržování korektního odhadu hrozí vznik neopravitelných chyb 13
2b Globální lokalizace lokalizace bez předchozí znalosti wake-up problem kidnap problem 14
3a Pasivní lokalizace správa pozice na základě měření bez možnosti ovlivnění řízení robota 15
3b Aktivní lokalizace správa pozice na základě měření v případě potřeby ovlivní řízení robota (částečně/zcela) aktivní snímání aktivní navigace 16
4a Lokalizace ve statickém prostředí robot je jediným pohybujícím se objektem 17
4b Lokalizace v dynamickém prostředí podmínky se mění osvětlení pohyb objektů vznik / zánik objektů, překážek změna prostředí (otevřené/zavřené dveře) 18
5 Realistická lokalizace Realita: nedůvěryhodné vstupy nespolehlivé aktuátory vnější vlivy (únos, neexistence mapy, neznámá poloha) Řešení 1: Zpřesnit měření a řízení lepší senzory a lepší aktuátory filtry 19
5 Realistická lokalizace Realita: nedůvěryhodné vstupy nespolehlivé aktuátory vnější vlivy (únos, neexistence mapy, neznámá poloha) Řešení 2: Nepočítat najisto s jedinou možnou polohou pravděpodobnostní lokalizace fuzzy logika intervalový počet 20
5 Realistická lokalizace Realita: nedůvěryhodné vstupy nespolehlivé aktuátory vnější vlivy (únos, neexistence mapy, neznámá poloha) Řešení 3: Žádná lokalizace (předprogramovaný automat) reaktivní systémy evoluční algoritmy 21
6 Pravděpodobnostní lokalizace vše je náhodná veličina data ze senzorů poloha robota odhad pozice není jeden bod ale funkce lokalizace = nalezení takové hustoty pravděpodobnosti vstupních veličin, které nejlépe odpovídají hustotě pravděpodobnosti skutečné pozice robota 22
Teorie pravděpodobnosti Podmíněná pravděpodobnost P A B = P(A B) P(B) Nezávislé jevy P A B Bayesova věta P A B = P A B C = P A P(B) P B A P(A) = P(B) P B A C P(A C) P(B C), kde P(B C) 0 23
Markovova vlastnost P X k = x X 0 = x 0, X 1 = x 1,, X k 1 = x k 1 = P(X k = x X k 1 = x k 1 ) tj. pravděpodobnost nového stavu nezáleží na minulosti jevu Markovův řetězec silná Markovova vlastnost: P X k = j X k 1 = i = p i,j k > 0 homogenní Markovův řetězec 24
Odhad polohy BBB l belief BBB l dd = 1 ideální (a nerealistický) případ: 1 v místě robota BBB l = 0 všude jinde 25
Aktuální odhad polohy hustota pravděpodobnosti výskytu robota podmníněná všemi daty, která byla až do okamžiku odhadu k dispozici: BBB l k = P(l k dddd 0..k ) 26
Pravděpodobnostní přístup Nejistotu nebudeme odstraňovat, budeme ji předpokládat a využívat High-dimensional perception 1986 Moravec Částicové filtry, Monte Carlo 1997 Dellaert Bayesovské přístupy 2000 Thrun
Motivace
Motivace
Motivace
Motivace
Motivace
Motivace
Postupná aktualizace pomocí relativního i absolutního měření apriorní a aposteriorní odhad BBB l k BBB + l k 34
Inicializace Robot zná pozici: BBB l 0 má jeden vrchol, jinde blízký 0 (typ. úzké normální rozdělení) Robot nezná pozici: BBB l 0 je rozvnoměrné rozdělení na celém prostoru 35
Apriorní + aposteriorní odhad Predikční krok, time update BBB l k = P(l k z k 1, a k 1,, z 0, a 0, l 0 ) Korekční krok, observation update BBB + l k = P(l k z k, z k 1, a k 1,, z 0, a 0, l 0 ) 36
Kompletní vzorec BBB + l k = 1 C k P(z k l k ) P l k l k 1, a k 1 BBB + l k 1 dl k 1 Potřeba znát počáteční odhad pravděpodobnostní pohybový model senzorický model 38
Reprezentace odhadu Spojitý prostor obecná reprezentace by nebyla snadná Diskrétní reprezentace konečné množství hodnot odpovídajících částem def. oboru integrál suma Pravděpodobnostní mřížka Topologické grafy Monte Carlo lokalizace Spojité reprezentace Kalmanův filtr 39
Pravděpodobnostní mřížka Pravidelné rozdělení prostoru na buňky BBB(l) vyjadřuje pravděpodobnost, že robot je na pozici l = B i,j Nároky na velikost mřížky i výpočetní nároky odpovídají velikosti prostoru a granularitě selektivní aktualizace hierarchický model (quadtree) neortogonální mřížky 40
Topologický graf uzly možné pozice, hrany možné přechody BBB(l) vyjadřuje pravděpodobnost, že robot je v uzlu l Možnost hustšího grafu tam, kde je větší pravděpodobnost Není přímé použití naměřených dat Graf nemá nutně geometrické informace 41
Monte Carlo lokalizace Odhad polohy je reprezentován konečnou množinou vážených vzorků n n BBB(l) i=0 w i δ(l l i ) i=0 w i = 1 vyšší pravděpodobnost výskytu robota může být reprezentována vyšší vahou vzorku(ů) i vyšším počtem vzorků v dané oblasti 42
Monte Carlo lokalizace Predikční krok posun vzorků váhy vzorků se nemění Korekční krok polohy vzorků se nemění aktualizace váhy vzorků Převzorkovací krok údržba množiny 43
Monte Carlo lokalizace Nejlepší výsledek dávají senzory, které nejsou moc nepřesné ale ani moc přesné rozptyl funkce pro moc přesný senzor má moc úzkou špičku, takže se zvyšuje pravděpodobnost, že se nebude krýt se žádným ze vzorků a měření tak bude bezcenné 44
Monte Carlo lokalizace Kidnap problem je problém robot se ocitne v místech s malým počtem vzorků, které mají malou váhu přidávání málo pravděpodobných vzorků (pravidelně, náhodně, při podezření na únos, ) 45
Spojitá reprezentace Kalmanův filtr odhad pomocí Gaussovy křivky (střední hodnota & rozptyl) nelze více hypotéz příliš přísné předpoklady měření musejí mít normální rozdělení pravděpodobnosti 46
Jiné lokalizace Fuzzy logika náležení prvku do množiny ohodnoceno mírou příslušnosti k množině, kdekoli v 0; 1 Intervalový počet veličina charakterizována intervalem, v němž se nachází její hodnota 47