1. 引言
非线性系统的求解问题在科学计算领域占据基础性的核心地位。对于具有方阵结构的非线性系统,若在某一特定解处雅可比矩阵满秩且不存在奇异性,那么称该解为正则解。特别地,当非线性系统的解集构成一个流形时,这些解称为流形解。
流形解的求解方法已得到广泛研究。Allgower和Georg [1]提出的同伦延拓法通过构造连续的同伦路径,能够有效追踪非线性系统的多解问题,特别适用于解集构成流形的情况。Sommese和Wampler [2]利用数值代数几何方法,通过构造多项式系统的解空间,显著提高了流形解的求解精度。Tenenbaum等人[3]提出的流形学习方法通过提取非线性系统的低维流形结构,为流形解的降维求解提供了有效途径。Bates等人[4]研究了多项式系统的数值解流形,提出了基于代数几何的高效算法。Hauenstein和Sottile [5]利用数值同伦方法求解多项式系统的流形解,为流形解的全局求解提供了新思路。此外,Kuznetsov [6]基于分岔理论的方法通过分析系统参数变化时解的稳定性,揭示了流形解的分岔行为。O’Malley [7]引入的奇异摄动法通过分解系统的快慢尺度特性,能够求解具有多尺度行为的流形解。Raissi等人[8]将深度学习引入数值计算,通过训练神经网络逼近非线性系统的解,为高维流形解的求解提供了新的思路。
近年来,许多学者尝试使用牛顿法计算流形解。Griewank和Walther [9]提出自动微分技术,通过精确计算雅可比矩阵和高阶导数,提高了牛顿法在流形解附近的收敛性,但是计算量较大。Deuflhard [10]引入拟牛顿法,通过近似雅可比矩阵的逆矩阵,避免了直接处理奇异点带来的数值不稳定性,但存在收敛缓慢甚至不收敛的问题。Kelley [11]提出基于Krylov子空间的方法,通过迭代求解线性化系统的近似解,提高了大规模非线性系统中流形解的求解效率,但对初始向量的选择较为敏感。我们提出的算法解决了牛顿法在求解非线性系统流形解上的收敛性问题。
本文运用边界矩阵技术[12],将一般系统的流形解问题转化为求解方形增广系统的正则解问题。利用雅可比矩阵的近似左零空间和右零空间构造增广矩阵并求逆,对传统牛顿迭代进行改进。经过理论推导证明了改进后的牛顿迭代具有局部二阶收敛性,并通过数值计算证明了该方法的有效性。
2. 符号和预备知识
列向量由小写黑体字母表示,如
,
,
,其中
代表零维向量。向量中的元素用普通小写字母表示,如
。我们分别用
,
,
和
表示实数,复数,有理数和非负整数集合,矩阵由大写字母表示,如
,其中
和
分别表示零矩阵和单位矩阵。设
是
的奇异值分解,其中
是左奇异向量形成的酉矩阵,
是右奇异向量形成的酉矩阵。
如果
具有二阶连续导数,其中
或者
,域
是
的开子集,则称
是一个光滑映射。指定变量
,有
,则
在任何特定
处的雅可比矩阵可表示为
。
定义1:如果存在
,则
的解
满足条件
则
是
孤立解。
定义2:设
是
的解,如果存在
的开邻域
,使得
,其中
是一个定义
在内满足条件
的可微映射,且
,则
作为
零点其维数定义为
3. 边界系统
对于给定的
,
的奇异值分解表示为
,其中
,
,
,
。
和
分别是
的左零和右零空间。如果近似解
足够接近
,则有以下假设
假设1:假设有误差
,满足
那么有
分别是
的近似左零空间和右零空间。
定理1:设
是光滑映射
在
的开域
中任意
处的雅可比矩阵,假设在
处雅可比矩阵的秩是k,则矩阵
(1)
是非奇异矩阵。
证明:假设矩阵(1)是奇异的,则存在非零向量
,使得
根据奇异值分解的定义,有
,因此存在向量
使得
,故
因为
所以
故
,与已知矛盾,所以矩阵(1)非奇异。 □
定理2:设
为Lipschitz常数,使得对于任何
,
如果
(2)
那么存在一个开集
,使得
,并且对于任何
,
是非奇异的。
证明:由于
是足够接近
的近似解,所以存在一个开集
,使得对于任何
,有
显然
。因为
发现对于任何
,有
由定理2可知,对于任何
,
是非奇异的。 □
4. 数值算法
对于非线性系统
,设
为其对应雅可比矩阵的奇异值分解。对于
,令
,其中
,
。令
,其中
,
。引入
维向量
,定义增广非线性系统
(3)
将求解系统
的流形解问题转化为求解系统
的正则解。
令
为系统
的初始近似解,由于非线性系统(3)是高度非线性系统,本文利用交替迭代方法的思想,构造一系列非线性系统
,其中
具体而言,设
是方程
的第k步近似解,计算
的雅可比矩阵
,得到
,
,则系统
定义为
利用牛顿迭代法求解系统
,即
(4)
利用更新后的
,计算奇异值分解
,得到
,
,进而构造非线性系统
。令
,增广后的雅可比矩阵表示为
,则牛顿迭代(4)可以表示成
(5)
下面证明牛顿迭代(4)具有局部二阶收敛性。
定理3:设
于开集
上连续可微,
是
的正则解,
非奇异,且
在
的某个邻域内满足Lipschitz条件,则存在
的一个邻域
,使得对于任意初始点
,由牛顿迭代(4)产生的序列
收敛到
,且在
局部具有二阶收敛性,即当
收敛到
时,存在常数
和正整数
,使得对于
,满足不等式
。
证明:由式(5)可以得到
(6)
将
进行泰勒展开得到
(7)
又
,将式(7)代入式(6)有
(8)
因为
非奇异且满足Lipschitz条件,则有
于是对式(8)化简可得
因此存在常数
和正整数
,使得对于
,满足
□
在特定的假设条件下,定理3证明了牛顿迭代(4)在正则解处的局部二阶收敛性。
5. 应用分析
非线性系统流形解的计算可以应用于数值问题中,比如亏损特征值的求解[13]。亏损特征值是指矩阵的几何重数小于代数重数的特征值。对于给定的矩阵
和近似特征值
,计算矩阵
的奇异值分解,得到左零空间
和右零空间
,根据奇异值分布确定数值秩
。构造边界矩阵
使用边界矩阵的某些分量的解
来构造非线性系统
,具体来说
根据不同的
和
来构造增广系统
,通过牛顿迭代
求解出亏损特征值,其中
是雅可比矩阵。通过奇异值分解和边界矩阵技术,可以将亏损特征值问题转化为增广非线性系统的流形解问题,利用牛顿迭代算法实现亏损特征值的求解。在优化理论与算法设计方面,许多复杂的优化问题同样也可转化为求解特定的非线性系统,利用文中算法进行求解。本文算法具有一定应用价值,但在大规模非线性系统的计算中,算法的计算复杂度较高,尤其是奇异值分解的计算成本较大,因此后续需要对算法进行研究完善,进一步拓展算法应用范围。
6. 数值计算
例1 考虑如下从
的映射
此代数系统的解是单位圆
。将非线性系统
引入1维向量
,转化为高度非线性系统
,利用牛顿迭代公式(4)进行求解。
从初始点
开始迭代,牛顿迭代最终在单位圆上收敛到点
从初始点
开始,迭代收敛到点
从初始点
开始,迭代收敛到点
从初始点
开始,迭代收敛到点
可以发现,迭代结束后的引入向量
十分趋于0。经验算,迭代所求解是非线性系统
的较好近似解。如图1所示,4个迭代序列都渐进地遵循解集的类法线方向朝向特定解。
例2
例3
例4
易知例2~4代数系统的解包括单位圆
。将非线性系统引入一维向量
,转化为新的非线性系统
。选取4个初始迭代点,迭代结果分别如表1~3所示,迭代序列效果分别如图2~4所示。从图中可以看出,迭代序列同样均遵循解集的类法线方向朝向特定解。
Figure 1. Iteration direction diagram of numerical Example 1
图1. 算例1迭代朝向图
Table 1. Example 2 iterative solution
表1. 例2迭代求解
|
|
|
(1.8, 0.5, 0.1) |
(0.878826438051687, 0.477141584628068) |
3.5570e−33 |
(0.2, 0.4, 0.1) |
(0.588654514186236, 0.808384724576217) |
2.6402e−22 |
(0.6, 1.6, 0.1) |
(0.269023744780287, 0.963133544605519) |
7.0997e−30 |
(0.3, 0.2, 0.1) |
(0.922612396045897, 0.385728358644330) |
2.9969e−24 |
Figure 2. Iteration direction diagram of numerical Example 2
图2. 例2迭代朝向图
Table 2. Example 3 iterative solution
表2. 例3迭代求解
|
|
|
(1.65, 0.6, 0.1) |
(0.850885993243707, 0.525350384507016) |
4.7980e−18 |
(0.4, 1.7, 0.1) |
(0.457920680902070, 0.888993053967344) |
3.8687e−18 |
(0.4, 0.5, 0.1) |
(0.560400914857473, 0.828221476796459) |
2.4652e−32 |
(0.6, 0.35, 0.1) |
(0.923495769373285, 0.383608607762710) |
0.00 |
Figure 3. Iteration direction diagram of numerical Example 3
图3. 例3迭代朝向图
Table 3. Example 4 iterative solution
表3. 例4迭代求解
|
|
|
(1.8, 0.5, 0.1) |
(0.983286424282257, 0.182065394356570) |
−5.9714e−33 |
(0.2, 0.6, 0.1) |
(0.241174587977960, 0.970481745378892) |
−2.0251e−32 |
(0.55, 1.75, 0.1) |
(0.556801891416083, 0.830645323658342) |
−4.3141e−32 |
(0.5, 0.3, 0.1) |
(0.829387581140966, 0.558673643775270) |
0.00 |
例5
例6
例7
例8
例9
Figure 4. Iteration direction diagram of numerical Example 4
图4. 例4迭代朝向图
使用MATLAB软件对例5~9进行迭代求解,结果如表4所示。从表中可以看出,引入向量
十分趋近于0,展示了改进牛顿迭代法对方形非线性系统正则解的良好收敛性。
Table 4. Iterative solution of nonlinear systems with regular solutions
表4. 非线性系统正则解迭代求解
system |
|
|
|
Example 5 |
(0.01, 0.01, 0.01) |
(−1.3346e−17, −6.6534e−18) |
−3.7541e−84 |
Example 6 |
(1.01, 1.01, 1.01, 0.01) |
(0.0398, 3.0949e−21, −1.3547e−21) |
1.3547e−21 |
Example 7 |
(0.001, 0.001, 0.001) |
(9.3354e−18, 2.2538e−17) |
7.4967e−66 |
Example 8 |
(0.001, 0.001, 0.001, 0.001) |
(1.2268e−17, 1.2268e−17, 1.2268e−17) |
−8.0540e−66 |
Example 9 |
(1.01, 0.01, 1.01, 0.1) |
(0.4680, −0.5466, 0.8948) |
−0.5595 |
7. 结论
我们将非线性系统
扩展至高维非线性系统
,利用牛顿迭代公式
计算增广非线性系统的正则解,使其逼近原非线性系统的流形解。理论推导证明迭代在正则解附近局部二阶收敛,并通过数值计算证明了该方法的有效性。在未来的研究中,我们将探索更高效的矩阵分解技术和并行计算策略,以降低计算复杂度,提升算法在大规模问题上的适用性。
NOTES
*通讯作者。