病态矩阵与条件数

作者:桂。

时间:2017-06-03  11:06:45

链接:http://www.cnblogs.com/xingshansi/p/6936740.html 


一、病态矩阵

  A-问题描述

现在有线性系统: Ax = b, 解方程

很容易得到解为: x1 = -100, x2 = -200. 如果在样本采集时存在一个微小的误差,比如,将 A 矩阵的系数 400 改变成 401:

则得到一个截然不同的解: x1 = 40000, x2 = 79800.

当解集 x 对 A 和 b 的系数高度敏感,那么这样的方程组就是病态的 (ill-conditioned).

病态矩阵的详细分析,感兴趣可以点击这里

  B-现象分析

为什么会出现上面的问题?主要是两个向量可以互相近似线性表达(如[401 -201]与[-800 401]),从而另一项近似残差项,这样微小的扰动带来大的扰动。

二、条件数

如何判断矩阵是不是ill-conditioned matrix?条件数是一个思路。

虽然是近似,直接用秩判断是无效的,除非严格线性:rank.

因此可以有两个思路:rcond(A)或者min(svd(A)).  以rcond为例:

if( rcond(A) < 1e-12 )
    % This matrix doesn't look good
end

 

参考

http://www.cnblogs.com/daniel-D/p/3219802.html

posted @ 2017-06-03 11:28  LeeLIn。  阅读(3175)  评论(0编辑  收藏  举报