Professional Documents
Culture Documents
L k ij 10
10: Gradnja
G d j mape
robotske okoline
Prof.dr.sc.
Prof dr sc Jasmin Velagić
Elektrotehnički fakultet Sarajevo
K l ij M
Kolegij: Mobilna
bil robotika
b tik
2012/2013
10.1. Uvod
Postupak gradnje (konstrukcije) mape modela
robotske okoline temelji se na mjerenjima 2/81
senzora.
Sposobnost
p gradnje
g j mape
p okoline mobilnog g
robota predstavlja važan zahtjev u mnogim
primjenama mobilnog robota.
Levitt i Lawton (1990) su postavili tri osnovna
pitanja koja definiraju mapiranje i navigaciju
mobilnih robota:
Gdje sam ja?
Kako da iz trenutnog položaja stignem do
drugih mjesta?
Gdje se nalaze druga mjesta u odnosu na
mene?
Uvod
Mape obično predstavljaju strukturalne elemente
u nekoj apstraktnoj domeni (naprimjer, sa 3/81
semantičkim oznakama).
U vezi s tim mobilni robot mora biti sposoban
p
povezati svoju trenutnu lokaciju direktno sa
vlastitom predodžbom svoje okoline.
Mape često ovise o interpretativnim
sposobnostima osoba koje ih grade i njihovih
sposobnosti da načine funkcionalne zaključke,
odnosno sposobnosti koje često izostaju u
računarskim
č ki sistemima.
i t i
Nadalje, senzorske karakteristike objekata su
relevantne u gradnji i razumijevanju mapa.
Uvod
Mape mogu biti različitih oblika.
Postoje dvije glavne podjele na: 4/81
5/81
P i j metričke
Primjer t ičk mape
Opažanje okoline
(percepcija)
sik
Teorija
T ij
vjerojatnosti
Obrada mjerenja
senzora
Agregacija Teorija
podataka vjerojatnosti
Fuzija
Osvježavanje
mape
k k
mM ( P ), mM (Z )
U navigacijski sistem
Metričke mape
Proces gradnje mape prostora sastoji se od
tri koraka: 20/81
¾Percepcija - aktiviranje sonara u
odgovarajućoj sekvenci dok se ne prikupi
paket od n mjerenja.
¾Obrada podataka - ultrazvučna mjerenja
se obrađuju kako bi se izgradio lokalni
prikaz okoline u smislu praznog i zauzetog
prostora.
¾F ij – lokalni
¾Fuzija l k l i prikaz
ik okoline
k li se iintegrira
t i
u globalni, odbacujući kontradiktorne i
nedovoljne
d lj iinformacije.
f ij
10.2.1. Model sonarnog senzora
Uvjerenje o zauzeću ćelija dobiva se projekcijom
odziva sonara u mrežu zauzeća pomoću 21/81
njegovog modela.
Model sonara jje funkcija
j ugla
g βip područja
j čitanja
j
sonara R.
Model sonarnog senzora
Svaki element mreže sadrži vrijednost koja
predstavlja uvjerenje da li je ćelija zauzeta 22/81
ili prazna.
Na prethodnoj slici je polje pogleda
podijeljeno u tri regiona:
¾Region I: postoji vjerojatnoća da je
ćelija u ovom području zauzeta.
¾Region II: postoji vjerojatnoća da je
ćelija
j u ovom području
p j prazna.
p
¾Region III: vjerojatnoća o zauzeću ćelije
je neodređena.
10.2.2. Gradnja mape Bayesovom teorijom
Bayesova teorija predstavlja jednu od
najpoznatijih tehnika u fuziji senzorskih podataka, 23/81
njihovom preslikavanju u vjerojatnoće zauzeća i
kombiniranju ovih vjerojatnoća.
Elfes i Moravec su pioniri u korištenju Bayesove
teorije za potrebe gradnje mrežastih mapa
zauzeća (1985).
Ako se koriste sonarni senzori tada se može
opaziti samo jedan događaj, odnosno, da li je
segment ili element (ćelija) Cij mape zauzet ili
prazan.
Ovo se može napisati kao H={CO, CE}, gdje CO
označava zauzetu ćeliju i CE praznu ćeliju.
Gradnja mape Bayesovom teorijom
Vjerojatnost da se H zaista dogodio je
predstavljena sa P(H) i može poprimiti vrijednosti 24/81
od 0 do 1:
0 ≤ P( H ) ≤ 1
⎛ R − r ⎞ ⎛ β −α ⎞
⎜ ⎟ + ⎜⎜ ⎟⎟
⎝ R ⎠ ⎝ β ⎠
P(O ) = × MaxO ((**))
2
P(E) = 1 − P(O )
III R=6
s=4
I
β=15°
β=15
II
r = 2, α = 0°
Primjer 1.
Robot je prikazan krugom.
Sonarni senzor vraća vrijednost mjerenja unutar 31/81
4 metara sa tolerancijom ± 0.5 metara.
Maksimalna vjerojatnost zauzeća elementa
mreže iznosi MaxO = 0.98.
Na udaljenosti 2 metra od ishodišta snopa
isijavanja sonar registrira prepreku (r = 2).
Budući da je (4 - 0.5)
0 5) > 2 slijedi da je registrirani
element mreže u Regionu II.
Ugao pod kojim sonar vidi taj element je α = 0° 0.
Nakon identificiranja regiona kojem pripada
registrirani element mrežaste mape koriste se
izrazi za računanje vjerojatnosti zauzeća ćelije.
Primjer 1.
Za zadane vrijednosti r, R, α i β dobivaju se
sljedeće vrijednosti vjerojatnosti zauzeća, 32/81
korištenjem jednadžbi (***):
⎛ 6 − 2 ⎞ ⎛ 15 − 0 ⎞
⎜ ⎟+⎜ ⎟
⎝ 6 ⎠ ⎝ 15 ⎠
P(E) = = 0.83
2
P(O ) = 1 − 0.83 = 0.17
Primjer 2.
Na slici ispod sonarni senzor je registrirao
objekat koji prekriva ćeliju na udaljenosti r = 4 33/81
metra i pod uglom α = 5° i nalazi se u regionu I.
P( s | H ) P( H )
P( H | s) = (****)
P ( s | H ) P ( H ) + P ( s | ¬H ) P ( ¬H )
Gradnja mape Bayesovom teorijom
Prevodeći prethodni izraz u oblik sa zauzećem
elementa mreže H slijedi: 35/81
P( s | O) P(O)
P(O | s) =
P( s | O) P(O) + P( s | E ) P( E )
Vrijednosti
j P(s|O)
( | ) i P(s|E)
( | ) su poznate iz modela
senzora. Neuvjetne vjerojatnosti P(O) i P(E) su
ranije (unaprijed) poznate.
Uvrštavanjem ovih vrijednosti u prethodni izraz
dobiva se trenutna vrijednost zauzeća
promatranog elementa mrežaste mape.
Važno je napomenuti da u mnogim slučajevima
nema unaprijed znanja na temelju kojeg bi se
izračunale neuvjetne vjerojatnosti.
Gradnja mape Bayesovom teorijom
U tim slučajevima se uzima da je P(O) = P(E)
=0.5. 36/81
Ako su P(s = 4|O) = 0.58 i P(s = 4|E) = 0.42 ,
tada se korištenjem
j izraza ((****)) za element
mrežaste mape Cij dobivaju sljedeće vrijednosti
vjerojatnosti zauzeća:
(0.58)(0.5)
P(O | s = 4) = = 0.58
(0.58)(0.5) + (0.42)(0.5)
(0.42)(0.5)
P( E | s = 4) = = 0.42
(0.42)(0.5) + (0.58)(0.5)
Gradnja mape Bayesovom teorijom
Svi do sada ilustrirani primjeri su razmatrali
pojedinačno mjerenje i na temelju njega izračunavali
37/81
neuvjetne
j t i uvjetne
j t vjerojatnosti
j j t ti zauzeća
ć elementa
l t
mrežaste mape.
Sada se postavlja pitanje: "Kako
Kako kombinirati ovo
mjerenje sa drugim mjerenjima (fuzija)? ".
Prvo ovježavanje je jednostavno. Svaki element
mrežaste mape je inicijaliziran sa a priori
vjerojatnostima o zauzeću elementa mape (prazan i
zauzet).
Ako a priori vjerojatnosti zauzeća elementa mape nisu
poznate pretpostavlja se da je P(H) = P(¬H) = 0.5.
poznate, 05
Nakon toga se primjenom Bayesovog pravila računaju
nove vrijednosti vjerojatnosti zauzeća elementa mreže
koje zamjenjuju stare, dok je a priori vrijednosti (P(H) =
0.5).
Gradnja mape Bayesovom teorijom
U slučaju kada više senzora registrira zauzeće istog
elementa mrežaste mape tada Bayesovo pravilo
38/81
postaje (za n obzervacija s1, s2, ..., sn):
P( s1 , s 2 ,..., sn | H ) P( H )
P( H | s1 , s 2 ,..., sn ) =
P( s1 , s 2 ,..., sn | H ) P( H ) + P( s1 , s2 ,..., s n | ¬H ) P(¬H )
∑ m( A) = 1
A⊂Ψ gdje je φ prazan skup
m(φ ) = 0
Bel ( A) = ∑ m( B )
∀B: B ⊆ A
Definicija 3.
3 Funkcija uvjerenja Bel:Ψ→[0,1]
Bel:Ψ [0 1] je
kvantitet uvjerenja koji podržava propozicije A i B i
ima sljedeća svojstva:
Bel (φ ) = 0
Bel (Θ) = 1
Bel ( A) + Bel (¬B) ≤ 1
Bel ( A) ≤ Bel ( B),
) ako je A ⊂ B
Bel ( A ∩ B)) min( Bel ( A), Bel ( B))
Elementi D-S teorije uvjerenja
Definicija 4. Vjerodostojnost (Pls)
propozicije
p p j A može se iskazati kao vrijednost
j 47/81
uvjerenja koja ne podržava njenu negaciju
((negaciju
g j od A). ) Ona jje definirana kao
Pls:Ψ→[0,1], sa sljedećim svojstvima:
Pls ( A) − Bel ( B) ≥ 0
Pls ( A ∪ B) = max( Pls ( A), Pls ( B))
Elementi D-S teorije uvjerenja
Definicija 5. Stanje svake oznake (opisano
sa BPA)) ponovno
p se postavlja
p j 48/81
kombiniranjem novog neovisnog izvora
uvjerenja
j j korištenjem
j Dempsterovog
p g p
pravilo
kombinacije, odnosno zaključivanja, na
sljedeći
j način:
∑ m ( B)m (C )
1
∀B , C∈Ψ : B ∩ C = A
2
m1 ⊕ m2 ( A) =
1− ∑ m ( B)m (C )
1
∀B , C∈Ψ : B ∩ C =φ
2
m1 ⊕ m2 (φ ) = 0
Primjer 3.
Pretpostavimo da je Θ={A,B,C} i m1({A})=0.5,
m1({A,B})=0.5, m1({A,B,C})= 0.5, m1(ostali)= 0, 49/81
m2({B,C})=0.4, m2({A,B,C})=0.6, m2(ostali)= 0.
Izračunati m1 ⊕ m2.
Moć skupa Θ je:
2 Θ = {φ , { A},
} {B},
} {C},
} { A, B},
} {B, C},
} { A, C},
} { A, B, C}}
Suma Γ = ∑ m ( X )m (Y )
1
∀X ,Y ∈Ψ : X ∩Y =φ
2 jednaka je:
1
(m1 ⊕ m2 )({ A}) = [m1 ({ A}) m2 ({ A, C}) + m1 ({ A}) m2 ({ A, B}) + m1 ({ A, B}) m2 ({ A})
1− Γ
+ m1 ({ A, C}) m2 ({ A}) + m1 ({ A})m2 ({ A, B, C}) + m1 ({ A, B, C}) m2 ({ A})
+ m1 ({ A, C}) m2 ({ A, B}) + m1 ({ A, B}) m2 ({ A, C})]
= 1× (0 + 0 + 0 × 0.6 + 0.5 × 0 + 0 + 0.5 × 0 + 0.5 × 0)
=0
1
(m1 ⊕ m2 )({B}) = [m1 ({B}) m2 ({B, C}) + m1 ({B})m2 ({ A, B}) + m1 ({ A, B})m2 ({B})
1− Γ
+ m1 ({B, C}) m2 ({B}) + m1 ({B}) m2 ({ A, B, C}) + m1 ({ A, B, C})m2 ({B})
+ m1 ({ A, B})m2 ({B, C}) + m1 ({B, C})m2 ({ A, B})]
= 1× (0 × 0.4 + 0 + 0 × 0.6 + 0.5 × 0 + 0 + 0.5 × 0 + 0.5 × 0.4 + 0)
= 0 .2
Primjer 3.
51/81
1
(m1 ⊕ m2 )({C}) = [m1 ({C}) m2 ({ A, C}) + m1 ({C}) m2 ({B, C}) + m1 ({ A, C}) m2 ({C})
1− Γ
+ m1 ({B, C}) m2 ({C}) + m1 ({C}) m2 ({ A, B, C}) + m1 ({ A, B, C}) m2 ({C})
+ m1 ({ A, C}) m2 ({B, C}) + m1 ({B, C}) m2 ({ A, C})]
= 1× (0 + 0 × 0.4 + 0 × 0.6 + 0 + 0 + 0.5 × 0 + 0.5 × 0.4 + 0)
=0
1
(m1 ⊕ m2 )({ A, B}) = [m1 ({ A, B}) m2 ({ A, B}) + m1 ({ A, B})m2 ({ A, B, C})
1− Γ
+ m1 ({ A, B, C}) m2 ({ A, B})]
= 1× (0.5 × 0 + 0.5 × 0.6 + 0.5 × 0)
= 0.3
Primjer 3.
1
(m1 ⊕ m2 )({ A, C}) = [m1 ({ A, C}) m2 ({ A, C}) + m1 ({ A, C}) m2 ({ A, B, C})
1− Γ
+ m1 ({ A, B, C}) m2 ({ A, C})] 52/81
= 1× (0 + 0 × 0.6 + 0.5 × 0)
=0
1
(m1 ⊕ m2 )({B, C}) = [m1 ({B, C}) m2 ({B, C}) + m1 ({B, C}) m2 ({ A, B, C})
1− Γ
+ m1 ({ A, B, C}) m2 ({B, C})]
= 1 × ( 0 × 0. 4 + 0 × 0. 6 + 0. 5 × 0. 4)
= 0. 2
1
(m1 ⊕ m2 )({ A, B, C}) = [m1 ({ A, B, C}) m2 ({ A, B, C})]
1− Γ
= 1× (0.5 × 0.6)
= 0.3
Gradnja mape D-S teorijom
Treba napomenuti da tokom faze percepcije
sonarni senzori emitiraju
j ppakete impulsa
p sa 53/81
takvim razmacima da je interferencija
svedena na minimum.
Da bi se mogle uzeti u obzir osobine senzora
u modeliranju znanja o zauzeću ćelija koristi
se Dempster-Shaferova teorija uvjerenja.
Uvjerenje o zauzeću ćelija dobiva se
projekcijom odziva sonara u mrežu zauzeća
pomoću modela sonara
sonara.
Model sonara je funkcija ugla i područja
čit j sonara (sljedeća
čitanja ( lj d ć slika).
lik )
Gradnja mape D-S teorijom
Model sonara
Profil p
područja
j čitanja
j sonara
Oznakama I i II prikazana su 54/81
1 područja eventualno zauzetog,
odnosno, praznog prostora.
α
y Profil ugla 155
r
α R 1
β I x
II
ε
ε
-15
Gradnja mape D-S teorijom
Uvjerenja o zauzeću ćelija unutar ovih područja
su (Elfes, 1987): 55/81
a) Područje I, gdje je R-ε < r < R+ε:
2 2
⎛ β − α ⎞ ⎛ ε −| R − r |⎞
⎜⎜ ⎟⎟ + ⎜ ⎟
⎝ β ⎠ ⎝ ε ⎠
m(O ) = × MaxO
2
(E) = 0
m(E
⎜⎜ ⎟⎟ + ⎜ ⎟
⎝ β ⎠ ⎝ R −ε ⎠
m( E ) =
2
m({E , O}) = 1 − m( E )
gdje su ((r,α)
,α) koordinate
oo d ate tač
tačkeeuunutar
uta konusa
o usa
sonara (pozicija i orijentacija), a ε označava
toleranciju
j za ppodručje
j zauzeća. Izbor p prikladnog
g
ε-a je bitan za pravilnu interpretaciju zauzeća
ćelija na temelju mjerenja sonara.
Primjer 4.
Pretpostavimo da se robot nalazi u elementu
mreže C15,9 i da je potrebno ispitati zauzeće 57/81
elementa C8,9 na slici.
Element mrežaste mape C8,9
nalazi
l i se u regionu
i II pa vrijedi:
II, ij di
R=6
I
β=15°
β=15 (O ) = 0
m(O
2 2
II r=3, α=0° ⎛ 15 − 0 ⎞ ⎛ 6 − 1 − 3 ⎞ 2
⎜ ⎟ +⎜ ⎟ 1+
15 ⎠ ⎝ 6 − 1 ⎠
m( E ) = ⎝ = 5 = 7
2 2 10
7 3
m({E , O}) = 1 − =
10 10
mi , j (φ ) = 0
∑m
A⊂Ψ
⊂Ψ
i, j ( A) = mi, j (φ ) + mi, j ( E ) + mi, j (O) + mi, j ({E , O}) = 1
t −1 mMt -1 ( E )mSt ( E ) + mMt −1 ( E ) mSt ({E , O}) + mMt −1 ({E , O}) mSt ( E )
m (E) = m
t
M M ⊕ m (E) =
t
S
1 − mMt −1 ( E )mSt (O ) − mMt −1 (O )mSt ( E )
t −1 mMt -1 (O )mSt (O ) + mMt −1 (O )mSt ({E , O}) + mMt −1 ({E , O}) mSt (O )
m (O ) = m
t
M M ⊕ m (O ) =
t
S
1 − mMt −1 ( E )mSt (O ) − mMt −1 (O )mSt ( E )
Gradnja mape D-S teorijom
Fuzija senzorskih podataka
U procesu fuzije mjerenja senzora se 61/81
kombiniraju sa ranijom mapom i na taj način
se dobiva nova mapa.
mapa
Mapa se na ovaj način osvježava tokom
kretanja mobilnog robota
robota.
Zbog potreba navigacije u realnom vremenu
mapa je
j llokalnog
k l kkaraktera
kt i iinformacije
f ij o
zauzeću ćelija pređene ravnine se ne pamte,
zbog
b računarske
č k uštede.
št d
Samo ćelije koje se nalaze u vidokrugu
sonara se pamte i osvježavaju.
Gradnja mape D-S teorijom
Fuzija senzorskih podataka
Prednost ovog pristupa je da eksplicitni prikaz 62/81
dvoznačnosti nije samo u mjerenjima senzora
mS((E,O),
, ), već i u p
pohranjenom
j uvjerenju
j j mM((E,O).
, )
Jedno mjerenje kruga sonara (šesnaest sonara),
obavi se u vremenskom intervalu trajanja
j j 0.6
sekunde.
Ova mjerenja su prikazana na slici podebljanim
linijama koje izlaze iz mobilnog robota.
Nakon svakog mjerenja mapa se osvježava
prikupljanjem novih podataka pribavljenih od
sonara i njihovim
j kombiniranjem
j sa ranijim
j
podacima u mapi.
Gradnja mape D-S teorijom
Fuzija senzorskih podataka
63/81
Primjer 5.
Da bi se bolje razumio primjer na sljedećoj slici
je prikazana platforma mobilnog robota sa 16 64/81
sonara raspoređenih u kružnom prstenu.
S0
lijevi kotač S1 S 15
desni kotač
S2 S 14
S3
D
S4 S 12
S5 S 11
S6 S 10
S7 S9
S8
Primjer 5.
Neka se robot u početnom trenutku nalazi u
ćelijij ((14,10),
, ), odnosno C14,10
14 10. 65/81
Prije početka kretanja sve ćelije imaju
osnovne vjerojatnosti (*****)
( ).
Nakon starta dobivena su mjerenja sonara S0
i S1 na udaljenostima r0 =7 i r1=5 pod
uglovima α0=0° i α1=3° (slika ispod) (Velagić,
2005; Velagić
Velagić, Lačević i Peruničić
Peruničić, 2006).
2006)
Primjer 5.
Neka se robot u početnom trenutku nalazi u ćeliji
(14,10), odnosno C14,10.
66/81
(0,0)
(15 21)
(15,21)
Primjer 5.
Uvjerenja da su ćelije (7,8) i (10,6) zauzete su:
2 2 67/81
⎛ 15 − 0 ⎞ ⎛ 1.5− | 8 − 7 | ⎞
⎜ ⎟ +⎜ ⎟
m7S,08( 7 ) (O ) = ⎝
15 ⎠ ⎝ 1.5 ⎠ ⋅ 0.98 = 0.54488
2
m7S,08( 7 ) ( E ) = 0
m6S,110(5) (O) = 0
2 2
⎛ 15 − 3 ⎞ ⎛ 8 − 1.5 − 5 ⎞
⎜ ⎟ +⎜ ⎟
15 ⎠ ⎝ 10 − 1.5 ⎠
m6S,110(5) ( E ) = ⎝ = 0.336
2
(15,21)
Primjer 5.
Uvjerenja da su ćelije (7,8), (6,10) i (5,14) zauzete na
temelju mjerenja sonara S0, S1 i S15 (r0 =6.5, r1=7,
69/81
r15=7.5, α0=2, α1=5 i α15=4) su:
2 2
⎛ 15 − 2 ⎞ ⎛ 1.5− | 8 − 6.5 | ⎞
⎜ ⎟ +⎜ ⎟
m7S,08( 6.5) (O) = ⎝ ⎠ ⎝ ⎠ ⋅ 0.98 = 0.36848
15 1 .5
2
m7S,08( 6.5) ( E ) = 0
m5S,1514( 7.5) ( E ) = 0
t −1 0 ⋅ 0 + 0 ⋅ 0.63152 + 0.45512 ⋅ 0
m (E) = m
t
⊕ m (E) =
t
=0
1 − 0 ⋅ 0.36848 − 0.5488 ⋅ 0
7 ,8 7 ,8 7 ,8
m5t ,14 ( E ) = 0
G = (V , E )
Topološke mape
Čvorovi grafa i linije povezivanja su definirani na
sljedeći način: 76/81
V = (v1 , v2 ,..., v N )
E = (e1 , e2 ,..., eM )
V = ( A, B, C , D, E )
E = ( AB, AD, AE , BC , BD, CD, DE )
Topološke mape
U robotskoj okolini čvorovima se označavaju
uočljive
j situacije,
j , mjesta
j ili orijentiri
j ((kao što 77/81
su otvori u zidu, prolazi, čoškovi prostorija,
itd.).
)
Ovi čvorovi se povezuju linijama ako postoji
direktna staza između njih. njih
U praksi se topološki prikazi koriste za
kontinuirane okoline zasnovane na
orijentirima ili drugim značajkama.
Rezultati
R lt ti ekstrakcije
k t k ij topološke
t l šk mape (grafa) ( f )
iz mrežaste mape sa slike na slajdu 63.
prikazani
ik i su na sljedećoj
lj d ć j slici.
li i
Topološke mape
Topološki graf
78/81
Topološke mape
Na sljedećoj slici prikazana je metrička mapa
prikaza jednog kata zgrade.
79/81
Prostorije su označene oznakom R, a hodnici sa H.
Prikaz istog kata zgrade pomoću grafa, odnosno
t
topološke
l šk mape predočen
d č j slikom
je lik na sljedećem
lj d ć
slajdu.
Topološke mape
Topološki prikaz kata zgrade sa prethodnog slajda
80/81
Topološke mape
Na temelju topoloških grafova razvijene su
brojne
j metode p planiranja
j kretanja,
j , kao što su 81/81
grafovi vidljivih vrhova i Voronoijevi
grafovi,, kojij će se detaljno
g j razmatrati u
jednom od sljedećih predavanja.
Također je važan i problem kretanja po
topološkim mapama i pronalaženje
optimalnih puteva kroz topološke grafove.
grafove
Za ove potrebe se najviše koriste Dijsktra,
Bellman Ford i Bug algoritmi,
Bellman-Ford algoritmi koji će se
također razmatrati u jednom od sljedećih
predavanja.
predavanja