相关笔记

概览

第35章系统介绍了近似算法——当问题为NP困难因而无法在多项式时间内精确求解时,退而求其次寻找”足够好”的解的策略。全章围绕一个核心问题展开:如何用多项式时间算法给出与最优解差距有界的解? 章节依次介绍了五种主要的近似技术:

  1. 贪心策略:以顶点覆盖的2-近似贪心算法为代表,通过局部最优选择获得全局有界近似比;
  2. 结构利用:利用三角不等式等特殊结构,给出Metric TSP的2-近似(基于MST)和Christofides的1.5-近似算法;
  3. 随机化:对MAX-3-CNF可满足性问题,通过随机赋值获得期望至少7/8最优的近似比;
  4. 线性规划松弛:将整数规划约束放松为线性规划,求解后取整,以加权顶点覆盖为例展示2-近似;
  5. PTAS(多项式时间近似方案):对子集和问题,通过修剪状态空间实现任意精度 的近似,且运行时间为 (即FPTAS)。

各问题的近似比汇总:顶点覆盖 、Metric TSP (Christofides )、集合覆盖 、MAX-3-CNF (期望)、加权顶点覆盖 、子集和 (FPTAS)。

graph TB
    subgraph 近似算法技术分类体系
        A[近似算法] --> B[贪心策略]
        A --> C[结构利用]
        A --> D[随机化]
        A --> E[LP松弛]
        A --> F[PTAS/FPTAS]
    end

    B --> B1["顶点覆盖<br/>ρ=2"]
    B --> B2["集合覆盖<br/>ρ=H(n)"]

    C --> C1["Metric TSP(MST法)<br/>ρ=2"]
    C --> C2["Christofides算法<br/>ρ=1.5"]

    D --> D1["MAX-3-CNF<br/>ρ=7/8(期望)"]

    E --> E1["加权顶点覆盖<br/>ρ=2"]

    F --> F1["子集和<br/>ρ=1+ε(FPTAS)"]

    subgraph 三篇节笔记
        N1["35.1 近似算法基础与顶点覆盖"]
        N2["35.2 旅行商与集合覆盖"]
        N3["35.3 随机化、线性规划与PTAS"]
    end

    N1 -.-> B1
    N2 -.-> C1
    N2 -.-> C2
    N2 -.-> B2
    N3 -.-> D1
    N3 -.-> E1
    N3 -.-> F1

    N1 --> N2
    N2 --> N3

核心概念回顾

概念定义典型问题近似比
-近似算法多项式时间内给出不超过最优解 倍的解顶点覆盖
APX类存在常数因子近似的NP优化问题顶点覆盖、Metric TSP
PTAS对任意 存在 -近似的算法子集和
FPTAS运行时间为 的PTAS子集和、背包
不可近似不存在多项式时间近似算法(除非P=NP)一般TSP

近似比的方向性

  • 最小化问题(如顶点覆盖):-近似算法保证 ,其中 为算法输出代价, 为最优代价。 越小越好。
  • 最大化问题(如MAX-3-CNF):-近似算法保证 越大越好。

跨章关联

  • Ch34 NP完全性:近似算法的理论动机——NP完全问题无法在多项式时间内精确求解(除非P=NP),因此近似算法成为处理NP困难优化问题的主要实用手段。第34章_NP完全性-章节汇总
  • Ch21 MST / Kruskal / Prim:TSP近似算法的基础——Metric TSP的2-近似算法通过先构造最小生成树(MST),再执行前序遍历来构造哈密顿回路,MST的性质保证了近似比。
  • Ch29 线性规划:LP松弛技术的基础——将整数线性规划的整数约束放松为连续约束,利用多项式时间线性规划求解器获得分数最优解,再通过取整策略获得整数可行解。贪心算法
  • Ch5 概率分析:随机化近似算法的期望分析工具——MAX-3-CNF的随机赋值近似算法通过分析每个子句被满足的概率,利用期望的线性性质推导期望近似比。
  • Ch16 贪心算法:贪心近似策略的设计范式——顶点覆盖和集合覆盖的近似算法均采用贪心策略,通过局部最优选择获得全局有界近似比。

综合复习题


常见误区

常见误区

  1. 近似比定义因最小化/最大化问题而异:最小化问题的 -近似保证 ,越小越好),最大化问题的 -近似保证 ,越大越好)。混淆两者的方向会导致对近似比优劣的完全误判。

  2. PTAS不意味着实际可用:PTAS的运行时间可能是 ,当 较小时(如 ),运行时间为 ,在实际中完全不可行。只有FPTAS才保证对所有合理的 值都能在可接受的时间内完成。

  3. 近似比是最坏情况保证:近似比 描述的是算法在最坏输入上的表现上界。在实际应用中,算法的平均表现可能远优于 所保证的界限。例如,顶点覆盖的2-近似算法在随机图上的期望表现通常远好于2倍最优。

学习要点总结

节号主题核心要点掌握标准
35.1近似算法基础与顶点覆盖近似比定义、APX/PTAS/FPTAS分类、顶点覆盖2-近似贪心算法能证明近似比、区分各类近似算法
35.2旅行商与集合覆盖Metric TSP 2-近似(MST法)/ Christofides 1.5-近似、集合覆盖 -近似贪心能推导近似比证明、理解charging argument
35.3随机化、LP与PTASMAX-3-CNF随机近似(期望7/8)、LP松弛取整、子集和PTAS/FPTAS能分析期望近似比、理解修剪过程

参见Wiki

第35章-近似算法