kretanja mobilnog robota

Σχετικά έγγραφα
M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

3.1 Granična vrednost funkcije u tački

- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)

ELEKTROTEHNIČKI ODJEL

( , 2. kolokvij)

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

Linearna algebra 2 prvi kolokvij,

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Operacije s matricama

Lekcija 13: Algoritmi. pretraživanja grafova. Prof.dr.sc. Jasmin Velagić Elektrotehnički fakultet Sarajevo 2012/2013

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

18. listopada listopada / 13

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

Računarska grafika. Rasterizacija linije

RIJEŠENI ZADACI I TEORIJA IZ

numeričkih deskriptivnih mera.

SISTEMI NELINEARNIH JEDNAČINA

Linearna algebra 2 prvi kolokvij,

Ispitivanje toka i skiciranje grafika funkcija

Riješeni zadaci: Limes funkcije. Neprekidnost

Funkcije dviju varjabli (zadaci za vježbu)

INTELIGENTNO UPRAVLJANJE

Osnovne teoreme diferencijalnog računa

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

Računarska grafika. Rasterizacija linije

radni nerecenzirani materijal za predavanja

Dijagonalizacija operatora

Elementi spektralne teorije matrica

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

IZVODI ZADACI (I deo)

1.4 Tangenta i normala

Matematička analiza 1 dodatni zadaci

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

Matematika 1 - vježbe. 11. prosinca 2015.

1 Promjena baze vektora

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Rad, snaga, energija. Tehnička fizika 1 03/11/2017 Tehnološki fakultet

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

Značenje indeksa. Konvencija o predznaku napona

Matematičke metode u marketingumultidimenzionalno skaliranje. Lavoslav ČaklovićPMF-MO

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

7 Algebarske jednadžbe

Osnove elektrotehnike I popravni parcijalni ispit VARIJANTA A

I.13. Koliki je napon između neke tačke A čiji je potencijal 5 V i referentne tačke u odnosu na koju se taj potencijal računa?

Ispit održan dana i tačka A ( 3,3, 4 ) x x + 1

Gravitacija. Gravitacija. Newtonov zakon gravitacije. Odredivanje gravitacijske konstante. Keplerovi zakoni. Gravitacijsko polje. Troma i teška masa

TRIGONOMETRIJSKE FUNKCIJE I I.1.

Kaskadna kompenzacija SAU

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo

Riješeni zadaci: Nizovi realnih brojeva

Ĉetverokut - DOMAĆA ZADAĆA. Nakon odgledanih videa trebali biste biti u stanju samostalno riješiti sljedeće zadatke.

Eliminacijski zadatak iz Matematike 1 za kemičare

OM2 V3 Ime i prezime: Index br: I SAVIJANJE SILAMA TANKOZIDNIH ŠTAPOVA

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove.

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

Inženjerska grafika geometrijskih oblika (5. predavanje, tema1)

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

10. STABILNOST KOSINA

5 Ispitivanje funkcija

Teorijske osnove informatike 1

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Numerička matematika 2. kolokvij (1. srpnja 2009.)

APROKSIMACIJA FUNKCIJA

41. Jednačine koje se svode na kvadratne

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II

4. poglavlje (korigirano) LIMESI FUNKCIJA

Zadaci iz trigonometrije za seminar

MATEMATIKA 1 8. domaća zadaća: RADIJVEKTORI. ALGEBARSKE OPERACIJE S RADIJVEKTORIMA. LINEARNA (NE)ZAVISNOST SKUPA RADIJVEKTORA.

SEMINAR IZ KOLEGIJA ANALITIČKA KEMIJA I. Studij Primijenjena kemija

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

Dinamika tijela. a g A mg 1 3cos L 1 3cos 1

MATEMATIKA I 1.kolokvij zadaci za vježbu I dio

Zavrxni ispit iz Matematiqke analize 1

5. Karakteristične funkcije

PRAVAC. riješeni zadaci 1 od 8 1. Nađite parametarski i kanonski oblik jednadžbe pravca koji prolazi točkama. i kroz A :

Sistem sučeljnih sila

6 Primjena trigonometrije u planimetriji

Neka je a 3 x 3 + a 2 x 2 + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka.

4.7. Zadaci Formalizam diferenciranja (teorija na stranama ) 343. Znajući izvod funkcije x arctg x, odrediti izvod funkcije x arcctg x.

TRIGONOMETRIJA TROKUTA

BIPOLARNI TRANZISTOR Auditorne vježbe

PRIMJER 3. MATLAB filtdemo

Transcript:

Lekcija 12: Planiranje kretanja mobilnog robota Prof.dr.sc. Jasmin Velagić Elektrotehnički fakultet Sarajevo Kolegij: Mobilna robotika 2012/2013

12.1. Uvod Jedan od ključnih problema u mobilnoj robotici jest sposobnost generiranja plana vlastitog kretanja s ciljem izvršavanja nekog zadatka. Cilj planiranja kretanja je promjena stanja okoline na temelju računanja sekvence dopustivih kretanja robota. Tako se kod izvršavanja određenog kretanja zahtijeva dolazak robota iz početne u ciljnu tačku, a da se pri tome izbjegavaju sve prepreke i objekti koje se mogu naći na putu. Proces kojim se određuje skup slobodnih putanja kretanja (engl. collision free paths) robota do željenog cilja naziva se planiranje kretanja. 2/86

Uvod Idealno robot postiže svoje ciljeve uprkos mnogim mogućim ograničenjima na kretanje, koja mogu biti unutarnja ili vanjska. Fizičke prepreke u radnoj okolini predstavljaju vanjska ograničenja na kretanje mobilnog robota i jedina stvarna ograničenja koja se razmatraju u procesu planiranja kretanja. Unutarnja ograničenja uključuju prirodna mehanička ograničenja, kao što su neholonomna ograničenja koja onemogućavaju bočno kretanja mobilnog robota, i senzorska ograničenja, kao što je blokiranje pogleda kamera od strane prepreka. Ova unutarnja ograničenja su važna i moraju se uzeti u obzir u planiranju budućih kretanja. 3/86

Uvod Postoje dvije fundamentalne paradigme za planiranje putanje s izbjegavanjem prepreka: Globalni pristup koji generira putanju off-line korištenjem poznatih informacija o okolini. On zahtijeva precizno specificiran model okoline i znatan iznos vremena računanja. Ovim pristupom nije moguće reagirati na nepredviđene promjene u okolini. Lokalni pristup se obavlja on-line korištenjem malog broja poznatih informacija o prostoru. Moguće je reagirati na nepredviđene promjene i ne zahtijeva se velik iznos računarskog vremena. Na ovaj način nije moguće dobiti optimalnu Na ovaj način nije moguće dobiti optimalnu putanju. 4/86

Uvod Prvi korak je preslikavanje (mapiranje) robota, koji ima složen geometrijski oblik, u tačku u novom, apstraktnom prostoru, koji se naziva konfiguracijski prostor [Lozano-Perez i Wesley, 1989]. Ovo preslikavanje transformira originalni problem u problem planiranja putanje pokretne tačke. Nakon toga se diskretizira kontinuirani konfiguracijski prostor i konstruira povezani graf. Na kraju se pretražuje graf kako bi se pronašla putanja kojom bi robot dosegao svoj cilj. 4/86

Uvod Geometrija robota i prepreka Formulacija problema Konfiguracijski prostor Diskretizacija Povezani graf Pretraživanje grafa Rezultantna putanja 6/86 Ako se putanja ne pronađe, đ proces pretrage se ponavlja redefiniranjem procesa diskretizacije i pretraživanja putanje. Kompletni, navedeni proces, planiranja putanje je prikazan na slici.

Uvod Na temelju navedenog može se reći dasuulaziu proces planiranja: geometrijski opis robota i okruženja i početni i krajnji položaj robota (pozicija i orijentacija). Il Izlaz procesa planiranja putanje je putanja od 7/86 početnog q i do ciljnog položaja q f q f q i

Uvod Zahtjevi pri procesu planiranja trajektorije mogu biti: 8/86 Minimalna duljina staze. Sredina s pokretnim preprekama, što predstavlja dodatni izazov. Sredina sa pokretnim ciljem. Minimalan iznos vremena za prijelaz putanje. Utrošak energije. e Izbor staza koje zadovoljavaju neka druga ograničenja. Planirnje kretanja zahtijeva razmatranje svojstava robota i strukture okoline.

Uvod Okolina, odnosno prostor u kome se kreće mobilni robot sastoji se od prepreka p i slobodnog prostora. Prepreke predstavljaju j već zauzeti dio prostora, odnosno dio prostora kroz koji se robot ne može kretati. Slobodni prostor je nezauzeti dio prostora unutar koga se robot može kretati. Za određivanje kuda se mobilni robot može kretati definira se konfiguracijski prostor. Konfiguracija robota je skup parametara koji jednoznačno određuju poziciju svake tačke na robotu. 9/86

Uvod Na primjer, konfiguracija mobilnog robota je zadana njegovom pozicijom (x,y) i orijentacijom θ za θ [-π, π] i predstavlja se trojkom q =(x, y, θ). Ako se pretpostavi da se konfiguracija robota sastoji od d parametara, tada se ona može promatrati kao tačka u d-dimenzionalnom prostoru C,nazvanom konfiguracijski prostor. Konfiguracijski prostor je skup svih mogućih položaja robota. Konfiguracija q je slobodna ako je robot postavljen u q i ne dodiruje prepreke u prostoru. 10/86

Uvod Slobodni prostor F predstavlja podskup svih slobodnih konfiguracija robota u C u. Prostor prepreka B je komplement od F : B = C\F. Za ilustraciju slobodnog, zauzetog i konfiguracijskog prostora promatra slika ispod. 11/86

Uvod Za robota koji se samo translatira u ravnini može se eksplicitno konstruirati prostor C računanjem Minkowski razlike robota i prepreka. Intuitivno, može se razmišljati o računanju kao "širenju" " prepreka oblikovanjem robota i smanjivanjem robota na veličinu tačke. Obično robot osim translacije obavlja i rotacijsko kretanje. U slučaju rotacije, računaju se isječci prostora C sa robotom u različitim fiksnim orijentacijama i nakon toga se oni gomilaju i slažu. Egzaktno računanje C je također moguće, s tim da je znatno kompliciranije (Avnaim i Boissonnat, 1988). 12/86

12.2. ROADMAP algoritmi planiranja Roadmap algoritmi planiranja putanje spadaju u globalno planiranje kretanja. Ovi algoritmi formiraju slobodni robotski prostor u obliku mreže jednodimenzionalnih krivulja ili linija, koje se zovu mape puteva (road mape). Cilj je reducirati N-dimenzionalni konfiguracijski prostor u skup jednodimenzionalnih putanja za pretraživanje. Kada se konstruira graf putanja tada se koristi algoritam planiranja kretanja kojim se pretražuje niz putanja od početne q i do ciljne q f robotske konfiguracije. 13/86

ROADMAP algoritmi planiranja Mapa puta predstavlja dekompoziciju konfiguracijskog prostora mobilnog robota na temelju specificiranja geometrije prepreka. Cilj je konstruirati skup putanja koje omogućuju robotu kretanje bilo gdje unutar slobodnog prostora uz istovremeno minimiziranje ukupnog broja putanja. Svojstva roadmap algoritama su: Pristupnost: postoji slobodna putanja od startne pozicije robota do mape putanja. Odstupnost: postoji slobodna putanja od mape putanje do ciljne pozicije robota. Povezanost: postoji slobodna putanja od uzlazne do silazne tačke na mapi putanja. 14/86

12.2.1. Graf vidljivih vrhova Graf vidljivih vrhova G v se primjenjuje u dvodimenzionalnom konfiguracijskom prostoru sa poligonalnim preprekama. Oblikuje se međusobnim spajanjem svih vidljivih ih vrhova prepreka C i početneč q i i ciljne konfiguracije q f robota. Dvije tačke, odnosno vrha, su vidljive ako između njih nema prepreka. Također postoje putanje oko rubova prepreka ako su dva susjedna vrha iste prepreke međusobno vidljiva. Ako je dobiveni graf putanja unutar mape prostora, tada je svaka spojna linija grafa potencijalni dio putanje mobilnog robota od početne do ciljne pozicije. 15/86

Graf vidljivih vrhova Korištenje grafa vidljivih vrhova: K 1 : nacrtaju se spojne linije od početne i ciljne tačke do svih vidljivih vrhova i do uglova prostora. K 2 : nacrtaju se spojne linije između svih vidljivih vrhova svih prepreka. p K 3 : linije uzduž rubova prepreka su također spojne linije. K 4 : ponavljati K 2 i K 3 dok se svi vrhovi ne spoje. 16/86 q f q i

Graf vidljivih vrhova Postoje dvije važne poteškoće u primjeni grafova vidljivih vrhova. Prva se odnosi na veličinu prostora i broja vrhova i spojnih linija između njih. Sa povećanjem broja poligonalnih prepreka povećava se veličina konfiguracijskog prostora i broj vrhova i spojnih linija. Iako se ovaj algoritam veoma brzo izvršava, on može biti sporiji i neefikasniji u odnosu na druge algoritme ako je konfiguracijski prostor značajno popunjen p preprekama. p Drugi nedostatak je da rezultantne putanje imaju tendenciju navoditi robota što je moguće bliže preprekama tokom njegovog kretanja ka cilju. 17/86

Graf vidljivih vrhova Ovaj metod je ekstremno brz i efikasan u razrijeđenim okolinama, odnosno okolinama sa preprekama između kojih postoje veća rastojanja. Planiranje pomoću grafovavidljivihvrhovasemože učiniti optimalnim u pogledu duljine rezultantne putanje. Za optimalnost je usko vezan pojam sigurnosti, u smislu držanja robota na razumnoj udaljenosti od prepreka. Rješenje koje bi zadovoljilo oba kriterija, optimalnost i sigurnost, sastoji se u povećanju dimenzija prepreka, radije nego u povećanju polumjera robota, ili alternativno, modificirati rezultantnu putanju nakon planiranja putanje na temelju udaljenosti između putanje kretanja robota i prepreka. 18/86

Graf vidljivih vrhova Pronalaženja optimalne putanje korištenjem grafa vidljivih vrhova od početne q do ciljne q i f konfiguracije mobilnog robota. 19/86 q i q f

12.2.2. Voronoijev dijagram Za razliku od grafa vidljivih vrhova, Voronoijev dijagram formira vrlo sigurnu mapu putanja koje su udaljene od prepreka koliko je maksimalno moguće (Latombe, 1991). U ovom potpoglavlju se razmatra generalizirani Voronoijev dijagram. Ovaj dijagram predstavlja mrežu putanja koje su jednako udaljene od susjednih prepreka. Za svaku tačku slobodnog prostora računa se njena udaljenost do najbliže prepreke (slika na sljedećem slajdu). Veličina dijagrama se povećava što se robot više udaljava od prepreke. 20/86

Voronoijev dijagram Veličina dijagrama se povećava što se robot više udaljava od prepreke. p 21/86 q f q i

Voronoijev dijagram Za zatvoreni slobodni prostor sa kompaktnim preprekama, Voronoijev dijagram se sastoji od kontinuiranih linija. Tako se u bilo kojoj tački Voronoijevog dijagrama udaljenost do najbližih prepreka ne može povećati bez obzira na bilo koje lokalno kretanje po Voronoijevom dijagramu. Ako robot slijedi putanju definiranu Voronoijevim dijagramom, on će osim izbjegavanja prepreka maksimizirati (lokalno) svoju udaljenost do njih. U tačkama koje su na jednakom odstojanju od dvije ili više prepreka formiraju se oštri vrhovi. Voronoijev dijagram sadrži vrhove dobivene sa ovim oštrim rubnim tačkama. 22/86

Voronoijev dijagram Voronoijev dijagram ima važan nedostatak u slučaju ograničenog područja lokalizacijskih senzora, odnosno senzora na temelju čijih mjerenja se obavlja lokalizacija. Budući da ovaj algoritam planiranja putanje maksimizira udaljenost između robota i objekata u okolini, bilo koji senzor kratkog dometa na robotu će prouzročiti pogrešnu percepciju okoline. Ako se takvi senzori koriste za lokalizaciju tada će odabrana putanja biti prilično loša sa stajališta lokalizacije. S druge strane, metod grafa vidljivih vrhova se može dizajnirati na način da zadrži robota po želji blizu objekata (prepreka) u mapi. 23/86

Voronoijev dijagram Međutim, postoji i jedva primjetna, važna prednost metode Voronoijevih dijagrama u odnosu na druge metode planiranja kretanja: izvršivost. Za zadanu, pojedinačnu planiranu putanju Voronoijevog dijagrama, robot sa senzorima udaljenosti, kao što su laserski skener ili ultrazvučni senzori, može slijediti Voronoijeve vrhove korištenjem jednostavnog upravljačkog algoritma. Ovaj upravljački sistem će prirodno držati robota na vrhovima Voronijevog grafa, tako da kretanje zasnovano na Voronoijevom dijagramu može ublažiti pogreške usljed netačnosti mjerenja enkodera. 24/86

Voronoijev dijagram Ovo interesantno svojstvo Voronoijevog dijagrama može se iskoristiti za obavljanje automatskog mapiranja okoline pronalaženjem nepoznatih vrhova Voronoijevih dijagrama i kretanjem po njima, te nakon toga konstruirati Voronoijevu mapu okoline [Choset i saradnici, 2000]. Dva najčešće korištena načina mjerenja udaljenosti kod Voronoijevog dijagrama su L 1 i L 2 metrike: 25/86 L1 {( x, y) : x + y = konst.} 2 2 L2 {( x, y) : x + y = konst.} t}

Voronoijev dijagram Grafičke interpretacije navedenih metrika su prikazane na sljedećim slikama. 26/86 {( x, y) : x + y = konst.} {( x, y) : x 2 + y 2 = konst.}

Voronoijev dijagram Primjer kreiranja grafa L1 metrikom (oštri rubovi). 27/86 1 2 11 9 10 12 4 13 15 14 1 7 5 6 16 5 3 18 4 17 3

Voronoijev dijagram Primjer kreiranja grafa sa L2 metrikom (zaobljeni rubovi). 28/86 1 2 1 12 4 13 15 9 10 14 1 7 5 6 16 5 3 18 4 17 3

Voronoijev dijagram Kada su zadane početna i ciljna tačka, robot se može kretati na dovoljno o o velikom 29/86 rastojanju od najbliže prepreke dok se kreće prema tački koja leži na Voronoijevom dijagramu. Nakon toga robot slijedi skup paraboličnih i pravolinijskih segmenata (spojnih linija) koji sačinjavaju Voronoijev dijagram dok ne dostigne lokaciju iz koje se može direktno usmjeriti ka ciljnoj lokaciji uz održavanje maksimalne udaljenosti od prepreka u okolini.

Voronoijev dijagram Planiranje kretanja mobilnog robota korištenjem generaliziranog e a Voronoijevog oo oje og 30/86 dijagrama. q i q f

12.3. Dekompozicija prostora (segmenata) Dekompozicija prostora dijeli slobodni robotski prostor u jednostavne regione, koji se nazivaju segmenti (ćelije). Segmenti su obično konveksne površine pa je potrebno konstantno vrijeme za računanje putanje između bilo koje dvije konfiguracije unutar segmenta. Kada se konstruira graf G seg i uspostavi slobodan prostor unutar njega F tada se može primijeniti neki od roadmap algoritama. Čvorovi grafa G seg su segmenti. Postoji rub (spojna linija) između dva čvora ako su korespodentni segmenti susjedni jedan u odnosu na drugog. 31/86

Dekompozicija prostora (segmenata) Jednostavna segmentna dekompozicija predstavlja mrežu sa fiksnom rezolucijom. 32/86 q i q f

Dekompozicija prostora (segmenata) Da bi se pronašla putanja između početne q i i ciljne tačke q f, prvo se lociraju dva segmenta unutar kojih se nalaze ove tačke. Nakon toga se traži putanja u grafu G seg između dva korespodentna čvora. Rezultat je sekvenca susjednih slobodnih segmenata koji formiraju prolaz u slobodnom prostoru između q i i q f. Glavna prednost ovog algoritma je lagana implementacija, što ga čini široko primijenjenim u planiranju kretanja mobilnih robota. Algoritam pronalazi putanju kada ona postoji samo ako je rezolucija mreže dovoljno dobra. Zato se kaže da je ovaj algoritam samo rezolucijski kompletan. 33/86

Dekompozicija prostora (segmenata) Za prevazilaženje ovog problema koristi se algoritam triangulacije (de Berg i saradnici, 2000) koji dijeli slobodan prostor u trokutove korištenjem vrhova poligonalnih prepreka. 34/86

Dekompozicija prostora (segmenata) Važan aspekt metoda dekompozicije prostora je postavljanje j granica između segmenata. Ako su granice postavljene korištenjem funkcije strukture okoline tada se govori o egzaktnoj dekompoziciji (Latombe, 1991). Pod strukturom okoline se podrazumijevaju j pojedinačne prepreke i slobodni prostor. Rezultantni segmenti su u cijelosti zauzeti ili su u cijelosti prazni. Pojedinačna pozicija robota unutar svakog slobodnog segmenta nije od značaja, već je važna mogućnost prelaska robota iz pojedinačnog slobodnog segmenta u njegove susjedne slobodne segmente. 35/86

Dekompozicija prostora (segmenata) Proces planiranja putanje egzaktnom dekompozicijom segmenata: Prvo se slobodni prostor podijeli u segmente. Zatim se u svakom segmentu pronađe centroid, odnosno centar područja i označi se brojem. 36/86 q i 6 5 4 13 14 15 7 1 10 16 2 3 11 12 8 9 q f

Dekompozicija prostora (segmenata) Ovi centroidi predstavljaju čvorove, odnosne vrhove povezanog grafa. Povezivanje dva susjedna vrha grafa se obavlja preko tačke na sredini njihove granice. 37/86 q i 6 5 4 13 14 15 7 1 10 16 2 3 11 12 8 9 q f

Dekompozicija prostora (segmenata) Najkraća pronađena putanja je označena punom linijom. 38/86 q i 6 5 4 13 14 15 7 1 10 16 2 3 11 12 8 9 q f

Dekompozicija prostora (segmenata) Ključni nedostatak egzaktne dekompozicije segmenata je da broj segmenata i računarska efikasnost cjelokupnog procesa planiranja putanje ovise o gustoći i složenosti prepreka u okolini. Uslučajudajekoncentracijapreprekeuokolini značajno smanjena, tada će biti malo segmenata čak i ako su dimenzije okoline veoma velike. Zbog složenosti u implementaciji ova se dekompozicija relativno rijetko koristi mobilnoj robotici. 39/86

Dekompozicija prostora (segmenata) Kada dekompozicija rezultira aproksimacijom ac stvarne mape tada se 40/86 govori o aproksimativnoj dekompoziciji, koja je jedna od najpopularnijih p j tehnika planiranja putanje mobilnih robota. Najvažniji razlog za ovo je mrežasti prikaz robotske okoline. Najviše korištena tehnika aproksimativne dekompozicije je fiksna dekompozicija koja formira diskretnu mrežu segmenata fiksnih dimenzija (slika na sljedećoj slici).

Dekompozicija prostora (segmenata) Aproksimativna fiksna dekompozicija prostora 41/86

Dekompozicija prostora (segmenata) Dimenzije segmenata u fiksnoj dekompoziciji prostora postoa ne ovise o 42/86 pojedinačnim preprekama u okolini. Mora se paziti da segment ne bude previše mali, jer će u slučaju okoline velikih dimenzija biti mnogo segmenata što će zahtjevati znatne memorijske resurse za pohranu informacija o pojedinom segmentu, bez obzira na gustoću i broj prepreka u okolini. Glavna prednost fiksne dekompozicije je niska računarska složenost planiranja putanje.

Dekompozicija prostora (segmenata) Osim fiksne dekompozicije, postoji i varijabilna dekompozicija prostora (adaptivna dekompozicija). Na sljedećoj j slici slobodni prostor je izvana ograničen pravokutnikom, a iznutra sa tri poligona. Pravokutnik je rekurzivno dekomponiran (razložen) u veći broj manjih pravokutnika. Svaka dekompozicija dijeli svaki djelomično zauzet/djelomično slobodan segment prostora u četiri identična podsegmenta. Na svakoj razini rezolucije samosegmenti koji leže isključivo unutar slobodnog prostora se koriste za konstrukciju povezivog grafa. 43/86

Dekompozicija prostora (segmenata) Varijabilna dekompozicija prostora start 44/86 cilj

Dekompozicija prostora (segmenata) Planiranje putanje u ovakvoj adaptivnoj dekompoziciji semožehijerarhijski j izvršavati. Planiranje započinje sa grubom rezolucijom, koja se u svakom sljedećem koraku reducira dok se ne identificira rješenje ili se ne postigne limit na rezoluciju. Kada se uspoređuju dekompozicije sa fiksnim i varijabilnim dimenzijama segmenata, tada se ova druga lakše adaptira složenijim okolinama, pa će stoga okoline sa manjom gustoćom i koncentracijom prepreka sadržavati manji broj segmenata, što za sobom povlači značajno manje memorije za pohranu. 45/86

12.4. Metoda potencijalnih polja Osnovni koncept metode potencijalnih polja je napuniti radni prostor robota umjetnim potencijalnim poljem u kome će ciljna pozicija 46/86 privlačiti robota (privlačna sila), a prepreke ga odbijati [Khatib, 1986]. Drugim riječima, robot i prepreke imaju isti polaritet, a cilj suprotan polaritet, pri čemu cilj predstavlja minimum u prostoru, a prepreke maksimume (predstavljene šiljcima u potencijalnom polju). U metodi potencijalnih polja robot se razmatra kao tačka u umjetnom potencijalnom polju koji se krećeć usmjeru gradijenta polja prema ciljnoj j lokaciji. Ova metoda je posebno atraktivna zbog mogućnosti njene elegantne matematičke analize i pojednostavljenja.

Metoda potencijalnih polja Konvencionalno, aktivni potencijal je definiran kao funkcija relativne udaljenosti robota i cilja, pri čemujeciljfiksnatačka u prostoru. Umjetno potencijalno polje U(q) se formira od komponente pridružene cilju U cilj (q) i komponenti pridruženih preprekama U prep p(q). Rezultantno umjetno potencijalno polje predstavlja sumu navedene dvije komponente: 47/86 U ( q) = U ( q) + cilj U prep p( q) (*) Funkcija potencijala specificira kretanje robota u bilo kojoj konfiguraciji q C.

Metoda potencijalnih polja Budući da se robot promatra kao tačka (x, y) to se njegova orijentacija j može zanemariti i rezultantno potencijalno polje je predstavljeno u dvodimenzionalnom prostoru (ravnini). Na temelju izraza (*) može se izračunati izraz za silu umjetnog polja koja djeluje na poziciju q =(x, y): F = U (q) U U x = U y 48/86 gdje U(q) označava gradijent vektora U(q).

Metoda potencijalnih polja Predznak u prethodnom izrazu znači daserobot kreće kacilju(kojijeobično globalni minimum od U(q)) u smjeru negativnog gradijenta vektora U(q). Sila F se također može razdijeliti na privlačnu (cilj) i odbojnu (prepreka) silu: 49/86 F ( q ) = F ( q ) F ( q ) cilj = U cilj ( q) prep U prep ( q) Rezultantna sila se dobiva superpozicijom privlačne sile kojom cilj djeluje na robota i odbojnih sila kojima prepreke djeluju na robota. Ova sila, odnosno potencijal, će voditi robota ka cilju uz istovremeno izbjegavanje prepreka koje se nađu na putanji.

Metoda potencijalnih polja Potencijal kojim cilj privlači robota se može opisati paraboličnom funkcijom oblika: U cilj 1 ( q) = α q qcilj 2 gdje je α pozitivna skalirajuća konstanta i q q cilj Euklidska k udaljenost izmeđuđ vektora pozicije ij robota i cilja. Ovaj potencijal je diferencijabilna funkcija i na temelju njega se može izračunati sila kojom cilj privlači robota: 2 50/86 F cilj ( q q ) ( q) = U cilj ( q) = α q qcilj cilj = α ( q qcilj )

Metoda potencijalnih polja Ovasilakonvergiralinearnokanulikakoserobot približava cilju. Odbojni potencijal je veoma jak kada je robot blizu prepreke i slabi kako se robot udaljava od nje. Jedan od načina izražavanja ovog potencijala je: 51/86 U prep (q) = q β q prep gdje je q prep pozicija prepreke. Korištenjem prethodnog izraza računa se sila kojom prepreka odbija robota na sljedeći način: F prep ( q ) = U prep ( q ) = β q q prep 2

Metoda potencijalnih polja Privlačno potencijalno polje cilja 52/86

Metoda potencijalnih polja Odbojno potencijalno polje prepreke 53/86

Metoda potencijalnih polja Rezultantno potencijalno polje 54/86

Metoda potencijalnih polja Rezultantno potencijalno polje 55/86

Metoda potencijalnih polja Metoda potencijalnih polja je prilično efikasna i robusna u odnosu na upravljačke i senzorske (mjerne) pogreške. Međutim, ova metoda, koja spada u skupinu metoda optimizacije najbržim spustom, nije efikasna u slučaju problema lokalnog minimuma. i Uslučaju lokalnog minimuma robot može upasti u zamku i ne dostići globalni minimum (cilj). Za rješavanje problema lokalnog minimuma ne postoji općeniti postupak već se metodi potencijalnih polja dodaju stohastička pretraživanja koja omogućuju izlazak robota iz zamke [Latombe, 1991]. 56/86

12.5. Metoda privlačnih i odbojnih sila U nastavku će se prezentirati algoritam planiranja putanje zasnovan na principu djelovanja privlačnih i odbojnih sila, koji reducira broj prepreka koje imaju dominantan utjecaj na kretanje robota u svakom pojedinom vremenskom trenutku [Velagić, Lačević i Peruničić, 2005; 2006; Velagić, Lačević i Osmić, 2006]. Reduciranje broja prepreka se obavlja pomoću neizrazitih pravila. Kako je već navedeno privlačna sila se pridružuje cilju, a odbojne sile preprekama. Sve sile se predstavljaju pravcima i rezultantna sila predstavlja smjer kretanja robota u datom trenutku. Robot nema unaprijed podatke o okolini, koje dobiva posredstvom ultrazvučnih mjerenja okoline. 57/86

Metoda privlačnih i odbojnih sila Objasnimo šta se dešava kada robot (x t,y t ) na svom putu prema ciljnoj tački detektira prepreku definiranu sa (x p,y p ) 58/86 y y p prepreka Δx Δy p p = = x y p p x t y t R p α R 2 p = Δx 2 p + Δy 2 p y t robot Odbojna sila: x t x p x F = r 1 2 R p

Metoda privlačnih i odbojnih sila Projekcije odbojne sile na pojedine osi: F F rx ry = = F F r r cos( α) sin( α ) 59/86 gdje je ugao α jednak: α = arctan Δy p Δx p Koordinate vrha vektora odbojne sile u odnosu na koordinate trenutne pozicije robota se računaju prema izrazima na sljedećem slajdu.

Metoda privlačnih i odbojnih sila Pridruživanje odbojne (reaktivne) sile prepreci. y 60/86 y p R p x r = x x t t + F F rx rx,, za za Δx Δx p p < 0 > 0 α y t y yt + Fry, za Δy p < 0 y r y = F r r y F, za Δy > 0 t ry p x r x t x p x

Metoda privlačnih i odbojnih sila Ciljnoj tački se pridružuje sila kojom ona privlači robota. 61/86 y y c R c ciljna tačka Δx Δy R c c c = = = x y c c Δx xt y 2 c t + Δy 2 c y t robot θ U predloženom algoritmu zakon po kome se mijenja iznos privlačne sile je: x t x c x F a = κ R R c c,, za R za R c c 1m > 1m

Metoda privlačnih i odbojnih sila U ovom algoritnu je odabran κ=5. Velik iznos ovog parametra je odabran zbog 62/86 toga što u krugu radijusa 1 m oko ciljne tačke relevantne prepreke p koje utječu na kretanje robota (kasnije će se razviti pravila za određivanje koja prepreka je relavantna) bi proizvele jake odbojne sile i odbacile robota unatrag, tako da on nikad ne bi stigao u ciljnu tačku. Iznos ovog parametra je povezan sa područjem čitanja sonara (u našem slučaju R=4 m). U slučaju većeg R-a, morao bi se izabrati veći κ.

Metoda privlačnih i odbojnih sila Određivanje nove ciljne tačke. y y c y n y p y t y r F r 63/86 ciljna tačka Nova ciljna tačka se nova ciljna tačka nalazi na poziciji vrha vektora koji se dobije R F a n R c vektorskim zbrojem sila odbijanja od prepreke i θ sile privlačenjaodstrane prepreka ciljne tačke, odnosno R p koordinate vrha ovog robot vektora se dobivaju kao: xr xt x p xn xc x x n y n = = x r y r + Δx c + Δ y c

Metoda privlačnih i odbojnih sila Uvodi se i stohastička sila. Ova sila ima mali intenzitet i jedino u slučaju kada 64/86 dolazi do poništavanja privlačne i odbojne sile njen iznos naglo raste i ona tada djeluje na robota. y ciljna tačka F s robot prepreka Djeluje okomito na pravac kretanja robota. x

Metoda privlačnih i odbojnih sila Za stohastičku silu vrijedi sljedeće pravilo: AKO F a = F r Iugao između F a i F r je manji od 001rad 0.01 ONDA Fs velika INAČE F s mala 65/86 U nastavku se opisuju pravila planiranja kretanja kojima se određuju relevantne prepreke za daljnje kretanje robota u trenutnoj situaciji. S tim u vezi uvodimo pojmove vidno polje, odnosno vidokrug mobilnog robota i ciljni krug. Ovdje se koristi mobilni robot opremljen sa 16 sonarnih senzora, koji su kružno raspoređeni. Jasna slika, odnosno granica pouzdanosti očitanja ovakvih podataka je 4 m od centra platforme (R v ), odnosno vidno polje robota je krugsapolumjerom 4 metra sa centrom u centru platforme.

Metoda privlačnih i odbojnih sila Ako u prostoru postoji samo ciljna tačka bez ikakvih prepreka, tada komponenta - R p ima vrijednost jednaku nuli i jedina sila koja tada djeluje na robota je sila privlačenja koju uzrokuje ciljna tačka. Uslučaju da se detektirana prepreka nalazi negdje na kraju vidnog polja robota, algoritam će pridružiti silu kojom ova prepreka odbija robota. Sila kojom prepreka p odbija robota će biti relativno mala, tako da će izvršiti skoro neprimjetno skretanje robota sa njegove pravolinijske putanje. Kada se robot pak ''previše'' približi prepreci tada kvadratni član u ukupnoj sili preovladava i faktički je jedina sila koja djeluje na robota, sila odbijanja i robot se trudi da se što više udalji od prepreke. 66/86

Metoda privlačnih i odbojnih sila Situacija izbjegavanja prepreke y 67/86 cilj prepreka robot x

Metoda privlačnih i odbojnih sila Da bi prepreka bila vidljiva mora zadovoljavati: y 1 68/86 R pi < R v, 4 odnosno mora biti u vidnom polju robota, gdje je R pi udaljenost i-te prepreke do robota. 3 R p3 R p4 R v R p5 5 2 Ovdje će se koristiti prikaz vidnog polja pomoću matrice. Dimenzije matrice: n n (4 m 4 m), Dimenzije ćelije: 5 cm 5 cm. x

y Metoda privlačnih i odbojnih sila Prikaz sila koje utječu na kretanje robota na njegovom putu ka ciljnoj tački. 69/86 U ovom pristupu računa se trenutna udaljenost robota do ciljne tačke, parametar R 2 c, i nakon toga se opisuje 1 R pom1 kružnica sa centrom u ciljnoj tački i polumjerom koji je R c jednak nešto uvećanoj vrijednosti udaljenosti R p3 između robota i ciljne tačke, 3 Rpom3 p (R c+0.1, gdje duljina 0.1 predstavlja zonu sigurnosti koja se opisuje oko prepreke). p x

Metoda privlačnih i odbojnih sila Udaljenost između prepreke i ciljne tačke: R pom = 2 ( xc x p ) + ( yc y p ) 2 70/86 Uvjet vidljivosti prepreke: AKO (( R c +0.1) >R pom ) I (R p < R v ) ONDA prepreka vidljiva i utječe na kretanje. Na ovaj način, sve tačke koje nisu na predviđenoj putanji, ne opterećuju nepotrebno robota sa dodatnom silom.

y Metoda privlačnih i odbojnih sila Prikaz situacije kada se prepreka nalazi unutar ciljnog kruga iza ciljne tačke. F r R p R c nova ciljna tačka 71/86 Problem može nastati ukoliko se prepreka nalazi unutar ciljnog kruga, u dijametru (R c +0.1), a iza ciljne tačke i robot joj se približava te ona pada u njegovo vidno polje. Odbacivanje prepreke iza robota: F a AKO (R p < R c ) ONDA prepreka vidljiva. x

y Metoda privlačnih i odbojnih sila Situacija kada robot ne osjeća prepreku koja se nalazi iza ciljne tačke. 72/86 R p R c F r nova ciljna tačka F a x Puni uvjet za vidno polje robota glasi: AKO (( R c +0.1) >R pom )) I (R p < R v )I (R p < R c ) ONDA prepreka vidljiva i utječe na kretanje robota

Metoda privlačnih i odbojnih sila Uvjeti globalnog pkretanja y 73/86 5 1 R c +0.1 2 3 4 Samo je prepreka 3. relevantna za kretanje. x

Metoda privlačnih i odbojnih sila Kada se robot kreće premaciljuinasvomputunema prepreka koje bi mu remetile kretanja, on se tada kreće maksimalnom brzinom v max. 74/86 Uslučaju da postoji relevantna prepreka na udaljenosti manjoj od 1 m od robota tada će se brzina robota korigirati koeficijentom k, takodaćesebrzinarobota mijenjati ovisno o njegovoj udaljenosti do prepreke, a što je prikazano na slici v[m/s] vmax k R p v min 0.1 1 R p [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati Predloženi algoritam omogućuje kretanje robotu ka 75/86 ciljnoj tački uz istovremeno zaobilaženje eventualnih prepreka koje mu se mogu naći na tom putu. y [m] 10 8 6 4 2 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati 10 76/86 8 6 4 2 y [m] 0-2 -4-6 -8-10 -8-6 -4-2 0 2 4 6 8 10-10 x [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati 10 77/86 8 6 4 y [m] 2 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati 10 78/86 8 6 4 2 y [m] 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati 10 79/86 8 6 4 2 y [m] 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

Metoda privlačnih i odbojnih sila Simulacijski rezultati 10 80/86 8 6 4 2 y [m] 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

12.6. Problem lokalnog minimuma Predloženi algoritam je efikasan u slučajvima kada robot ne upada u zamku, odnosno kada ne postoji problem lokalnog minimuma. Međutim, kada se robot nađe u lokalnom minimumu i ne uspijeva izaći iz zamke (vrti se u beskonačnoj petlji). 81/86 y beskonačna petlja x

Problem lokalnog minimuma Za izbjegavanje problema lokalnog minimuma predlaže se algoritam koji ne zahtijeva memoriranje prethodno viđenih ih (pređenih) đ dijelova okoline [Velagić, 82/86 Lačević i Peruničić, 2006]. Algoritam izbjegavanja problema lokalnog minimuma Korak 1.: Računati privlačne i odbojne sile, te njihovu sumu Korak 2.: AKO rezultantna sila ima tendenciju gurnuti robota unazad ONDA ne uzimati u obzir privlačnu silu I držati odbojnu silu konstantnom i jednakom udaljenosti do najbliže prepreke INAČE primijeniti ij iti princip i privlačnih č ih i odbojnih sila KRAJ Korak 3.: AKO robot nije dosegnuo ciljnu tačku ONDA idi na Korak 1

Problem lokalnog minimuma Algoritam tjera robota u desno u tački prekapčanja a (tačka u kojoj robot ima tendenciju vratiti se nazad, odnodno d promijeniti iti smjer kretanja) i vodi ga do druge 83/86 tačke prekapčanja b u skladu sa opisanim algoritmom izbjegavanja j lokalnog minimuma. Nakon pristizanja u tačku b primjenjuje se princip privlačnih i odbojnih sila, opisan ranije. y a Tačke prekapčanja b x

Problem lokalnog minimuma Simulacijski rezultati 10 84/84 8 6 4 2 y [m] 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x [m]

Problem lokalnog minimuma Simulacijski rezultati 10 85/86 8 6 4 2 y(m) 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x(m)

Problem lokalnog minimuma Simulacijski rezultati 10 86/86 8 6 4 2 y(m) 0-2 -4-6 -8-10 -10-8 -6-4 -2 0 2 4 6 8 10 x(m)