\(\S\) 结论

TSP问题:n阶带权无向完全图中,找权值最小的哈密顿回路(无向图中遍历所有顶点的回路)

优化问题,记最优解为OPT

对于一般的n顶点TSP问题(非Metric),任意 多项式时间内可计算的函数f(n) 均不可近似,除非P = NP

已知 哈密顿回路存在性判定 是经典的NPC问题;f(n)举例:\(f(n) = 2^n\)

\(\S\) 证明

思路

去证假设有那么个f(n)的近似比存在,则可在多项式时间内求解哈密顿回路这个NPC问题,则P = NP

具体过程

(从NPC问题实例出发归约到TSP问题)

对于一个n顶点哈密顿回路的实例,我们在此基础上构造一张完全图:

  • 对于原实例图中已有的边,定义权重为\(1\)
  • 对于原实例图中没有的边,定义权重为\(nf(n)\) (\(f(n)\)多项式时间内可计算,且因为是近似比,\(f(n)>1\))

构造的新图即为n顶点的TSP问题。则对于新图,可分析:

  • 原实例图存在哈密顿回路 \(\Leftrightarrow\) 新图中至少有那个哈密顿回路,且必然权重最小,所以\(OPT = n\);
  • 原实例图没有哈密顿回路 \(\Leftrightarrow\) 新图必然要用到新加的权重为\(nf(n)\)的边,所以\(OPT > nf(n)\);

NPC问题归约后的两种情况出现了Gap,且这个Gap无法被近似比逾越!

那如果n顶点TSP问题有某个 近似比为f(n) 的近似算法,那不妨对新图使用该算法:

  • 若\(OPT = n\),则根据定义,得到的解 \(cost \leq nf(n)\)
  • 若\(OPT > nf(n)\),则得到的解 \(cost > OPT > nf(n)\)

由于不存在其他的OPT情况(有Gap),所以反向推导也成立。即我们可以通过该近似算法,在多项式时间内判断原实例图是否存在哈密顿回路,即解决了NPC问题,即P = NP

得证

\(\S\) 总结:引入Gap的归约

记L为NPC判定问题(L is NP-complete Language),P为某个优化问题(an optimization problem)

从L到P的 引入Gap的归约(Gap-introducing reduction),会伴生两个函数\(f\)和\(\alpha\)的,对于L的某个实例x,他们可以在多项式时间内输出P的某个实例I,满足

①P为最小化的优化问题,\(\alpha(|I|) \geq 1\):

  • \(x \in L \Rightarrow OPT \leq f(I)\)
  • \(x \notin L \Rightarrow OPT > \alpha(|I|) \cdot f(I)\)

②P为最大化的优化问题,\(\alpha(|I|) \leq 1\):

  • \(x \in L \Rightarrow OPT \geq f(I)\)
  • \(x \notin L \Rightarrow OPT < \alpha(|I|) \cdot f(I)\)

TSP问题的不可近似性的更多相关文章

  1. JVM内存模型、指令重排、内存屏障概念解析

    在高并发模型中,无是面对物理机SMP系统模型,还是面对像JVM的虚拟机多线程并发内存模型,指令重排(编译器.运行时)和内存屏障都是非常重要的概念,因此,搞清楚这些概念和原理很重要.否则,你很难搞清楚哪 ...

  2. [Machine Learning] 机器学习常见算法分类汇总

    声明:本篇博文根据http://www.ctocio.com/hotnews/15919.html整理,原作者张萌,尊重原创. 机器学习无疑是当前数据分析领域的一个热点内容.很多人在平时的工作中都或多 ...

  3. Spark入门实战系列--8.Spark MLlib(上)--机器学习及SparkMLlib简介

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 .机器学习概念 1.1 机器学习的定义 在维基百科上对机器学习提出以下几种定义: l“机器学 ...

  4. sqlserver数据库学习(-)数据类型

    ecimal 数据类型最多可存储 38 个数字,所有数字都能够放到小数点的右边.decimal 数据类型存储了一个准确(精确)的数字表达法:不存储值的近似值. 定义 decimal 的列.变量和参数的 ...

  5. paper 12:机器学习常见算法分类汇总

    机器学习无疑是当前数据分析领域的一个热点内容.很多人在平时的工作中都或多或少会用到机器学习的算法.这里南君先生为您总结一下常见的机器学习算法,以供您在工作和学习中参考. 机器学习的算法很多.很多时候困 ...

  6. 深度神经网络DNN的多GPU数据并行框架 及其在语音识别的应用

    深度神经网络(Deep Neural Networks, 简称DNN)是近年来机器学习领域中的研究热点,产生了广泛的应用.DNN具有深层结构.数千万参数需要学习,导致训练非常耗时.GPU有强大的计算能 ...

  7. SqlServer中decimal(numeric )、float 和 real 数据类型的区别[转]

    decimal(numeric )             同义,用于精确存储数值 float 和 real                      不能精确存储数值   decimal 数据类型最 ...

  8. 【深度学习系列2】Mariana DNN多GPU数据并行框架

    [深度学习系列2]Mariana DNN多GPU数据并行框架  本文是腾讯深度学习系列文章的第二篇,聚焦于腾讯深度学习平台Mariana中深度神经网络DNN的多GPU数据并行框架.   深度神经网络( ...

  9. 超文本传输协议-HTTP/1.1

    超文本传输协议-HTTP/1.1(修订版) ---译者:孙超进本协议不限流传发布.版权声明Copyright (C) The Internet Society (1999). All Rights R ...

  10. NLP︱词向量经验总结(功能作用、高维可视化、R语言实现、大规模语料、延伸拓展)

    R语言由于效率问题,实现自然语言处理的分析会受到一定的影响,如何提高效率以及提升词向量的精度是在当前软件环境下,比较需要解决的问题. 笔者认为还存在的问题有: 1.如何在R语言环境下,大规模语料提高运 ...

随机推荐

  1. Makefile文件中,两个$的变量变量$$Xxx 与一个$的变量 $Xxx的区别

    原文地址:Makefile文件中,两个$的变量变量$$Xxx 与一个$的变量 $Xxx的区别 Makefile 中的变量引用 在 Makefile 中,$ 符号用于变量替换,但它的使用方式有一些细微的 ...

  2. Qt音视频开发3-vlc录像存储

    一.前言 录像功能是视频监控系统的常用功能,就是将打开的视频流或者视频文件重新保存成MP4文件,当然也可以保存成其他格式,一般默认用MP4比较好,比较标准一些,MP4格式的兼容性最好,基本上没有说那台 ...

  3. Typora设置自定义脚本上传图片

    搭建图床服务 这里利用CloudFlare搭建免费的图床服务 cf-image-hosting 部署Pages $ git clone https://github.com/ifyour/cf-ima ...

  4. v-for和v-if一起使用时的坑:The 'XXX' expression inside 'v-for' directive should be replaced with a computed property that returns filtered array instead. You should not mix 'v-for' with 'v-if'

    目的:Vue - ElementUI中循环渲染表格,控制字段的显示与隐藏 v-if与v-for同时使用. 在Vue中使用v-for循环一个数组/对象时,如果再使用v-if,那么会提示使用计算属性(能正 ...

  5. springboot的Web项目编译运行时提示错误:Field userService in com.cetc.UserManger.controller.UserController required a bean of type 'com.cetc.UserManger.service.UserService' that could not be found.

    错误描述: springboot的Web项目编译运行时提示错误:Field userService in com.cetc.UserManger.controller.UserController r ...

  6. 得物从0到1自研客服IM系统的技术实践之路

    本文由得物技术王卫强分享,为了更好的阅读体验,有较多的内容修订和排版优化. 一.引言 客服IM的核心业务其实就是在线沟通,客服IM的好处是使得客服与用户通过实时沟通的方式可以在最短的时间内帮助用户解决 ...

  7. 基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v6.1版已发布

    关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持UDP .TCP .WebSocket 三种协议,支持iOS.A ...

  8. 「V 曲闲谈」《万物与我同归于寂》——终与始

      死亡, 胃酸逆流 失去最初模样 开端与结局颠倒 脉搏也摇晃   于强烈的动机下选定这首歌,但构思时又发觉,一个十六岁的青年,似乎在这个艰涩的哲学问题上难以开口.   那么先来说说我的动机.为什么我 ...

  9. HBase-2JavaAPI操作

    HBase是一个分布式的NoSql数据库,在实际工作当中,我们一般都可以通过JavaAPI来进行各种数据的操作,包括创建表,以及数据的增删改查等等 1 创建maven工程 讲如下内容作为maven工程 ...

  10. zabbix监控网络设备流量

    项目环境 一台liunx服务器,这里使用的为ubuntu22.04(192.168.86.140) 一台华为交换机,本次监控的就是该交换机的端口流量(192.168.86.20) 一台pc主机,使用该 ...