证明旅行商(TSP)的2倍最优近似算法无法计算出最优解

时间:2015-05-09 22:26:56

标签: algorithm traveling-salesman approximation

我对期末考试进行了审核,这个问题对我来说特别困惑。我需要一个关于3个顶点的例子,如果三角不等式不适用于成本,那么2次旅行商问题(TSP)的最优近似算法不计算2倍最优解。 我尝试了一个三角形的例子,其成本为1,1和10边。然而,要获得哈密顿循环,所有三边都必须遍历。那么最优解与使用该算法的近似解没有什么不同。我看这一切都错了吗?我很感激任何帮助。

1 个答案:

答案 0 :(得分:1)

如果你有顶点A,B,C,边缘成本为wAB,wAC和wBC,并假设三角形不等式不成立。说wBC> wAB + wAC。

然后,假设我们从A开始,近似算法将找到一个带有根A的最小生成树。这是:

  A
 / \
B   C

来自近似算法的解是该树的预先列举(返回到A),其是A-> B-> C-> A.这具有总重量wAB + wBC + wCA。然而,路径A-> B-> A-> C-> A具有权重wAB + wAC +(wAB + wAC)< wAB + wAC + wBC = wAB + wBC + wCA。 <这里的步骤使用了关于三角不等式的原始假设。

通过选择足够大的wBC,我们可以使近似值任意变差(例如,比最佳值的2倍差)。例如,如果权重为1,1,10,则最优路径的总成本为4,但近似算法为12。

你的想法中的错误是,当看到近似算法产生哈密顿循环时,推断出任何TSP解都必须是哈密顿循环。