矩阵的条件数及病态方程组的处理

A x = b Ax=b Ax=b,如果A或者b有轻微的变动,会使得求解出的 x x x发生巨变,这种矩阵就是病态的

A x = b Ax=b Ax=b 真实情况
A ( Δ x + x ) = Δ b + b A(\Delta x+x)=\Delta b+b A(Δx+x)=Δb+b 代入误差的扰动情况
Δ x = A − 1 Δ b \Delta x=A^{-1}\Delta b Δx=A1Δb
取范数后有
∣ ∣ Δ x ∣ ∣ ≤ ∣ ∣ A − 1 ∣ ∣ ∣ ∣ Δ b ∣ ∣ ||\Delta x|| \le ||A^{-1}||||\Delta b|| ∣∣Δx∣∣∣∣A1∣∣∣∣Δb∣∣
∣ ∣ Δ b ∣ ∣ ≤ ∣ ∣ A ∣ ∣ ∣ ∣ x ∣ ∣ ||\Delta b|| \le ||A||||x|| ∣∣Δb∣∣∣∣A∣∣∣∣x∣∣
所以

∣ ∣ Δ x ∣ ∣ ∣ ∣ A ∣ ∣ ∣ ∣ x ∣ ∣ ≤ ∣ ∣ A − 1 ∣ ∣ ∣ ∣ Δ b ∣ ∣ ∣ ∣ A ∣ ∣ ∣ ∣ x ∣ ∣ ≤ ∣ ∣ A − 1 ∣ ∣ ∣ ∣ Δ b ∣ ∣ ∣ ∣ b ∣ ∣ \frac{||\Delta x||}{||A||||x||} \le \frac{||A^{-1}||||\Delta b||}{||A||||x||}\le\frac{||A^{-1}||||\Delta b||}{||b||} ∣∣A∣∣∣∣x∣∣∣∣Δx∣∣∣∣A∣∣∣∣x∣∣∣∣A1∣∣∣∣Δb∣∣∣∣b∣∣∣∣A1∣∣∣∣Δb∣∣

c o n d ( A ) = ∣ ∣ A ∣ ∣ ∗ ∣ ∣ A − 1 ∣ ∣ cond(A)=||A|| *||A^{-1}|| cond(A)=∣∣A∣∣∣∣A1∣∣记为A的条件数
它越小越好,||A||是A的范数
条件数过大,矩阵就是病态是

逆的求解比较复杂,也有一些经验性公式判断病态矩阵

  1. 消元中出现绝对值很小的祝愿
  2. A元素之间数量级差很大,且无规律
  3. A某些行列式近似线性相关
  4. 方程组的解向量中有绝对值很大的分量

迭代改善求解
Ax=b
先求一个 x 1 x_1 x1,然后代入 x 1 x_1 x1求b计算和真实b误差 r r r,再求解Ax=r,方法迭代更新 x x x

你可能感兴趣的:(矩阵,线性代数)