Font Size: a A A

Exploiting many-core processors to optimize the performance of simultaneous localization and mappin

Posted on:2015-07-18Degree:Ph.DType:Dissertation
University:University of Massachusetts LowellCandidate:Zhang, HaiyangFull Text:PDF
GTID:1478390017997599Subject:Robotics
Abstract/Summary:
The SLAM (Simultaneous Localization and Mapping) algorithm is for a robot to simultaneously localize itself and map the surrounding environment. This algorithm is often used to explore unknown environments. It continuously takes inputs from a variety of sensors, uses statistical models to filter out noise, and does localization and mapping. A particle filter-based SLAM algorithm is a Sequential Monte Carlo method with the advantage of being able to handle non-linear and non-Gaussian systems.;In a large building, the uniform door sizes and intervals create visually repetitive patterns which are indistinguishable by a laser rangefinder. If a robot is hijacked---which means it is moved without collecting sensor data---re-localization is difficult with a laser sensor alone. There is existing work which indicates that the magnetic field anomaly, which is caused by steel structures or furniture in a building, changes across locations but remain relatively stable over time. In our work, we fused laser data together with magnetic data to distinguish the repetitive patterns, and completed re-localization successfully.;But particle filter-based SLAM relies on a large number of particles to retain accuracy. This produces a heavy computational load. But the computation for each particle being the same and independent to each other, implies that it could be a good candidate for parallel computing on GPU. To exploit the benefits of GPU computing, we ported the particle weight calculation, the most time consuming step, to the GPU, and optimized it specifically for the parallel architecture. The results have shown performance gains of more than an order of magnitude by using GPU acceleration.;Using multiple robots to explore an unknown environment has benefits that include better coverage and fault tolerance. We have expanded our CUDA-accelerated SLAM from a single robot to multi-robots. This is particularly important for processing large amounts of data from multiple robots.;This work focused on a high performance implementation of SLAM, but it also contributes to a deeper understanding of the potential of this technology. We make recommendations that will inform future work in this area.
Keywords/Search Tags:SLAM, Localization, Performance, Work, GPU
Related items