A fully autonomous robot must obtain and interpret information about the environment to execute several tasks. The mobile robot mapping or SLAM problem is closely related to these abilities. It consists of interpreting the information perceived by its sensors in order to build map and localize itself in it. There are many other robot skills that depend on this task; thus, it is one of the most important problems to be solved by a truly autonomous robot. The objective of this group is to design various specific tools related to the mapping problem in order to improve the autonomy of MANFRED-2 (right figure), which is a mobile robot fully developed by the Robotics Lab research group of the Systems Engineering and Automation Department of the Carlos III University of Madrid.
The localization problem in mobile robotics can be defined as the search of the robot’s coordinates in a known environment. If there is no information about the initial location, we are talking about global localization. We have developed an algorithm that solves this problem in 2D/3D environments (figure below) using Differential Evolution (DE), which is a particle-based evolutionary algorithm that evolves in time to the solution that yields the cost function lowest value.
If the environment information is given by laser readings (figure below), it is essential to correct the local errors between pairs of scans to improve the map quality, which is called registration or scan matching. We have implemented a scan matching algorithm for 3D environments (also based on DE).
Detecting when the robot is navigating through a known place. After that, the accumulated error can be minimized to give consistency to the global map (loop closure). We have developed a loop detection method that compares features extracted from two different scans to obtain a loop indicator. This approach allows the introduction of very different characteristics in the descriptor. First, the surface features include the geometric forms of the scan (lines, planes, and spheres). Second, the numerical features describe other several properties (volume, average range, curvature, etc.).