求最優估計$x^{*}$,使得誤差(殘差)向量的$\epsilon=f(x^{*})-z$的平方和$S(x)=\epsilon^{T}\epsilon$最小,即求
\begin{equation}
x^{*}=\arg\min_{x}\epsilon^{T}\epsilon=\arg\min_{x}S(x)=\arg\min_{x}\|f(x)-z\|_{2}^{2}\label{eq:gen_opt}
\end{equation}
最理想的情況,誤差$\epsilon=0$,此時$f(x^{*})=z$,故最優化問題\eqref{eq:gen_opt}等價於“解方程”問題:
\begin{equation}
f(x)=z\label{eq:gen_opt_eqform}
\end{equation}
大部分非線性最優化算法需要迭代求解
\[
x:=x+\delta
\]
若已有初值$x$,每次迭代需要求解一個最優增量$\delta$,使得迭代后的“預測輸出”$f(x+\delta)$與實際的觀測值$z$的誤差$\|f(x+\delta)-z\|$最小。
對誤差向量線性化,有
\[
f(x+\delta)-z\approx f(x)+J\delta-z
\]
其中,$J=\frac{\partial f(x)}{\partial x}$為$f(x)$的雅克比矩陣。令上式為$0$,就變成了解線性方程問題
\[
J\delta=\epsilon,\:\epsilon=z-f(x)
\]
實際應用中,上式往往是超定的,故用線性最小二乘法求解,
\begin{equation}
J^{T}J\delta=J^{T}\epsilon\:\Leftrightarrow\:\delta^{*}=\arg\min_{\delta}\|J\delta-\epsilon\|_{2}^{2}\label{eq:gen_opt_lin2}
\end{equation}
故非線性最優化問題變成了迭代求解線性方程的問題。上述算法又稱為\emph{高斯牛頓法}。
如果已知觀測$z$的協方差的矩陣$\Sigma$,應該對指標函數按方差$\Sigma$加權,方差大的觀測分量權重小,對結果的影響小。引入方差加權后,\eqref{eq:gen_opt}中的優化問題變成
\begin{equation}
x^{*}=\arg\min_{x}S(x)=\arg\min_{x}\epsilon^{T}\Sigma^{-1}\epsilon=\arg\min_{x}\|f(x)-z\|_{\Sigma^{-1}}^{2}\label{eq:gen_opt-1}
\end{equation}
要解決上述問題,則在每一次迭代過程中求解
\begin{equation}
\delta^{*}=\arg\min_{\delta}\|J\delta-\epsilon\|_{\Sigma^{-1}}^{2}\label{eq:gen_opt_lin3}
\end{equation}
設信息矩陣$\Sigma^{-1}$有Cholesky分解
\begin{equation}
\Sigma^{-1}=A^{T}A\label{eq:gen_opt_chol}
\end{equation}
則\eqref{eq:gen_opt_lin3}的指標函數可以改寫成
\begin{equation}
\|J\delta-\epsilon\|_{\Sigma^{-1}}^{2}=(J\delta-\epsilon)^{T}A^{T}A(J\delta-\epsilon)=\|(AJ)\delta-A\epsilon\|_{2}^{2}\label{eq:gen_opt_lin4}
\end{equation}
只需令$\tilde{J}=AJ$,$\tilde{\epsilon}=A\epsilon$,\eqref{eq:gen_opt_lin4}變成$\|\tilde{J}\delta-\tilde{\epsilon}\|_{2}^{2}$,故加權問題\eqref{eq:gen_opt_lin3}可以轉化為非加權問題\eqref{eq:gen_opt_lin2}。利用\eqref{eq:gen_opt_lin2}中“$\Leftrightarrow$”左右兩側的等價關系,問題\eqref{eq:gen_opt_lin3}中最優增量$\delta$由下式確定:
\begin{equation}
J^{T}\Sigma^{-1}J\delta=J^{T}\Sigma^{-1}\epsilon\label{eq:gen_opt_lin_weighted}
\end{equation}
在實際操作中,不需要進行Cholesky分解\eqref{eq:gen_opt_chol},只需在每一次迭代過程中求解\eqref{eq:gen_opt_lin_weighted}即可。
可以證明,\eqref{eq:gen_opt_lin_weighted}中$J^{T}\Sigma^{-1}J$為能量函數$S(x)$的Hessian矩陣;$J^{T}\Sigma^{-1}$為能量函數的梯度。