1 Introduction:
The research of robots has received more and more attention and input. With the development of computer technology and artificial intelligence, intelligent autonomous mobile robots have become an important research direction and research hotspot in the field of robotics. The positioning and map creation of mobile robots is a hot research topic in the field of autonomous mobile robots. There have been some practical solutions for robotic autonomous positioning in known environments and map creation of known robot positions. However, in many environments, robots cannot use the global positioning system for positioning, and it is difficult or even impossible to obtain a map of the working environment of the robot in advance. At this time, the robot needs to create a map in a completely unknown environment under the condition that its position is uncertain, and use the map for autonomous positioning and navigation. This is the simultaneous positioning and map creation (SLAM) problem of mobile robots, first proposed by SmithSelf and Cheeseman in 1988, and is considered to be the key to realizing truly autonomous mobile robots.
The SLAM problem can be described as: the robot moves from an unknown location in an unknown environment, performs its own positioning based on position estimation and sensor data during the movement, and constructs an incremental map. In SLAM, the robot uses its own sensors to identify signatures in an unknown environment, and then estimates the global coordinates of the robot and signature based on the relative position between the robot and the signature and the reading of the odometer. This online positioning and map creation requires maintaining detailed information between the robot and the feature logo. In recent years, SLAM research has made great progress and has been applied to various environments, such as indoor environment, underwater and outdoor environment.
2. The key issue of SLAM
2.1 Map representation
At present, researchers in various countries have proposed a variety of representations, which can be roughly divided into three categories: grid representation, geometric information representation and topological representation. Each method has its own advantages and disadvantages.
The raster map representation divides the entire environment into several grids of the same size, indicating for each grid whether there are obstacles. This method was first proposed by Elfes and Moravec, and Elfes conducted further research. Its advantages are that it is easy to create and maintain, and it retains all kinds of information of the whole environment as much as possible. At the same time, the map can be used for self-positioning and path planning. The disadvantage is that when the number of grids increases (in large-scale environments or when the environment is divided in detail), the maintenance behavior of the map will become difficult, and the search space in the positioning process is large, if there is no better simplification algorithm. It is more difficult to implement real-time applications.
Geometric information map representation refers to the robot collecting information about the environment, extracting more abstract geometric features, such as line segments or curves, and using these geometric information to describe the environment. This method is more compact and facilitates position estimation and target recognition. The geometric method uses Kalman filter to obtain higher precision in the local region, and the calculation amount is small, but it is difficult to maintain accurate coordinate information in the wide-area environment. However, the extraction of geometric information requires additional processing of the 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 a topological meaning, and the nodes in the graph correspond to a feature state and location in the environment. If there is a direct connection between the nodes, it is equivalent to the arc of the connected nodes in the figure. The advantages are:
(1) Conducive to further path and mission planning,
(2) Storage and search space are relatively small, and the calculation efficiency is high.
(3) Many existing mature and efficient search and inference algorithms can be used.
The disadvantage is that the use of the topology map is based on the identification and matching of the topological nodes. For example, when there are two very similar places in the environment, the topology map method will be difficult to determine whether this is the same point.
2.2 Description of uncertain information
Establishing an environmental model by the information provided by the robot in its own unknown environment in a completely unknown environment is one of the prerequisites for the mobile robot to perform autonomous positioning and navigation. The so-called completely unknown environment means that the robot knows nothing about the environment and does not have any prior information, such as the shape of the environment, the location of obstacles, and the reference objects set by humans. In this environment, mobile robots must rely on information obtained by sensors such as odometers, sonar, laser rangefinders, vision, and more. Due to the limitations of the sensor itself, there are different degrees of uncertainty in the perceptual information. For example, the uncertainty of the laser range finder mainly comes from the measurement error of the distance and the measurement angle error caused by the rotation of the mirror and the laser scattering. As shown in Figure 1-1, the uncertainty of the perceptual information necessarily leads to the fact that the constructed environmental model is not completely accurate. Similarly, when relying on models and perceptions for decision making, there is uncertainty, that is, uncertainty. Transitive.
The methods for measuring uncertainty are probability measure, trust measure, possibility measure, fuzzy measure and evidence theory. Currently, more commonly used in AMR map construction are probability metrics and fuzzy metrics. There are two main forms of probability metrics:
(1) Describe the uncertain information by probability features such as mean, variance and covariance. The advantage of this metric is that the mean equal probability feature has a clear geometric meaning. The disadvantage is that the discrete calculation formula of the probability feature has not yet been determined;
(2) Descriptive information is used to describe uncertain information, mainly using Bayes' rule and Markov's assumption. The advantage of this measurement method is that the stochastic probability model describes the pose and environment information of the robot. The robustness is very good. The disadvantage is that the calculation of the probability model is very large and the prior probability of the model must be known in advance, which causes the actual application. difficult.
2.3 Positioning and environmental feature extraction
Mobile robot self-positioning is closely related to environmental modeling issues. The accuracy of the environmental model depends on the positioning accuracy, and the implementation of the positioning is inseparable from the environmental model. In an unknown environment, robots have no reference objects and can only rely on sensors that are not very accurate to obtain outside information, just as a blind person explores in an unfamiliar environment. In this case, positioning is more difficult. Map positioning and positioned map creation are easy to solve, but mapless positioning and unresolved map creation are like "chicken-egg" problems, and there is no way to start. The solutions to this type of problem in existing research can be divided into two categories:
1) Using a variety of internal sensors (including odometer, compass, accelerometer, etc.) carried by the user, the positioning error is reduced by the fusion of various sensing information, and the fusion algorithm used is mostly based on Kalman filtering. Since such methods do not refer to external information, the accumulation of errors after a long period of roaming will be relatively large.
2) While relying on internal sensors to estimate their own motion, use external sensors (such as laser range finder, vision, etc.) to sense the environment, analyze the acquired information, extract environmental features and save them, and compare them to the environmental characteristics in the next step. The position is corrected. But this method relies on being able to achieve environmental characteristics. The methods for extracting environmental features are:
(1) Hough transform is a type of method for detecting straight lines and other curves based on grayscale images. The method requires a cluster of pre-prepared specific curves that can be searched and generates curve parameters from a cluster of curves in the displayed grayscale image.
(2) Clustering analysis is a data detection tool that is effective for unclassified samples. At the same time, its goal is to group the objects targeted into natural categories or clusters based on similarity or distance. Clustering techniques are a more efficient technique than HoughTransform in cases where the extracted object class is unknown. Clusters should be centered on "cohesion" rather than fragmented and disjoint. Environmental characteristics are sometimes difficult to extract. For example, when the environmental characteristics are not obvious enough or the sensor information is relatively small, it is difficult to obtain environmental characteristics from a perceptual information.
2.4 Data Association
Data association is the matching of two signatures to determine if they correspond to the same object in the environment. The data association in SLAM mainly needs to complete three tasks: 1) detection of new feature flags 2) matching of feature flags 3) matching between maps. Although data association has been well solved in the fields of target tracking and sensor fusion, these methods are computationally intensive and cannot meet the real-time requirements of SLAM. The complexity of the data association between the m markers and the map with n markers is exponentially related to m. Assuming that each observed flag i has a possible match, then the m markers need to be in exponential space. In = search for the correct match. The data-associated search space 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 m, and the increase of the error will increase Ni.
2.5 cumulative error
The error in SLAM mainly comes from three aspects: 1) observation error 2) error of odometer 3) error caused by erroneous data association. When the robot is positioned in the environment of the known map, the robot can compensate the error of the odometer by observing the characteristic mark with known position. Each observation makes the position error of the robot tend to the position error of the observation error and the characteristic mark. with. However, in SLAM, since the position of the robot and the position of the characteristic mark in the environment are unknown, the observation information cannot effectively correct the error of the odometer, and the position error of the robot increases with the moving distance of the robot. The increase of the position error of the robot will lead to erroneous data association, thereby increasing the position error of the feature mark: in turn, the error of the feature mark will increase the position error of the robot. Therefore, the position error of the robot is closely related to the position error of the feature mark. The mutual influence between them makes the position estimation of the robot and the feature mark generate cumulative error, and it is difficult to ensure the consistency of the map.
3.SLAM implementation method
At present, the SLAM method can be roughly divided into two categories: 1) Probabilistic model-based methods: full SLAM based on Kalman filtering, compression filtering, FastSLAM, etc. 2) Non-probabilistic model methods: SM-SLAM, scan matching, data fusion (dataassociaTIon) Based on fuzzy logic.
3.1 Implementation method based on Kalman filter
From a statistical point of view, SLAM is a filtering problem, which is to estimate the current state of the system based on the initial state of the system and the observation information and control information (the reading of the odometer) from 0 to t. In SLAM, the state of the system = is composed of the pose r of the robot and the map information m (including the position information of each feature mark). 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 implemented by the Kalman filter. The Kalman filter-based SLAM includes two steps of system state prediction and update, and also needs to manage map information, such as the addition of new feature flags and the deletion of feature flags.
The Kalman filter assumes that the system is a linear system, but in reality the motion model and the observation model of the robot are nonlinear. Therefore, the Extended Kalman Filter is usually used, and the extended Kalman filter approximates the nonlinear model by first-order Taylor expansion. Another Kalman filter for nonlinear models is UKF (Unscented Kalman Filter). UKF uses a conditional Gaussian distribution to approximate the posterior probability distribution. Compared with EKF, UKF has higher linearization accuracy and does not require calculation. Jacobian matrix.
The Kalman filter has become the basic method for implementing SLAM. Its covariance matrix contains uncertain information about the position of the robot and the map. When the robot continuously observes the signatures in the environment, the determinant of any submatrix of the covariance matrix is ​​monotonically decreasing. Theoretically, when the number of observations tends to infinity, the covariance of each signature is only related to the covariance of the robot's starting position. The time complexity of the Kalman filter is O( ). Since the robot can only observe a few features at each moment, the time complexity of the SLAM based on the Kalman filter can be optimized to O( ), where n represents the map. The number of feature flags in .
3.2 Local Submap Method
The local submap method decomposes SLAM into small sub-problems from a spatial perspective. The sub-map method mainly needs to consider the following questions: 1) how to divide the sub-map 2) how to represent the inter-submap relationship 3) how to pass the sub-map information to the global map and whether the global map can be consistent.
The simplest partial sub-map method does not consider the interrelationship between sub-maps. The global map is divided into independent sub-maps including fixed feature markers. SLAM is implemented in each sub-map. The time complexity of this method is O(1). However, this method does not guarantee the global consistency of the map due to the loss of useful information representing the correlation between different submaps.
In this regard, Leonard et al. proposed the DSM (DecoupledStochasTIc Mapping) method. Each submap in DSM saves its own robot position estimate. When the robot enters another submap B from one submap A, it adopts the EKF-based method. The information in submap A is transmitted to submap B; B. Williams et al. propose a SLAM method based on CLSF (Constrained Local Submap Filter), which creates a submap with global coordinates known in the map. The position of the feature mark in the robot and the local submap is updated by the observation information, and the local submap information is transmitted to the global map at a certain time interval. Although experiments have shown that these two algorithms have good performance, they have not been theoretically proven to maintain map consistency. J. Guivant et al. proposed a SLAM optimization algorithm CEKF (Compressed Extended Kalman Filter) without any information loss. The CEKF divides the observed feature marks into A and B parts, and A denotes an area adjacent to the current position of the robot, which is called an active sub-map. When the robot moves in the active submap A, the position of the robot and the submap A are updated in real time using the observation information, and the influence of the observation information on the submap B is recorded by a recursive method; when the robot leaves the active submap A, the observation is performed. The information is transmitted to the submap B without loss, and the update of the submap B is realized once, and a new active submap is created. The calculation time of the method consists of two parts: SLAM in the active submap, whose time complexity is O( ), which is the number of feature markers in the active submap A; the update of the submap B, the time complexity is O ( ) is the number of signatures in map B. When the sub-map merge time interval is large, CEKF can effectively reduce the amount of SLAM calculation.
3.3 decorrelation method
Another way to reduce the complexity of SLAM is to ignore some of the smaller values ​​of the covariance matrix representing the correlation, making it a sparse matrix. However, this will also make the map inconsistent due to the loss of information. However, if you can change the representation of the covariance matrix so that many of its elements are close to zero or equal to zero, then you can safely ignore it. SLAM based on Extended InformaTIon (EIF) is based on this idea. The information-based representation of EIF EKF differs in that the form of the information is different. EIF uses the inverse matrix of the covariance matrix to characterize the uncertain information in SLAM and calls it the information matrix. The fusion of two uncorrelated information matrices can be simply expressed as the addition of two matrices. Each non-diagonal element in the information matrix represents a constraint relationship between the robot and the feature mark or between the feature mark and the feature mark. These constraint relationships can be locally updated by the relationship of the system state. This local update makes the information matrix approximate the sparse matrix, and the error caused by thinning it is small. According to this point, S. Thrun et al. proposed a SLAM method based on the sparse information filter SEIF (Sparse Extended InformaTIonFilter) and proved that the time complexity of implementing 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. First, the mean of the system state can only be approximated in a constant time. Secondly, in the EIF-based SLAM method, the addition and deletion of feature flags is inconvenient.
3.4 decomposition method (FastSLAM)
M. Montemero et al. proposed a particle filter (ParticleFilter) FastSLAM method. FastSLAM decomposes SLAM into two processes: robot positioning and position estimation of feature markers. Each particle in the particle filter represents a possible motion path of the robot, and the weight of each particle is calculated using the observation information to evaluate the quality of each path. For each particle, the motion path of the robot is determined, so the feature marks are independent of each other. The observation information of the feature mark is only related to the pose of the robot. Each particle can estimate the map by n Kalman filters. The position of the n features. Suppose that k particles are needed to implement SLAM, FastSLAM, and there are a total of kn Kalman filters. The time complexity of FastSLAM is O(kn), and the time complexity can be up to O(klog n) by optimizing the data structure of the tree. Another major advantage of the Fast2SLAM method is that the nonlinear, non-Gaussian motion model of the robot can be well represented by estimating the pose of the robot using a particle filter.
3.5 SLAM based on multi-robot collaboration
Some researchers have discussed and studied the CSLAM (Cooperative Simulation Localization and Mapping) based on multi-robot collaboration. Compared with single robots, CSLAM can improve the efficiency of map creation and improve the accuracy of positioning and map through mutual coordination and cooperation between robots and information sharing. CSLAM can be divided into two types according to the way the map is stored and processed: centralized CSLAM and distributed CSLAM. In the centralized CSLAM, there is a central processing module, each of which performs positioning and map creation in its own local map, and then transmits the information obtained in the partial map to the central module by means of a wireless communication device. This method can make full use of the redundant information between sub-maps to improve the accuracy of positioning and map creation through the matching of sub-maps. However, when the number of robots increases, the calculation amount of the central module will increase significantly, and the centralized information transmission requires a large bandwidth; the reliability of the system is also low, and 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 fuses information from other neighboring robots and its own observations into its own global map, and then peer-to-peer. The way to transfer new information to other robots. Each robot can only obtain the position information of the robot adjacent to it, and does not know the topology of the entire system. This method is very similar to distributed information fusion and can be implemented using an information filter. Since the information fusion of two uncorrelated information matrices can be realized by the addition of two matrices, the use of information filters to implement distributed CSLAM can avoid complicated calculations.
4. Research direction and development trend
In summary, in recent years, researchers in the field of robotics have done a lot of research on SLAM, especially in reducing computational complexity and improving robustness. With the deepening of research, the following aspects have become the hotspot of current SLAM research.
1. Extend the application environment of SLAM: extend the research and application in the current limited two-dimensional static environment to a dynamic three-dimensional environment that is compatible with the real environment;
2. In-depth study of SLAM based on multi-robot collaboration to improve its application level;
3. Research more effective SLAM implementation methods, introduce methods in the fields of artificial intelligence and intelligent control into SLAM, and develop more effective SLAM algorithm.
4. Study better representations of maps, especially maps in complex terrain and large environments;
5. Research better combines visual processing with other sensors to improve the accuracy of environmental feature extraction, reduce errors, and improve the accuracy of positioning and composition.
48V100Ah Home Energy Storage,Deep Cycle 48V Power Wall Battery,48V 100Ah Home Energie Storage Batterie,Wall-Mounted Home Energy Storage
Jiangsu Zhitai New Energy Technology Co.,Ltd , https://www.zt-tek.com