信息矩阵在图优化slam里面的作用

信息矩阵在图优化slam里面的作用_第1张图片

信息矩阵是一个scalar 表达不确定性

信息矩阵在图优化slam里面的作用_第2张图片

但是信息矩阵是协方差矩阵的一个逆矩阵,这个怎么理解呢?没什么意义,香农形式,这里是推导出来的,只是换了一种数学表达形式,那为什么需要信息矩阵呢?

信息矩阵在图优化slam里面的作用_第3张图片

因为信息矩阵在计算条件概率分布明显比协方差矩阵要方便,显然,协方差矩阵要求逆矩阵,所以时间复杂度是O(n^3). 之后我们可以在图优化slam中可以看到,因为图优化优化后的解是无穷多个的,比如说x1->x2->x3, 每个xi相隔1m这是我们实际观测出来的,优化后,我们会得出永远得不出x1 x2 x3的唯一解,因为他们有可能123 可能是234 blabla 但是如果我们提供固定值比如说x2 坐标是3那么解那么就有唯一解234,提供固定值x2这件事情其实就是个先验信息,提供先验信息,求分布,那就是条件分布,也就是这里我们要用到信息矩阵。

信息矩阵在图优化slam里面的作用_第4张图片

可以看到求解least squares problem这里我们用到了information matrix. 

然后这里课上有个同学说出了我比较疑惑的一个问题,为什么我们需要information matrix 去表征这个uncertainty呢?或者说信息矩阵如何表征uncertainty呢?

原因就是我们的系统可能有很多传感器,比如说有两个传感器,一个传感器很精确,另外一个很垃圾。那么精确那个对应的information matrix里面的系数可能是很大,记住!!,这里是越大越好,因为它是协方差矩阵的逆矩阵。用一个形象的数学表达式表达就是

const int INT_MAX=1e9;

argmin( INT_MAX*(x-3)^2+1/INT_MAX*(x-1)^2)) 

那么INT MAX就代表我们的精确传感器,那么优化的结果肯定是 x=3;也就是说,我们更加相信我们好的传感器

信息矩阵在图优化slam里面的作用_第5张图片

可以看到优化后的结果也是看脸的,如果好的initial guess那么也就有好的结果,通常我们要不断的迭代找到一个比较好的的局部最优。 

信息矩阵在图优化slam里面的作用_第6张图片

 这个是误差项简化的结果,误差是一个标量,所以相加的所有项也是标量,我们可以随意转置,而信息矩阵转置后不变,为什么呢?因为这是通常假定我们的传感器之间是独立的。所以中间两项可以合在一起。

信息矩阵在图优化slam里面的作用_第7张图片

数值求解,求导。

 

 

你可能感兴趣的:(slam)