Skip to content

数值算法与案例分析Ⅰ:课程总览

数值算法研究“有限精度计算机怎样可靠地得到有用答案”。一套算法至少要同时回答四个问题:

  1. 可计算性:怎样把数学问题改写成有限步骤?
  2. 稳定性:舍入误差会不会在计算中失控?
  3. 复杂度:时间、存储和数据访问成本是多少?
  4. 可扩展性:矩阵大到无法存储或分解时,还能利用什么结构?

四类基本问题

问题标准形式主要算法路线
线性方程组Ax=bLU、Cholesky、定常迭代、Krylov 方法
最小二乘minx|Axb|2QR、SVD、正则化、LSQR
特征值与奇异值Ax=λxA=UΣVHessenberg/三对角约化、QR、Lanczos
矩阵方程与函数AXXB=Cf(A)Schur 化、Sylvester 递推、Krylov 投影

这些问题彼此并不孤立:最小二乘的一阶条件是线性系统,SVD 可转化为 Hermite 特征值问题,矩阵函数的 Schur-Parlett 递推又归结为 Sylvester 方程。课程的核心能力正是把新问题稳定地约化为已知问题。

统一记号

  • A 表示共轭转置;实矩阵时就是 AT
  • 2F 分别表示谱范数和 Frobenius 范数。
  • u 为单位舍入误差,γn=nu/(1nu) 用于合并多次舍入误差。
  • Km(A,v) 为 Krylov 子空间,ρ(A) 为谱半径。
  • “Hermite”在实数情形对应“对称”;“酉”在实数情形对应“正交”。

课程主线可以画成:

图表渲染中…

三种阅读路线

  • 考试复习:01 → 02 → 04 → 05 → 06 → 07 → 08 → 10 → 11 → 12。
  • 工程计算:01 → 02 → 03 → 04 → 05 → 09 → 10 → 11 → 12。
  • 大规模数据:04 → 11 → 12 → 13,再读 14 的项目案例。

章节导航

主题核心问题
01浮点数与误差机器精度怎样进入每一次运算?
02三角求解与 LU消元何时稳定,选主元解决什么?
03Cholesky 与结构对称、正定、带状和稀疏结构怎样省计算?
04Householder、Givens 与 QR为什么正交变换是数值线性代数的安全操作?
05最小二乘正规方程、QR、SVD 与正则化怎样取舍?
06幂法与反迭代怎样只计算所需的少数特征对?
07QR 与 Francis 迭代通用稠密矩阵的全部特征值怎样计算?
08对称特征问题与 SVD特殊结构怎样带来更快、更稳的算法?
09Sylvester、eA如何在不破坏结构的前提下计算矩阵函数?
10Jacobi、GS、SOR大型稀疏方程为何从分解转向迭代?
11Arnoldi、FOM、GMRES如何把大问题投影为小 Hessenberg 问题?
12SD、CG 与预条件正定系统怎样获得可证明的快速收敛?
13Lanczos 与大规模计算只靠矩阵-向量乘法能完成哪些任务?
14Francis QR 项目怎样把理论算法落实为可验证的 Schur 分解程序?
附录 A推导索引核心证明、算法不变量与选择依据是什么?
附录 B期末速查常用复杂度、稳定性结论和易错点是什么?

贯穿全课的判断框架

面对一个数值问题,先依次问:

  1. 输入数据本身是否病态?看条件数与扰动理论。
  2. 算法是否稳定?看后向误差,而不只看中间步骤。
  3. 是否存在可利用结构?对称、正定、带状、Hessenberg、稀疏、低秩。
  4. 需要全部信息还是少数特征对/一个矩阵函数作用?后者优先 Krylov 方法。
  5. 误差停止准则是否与问题目标一致?残差小不总等于前向误差小。