Transcript Lokalizacija
Lokalizacija
p
x y
Judėjimas
p
p
x y
Odometrija Δs r , Δs l nuvažiuotas rato kelias B – atstumas tarp ratų
Klaidos didėjimas
Klaidos didėjimas
Naudojantis tik odometrija • • Negalima globaliai nustatyti roboto vietą. Reikalinga tiksli pradinė padėtis Neatsparus lokalizavimo klaidoms. Pagrobto roboto problema
Tikimybėm paremtos lokalizacijos • • Markovo lokalizacija Kalman filtro lokalizacija
Markovo lokalizacija
Modeliai • Veiksmo atnaujinimo modelis • o t – ratų koduotojo reikšmės, s t-1 • būsena padidina netikrumą ankstesnė • suvokimo atnaujinimo modelis • • i t – išorinių sensorių reikšmės ir atnaujinta būsenos reikšmė s ’ t sumažina netikrumą
Markovo lokalizacija • • • • Apskaičiuojamos tikimybės visoms galimoms pozicijoms aplinkoje (tiksliau žemėlapio pozicijoms)
p(r t
= l) roboto r yra pozicijoje l laiku t
p(r t = l | i t
) roboto r yra pozicijoje l laiku t, pagal sensorių duomenis i
t
p(A|B) – sąlyginė tikimybė A, žinant B
Bayes taisyklė • •
p(A
∧
B)= p(A|B) p(B) p(A
∧
B)= p(B|A) p(A) p
(
A
|
B
)
p
(
B
|
A
)
p
(
A
)
p
(
B
)
Matymo modelis
p
(
l
|
i
)
p
(
i
|
l
)
p
(
l
)
p
(
i
)
p
(
l
|
i
)
p
(
i
|
l
)
p
(
l
) l – pozicija i – sensorių parodymai Skaičiuojama visoms l pozicijoms
Veikimo modelis
P
(
L t
1
l
)
l
'
p
(
l
|
l
' ,
a
)
P
(
L t
l
' ) Formuoja iš ankstesnės būsenos ir ratų sukimosi reikšmių į naują būseną.
Tam, kad paskaičiuoti naujos pozicijos tikimybę l (naujoje “nuomonės” būsenoje), turime integruoti pagal visus įmanomus kelius, kuriais robotas galėjo pasiekti l įvertinant galima pozicijas (ankstesnėse “nuomonės” būsenose).
Bendra tikimybė pozicijai l, sudaroma iš kiekvienos vietos l’ įtakos pagal odometrijos parodymus o
Pirmas atvejis - Dervish
Ypatybės • • • Atstumo detektoriai Neturi ratų sukimosi reikšmių Lokalizacija pagrįsta įvykiais
Ofiso tipo aplinka
Siena
Nieko nerasta Uždarytos durys Atviros durys Atviras koridorius 0.70
0.30
0 0
Uždaryt.
durys
0.40
0.60
0 0
Atidaryt.
durys
0.05
0 0.9
0.001
Atviras kodidorius
0.001
0 0.10
0.90
Fojė
0.30
0.05
0.15
0.30
Darvish formulės
Žemėlapis Nieko nerasta Uždarytos durys Atviros durys Atviras koridorius
Siena
0.70
0.30
0 0
.
Uždaryt durys
0.40
Atidaryt.
durys
0.05
0.60
0
Atviras kodidorius
0.001
0
Fojė
0.30
0.05
0 0 0.9
0.001
0.10
0.90
0.15
0.30
Skaičiavimai • Pradinė situacija – p({1-2}) = 1.0
– p({2-3}) = 0.2
– robotas važiuoja į dešinę su tikimybe 1.0
– įvykis: robotas aptinka koridorių kairėje ir atidarytas duris dešinėje.
Skaičiuojame • • {2-3} -> {3} -> {3-4} -> {4} p({4}) yra: – Pradinė tikimybė {2-3} = 0.2
– (A) tikimybė nieko neaptinkant pozicijoje {3} – (B) tikimybė tikimybė surandant koridorių kairėje ir duris dešinėje pozicijoje {4} – Sakykime, kad tikimybė nieko neaptikti {3-4} yra ligi 1
Skaičiuojame (2) • • • (A) atsitinka tada, kai {3} pozicijoje robotas neaptinka durų kairėje [0.6 * 0.4 + (1 – 0.6) * 0.05] ir teisingai nieko neaptinka dešinėje (0.7) (B) atsitinka tada, kai {4} pozicijoje robotas teisingai aptinka atvirą koridorių kairėje 0.90 ir suklysta dėl atvirų durų 0.1
VISO: 0.2 * [0.6 * 0.4 + (1 – 0.6) * 0.05] * 0.7 * [0.9 * 0.1] = 0.004 pozicijai {4}
Skaičiuojame (3) • Paskaičiuojame, kur galime atsidurti iš {1-2}: {2} , {2-3} , {3} , {3-4} , {4} – Kadangi aptikome duris ir praėjimą, tai atmetame {2-3}, {3}, {3-4} – Skaičiuojame pozicijai {2}: • 1.0 pradinė tikimybė • Tikimybė pamatyti dešinėje atviras duris = [0.6 * 0 + 0.4 * 0.9] ir kairėje koridorių = 0.9
• Tikimybė būti pozicijoje {2} = 1.0 * 0.4 * 0.9 * 0.9 = 0.3 • Tikimybė būti pozicijoje {4} = 0.000046
Gardelės struktūra • • Rhino muziejaus robotas 30x30 m plotas, padalintas į 15x15cm vienetus, ir 2 laipsnių tikslumo pasisukimą. 7’200’000 būsenų
P
(
l t
|
o t
)
l
'
P
(
l t
|
l
'
t
1 ,
o t
)
p
(
l
'
t
1 )
p
(
l
|
i
)
p
(
i
|
l
)
p
(
l
) • p(i|l) generuojamas atsižvelgiant į sensorių klaidas