📜  证明旅行推销员问题是NP Hard

📅  最后修改于: 2021-05-08 18:08:48             🧑  作者: Mango

先决条件:旅行推销员问题,NP困难

给定一组城市以及每对城市之间的距离,旅行商问题会找到这些城市之间的路径,使之成为最短路径,并遍历每个城市一次,然后返回起点。

问题–给定一个图G(V,E) ,问题在于确定该图是否具有包含最多为K的成本的TSP。
解释 –
为了证明旅行商问题是NP-Hard,我们必须将已知的NP-Hard问题简化为该问题。我们将从汉密尔顿周期问题简化为旅行商问题。
汉密尔顿周期问题的每个实例都由图G =(V,E)组成,因为输入可以转换为由图G’=(V’,E’)和最大成本K组成的旅行推销员问题。将以以下方式构造图G’:
对于属于E的所有边e,加上边c(e)= 1的代价。连接原始图形G中不存在的其余边缘e’属于E’,每个边缘的成本为c(e’)= 2。
并且,设置K = N
只需将G转换为完整的图G’并添加相应的成本,就可以在多项式时间内构造新的图G’。可以通过以下两个权利要求来证明这种减少:

  • 让我们假设图G包含一个遍历图的所有顶点V的哈密顿环。现在,这些顶点与cost = N因为它使用成本为c(e)= 1的原始图的所有边。并且,由于这是一个循环,因此它返回到原始顶点。
  • 我们假设图G’包含一个成本为TSP的TSP, K = N 。 TSP遍历图的所有顶点,返回到原始顶点。现在,由于没有一个顶点从图中排除,并且成本总和为n,因此,必然要使用成本为1的E中存在的图的所有边,从而与图G形成一个哈密顿循环。

因此,如果图G包含哈密顿循环,我们可以说图G’包含TSP。因此,旅行商问题的任何情况都可以简化为汉密尔顿周期问题的情况。因此,TSP是NP-Hard。