Mobile robot location and map Creation (SLAM) method

Source: Internet
Author: User

Simultaneous location of autonomous mobile robot and map Creation (SLAM) method

1. Introduction:

With the development of computer technology and artificial intelligence, the intelligent autonomous mobile robot becomes an important research direction and research hotspot in robot field with more and more attention and input. The localization and map creation of mobile robot is a hot research problem in autonomous mobile robot field. Some practical solutions are available for autonomous localization of robots in known environments and for map creation of known robot locations. However, in many environments, robots cannot use global positioning systems for positioning, and it is difficult or impossible to obtain a map of the robot's working environment beforehand. At this point, the robot needs to create a map in a completely unknown environment under the condition of its own position uncertainty, and use the map to locate and navigate autonomously. This is the simultaneous positioning and map creation of mobile Robots (SLAM) , which was first proposed by Smithself and Cheeseman in 1988, and is considered to be the key to achieving a truly autonomous mobile robot.

The slam problem can be described as: a robot moving from an unknown location in an unknown environment, positioning itself based on location estimation and sensor data during the move, and building an incremental map. in Slam, the robot uses its own sensors to identify characteristic signs in an unknown environment, and then estimates the global coordinates of the robot and the feature mark based on the relative position of the robot and the feature mark and the odometer readings. This online positioning and map creation requires maintaining detailed information between the robot and the feature mark. In recent years, the research of Slam has made great progress, and has been applied to various environments, such as indoor environment, underwater environment and outdoors.

key issues with 2.SLAM2.1 How the map is represented

At present, researchers have proposed a variety of representations, broadly divided into three categories: raster representation , geometric information representation and topological diagram representation, each method has its own advantages and disadvantages.

Raster Map notation divides the entire environment into a number of rasters of the same size, each of which indicates whether there are obstructions in each raster. This method was first proposed by Elfes and Moravec, and then Elfes was further studied. It has the advantage of easy to create and maintain , keep the information of the whole environment as much as possible, and with the help of this map, it is convenient for self-positioning and path planning . The disadvantage is that when the number of rasters increases (in large-scale environments or when the environment is divided in detail), the maintenance behavior of the map will become difficult, while the search space in the localization process is very large, if there is no better simplification algorithm, real-time application is difficult to achieve.

The geometrical information map representation refers to the robot collects the perceptual information of the environment, extracting more abstract geometric features, such as line segments or curves , and using these geometrical information to describe the environment. This method is more compact and convenient for position estimation and target recognition . The geometrical method uses Kalman filter to obtain high precision in local area, and the computational amount is small , but it is difficult to maintain accurate coordinate information in the wide region environment. However, the extraction of geometrical information requires additional processing of perceptual information and requires a certain amount of perceptual data to obtain the result.

topological maps are highly abstract, especially when the environment is large and simple. This method represents the environment as a graph in topological sense, and the nodes in the diagram correspond to a feature state, place in the environment. If there is a direct connection between the nodes the path is equivalent to the arc of the connected node in the graph. The advantages are:

(1) Facilitates further path and task planning,

(2) Storage and search space are relatively small, high computational efficiency,

(3) Many existing sophisticated and efficient search and inference algorithms can be used.

The disadvantage is that the use of topology maps is based on the identification of topological nodes, such as when there are two very similar places in the environment, the topology diagram method will be difficult to determine whether this is the same point.

2.2 Description of uncertain information

In a completely unknown environment, it is one of the prerequisites for the mobile robot to locate and navigate the robot by relying on the information provided by the sensor itself to carry out the environment model. The so-called completely unknown environment refers to the robot's ignorance of the environment without any prior information, such as the environmental shape, the position of the obstacle, the artificial reference. In this environment, the mobile robot must rely on the information obtained by the sensor, such as odometer , sonar , laser rangefinder , Vision and so on. Due to the limitations of the sensor itself, the perceived information has varying degrees of uncertainty , such as the uncertainty of the laser rangefinder mainly comes from the measurement error of the distance and the reflector rotation and laser scattering The angular error caused by the measurement. As shown in 1-1, the uncertainty of perceptual information inevitably results in the environment model being constructed is not completely accurate, similarly, when decision-making relies on model and perception, there is uncertainty, that is, uncertainty has transitivity.

The methods of measuring uncertainty include probability measure, trust measure, probability measure, fuzzy measure and Evidence theory , etc. At present, the use of more in AMR map construction is probabilistic measures and fuzzy measures. There are two main forms of probability measurement:

(1) The uncertainty information is described by the probability characteristics of mean, variance and covariance. The advantage of this method is that the mean-value and other probabilistic features have definite geometrical meanings, and the disadvantage is that the discrete formula of probabilistic features has no definite form.

(2) The probability model is used to describe the uncertain information, and the Bayes rule and Markov hypothesis are mainly adopted. The advantage of this method is that the random probability model is used to describe the posture and environment information of the robot, the robustness is very good, the disadvantage is that the computational amount of the probabilistic model is very large and the prior probability of the model must be known beforehand, which makes the practical application difficult.

2.3 Positioning and environmental feature extraction

The problem of mobile robot self-localization and environment modeling is closely related. The accuracy of the environment model depends on the positioning precision, and the realization of the location is inseparable from the environment model. In the unknown environment, the robot has no reference, can only rely on their own not very accurate sensors to obtain external information, like a blind person in a strange environment in the situation. In this case, positioning is more difficult. Map positioning and map creation are easy to solve, but no map positioning and unresolved location map creation is like "chicken-egg" problem. There are two types of solutions to such problems in existing studies:

1) using a variety of internal sensors (including odometer, compass, accelerometer, etc.), through a variety of sensor information fusion to reduce the positioning error, the use of fusion algorithm is based on the Boltzmann filter method. Due to the lack of reference to external information, the accumulation of errors after long-time roaming is quite large.

2) when relying on internal sensors to estimate their own motion , using external sensors (such as laser rangefinder, vision, etc.) to perceive the environment, the information obtained is analyzed to extract the environmental characteristics and save , in the next step through The comparison of the environmental characteristics corrects its own position . But this approach relies on the ability to achieve environmental characteristics. The methods of extracting environmental features are:

(1) Hough transform is a kind of method to detect straight lines and other curves based on gray scale graphs. This method requires a cluster of pre-prepared curves that can be searched, and generates curve parameters based on a cluster of curves in the displayed grayscale image.

(2) Clustering analysis is a data detection tool, which is effective for uncategorized samples, and its goal is to divide the objects into natural categories or cluster classes based on similarity or distance. In the case of unknown categories of extracted objects, cluster technology is a more effective technique than houghtransform. Cluster classes should be centered on "condensed" rather than fragmented and disjoint. Environmental characteristics are sometimes difficult to extract, for example, when the environmental characteristics are not obvious or the sensor information is relatively small, it is difficult to obtain the environmental characteristics from a perceptual information.

2.4 Data Correlation

A data association is a match of two feature flags to determine whether they correspond to the same object in the environment. Data Association in slam mainly needs to complete three tasks: 1) new feature Mark detection 2) signature matching 3) map matching. Although the data association has been solved well in the fields of target tracking and sensor fusion, the computational capacity of these methods is not enough to meet the real-time requirement of slam. The complexity of the data association between the m -Flag and the map with the n - flags is exponentially correlated with M, Assuming that each observed flag I has a possible match, then for M flags it is necessary to search for a correct match in exponential space =. The search space associated with the data is related to the complexity of the environment and the positioning error of the robot, the increase of the complexity of the environment will increase the m, and the increase of the error will increase the NI.

2.5 Cumulative Error

The error in slam is mainly from three aspects: 1) observation error 2) odometer error 3) error caused by incorrect data association. When the robot locates in the environment of the known map, the robot can compensate the error of the odometer by the characteristic mark known in the observation position, and each observation makes the position error of the robot tend to the sum of the position error of the observation error and the characteristic mark. However, in slam, the location of the robot and the position of the characteristic mark in the environment are unknown, the observation information can not effectively correct the error of the odometer, and the position error of the robot increases with the robot's moving distance. And the increase of the position error of the robot will lead to the wrong data Association, thus increase the position error of the characteristic mark: in turn, the error of the characteristic mark will increase the position error of the robot. Therefore, the position error of the robot is closely related to the positional error of the characteristic mark. The interaction between them makes the position estimation of the robot and the characteristic mark produce accumulated error, which is difficult to guarantee the consistency of the map.

How to implement 3.SLAM

At present, the SLAM method can be broadly divided into two categories: 1) based on the probabilistic model: full SLAM, compression filtering, Fastslam, etc. based on the Kalman filter, 2) non-probabilistic model methods: Sm-slam, scan matching, data fusion (dataassociation), fuzzy logic based, etc.

3.1 implementation method based on Kalman filter

initial state and from 0 to t time observation information and control information ( odometer readings ) estimate system current state . In slam, the state of the system =, by the pose r and figure information m (contains location information for each feature marker). Assuming that the motion model and the observation model of the system are linear models with Gaussian noise, the state of the system obeys the Gaussian distribution, and the slam can be realized by Kalman filter. The slam based on the Kalman filter includes the system State prediction and update two steps, and also need to The management of the map information , such as: The addition of new feature marks and feature flags are removed and so on.

The

Kalman filter assumes that the system is a linear system, but the motion model and the observation model of the robot are nonlinear. Therefore, the extended Kalman filter (Extended Kalman filter) is usually used, and the extended Kalman filter is approximated by a first-order Taylor expansion to represent a nonlinear model. Another Kalman filter for is UKF ( unscented Kalman Filter ) , UKF with to approximate posterior probability distribution , UKF has a higher linearization accuracy than EKF and does not need to compute an Jacobian matrix.

Kalman filter has become the basic method to realize slam. Its covariance matrix contains the position of the robot and the uncertain information of the map . When the robot continuously observes the characteristic signs in the environment, the determinant of any sub-matrices of the covariance matrix decreases monotonically. Theoretically, when the number of observations tends to infinity, the covariance of each feature marker is only related to the covariance of the robot's starting position . The time complexity of the Kalman filter is O (), because each time the robot can only observe a few characteristic signs, the time complexity of the slam based on the Kalman filter can be optimized to O (), n is the number of feature markers in the map.

3.2 Local sub-map method

The local sub-map method decomposes slam into smaller sub-problems from the angle of space. The sub-map method mainly needs to consider the following questions: 1 How to divide sub-map 2) How to represent the relationship between sub-maps 3) How to pass the child map information to the global map and ensure the consistency of the global map.

The simplest local sub-map method is to divide the global map into including Independent sub-map of the number of fixed feature markers , implemented slam in each sub-map, the time complexity of this method is O (1). However, because of the loss of useful information that represents the correlation between different sub-maps, this method does not guarantee the global consistency .

In this respect, Leonard and other people put forward the DSM (Decoupledstochastic Mapping) method, DSM in each sub-map to save their own robot position estimation, when the robot from a sub-map A to another sub map B, Using the EKF-based approach to transfer the information from sub-map A to the sub-map, B;b.williams and others proposed a Submap method based on CLSF(constrainedlocal slam Filter) CLSF Create a map of the global coordinates known sub-map, the robot in the process of moving only using the observation information to update the location of the robot and local sub-map features, and at a certain time interval to the local sub-map information to the global map. Although the experiments show that the two algorithms have good performance, they do not theoretically prove that they can maintain the consistency of the map. J.guivant and others proposed a slam optimization algorithm CEKF (compressedextended Kalman Filter) without any information loss. CEKF the observed feature markers into a and B sections, a for the area adjacent to the robot's current position, known as the active sub-map . When the robot moves in the active sub map A, the position and sub map of the robot are updated in real time using the observation information, and the influence of the observation information on the map B is recorded by recursive method. When the robot leaves the active sub map A, the observed information is transmitted without loss to sub map B, Update the child map B one time, creating a new active sub-map. The calculation time of the method is composed of two parts: the slam in the active sub-map, its time complexity is O (), is the number of feature marks in the active sub-map A, and the update of sub map B, whose time complexity is O (), is the number of feature flags in map B. When the sub-map merging time interval is large, CEKF can effectively reduce the computational amount of slam.

3.3 Go to related law

Another way to reduce the complexity of slam is to omit some of the smaller elements in the covariance matrix that represent related relationships and make them into a sparse matrix . However, this can also cause the map to lose consistency due to the loss of information. However, if you can change the representation of the covariance matrix so that many of the elements are close to 0 or equal to zero, then it is safe to ignore them. The slam based on the extended information filter EIF (extendedinformation filter) is out of this idea. EIF EKF's information-based expressions differ in their representation of information in different forms. EIF uses the inverse matrix of the covariance matrix to characterize the uncertain information in the slam and is called the information matrix. The fusion of two unrelated information matrices can simply be represented as two matrices added. Each non-diagonal element in the information matrix represents a constraint relationship between a robot and a feature marker or a feature mark and a feature mark, which can be locally updated by the relationship of the system state. This local update makes the information matrix approximate to the sparse matrix, and the error of sparsity is very small. According to this, S.thrun and others propose a Informationfilter method based on sparse information filter SEIF (Sparse Extended slam) and prove that the time complexity of slam using sparse information matrix is O ( 1). Although EIF can effectively reduce the time complexity of slam, there are still some problems in the representation and management of map information. Firstly, the mean value of the system state can only be approximated in the constant time, and secondly, the addition and deletion of the feature mark is inconvenient in the Slam method based on EIF.

3.4 Decomposition Method (Fastslam)

M.montemerlo and others proposed a method based on particle filter (particlefilter) Fastslam. The fastslam of the slam into the position of the robot and the location of the feature marker is estimated two processes. Each particle in the particle filter represents a possible motion path for the robot, and the weights of each particle are calculated using the observed information to evaluate the quality of each path. For each particle, the motion path of the robot is determined, so the characteristic sign is independent, the observation information of the characteristic sign is only related to the position and posture of the robot, each particle can estimate the location of n features in the map by using n Kalman filter respectively. Suppose that K-particles are required to implement Slam, Fastslam, and a total of kn Kalman filters. The time complexity of Fastslam is O (kn), and its time complexity can be up to O (klog N) by using a tree-based data structure. Another main advantage of the Fast2slam method is that the nonlinear and non-Gaussian motion model of a robot can be well represented by using particle filter to estimate the position and posture of the robot.

3.5 slam based on multi-robot collaboration

Some researchers discussed and researched the simultaneous location and map creation Cslam (cooperativesimultaneous Localizationand Mapping) based on multi-robot collaboration. Compared with the single robot, the Cslam can improve the efficiency of map creation and improve the accuracy of location and map by mutual coordination and cooperation among robots and information sharing. Cslam can be divided into two types: centralized Cslam and distributed Cslam, depending on how the map is stored and processed. In the centralized Cslam, there is a central processing module, where each robot locates and maps in its own local map, and then transmits the information obtained in the local map to the central module using the wireless communication device. This method can make full use of the redundancy information between sub-maps to improve the precision of location and map creation through sub-map matching. However, when the number of robots increases, the calculation of the central module will increase significantly, and the centralized information transmission needs a lot of bandwidth, the system reliability is also relatively low, once the central module fails, the entire system will be paralyzed. In distributed Cslam, there is no central module, each robot has its own global map, at each moment the robot merges information from other neighboring robots and its own observations into its own global map, and then transmits the new information to other robots in a point-to-point manner. Each robot can only obtain the location information of the robot adjacent to it, and does not know the topological structure of the whole system. This method is very similar to the distributed information fusion, which can be realized by using the information filter. Because the information fusion of the two unrelated information matrices can be realized by adding two matrices, it is possible to use the information filter to realize the distributed cslam to avoid complicated computation.

4. Research direction and development trend

To sum up, in recent years, researchers in the field of robotics have done a great deal of research on slam, especially in reducing computational complexity and improving robustness. With the deepening of the research, the following aspects have become the research hotspot of the current slam.

1. Extend the application environment of Slam: extend the research and application of the current confined two-dimensional static environment to the dynamic three-dimensional environment which is suitable to the realistic environment;

2. In-depth research on slam based on multi-robot collaboration to improve its application level;

3. Research a more effective method of slam implementation, introduce the methods of artificial intelligence and intelligent control into slam, and develop more effective slam algorithm.

4. Study better map representation, especially in complex terrain and large environment;

5. The study will better combine visual processing with other sensors to improve the accuracy of environmental feature extraction, reduce errors, and improve the accuracy of positioning and composition.

Mobile robot location and map Creation (SLAM) method

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.