【问题标题】:Shortest path to visit all nodes in a complete directed graph访问完整有向图中所有节点的最短路径
【发布时间】:2017-08-01 17:54:05
【问题描述】:

注意:这几乎与以下问题相同:Shortest path to visit all nodes

但我有一个完整的图表。

问题:考虑一个具有非负边长的完整无向图。问题:计算访问每个节点至少一次的最短路径。

注意:这不是 TSP 问题。路径没有结束节点,并且路径可以多次通过节点。

其他说明:

节点数量少(少于 20 个)。

【问题讨论】:

  • 你有没有试过修改the Held-Karp algorithm来解决这个问题?
  • @PeterdeRivaz 该算法要求每个节点只访问一次。我的问题更轻松,应该更容易?
  • 为什么用“D”标记?

标签: algorithm graph-theory traveling-salesman


【解决方案1】:

问题仍然是 NP-Complete(对于决策变体),从 Hamiltonian Path Problem 减少。

给定哈密顿路径问题实例G=(V,E),将其简化为您的问题:G'=(V, E', w) 和路径长度|V| - 1

地点:

E' = VxV
w(u,v) = 1  if (u,v) is in E
w(u,v) = 2  otherwise
  • 如果在G 中有一条汉密尔顿路径,那么在G' 中有一条路径成本为|V| - 1。
  • 如果 G' 中有一条路径花费 |V| - 1,那么通过遵循 G 中的这些边,我们得到一个哈密顿量 Paht。

因此,以上是从哈密顿路径问题到这个 TSP 变体的多项式简化,并且由于哈密顿路径问题是 NP-Hard,所以这个问题也是。

【讨论】:

    【解决方案2】:

    声明

    允许重新访问节点不会使问题变得更容易。

    说明

    假设我们希望在图 G 中找到Hamiltonian path。我们可以通过将 G 中的边的边权重设置为 1,将不在 G 中的边的边权重设置为 10,将其转化为您的问题的一个实例。

    我们现在有一个具有非负边的完整图 H。

    图 G 有一条哈密顿路径当且仅当我们发现 H 中的最短路径的长度为 n-1。

    推荐

    因此,您修改后的问题是 NP-hard,因此您似乎不太可能比简单地采用标准 TSP 技术(例如 Held-Karp algorithm )来解决它做得更好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-05
      • 1970-01-01
      • 1970-01-01
      • 2021-01-01
      • 2018-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多