码迷,mamicode.com
首页 > 其他好文 > 详细

SVD分解 求解超定方程组

时间:2015-12-08 12:56:35      阅读:438      评论:0      收藏:0      [点我收藏+]

标签:

做平差的时候,需要解误差方程组,而 有的书本上说解线性的误差方程组,并不需要初值。

在查阅了测量平差书本之后,书里描述,一般是需要参数的初始值的。

这就产生了疑问。

 

因为非线性方程的线性化之后,舍掉了二次项之后的值,会造成平差模型的弱化。因此在进行非线性方程的平差过程中,一般是对改正值进行一个迭代计算,使其精化。

而线性化之后的各参数的系数中,包含了其他的未知参数,因此在计算的过程之中,必须使用初值。

 

原本就是线性方程组的平差模型,也可以直接使用SVD分解来解误差方程组。

 

1.解最小二乘超定方程组。AX-L=0

  AtA X = AtL

  X=INV(AtA)*AtL

2. X=Pinv(A)*L

3.   udv‘X -L      dv‘X = u’L       

      dY=L’

      舍弃d阵中的0 和L‘多余项 解得到Y

 

  然后解得X

 

???为何线性解按常规平差解法 到底需不需要初值?不需要初值貌似连误差方程也列不出来啊?

 可能回答: 线性方程组 连误差方程都不必要列

      可以直接解得到最小二乘解,就是我们得到的平差后参数,同时也不需要迭代。

 

对于齐次方程来说  SVD 直接得到V中奇异值最小的向量即为最小二乘解。

SVD分解 求解超定方程组

标签:

原文地址:http://www.cnblogs.com/voya/p/5028711.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!