Test and Evaluation of the FastSLAM Algorithm in a Mobile Robot

This work presents the test and assessment of the FastSLAM method, an algorithm to solve the SLAM problem. The SLAM (Simultaneous Localization And Mapping) problem is that of acquiring an enviroment map with a roving robot, while simultaneously localizing the robot relative to this map. FastSLAM [93] is one of the most modern approaches to the SLAM problem that is based on particle filtering, showing several advantages over classical methods based on Kalman Filters (KF). Using a clever factorization of the SLAM problem, the complexity of the FastSLAM method is linear, or even logarithmic, with the number of features in the environment, where the complexity of KF-based methods is exponential. Moreover, the method is robust, since it can recover from wrong data associations, a problem that causes KF-based methods to diverge. A testbed of different environments has been defined to evaluate the performance and results of FastSLAM. With a proper configuration [38], experiments have been done in both simulated and real environments using a mobile robot equipped with a range laser sensor. In both cases we analyze the applicability of the method to build sufficiently accurate maps in real time. This document also provides a profuse literature review of SLAM methods and their ramifications in Robotics. We introduce the theoretical and mathematical foundations, to later describe contemporary approaches to solve the SLAM problem. The results and conclusions obtained are equivalent to those described by the authors of the method, hightlighting its applicability for real office-like environments operating in real time. Resumen En el presente trabajo se prueba y evalúa el método FastSLAM, un algoritmo para resolver el problema de SLAM. El problema de SLAM (Simultaneous Localization And Mapping) consiste en construir un mapa del entorno en el que se mueve un robot, localizando al mismo tiempo al robot dentro del mapa que se está construyendo. FastSLAM es una de las últimas aportaciones dentro del ámbito de investigación de SLAM [93]. Haciendo uso de ciertas propiedades del problema, se consigue factorizarlo de modo que la complejidad del método es lineal, o incluso logaŕıtmica, con respecto al número de caracteŕısticas detectadas en el entorno, frente a la complejidad exponencial de otros métodos basados en filtros de Kalman. Además, el método es robusto, siendo capaz de recuperarse frente a asociaciones de datos incorrectas, un hecho que provoca la divergencia de los métodos basados en filtros de Kalman. Se han definido varios entornos de prueba con la finalidad de evaluar el funcionamiento y los resultados del algoritmo FastSLAM. Partiendo de una configuración adecuada del algoritmo [38], se han realizado experimentos tanto simulados como en entornos reales con un robot móvil equipado con un sensor de rango láser. En ambos casos se analiza la aplicabilidad del método para construir mapas suficientemente precisos en tiempo real. Este documento también aporta una profusa revisión bibliográfica de los métodos de SLAM y sus ramificaciones dentro del campo de la Robótica. Se introducen los fundamentos teóricos y la base matemática, para posterioremente describir las técnicas más modernas empleadas para resolver el problema de SLAM. Los resultados y conclusiones obtenidos son equivalentes a los expuestos por los autores del método, pudiendo constatarse la aplicabilidad del método en entornos de oficina reales operando en tiempo real.