Skip to main content
QUICK REVIEW

[论文解读] The Computational Complexity of the Traveling Salesman Problem

Craig Alan Feinstein|arXiv (Cornell University)|Nov 17, 2006
Complexity and Algorithms in Graphs参考文献 6被引用 4
一句话总结

本文证明了在经典计算机上,旅行商问题(TSP)无法在多项式时间内求解,通过建立任何确定性精确算法的最坏情况运行时间下界为 Θ(2^n) 来实现。它使用 TSP 子问题的递归动态规划公式,表明必须评估所有 2^n 个城市子集,从而确认不存在更快的精确解法。

ABSTRACT

In this note, we show that the Traveling Salesman Problem cannot be solved in polynomial-time on a classical computer.

研究动机与目标

  • 建立使用确定性精确算法求解旅行商问题(TSP)的时间复杂度的理论下界。
  • 通过分析子问题的递归结构,证明任何经典算法都无法在多项式时间内求解 TSP。
  • 确认已知的 TSP 最优算法(时间复杂度为 Θ*(2^n))对于确定性精确计算而言是渐近最优的。
  • 通过状态函数 Δ(S,i) 将 TSP 形式化为动态规划问题,其中 Δ(S,i) 表示访问集合 S 中所有城市并以城市 i 结束的最短路径。
  • 证明 Δ(S,i) 的递归计算无法简化,必须对 {2,…,n} 的所有 2^n 个子集进行评估。

提出的方法

  • 定义 Δ(S,i) 为从城市 1 出发,访问集合 S⊆{2,…,n} 中所有城市并以城市 i 结束的最小距离。
  • 使用递推公式 Δ(S,i) = min{Δ(S−{i},j) + δ(j,i)}(其中 j ∈ S−{i}),基础情况为 Δ({i},i) = δ(1,i)。
  • 证明 Δ(S,i) 的递归公式无法简化,必须对 {2,…,n} 的所有非空子集 S 进行计算。
  • 论证计算 Δ({2,…,n},n) 需要对 Θ(2^n) 个不同的子集和城市进行评估,从而得出 Θ(2^n) 的时间复杂度下界。
  • 将推导出的下界与已知的 1962 年算法(Held-Karp)进行比较,该算法实现 Θ*(2^n) 时间复杂度,确认其渐近最优性。
  • 利用 δ(i,j) 的对称性和正定性,以及对精确解的要求,排除更快的确定性算法。

实验结果

研究问题

  • RQ1旅行商问题是否可以在经典计算机上以多项式时间求解?
  • RQ2任何确定性精确算法求解 TSP 的最小可能最坏情况时间复杂度是多少?
  • RQ3Held-Karp 算法(时间复杂度为 Θ*(2^n))是否对于精确求解 TSP 渐近最优?
  • RQ4TSP 子问题的递归公式 Δ(S,i) 是否可以被简化,以使时间复杂度低于 Θ(2^n)?
  • RQ5TSP 子问题空间的结构是否本质上要求以指数时间精确求解?

主要发现

  • 旅行商问题无法在经典计算机上以多项式时间求解。
  • 任何确定性精确算法求解 TSP 在最坏情况下都必须耗费 Ω(2^n) 时间。
  • TSP 子问题 Δ(S,i) 的递归动态规划公式无法简化,必须对所有 Θ(2^n) 个子集进行评估。
  • 目前已知的最快确定性精确算法(1962 年发表)的时间复杂度为 Θ*(2^n),与推导出的下界一致。
  • 该问题的本质结构要求对所有城市子集进行计算,从而确立了基本的指数时间下界。
  • 该结果在确定性经典计算的假设下,确认 TSP 不属于 P,进一步强化了其 NP-难的性质。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。