【xjtuse】【数学建模】课程笔记(六)线上学习

一、全球定位系统模型

1、笔记内容整理

1.1、全球定位系统的基本思想

全球定位系统的核心思想是:卫星不断向地面发送信号,信号中包含发射时刻和卫星位置。手机接收到信号后,根据传播时间和光速计算自己到各颗卫星的距离,再由多颗卫星联合求出自己的位置。

1.2、定位模型的基本物理原理

定位所依赖的基本物理原理是电磁波传播原理,即

距离=速度×时间 \text{距离}=\text{速度}\times\text{时间} 距离=速度×时间

由于卫星信号以接近光速传播,所以只要知道信号传播时间,就能得到手机到卫星的距离。

1.3、基本数学模型

设手机位置为 (x,y,z)(x,y,z)(x,y,z),第 iii 颗卫星位置为 (xi,yi,zi)(x_i,y_i,z_i)(xi,yi,zi),信号传播速度为 ccc,传播时间为 Δti\Delta t_iΔti,则有

(x−xi)2+(y−yi)2+(z−zi)2=cΔti \sqrt{(x-x_i)^2+(y-y_i)^2+(z-z_i)^2}=c\Delta t_i (x−xi)2+(y−yi)2+(z−zi)2 =cΔti

平方后可写成

(x−xi)2+(y−yi)2+(z−zi)2=c2Δti2 (x-x_i)^2+(y-y_i)^2+(z-z_i)^2=c^2\Delta t_i^2 (x−xi)2+(y−yi)2+(z−zi)2=c2Δti2

这就是定位的基本距离方程。

1.4、未知量与求解思路

实际定位中,接收机时钟通常也存在误差,因此未知量一般有 4 个:手机的三个空间坐标和一个时钟偏差。所以通常至少需要 4 颗卫星,才能完成三维定位。

当观测方程多于 4 个时,可以把问题看成超定方程组,并利用最小二乘法求近似最优解,从而提高定位精度和稳定性。

1.5、全球卫星导航系统的发展概况

全球卫星导航系统的发展经历了一个"从 2 到 4"的过程。

最早主要是两大系统:

美国的 GPS;

苏联后来俄罗斯的 GLONASS。

后来又加入了:

欧盟的 Galileo;

中国的北斗系统。

于是全球逐渐形成四大全球卫星导航系统并立的格局。

1.6、北斗系统的发展特点

北斗系统大体经历了三个阶段:

北斗一号:以区域服务为主;

北斗二号:覆盖扩展到亚太地区;

北斗三号:实现全球覆盖。

这说明我国卫星导航系统是从区域走向全球的。

1.7、基础模型的改进方向

在基础模型上,可以从以下几个方面改进:

加入误差修正项,如卫星时钟误差、轨道误差、电离层延迟、对流层延迟等;

使用多于 4 颗卫星的数据,构成超定方程组,再用最小二乘法求解;

采用多系统联合定位,同时利用 GPS、GLONASS、Galileo、北斗等系统信号;

根据卫星几何分布情况筛选卫星,减小误差放大;

将静态定位推广到动态定位,使模型更符合真实导航场景。

2、测试题及回答

2.1、问题1:请介绍全球定位系统的数学模型所依赖的物理原理以及需要求解的基本问题。

全球定位系统依赖的主要物理原理是电磁波传播原理。卫星发出无线电信号,手机接收到信号后,根据传播时间乘以光速,得到手机到卫星的距离。再利用多颗卫星到手机的距离关系建立方程组,求出手机的位置。

它需要求解的基本问题是:已知若干颗卫星的位置以及手机到这些卫星的距离,求手机的空间坐标和时钟误差。本质上,这是一个非线性方程组求解问题;当卫星数更多时,还可以用最小二乘法求更稳定的近似解。

2.2、问题2:你所知道的全球定位系统有哪些?请做简要介绍。

目前主要有四大全球卫星导航系统:

GPS:美国建设,发展最早,应用最广;

GLONASS:俄罗斯建设,是最早与 GPS 并立的系统;

Galileo:欧盟建设,更强调独立的民用高精度服务;

北斗:我国建设,经历了一号、二号、三号的发展过程,最终实现全球覆盖。

从发展历史看,全球卫星导航系统经历了一个"从 2 到 4"的过程。最早只有美国的 GPS 和苏联后来俄罗斯的 GLONASS,后来欧盟 Galileo 和中国北斗相继建成,最终形成四大系统并立的格局。

2.3、问题3:基于课件所介绍的全球定位系统的基本数学模型,你有什么改进策略?

可以从以下几个方面改进:

第一,在模型中加入各种误差修正项,使模型更符合真实环境。

第二,不只使用最少 4 颗卫星,而是尽量利用更多卫星数据,再用最小二乘法提高精度。

第三,采用多系统联合定位,增加可见卫星数量,提高复杂环境下的定位能力。

第四,对卫星进行筛选,优先使用几何分布更好的卫星,减小误差放大。

第五,把静态模型推广为动态模型,使其更适合手机和车辆等运动目标的连续定位。

2.4、总结

全球定位系统的本质,是利用卫星信号传播时间反推出手机到卫星的距离,再通过多个距离方程联合求解手机位置。它以电磁波传播和精确计时为基础,核心数学问题是方程组求解。随着技术发展,全球卫星导航系统已经从早期的两大系统发展到今天的四大系统并立,定位模型也可以通过误差修正、多系统融合和最小二乘估计等方法不断改进。

二、PageRank

1、笔记内容整理

1.1、AlphaGo 与"原创"

谷歌的 AlphaGo 战胜围棋世界冠军,是当时很有代表性的事件。由此可以引出一个问题:什么叫真正的"原创"。

如果只是在原有模型上不断修补、不断加复杂结构,这通常不算真正意义上的原创。老师用托勒密地心说作类比:后人继续在旧框架中"本轮套本轮",虽然模型更复杂,但本质上仍然是在旧体系内修补。相比之下,哥白尼提出日心说,建立了一个更简洁、更本质的新模型,这种从根本上改变框架的做法,可以看作"哥白尼式的革命"。

按这个思路看,AlphaGo 更偏向于在已有思路上的优化和整合;而 Google 早期在搜索技术上的突破,更接近这种开创新框架的创新。

1.2、Google 早期创业与数学建模思想

Google 的重要突破之一是 PageRank。它不是单纯"找网页",而是把"如何给网页排序"变成了一个数学建模问题。与传统搜索思路相比,这是一种更本质的思考方式。

这也说明,数学训练的重要性不只是会算题,更包括以下能力:

  • 能清楚地管理符号系统;
  • 能把现实问题转化为符号系统;
  • 能用算法求出有效解;
  • 能判断结论是否合理。

PageRank 的成功,体现的正是"把复杂现实问题抽象成可计算模型"的能力。

1.3、PageRank 的图模型

PageRank 可以先从有向图来理解。

把每个网页看成一个结点,把网页之间的超链接看成有向边。若网页 AAA 指向网页 BBB,就可以理解为 AAA 给 BBB 投了一票。因此,网页排序问题就可以转化为一个"相互投票"的网络问题。

但如果认为每一票都完全相同,这种想法并不完全正确。因为不同网页的重要性、权威性和相关性并不一样,所以它们投出的票也不应该完全等价。一个更有影响力的网页,它投出的票通常更有分量;一个网页如果指向很多网页,那么它分给每个网页的支持也应该更少。

因此,PageRank 的关键并不只是"计票",而是"加权计票",而且权重不是人为主观规定的,而是由整个网络结构自动决定的。

1.4、PageRank 的代数模型

设第 iii 个网页的重要性为 xix_ixi。如果网页 jjj 指向网页 iii,并且网页 jjj 一共指向了 cjc_jcj 个网页,那么网页 jjj 对网页 iii 的贡献可以记为:

xjcj \frac{x_j}{c_j} cjxj

于是,第 iii 个网页的重要性满足:

xi=∑j:j→ixjcj x_i=\sum_{j:j\to i}\frac{x_j}{c_j} xi=j:j→i∑cjxj

再加上归一化条件:

∑ixi=1 \sum_i x_i=1 i∑xi=1

写成矩阵形式就是:

x=Ax x=Ax x=Ax

实际求解通常采用迭代法:

xk+1=Axk x_{k+1}=Ax_k xk+1=Axk

也就是说,PageRank 的数学本质,是把网页之间的链接关系写成一个有向图和矩阵模型,再通过迭代求出一个稳定的重要性分布。进一步看,它还与马尔可夫链、随机过程等思想有关。

1.5、PageRank 的启示

PageRank 的模型形式很简洁,但真正计算时会遇到两个本质困难:一是矩阵 AAA 规模极大,可能达到几十亿甚至上百亿;二是互联网中的网页和链接不断变化,因此模型本身不是静态不变的。

这说明,一个好的数学模型并不一定复杂。真正重要的是:能否抓住问题本质,并用简洁而有解释力的方式表达出来。PageRank 的价值,正体现在它把网页排序这个复杂问题抽象成了一个清晰、统一、可计算的模型。

2、测试题及回答

2.1、问题:把网页之间的链接看成"相互投票",并且认为每一票都没有差别,这种思想对吗?

回答:这种思想不完全对。

把网页链接看成投票,这个直观理解是有道理的。一个网页指向另一个网页,就可以理解为前者给后者投了一票。但是如果认为所有票都完全一样,就过于简单了。因为不同网页本身的重要性、权威性、相关性并不相同,所以它们投出的票也不应等价。比如,一个很权威的网页给出的链接,通常比一个普通网页更有参考价值;再比如,一个网页如果同时指向很多网页,那么它分给每个网页的支持也应该被摊薄。所以,PageRank 的关键不是简单计票,而是加权计票,而且这个权重不是人为随便指定的,而是由整个网页网络之间的关系共同决定的。

2.2、问题:PageRank 模型的数学本质是什么?

回答:它本质上是一个基于有向图和矩阵迭代的排序模型。

PageRank 先把网页及其链接关系抽象成一个有向图,再用矩阵来表示这种关系。设第 iii 个网页的重要性为 xix_ixi,那么一个网页的重要性,取决于所有指向它的网页的重要性贡献。基本形式可以写成:

xi=∑j:j→ixjcj x_i=\sum_{j:j\to i}\frac{x_j}{c_j} xi=j:j→i∑cjxj

其中 cjc_jcj 表示网页 jjj 的出链数。写成矩阵形式就是:

x=Ax x=Ax x=Ax

实际求解时,通常采用迭代方法:

xk+1=Axk x_{k+1}=Ax_k xk+1=Axk

所以它的数学本质,就是把"网页之间相互推荐"的关系转化成一个矩阵不动点问题,再通过迭代求出稳定的重要性分布。从更深层看,它还和马尔可夫链、随机游走等思想有关。

2.3、问题:除了网页排名,PageRank 还可以应用于哪些领域?请给出案例及基本思路。

回答:只要对象之间能形成"谁指向谁、谁影响谁"的网络关系,就可以借鉴 PageRank。

一个典型例子是论文影响力排序。把论文看成结点,把引用关系看成有向边。如果论文 AAA 引用了论文 BBB,就连一条从 AAA 指向 BBB 的边。这样,被很多高质量论文引用的论文,其重要性就会更高。求解方法与网页排序类似:建立引用网络,构造矩阵,定义重要性分数,再通过迭代求出稳定结果。

另一个典型例子是用户影响力排序。把社交网络中的用户看成结点,把"关注""转发""提及"等关系看成有向边。若用户 AAA 关注用户 BBB,就认为 AAA 指向 BBB。若第 jjj 个用户关注了 cjc_jcj 个用户,那么他对每个被关注用户的影响贡献可以记为:

1cj \frac{1}{c_j} cj1

设第 iii 个用户的影响力为 xix_ixi,则可以建立类似模型:

x=Ax x=Ax x=Ax

再通过迭代

xk+1=Axk x_{k+1}=Ax_k xk+1=Axk

不断更新,直到结果稳定,最后按分数高低对用户排序。它的核心思想是:一个用户是否有影响力,不仅取决于有多少人关注他,还取决于"关注他的人本身是否有影响力"。

此外,PageRank 还可以用于知识图谱中的重要实体识别、交通网络关键节点发现、推荐系统中的内容排序、金融网络中的风险传播分析等。

2.4、问题:原始的 PageRank 是静态的且计算开销巨大,可以提出哪些改进方案?

回答:可以从以下几个方向改进。

  • 采用增量更新,而不是每次都整体重算;
  • 利用矩阵的稀疏性,减少存储和计算量;
  • 采用分布式并行计算,处理超大规模数据;
  • 加入阻尼因子,提高模型稳定性和收敛性;
  • 加入主题偏好或用户偏好,形成个性化排序。

这些改进的目标,都是让模型更适应真实互联网环境:既要规模大,又要更新快,还要尽量贴近用户需求。

2.5、问题:PageRank 能否作为大语言模型的辅助工具,比如用于知识图谱和推理?

回答:可以。

知识图谱本质上是图结构,实体是结点,关系是边。PageRank 可以先对图中的实体进行重要性排序,帮助筛选出更关键的节点和关系。这样,大语言模型在调用知识图谱时,就可以优先关注重要信息,从而提高检索和推理效率。

在多跳推理任务中,也可以先用类似 PageRank 的方法找出问题相关子图中的核心节点,再把这些结果提供给大语言模型。这样可以减少无关信息的干扰,使模型更容易抓住推理重点。

因此,可以把 PageRank 看成一种"图结构中的重要性筛选工具",而把大语言模型看成一种"语言理解与综合推理工具"。两者结合后,可以形成"图筛选 + 语言推理"的协同方式。

三、马尔萨斯人口模型

1、笔记内容整理

1.1、人口模型的基本分类

人口模型大致可以分为两类:

  • 数据型模型:主要依据已有数据进行拟合与预测,例如统计回归模型。
  • 机理型模型:从系统内部的作用机制出发建立模型,本章重点讨论这一类。

数学建模的一般流程可以概括为:

现实问题 → 抽象为数学模型 → 分析与求解模型 → 回到实际并解释结果

这说明建模不是一次完成的过程,而是一个不断修正、不断贴近现实的过程。

1.2、马尔萨斯人口论

马尔萨斯人口论的核心观点是:食物供给增长的速度赶不上人口增长的速度,因此人口最终会受到资源极限的约束。

其基本假设是:

  • 食物是人类生存所必需的;
  • 两性之间的情欲是必然存在并且基本保持稳定的。

在此基础上,马尔萨斯认为:

  • 人口具有几何增长趋势,即指数增长;
  • 食物供应只有算术增长趋势,即线性增长。

因此,他得出的结论是:必须控制人口的无节制增长。

1.3、马尔萨斯人口模型

设 P(t)P(t)P(t) 表示时刻 ttt 的人口数量,rrr 表示人口自然增长率,则马尔萨斯模型为

dPdt=rP \frac{dP}{dt}=rP dtdP=rP

初始条件为

P(t0)=P0 P(t_0)=P_0 P(t0)=P0

其解为

P(t)=P0er(t−t0) P(t)=P_0e^{r(t-t_0)} P(t)=P0er(t−t0)

这个模型表明:如果增长率 rrr 为常数,则人口将按照指数规律增长。

马尔萨斯模型虽然简洁,但它把自然增长率看成常数,默认人口可以无限增长,因此难以直接解释现代社会中受资源、环境、政策等多种因素约束的人口变化。

1.4、Logistic 模型

现实中,人口自然增长率并不是常数,而会随着人口规模变化,因此可以把增长率看作人口数量的函数:

r=r(P) r=r(P) r=r(P)

Logistic 模型在马尔萨斯模型基础上作出修正,设

r(P)=r(1−PK) r(P)=r\left(1-\frac{P}{K}\right) r(P)=r(1−KP)

其中 KKK 表示环境容量,即环境所能维持的最大种群数量。于是得到 Logistic 微分方程

dPdt=rP(1−PK) \frac{dP}{dt}=rP\left(1-\frac{P}{K}\right) dtdP=rP(1−KP)

其解为

P(t)=K1+Ce−r(t−t0) P(t)=\frac{K}{1+Ce^{-r(t-t_0)}} P(t)=1+Ce−r(t−t0)K

其中

C=K−P0P0 C=\frac{K-P_0}{P_0} C=P0K−P0

Logistic 模型的主要特点是:

  • 当 PPP 很小时,PK≈0\frac{P}{K}\approx 0KP≈0,模型近似退化为马尔萨斯模型;
  • 当 PPP 增大时,增长率逐渐减小;
  • 当 PPP 接近 KKK 时,人口趋于稳定。

因此,Logistic 模型比马尔萨斯模型更符合"资源有限、增长受限"的现实背景。

其离散化形式可写为

ΔPΔt=rP(1−PK) \frac{\Delta P}{\Delta t}=rP\left(1-\frac{P}{K}\right) ΔtΔP=rP(1−KP)

离散形式常用于研究更复杂的动态行为。

1.5、Leslie 模型

只研究人口总量往往还不够,因为年龄结构同样会显著影响种群未来的发展。因此需要引入分年龄组的人口模型。

设 ttt 时刻的种群状态向量为

Nt=(n0n1⋮ns) N_t= \begin{pmatrix} n_0\\ n_1\\ \vdots\\ n_s \end{pmatrix} Nt= n0n1⋮ns

其中 nin_ini 表示第 iii 个年龄组的人口数。若 FiF_iFi 表示繁殖率,pip_ipi 表示存活率,则种群从 ttt 到 t+1t+1t+1 的变化满足

{n0,t+1=F0n0,t+F1n1,t+⋯+Fsns,tn1,t+1=p0n0,t⋮ns,t+1=ps−1ns−1,t \begin{cases} n_{0,t+1}=F_0n_{0,t}+F_1n_{1,t}+\cdots+F_sn_{s,t}\\ n_{1,t+1}=p_0n_{0,t}\\ \vdots\\ n_{s,t+1}=p_{s-1}n_{s-1,t} \end{cases} ⎩ ⎨ ⎧n0,t+1=F0n0,t+F1n1,t+⋯+Fsns,tn1,t+1=p0n0,t⋮ns,t+1=ps−1ns−1,t

写成矩阵形式为

Nt+1=LNt N_{t+1}=LN_t Nt+1=LNt

其中 LLL 为 Leslie 矩阵:

L=(F0F1F2...Fsp000...00p10...0⋮⋮⋱⋱⋮00...ps−10) L= \begin{pmatrix} F_0 & F_1 & F_2 & \dots & F_s\\ p_0 & 0 & 0 & \dots & 0\\ 0 & p_1 & 0 & \dots & 0\\ \vdots & \vdots & \ddots & \ddots & \vdots\\ 0 & 0 & \dots & p_{s-1} & 0 \end{pmatrix} L= F0p00⋮0F10p1⋮0F200⋱............⋱ps−1Fs00⋮0

Leslie 模型说明:人口的长期演化不仅与总量有关,还与年龄结构密切相关。模型的渐近性质主要由首特征值及其对应特征向量决定:

  • 若首特征值绝对值大于 111,则种群总体增长;
  • 若首特征值绝对值小于 111,则种群总体衰减;
  • 若首特征值绝对值等于 111,则种群总体稳定。

因此,Leslie 模型比单纯的总量模型更能反映真实种群的结构特征。

1.6、更复杂的人口模型

若希望模型更贴近现实,还可以进一步考虑更多变量与因素。例如把人口写成关于年龄和时间的二元函数:

P(a,t) P(a,t) P(a,t)

还可以进一步考虑:

  • 地域差异;
  • 移民与人口流动;
  • 政策影响;
  • 环境变化;
  • 难以准确估计的随机扰动。

当不确定因素较多时,就需要进一步引入随机模型。

1.7、小结

人口模型的发展体现了从简单到复杂、从总量到结构、从确定到随机的逐步深化过程:

  • 马尔萨斯模型刻画指数增长,适合最初步的理想化分析;
  • Logistic 模型引入环境容量,更符合资源有限的现实;
  • Leslie 模型进一步考虑年龄结构,能刻画长期稳定结构;
  • 更复杂的模型还可以考虑空间、迁移、随机扰动等因素。

总的来说,模型并没有绝对的优劣,关键在于它是否适合所研究的问题。正如常说的那句话:所有模型都是错的,但有些模型是有用的。

2、测试题及回答

2.1、问题 1:为什么今天至少要考虑 Logistic 模型,而不能只停留在马尔萨斯模型?

回答:马尔萨斯模型假设自然增长率 rrr 为常数,因此人口会无限指数增长,这忽略了资源有限、环境容量有限以及现实中增长率会随人口规模变化的事实。Logistic 模型把增长率修正为人口规模的函数:

r(P)=r(1−PK) r(P)=r\left(1-\frac{P}{K}\right) r(P)=r(1−KP)

从而能够体现"人口越多,增长越受抑制"的现实规律,也能解释人口最终趋于稳定而非无限增长。因此,在现实人口研究中,至少应使用 Logistic 模型,而不能只停留在马尔萨斯模型上。

2.2、问题 2:连续 Logistic 模型与离散 Logistic 模型相比,哪个生态更复杂?这说明了什么?

回答:连续 Logistic 模型通常表现为较平稳的 S 形增长,长期往往收敛到环境容量 KKK。而离散 Logistic 模型在参数变化时可能出现稳定点、周期振荡、倍周期分岔甚至混沌等更复杂的现象,因此离散 Logistic 模型对应的生态行为更复杂。

这说明:同样是非线性种群模型,只要时间描述方式不同,系统的长期行为就可能明显不同;同时也说明真实生态系统具有较强的复杂性,简单的非线性递推关系就可能产生非常丰富的动力学现象。

2.3、问题 3:如果把人口模型推广到多个种群,并且只考虑它们之间的相互抑制作用,应怎样改进模型并分析?

回答:可以建立多种群竞争型 Logistic 模型或竞争型 Lotka--Volterra 模型。设 Ni(t)N_i(t)Ni(t) 表示第 iii 个种群在时刻 ttt 的数量,则一般形式可写为

dNidt=Ni(ri−∑j=1maijNj),i=1,2,...,m \frac{dN_i}{dt}= N_i\left(r_i-\sum_{j=1}^m a_{ij}N_j\right), \qquad i=1,2,\dots,m dtdNi=Ni(ri−j=1∑maijNj),i=1,2,...,m

其中:

  • ri>0r_i>0ri>0 表示第 iii 个种群的自然增长率;
  • aii>0a_{ii}>0aii>0 表示种内抑制;
  • aij≥0a_{ij}\ge 0aij≥0(i≠ji\ne ji=j)表示第 jjj 个种群对第 iii 个种群的抑制作用。

分析思路如下。

先求平衡点。令

dNidt=0 \frac{dN_i}{dt}=0 dtdNi=0

得到

Ni(ri−∑j=1maijNj)=0 N_i\left(r_i-\sum_{j=1}^m a_{ij}N_j\right)=0 Ni(ri−j=1∑maijNj)=0

若研究所有种群都共存的内部平衡点,则应满足

AN∗=r AN^*=r AN∗=r

其中

A=(aij),N∗=(N1∗,N2∗,...,Nm∗)T,r=(r1,r2,...,rm)T A=(a_{ij}),\qquad N^*=(N_1^*,N_2^*,\dots,N_m^*)^T,\qquad r=(r_1,r_2,\dots,r_m)^T A=(aij),N∗=(N1∗,N2∗,...,Nm∗)T,r=(r1,r2,...,rm)T

并要求

Ni∗>0 N_i^*>0 Ni∗>0

这样该平衡点才有生物学意义。

然后考察稳定性。对系统在平衡点附近线性化,利用 Jacobian 矩阵分析特征值。若平衡点处所有特征值实部都小于 000,则该平衡点稳定;若存在实部大于 000 的特征值,则该平衡点不稳定。

从生态意义上看:

  • 若种内抑制占主导,则多个种群更可能稳定共存;
  • 若种间抑制过强,则更容易发生竞争排斥,导致部分种群灭绝。

因此,多种群竞争模型的关键分析步骤是:建立耦合方程组,求平衡点,判断平衡点是否可行,再通过线性化和特征值分析长期演化趋势。

四、食堂人气排名

1、笔记内容整理

1.1、食堂人气排名问题

问题:根据三个食堂 AAA、BBB、CCC 的人数变化,建立人气排名模型。

基本思路:不仅统计当天人数,还调查"下一次会去哪个食堂",从而得到学生在不同食堂之间的转移规律。

记:

  • AnA_nAn:第 nnn 天在食堂 AAA 就餐的人数比例;
  • BnB_nBn:第 nnn 天在食堂 BBB 就餐的人数比例;
  • CnC_nCn:第 nnn 天在食堂 CCC 就餐的人数比例。

设从食堂 A,B,CA,B,CA,B,C 到下一次选择食堂 A,B,CA,B,CA,B,C 的概率分别为 pijp_{ij}pij,则有递推关系

{An+1=paaAn+pbaBn+pcaCnBn+1=pabAn+pbbBn+pcbCnCn+1=pacAn+pbcBn+pccCn \begin{cases} A_{n+1}=p_{aa}A_n+p_{ba}B_n+p_{ca}C_n \\ B_{n+1}=p_{ab}A_n+p_{bb}B_n+p_{cb}C_n \\ C_{n+1}=p_{ac}A_n+p_{bc}B_n+p_{cc}C_n \end{cases} ⎩ ⎨ ⎧An+1=paaAn+pbaBn+pcaCnBn+1=pabAn+pbbBn+pcbCnCn+1=pacAn+pbcBn+pccCn

矩阵形式为

(An+1,Bn+1,Cn+1)=(An,Bn,Cn)(paapabpacpbapbbpbcpcapcbpcc) (A_{n+1},B_{n+1},C_{n+1})= (A_n,B_n,C_n) \begin{pmatrix} p_{aa} & p_{ab} & p_{ac} \\ p_{ba} & p_{bb} & p_{bc} \\ p_{ca} & p_{cb} & p_{cc} \end{pmatrix} (An+1,Bn+1,Cn+1)=(An,Bn,Cn) paapbapcapabpbbpcbpacpbcpcc

P=(paapabpacpbapbbpbcpcapcbpcc) P= \begin{pmatrix} p_{aa} & p_{ab} & p_{ac} \\ p_{ba} & p_{bb} & p_{bc} \\ p_{ca} & p_{cb} & p_{cc} \end{pmatrix} P= paapbapcapabpbbpcbpacpbcpcc

(An,Bn,Cn)=(A0,B0,C0)Pn (A_n,B_n,C_n)=(A_0,B_0,C_0)P^n (An,Bn,Cn)=(A0,B0,C0)Pn

长期稳定状态满足不动点方程

(x,y,z)=(x,y,z)P (x,y,z)=(x,y,z)P (x,y,z)=(x,y,z)P

等价地,

PT(xyz)=(xyz) P^{\mathrm T} \begin{pmatrix} x\\ y\\ z \end{pmatrix}= \begin{pmatrix} x\\ y\\ z \end{pmatrix} PT xyz = xyz

若迭代收敛到同一个极限分布,则该分布就是三个食堂的长期人气分布。

这个模型的特点:

  • 每一步只与当前状态有关,与过去状态无关;
  • 转移矩阵每行和为 111;
  • 本质上是一个马尔可夫链模型。

1.2、离散时间随机过程

对于离散时间 t=0,1,2,...t=0,1,2,\dotst=0,1,2,...,若每个时刻对应一个随机变量 ξt(ω)\xi_t(\omega)ξt(ω),则随机变量序列

ξ={ξ0,ξ1,...,ξn,... } \xi=\{\xi_0,\xi_1,\dots,\xi_n,\dots\} ξ={ξ0,ξ1,...,ξn,...}

称为离散时间随机过程,所有可能取值构成的集合 SSS 称为状态空间。

对固定的 ω\omegaω,序列

ξ(ω)={ξ0(ω),ξ1(ω),...,ξn(ω),... } \xi(\omega)=\{\xi_0(\omega),\xi_1(\omega),\dots,\xi_n(\omega),\dots\} ξ(ω)={ξ0(ω),ξ1(ω),...,ξn(ω),...}

称为一条轨道,也叫状态序列。

随机过程的统计特性通常由全部有限维分布刻画。一般地,

P(ξ0,ξ1,...,ξn)=P(ξ0)P(ξ1∣ξ0)P(ξ2∣ξ0,ξ1)⋯P(ξn∣ξ0,...,ξn−1) P(\xi_0,\xi_1,\dots,\xi_n)= P(\xi_0)P(\xi_1\mid \xi_0)P(\xi_2\mid \xi_0,\xi_1)\cdots P(\xi_n\mid \xi_0,\dots,\xi_{n-1}) P(ξ0,ξ1,...,ξn)=P(ξ0)P(ξ1∣ξ0)P(ξ2∣ξ0,ξ1)⋯P(ξn∣ξ0,...,ξn−1)

若各变量相互独立,则有

P(ξ0,ξ1,...,ξn)=P(ξ0)P(ξ1)⋯P(ξn) P(\xi_0,\xi_1,\dots,\xi_n)=P(\xi_0)P(\xi_1)\cdots P(\xi_n) P(ξ0,ξ1,...,ξn)=P(ξ0)P(ξ1)⋯P(ξn)

1.3、马氏链

若随机过程 {ξn,n≥0}\{\xi_n,n\ge 0\}{ξn,n≥0} 满足

P(ξn+1=j∣ξn=i,ξn−1,...,ξ0)=P(ξn+1=j∣ξn=i) P(\xi_{n+1}=j\mid \xi_n=i,\xi_{n-1},\dots,\xi_0)= P(\xi_{n+1}=j\mid \xi_n=i) P(ξn+1=j∣ξn=i,ξn−1,...,ξ0)=P(ξn+1=j∣ξn=i)

则称其具有马氏性,即"无记忆性"。

若转移概率与时刻无关,则称为时齐马氏链,转移概率矩阵记为

P=(pij) P=(p_{ij}) P=(pij)

初始分布记为

μi(0)=P(ξ0=i) \mu_i^{(0)}=P(\xi_0=i) μi(0)=P(ξ0=i)

则时齐马氏链由"初始分布 + 转移概率矩阵"完全确定,并且

P(ξ0=i0,ξ1=i1,...,ξn=in)=μi0(0)pi0i1⋯pin−1in P(\xi_0=i_0,\xi_1=i_1,\dots,\xi_n=i_n)= \mu_{i_0}^{(0)}p_{i_0i_1}\cdots p_{i_{n-1}i_n} P(ξ0=i0,ξ1=i1,...,ξn=in)=μi0(0)pi0i1⋯pin−1in

定义绝对概率

μi(n)=P(ξn=i),μ(n)=(μ1(n),...,μN(n)) \mu_i^{(n)}=P(\xi_n=i),\qquad \boldsymbol{\mu}^{(n)}=(\mu_1^{(n)},\dots,\mu_N^{(n)}) μi(n)=P(ξn=i),μ(n)=(μ1(n),...,μN(n))

μ(n)=μ(0)Pn \boldsymbol{\mu}^{(n)}=\boldsymbol{\mu}^{(0)}P^n μ(n)=μ(0)Pn

若存在概率分布

π=(π1,π2,...,πN) \boldsymbol{\pi}=(\pi_1,\pi_2,\dots,\pi_N) π=(π1,π2,...,πN)

满足

π=πP \boldsymbol{\pi}=\boldsymbol{\pi}P π=πP

则称其为不变分布。

关于状态之间的关系:

  • 可达:存在正概率路径从 iii 到 jjj;
  • 互通:iii 可达 jjj 且 jjj 可达 iii;
  • 不可约:所有状态彼此互通。

对于有限状态马氏链,不可约可推出所有状态常返。若 TiT_iTi 表示首次返回状态 iii 的时间,则平均返回时间为

μi=E[Ti∣ξ0=i] \mu_i=E[T_i\mid \xi_0=i] μi=E[Ti∣ξ0=i]

对于互通常返马氏链,有

μi=1πi \mu_i=\frac{1}{\pi_i} μi=πi1

1.4、马氏链的应用:句子的平均长度

设 DNA 序列由 {A,C,G,T}\{A,C,G,T\}{A,C,G,T} 构成,各字母独立出现;若出现 AAAAAA 就切断序列,要求片段平均长度。

可设三个状态:

  • AAA:最后一个字母是 AAA,但尚未形成 AAAAAA;
  • BBB:最后一个字母不是 AAA;
  • AAAAAA:出现切割点。

p=P(A),q=1−p p=P(A),\qquad q=1-p p=P(A),q=1−p

则转移概率矩阵为

P=(0ppqqqp00) P= \begin{pmatrix} 0 & p & p \\ q & q & q \\ p & 0 & 0 \end{pmatrix} P= 0qppq0pq0

设不变分布为 π=(π1,π2,π3)\pi=(\pi_1,\pi_2,\pi_3)π=(π1,π2,π3),则片段平均长度等于状态 AAAAAA 的平均返回时间,即

平均长度=1π3 \text{平均长度}=\frac{1}{\pi_3} 平均长度=π31

1.5、PageRank 与马氏链

PageRank 的核心思想:

  • 一个网页的重要性来自其他网页对它的链接;
  • 被重要网页链接,会更重要;
  • 一个网页出链越多,它分给每个目标网页的权重越小。

若网页 uuu 被若干网页 vvv 所链接,则其重要性可写为

pr(u)=∑v∈L(u)pr(v)dout(v) pr(u)=\sum_{v\in L(u)}\frac{pr(v)}{d_{out}(v)} pr(u)=v∈L(u)∑dout(v)pr(v)

把所有网页的重要性写成行向量

Pr=(pr(1),pr(2),...,pr(D)) Pr=(pr(1),pr(2),\dots,pr(D)) Pr=(pr(1),pr(2),...,pr(D))

则迭代可写成

Prn+1=PrnW Pr_{n+1}=Pr_nW Prn+1=PrnW

若迭代收敛,则极限向量满足

Pr=PrW Pr=PrW Pr=PrW

所以 PageRank 的本质就是随机冲浪模型对应马氏链的不变分布。

为处理陷阱网页等极端情况,可引入阻尼因子 α\alphaα:

pr(u)=1−αN+α∑v∈L(u)pr(v)dout(v) pr(u)=\frac{1-\alpha}{N}+\alpha\sum_{v\in L(u)}\frac{pr(v)}{d_{out}(v)} pr(u)=N1−α+αv∈L(u)∑dout(v)pr(v)

其作用是:

  • 给无入链网页一个基础分值;
  • 降低早期估计误差的影响;
  • 使整个网络在概率意义下更容易互通,从而保证不变分布存在。

2、测试题及回答

2.1、问题1:学习完本节课程后,你对 Google 的 PageRank 又有了哪些新的认识?

答:上一份笔记中,对 PageRank 的理解主要停留在"图模型 + 代数模型"这一层,即把网页看成结点,把链接关系看成有向边,再通过方程

x=Ax x=Ax x=Ax

和迭代方法求网页的重要性分布。

而这一次的笔记进一步说明:PageRank 不只是一个代数迭代公式,它还可以理解为一个马氏链模型。随机冲浪者从一个网页跳到另一个网页,跳转概率由网页的出链结构决定,而最终的 PageRank 值,本质上就是这个随机过程的不变分布。

因此,现在对 PageRank 的新认识是:它把"网页排序问题"转化成了"随机过程的稳定分布问题",把图论、线性代数和概率论统一到了同一个模型里。也就是说,PageRank 不只是一个排序公式,而是一个完整的随机动态系统。

2.2、问题2:如下图的 5 个网页,迭代的随机冲浪模型所对应的马氏链转移概率矩阵是什么?

由图可读出链接关系:

  • 1→2, 1→41\to 2,\ 1\to 41→2, 1→4
  • 2→52\to 52→5
  • 3→1, 3→23\to 1,\ 3\to 23→1, 3→2
  • 4→3, 4→54\to 3,\ 4\to 54→3, 4→5
  • 5→35\to 35→3

因此各网页的出度为

d(1)=2,d(2)=1,d(3)=2,d(4)=2,d(5)=1 d(1)=2,\quad d(2)=1,\quad d(3)=2,\quad d(4)=2,\quad d(5)=1 d(1)=2,d(2)=1,d(3)=2,d(4)=2,d(5)=1

若采用行向量表示

Prn=(prn(1),prn(2),prn(3),prn(4),prn(5)) Pr_n=(pr_n(1),pr_n(2),pr_n(3),pr_n(4),pr_n(5)) Prn=(prn(1),prn(2),prn(3),prn(4),prn(5))

则随机冲浪模型对应的转移概率矩阵为

P=(0120120000011212000001201200100) P= \begin{pmatrix} 0 & \frac12 & 0 & \frac12 & 0 \\ 0 & 0 & 0 & 0 & 1 \\ \frac12 & \frac12 & 0 & 0 & 0 \\ 0 & 0 & \frac12 & 0 & \frac12 \\ 0 & 0 & 1 & 0 & 0 \end{pmatrix} P= 0021002102100000211210000010210

因此迭代关系为

Prn+1=PrnP Pr_{n+1}=Pr_nP Prn+1=PrnP

若迭代收敛,则极限分布就是这 5 个网页的 PageRank。

2.3、问题3:一个醉汉在一条有 15 个路口的街道随机行走,路口 1 是酒吧,路口 15 是他的家。到每一个路口时,他都以相同的概率向左或向右行走,但如果到达酒吧或家时,他就停留在那里。试给出模拟醉汉行走路线的仿真思想,并谈谈你对随机现象的认识。

答:可把这个问题建模成一个有 15 个状态的时齐马氏链,状态空间为

S={1,2,...,15} S=\{1,2,\dots,15\} S={1,2,...,15}

其中状态 111 和状态 151515 是吸收态。对于任意中间路口 i=2,3,...,14i=2,3,\dots,14i=2,3,...,14,有

P(i→i−1)=12,P(i→i+1)=12 P(i\to i-1)=\frac12,\qquad P(i\to i+1)=\frac12 P(i→i−1)=21,P(i→i+1)=21

仿真思路如下:

  • 给定初始位置 x0x_0x0;
  • 若当前在 111 或 151515,则停止;
  • 否则生成一个随机数:
    • 若小于 0.50.50.5,向左走一步;
    • 否则向右走一步;
  • 重复直到到达 111 或 151515;
  • 记录最终位置和总步数;
  • 多次重复后,统计到家概率、到酒吧概率和平均步数。

若设醉汉初始位置为第 kkk 个路口,则有精确结果:

到家的概率满足

hk=hk−1+hk+12,h1=0, h15=1 h_k=\frac{h_{k-1}+h_{k+1}}{2},\qquad h_1=0,\ h_{15}=1 hk=2hk−1+hk+1,h1=0, h15=1

解得

P(先到家∣X0=k)=k−114 P(\text{先到家}\mid X_0=k)=\frac{k-1}{14} P(先到家∣X0=k)=14k−1

到酒吧的概率为

P(先到酒吧∣X0=k)=15−k14 P(\text{先到酒吧}\mid X_0=k)=\frac{15-k}{14} P(先到酒吧∣X0=k)=1415−k

若记最终停下前的期望步数为 eke_kek,则

ek=1+ek−1+ek+12,e1=0, e15=0 e_k=1+\frac{e_{k-1}+e_{k+1}}{2},\qquad e_1=0,\ e_{15}=0 ek=1+2ek−1+ek+1,e1=0, e15=0

解得

E[T∣X0=k]=(k−1)(15−k) E[T\mid X_0=k]=(k-1)(15-k) E[T∣X0=k]=(k−1)(15−k)

特别地,若从第 888 个路口出发,则

P(到家)=12,P(到酒吧)=12,E[T]=49 P(\text{到家})=\frac12,\qquad P(\text{到酒吧})=\frac12,\qquad E[T]=49 P(到家)=21,P(到酒吧)=21,E[T]=49

这说明:单次随机现象的结果不可预测,但大量重复之后会呈现稳定的统计规律。个体轨迹具有偶然性,整体结果却具有规律性,而马氏链正是描述这类随机动态过程的重要工具。

相关推荐
晓梦林1 小时前
HiddenGate靶场学习笔记
笔记·安全·web安全
智者知已应修善业2 小时前
【74ls138+74ls00传送带故障报警】2024-1-9
驱动开发·经验分享·笔记·硬件架构·硬件工程
ljt27249606612 小时前
Vue笔记(四)--组件基础
前端·vue.js·笔记
sheeta19982 小时前
LeetCode 每日一题笔记 日期:2026.05.17 题目:1306. 跳跃游戏 III
笔记·leetcode
暖阳之下2 小时前
学习周报四十五
学习
会编程的土豆2 小时前
Gin 核心概念 & 前后端交互笔记
笔记·交互·gin
sealaugh322 小时前
react native(学习笔记第五课) 英语打卡微应用(4)- frontend的列表展示
笔记·学习·react native
05候补工程师2 小时前
【考研线代笔记】相似对角化与实对称矩阵:判定法则、计算技巧与物理本质
笔记·线性代数·考研·矩阵
say_fall2 小时前
Git完全入门指南-从概念到实战掌握版本控制的核心
linux·运维·服务器·git·学习