应用领域
LM 算法用于解决非线性最小二乘问题,问题定义如下:
LM 算法有两种推导和实现,一种是算法发明者使用的 阻尼法,一种是后来学者补充的 置信域法。这里分别作出推导。
阻尼法推导 Damped Method
1. 一阶泰勒展开近似
对
将问题转化为:对于每次迭代,求最优的
2. 加入阻尼项
-
为阻尼系数
阻尼项
3. 求极值
令关于
得最优解:
简化表示:
简化后的最优解:
4. 阻尼系数 μ 的调节
上面的最优解表达式中还有一个阻尼系数
定义增益率(gain ratio)
ρ 表达了 一阶泰勒展开近似 与 真实函数 的相似程度,分子部分是
- 分子越大,
下降的大,
越大 → 说明这里的泰勒展开近似是比较准确的,应减小阻尼系数
- 分子越小,
下降的小,
越小 → 说明这里的泰勒展开近似不太准确,应增大阻尼系数
介绍两种阻尼系数的调节方案:
方案一 (Marquardt 1963):
方案二 (Nielsen 1999):
方案二中,对于错误的
5. 总结
阻尼法的LM算法的每步迭代过程为:
- 依据
,计算本次迭代增量
2. 依据
3. 依据增益率
置信域法推导 Trust Region Method
1. 一阶泰勒展开近似
这一步与阻尼法是一致的。
对
将问题转化为:对于每次迭代,求最优的
2. 加入置信域约束项
对于每一步迭代,使用
-
是置信域的范围,对于每一步的迭代,
是一个已知量。
3. 求解约束优化问题
对于这种小于等于号的约束优化问题,是需要分两情况进行考虑。
情况1:
假设最优解 位于
1) 求无约束的最优解,得
2) 验证此最优解是否满足
3) 如果满足则此解为带约束的最优解, 如果不满足说明最优解不在
情况2:
假设最优解位于
需要引入拉格朗日乘子
此时最优解需满足如下条件:
可以看到上面的等式 1) 是与阻尼法的最优解的形式是一样的,但是阻尼法中的阻尼系数
联立 1) 2) 可解此等式约束问题得最优解
4. 置信域范围 d 的调节
上面的求解约束优化问题的过程中,还有一个置信域范围
与阻尼法一样,首先需要计算
然后调节置信域范围
5. 总结
置信域法的LM算法的每步迭代过程为:
1. 通过求解约束优化问题得到本次迭代增量
2. 依据
3. 依据增益率
参考
METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 2nd Edition, April 2004 K. Madsen, H.B. Nielsen, O. Tingleff
Trust-Region and the Levenberg-Marquardt method Niclas Börlin
视觉slam十四讲