关于求解矩阵方程AXB = C的广义Richardson迭代及其收敛性
The Generalized Richardson Iteration for Solving the Matrix Equation AXB = C and Its Convergence Analysis
摘要: 本文研究了对于方程AXB = C在传统的Richardson方法基础上,与外推法结合得到的广义Richardson迭代方法。首先,提出广义Richardson迭代方法,然后证明其收敛性。最后,通过数值实验,验证了该迭代方法比传统的渐进迭代逼近法方法(PIA)更有效。
Abstract: This paper investigates the generalized Richardson iterative method for solving the matrix equation AXB = C, which combines extrapolation with the traditional Richardson method. Initially, the generalized Richardson iterative method is proposed, followed by the proof of its convergence. Finally, through numerical experiments, it is verified that this iterative method is more effective than the traditional Progressive Iterative Approximation (PIA) approach.
文章引用:何依琳. 关于求解矩阵方程AXB = C的广义Richardson迭代及其收敛性[J]. 应用数学进展, 2024, 13(7): 3257-3265. https://doi.org/10.12677/aam.2024.137312

1. 引言

矩阵方程AXB = C在科学计算和工程领域有着广泛的运用,是一个值得深入研究的问题,在实际问题中也发挥着重要作用,在电力系统潮流计算中,可以通过求解此方程组了解电力网络中各节点的电压以及功率信息;在图像处理技术中,将图像转变成矩阵的形式,通过求解AXB = C这个方程组,可以通过数据恢复原始图像;在计算机辅助几何设计中的曲面拟合中,也有着广泛的运用。而方程是AX = b方程AXB = C的一种特殊情况,当矩阵B为单位矩阵时,C为列向量时,矩阵方程AXB = C就成了Ax = c的形式。因此,如何求解矩阵方程AXB = C引起了国内外广泛学者的关注。

对于求解矩阵方程AXB = C,一般是使用直接法和迭代法进行求解,但是直接法数值不稳定,对于大规模矩阵需要较多的计算和存储资源,而迭代法[1]-[3]是通过逐步逼近方程AXB = C的解,在计算复杂度和存储需求方面较低。现在我们使用的迭代法大多是古典迭代法和投影迭代法,但是迭代法使得系数矩阵的条件数太大了。还有一种解决线性方程组的方法,特别是稀疏矩阵问题和大规模问题中,利用Kronecker积将线性方程组的求解问题转化为更高维度的矩阵方程的求解问题,这样会使得计算量变大。对于矩阵方程AXB = C其Kronecker的形式为: ( B T A )vec( X )=vec( C ) ,该格式在理论研究收敛性中比较实用,但在求解过程中不太符合实际,导致计算量太大。Tian [4]等人发展了一些古典迭代方法,所考虑的分裂是 B T A 的Jacobi和Gauss-Siedel分裂。

本文通过外推法引入参数 ω 给出了求解方程AXB = C的广义Richardson迭代法,并分析了这钟迭代方法的收敛性,最后利用数值实验证明了算法的有效性。

2. 相关引理

引理1 kronecker积中矩阵AB的满足的基本运算法则:

数乘运算: k( AB )=kAB=AkB kϜ Ϝ 为数域;

分配率: ( A+B )C=AC+BC ,其中 A,B m×n C p×q

结合率: ( AB )C=A( BC ) ,其中 A,B m×n C r×l

引理2 μ( A ) λ( B ) 分别是 A R n×n B R m×m 的谱,则

μ( AB )={ μ i λ j : μ i μ( A ), λ j λ( B ) },i=1,2,3,,n;j=1,2,3,,n

引理3 A m×n ,B n×p ,C s×r ,D r×l ,则 ( AB )( BD )=ABCD

引理4 A m×m ,B n×n ,则 ( AB ) =( A B ) ,如果 A,B 的逆矩阵存在,则还有 ( AB ) 1 = A 1 B 1 成立。

3. Richardson方法

当解系数矩阵为对称正定阵的大规模线性方程组问题时,我们一般采取Richardson迭代方法,这里我们考虑线性方程Ax = b的求解问题,这里的A是给定的n阶正定矩阵,b是一个n维向量,我们要求出x这个n维向量,这我们可以采取Richardson迭代,其对应的迭代公式为:

x ( n+1 ) = x ( n ) +ω( bA x ( n ) ),n=0,1,

其中 ω 为松弛因子, x ( 0 ) 为初始值,Richardson迭代算法还有一种形式为:

x ( n+1 ) =( IωA ) x ( n ) +ωb,n=0,1,

此时迭代矩阵 B( ω )=IωA

我们设矩阵A的特征值为 0 λ min = λ 1 λ 2 λ 3 λ n λ n+1 λ max ,则满足当 0<ω< 2 λ max 时,Richardson迭代收敛,且 ω= ω opt = 2 λ max + λ min 时,Richardson迭代的收敛速度最快。

4. 广义Richardson方法

我们把上述描述的求解线性方程AX = b的Richardson迭代推广到矩阵方程AXB = C上,对于矩阵方程AXB = C的求解问题,这里的 A n×n ,B m×m ,C n×m ,我们要求出X这个 n×m 的矩阵,这我们提出广义Richardson迭代,其对应的迭代格式为:

X ( k+1 ) = X ( k ) +ω( CA X ( k ) B )

其可表示成等价的向量形式:

x ( k+1 ) =( Iω B T A ) x ( k ) +ωc

其中 x=vec( X ),c=vec( C )

5. 广义Richardson的收敛性分析

5.1. AB特征值为正实数

定理1AB特征值为正实数, B T A 的特征值为 λ i ,i=1,,n ,当 ω= 2 λ max + λ min 时,迭代 x k+1 =( Iω B T A ) x k +ωC 的谱半径达到最小 ρ= λ max λ min λ max + λ min

证明:对于广义的Richardson迭代:

x ( k+1 ) = x ( k ) +ω( CA x ( k ) B )

其可表示成等价的向量形式:

x ( k+1 ) =( Iω B T A ) x ( k ) +ωc

其中 x=vec( X ),c=vec( C ) .该迭代的迭代矩阵 G ω =Iω B T A ,收敛因子 ρ ω =Iω B T A ,假设 B T A 的特征值为 λ i ,i=1,,n ,并且为正实数, μ i 满足

1α λ min μ i 1α λ max

如果迭代矩阵所有的特征值都为正,即 λ min >0 ,则为了使得该迭代收敛,则需要满足下述条件:

1ω λ max >1

1ω λ min <1

第一个条件意味着 ω< 2 λ max ,第二个条件意味着 ω>0 ,两式结合则可以推出使得迭代收敛应满足:

0<ω< 2 λ max

设该迭代最优的 ω ω opt ,当迭代矩阵的谱半径取到最小值时,此时的 ω ω opt ,其对应的谱半径为:

ρ G ω =max{ | 1ω λ min |,| 1ω λ max | }

Figure 1. The function curve of ρ G ω with respect to ω

1. ρ G ω 关于 ω 的函数曲线

图1所示,关于 ω 的函数当斜率为正的曲线 | 1ω λ max | 与斜率为负的曲线 | 1ω λ min | 相交时,这时取到最优的 ω ,应满足

1ω λ min =1+ω λ max

可以得到:

ω opt = 2 λ min + λ max

将其替换为两条曲线中的一条,得到相应最优的谱半径:

ρ opt = λ max λ min λ min + λ max

5.2. AB存在复特征值

B T A 的特征值为 λ i ,i=1,,n λ i = α j +i β j ,j=1,,n 且实部满足 α m α j α M <1,j=1,,n ,则迭代矩阵 G ω 的特征值为:

μ j =1ω( α+βi )=1ωα+ωβi,j=1,,n

迭代矩阵 G ω 的谱半径为:

ρ( G ω )=max| μ j |=max| 1ω( α+βi ) |,j=1,,n

定理2:设 λ i = α j +i β j ,j=1,,n ,为矩阵 B T A 的特征值,令

α m = min 1jn { α j } α M = max 1jn { α j } β M = max 1jn | β j | ω 1 = α m α m 2 + β M 2 ω 2 = α M α M 2 + β M 2 A= α m ( α M α m ) B=2 β M 2 ξ= min j { 2 α j α j 2 + β j 2 } ,则有:

1) 当 0<ω<ξ ,广义WPIA收敛。

2) 当 ω opt { ω 1 ,AB ω * ,AB ,广义WPIA的迭代矩阵 G ω 的上界取最小值,即

minρ( G ω ){ β M ( α m 2 + β M 2 ) 1 2 , ω opt = ω 1 , [ ( α m α M ) 2 +4 β M 2 ] 1 2 α m + α M , ω opt = ω * ,

证明:

μ j =1ω( α+βi )=1ωα+ωβi,j=1,,n ,要使迭代收敛,则对应的谱半径小于1,即 | μ j |<1 ,满足 ( 1ω α i ) 2 + ( ω β i ) 2 <1 ,解得 0<ω<ξ ξ= min j { 2 α j α j 2 + β j 2 } 时,该迭代收敛,(1)得证。

若要得到最优的 ω ,则要找到谱半径上界的最小值,

ρ 2 ( G ω )=max | μ i | 2 =max| ( 1ωα ) 2 + ( ωβ ) 2 | ( max| 1ω α i | ) 2 + ω 2 β M 2

我们只对 ω>0 感兴趣,则设 max| y i |= y M >0 ,则可以的得到下述式子:

α i < 1 ω ,则 1ω α i >0

max| 1ω α i |=max{ 1ω α i }=1ω α m

α i > 1 ω ,则 1ω α i <0

max| 1ω α i |=max{ ω α i 1 }=ω α M 1

α m < 1 ω < α M ,因此参数满足 1 α M <ω< 1 α m

max| 1ω α i |=max{ max{ ω α i 1 }, α i 1 ω ,max{ ω α i 1 }, α i 1 ω } =max{ ω α M 1,1ω α m }

综上所述,可得:

max| 1ω α i |={ 1ω α m , 1 α M <ω 2 α M + α m , ω α M 1, 2 α M + α m <ω 1 α M ,

下面我们记 ω * = 2 α M + α m ,则可以得到:

ρ 2 ( G ω ){ ( 1ω α m ) 2 + ω 2 β M 2 ,0<ω ω * , ( ω α M 1 ) 2 + ω 2 β M 2 , ω * <ω,

现在求出使得 ρ 2 ( G ω ) 最小的 ω

min ρ 2 ( G ω ){ min g 1 ( ω ),0<ω ω * , min g 2 ( ω ), ω * <ω,

为了寻找 min 0<ω ω * g 1 ( ω ) min ω * <ω g 2 ( ω ) ,我们可以考虑对 g 1 ( ω ) g 2 ( ω ) 进行求导可得 g 1 ( ω )0( ω> ω 1 ) g 2 ( ω )0( ω> ω 2 ) ,其中:

ω 1 = α m α m 2 + β M 2 , ω 2 = α M α M 2 + β M 2 ,

现在我们可以得到结论,如果 ω ω 1 ,则满足:

α m ( α M α m )2 β M 2 .

0< ω 1 ω * g 1 ( ω ) 0< ω 1 是单调递减的, g 1 ( ω ) ω 1 ω * 是单调递增的,所以在 ω 1 处取得最小,即当 0< ω 1 ω * 时, min 0< ω 1 ω * g 1 ( ω )= g 1 ( ω 1 )

ω 1 ω * 时, g 1 ( ω ) 是单调递减的,所以在 ω * 取得最小,即当 ω 1 ω * 时, min ω 1 ω * g 1 ( ω )= g 1 ( ω * ) 成立。

ω 2 ω * g 2 ( ω ) 是一个单调递增函数,所以在 ω * 取得最小,即当 ω ω * 时, min ω ω * g 2 ( ω )= g 2 ( ω * )= g 1 ( ω * ) 成立。

综上所述,可总结为:

min ρ 2 ( G ω ){ g 1 ( ω ),AB, g 1 ( ω * ),AB,

其中 A= α m ( α M α m ) B=2 β M 2 则可以得到:

minρ( G ω ){ β M ( α m 2 + β M 2 ) 1 2 ,AB, [ ( α m α M ) 2 +4 β M 2 ] 1 2 α m + α M ,AB,

对于上述的 minρ( G ) 的上界,我们可以作下述说明:

1) 当 AB 时,显然上界总是小于1,且以下式子成立:

minρ( G ω )= g 1 ( ω 1 )= β M ( α m 2 + β M 2 ) 1 2 <1

故在 α m +i β M G的特征值时:

minρ( G ω )= g 1 ( ω 1 )= β M ( α m 2 + β M 2 ) 1 2 ω opt = ω 1

2) 当 AB ,即 α m α M >2 β M 2 β M 2 ,故可以得到:

( α m α M ) 2 +4 β M 2 <( α m 2 + β M 2 )

那么可以得到:

g 1 ( ω * )= [ ( α m α M ) 2 +4 β M 2 ] 1 2 α m + α M <1

故在 α M +i β M 以及 α m +i β M G的特征值时:

minρ( G ω )= g 1 ( ω * )= [ ( α m α M ) 2 +4 β M 2 ] 1 2 α m + α M ω opt = ω * .

5.3. 数值实验

下面我们考虑将广义Richardson迭代运用到曲面拟合[5],首先我们回顾一下张量积曲面拟合的传统方法的细节,设两个标准化的正交积为 ( μ 0 ,, μ n ) ( ν 0 ,, ν n ) 。给定一组控制点序列为 { P ij },i=0,1,,m;j=0,1,,n ,则生成的张量基曲面可以表示为:

S( μ,ν )= i=0 m j=0 n P ij B i ( μ ) B j ( ν ),

且参数值满足 t 0 < t 1 << t m s 0 < s 1 << s n 这两组实递增序列,将其对应的参数对 ( t i , s j ) 赋予控制点 { P ij } ,从 i=0,1,,m;j=0,1,,n ,这个点列为初始控制点,则对应生成的初始张量积曲面为:

S ( 0 ) ( t,s )= i=0 m j=0 n P ij ( 0 ) μ i ( t ) ν j ( s ).

则进行第K + 1次迭代后可生成的曲面为:

S ( k+1 ) ( t,s )= i=0 m j=0 n P ij ( k+1 ) μ i ( t ) ν j ( s ).

对于K + 1次迭代,计算其对应的校正向量:

{ Δ uv ( k ) = P uv S ( k ) ( t u , s v ), P uv ( k+1 ) = P uv ( k ) + Δ uv ( k ) , (4.1)

其中, u=0,1,,n;v=0,1,,m .则可以得到

P uv ( k+1 ) = P uv ( k ) + P uv S ( k ) ( t u , s v ),

该迭代称为渐进迭代逼近,简称为PIA。

P uv ( k ) 排列成矩阵形式可以得到:

P ( k ) =( P 00 ( k ) , P 01 ( k ) ,, P 0m ( k ) , P 10 ( k ) , P 11 ( k ) ,, P 1m ( k ) ,, P n0 ( k ) , P n1 ( k ) ,, P nm ( k ) )

如果 lim k S ( k ) ( t u , S v )= P uv .则初始的 S ( 0 ) ( t u , S v ) 有PIA性质。

设A,B矩阵分别为正交积为 ( μ 0 ,, μ n ) ( ν 0 ,, ν n ) 的配置矩阵,则(2.1)可以写成:

P ( k+1 ) = P ( k ) +[ P( BA ) P ( k ) ] (4.2)

由上述的(2.2)式,我们也可以将其写成下面形式,

{ P x ( k+1 ) = P x ( k ) +[ P x ( BA ) P x ( k ) ], P y ( k+1 ) = P y ( k ) +[ P y ( BA ) P y ( k ) ], P z ( k+1 ) = P z ( k ) +[ P z ( BA ) P z ( k ) ], (4.3)

迭代(2.3)在数学上则等价于Richardson迭代,可以用来求解下列方程组:

( BA ) x = P x

( BA ) y = P y

( BA ) z = P z

看成数值线性代数问题,最好就是求解下面三个方程:

AX B = C 1

AX B = C 2 (4.4)

AX B = C 3

其中, vec( X )=x,vec( Y )=y,vec( Z )=z,vec( C 1 )= P x ,vec( C 2 )= P y ,vec( C 3 )= P z .

这里我们比较PIA算法和广义Richardson,刘成志[6]等人提出的三次均匀B样条扩展曲面的渐进迭代逼近法得出配置矩阵与形状参数λ有关,这里我们取AB矩阵为H-矩阵的三次B样条基,具体形式为:

A=( 1 0 4λ 24 8λ 12 4λ 24 4λ 24 8λ 12 4λ 24 0 1 ),B= A T

其中 2λ1 ,这里我们让 λ=1 ,求解了(4.4)对应的三个线性方程,要求的精度为108,结果如下表所示(表1)。

Table 1. CPU times (seconds) for PIA and generalized richardson

1. PIA与广义Richardson的CPU时间(秒)

n

PIA

广义Richardson

n = 10

0.003

0.002

n = 20

0.057

0.01

n = 30

0.348

0.03

n = 40

1.668

0.036

n = 50

5.728

0.037

n = 60

17.49

0.07

n = 70

45.6

0.072

n = 80

104.68

0.107

从表中数据可以清楚显示,广义Richardson明显快于PIA。当n的取值越大,广义Richardson的收敛速度越好,当 n=80 时,PIA方法所以需要的时间达到了10,468秒,而广义Richardson仅仅需要0.107秒。下面我们展示 λ=1,n=10 λ=1,n=30 的两个插值曲面(图2)。

(a) (b)

Figure 2. Interpolated surface plots when λ = 1,n=10 (left) and λ=1,n=30 (right)

2. λ = 1,n=10 (左) λ=1,n=30 (右)时插值曲面的图像

6. 结论

本文给出了解方程 AXB=C 的一种算法,该算法将外推法与Richardson方法相结合,通过寻找 ω 的取值来提高收敛速度。并且对AB矩阵分为特征值为实数和复数两种情况并且分别做了收敛性分析,最后利用曲面拟合来研究PIA算法和广义Richardson算法的速度。数值实验表明:广义Richardson方法明显快于PIA方法。

参考文献

[1] Peng, Z. (2005) An Iterative Method for the Least Squares Symmetric Solution of the Linear Matrix Equation AXB = C. Applied Mathematics and Computation, 170, 711-723.
https://doi.org/10.1016/j.amc.2004.12.032
[2] Peng, Y., Hu, X. and Zhang, L. (2005) An Iteration Method for the Symmetric Solutions and the Optimal Approximation Solution of the Matrix Equation AXB = C. Applied Mathematics and Computation, 160, 763-777.
https://doi.org/10.1016/j.amc.2003.11.030
[3] Huang, G., Yin, F. and Guo, K. (2008) An Iterative Method for the Skew-Symmetic Solution and the Optimal Approximate Solution of the Matrix Equation AXB = C. Journal of Computational and Applied Mathematics, 212, 231-244.
https://doi.org/10.1016/j.cam.2006.12.005
[4] Tian, Z., Tian, M., Liu, Z. and Xu, T. (2017) The Jacobi and Gauss-Seidel-Type Iteration Methods for the Matrix Equation AXB = C. Applied Mathematics and Computation, 292, 63-75.
https://doi.org/10.1016/j.amc.2016.07.026
[5] 蔺宏伟. 几何迭代法及其应用综述[J]. 计算机辅助设计与图形学学报, 2015, 27(4): 582-589.
[6] 刘成志, 韩旭里, 李军成. 三次均匀B样条扩展曲线的渐进迭代逼近法[J]. 计算机辅助设计与图形学学报, 2019, 31(6): 899-910.