论文部分内容阅读
在某些特殊情况下,Krylov子空间方法的残量下降曲线会出现不稳定的现象,如停滞现象,不规则振荡现象等,从而严重影响到Krylov子空间方法的收敛速度。本文以带多右端项的大规模稀疏线性系统为研究对象,针对上述不稳定问题提出两类用于求解对称正定线性系统的新型算法:带自适应重新启动过程的免中断块共轭梯度(Adaptive Restart procedures for the Breakdown-Free Block Conjugate Gradient,简称AR-BFBCG)算法,基于投影的收缩块共轭梯度(Projected variant of the Deflated Block Conjugate Gradient,简称PD-BCG)算法。详细的研究内容与主要成果如下:提出了一种自适应重启的AR-BFBCG方法。基于Powell在1977年针对共轭梯度算法提出的重新启动过程(后命名为:Powell’s restart),以及Dai等人于2004年在Powell’s restart基础上的工作,我们将这种重新启动过程推广并应用到求解带多右端项线性方程组的块共轭梯度(Block Conjugate Gradient,简称BCG)算法中。同时,结合Ji等人在2017年提出的免中断块共轭梯度(Breakdown-Free Block Conjugate Gradient,简称BFBCG)算法,提出AR-BFBCG方法用于求解带多右端项的对称正定线性系统。该方法继承了Powell’s restart的优点,可通过重启帮助消除BCG方法中出现的残差收敛行为不规则的现象,进而提高BCG的收敛速度。同时保留了BFBCG方法中免秩亏损的优点,可避免带重启的BCG方法在执行中可能会出现由秩亏损而导致的算法中断问题。数值试验表明,这类方法可有效“打破”残差收敛行为中的不规则现象,从而在一定程度上减少计算量,提高BFBCG算法的收敛速度。此外,在求解病态系统,或带秩亏损的多右端项线性系统时,该方法的数值优越性更加明显。设计了一种基于投影的PD-BCG方法。Chen在2011年提出收缩块共轭梯度(Deflated Block Conjugate Gradient,简称D-BCG)算法,该方法可通过收缩掉极端特征值(比如小特征值)来减小预处理矩阵的条件数,从而提高BCG算法收敛速度。但在有限精度算法(finite arithmetic)框架下,残差空间与收缩空间之间的正交性会随着算法的执行而逐渐丢失,而这种正交性的丢失会明显地影响算法的稳定性,导致残量下降曲线出现长时间停滞,甚至因正交性丢失过于严重而根本无法收敛。重正交(reorthogonalization)方法可用于修复这种丢失的正交性,但是其代价相当大。基于此,我们提出了PD-BCG算法来“延缓”这种正交性的丢失,并且理论表明这种“延缓”不需要任何额外代价,同时理论还表明PD-BCG与DBCG在数学上是等价的。最后数值实验表明,PD-BCG算法能够将这种正交性保持在一定程度内,进而有效解决了收敛停滞甚至不收敛的问题,验证了其有效性与数值稳定性。