三、解线性方程组的迭代法

一、概述

迭代法的基本思想是构造一串收敛到解的序列,即建立一种从已有近似解计算新的近似解的规则。

1.1 迭代法的一般形式

对线性方程组:

A x = b ( 3 − 1 ) Ax=b\quad\quad\quad\quad(3-1) Ax=b(31)

其中 A = ( a i j ) A=(a_{ij}) A=(aij) n × n n\times n n×n阶非奇异矩阵, b = ( b 1 , … , b n ) T b=(b_1,\dots,b_n)^T b=(b1,,bn)T。构造其形如:

x = M x + g ( 3 − 2 ) x=Mx+g\quad\quad\quad\quad(3-2) x=Mx+g(32)

的同解方程组,其中 M M M n n n阶方阵, g ∈ R n g\in\mathbb{R}^n gRn。任取初始向量 x ( 0 ) ∈ R n x^{(0)}\in\mathbb{R}^n x(0)Rn,代入迭代公式

x ( k + 1 ) = M x ( k ) + g ( k = 0 , 1 , 2 , …   ) ( 3 − 3 ) x^{(k+1)}=Mx^{(k)}+g\quad(k=0,1,2,\dots)\quad\quad\quad\quad(3-3) x(k+1)=Mx(k)+g(k=0,1,2,)(33)

产生向量序列 { x ( k ) } \{x^{(k)}\} {x(k)},当k充分大时,以 x ( k ) x^{(k)} x(k)作为方程组 ( 3 − 1 ) (3-1) (31)的近似解,这就是求解线性方程组的单步定常线性迭代法。式 ( 3 − 3 ) (3-3) (33)中的 M M M称为迭代矩阵。

为了研究迭代法的收敛性,必须先介绍向量序列与矩阵序列收敛的概念。

1.2 向量序列与矩阵序列的收敛性

由于 R n \mathbb{R}^n Rn中的向量可与 R n \mathbb{R}^n Rn中的点建立一一对应关系,由点列的收敛概念及向量范数的等价性,可得到向量序列的手链概念。

定义3.1

{ x ( k ) } \{x^{(k)}\} {x(k)} R n \mathbb{R}^n Rn中的向量序列, x ∈ R n x\in\mathbb{R}^n xRn,如果:

lim ⁡ k → ∞ ∥ x ( k ) − x ∥ = 0 ( 3 − 4 ) \lim\limits_{k\to\infty}\Vert x^{(k)}-x\Vert=0\quad(3-4) klimx(k)x=0(34)

其中 ∥ ⋅ ∥ \Vert\cdot\Vert 为向量范数,则称序列 { x ( k ) } \{x^{(k)}\} {x(k)}收敛于 x x x,记为:

lim ⁡ k → ∞ x ( k ) = x ( 3 − 5 ) \lim\limits_{k\to\infty}x^{(k)}=x\quad(3-5) klimx(k)=x(35)

定理3.1

R n \mathbb{R}^n Rn中的向量序列 { x ( k ) } \{x^{(k)}\} {x(k)}收敛于 R n \mathbb{R}^n Rn中的向量 x x x当且仅当

lim ⁡ k → ∞ x i ( k ) = x i ( i = 1 , 2 , … , n ) \lim\limits_{k\to\infty}x_i^{(k)}=x_i\quad(i=1,2,\dots,n) klimxi(k)=xi(i=1,2,,n)

其中 x ( k ) = ( x 1 ( k ) , x 2 ( k ) , … , x n ( k ) ) , x = ( x 1 , x 2 , … , x n ) x^{(k)}=(x_1^{(k)},x_2^{(k)},\dots,x_n^{(k)}),x=(x_1,x_2,\dots,x_n) x(k)=(x1(k),x2(k),,xn(k)),x=(x1,x2,,xn)

定义3.2

{ A ( k ) } \{A^{(k)}\} {A(k)} n n n阶方阵序列, A A A n n n阶方阵,如果:

lim ⁡ k → ∞ ∥ A ( k ) − A ∥ = 0 ( 3 − 6 ) \lim\limits_{k\to\infty}\Vert A^{(k)}-A\Vert=0\quad(3-6) klimA(k)A=0(36)

其中 ∥ ⋅ ∥ \Vert\cdot\Vert 为矩阵范数,则称序列 { A ( k ) } \{A^{(k)}\} {A(k)}收敛于矩阵 A A A,记为:

lim ⁡ k → ∞ A ( k ) = A ( 3 − 7 ) \lim\limits_{k\to\infty}A^{(k)}=A\quad(3-7) klimA(k)=A(37)

定理3.2

A ( k ) = ( a i j ( k ) ( k = 1 , 2 , …   ) , A = ( a i j ) A^{(k)}=(a_{ij}^{(k)}(k=1,2,\dots),A=(a_{ij}) A(k)=(aij(k)(k=1,2,),A=(aij)均为 n n n阶方阵,则矩阵序列 { A ( k ) } \{A^{(k)}\} {A(k)}收敛于矩阵 A A A的充要条件为

lim ⁡ k → ∞ a i j ( k ) = a i j ( i , j = 1 , 2 , … , n ) \lim\limits_{k\to\infty}a_{ij}^{(k)}=a_{ij}\quad(i,j=1,2,\dots,n) klimaij(k)=aij(i,j=1,2,,n)

定理3.1和3.2表明,向量序列和矩阵序列的手链可以归结为对应分量或对应元素序列的收敛。

由以上讨论容易看出,若按式(3-3)产生的向量序列收敛于向量 x x x,则有:

x = lim ⁡ k → ∞ x ( k + 1 ) = lim ⁡ k → ∞ [ M ( x ( k ) + g ] = M x + g x=\lim\limits_{k\to\infty}x^{(k+1)}=\lim\limits_{k\to\infty}[M(x^{(k)}+g]=Mx+g x=klimx(k+1)=klim[M(x(k)+g]=Mx+g

x x x是方程组(3-1)的解。

二、几种基本的迭代法

2.1 雅可比(Jacobi)迭代法

设方程组

{ a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 … a n 1 x 1 + a n 2 x 2 + ⋯ + a n n x n = b n ( 3 − 8 a ) \begin{cases}a_{11}x_1+a_{12}x_2+\dots+a_{1n}x_n=b_1\\a_{21}x_1+a_{22}x_2+\dots+a_{2n}x_n=b_2\\\dots\\a_{n1}x_1+a_{n2}x_2+\dots+a_{nn}x_n=b_n\end{cases}\quad\quad(3-8a) a11x1+a12x2++a1nxn=b1a21x1+a22x2++a2nxn=b2an1x1+an2x2++annxn=bn(38a)

的系数矩阵 A A A非奇异,且 a i i ≠ 0 ( i = 1 , 2 , … , n ) a_{ii}\ne0(i=1,2,\dots,n) aii=0(i=1,2,,n)。将方程组 ( 3 − 8 a ) (3-8a) (38a)变形为:

{ x 1 = b 12 x 2 + b 13 x 3 + ⋯ + b 1 n x n + g 1 x 2 = b 21 x 1 + b 22 x 3 + ⋯ + b 2 n x n + g 2 … x n = b n 1 x 1 + b n 2 x 2 + ⋯ + b n n − 1 x n − 1 + g n ( 3 − 8 b ) \begin{cases}x_1=b_{12}x_2+b_{13}x_3+\dots+b_{1n}x_n+g_1\\x_2=b_{21}x_1+b_{22}x_3+\dots+b_{2n}x_n+g_2\\\dots\\x_n=b_{n1}x_1+b_{n2}x_2+\dots+b_{nn-1}x_{n-1}+g_n\end{cases}\quad\quad(3-8b) x1=b12x2+b13x3++b1nxn+g1x2=b21x1+b22x3++b2nxn+g2xn=bn1x1+bn2x2++bnn1xn1+gn(38b)

其中 b i j = − a i j a i i ( i ≠ j i , j = 1 , 2 … , n ) , g i = b i a i i ( i = 1 , 2 , … , n ) b_{ij}=-\frac{a_{ij}}{a_{ii}}(i\ne j\quad i,j=1,2\dots,n),g_i=\frac{b_i}{a_{ii}}(i=1,2,\dots,n) bij=aiiaij(i=ji,j=1,2,n),gi=aiibi(i=1,2,,n)。记对角矩阵:

D = d i a g ( a 11 , a 22 , … , a n n ) , D − 1 = d i a g ( 1 a 11 , 1 a 22 , … , 1 a n n ) D=diag(a_{11},a_{22},\dots,a_{nn}),D^{-1}=diag(\frac{1}{a_{11}},\frac{1}{a_{22}},\dots,\frac{1}{a_{nn}}) D=diag(a11,a22,,ann),D1=diag(a111,a221,,ann1)

四、最速下降法与共轭梯度法

最速下降法与共轭梯度法是基于变分法原理的迭代法,等价于求一个二次函数的极值,也是求解大型稀疏对称正定方程组的最有效方法之一。

4.1 最速下降法

当方程组(3-1)的系数矩阵 A A A对称正定时,任取 x ∈ R n x\in\mathbb{R}^n xRn,构造二次函数:

φ ( x ) = 1 2 ⟨ A x , x ⟩ − ⟨ b , x ⟩ = 1 2 ∑ i = 1 n ∑ j = 1 n a i j x i x j − ∑ j = 1 n b j x j ( 3 − 27 ) \varphi(x)=\frac{1}{2}\langle Ax,x\rangle-\langle b,x\rangle\\\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad=\frac{1}{2}\sum\limits_{i=1}^n\sum\limits_{j=1}^na_{ij}x_ix_j-\sum\limits_{j=1}^nb_jx_j\quad\quad(3-27) φ(x)=21Ax,xb,x=21i=1nj=1naijxixjj=1nbjxj(327)

利用 A A A的对称性,容易证明 φ \varphi φ具有如下性质:

  1. φ \varphi φ的梯度 ∇ φ ( x ) = A x − b \nabla\varphi(x)=Ax-b φ(x)=Axb
  2. 对于任意的 x , y ∈ R n x,y\in\mathbb{R}^n x,yRn,实数 α ∈ R \alpha\in\mathbb{R} αR,有:
    φ ( x + α y ) = 1 2 ⟨ A ( x + α y ) , ( x + α y ) ⟩ − ⟨ b , ( x + α y ) ⟩ = φ ( x ) + α ⟨ A x − b , y ⟩ + α 2 2 ⟨ A y , y ⟩ \varphi(x+\alpha y)=\frac{1}{2}\langle A(x+\alpha y),(x+\alpha y)\rangle-\langle b,(x+\alpha y)\rangle\\\quad\quad=\varphi(x)+\alpha\langle Ax-b,y\rangle+\frac{\alpha^2}{2}\langle Ay,y\rangle φ(x+αy)=21A(x+αy),(x+αy)b,(x+αy)=φ(x)+αAxb,y+2α2Ay,y
  3. x ∗ = A − 1 b x^*=A^{-1}b x=A1b是方程组 ( 3 − 1 ) (3-1) (31)的解,则:
    φ ( x ∗ ) = − 1 2 ⟨ b , x ∗ ⟩ = − 1 2 ⟨ A x ∗ , x ∗ ⟩ \varphi(x^*)=-\frac{1}{2}\langle b,x^*\rangle=-\frac{1}{2}\langle Ax^*,x^*\rangle φ(x)=21b,x=21Ax,x
    且对于任意的 x ∈ R n x\in\mathbb{R}^n xRn,有:
    φ ( x ) − φ ( x ∗ ) = 1 2 ⟨ A x , x ⟩ − ⟨ b , x ⟩ + 1 2 ⟨ b , x ∗ ⟩ = 1 2 ⟨ A ( x − x ∗ ) , ( x − x ∗ ) ⟩ \varphi(x)-\varphi(x^*)=\frac{1}{2}\langle Ax,x\rangle-\langle b,x\rangle+\frac{1}{2}\langle b,x^*\rangle\\\quad\quad\quad\quad=\frac{1}{2}\langle A(x-x^*),(x-x^*)\rangle φ(x)φ(x)=21Ax,xb,x+21b,x=21A(xx),(xx)

定理3.9

A A A对称正定,则 x ∗ x^* x是方程组 A x = b Ax=b Ax=b的解的充要条件是 x ∗ x^* x满足

φ ( x ∗ ) = min ⁡ x ∈ R n φ ( x ) \varphi(x^*)=\min\limits_{x\in\mathbb{R}^n}\varphi(x) φ(x)=xRnminφ(x)

你可能感兴趣的:(数值分析,线性代数,概率论,算法)