Visibility-based Probabilistic Roadmaps for Motion Planning Tim Schlechter 13 februari 2003
2 Overzicht Inleiding De methode Het algoritme Resultaten Conclusie
3 Probabilistic Roadmaps Global planner Learning phase Query phase Local planner (local method) Een algoritme dat, gegeven 2 configuraties q en q’, een geschikt pad L(q,q’) berekent
4 Waarom PRM? Aanpassen: enkel de local method Per robot zijn slechts een klein aantal componenten specifiek voor die robot
5 Basic-PRM (1) Learning phase: 1. do 2. Kies een random configuratie q in CS free 3. Creëer een node uit q en probeer deze met alle nodes uit de roadmap te verbinden 4. while het gewenste aantal nodes niet bereikt is
6 Basic-PRM (2) Wanneer we een configuratie aan de roadmap toe willen voegen, proberen we mbv de local method een pad te vinden naar iedere andere configuratie in de roadmap Maar nog erger: er worden nutteloze configuraties aan de roadmap toegevoegd. De graaf wordt onnodig groot.
7 Het idee 1.Beperk het aantal nodes waarmee je de toe te voegen configuratie wilt verbinden 2.Wanneer een configuratie geen nut heeft, voeg hem dan ook niet aan de roadmap toe Maar hoe weet je dat een configuratie geen nut heeft in de roadmap?
8 Visibility domains Voor een gegeven local method L, definieren we het visibility domain van een configuratie q als: Vis L (q) = { q’ CS free zodat L(q,q’) CS free }
9 Free-space coverage
10 Optimal coverage Plaats de guards zo, dat: de gehele free-space ‘bewaakt’ wordt een guard verwijderen tot gevolg zou hebben dat niet de gehele free-space ‘bewaakt’ wordt de guards elkaar niet ‘zien’
11 General Method (1) 1.Genereer random configuraties en bewaar slechts die configuraties, die een set vormen waarmee optimal coverage bereikt wordt 2.Verbind de guards met elkaar om de roadmap te vormen Maar! Hoe kunnen we de guards met elkaar verbinden als deze elkaar niet kunnen ‘zien’?
12 De guards verbinden
13 Connectors Een connector of connection node is een node die ‘zichtbaar’ is voor ten minste 2 guards de coverage niet uitbreidt
14 General Method (2) Genereer een random configuratie q. Nu zijn er 3 mogelijkheden: q is voor geen enkele guard zichtbaar. Voeg q toe als guard. q vormt een nieuwe connected component. q is ‘zichtbaar’ voor twee of meer guards die bij verschillende connected components horen. Voeg q toe als een connector en voeg de connected components samen. q is slechts ‘zichtbaar’ voor 1 guard of meerdere guards die bij dezelfde connected component horen. q wordt afgewezen.
15 Kanttekeningen De term ‘visibility domain’ is eigenlijk onjuist. Beter was geweest: ‘reachable domain’ We nemen aan dat de roadmap een ongerichte graaf is. Dit houdt in dat de local method symetrisch moet zijn Het aantal guards hoeft niet optimaal (=minimaal) te zijn. ( Art gallery problem )
16 Algoritme (1) Guard : Set waarin alle tot dusver gevonden guard-nodes opgeslagen zijn Connection : Set waarin alle tot dusver gevonden connection-nodes opgeslagen zijn G i : Subsets van Guard die alle guard-nodes bevatten, die door een connection-node met elkaar verbonden zijn
17 Algoritme (2) (true)
18 Stopconditie ntry : Aantal achtereenvolgens ‘mislukte’ pogingen Stop wanneer ntry >= een constante waarde M ± 1/ M zal niet bewaakt worden door de guards Dus de kans op een succesvolle query: 1 – 1/ M M heeft geen invloed op de grootte van de roadmap
19 Maarrrr….. Het kan voorkomen dat CS free niet volledig ‘bewaakt’ wordt door de guards Probleem-situatie
20 Waarom beter dan Basic-PRM? Twee factoren bepalen de looptijd van roadmap algoritmes: Aantal aanroepen van de collision checker Aantal aanroepen van de lokale planner
21 Resultaten tegenover Basic-PRM(1) ε= breedte van de doorgang l = #aanroepen lokale planner
22 Resultaten tegenover Basic-PRM(2) ε= breedte van de doorgang l = #aanroepen lokale planner
23 Resultaten tegenover Basic-PRM(3) Basic-PRM: 1/ ε = 12 Basic-PRM: 1/ ε = 25
24 Resultaten tegenover Basic-PRM(4) Basic-PRM: 1/ ε = 50 Visib-PRM voor elke willekeurige ε
25 Resultaten tegenover Basic-PRM(5)
26 Conclusie Voordelen ten opzichte van Basic-PRM Kleinere roadmaps Een maat om te schatten hoeveel van de vrije ruimte onbewaakt is Minpunten Geen garantie dat CS free covered is (Basic-PRM heeft dit overigens ook niet) Guards kunnen zo geplaatst worden dat de kans op een goede connector klein wordt Resultaten op basis van experimenten, geen formeel bewijs
27