非線性最小二乘優化也叫無約束極小平方和函式問題,形式如下
如果f (x
)f(x)
f(x)
為x
xx的線性函式,此時問題變為線性最小二乘問題,對此有專門的函式進行求解。
它源於無約束優化的牛頓演算法,因為非線性最小二乘優化問題中的目標函式形式比較簡單,可以得到其雅克比矩陣的具體形式,將其代入牛頓法的迭代公式中,就可以得到g–n法。根據目標函式表示式,有
令根據無約束優化的牛頓演算法,代入目標函式的梯度,則有
由於r (x
k)r(x^k)
r(xk
)計算量比較大,忽略可得g–n法
它是乙個區域性收斂演算法,對初始點的依賴性很大,只有當初始點接近極小點時才有可能收斂。
為了克服g–n法的缺點,有兩種修正方案。
1.在已經得到了乙個近似極小點x
kx^k
xk後,計算
其中α
k\alpha^k
αk大小用一維無約束優化方法求解min
s(xk
)mins(x^k)
mins(x
k)確定,由於每一步都需要進行一維搜尋,計算量很大。
2.選取很小的正數δ
k\delta_k
δk,使得s(x
k+δkvk)
xk)s(x^k+\delta_kv^k)s(
xk+δ
kvk)xk
),此種方案計算量比較小,可以用比較簡單的方法來確定δ
k\delta^k
δk的取值。
當矩陣(jk
)tjk
(j_k)^tj_k
(jk)t
jk為病態矩陣時,用g–n演算法可能得不到正確的解,甚至當(jk
)tjk
(j_k)^tj_k
(jk)t
jk不可逆時,g–n法就無法計算下去。l–m演算法採用係數矩陣阻尼的方法改造矩陣(jk
)tjk
(j_k)^tj_k
(jk)t
jk的性態,使演算法能夠進行下去。l–m演算法中有兩個主要的步驟,一是解方程
求出自變數的增量,另乙個是阻尼係數μ
\muμ的調整演算法。
非線性最小二乘
非線性最小二乘問題是求解目標引數 的最優值的方法 1.要有待優化的引數x 2.要知道引數與估計值的函式關係 f x 3.要有觀測資料z 4.待優化引數的初值x0 5.待優化引數的範圍 可選 非線性最小二乘問題,可以轉化為非線性優化問題 解非線性最小二乘需要非線性優化演算法 非線性優化演算法最通用的方...
手寫非線性最小二乘
方法1 梯度下降法 include include include include include include include class descent method descent method descent method double a,double b,double c a a b ...
非線性最優化演算法總結
參考 疑問 1 lm演算法與slam第6講中定義不太一樣,信賴區域的確定中 的定義方法 帖子中用二階近似定義 而slam第六講中用一階近似來表達,兩者思想較為一致,判斷應是一階還是二階佔主導地位。不太明白的是,為何當一階佔主導地位是,採用更小的迭代步長,二階佔主導地位時,採用更大的迭代步長。且sla...