非線性最小二乘參數平差迭代算法


摘要:在非線性最小二乘問題現有的3類主要算法- 高斯-牛頓法、阻尼最小二乘法和最小二乘的擬牛頓法的基礎上,引入了綜合性能更優的非線性規划的SQPM (序列二次規划法)算法,並且為進一步提高SQPM算法迭代的收斂性,對其步長策略進行了改進。改進的SQPM算法成為無需精確計算參數概略值的非線性最小二乘參數平差的實用和有效算法。

現狀:

最小二乘參數平差的函數模型常常是非線性的。經典最小二乘參數平差是將非線性的函數模型在參數的概略值處按泰勒級數展開,忽略高次項使其線性化,然后按線性最小二乘法求解。其實質是用一個線性最小二乘問題來逼近原非線性最小二乘問題。但前提是參數的概略值應充分接近於參數的平差值,否則線性化過程中存在模型誤差,難以保證平差結果的正確性。而參數概略值求解方法的規律性又極差,尤其難以實現計算機的自動化處理。為避開精確計算參數概略值的難題,同時又避免線性化過程中的模型誤差,應直接采用非線性最小二乘參數平差方法求解。其數學模型為

其中,L^、L、V、X^、D、Q、P、σ0分別為觀測值的平差值向量、觀測值向量、觀測值的改正數向量、參數的平差值向量、觀測值的協方差陣、觀測值的協因數陣、觀測值的權陣、單位權中誤差。

並不是列幾個方程求就行了,而是要使用迭代法求解:

1.1 牛頓-高斯法(泰勒級數展開法)平差

思想是:一級泰勒展開式誤差比較大,但是通過迭代的方法逐步逼近真值(通過泰勒展開式將非線性公式變成線性公式,然后利用牛頓法進行迭代求解)

伴隨着真值逐步逼近真實值,參數也從初始值逼近最優解

法向量就是梯度下降方向:(也稱作修正因子,修正數,等)

修正一次之后,重新求解該次的泰勒展開式和v,修正二次之后,重新求解v,

 [總共3個點都放進去了,誰來驗證?誰來做真值?不需要,因為全都是觀測值,沒有真值,跟機器學習里面的做法不一樣]

但是Δ參數怎么求呢?光有參數的初始值,也不知道它的Δ是多少啊

不需要知道,因為求解的是v,而不是真正求f(x)真值,每一步不需要求解真值,只需要誤差即可,而誤差只需要展開式的f(x0)而不需要偏導項。

 

 迭代之前:先要給要求解的參數一個初始值(該初始值要盡量合理一些)

最小二乘法的非線性擬合,高斯牛頓迭代法:https://blog.csdn.net/haoliliang88/article/details/52932397

每迭代一次都要計算:真實值與觀測值之間的差,即為殘差。

 

最小二乘法平差在攝影測量后方交會中的應用

至少要有三個控制點,多了更好:(先通過泰勒公式求得展開式,然后根據最小二乘法求解擬合迭代)

  • 組成誤差方程式並法化
  • 解求外方位元素改正數(改正數為最小二乘的改正數?)
  • 檢查迭代是否收斂

設有條件式:AV+ W=0
                   W=AL+A0
法方程為:AP-1ATK + W=0.
               P=[P1,P2,..PnT

 

最小二乘法:https://zhuanlan.zhihu.com/p/38128785

線性最小二乘法和非線性最小二乘法的解法區別:擬合法的優點

 

>>參考1:https://wenku.baidu.com/view/96ed895180eb6294dc886c87.html

參考2:https://wenku.baidu.com/view/51021cf0ba0d4a7302763af1.html

參考3:https://wenku.baidu.com/view/0b3cd1a1842458fb770bf78a6529647d26283486.html

非線性最小二乘法的迭代法求解:link

第一步:A0有假設值。求v。

第二步:根據Δ,求參數更新值A'。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM