Adaptive occupancy grid mapping with measurement and pose uncertainty

Joubert, Daniek (2012-12)

Thesis (MSc)--Stellenbosch University, 2012.

Thesis

ENGLISH ABSTRACT: In this thesis we consider the problem of building a dense and consistent map of a mobile robot’s environment that is updated as the robot moves. Such maps are vital for safe and collision-free navigation. Measurements obtained from a range sensor mounted on the robot provide information on the structure of the environment, but are typically corrupted by noise. These measurements are also relative to the robot’s unknown pose (location and orientation) and, in order to combine them into a world-centric map, pose estimation is necessary at every time step. A SLAM system can be used for this task. However, since landmark measurements and robot motion are inherently noisy, the pose estimates are typically characterized by uncertainty. When building a map it is essential to deal with the uncertainties in range measurements and pose estimates in a principled manner to avoid overconfidence in the map. A literature review of robotic mapping algorithms reveals that the occupancy grid mapping algorithm is well suited for our goal. This algorithm divides the area to be mapped into a regular lattice of cells (squares for 2D maps or cubes for 3D maps) and maintains an occupancy probability for each cell. Although an inverse sensor model is often employed to incorporate measurement uncertainty into such a map, many authors merely state or depict their sensor models. We derive our model analytically and discuss ways to tailor it for sensor-specific uncertainty. One of the shortcomings of the original occupancy grid algorithm is its inability to convey uncertainty in the robot’s pose to the map. We address this problem by altering the occupancy grid update equation to include weighted samples from the pose uncertainty distribution (provided by the SLAM system). The occupancy grid algorithm has been criticized for its high memory requirements. Techniques have been proposed to represent the map as a region tree, allowing cells to have different sizes depending on the information received for them. Such an approach necessitates a set of rules for determining when a cell should be split (for higher resolution in a local region) and when groups of cells should be merged (for lower resolution). We identify some inconsistencies that can arise from existing rules, and adapt those rules so that such errors are avoided. We test our proposed adaptive occupancy grid algorithm, that incorporates both measurement and pose uncertainty, on simulated and real-world data. The results indicate that these uncertainties are included effectively, to provide a more informative map, without a loss in accuracy. Furthermore, our adaptive maps need far fewer cells than their regular counterparts, and our new set of rules for deciding when to split or merge cells significantly improves the ability of the adaptive grid map to mimic its regular counterpart.

AFRIKAANSE OPSOMMING: In hierdie tesis beskou ons die probleem om ’n digte en konsekwente kaart van ’n mobiele robot se omgewing te bou, wat opgedateer word soos die robot beweeg. Sulke kaarte is van kardinale belang vir veilige, botsingvrye navigasie. Metings verkry vanaf ’n sensor wat op die robot gemonteer is, verskaf inligting rakende die struktuur van die omgewing, maar word tipies deur ruis vervorm. Hierdie metings is ook relatief tot die robot se onbekende postuur (posisie en oriëntasie) en, om hulle saam te voeg in ’n wêreldsentriese kaart, is postuurafskatting nodig op elke tydstap. ’n SLAM stelsel kan vir hierdie doeleinde gebruik word. Aangesien landmerkmetings en die beweging van die robot inherent ruiserig is, word die postuurskattings gekarakteriseer deur onsekerheid. Met die bou van ’n kaart moet hierdie onsekerhede in afstandmetings en postuurskattings op ’n beginselvaste manier hanteer word om te verhoed dat te veel vertroue in die kaart geplaas word. ’n Literatuurstudie van karteringsalgoritmes openbaar die besettingsroosteralgoritme as geskik vir ons doel. Die algoritme verdeel die gebied wat gekarteer moet word in ’n reëlmatige rooster van selle (vierkante vir 2D kaarte of kubusse vir 3D kaarte) en onderhou ’n besettingswaarskynlikheid vir elke sel. Alhoewel ’n inverse sensormodel tipies gebruik word om metingsonsekerheid in so ’n kaart te inkorporeer, noem of wys baie outeurs slegs hulle model. Ons herlei ons model analities en beskryf maniere om sensorspesifieke metingsonsekerheid daarby in te sluit. Een van die tekortkominge van die besettingsroosteralgoritme is sy onvermoë om onsekerheid in die postuur van die robot na die kaart oor te dra. Ons spreek hierdie probleem aan deur die opdateringsvergelyking van die oorspronklike besettingsroosteralgoritme aan te pas, om geweegde monsters van die postuuronsekerheidsverdeling (verskaf deur die SLAM stelsel) in te sluit. Die besettingsroosteralgoritme word soms gekritiseer vir sy hoë verbruik van geheue. Tegnieke is voorgestel om die kaart as ’n gebiedsboom voor te stel, wat selle toelaat om verskillende groottes te hê, afhangende van die inligting wat vir hulle verkry is. So ’n benadering noodsaak ’n stel reëls wat spesifiseer wanneer ’n sel verdeel (vir ’n hoër resolusie in ’n plaaslike gebied) en wanneer ’n groep selle saamgevoeg (vir ’n laer resolusie) word. Ons identifiseer teenstrydighede wat kan voorkom as die huidige reëls gevolg word, en pas hierdie reëls aan sodat sulke foute vermy word. Ons toets ons voorgestelde aanpasbare besettingsroosteralgoritme, wat beide metings- en postuuronsekerheid insluit, op gesimuleerde en werklike data. Die resultate dui daarop dat hierdie onsekerhede op ’n effektiewe wyse na die kaart oorgedra word sonder om akkuraatheid prys te gee. Wat meer is, ons aanpasbare kaarte benodig heelwat minder selle as hul reëlmatige eweknieë. Ons nuwe stel reëls om te besluit wanneer selle verdeel of saamgevoeg word, veroorsaak ook ’n merkwaardige verbetering in die vermoë van die aanpasbare roosterkaart om sy reëlmatige eweknie na te boots.

Please refer to this item in SUNScholar by using the following persistent URL: http://hdl.handle.net/10019.1/71911
This item appears in the following collections: