1. 引言
考虑下面的多线性系统
(1)
其中
是一个m阶n维的张量,
是一个n维向量。张量向量积的第i个分量被定义为
多线性系统在偏微分方程[1],张量互补问题[2] [3],张量特征值问题[4],信息处理[5] [6]和高阶马尔可夫链[7]等方面有着广泛的应用。
对于多线性系统已经有一些理论结果和数值算法。2016年,Ding和Wei [1]首先证明了
张量多线性系统具有唯一正解,从而确定了
张量多线性系统解的存在性。在数值解法方面,有全局二次收敛算法[8],同伦方法[9],张量分裂法[10],基于神经网络的方法[11],Richardson及其预处理迭代法[12],张量方法[13]和非线性共轭梯度法[14]等。为了进一步提高算法的效率,2018年,Li和Liu [15]把多线性系统和预处理技术结合起来,有了下面的预处理多线性系统
(2)
其中,
是一个非奇异矩阵,被称为预处理子。
在本文中,我们研究的是求解
张量多线性系统的一种新预处理Richardson迭代法。文章结构组织如下,在第二节,我们给出了一些相关的预备知识。在第三节,我们给出了Richardson迭代法和其预处理形式,并提出新预处理Richardson迭代法。在第四节,我们分析了新预处理Richardson迭代法的收敛性。在第五节,我们给出了一个数值例子来验证所提方法的有效性和可行性。在最后一节,我们给出一些结论。
2. 预备知识
在这一节,我们将给出有关
张量相关的定义,引理和定理,这将在后续的章节中用到。
定义2.1 [16] 设
,
,其元素
(其中
)被称为对角元素,其余元素被称为非对角元素。当且仅当其非对角元素为零时,
是一个对角张量。如果张量
中的所有元素
,则
是一个非负张量。
定义2.2 [17] 设
,张量
的主化矩阵
是一个
的矩阵,其元素
,其中
定义2.3 [18] [19] 设
,如果张量
的非对角元素都是非正的,则
是一个
张量。如果存在一个非负张量
和一个正实数
,使得
,
则称
是一个
张量,其中
是单位张量。如果
,则称
是一个强(非奇异)
张量。
定理2.1 [18] 设
,如果
满足以下方程,则它是
的一个特征对(特征值–特征向量)
,
其中
。如果
,则它是一个H-特征对。
的谱半径用
表示,定义为
,其中
是
的所有特征值的集合。
定理2.2 [1] 如果
是一个强
张量,那么对于每一个正向量
,多线性系统
都有一个唯一的正解。
定义2.4 [10] 设
,
,和
是相同阶数和维度的张量,如果
是左非奇异的,则
是
(1)
的一个分裂;
(2) 一个正则分裂,如果
且
;
(3) 一个弱正则分裂,如果
且
;
(4) 一个收敛分裂,如果
。
在这里,
和
通常用来表示零矩阵和零张量。
引理2.1 [3] 如果
是一个
张量,下面的条件是等价的
(1)
是一个强
张量;
(2) 存在一个可逆正定Z-矩阵B和一个半正的
张量
,使得
;
(3)
有一个收敛的(弱)正则分裂;
(4)
的所有的(弱)正则分裂是收敛的。
定理2.3 [12]
是一个多线性系统,其中
是一个强
张量,
,精确解
。如果
,那么迭代法(4)是收敛的,其中
,
是矩阵C的特征值。
3. Richardson迭代法和新预处理Richardson迭代法
在本节中,我们将给出Richardson迭代法和其预处理形式,并提出新预处理Richardson迭代法。
2023年,Liang [12]已经提出了多线性系统的Richardson迭代法及其预处理的迭代形式。首先,多线性系统(1)可以表示成下面的不动点问题
, (3)
其中,
是一个参数,
,
是单位张量。根据(3)式,Richardson迭代法被定义为
(4)
其中,
是初始向量,
是第k次迭代时的误差。
2018年Li等人[15]提出了预处理子
,其中
,
,
。2020年Liu等人[20]提出了又提出了预处理子
,其中
,
,
。后来,Cui等人[21]在同一年再次提出了另一个预处理子
,其中
,
,
。我们知道,以上三种预处理子是结合张量分裂法来求解多线性系统的有效方法。2023年,Liang [12]把以上三种预处理子和Richardson迭代法结合起来,用预处理Richardson迭代法求解了
张量多线性系统。由(2)式和(4)式我们知道,预处理的Richardson迭代法被定义为
, (5)
其中,
是一个张量,
是一个向量。不同的预处理子
对多线性系统有不同的预处理效果,当选择合适且有效的预处理子时,可以有效改变迭代法的收敛速度,从而极大地提高求解多线性系统的效率。
在本文中,我们提出一个新的预处理子
,它是一个一般的预处理子,其中
,
,
。如果给非奇异矩阵
的某些位置取0元素,它就会变成以上的几种预处理子。当
,我们提出的预处理子就变成了
。当
,我们提出的预处理子就变成了
。当
,我们提出的预处理子就变成了
。我们把新提出的预处理子
和(5)式结合起来就得到新预处理Richardson迭代法。
4. 新预处理Richardson迭代法的收敛性
为了加快本文提出的新预处理Richardson迭代法的收敛速度,我们对具有正向量
的强
张量多线性系统采用了预处理子
,下面的引理3.1和定理3.4保证了多线性系统(1)正解的不变性。
引理3.1 [12] 如果张量
是一个强
张量,那么对于任意的
,
也是一个强
张量。
定理3.4设
是m阶n维强
张量,b是n维正向量。然后预处理的多线性系统
与原系统
具有相同的唯一正解。
证明 首先,我们证明
是一个强
张量,考虑它的非对角元素
当
,
,我们有
,那么
是一个
张量。我们将
分裂为
,令
,那么
,
,显然,
,
。因为
,其中
是单位矩阵,
是主化矩阵
的严格下三角部分,所以
是一个弱正则分裂,又
是一个强
张量,根据定义2.4的等价条件和引理2.1,我们证明了
是一个强
张量。由引理3.1我们知道
是一个强
张量,那么,
也是一个强
张量。显然,
,那么
根据定理2.2,可以证明预处理的多线性系统
与原系统
具有相同的唯一正解。
接下来我们分析新预处理Richardson迭代法的收敛性。
引理3.2 设
是一个强
张量,
,
,
,
。
那么,
是
的一个正则分裂。
证明 首先,
是
的一个分裂,根据定义2.2,我们知道
是一个单位矩阵,单位张量
是左非奇异的,
,我们只需要证明
,因为
是一个强
张量,
的非对角元素是非正的,这表明张量
的非对角元素的非负的,接下来,我们考虑张量
的对角元素。因为
,
,所以
又
,所以
,张量
的对角元素是非负的,我们证明了
,又
,所以
是
的一个正则分裂。
定理3.5 设
是一个强
张量,
,其中,
,那么
。
证明 因为
,我们有
,根据定理2.1,存在
和一个非负向量
满足
,此时:
(6)
根据定理2.3,我们有
。因为
且
,根据(6)式,有
,所以
。
根据定理3.5,我们可以得出结论,新预处理的Richardson迭代法比Richardson迭代方法收敛得更快。
5. 数值实验
在本节中,我们给出一个数值例子,分别从迭代步数(“IT”)和运行时间(“CPU”)来验证所提方法的可行性和有效性。在计算过程时,我们给定的误差界是1 × 10−11,迭代的最大次数是2000,当误差小于给定的误差界或迭代步数超过迭代的最大步数时,迭代终止。以下数值结果是1.80 GHZ的中央处理器(Intel(R)Core(TM)i7-8550U)和内存为8 GB的个人计算机在Windows11环境下使用MATLABR2023a进行计算的。
例5.1. 我们构造一个三阶三维
张量的多线性系统。首先,我们使用MATLAB随机生成一个三阶三维的非负张量
。
其中
表示的是按模1把张量展开。接下来,我们定义标量
.
在这里,我们取
,
,
。然后由
,我们得到张量
表1显示了五种不同的Richardson迭代法求解
张量多线性系统的迭代次数(“IT”)和计算时间(“CPU”)。
,
,
和
分别表示的是带有预处理子
,
,
和
的Richardson迭代法,
,
,
和
在第四节已经给出。
Table 1. Numerical results
表1. 数值结果
|
Richardson |
P1R |
P2R |
P3R |
PR |
α |
IT |
CPU |
IT |
CPU |
IT |
CPU |
IT |
CPU |
IT |
CPU |
0.04 |
381 |
0.005645 |
316 |
0.002217 |
250 |
0.005570 |
287 |
0.004143 |
216 |
0.003131 |
0.08 |
183 |
0.004595 |
151 |
0.002090 |
120 |
0.001249 |
136 |
0.002655 |
100 |
0.001596 |
0.12 |
117 |
0.001367 |
96 |
0.001267 |
78 |
0.000804 |
86 |
0.001345 |
60 |
0.001181 |
0.16 |
84 |
0.001575 |
68 |
0.000902 |
59 |
0.000919 |
60 |
0.000930 |
41 |
0.000655 |
0.20 |
64 |
0.000919 |
51 |
0.000708 |
48 |
0.000886 |
45 |
0.000545 |
30 |
0.000566 |
0.24 |
51 |
0.002115 |
40 |
0.000587 |
43 |
0.000607 |
40 |
0.000390 |
22 |
0.000565 |
0.28 |
102 |
0.001560 |
55 |
0.000683 |
98 |
0.001400 |
102 |
0.000968 |
17 |
0.000231 |
0.32 |
2000 |
0.053824 |
136 |
0.001851 |
2000 |
0.036499 |
2000 |
0.048126 |
20 |
0.000311 |
在表1中,参数
,步长为0.04,从表中可以看出,当迭代步数达到最大的迭代步数时,
,
两种方法还没有收敛到精确解。我们提出的新预处理Richardson (PR)的迭代步数和计算时间在计算过程中都是最小的,因此,不难看出该方法是最有效的。
6. 总结
本文提出了一个新的预处理子并给出了一种新预处理Richardson迭代法,然后证明了该方法的收敛性和有效性。通过将新预处理Richardson迭代法与以往研究中的四种方法进行比较,结果表明,在迭代步数和CPU方面,我们所提出的方法更好一点,有效改变了Richardson迭代法的收敛速度,在张量特征值和张量互补问题有一定的应用。然而,不同的预处理子对多线性系统有不同的预处理效果,我们只考虑了一个预处理子。在今后的研究中,我们可以考虑其它的预处理子对多线性系统的预处理效果,同时也可以研究包括预处理技术更多的加速方法。