【论文学习】On the representation and estimation of spatial uncertainty

Randall C. Smith与Peter Chessman,发表于1987年,这篇文章被认为是最早提出SLAM问题的一篇文章。

1. 文章核心思想

当机器人从初始位置进行多次移动时,每次移动对应一个不确定的近似变换(approximate transformation, AT),每次移动后由于不确定性的累加导致不确定性越来越大。文章提出用两个步骤进行精准地估计位置:复合(Compounding)与融合(merging)。

2. 具体方法

【论文学习】On the representation and estimation of spatial uncertainty
上图示意了机器人的移动,从最初始的W坐标系开始,依次移动到L1,L2,L3,L4。实线ABCD表示相对移动,实线椭圆表示通过相对移动方法计算出的位置的不确定性;虚线EFG表示对应位置测量的对于W的相对移动,虚线椭圆表示直接测量到W的不确定性。S表示G的逆过程。

2.1 复合(Compounding)

对于图中的L2,经过了AB两次运动,定义每次运动时所在的坐标为(Xi,Yi,θi)(X_i, Y_i, \theta_i),其中角度θ\theta是当前坐标系对于上一个坐标系的旋转量。可以推导出如下递推公式:
X3=X2cosθ1Y2sin(θ1)+X1X_3=X_2 \cos \theta_1 - Y_2 \sin(\theta_1) + X_1 Y3=X2sinθ1+Y2cosθ1+Y1Y_3=X_2 \sin \theta_1 +Y_2\cos \theta_1 +Y_1 θ3=θ1+θ2\theta_3=\theta_1+\theta_2
假设小范围线性,利用泰勒展开,只保留一次项,可以得到坐标系变换
(δX3,δY3,δθ3)T=J(δX1,δY1,δθ1,δX2,δY2,δθ2)T (\delta X_3, \delta Y_3, \delta \theta_3)^T = J*(\delta X_1, \delta Y_1, \delta \theta_1, \delta X_2, \delta Y_2, \delta \theta_2)^T
其中JJ为雅克比矩阵,为分别对 X1,Y1,θ1,X2,Y2,θ2X_1, Y_1, \theta_1, X_2, Y_2, \theta_2 进行矩阵求导,从而可以写成:J=[HK]J=[H|K] 形式。
此时不确定度(方差矩阵)可以通过上式进行求2范数,即分别乘以转置,得到新的不确定度:
C3=J(C1,0;0,C2)JT=HC1HT+KC2KT C_3 = J (C_1, 0; 0, C_2) J^T = H C_1 H^T + K C_2K^T

简单解释:第一次和第二次运动没有相关性,所以是个块对角矩阵;

由此得到了方差的合并。从而能够将两次运动复合成一次。

2.2 融合(Merging)

融合是指在测得或计算出相对于W的坐标位置后时,能够测得W对于当前坐标系的位置,即知道逆过程,可以将两个进行融合成一个更为准确的表示,采用了卡尔曼滤波。
设两个表示矩阵分别为 C1,C2C_1, C_2,互为逆过程,则通过以下方式计算合并后的新的不确定性矩阵C3C_3与均值(期望位置)
K=C1[C1+C2]1K=C_1 * [C_1 + C_2]^{-1} C3=C1KC1 C_3 = C_1 - K*C_1 X3^=X1+K(X2X1) \hat{X_3}=X1+K*(X_2 - X_1)
从而融合后获得了更精确的方差矩阵,与新的位置期望。