摘自《数值最优化方法》
\qquad已知 设步长为α\alphaα,下降方向为ddd,f(xk+αd)f(x_{k}+\alpha d)f(xk+αd)在xkx_{k}xk的TaylorTaylorTaylor展示为
f(xk+1)=f(xk+αd)=f(xk)+αgkTd+O(∣∣αd∣∣2)
f(x_{k+1})=f(x_{k}+\alpha d)=f(x_{k})+\alpha g_{k}^{T}d+O(||\alpha d||^{2})
f(xk+1)=f(xk+αd)=f(xk)+αgkTd+O(∣∣αd∣∣2)为使函数值下降,下降方向满足
gkTd<0
g_{k}^{T}d<0
gkTd<0
\qquad收敛性和收敛速度 收敛性 算法产生的点阵{xk}\{x_{k}\}{xk}在某种范数∣∣⋅∣∣||\cdot||∣∣⋅∣∣意义下满足
limk→∞∣∣xk−x∗∣∣=0
\mathop{lim}\limits_{k\to\infty}||x_{k}-x^{*}||=0
k→∞lim∣∣xk−x∗∣∣=0称算法是收敛的,当从任意初始点出发时,都能收敛到x∗x^{*}x∗称为具有全局收敛性,仅当初始点与x∗x_{*}x∗充分接近时才能收敛到x∗x^{*}x∗称算法具有局部收敛性。
\qquad收敛速度(已知收敛):若
limk→∞∣∣xk+1−x∗∣∣∣∣xk−x∗∣∣=a
\mathop{lim}\limits_{k\to\infty}\frac{||x_{k+1}-x^{*}||}{||x_{k}-x^{*}||}=a
k→∞lim∣∣xk−x∗∣∣∣∣xk+1−x∗∣∣=a \qquad 当0<a<10<a<10<a<1时,迭代点列{xk}\{x_{k}\}{xk}的收敛速度是线性的,这时算法称为线性收敛。当a=0a=0a=0时,{xk}\{x_{k}\}{xk}的收敛速度是超线性的,称为超线性收敛。
\qquad二阶收敛:若
limk→∞∣∣xk+1−x∗∣∣∣∣xk−x∗∣∣2=a
\mathop{lim}\limits_{k\to\infty}\frac{||x_{k+1}-x^{*}||}{||x_{k}-x^{*}||^{2}}=a
k→∞lim∣∣xk−x∗∣∣2∣∣xk+1−x∗∣∣=a\qquadaaa为任意常数,迭代点列{xk}\{x_{k}\}{xk}的收敛速度是二阶的,这时算法称为二阶收敛。超线性收敛和二阶收敛的收敛速度较快,是理想的收敛速度。
\qquad负梯度法和牛顿(Newton)(Newton)(Newton)型方法 NewtonNewtonNewton型方法特殊情形的一种负梯度方法—最速下降法。首先下降方向满足gkTd<0g_{k}^{T}d<0gkTd<0,为使∣gkd∣|g_{k}d|∣gkd∣达到最大值,则由Cauchy−SchwarzCauchy-SchwarzCauchy−Schwarz不等式
∣gkTd∣≤∣∣gk∣∣∣∣d∣∣
|g_{k}^{T}d|\leq||g_{k}||||d||
∣gkTd∣≤∣∣gk∣∣∣∣d∣∣知当且仅当d=dk=−gk/∣∣gk∣∣d=d_{k}=-g_{k}/||g_{k}||d=dk=−gk/∣∣gk∣∣时,等式成立,gkTdg_{k}^{T}dgkTd达到最小。考虑在dkd_{k}dk方向上的步长,取其负梯度方向即dk=−gkd_{k}=-g_{k}dk=−gk。
\qquad收敛性分析 1. 给定GGG度量下的范数定义,给出KantorovichKantorovichKantorovich不等式。定义 设G∈Rn×nG\in\mathbb{R}^{n\times n}G∈Rn×n对称正定,u,v∈Rnu,v\in\mathbb{R}^{n}u,v∈Rn则uuu与vvv在GGG度量意义下的内积(uTv)G(u^{T}v)_{G}(uTv)G的定义为
(uTv)G=uTGv
(u^{T}v)_{G}=u^{T}Gv
(uTv)G=uTGvuuu在GGG度量下的范数定义为∣∣u∣∣G2||u||_{G}^{2}∣∣u∣∣G2定义为
∣∣u∣∣G2=uTGu
||u||_{G}^{2}=u^{T}Gu
∣∣u∣∣G2=uTGuGGG度量下的Cauchy−SchwarzCauchy-SchwarzCauchy−Schwarz不等式
∣uTGu∣≤∣∣u∣∣G∣∣v∣∣G
|u^{T}Gu|\leq||u||_{G}||v||_{G}
∣uTGu∣≤∣∣u∣∣G∣∣v∣∣G成立,当且仅当u,vu,vu,v共线时等号成立。
\qquad 2.Kantorovich不等式Kantorovich不等式Kantorovich不等式 对于x∈Rn\{0}x\in\mathbb{R}^{n} \verb|\| \{0\}x∈Rn\{0},有
(xTx)2(xTGx)(xTG−1x)≥4λmaxλmin(λmax+λmin)2
\frac{(x^{T}x)^{2}}{(x^{T}Gx)(x^{T}G^{-1}x)}\ge\frac{4\lambda_{max}\lambda_{min}}{ (\lambda_{max}+ \lambda_{min})^{2}}
(xTGx)(xTG−1x)(xTx)2≥(λmax+λmin)24λmaxλminλmax、λmin\lambda_{max}、\lambda_{min}λmax、λmin分别为矩阵GGG的最大、最小特征值。在GGG度量的定义下,xkx_{k}xk的误差等价于它的目标函数值f(xk)f(x_{k})f(xk)的误差。
\qquad最速下降法在GGG度量定义下的收敛速度 给定正定二次函数
f(x)=12xTGx+bTx
f(x)=\frac{1}{2}x^{T}Gx+b^{T}x
f(x)=21xTGx+bTx由负梯度方向为dk=−gkd_{k}=-g_{k}dk=−gk则求解最速下降法步长为
αmin=argminα>0f(xk−αgk)
\alpha_{min}=arg\mathop{min}\limits_{\alpha>0}f(x_{k}-\alpha g_{k})
αmin=argα>0minf(xk−αgk)其中
f(xk−αgk)=12(xk−αgk)TG(xk−αgk)+bT=f(xk)+12gkTGgkα2+gkT(Gxk+b)α=f(xk)−gkTgkα+12gkTGgkα2
f(x_{k}-\alpha g_{k})=\frac{1}{2}(x_{k}-\alpha g_{k})^{T}G(x_{k}-\alpha g_{k})+b^{T}\\
= f(x_{k})+\frac{1}{2}g_{k}^{T}Gg_{k}\alpha^{2}+g_{k}^{T}(Gx_{k}+b)\alpha \\
= f(x_{k})-g_{k}^{T}g_{k}\alpha+\frac{1}{2}g_{k}^{T}Gg_{k}\alpha^{2}
f(xk−αgk)=21(xk−αgk)TG(xk−αgk)+bT=f(xk)+21gkTGgkα2+gkT(Gxk+b)α=f(xk)−gkTgkα+21gkTGgkα2对α\alphaα求导,由凸函数性质,极小值必要条件,得最优步长为
αk=gkTgkgkTGgk
\alpha_{k}=\frac{g_{k}^{T}g_{k}}{g^{T}_{k}Gg_{k
}}
αk=gkTGgkgkTgk\qquad将最优步长带上式中,得到迭代方程(二分之一的来历!!!!,使用泰勒展开为一阶没有二分之一,直接带入原方程中有二分之一,有无受泰勒展开的精度影响)
f(xk+1)=f(xk)−12(gkTgk)2gkTGgk
f(x_{k+1})=f(x_{k})-\frac{1}{2}\frac{(g_{k}^{T}g_{k})^{2}}{g_{k}^{T}Gg_{k}}
f(xk+1)=f(xk)−21gkTGgk(gkTgk)2\qquad由Gx∗=−bGx^{*}=-bGx∗=−b得f(x∗)=−12bTG−1bf(x^{*})=-\frac{1}{2}b^{T}G^{-1}bf(x∗)=−21bTG−1b得到
f(xk+1)−f(x∗)f(xk)−f(x∗)=1−(gkTgk)2gkTGgkxkTGxk+2bTxk+bTG−1b=1−(gkTgk)2gkTGgk(Gxk+b)TG−1(Gxk+b)=1−(gkTgk)2(gkTGgk)(gkTG−1gk)
\frac{f(x_{k+1})-f(x^{*})}{f(x_{k})-f(x^{*})}=1-\frac{\frac{(g_{k}^{T}g_{k})^{2}}{g_{k}^{T}Gg_{k}}}{x_{k}^{T}Gx_{k}+2b^{T}x_{k}+b^{T}G^{-1}b}\\
= 1-\frac{\frac{(g_{k}^{T}g_{k})^{2}}{g_{k}^{T}Gg_{k}}}{(Gx_{k}+b)^{T}G^{-1}(Gx_{k}+b)}\\
= 1-\frac{(g_{k}^{T}g_{k})^{2}}{(g_{k}^{T}Gg_{k})(g_{k}^{T}G^{-1}g_{k})}
f(xk)−f(x∗)f(xk+1)−f(x∗)=1−xkTGxk+2bTxk+bTG−1bgkTGgk(gkTgk)2=1−(Gxk+b)TG−1(Gxk+b)gkTGgk(gkTgk)2=1−(gkTGgk)(gkTG−1gk)(gkTgk)2\qquad由在GGG度量的定义下,xkx_{k}xk的误差等价于它的目标函数值f(xk)f(x_{k})f(xk)的误差。得:
∣∣xk+1−x∗∣∣G2∣∣xk−x∗∣∣G2=1−(gkTgk)2(gkTGgk)(gkTG−1gk)
\frac{||x_{k+1}-x^{*}||^{2}_{G}}{||x_{k}-x^{*}||^{2}_{G}}=1-\frac{(g_{k}^{T}g_{k})^{2}}{(g_{k}^{T}Gg_{k})(g_{k}^{T}G^{-1}g_{k})}
∣∣xk−x∗∣∣G2∣∣xk+1−x∗∣∣G2=1−(gkTGgk)(gkTG−1gk)(gkTgk)2\qquad由KantorovichKantorovichKantorovich不等式得到
∣∣xk+1−x∗∣∣G2∣∣xk−x∗∣∣G2≤(λmax−λminλmax+λmin)2
\frac{||x_{k+1}-x^{*}||^{2}_{G}}{||x_{k}-x^{*}||^{2}_{G}}\leq(\frac{\lambda_{max}-\lambda_{min}}{\lambda_{max}+\lambda_{min}})^{2}
∣∣xk−x∗∣∣G2∣∣xk+1−x∗∣∣G2≤(λmax+λminλmax−λmin)2得到最速下降法得收敛速度是线性的,这个速度依赖于G的最大、最小特征值。
\qquad条件数 线性方程组Gx+b=0Gx+b=0Gx+b=0是由GGG和bbb确定的(求解x∗x^{*}x∗),当GGG和bbb中的数据带有误差时(产生扰动),则两个参数扰动对线性方程组的求解影响由条件数反映。 条件数的定义!!!\color{#F00}{条件数的定义!!!}条件数的定义!!!
cond(G)=∣∣G∣∣ ∣∣G∣∣−1
cond(G)=||G||\ ||G||^{-1}
cond(G)=∣∣G∣∣ ∣∣G∣∣−1\qquad称为矩阵GGG的条件数,条件数与范数有关,如
∣∣G∣∣2∣∣G−1∣∣2=λmaxλmin
||G||_{2}||G^{-1}||_{2}=\frac{\lambda_{max}}{\lambda_{min}}
∣∣G∣∣2∣∣G−1∣∣2=λminλmax若矩阵GGG的条件数很大,扰动对解的影响就可能很大,这种问题称为病态的。
\qquad由最速下降法收敛速度式得:
λmax+λminλmax−λmin=cond(G)−1cond(G)+1=Δμ
\frac{\lambda_{max}+\lambda_{min}}{\lambda_{max}-\lambda_{min}}=\frac{cond(G)-1}{cond(G)+1}\mathop{=}\limits^{\Delta}\mu
λmax−λminλmax+λmin=cond(G)+1cond(G)−1=Δμ\qquad最速下降法收敛速度依赖于GGG得条件数,当条件数接近1时,收敛速度接近超线性收敛,条件数越大,收敛速度越慢。
最速下降法收敛速度
最新推荐文章于 2025-05-26 10:13:22 发布