Simultaneous localization and mapping, or SLAM for short, is the process of creating a map using a robot or unmanned vehicle that navigates that environment while using the map it generates. SLAM is technique behind robot mapping or robotic cartography. The robot or vehicle plots a course in an area, but at the same time, it also has to figure out where its own self is located in the place. The process of SLAM uses a complex array of computations, algorithms and sensory inputs to navigate around a previously unknown environment or to revise a map of a previously known environment. SLAM enables the remote creation of GIS data in situations where the environment is too dangerous or small for humans to map.
How do SLAM Robots Navigate?
SLAM is similar to a person trying to find his or her way around an unknown place. First, the person looks around to find familiar markers or signs. Once the person recognizes a familiar landmark, he or she can figure out where they are in relation to it. If the person does not recognize landmarks, he or she will be labeled as lost. However, the more that person observes the environment, the more landmarks the person will recognize and begin to build a mental image, or map, of that place. The person may have to navigate this certain environment several times before becoming familiar with a previously unknown place.
In a related way, a SLAM robot tries to map an unknown environment while figuring out where it is at. The complexity comes from doing both these things at once. The robot needs to know its position before answering the question of what the environment looks like. The robot also has to figure out where it is at without the benefit of already having a map. Simultaneous localization and mapping, developed by Hugh Durrant-Whyte and John L. Leonard, is a way of solving this problem using specialized equipment and techniques.
The process of solving the problem begins with the robot or unmanned vehicle itself. The type of robot used must have an exceptional odometry performance. Odometry is the measure of how well the robot can estimate its own position. This is normally calculated by the robot using the position of its wheels. Something to keep in mind, however, is that there is normally a small margin of error with odometry readings. The robot might be off in its measurements by several centimeters. Consequently, the robot is not where it thinks it is in a given location. These errors must be taken into account in algorithms. Also, areas are often remapped to make up for this deficiency.
Requirements of SLAM
One requirement of SLAM is a range measurement device, the method for observing the environment around the robot. The most common form of measurement is a laser scanner such as LiDAR. Laser scanners are easy to use and very precise. However, they are also extremely expensive. There are other options, though. Sonar can be used, and this device is especially useful for mapping underwater environments. Imaging devices can also be used for SLAM. These optical readers can came in 2D or even 3D formats. The measurement device used depends on several variables, including preferences, costs, and availability.
Another key component in the SLAM process is acquiring data about the environmental surroundings of the robot. Just like a human, the robot uses landmarks to determine its location using its sensors, the laser, sonar, or whichever measuring device is used. A robot will use different landmarks for different environments. However, there are certain requirements for landmarks used in SLAM. First of all, landmarks should be stationary. A robot cannot determine its own location if a nearby landmark is constantly moving. Additionally, landmarks should be unique and distinguishable from the surrounding environment. Landmarks also need to be plentiful and should be able to be viewed from many different angles.
Once a robot has sensed a landmark, it can then determine its own location by extracting the sensory input and identifying the different landmarks. A method needs to be in place in order for the robot to do this. This landmark extraction can be done in a variety of ways from algorithms like Spike extraction to scan-matching. The important factor to remember is that the robot needs a way to identify a landmark. Robots can also use data from previously scanned landmarks and match them up with each other in order to determine its location.
SLAM is the mapping of an environment using the continual interplay between the mapping device, the robot, and the location it is in. As the robot interacts with the environment, it not only maps the area but also determines its own position simultaneously. Like other mapping technologies, SLAM is undergoing constant improvement as a tool for exploring the environments around us.
OpenSLAM. http://openslam.org/ Accessed January 13, 2013.
Riisgard, Søren and Morten Rufus Blas. “SLAM for Dummies: A Tutorial Approach to Simultaneous Localization and Mapping” http://ocw.mit.edu/courses/aeronautics-and-astronautics/16-412j-cognitive-robotics-spring-2005/projects/1aslam_blas_repo.pdf Accessed January 13, 2012.
Wikipedia “Simultaneous Localization and Mapping. http://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping Accessed January 13, 2013.