Accelerating simultaneous localization and mapping

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Date

2020-08-18

Department

Major/Subject

Machine Learning, Data Science and Artificial Intelligence

Mcode

SCI3044

Degree programme

Master’s Programme in Computer, Communication and Information Sciences

Language

en

Pages

42

Series

Abstract

In simultaneous localization and mapping (SLAM), maps of environment are used to localize vehicle accurately while the estimated position is simultaneously utilized to build and update the maps. SLAM can be used to obtain position estimates for autonomous mobile robots in areas where other localization methods, such as global navigation satellite system, do not give reliable positioning estimates. This thesis concentrated on a SLAM implementation that uses normally distributed transforms occupancy map (NDT-OM) framework to build the maps. The SLAM implementation was not working in real-time in outdoor environments. Thus, the goal of this thesis was to accelerate the SLAM implementation to achieve this requirement. In this work, the slowest parts of the SLAM were identified and accelerated. These parts were map building and updating, and a registration process for iteratively obtaining improved position estimates by matching maps together. Program optimization and parallel computing methods were utilized to accelerate these algorithms. By using the proposed methods, real-time performance was achieved, with approximately three-fold speedup in comparison with the current SLAM implementation.

Samanaikaisen paikoituksen ja kartoituksen (SLAM) tuottamia karttoja käytetään ajoneuvon tarkkaan paikannukseen samanaikaisesti karttojen luomisen ja päivittämisen yhteydessä. SLAMia käytetään autonomisten robottien paikannukseen, joilla muut paikannusmenetelmät, kuten satelliittipaikannus, eivät toimi luotettavasti. Tässä diplomityössä käytetyssä SLAM-toteutuksessa nämä kartat tehtiin normaalijakaumien muunnoksiin pohjautuvalla todennäköisyysmallilla. Tämä toteutus ei aikaisemmin toiminut reaaliajassa oikean liikenteen seassa, joten tämän työn tavoitteena oli nopeuttaa SLAM-toteutus vastaamaan reaaliaikavaatimuksia. Tässä työssä nykyisen SLAM-toteutuksen hitaimmat osat etsittiin ja niitä nopeutettiin kokonaissuoritusajan parantamiseksi. Karttojen päivitys ja rakentaminen sekä niiden avulla tehtävä karttojen iteratiivinen sovitus olivat toteutuksen hitaimpia osia. Karttojen iteratiivista sovitusta käytetään paremman paikkaestimaatin muodostamiseen. SLAM-toteutuksen hitaimpia osia nopeutettiin käyttäen suorituskykyoptimoinnin ja rinnakkaislaskennan menetelmiä. Näitä menetelmiä käyttämällä saavutettiin haluttu reaaliaikainen suorituskyky sekä noin kolminkertainen nopeutus verrattuna lähtötilanteeseen.

Description

Supervisor

Suomela, Jukka

Thesis advisor

Ahtiainen, Juhana

Keywords

SLAM, NDT-OM, parallel computing, performance optimization

Other note

Citation