推荐开源项目:简单的SLAM与机器人教程与编程实践-github
今日疯言疯语:
很多算法看不懂大概率是这些算法做出的一些假设你不知道——@Ai酱
线性最小二乘法||Ax-y||可以直接求解
问题:已知A和y,需要求x。并且需要最小化||Ax-y||。
下面是求解x的方法:
A x = y A T A x = A T y x = ( A T A ) − 1 A T y Ax=y \\ A^TAx = A^Ty\\ x = (A^TA)^{-1}A^Ty Ax=yATAx=ATyx=(ATA)−1ATy
之所以要乘个 A T A^T AT是因为A很可能不是方阵,不是方阵是不能求逆的。
非线性最小二乘法需要用牛顿法求解
问题:已知f()表达式和y,需要求x。并且需要最小化 ∣ ∣ f ( x ) − y ∣ ∣ ||f(x)-y|| ∣∣f(x)−y∣∣。这个||xx||是指范数的意思,你把它当做是绝对值或者平方就行.而我们知道 ∣ ∣ f ( x ) − y ∣ ∣ ||f(x)-y|| ∣∣f(x)−y∣∣的最小值是0,所以我们就是想求 ∣ ∣ f ( x ) − y ∣ ∣ ||f(x)-y|| ∣∣f(x)−y∣∣等于0时x的取值。
什么是牛顿法?
它是一个用来求某个函数最小值所在点的自变量的值算法。牛顿法这和这里我们需要求解的问题有什么联系。我们就是想求 g ( x ) = ∣ f ( x ) − y ∣ g(x)=|f(x)-y| g(x)=