矩阵的数值计算一般可以分为直接法和间接法
本章主要介绍 Ax=b A x = b 这类线性方程组求解的直接法,数值求解该方程组的基础思想是Gauss消元法
实质是通过一组满秩的初等行变换,将A保秩变换成一个三角矩阵U,此变换过程称为矩阵A的非奇异上三角化
我们的目的就是寻求一个矩阵P,使得PA=U,其中U是一个三角矩阵,其中 Ax=b A x = b 和 Ux=b¯¯ U x = b ¯ 同解( b¯¯=Pb b ¯ = P b ),有效的生成一个P是我们主要研究的问题
回顾一下线性代数中的三个初等线性变换
- 数乘
- 倍加
- 互换
我们引入一个一般意义上的初等变换矩阵,它把许多常用的线性变换统一在一个框架里面,在数值线性代数中起着重要的意义
Def: 称 Cn×n C n × n 中如下形式的矩阵 E(u,v;σ) E ( u , v ; σ ) 为初等矩阵:
下面引出初等变换矩阵的一些重要的数学性质
1.两相同向量u,v组成的初等变换矩阵可交换,其积仍然为一个初等矩阵
证明:
2.若 1−σvHu≠0 1 − σ v H u ≠ 0 ,则初等矩阵E(u,v;\sigma)可逆,其逆矩阵也是初等矩阵
3.设 v⊥ v ⊥ 表示和 v v 正交的(n-1)维子空间
a.若 u∉v⊥ u ∉ v ⊥ ,则 E(u,v;σ) E ( u , v ; σ ) 有n个线性无关的特征向量,该组特征向量由u和 v⊥ v ⊥ 中任取一组基向量组成
b.若 u∈v⊥ u ∈ v ⊥ ,则 E(u,v;σ) E ( u , v ; σ ) 仅有n-1个线性无关的特征向量,该组特征向量由 v⊥ v ⊥ 中任取一组基向量组成
4. det(E(u,v;σ))=1−σvHu d e t ( E ( u , v ; σ ) ) = 1 − σ v H u
5.对任意非零向量 a,b∈Cn a , b ∈ C n ,必可适当选取 u,v,σ u , v , σ 使得
事实上只需要取 u,v,σ u , v , σ 满足
vHa≠0,σu=a−bvHa v H a ≠ 0 , σ u = a − b v H a
由初等变换矩阵引出Guass变换矩阵,我们选取
得到n-1个Guass变换矩阵
下面给出Guass变换矩阵的一些性质
1. det(Lk)=1+eTklk=1 d e t ( L k ) = 1 + e k T l k = 1
2.Guass变换矩阵的逆只需要将 σ σ 从-1变成+1
3. L1(l1)L2(l2)⋯Ln−1(ln−1)=⎛⎝⎜⎜⎜⎜⎜⎜⎜1l21l31⋮ln11l32⋮ln21⋮ln3⋱⋯1⎞⎠⎟⎟⎟⎟⎟⎟⎟ L 1 ( l 1 ) L 2 ( l 2 ) ⋯ L n − 1 ( l n − 1 ) = ( 1 l 21 1 l 31 l 32 1 ⋮ ⋮ ⋮ ⋱ l n 1 l n 2 l n 3 ⋯ 1 )
注意左乘的顺序
先介绍一下顺序Gauss消元法,大概分两步
- 消元过程
- 回代过程
在消元过程中,我们不断去左乘Gauss变换矩阵,不断将原矩阵的下三角部分一列列变成0,从而最终变换成一个上三角矩阵
需要注意的是,在一列列的消元过程中,我们需保证 aii≠0(i=1,2,…,n) a i i ≠ 0 ( i = 1 , 2 , … , n ) ,所以需要利用行互换来保证此条件
当然这一切消元过程的前提是,矩阵A应该是非奇异的
经过n-1次的Gauss消元,我们可以得到一个上三角矩阵
在回代过程中,由于我们得到了一个上三角矩阵,那么就可以从最底行开始逐步解出x
Gauss消元法的复杂度是 O(n3) O ( n 3 ) ,高阶状态下比起克拉默法则运算量要小得多
Gauss消元法过程中,在对各列进行消元的时候,如果主元比较小的话,运算的结果会产生较大的误差,故引入Gauss列主元消元法,即在每一次利用主元消元的步骤之前,把该列中绝对值最大的数所在的行与主元所在的行进行交换
我们利用Gauss变换矩阵对Gauss消元法进行进一步的分析
由此引出矩阵的LU分解,又称Doolittle分解
这里再介绍一下Crout分解,即A=LU中的L是一个下三角矩阵,U是单位上三角矩阵
注意到某些特殊矩阵的三角分解也是比较特殊的,这里引入一类带状对角形矩阵
上半带宽为s,下半带宽为r,存在LU分解,其中L是下半带宽为r的单位下三角矩阵,U是上半带宽为s的上三角矩阵
对于r=s=1的这一类更加特殊的矩阵,称为三对角矩阵,对于此类矩阵的三角分解,介绍一种“追赶法”
首先做Crout分解
注意到正定对称矩阵的三角分解也是特殊的,这里引入Cholesky分解
首先利用Doolittle分解,得 A=LU A = L U ,对U进一步提取对角矩阵 diag(u11,…,unn) d i a g ( u 11 , … , u n n ) ,从而有
上述的Cholesky分解中涉及了开方的运算,下面介绍一种改进的平方根法
易知, A=LDLT A = L D L T ,则 Ax=LDLTx A x = L D L T x
先解 Ly=b L y = b ,后解 LTx=D−1y L T x = D − 1 y ,其中D的逆只需要将对角元素取倒数即可
范数是比长度更为一般的概念,有了范数就可以更好的去测度误差的大小
Def:V是数域R/C上的线性空间,对于V中任意的元素x,if存在一个唯一的实函数N(x)与之对应,记为∥x∥,而且需满足三个条件1.非负正定,2.齐次性,3.三角不等式 D e f : V 是 数 域 R / C 上 的 线 性 空 间 , 对 于 V 中 任 意 的 元 素 x , i f 存 在 一 个 唯 一 的 实 函 数 N ( x ) 与 之 对 应 , 记 为 ‖ x ‖ , 而 且 需 满 足 三 个 条 件 1. 非 负 正 定 , 2. 齐 次 性 , 3. 三 角 不 等 式
对于非负正定,当仅当x=0,有N(x)=0,否则N(x)> 0;
对于齐次性,有
对于三角不等式,有
这里介绍几种常见的向量范数
在最优化理论中可能会涉及加权范数,A为对称正定矩阵, (xTAx)1/2 ( x T A x ) 1 / 2 是一种向量范数,记为 ∥x∥A ‖ x ‖ A
在无限维线性空间中,比如在[a,b]区间中,对于所有的实连续函数集合C[a,b],对于其中的一个元素f(x)也是有类似定义的范数
下面介绍一下范数的等价性
对于任意两个定义好的范数,存在两个与向量x无关的非零正常数c1,c2,有
c1∥x∥α≤∥x∥β≤c2∥x∥α c 1 ‖ x ‖ α ≤ ‖ x ‖ β ≤ c 2 ‖ x ‖ α
称两个范数等价
不难验证,此处的等价性满足数学定义中的等价性的三个条件,即自反,对称,传递
矩阵范数不仅仅满足非负正定,齐次和三角不等式,而且须满足矩阵相乘的相容性,即
这里给出一类特殊的范数, Frobenius范数
对于 Cm×n C m × n 上面的任意一种向量诱导范数,都有 ∥I∥=max∥x∥=1{∥Ix∥=1} ‖ I ‖ = max ‖ x ‖ = 1 { ‖ I x ‖ = 1 }
这里给出一种范数的定义,即诱导矩阵范数,诱导矩阵范数和向量范数密切相关
定义:设在两个向量空间 Cm,Cn C m , C n 中存在向量范数 ∥∙∥V ‖ ∙ ‖ V , 定义在 Cm×n C m × n 空间上的矩阵A的由向量范数 ∥∙∥V ‖ ∙ ‖ V 诱导所给出的矩阵范数为(其中x不为零向量)
∥A∥V=max∥Ax∥V∥x∥V ‖ A ‖ V = m a x ‖ A x ‖ V ‖ x ‖ V
我们为了解决这个最大值的问题,继续等价定义来优化这个问题
∥A∥V=max∥Ax∥V∥x∥V=max∥Ax∥V ‖ A ‖ V = m a x ‖ A x ‖ V ‖ x ‖ V = m a x ‖ A x ‖ V
其中第一个max条件为x不为零向量,第二个max条件为 ∥x∥V=1 ‖ x ‖ V = 1
我们利用诱导范数的定义可以从原来的向量范数中诱导出三种范数,分别是
1范数:对矩阵的每一列中的元素取绝对值之后求和,然后选取其中的最大列作为1范数
2范数:矩阵的最大奇异值,也就是矩阵与矩阵的转置的乘积的最大特征值
无穷范数:对于矩阵的每一行的元素取绝对值之后求和,然后选取其中的最大行作为无穷范数
关于矩阵的应用,这里引入一个Banach引理
设矩阵A属于n*m的复矩阵空间,对于该空间上的某种矩阵范数 ∥∙∥V ‖ ∙ ‖ V ,有 ∥A∥V<1 ‖ A ‖ V < 1 ,则矩阵 (I±A) ( I ± A ) 非奇异,且有
∥(I−A)−1∥V≤∥I∥1−∥A∥ ‖ ( I − A ) − 1 ‖ V ≤ ‖ I ‖ 1 − ‖ A ‖
给出矩阵谱半径的定义
矩阵的谱半径为矩阵的最大特征值,关于矩阵的谱半径,它不超过其任意一种矩阵范数(当矩阵是Hermite矩阵时,矩阵的2范数恰好等于矩阵的谱半径)
继续给出线性方程组中条件数的定义
在某一矩阵空间中,对于某一矩阵范数,矩阵的条件数=矩阵的范数×矩阵的逆的范数,即
Cond(A)=∥A∥V×∥A−1∥V C o n d ( A ) = ‖ A ‖ V × ‖ A − 1 ‖ V
对于矩阵的条件数来说,它显然大于等于1,当矩阵恰好是正交矩阵的时候,矩阵的条件数恰好等于1
当矩阵为对称阵,对应的矩阵范数为2范数的时候,此时的条件数称之为谱条件数,其值等于最大特征值除以最小特征值,然后取绝对值