LL1分析构造法_递推数列——不动点法

36d66f0bbb307066877e77f34e393838.png

由数列的递推公式求解通项公式是一类常见的数列问题。这篇文章将简单介绍一种求解某些一阶递推数列的通用方法:不动点法。


一个例子

我们先来看一个例题。

已知数列

满足
,其中
,且
,求
的通项公式。
解:注意到
,故
为以
为公比的等比数列,又
,所以
,即

看完这个解答有什么感受?是不是第一步的“注意到”让人一头雾水

其实,这个“注意到”并不是乱凑出来的,发现这一步的原理就是本文要讲的不动点法


递推数列与函数迭代

最开始,不动点法是作为求解函数迭代的方法而被研究的。所以在开始之前,我们先介绍一下递推数列与函数迭代的关系。

对于一阶递推数列,我们可以把递推公式看成函数关系

。在我们知道了
的值之后,就可以依次求出数列每一项的值:

写到这里,就能发现,求解递推数列和求解函数迭代在本质上是一样的

我们记 n 次迭代函数

,并补充定义
,那么对于递推数列
,我们可以通过求解函数迭代来求解数列的通项公式

于是,求解递推数列的问题就转化为了求解函数迭代


函数的不动点

对于函数

,我们把
满足
称为
的不动点

为什么叫“不动点”呢?如果我们把函数看作从

的一个映射,那么不动点经过这一映射之后,还是它本身,就像固定在数轴上“不动”,所以叫做“不动点”。
不动点有很多奇妙的应用。比如巴拿赫不动点定理,又称压缩映射定理,这个定理指出,如果一张地图的内容包含地图本身所处的位置,那么地图上一定有一个点和它的实际位置重合,也就是“从现实位置到地图位置”这一映射的不动点。再比如数值分析中的不动点迭代法,可以快速求解一个函数的不动点的近似值,进而也就能求解方程的根的近似值。本文主要介绍不动点在求解递推数列及函数迭代中的应用,所以对不动点的其他性质不多加赘述。

不动点和函数迭代有很大的关系。可以发现,一个函数的不动点也是它的任意次迭代函数的不动点,也就是

当然,反过来并不一定成立。迭代函数的不动点不一定是原始函数的不动点。例子很好找,比如

,它的二次迭代函数
,处处都是不动点,但是
的不动点只有
而已。

换元法与函数相似

换元法可以说是最常用的简化问题的方法了。文章开头的例题也可以看作是换元法的一种应用,也就是令

,从而得出
是等比数列,极大地简化了问题。

既然我们刚才已经找到了数列迭代在函数观点下的写法,那么能不能找到换元法在函数观点下的形式呢?

对于一个函数

,我们作换元
。为了问题简便,我们不妨只考虑
是一一映射的情形,这时候就能用反函数来表达
,于是
就有了自变量为
的形式

现在我们来看一个问题:

的迭代在换元之后的形式下如何表达

先从二次迭代开始,我们的目标是在

中凑出
这样的形式。

如果我们把二次迭代

看成一个复合函数,它的外层函数的自变量
,我们对这个
也做一次换元:

有没有感觉这个形式和

很像?左边都是下一次迭代的自变量,右边都是上一次迭代的自变量。

于是我们令

,接着计算
的迭代:

也就是说,

。同理,可以由数学归纳法证明,
。这就是
迭代在换元法下的表达

接下来,我们总结一下上面的内容,提出函数相似的概念。

对于两个函数
,如果存在一个函数
及其反函数
,使得
,则称
通过
相似
,记作
,其中
称为桥函数。

刚才我们已经证明了函数相似的一个性质:如果

,那么

函数相似还有一个与不动点相关的性质。

对于

的不动点
,有
,于是
,故
的不动点。这表明,
的不动点一一对应

不动点法

讲了这么多,终于到我们的重头戏了——缝合(误)。

把我们刚才的一系列概念综合起来,就得到了求解函数迭代的不动点法。

当我们要求解一个比较复杂的函数

的迭代时,可以去
寻找一个与之相似但形式更简单的函数
,通过计算
,再根据
,得出

那么,为什么这种方法要叫做不动点法呢?因为我们可以通过不动点来构造一些简单的

什么样的

算简单呢?当然是迭代容易计算的函数就是简单函数。最常见的就是两类:
(其中 k, b 为常数)。不难发现,这两类函数对应的是等差数列和等比数列的递推公式。

接下来我们分析一下这两类函数的不动点。(这里需要允许一些不太严谨的描述,比如未加定义地引入无穷大及其直观的运算规律。)前者

的不动点是
,而后者
的不动点是 0 和

按照前文所说的函数相似的性质,

的不动点要和
一一对应,也就是对于
的不动点
,有
的不动点。如果只考虑不动点之间的对应关系,我们可以这样简单地构造一个
  1. 如果
    有唯一不动点
    ,令
    。这样
    的不动点。
  2. 如果
    有两个不动点
    ,令
    。这样两个不动点分别被映射到 0 和
    ,是
    的不动点。

神奇的是,即使是仅考虑了不动点的情形,这样构造的

还是能简化一大类
(主要是分式函数)。

不动点法在数列中的应用

让我们隐藏掉中间的过程,来看看不动点法应用到数列上是怎样的。

  1. 找不动点。只需要简单地把递推公式里的
    都换成
    ,再求解这个方程,得到的结果就是不动点。
  2. 换元。按照上文的方法构造
    或者
    ,代入原递推公式,化简得到
    的递推关系,从而解出其通项公式。
  3. 求解。利用
    之间的关系,解出
    的通项公式。

现在在看看开头的例题,是不是明白了许多呢?


不动点法的局限性

不动点法虽然有时候很好用,但是也经常会遇到失灵的情况,包括但不限于:

  • 求解不动点时无解。
  • 代换之后的数列并没有一个相对简单的形式。

这时候,就说明这个问题并不适合用不动点法解决

而且,因为不动点法看起来太过于投机取巧,很多问题都会刻意地限制不动点法的套用。这个时候一定要及时更换思路,不能钻牛角尖。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值