5.10 阻尼倒数法

5.10 阻尼倒数法

改进Gram-Schmidt分解中需要计算 r i i = a i r_{ii} = \|\mathbf{a}_i\| q i = a i / r i i \mathbf{q}_i = \mathbf{a}_i/r_{ii} r i i r_{ii} 表示子空间第 i i 个坐标轴的高度,当其为 0 0 时,说明子空间少了该维度,矩阵 A A 不是列满秩, a i \mathbf{a}_i 可由前面 i 1 i-1 a j , j < i \mathbf{a}_j,j < i 表示,这样 q i \mathbf{q}_i 单位向量应该为 0 \mathbf{0} 向量,最优解的第 i i 个分量应该为 0 0 。但实际计算时,由于舍入误差, r i i r_{ii} 不会等于 0 0 ,只会趋近 0 0 ,是个极小的数。如果还是按公式 q i = a i / r i i \mathbf{q}_i = \mathbf{a}_i/r_{ii} 计算,由于舍入误差 q i \mathbf{q}_i 会极不稳定,导致最优解的第 i i 个分量远离 0 0 。所以我们希望当 r i i r_{ii} 很小时, 1 / r i i 1/r_{ii} 实际计算时取 0 0 ,不是很小时,还是取原值。即要求

1 / r i i = { 1 / r i i f o r l a r g e r i i 0 f o r s m a l l r i i 1/r_{ii} = \left \{ \begin{array}{rc} 1/r_{ii} & for & large & r_{ii} \\ 0 & for & small & r_{ii} \end{array}\right.

为了达到这个目的,可以采用各种数学技巧,阻尼倒数法就是著名的一种。

1 / r i i = r i i r i i 2 + λ 2 1/r_{ii} = \frac{r_{ii}}{r^2_{ii}+\lambda^2}

λ \lambda 是阻尼系数,需要人为设定,当 r i i < λ r_{ii}<\lambda 时,认为 r i i r_{ii} 过小,理论上是 0 0

阻尼倒数法有如下近似结果

r i i r i i 2 + λ 2 = { 1 r i i f o r r i i λ r i i λ 2 0 f o r r i i λ \frac{r_{ii}}{r^2_{ii}+\lambda^2} = \left \{ \begin{array}{rc} \frac{1}{r_{ii}} & for & |r_{ii}| \gg \lambda \\ \frac{r_{ii}}{\lambda^2} \to 0 & for & |r_{ii}| \ll \lambda \end{array}\right.

为了减小阻尼系数 λ \lambda 对正常 r i i r_{ii} 的影响,可以令当 r i i r_{ii} 较大时, λ \lambda 趋近 0 0 。可采用分段函数

λ = { λ 0 ( 1 r i i ϵ ) f o r r i i ϵ 0 f o r r i i > ϵ \lambda = \left \{ \begin{array}{rc} \lambda_0(1-\frac{|r_{ii}|}{\epsilon}) & for & |r_{ii}| \le \epsilon \\ 0 & for & |r_{ii}| > \epsilon \end{array}\right.

也可采用高斯函数

λ = λ 0 e ( r i i ϵ ) 2 \lambda = \lambda_0 e^{-(\frac{|r_{ii}|}{\epsilon})^2}

其中 λ 0 \lambda_0 为名义阻尼系数, ϵ \epsilon 为判断奇异的阈值。

高斯函数比分段函数更光滑,这样最优解在奇异位置更平滑。高斯函数缺点是当 r i i r_{ii} 较大时, λ \lambda 不等于 0 0 ,会引入极小误差。

按照阻尼倒数法计算, q i = a i / r i i \mathbf{q}_i = \mathbf{a}_i/r_{ii} ,当 r i i r_{ii} 趋近 0 0 时, q i \mathbf{q}_i 趋近 0 \mathbf{0} 。最优解的第 i i 分量 x ^ i = ( δ i j = i + 1 n ( δ j x ^ j ) ) / r i i \hat{x}_i = (\delta_i - \sum^{n}_{j=i+1} (\delta_j\hat{x}_j))/r_{ii} 也趋近 0 0 ,达到稳定解的目的。阻尼倒数法涉及的参数如 λ 0 \lambda_0 ϵ \epsilon ,其最优值很难确定。

r i i r_{ii} 趋近 0 0 ,矩阵 A A 不是列满秩,此时矩阵是行列均不满秩,方程 A x = b A\mathbf{x}=\mathbf{b} 的解理论需要采用奇异值分解,后面章节会解释。阻尼倒数法虽能得到较稳定的解,但只是其中一个解,没有包含所有解。

猜你喜欢

转载自blog.csdn.net/jhshanvip/article/details/105896993
今日推荐