robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Scaling SLAM Algorithms

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Covariance Intersection

SLAM algorithms that treat correlated variables as if they were independent will necessarily underestimate their covariance. Underestimated covariance can lead to divergence and make data association extremely difficult. Ulmann and Juiler present an alternative to maintaining the complete joint covariance matrix called Covariance Intersection [45]. Covariance Intersection updates the landmark position variances conservatively, in such a way that allows for all possible correlations between the observation and the landmark. Since the correlations between landmarks no longer need to be maintained, the resulting SLAM algorithm requires linear time and memory. Unfortunately, the landmark estimates tend to be extremely conservative, leading to extremely slow convergence and highly ambiguous data association.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Graphical Optimization Methods

There exists a family of off-line SLAM algorithms which treat the SLAM problems as optimization problem. These techniques exploit a similar independence as discussed in the previous chapter. By retaining all past poses, the set of constraints between different variables in the SLAM posterior can be represented by a set of sparse links. Relaxing those links using conventional optimization techniques then leads to a most likely map and a most likely robot path; assuming known correspondence. Possibly the earliest work on this paradigm is by Lu and Milios [53], which was first implemented by Gutmann [38]. Golfarelli et al. [33] established the relation of SLAM problems and spring-mass models, and Duckett et al. [24] provided a first efficient technique for solving such problems; see also subsequent work in $[48,58]$. The relation between covariances and the information matrix is discussed in [29] and [15]. Folkesson and Christensen introduced a term “Graphical SLAM” into the literature [28], for a related graphical relaxation method. A state-ofthe-art discussion of graphical optimization techniques can be found in [87]. The optimization-based graphical methods are usually offline, and as such are related to the Structure From Motion literature $[43,91]$.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Robust Data Association

In real SLAM applications, the data associations $n^{t}$ are rarely observable. However, if the uncertainty in landmark positions is low relative to the average distance between landmarks, simple heuristics for determining the correct data association can be quite effective. In particular, the most common approach to data association in SLAM is to assign each observation using a maximum likelihood rule. In other words, each observation is assigned to the landmark most likely to have generated it. If the maximum probability is below some fixed threshold, the observation is considered for addition as a new landmark.
In the case of the EKF, the probability of the observation can be written as a function of the difference between the observation $z_{t}$ and the expected observation $\hat{z}{n{t}}$. This difference is known as the “innovation.”
\begin{aligned} \hat{n}{t} &=\underset{n{t}}{\operatorname{argmax}} p\left(z_{t} \mid n_{t}, s^{t}, z^{t-1}, u^{t}, \hat{n}^{t-1}\right) \ &=\underset{n_{t}}{\operatorname{argmax}} \frac{1}{\sqrt{\left|2 \pi Z_{t}\right|}} \exp \left{-\frac{1}{2}\left(z_{t}-\hat{z}{n{t}}\right)^{T} Z_{t}^{-1}\left(z_{t}-\hat{z}{n{t}}\right)\right} \end{aligned}
This data association heuristic is often reformulated in terms of negative $\log$ likelihood, as follows:
$$\hat{n}{t}=\underset{n{t}}{\operatorname{argmin}} \ln \left|Z_{t}\right|+\left(z_{t}-\hat{z}{n{t}}\right)^{T} Z_{t}^{-1}\left(z_{t}-\hat{z}{n{t}}\right)$$
The second term of this equation is known as Mahalanobis distance [80], a distance metric normalized by the covariances of the observation and the landmark estimate. For this reason, data association using this metric is often referred to as “nearest neighbor” data association [3], or nearest neighbor gating.

Maximum likelihood data association generally works well when the correct data association is significantly more probable than the incorrect associations. However, if the uncertainty in the landmark positions is high, more than one data association will receive high probability. If a wrong data association is picked, this decision can have a catastrophic result on the accuracy of the resulting map. This kind of data association ambiguity can be induced easily if the robot’s sensors are very noisy.

One approach to this problem is to only incorporate observations that lead to unambiguous data associations (i.e. if only one data association falls within the nearest neighbor threshold). However, if the SLAM environment is noisy, a large percentage of the observations will go unprocessed. Moreover, failing to incorporate observations will lead to overestimated landmark covariances, which makes future data associations even more ambiguous.

A number of more sophisticated approaches to data association have been developed in order to deal with ambiguity in noisy environments.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Robust Data Association

\begin{aligned} \hat{n}{t} &=\underset{n{t}}{\operatorname{argmax}} p\left(z_{t} \mid n_{t}, s^{t} , z^{t-1}, u^{t}, \hat{n}^{t-1}\right) \ &=\underset{n_{t}}{\operatorname{argmax}} \frac{ 1}{\sqrt{\left|2 \pi Z_{t}\right|}} \exp \left{-\frac{1}{2}\left(z_{t}-\hat{z}{n {t}}\right)^{T} Z_{t}^{-1}\left(z_{t}-\hat{z}{n{t}}\right)\right} \end{aligned}\begin{aligned} \hat{n}{t} &=\underset{n{t}}{\operatorname{argmax}} p\left(z_{t} \mid n_{t}, s^{t} , z^{t-1}, u^{t}, \hat{n}^{t-1}\right) \ &=\underset{n_{t}}{\operatorname{argmax}} \frac{ 1}{\sqrt{\left|2 \pi Z_{t}\right|}} \exp \left{-\frac{1}{2}\left(z_{t}-\hat{z}{n {t}}\right)^{T} Z_{t}^{-1}\left(z_{t}-\hat{z}{n{t}}\right)\right} \end{aligned}

n^吨=精氨酸n吨ln⁡|从吨|+(和吨−和^n吨)吨从吨−1(和吨−和^n吨)

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Extended Kalman Filtering

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Extended Kalman Filtering

In general, the integral in the recursive update equation (2.15) cannot be computed in closed form. However, approximate SLAM algorithms have been developed by restricting the form of the SLAM posterior, the motion model, and the measurement model. Many of the original SLAM algorithms originate from a seminal paper by Smith and Cheesman [82], which proposed the use of the Extended Kalman Filter (EKF) to estimate the SLAM posterior.

The EKF represents the SLAM posterior as a high-dimensional, multivariate Gaussian parameterized by a mean $\mu_{t}$ and a covariance matrix $\Sigma_{t}$. The mean describes the most likely state of the robot and landmarks, and the covariance matrix encodes the pairwise correlations between all pairs of state variables.
\begin{aligned} p\left(s_{t}, \Theta \mid u^{t}, z^{t}, n^{t}\right) &=\mathcal{N}\left(x_{t} ; \mu_{t}, \Sigma_{t}\right) \ x_{t} &=\left{s_{t}, \theta_{1}, \ldots, \theta_{N}\right} \end{aligned}

For robots that move in a plane, the mean vector $\mu_{t}$ is of dimension $2 N+$ 3, where $N$ is the number of landmarks. Three dimensions are required to represent the pose of the robot, and two dimensions are required to specify the position of each landmark. Likewise, the covariance matrix is of size $2 N+3$ by $2 N+3$. Thus, the number of parameters needed to describe the EKF posterior is quadratic in the number of landmarks in the map.

Figure $2.3$ shows a simple example of a Kalman Filter estimating the position of a single landmark in one dimension. Figure $2.3$ (a) shows the current belief in the landmark position (the solid distribution) and a new, noisy observation of the landmark (the dashed distribution). The Kalman Filter describes the optimal procedure for combining Gaussian beliefs in linear systems. In this case, the new posterior after incorporating the dashed observation is shown as a thick line in Figure $2.3(\mathrm{~b})$.

The basic Kalman Filter algorithm is the optimal estimator for a linear system with Gaussian noise [3]. As its name suggests, the EKF is simply an extension of the basic Kalman Filter algorithm to non-linear systems. The EKF does this by replacing the motion and measurement models with nonlinear models that are “linearized” around the most-likely state of the system. In general, this approximation is good if the true models are approximately linear and if the discrete time step of the filter is small.

The motion model will be written as the non-linear function $h\left(x_{t-1}, u_{t}\right)$ with linearized noise covariance $P_{t}$. Similarly, the measurement model will be written as the non-linear function $g\left(x_{t}, n_{t}\right)$ with linearized noise covariance

$R_{t}$. The EKF update equations can be written as follows:
\begin{aligned} \mu_{t}^{-} &=h\left(\mu_{t-1}, u_{t}\right) \ \Sigma_{t}^{-} &=\Sigma_{t-1}+P_{t} \ G_{x} &=\left.\nabla_{x_{t}} g\left(x_{t}, n_{t}\right)\right|{x{t}=\mu_{t}^{-} ; n_{t}=n_{t}} \ Z_{t} &=G_{x} \Sigma_{t}^{-} G_{x}^{T}+R_{t} \quad \hat{z}{n{t}}=g\left(\mu_{t}^{-}, n_{t}\right) \ K_{t} &=\Sigma_{t}^{-} G_{x}^{T} Z_{t}^{-1} \ \mu_{t} &=\mu_{t}^{-}+K_{t}\left(z_{t}-\hat{z}{n{t}}\right) \ \Sigma_{t} &=\left(I-K_{t} G_{t}\right) \Sigma_{t}^{-} \end{aligned}
For a complete derivation of the Kalman Filter, see $[46,31,87]$, and for a gentle introduction to the use of the Kalman Filter and the EKF, see $[95]$. It is important to note that if the SLAM problem is linear and Gaussian, then the Kalman Filter is both guaranteed to converge [69] and provably optimal [3]. Real-world SLAM problems are rarely linear, yet the EKF still tends to produce very good results in general. For this reason, the EKF is often held up as the “gold standard” of comparison for online SLAM algorithms.
The EKF has two substantial disadvantages when applied to the SLAM problem: quadratic complexity and sensitivity to failures in data association. The number of mathematical operations required to incorporate a control and an observation into the filter is dominated by the final EKF update equation (2.26). In the planar case, both $K_{t}$ and $G_{t}^{T}$ are of dimension $2 N+3$ by the dimensionality of the observation (typically two). Thus, the inner product in the calculation of $\Sigma_{t}$ requires a number of calculations quadratic with the number of landmarks $N$.

The second problem with the EKF applies in situations in which the data associations $n_{t}$ are unknown. The EKF maintains a single data association hypothesis per observation, typically chosen using a maximum likelihood heuristic. If the probability of an observation coming from any of the current landmarks is too low, the possibility of a new landmark is considered. If the data association chosen by this heuristic is incorrect, the effect of incorporating this observation into the EKF can never be removed. If many observations are incorporated into the EKF with wrong data associations, the EKF will diverge. This is a well known failure mode of the EKF [18]. The following sections will describe alternative approaches to SLAM that address the issues of efficient scaling and robust data association.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Submap Methods

While the Kalman Filter is the optimal solution to the linear-Gaussian SLAM problem, it is computationally infeasible for large maps. As a result, a great

deal of SLAM research has concentrated on developing SLAM algorithms that approximate the performance of the EKF, but scale to much larger environments. The computational complexity of the EKF stems from the fact that covariance matrix $\Sigma_{t}$ represents every pairwise correlation between the state variables. Incorporating an observation of a single landmark will necessarily have an affect on every other state variable.

Typically, the observation of a single landmark will have a weak effect on the positions of distant landmarks. For this reason, many researchers have developed EKF-based SLAM algorithms that decompose the global map into smaller submaps. One set of approaches exploits the fact that the robot may linger for some period of time in a small section of the global map. Postponement $[10,47]$, and the Compressed Extended Kalman Filter (CEKF) [36], are both techniques that delay the incorporation of local information into the global map while the robot stays inside a single submap. These techniques are still optimal, in that they generate the same results as the full EKF. However, the computation required by the two algorithms is reduced by a constant factor because the full map updates are performed less frequently.

Breaking the global map into submaps can also lead to a more sparse description of the correlations between map elements. Increased sparsity can be exploited to compute more efficient sensor updates. Network Coupled Feature Maps [1], ATLAS [5], the Local Mapping Algorithm [7], and the Decoupled Stochastic Mapping [49] frameworks all consider relationships between a sparse network of submaps. When the robot moves out of one submap, it either creates a new submap or relocates itself in a previously defined submap. Each approach reduces the computational requirement of incorporating an observation to constant time, given known data association. However, these computational gains come at the cost of slowing down the overall rate of convergence. Each map has far fewer features than the overall map would have, and the effects of observations on distant landmarks may have to percolate through multiple correlation links.

Guivant and Nebot presented a similar method called Suboptimal SLAM $[36]$, in which the local maps are all computed with respect to a small number of base landmarks. Since the different constellations of landmarks are kept in different coordinate frames, they can be decorrelated more easily than if every landmark were in a single coordinate frame. The resulting algorithm produces an estimate that is an approximation to the true EKF estimate, however it requires linear time and memory.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Sparse Extended Information Filters

Another filter approach to decomposing the SLAM problem is to represent maps using potential functions between nearby landmarks, similar to Markov Random Fields [6]. One such approach is the Sparse Extended Information Filter (SEIF) proposed in [90]. SEIFs implement an alternate parameterization of the Kalman Filter, called the Information Filter. Instead of updating a covariance matrix $\Sigma$, SEIFs update $\Sigma^{-1}$, the precision matrix. This parameterization is useful because the precision matrix is sparse if correlations are maintained only between nearby landmarks. Under appropriate approximations, this technique has been shown to provide efficient updates (given known data association) with a linear memory requirement.

The Thin Junction Tree Filter (TJTF) of Paskin [73] is a SLAM algorithm based on the same principle as the SEIF. Namely, maintaining a sparse network of probabilistic constraints between state variables enables efficient inference. The TJTF represents the SLAM posterior using a graphical model called a junction tree. The size of the junction tree grows as new landmarks are added to the map, but it can be “thinned” using an operation called variable contraction. The thinning operation can be viewed as a method for making the precision matrix of a SEIF sparse, however global maps can be extracted from TJTFs without any matrix inversion. TJTFs require linear computation in general, which can be reduced to constant time with further approximation.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Extended Kalman Filtering

EKF 将 SLAM 后验表示为由均值参数化的高维、多元高斯μ吨和协方差矩阵Σ吨. 均值描述了机器人和地标最可能的状态，协方差矩阵编码了所有状态变量对之间的成对相关性。
\begin{对齐} p\left(s_{t}, \Theta \mid u^{t}, z^{t}, n^{t}\right) &=\mathcal{N}\left(x_{ t} ; \mu_{t}, \Sigma_{t}\right) \ x_{t} &=\left{s_{t}, \theta_{1}, \ldots, \theta_{N}\right} \结束{对齐}\begin{对齐} p\left(s_{t}, \Theta \mid u^{t}, z^{t}, n^{t}\right) &=\mathcal{N}\left(x_{ t} ; \mu_{t}, \Sigma_{t}\right) \ x_{t} &=\left{s_{t}, \theta_{1}, \ldots, \theta_{N}\right} \结束{对齐}

R吨. EKF 更新方程可以写成如下：
\begin{aligned} \mu_{t}^{-} &=h\left(\mu_{t-1}, u_{t}\right) \ \Sigma_ {t}^{-} &=\Sigma_{t-1}+P_{t} \ G_{x} &=\left.\nabla_{x_{t}} g\left(x_{t}, n_{ t}\右）\右| {x {t}=\mu_{t}^{-} ; n_{t}=n_{t}} \ Z_{t} &=G_{x} \Sigma_{t}^{-} G_{x}^{T}+R_{t} \quad \hat{z} {n {t}}=g\left(\mu_{t}^{-}, n_{t}\right) \ K_{t} &=\Sigma_{t}^{-} G_{x}^{ T} Z_{t}^{-1} \ \mu_{t} &=\mu_{t}^{-}+K_{t}\left(z_{t}-\hat{z} {n {t }}\right) \ \Sigma_{t} &=\left(I-K_{t} G_{t}\right) \Sigma_{t}^{-} \ end{aligned}

EKF 的第二个问题适用于数据关联的情况n吨是未知的。EKF 维护每个观察的单个数据关联假设，通常使用最大似然启发式选择。如果观测来自任何当前地标的概率太低，则考虑新地标的可能性。如果此启发式选择的数据关联不正确，则永远无法消除将此观察结果纳入 EKF 的效果。如果将许多观察结果与错误的数据关联合并到 EKF 中，则 EKF 将发散。这是 EKF [18] 众所周知的故障模式。以下部分将描述 SLAM 的替代方法，以解决有效扩展和稳健数据关联的问题。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Submap Methods

SLAM 研究的重点是开发 SLAM 算法，该算法接近 EKF 的性能，但可以扩展到更大的环境。EKF 的计算复杂性源于协方差矩阵Σ吨表示状态变量之间的每个成对相关性。结合对单个地标的观察必然会对所有其他状态变量产生影响。

Guivant 和 Nebot 提出了一种类似的方法，称为次优 SLAM[36]，其中局部地图都是针对少量基本地标计算的。由于地标的不同星座保存在不同的坐标系中，因此与每个地标都在单个坐标系中相比，它们可以更容易地去相关。结果算法产生的估计值是真实 EKF 估计值的近似值，但是它需要线性时间和内存。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Sparse Extended Information Filters

Paskin [73] 的 Thin Junction Tree Filter (TJTF) 是一种基于与 SEIF 相同原理的 SLAM 算法。也就是说，在状态变量之间维护一个稀疏的概率约束网络可以实现有效的推理。TJTF 使用称为连接树的图形模型表示 SLAM 后验。随着新地标添加到地图中，连接树的大小会增长，但可以使用称为变量收缩的操作“细化”它。细化操作可以看作是一种使 SEIF 的精度矩阵稀疏的方法，但是可以从 TJTF 中提取全局映射而无需任何矩阵求逆。TJTF 通常需要线性计算，可以通过进一步近似将其简化为恒定时间。

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|The SLAM Problem

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|SLAM Posterior

The pose of the robot at time $t$ will be denoted $s_{t}$. For a robot operating in a planar environment, this pose consists of the robot’s $x-y$ position in the plane and its heading direction. All experimental results presented in this book were generated in planar environments, however the algorithms apply equally well to three-dimensional worlds. The complete trajectory of the robot, consisting of the robot’s pose at every time step, will be written as $s^{t}$.
$$s^{t}=\left{s_{1}, s_{2}, \ldots, s_{t}\right}$$
We shall further assume that the robot’s environment can be modeled as a set of $N$ immobile, point landmarks. Point landmarks are commonly used to represent the locations of features extracted from sensor data, such as geometric features in a laser scan or distinctive visual features in a camera image. The set of $N$ landmark locations will be written $\left{\theta_{1}, \ldots, \theta_{N}\right}$. For notational simplicity, the entire map will be written as $\Theta$.

As the robot moves through the environment, it collects relative information about its own motion. This information can be generated using odometers attached to the wheels of the robot, inertial navigation units, or simply by observing the control commands executed by the robot. Regardless of origin, any measurement of the robot’s motion will be referred to generically as a control. The control at time $t$ will be written $u_{t}$. The set of all controls executed by the robot will be written $u^{t}$.
$$u^{t}=\left{u_{1}, u_{2}, \ldots, u_{t}\right}$$
As the robot moves through its environment, it observes nearby landmarks. In the most common formulation of the planar SLAM problem, the robot observes both the range and bearing to nearby obstacles. The observation at time $t$ will be written $z_{t}$. The set of all observations collected by the robot will be written $z^{t}$.
$$z^{t}=\left{z_{1}, z_{2}, \ldots, z_{t}\right}$$

It is commonly assumed in the SLAM literature that sensor measurements can be decomposed into information about individual landmarks, such that each landmark observation can be incorporated independently from the other measurements. This is a realistic assumption in virtually all successful SLAM implementations, where landmark features are extracted one-by-one from raw sensor data. Thus, we will assume that each observation provides information about the location of exactly one landmark $\theta_{n}$ relative to the robot’s current pose $s_{t}$. The variable $n$ represents the identity of the landmark being observed. In practice, the identities of landmarks usually can not be observed, as many landmarks may look alike. The identity of the landmark corresponding to the observation $z_{t}$ will be written as $n_{t}$, where $n_{t} \in{1, \ldots, N}$. For example, $n_{8}=3$ means that at time $t=8$ the robot observed the third landmark. Landmark identities are commonly referred to as “data associations” or “correspondences.” The set of all data associations will be written $n^{t}$.
$$n^{t}=\left{n_{1}, n_{2}, \ldots, n_{t}\right}$$
Again for simplicity, we will assume that the robot receives exactly one measurement $z_{t}$ and executes exactly one control $u_{t}$ per time step. Multiple observations per time step can be processed sequentially, but this leads to a more cumbersome notation.

Using the notation defined above, the primary goal of SLAM is to recover the best estimate of the robot pose $s_{t}$ and the map $\Theta$, given the set of noisy observations $z^{t}$ and controls $u^{t}$. In probabilistic terms, this is expressed by the following posterior:
$$p\left(s_{t}, \Theta \mid z^{t}, u^{t}\right)$$
If the set of data associations $n^{t}$ is also given, the posterior can be rewritten as:
$$p\left(s_{t}, \Theta \mid z^{t}, u^{t}, n^{t}\right)$$

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|SLAM as a Markov Chain

The SLAM problem can be described best as a probabilistic Markov chain. A graphical depiction of this Markov chain is shown in Figure 2.2. The current pose of the robot $s_{t}$ can be written as a probabilistic function of the pose at the previous time step $s_{t-1}$ and the control $u_{t}$ executed by the robot. This function is referred to as the motion model because it describes how controls drive the motion of the robot. Additionally, the motion model describes how noise in the controls injects uncertainty into the robot’s pose estimate. The motion model is written as:
$$p\left(s_{t} \mid s_{t-1}, u_{t}\right)$$
Sensor observations gathered by the robot are also governed by a probabilistic function, commonly referred to as the measurement model. The observation $z_{t}$

is a function of the observed landmark $\theta_{n_{t}}$ and the pose of the robot $s_{t}$. The measurement model describes the physics and the error model of the robot’s sensor. The measurement model is written as:
$$p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right)$$
Using the motion model and the measurement model, the SLAM posterior at time $t$ can be computed recursively as function of the posterior at time $t-1$. This recursive update rule, known as the Bayes filter for SLAM, is the basis for the majority of online SLAM algorithms.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Bayes Filter Derivation

The Bayes Filter can be derived from the SLAM posterior as follows. First, the posterior (2.6) is rewritten using Bayes Rule.
$$p\left(s_{t}, \Theta \mid z^{t}, u^{t}, n^{t}\right)=\eta p\left(z_{t} \mid s_{t}, \Theta, z^{t-1}, u^{t}, n^{t}\right) p\left(s_{t}, \Theta \mid z^{t-1}, u^{t}, n^{t}\right)$$
The denominator from Bayes rule is a normalizing constant and is written as $\eta$. Next, we exploit the fact that $z_{t}$ is solely a function of the pose of the robot $s_{t}$, the map $\Theta$, and the latest data association $n_{t}$, previously described as the measurement model. Hence the posterior becomes:
$$=\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) p\left(s_{t}, \Theta \mid z^{t-1}, u^{t}, n^{t}\right)$$
Now we use the Theorem of Total Probability to condition the rightmost term of $(2.10)$ on the pose of the robot at time $t-1$.
$$=\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) \int p\left(s_{t}, \Theta \mid s_{t-1}, z^{t-1}, u^{t}, n^{t}\right) p\left(s_{t-1} \mid z^{t-1}, u^{t}, n^{t}\right) d s_{t-1}$$

The leftmost term inside the integral can be expanded using the definition of conditional probability.
\begin{aligned} &=\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) \ &\int p\left(s_{t} \mid \Theta, s_{t-1}, z^{t-1}, u^{t}, n^{t}\right) p\left(\Theta \mid s_{t-1}, z^{t-1}, u^{t}, n^{t}\right) p\left(s_{t-1} \mid z^{t-1}, u^{t}, n^{t}\right) d s_{t-1} \end{aligned}
The first term inside the integral can now be simplified by noting that $s_{t}$ is only a function of $s_{t-1}$ and $u_{t}$, previously described as the motion model.
\begin{aligned} &=\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) \ &\qquad \int p\left(s_{t} \mid s_{t-1}, u_{t}\right) p\left(\Theta \mid s_{t-1}, z^{t-1}, u^{t}, n^{t}\right) p\left(s_{t-1} \mid z^{t-1}, u^{t}, n^{t}\right) d s_{t-1} \end{aligned}
At this point, the two rightmost terms in the integral can be combined.
$$=\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) \int p\left(s_{t} \mid s_{t-1}, u_{t}\right) p\left(s_{t-1}, \Theta \mid z^{t-1}, u^{t}, n^{t}\right) d s_{t-1}$$
Since the current pose $u_{t}$ and data association $n_{t}$ provide no new information about $s_{t-1}$ or $\Theta$ without the latest observation $z_{t}$, they can be dropped from the rightmost term of the integral. The result is a recursive formula for computing the SLAM posterior at time $t$ given the SLAM posterior at time $t-1$, the motion model $p\left(s_{t} \mid s_{t-1}, u_{t}\right)$, and the measurement model $p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right)$.
\begin{aligned} &p\left(s_{t}, \Theta \mid z^{t}, u^{t}, n^{t}\right)= \ &\eta p\left(z_{t} \mid s_{t}, \Theta, n_{t}\right) \int p\left(s_{t} \mid s_{t-1}, u_{t}\right) p\left(s_{t-1}, \Theta \mid z^{t-1}, u^{t-1}, n^{t-1}\right) d s_{t-1} \end{aligned}

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|SLAM Posterior

s^{t}=\left{s_{1}, s_{2}, \ldots, s_{t}\right}s^{t}=\left{s_{1}, s_{2}, \ldots, s_{t}\right}

u^{t}=\left{u_{1}, u_{2}, \ldots, u_{t}\right}u^{t}=\left{u_{1}, u_{2}, \ldots, u_{t}\right}

z^{t}=\left{z_{1}, z_{2}, \ldots, z_{t}\right}z^{t}=\left{z_{1}, z_{2}, \ldots, z_{t}\right}

n^{t}=\left{n_{1}, n_{2}, \ldots, n_{t}\right}n^{t}=\left{n_{1}, n_{2}, \ldots, n_{t}\right}

p(s吨,θ∣和吨,在吨)

p(s吨,θ∣和吨,在吨,n吨)

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|SLAM as a Markov Chain

SLAM 问题可以最好地描述为概率马尔可夫链。该马尔可夫链的图形描述如图 2.2 所示。机器人当前位姿s吨可以写成前一个时间步的位姿的概率函数s吨−1和控制在吨由机器人执行。这个函数被称为运动模型，因为它描述了控制如何驱动机器人的运动。此外，运动模型描述了控制中的噪声如何将不确定性注入到机器人的姿态估计中。运动模型写为：
p(s吨∣s吨−1,在吨)

p(和吨∣s吨,θ,n吨)

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Bayes Filter Derivation

p(s吨,θ∣和吨,在吨,n吨)=这p(和吨∣s吨,θ,和吨−1,在吨,n吨)p(s吨,θ∣和吨−1,在吨,n吨)

=这p(和吨∣s吨,θ,n吨)p(s吨,θ∣和吨−1,在吨,n吨)

=这p(和吨∣s吨,θ,n吨)∫p(s吨,θ∣s吨−1,和吨−1,在吨,n吨)p(s吨−1∣和吨−1,在吨,n吨)ds吨−1

=这p(和吨∣s吨,θ,n吨) ∫p(s吨∣θ,s吨−1,和吨−1,在吨,n吨)p(θ∣s吨−1,和吨−1,在吨,n吨)p(s吨−1∣和吨−1,在吨,n吨)ds吨−1

=这p(和吨∣s吨,θ,n吨) ∫p(s吨∣s吨−1,在吨)p(θ∣s吨−1,和吨−1,在吨,n吨)p(s吨−1∣和吨−1,在吨,n吨)ds吨−1

=这p(和吨∣s吨,θ,n吨)∫p(s吨∣s吨−1,在吨)p(s吨−1,θ∣和吨−1,在吨,n吨)ds吨−1

p(s吨,θ∣和吨,在吨,n吨)= 这p(和吨∣s吨,θ,n吨)∫p(s吨∣s吨−1,在吨)p(s吨−1,θ∣和吨−1,在吨−1,n吨−1)ds吨−1

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Multi-hypothesis Data Association

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Multi-hypothesis Data Association

Sampling over robot paths also has an important repercussion for determining the correct data associations. Since each FastSLAM particle represents a specific robot path, the same data association need not be applied to every particle. Data association decisions in FastSLAM can be made on a perparticle basis. Particles that predict the correct data association will tend to receive higher weights and be more likely to be resampled in the future. Particles that pick incorrect data associations will receive low weights and be removed. Sampling over data associations enables FastSLAM to revise past data associations as new evidence becomes available.

This same process also applies to the addition and removal of landmarks. Often, per-particle data association will lead to situations in which the particles build maps with differing numbers of landmarks. While this complicates the issue of computing the most probable map, it allows FastSLAM to remove spurious landmarks when more evidence is accumulated. If an observation leads to the creation a new landmark in a particular particle, but further observations suggest that the observation belonged to an existing landmark, then the particle will receive a low weight. This landmark will be removed from the filter when the improbable particle is not replicated in future resamplings. This process is similar in spirit to the “candidate lists” employed by EKF SLAM algorithms to test the stability of new landmarks $[19,50]$. Unlike candidate lists, however, landmark testing in FastSLAM happens at no extra cost as a result of sampling over data associations.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Outline

This book presents an overview of the FastSLAM algorithm. Quantitative experiments will compare the performance of FastSLAM and the EKF on a variety of simulated and real world data sets. In Chapter 2 , we formulate the SLAM problem and describe prior work in the field, concentrating primarily on EKF-based approaches. In Chapter 3, we describe the simplest version of the FastSLAM algorithm given both known and unknown data association. This version, which is called FastSLAM 1.0, is the simplest FastSLAM algorithm to implement and works well in typical SLAM environments. In Chapter 4 , we present an improved version of the FastSLAM algorithm, called FastSLAM $2.0$, that produces better results than the original algorithm. FastSLAM $2.0$ incorporates the current observation into the proposal distribution of the particle filter and consequently produces more accurate results when motion noise is high relative to sensor noise. Chapter 4 also contains a proof of convergence for FastSLAM $2.0$ in linear-Gaussian worlds. In Chapter 5 , we describe a dynamic tracking problem that shares the same structure as the SLAM problem. We will show how a variation of the FastSLAM algorithm can be used to track dynamic objects from an imprecisely localized robot.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Problem Definition

Consider a mobile robot moving through an unknown, static environment. The robot executes controls and collects observations of features in the world. Both the controls and the observations are corrupted by noise. Simultaneous Localization and Mapping (SLAM) is the process of recovering a map of the environment and the path of the robot from a set of noisy controls and observations.

If the path of the robot were known with certainty, then mapping would be a straightforward problem. The positions of objects in the robot’s environment could be estimated using independent filters. However, when the path of the robot is unknown, error in the robot’s path correlates errors in the map. As a result, the state of the robot and the map must be estimated simultaneously.
The correlation between robot pose error and map error can be seen graphically in Figure 2.1(a). A robot is moving along the path specified by the dashed line, observing nearby landmarks, drawn as circles. The shaded ellipses represent the uncertainty in the pose of the robot, drawn over time. As a result of control error, the robot’s pose becomes more uncertain as the robot moves. The estimates of the landmark positions are shown as unshaded ellipses. Clearly, as the robot’s pose becomes more uncertain, the uncertainty in the estimated positions of newly observed landmarks also increases.

In Figure 2.1(b), the robot completes the loop and revisits a previously observed landmark. Since the position of this first landmark is known with high accuracy, the uncertainty in the robot’s pose estimate will decrease significantly. This newly discovered information about the robot’s pose increases

the certainty with which past poses of the robot are known as well. This, in turn, reduces the uncertainty of landmarks previously observed by the robot. The reader may notice that the shaded ellipses before the loop closure in Figure $2.1$ (b) do not shrink because they depict a time series of the robot’s pose uncertainty and not revised estimates of the robot’s past poses.

The effect of the observation on all of the landmarks around the loop is a consequence of the correlated nature of the SLAM problem. Errors in the map are correlated through errors in the robot’s path. Any observation that provides information about the pose of the robot, will necessarily provide information about all previously observed landmarks.

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Structure and Sparsity in SLAM

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Structure and Sparsity in SLAM

At any given time, the observations and controls accumulated by the robot constrain only a small subset of the state variables. This sparsity in the dependencies between the data and the state variables can be exploited to compute the SLAM posterior in a more efficient manner. For example, two landmarks separated by a large distance are often weakly correlated. Moreover, nearby pairs of distantly separated landmarks will have very similar correlations. A number of approximate EKF SLAM algorithms exploit these properties by breaking the complete map into a set of smaller submaps. Thus, the large EKF can be decomposed into a number of loosely coupled, smaller EKFs. This approach has resulted in a number of efficient, approximate EKF algorithms that require linear time [36], or even constant time $[1,5,7,49]$ to incorporate sensor observations (given known data association).

While spatially factoring the SLAM problem does lead to efficient EKFbased algorithms, the new algorithms face the same difficulties with data association as the original EKF algorithm. This book presents an alternative solution to the SLAM problem which exploits sparsity in the dependencies between state variables over time. In addition to enabling efficient computation of the SLAM posterior, this approach can maintain multiple data association hypotheses. The result is a SLAM algorithm that can be employed in large environments with significant data association ambiguity.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|FastSLAM

As shown in Section 1.2, correlations between elements of the map only arise through robot pose uncertainty. Thus, if the robot’s true path were known, the landmark positions could be estimated independently. Stated probabilistically, knowledge of the robot’s true path renders estimates of landmark positions to be conditionally independent.

Proof of this statement can be seen by drawing the SLAM problem as a Dynamic Bayes Network, as shown in Figure 1.5. The robot’s pose at time $t$ is denoted $s_{t}$. This pose is a probabilistic function of the previous pose of the robot $s_{t-1}$ and the control $u_{t}$ executed by the robot. The observation at time $t$, written $z_{t}$, is likewise determined by the pose $s_{t}$ and the landmark being observed $\theta_{n_{t}}$. In the scenario depicted in Figure $1.5$, the robot observes landmark 1 at $t=1$ and $t=3$, and observes landmark 2 at $t=2$. The gray region highlights the complete path of the robot $s_{1} \ldots s_{t}$. It is apparent from this network that this path “d-separates” [80] the nodes representing the two landmarks. In other words, if the true path of the robot is known, no information about the location of the first landmark can tell us anything about the location of the second landmark.

As a result of this relationship, the SLAM posterior given known data association (1.2) can be rewritten as the following product:
$$p\left(s^{t}, \theta \mid z^{t}, u^{t}, n^{t}\right)=\underbrace{p\left(s^{t} \mid z^{t}, u^{t}, n^{t}\right)}{\text {path posterior }} \underbrace{\prod{n=1}^{N} p\left(\theta_{n} \mid s^{t}, z^{t}, u^{t}, n^{t}\right)}_{\text {landmark estimators }}$$
This factorization states that the full SLAM posterior can be decomposed into a product of $N+1$ recursive estimators: one estimator over robot paths, and $N$ independent estimators over landmark positions, each conditioned on the path estimate. This factorization was first presented by Murphy [66]. It is important to note that this factorization is exact, not approximate. It is a result of fundamental structure in the SLAM problem. A complete proof of this factorization will be given in Chapter 3 .

The factored posterior (1.4) can be approximated efficiently using a particle filter $[20,51,75]$, with each particle representing a sample path of the robot. Attached to each particle are $N$ independent landmark estimators (implemented as EKFs), one for each landmark in the map. Since the landmark filters estimate the positions of individual landmarks, each filter is low dimensional. In total there are $N, M$ Kalman filters. The resulting algorithm for updating this particle filter will be called FastSLAM. Readers familiar with the statistical literature should note that FastSLAM is an instance of the Rao-Blackwellized Particle Filter [23], by virtue of the fact that it combines a sampled representation with closed form calculations of certain marginals.
There are four steps to recursively updating the particle filter given a new control and observation, as shown in Table 1.1. The first step is to propose a new robot pose for each particle that is consistent with the previous pose and the new control. Next, the landmark filter in each particle that corresponds with the latest observation is updated using to the standard EKF update equations. Each particle is given an importance weight, and a new set of samples is drawn according to these weights. This importance resampling step corrects for the fact that the proposal distribution and the posterior distribution are not the same. This update procedure converges asymptotically to the true posterior distribution as the number of samples goes to infinity. In practice, FastSLAM generates a good reconstruction of the posterior with a relatively small number of particles (i.e. $M=100$ ).

Initially, factoring the SLAM posterior using the robot’s path may seem like a poor choice because the length of the path grows over time. Thus, one might expect the dimensionality of a filter estimating the posterior over robot paths to also grow over time. However, this is not the case for FastSLAM. As will be shown in Chapter 3, the landmark update equations and the importance weights only depend on the latest pose of the robot $s_{t}$, allowing us to silently forget the rest of the robot’s path. As a result, each FastSLAM particle only needs to maintain an estimate of the current pose of the robot. Thus the dimensionality of the particle filter stays fixed over time.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Logarithmic Complexity

FastSLAM has two main advantages over the EKF. First, by factoring the estimation of the map into in separate landmark estimators conditioned on the robot path posterior, FastSLAM is able to compute the full SLAM posterior in an efficient manner. The motion update, the landmark updates, and the computation of the importance weights can all be accomplished in constant time per particle. The resampling step, if implemented naively, can be performed in linear time. However, this step can be implemented in logarithmic time by organizing each particle as a binary tree of landmark estimators, instead of an array. The $\log (N)$ FastSLAM algorithm can be used to build a map with over a million landmarks using a standard desktop computer.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|FastSLAM

$$p\left(s^{t}, \theta \mid z^{t}, u^{ t}, n^{t}\right)=\underbrace{p\left(s^{t} \mid z^{t}, u^{t}, n^{t}\right)} {\text {路径后 }} \underbrace{\prod {n=1}^{N} p\left(\theta_{n} \mid s^{t}, z^{t}, u^{t}, n^ {t}\right)}_{\text {landmark estimators }}$$

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|The Extended Kalman Filter

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|The Extended Kalman Filter

The dominant approach to the SLAM problem was introduced in a seminal paper by Smith and Cheeseman $[82]$ in 1986 , and first developed into an implemented system by Moutarlier and Chatila $[64,65]$. This approach uses the Extended Kalman Filter (EKF) to estimate the posterior over robot pose and maps. The EKF approximates the SLAM posterior as a high-dimensional Gaussian over all features in the map and the robot pose. The off-diagonal elements of the covariance matrix of this multivariate Gaussian encode the correlations between pairs of state variables. By estimating the covariance between all pairs of state variables, the EKF is expressive enough to represent the correlated errors that characterize the SLAM problem. An example of the EKF run on simulated data is shown in Figure 1.4(a). The corresponding covariance matrix, drawn as a correlation matrix, is shown in Figure 1.4(b). The darker the matrix element, the higher the correlation between the state variables corresponding to the element’s row and column. While the EKF has become the dominant approach to SLAM, it suffers from two problems that complicate its application in large, real-world environments: quadratic complexity and sensitivity to failures in data association.

The first drawback of the EKF as a solution to the SLAM problem is computational complexity. Both the computation time and memory required by the

EKF scale quadratically with the number of landmarks in the map [70], limiting its application to relatively small maps. Quadratic complexity is a consequence of the Gaussian representation employed by the EKF. The uncertainty of the SLAM posterior is represented as a covariance matrix encoding the correlations between all possible pairs of state variables. In a two-dimensional world, the covariance matrix contains $2 N+3$ by $2 N+3$ entries, where $N$ is the total number of landmarks in the map. Thus, it is easy to see how the memory required to store this covariance matrix grows with $N^{2}$.

Becanse the correlations between all pairs of state variables are maintained, any sensor observation incorporated into the EKF will necessarily affect all of the other state variables. To incorporate a sensor observation, the EKF algorithm must perform an operation on every element in the covariance matrix, which requires quadratic time.

In practice, the full EKF is rarely applied to the SLAM problem. The sensor update step can be made computationally tractable by using any of a variety of approximate EKF methods. These approximations will be discussed further in Section 1.5.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Single-Hypothesis Data Association

The second problem with EKF-based SLAM approaches is related to data association, the mapping between observations and landmarks. The SLAM problem is most commonly formulated given known data association, as in

(1.2). In the real world, the associations between observations and landmarks are hidden variables that must be determined in order to estimate the robot pose and the landmar.

The standard approach to data association in EKFs is to assign every observation to a landmark using a maximum likelihood rule; i.e. every observation is assigned to the landmark most likely to have generated it. If the probability of an observation belonging to an existing landmark is too low, it is considered for inclusion as a new landmark. Since the EKF has no mechanism for representing uncertainty over data associations, the effect of incorporating an observation given the wrong data association can never be undone. If a large number of readings are incorporated incorrectly into the EKF, the filter will diverge. Sensitivity to incorrect data association is a well known failure mode of the EKF [18].

The accuracy of data association in the EKF can be improved substantially by considering the associations of multiple observations simultaneously, at some computational cost $[1,68]$. However, this does not address the underlying data association problem with the EKF; namely that it chooses a single data association hypothesis at every time step. The correct association for a given observation is not always the most probable choice when it is first considered. In fact, the true association for an observation may initially appear to be quite improbable. Future observations may be required to provide enough information to clearly identify the association as correct. Any EKF algorithm that maintains a single data association per time step, will inevitably pick wrong associations. If these associations can never be revised, repeated mistakes can cause the filter to diverge.

Multiple data association hypotheses can always be considered by maintaining multiple copies of the EKF, one for each probable data association hypothesis $[77]$. However, the computational and memory requirements of the EKF make this approach infeasible for the SLAM problem.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|The Extended Kalman Filter

Smith 和 Cheeseman 在一篇开创性论文中介绍了 SLAM 问题的主要方法[82]1986 年，由 Moutarlier 和 Chatila 首次开发成一个已实现的系统[64,65]. 这种方法使用扩展卡尔曼滤波器 (EKF) 来估计机器人姿态和地图的后验。EKF 将 SLAM 后验近似为地图中所有特征和机器人姿态的高维高斯。该多元高斯的协方差矩阵的非对角元素对状态变量对之间的相关性进行编码。通过估计所有状态变量对之间的协方差，EKF 的表达能力足以表示表征 SLAM 问题的相关误差。图 1.4(a) 显示了在模拟数据上运行 EKF 的示例。绘制为相关矩阵的相应协方差矩阵如图 1.4(b) 所示。矩阵元素越黑，表示该元素所在行列对应的状态变量之间的相关性越高。

EKF 作为 SLAM 问题的解决方案的第一个缺点是计算复杂性。所需的计算时间和内存

EKF 与地图中地标的数量成二次方[70]，将其应用限制在相对较小的地图上。二次复杂度是 EKF 采用的高斯表示的结果。SLAM 后验的不确定性表示为一个协方差矩阵，该矩阵编码所有可能的状态变量对之间的相关性。在二维世界中，协方差矩阵包含2ñ+3经过2ñ+3条目，其中ñ是地图中地标的总数。因此，很容易看出存储这个协方差矩阵所需的内存是如何增长的ñ2.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Single-Hypothesis Data Association

(1.2)。在现实世界中，观察和地标之间的关联是隐藏变量，必须确定这些变量才能估计机器人姿势和地标。

EKF 中数据关联的标准方法是使用最大似然规则将每个观察值分配给一个界标；即，每个观察都分配给最有可能产生它的地标。如果观测属于现有地标的概率太低，则考虑将其包含为新地标。由于 EKF 没有表示数据关联不确定性的机制，因此在给定错误数据关联的情况下合并观察的效果永远无法消除。如果大量读数被错误地合并到 EKF 中，过滤器就会发散。对不正确数据关联的敏感性是 EKF [18] 众所周知的故障模式。

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Applications of SLAM

statistics-lab™ 为您的留学生涯保驾护航 在代写SLAM定位算法方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写SLAM定位算法代写方面经验极为丰富，各种代写SLAM定位算法相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Applications of SLAM

The problem of Simultaneous Localization and Mapping, or SLAM, has attracted immense attention in the robotics literature. SLAM addresses the problem of a mobile robot moving through an environment of which no map is available a priori. The robot makes relative observations of its ego-motion and of features in its environment, both corrupted by noise. The goal of SLAM is to reconstruct a map of the world and the path taken by the robot. SLAM is considered by many to be a key prerequisite to truly autonomous robots [85].
If the true map of the environment were available, estimating the path of the robot would be a straightforward localization problem [16]. Similarly, if the true path of the robot were known, building a map would be a relatively simple task $[63,86]$. However, when both the path of the robot and the map are unknown, localization and mapping must be considered concurrently-hence the name Simultaneous Localization and Mapping.

SLAM is an essential capability for mobile robots traveling in unknown environments where globally accurate position data (e.g. GPS) is not available. In particular, mobile robots have shown significant promise for remote exploration, going places that are too distant [34], too dangerous [88], or simply too costly to allow human access. If robots are to operate autonomously in extreme environments undersea, underground, and on the surfaces of other planets, they must be capable of building maps and navigating reliably according to these maps. Even in benign environments, such as the interiors of buildings, accurate, prior maps are often difficult to acquire. The capability to map an unknown environment allows a robot to be deployed with minimal infrastructure. This is especially important if the environment changes over time.

The maps produced by SLAM algorithms typically serve as the basis for motion planning and exploration. However, the maps often have value in their own right. In July of 2002 , nine miners in the Quecreek Mine in Sommerset, Pennsylvania were trapped underground for three and a half days after accidentally drilling into a nearby abandoned mine. A subsequent investigation attributed the cause of the accident to inaccurate maps [32]. Since the accident, mobile robots and SLAM have been investigated as possible technologies for acquiring accurate maps of abandoned mines. One such robot, shown in Figure $1.1(\mathrm{~b})$, is capable of building $3 \mathrm{D}$ reconstructions of the interior of abandoned mines using SLAM technology [88].

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Joint Estimation

The chicken-or-egg relationship between localization and mapping is a consequence of how errors in the robot’s sensor readings are corrupted by error in the robot’s motion. As the robot moves, its pose estimate is corrupted by motion noise. The perceived locations of objects in the world are, in turn, corrupted by both measurement noise and the error in the estimated pose of the robot. Unlike measurement noise, however, error in the robot’s pose will have a systematic effect on the error in the map. In general, this effect can be stated more plainly; error in the robot’s path correlates errors in the map. As a result, the true map cannot be estimated without also estimating the true path of the robot. The relationship between localization and mapping was first identified by Smith and Cheeseman $[82]$ in their seminal paper on SLAM in $1986 .$

Figure $1.2$ shows a set of laser range scans collected by a mobile robot moving through a typical indoor environment. The robot generates estimates of its position using odometers attached to each of its wheels. In Figure 1.2(a), the laser scans are plotted with respect to the estimated position of the robot. Clearly, as error accumulates in the robot’s odometry, the map becomes increasingly inaccurate. Figure $1.2(\mathrm{~b})$ shows the laser readings plotted according to the path of the robot reconstructed by a SLAM algorithm.

Although the relationship between robot path error and map error does make the SLAM problem harder to solve in principle, one can exploit this relationship to factor the SLAM problem into a set of much smaller problems. Each of these smaller problems can be solved efficiently.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Posterior Estimation

Two types of information are available to the robot over time: controls and observations. Controls are noisy predictions of the robot’s motion, while observations are noisy measurements of features in the robot’s environment. Each control or observation, coupled with an appropriate noise model, can be thought of as a probabilistic constraint. Each control probabilistically constrains two successive poses of the robot. Observations, on the other hand, constrain the relative positions of the robot and objects in the map. When previously observed map features are revisited, the resulting constraints can be used to update not only the current map feature and robot pose, but also correct map features that were observed in the past. An example of a network of constraints imposed by controls and observations is shown in Figure 1.3.
Initially, the constraints imposed by controls and observations may be relatively weak. However, as map features are repeatedly observed, the constraints will become increasingly rigid. In the limit of an infinite number of observations and controls, the positions of all map features will become fully correlated [19]. The primary goal of SLAM is to estimate this true map and the true pose of the robot, given the currently available set of observations and controls.

One approach to the SLAM problem would be to estimate the most likely robot pose and map using a batch estimation algorithm similar to those used in the Structure From Motion literature $[43,91]$. While extremely powerful, these techniques operate on the complete set of observations and controls, which grows without bound over time. As a consequence, these algorithms are not appropriate for online operation. Furthermore, these algorithms generally do not estimate the certainty with which different sections of the map are known, an important consideration for a robot exploring an unknown environment.

The most popular online solutions to the SLAM problem attempt to estimate the posterior probability distribution over all possible maps $\Theta$ and robot poses $s_{t}$ conditioned on the full set of controls $u^{t}$ and observations $z^{t}$ at time $t$. The observation at time $t$ will be written as $z_{t}$, while the set of all observations up to time $t$ will be written $z^{t}$. Similarly, the control at time $t$ will be written $u_{t}$, and the set of all controls up to time $t$ will be written $u^{t}$.
Using this notation, the joint posterior distribution over maps and robot poses can be written as:
$$p\left(s_{t}, \Theta \mid z^{t}, u^{t}\right)$$
This distribution is referred to as the SLAM posterior. At first glace, posterior estimation may seem even less feasible than the batch estimation approach. However, by making judicious assumptions about how the state of the world evolves, the SLAM posterior can be computed efficiently. Posterior estimation has several advantages over solutions that consider only the most likely state of the world. First, considering a distribution of possible solutions leads to more robust algorithms in noisy environments. Second, uncertainty can be used to compare the information conveyed by different components of the solution. One section of the map may be very uncertain, while other parts of the map are well known.

Any parameterized model can be chosen for the map $\Theta$, however it is typically represented as a set of point features, or “landmarks” [19]. In a real implementation, landmarks may correspond to the locations of features extracted from sensors, such as cameras, sonars, or laser range-finder s. Throughout most of this book we assume the point landmark model, though other representations can be used. Higher order geometric features, such as line segments [70], have also been used to represent maps in SLAM.

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Applications of SLAM

SLAM 是移动机器人在无法获得全球准确位置数据（例如 GPS）的未知环境中行驶的基本能力。特别是，移动机器人在远程探索、去太远的地方 [34]、太危险的地方 [88] 或太昂贵而无法让人类进入的地方已经显示出巨大的希望。如果机器人要在海底、地下和其他行星表面的极端环境中自主运行，它们必须能够构建地图并根据这些地图可靠地导航。即使在良性环境中，例如建筑物内部，通常也很难获得准确的先验地图。映射未知环境的能力允许以最少的基础设施部署机器人。如果环境随时间发生变化，这一点尤其重要。

SLAM 算法生成的地图通常用作运动规划和探索的基础。然而，这些地图往往本身就具有价值。2002 年 7 月，宾夕法尼亚州萨默塞特的 Quecreek 矿区的 9 名矿工在意外钻入附近废弃矿井后被困在地下三天半。随后的调查将事故原因归咎于地图不准确[32]。自事故发生以来，移动机器人和 SLAM 已被研究作为获取废弃矿山准确地图的可能技术。一种这样的机器人，如图所示1.1( b), 能够建造3D使用 SLAM 技术重建废弃矿井内部 [88]。

robotics代写|SLAM定位算法代写Simultaneous Localization and Mapping|Posterior Estimation

SLAM 问题最流行的在线解决方案试图估计所有可能地图的后验概率分布θ和机器人姿势s吨以全套控制为条件在吨和观察和吨有时吨. 当时的观察吨将被写为和吨, 而到时间的所有观测值的集合吨会写和吨. 同样，控制时间吨会写在吨, 以及截至时间的所有控件的集合吨会写在吨.

p(s吨,θ∣和吨,在吨)

有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。