牛顿迭代法传奇(下):意犹未尽,柳暗花明

作者: 曾钟钢、丁玖

来源: 返朴

发布日期: 2021-06-29

牛顿迭代法的发展历程展示了数学家们在解决新问题时的探索精神。牛顿法不仅是一个简单的算法,它的推广和修正使其成为解决非线性方程组的重要工具。文章探讨了牛顿法的基本思想、适用条件以及在超定方程组中的应用,强调了光滑性、正则性和局部性的重要性。同时,提出了降秩牛顿法作为解决奇异问题的新方法,展现了牛顿法在现代计算数学中的广泛应用和潜力。

一项科学发现常常只能被幸运地发现一次。而牛顿法则一次次被重新推广和修正,每次新发现的结果是,我们原来知道的牛顿法不过是新版的特例而已。其发展和演变历史,正是数学学人不断探索新领域解决新问题过程的写照。牛顿法的奇妙还在于,从诞生以来的一次次发展、推广和创新都是实质性的,而不仅仅是修边角式的改善。

在《牛顿迭代法传奇(上):张冠李戴的命名》中我们说到,科学计算和工程计算上最基本最重要的通用算法“牛顿法”的发明史,是一部诸多大数学家前仆后继的传奇史,从巴比伦-赫伦,到韦达,到牛顿,到拉夫森,到辛普森等等,许多数学家将看似简单的牛顿法不断赋予新的内涵。直至今天,这个传奇仍旧没有结束,本文将剖析牛顿法的基本思想和深层含义,并介绍牛顿法的最新进展。

牛顿法的思想在谈论牛顿法扑朔迷离的历史后,我们再次写下本文上篇给出的由辛普森发明的单变量方程牛顿迭代法。我们可以用现在成熟的微积分观点来探讨牛顿法的深层含义。把一个最一般的非线性方程组写成算子方程f(x) = 0并假定变元x是个n维向量,而f(x)的值是个m维向量。如果这个方程组是正方形,也就是方程个数m等于变量个数n,那么当今教科书中的牛顿法就是辛普森的版本。

关于牛顿法的大部头专著汗牛充栋,其实就像众多伟大发现一样,它背后的道理非常简单易懂。算法的核心思想来自牛顿-莱布尼茨微积分理论中最基本的发现:如果函数f在x0点二次连续可微分,那么,算子f在x0点附近可以用线性算子二阶近似。如果迭代点x0很靠近所要求的解x*,那么原方程组f(x) = 0就可以用线性方程组来近似代替,其解x=x1就是公式取k=0。

于是也就不难理解在极限情形x1的精度是x0精度的平方,精确数位加倍,也就是所谓二阶收敛。

从这个基本思想出发,我们也很容易看出牛顿法适用的三个条件:函数f的光滑性,也就是在解的附近二次连续可微;解x*的正则性,也就是雅可比矩阵在x*点可逆;初始近似的局部性,也就是x0距离x*不太远。光滑性保证线性近似成立,局部性保证迭代收敛到解,而正则性不仅保证线性方程唯一可解,同时意味着所求的解x=x1是个孤立点。

牛顿法的三个条件极其自然,似乎缺一不可。没有光滑性或局部性,线性近似及迭代收敛就无从说起。没有正则性,那么公式中的逆矩阵就成问题。另一方面,牛顿法的成就又在于,只要这三个条件就足够了。

超定方程组的高斯“救场”包括很多专家在内都有一个流传广泛的误解,以为一个方程组的方程个数必须跟变量个数一样多。这个误解恐怕来自教科书,因为计算数学教科书基本上只谈这类方程组。事实上,正方形的方程组虽然有很多理论和求解的方便,但是很多问题本质上就是超定或欠定方程组,在科学计算中根本不可回避。

对于超定或欠定非线性方程组,相应的线性近似方程组也是超定或欠定,雅可比矩阵的逆矩阵别说去计算,连定义都没有。怎么办呢?十分遗憾,通用教科书里基本上是找不到答案的。高斯也是无需介绍的伟大数学家。数学史上一个里程碑式的定理叫代数基本定理,也就是说多项式方程必有复数解。历史上众多数学巨匠尝试过证明这个定理,最终发现都差得远呢。

1809年,“数学王子”高斯第一个将牛顿法推广到超定方程组。在数值求解超定方程组时,雅可比矩阵不是方阵,而是一个高矩阵,其逆没有定义,当然也就推导不出牛顿法。然而数学王子发现了一个看似不起眼的妙招,当雅可比矩阵是列满秩,即它的秩等于列的个数时,牛顿法可以再度推广到超定方程组:用矩阵的左逆代替传统逆矩阵就行了。

牛顿法的二阶收敛并不是最快的求根计算方法。比较著名的三阶收敛迭代法有哈雷迭代和拉盖尔迭代,也就是每步迭代获得的精确数位是前一步的三倍。作为课外练习,数学专业本科生都可以构造任何有限阶收敛的快速迭代法。然而从实际计算的角度来看,超过二阶收敛的迭代法仅仅在解决特定问题上可能有些价值。作为通用算法,简单得不能再简单的牛顿法已经二阶收敛,其实际效率在计算中很难被真正超越。

牛顿法的发展和演变历史,也是数学学人不断探索新领域解决新问题过程的写照。牛顿法的奇妙还在于,从诞生以来一次次的发展、推广和创新都是实质性的,而不仅仅是修边角式的改善。牛顿之后的每次推广都远远超越牛顿的初等方法。当然所有的推广都被习惯性地称为“牛顿法”。于是,“经久不衰的迷思”成为传统。

随着电子计算机的出现以及随之而来的计算数学这一学科的诞生,牛顿法作为求解非线性代数方程组的基本通用方法在科学计算的大舞台上大显身手,到处都是其用武之地。由于解方程的问题太常见,对各种迭代法的深入探索和进一步推广从来没有停止过。要想从牛顿法有所创新,三个收敛条件(光滑性、正则性和局部性)是显而易见的入口。

光滑性,也就是函数或映射f连续二阶可微在绝大多数实际应用中不成问题。

对于导数不存在、无法求导或者雅可比矩阵计算成本太高的特定方程,可以使用拟牛顿法和创新不动点迭代。这基本上超出了牛顿法的范畴,在此就不多谈了。局部性,也就是初始迭代点x0取在所求解的一个局部邻域则牛顿法必定收敛。这常常被人误以为是牛顿法的一个弊病。局部收敛的对立面是所谓全局收敛,也就是从定义域内的任何初始点出发都保证迭代收敛到一个解。

欣然接受牛顿法的局部收敛特性并加以利用,可以构造出各种全局收敛算法解决特定问题。一个成功的项目始于1976年,第一篇现代同伦延拓法的文章横空出世,作者之一就是笔者的博士导师李天岩教授。

现代同伦法的进步在于结合微分拓扑和代数几何思想对计算数学领域的渗透。将这些思路与牛顿法相结合,构造出的目前效率最高、速度最快的求解方法和软件适用于多项式方程组。

常有人说数学是艺术,意思多半是说数学本身是艺术,看你有没有能力欣赏。读者可能想不到,牛顿法的局部收敛特性还可以用来创作似乎毫不相干的艺术作品。无论是什么世界名画,油画在数学上无非是每个点都有一个颜色,而每个颜色都可以换算成三个数字代表红黄蓝三原色的强度,反之亦然。任何数学方法,只要能给每个点赋予一个或三个数字,这个方法就可以用电脑做出一幅油画,只要发挥想象力创造力,创作可能性是无穷的。

回到“正则性”至于牛顿法的正则性条件,那更是大有文章可做了。用通俗语言说,一个问题是正则的最一般的定义是,这个问题的解的变化上界跟问题数据扰动大小成比例。用数学语言说的话就是,问题的解利普希茨连续依赖于数据。正则性是数学上的一个重要性质。在计算数学里更是重要到不可或缺的程度。可以说计算数学只能解决正则问题。非正则的问题又称为奇异问题。奇异问题跟数值计算水火不容。

满足正则性的方程解必定是孤立点。而奇异解可能是孤立的重根,但更常见的情形是方程组的解是个高维流形,比如曲线和曲面,这些都属于所谓非孤立解。非孤立解在科学计算中十分常见。很多应用问题的关键就在奇异点上。回到牛顿-莱布尼茨微积分的基本思路,要求解非线性方程组f(x) = 0,先把方程转换成线性逼近方程。由于雅可比矩阵在解点奇异,不存在逆矩阵。要想扩展牛顿法,可能的突破口就在矩阵求逆。

广义逆矩阵的始祖,是一百年前的美国领头数学家之一穆尔,他于1920年提出了这个概念,并用正交投影的方式定义了它。2020年诺贝尔物理奖得主、英国数学家彭罗斯于1955年漂亮简洁地用四个等式独立给出了穆尔广义逆的等价定义。给定矩阵A,现在被称之为A的穆尔-彭罗斯广义逆通常记为A†。前面提到高斯用到的左逆就是A为列满秩时的穆尔-彭罗斯广义逆特例。

逆矩阵存在需要正则条件,而任何矩阵包括奇异矩阵都有广义逆。

广义逆的一个特性是在奇异矩阵附近不连续,稍加扰动矩阵就成为坏条件可逆矩阵,所以在奇异解附近,广义牛顿法退化成辛普森牛顿法,直接使用广义逆仅仅是把求解方程的奇异问题换成广义逆矩阵的奇异问题,并没有跳出奇异怪圈。再一个短板在于,正则解只有一种,奇异解的奇妙在于各有各的奇异性。企图一口吃个大胖子,一个方法横扫一切奇异解,天下哪有这种好事。

找到了问题的关键,思路就成为可能。矩阵的奇异性有个线性代数教科书很少提到的规律:奇异是有方向性的。在任何一个奇异矩阵附近,扰动只可能增加矩阵的秩而不会减少。任给一个矩阵A及其任何一个可能的秩r,跟A距离最近的那个秩等于r的矩阵称为A的“秩r投影”。这个投影很容易通过奇异值分解算出。

如果A的秩是5,那么先做秩5投影再做广义逆,也就是利用附近矩阵的秩不可能小于5的秘诀,不仅在A附近连续而且是要求更高的利普希茨连续。

假定雅可比矩阵在方程组的解x*点的秩是r,我们就可以用这个思路很自然地提出降秩牛顿法,其中是雅可比矩阵作秩r投影后的广义逆。有了思路还只是开始,计算数学的奥秘就包括思路可以通过计算实实践验证。试算结果证实迭代法神奇般地快速收敛到初始点附近的解曲线或曲面,有戏了!

迭代一旦收敛到某个点,那么xk和xk+1的极限都是,并且在等号两边相互抵消,得出,也就是说是个“驻点”,不一定是解。这是本-以色列、陈小君和祁力群等学者所碰到的老问题。要跨越这个障碍,还得下点功夫探讨奇异解的本性。

正则解是孤立解,维数是零。雅可比矩阵是满秩,秩损失也是零。非孤立解如果是曲线,则维数是1,曲面维数是2,超曲面的维数可以是3,4等等。

常见的非孤立解有个特性:雅可比矩阵在这些解的秩损失也刚好等于解的维数!换句话说,解曲面的切空间就是雅可比矩阵的零空间。也可以说,通常的非孤立解虽然奇异,但还是恋恋不舍地保留了正则解的一个关键特性。我们不妨把这类奇异解先分离出来,称为半正则解。利用半正则性,就可以证明在半正则条件下降秩牛顿法收敛到的驻点就是解曲面上大致最接近初始迭代点的一个解点。

由于一个偶然的发现,降秩迭代再度推广牛顿法。

从巴比伦法、辛普森版本牛顿法、高斯-牛顿法到朱天照公式,前述所有有限维空间中的牛顿法都是的特例。只要映射f满足光滑性,所求奇异解满足半正则性和初始点满足局部性三个基本条件,加上投影秩r取为雅可比矩阵在解曲面上的秩,则降秩牛顿法二阶收敛到解曲面上最近的解点。不仅如此,降秩牛顿法成为天然正则化机制。奇异解曲面或曲线之所以奇异,在于经不起折腾。在数据扰动下可以大幅跳跃甚至消失殆尽。

然而降秩牛顿法仍然在扰动状态下收敛到一个驻点,这个驻点是消失掉的半正则解点的精确近似而且误差上界跟扰动量成比例,于是半正则的奇异性完全被降秩牛顿迭代清除,完成问题的正则化。这个牛顿法的新发展即将在权威期刊《计算数学》上发表。

你如果读到这里会问,如果方程组的解奇异程度超过半正则怎么办呢?那么恭喜你。你已经具有数学研究的基本素质。学无止境。学问学问,会问才能有学问。发现问题是解决问题的开始。发现下一个版本求解超奇异方程牛顿法的没准就你呢。读到这里,你不觉得牛顿法神奇吗?

UUID: 396ac726-8cdd-427a-a1c5-fb15b07d0f31

原始文件名: /home/andie/dev/tudou/annot/AI语料库-20240917-V2/AI语料库/返朴公众号-pdf2txt/2021/返朴_2021-06-29_牛顿迭代法传奇(下):意犹未尽,柳暗花明.txt

是否为广告: 否

处理费用: 0.0268 元