NP-hard问题证明

NP-hard问题:比NPC更难,通常在多项式时间内无法验证一个解的正确性。几个复杂度的区别可以看NPC介绍

常见证明

我们要证明一个问题A是NP-hard问题一般可以分为两步:

1) 对问题A给定限制条件得到一个特例B问题	
2)证明问题B是NPC问题。

以下罗列四个较直观简单的例子:

  1. Dense Induced Subgraph

问题:给定图 G G G,正整数 k k k l l l,是否存在 k k k个点的生成子图包含最少 l l l条边。
证明:令 l = C k 2 l=C_k^2 l=Ck2,那么该问题变成Clique问题(NPC问题)
解释: k k k个点的完全子图最多的边包含 C

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在ICM / LTM模型定义下,我们将社交网络建模为图$G=(V,E)$,其中$V$是节点集合,$E$是边集合。每个节点$i$都有一个观察到的状态$s_i\in S_i$,其中$S_i$是节点$i$可能的状态集合。假设我们要在这个网络中选择$k$个节点进行种子传播,以最大化影响力传播的范围。 为了证明传播最大化问题NP-hard问题,我们可以采用归约的方法。具体来说,我们可以将一个已知的NP-hard问题(例如集合覆盖问题)归约为传播最大化问题。 假设我们有一个集合覆盖问题:我们有一个集合$U$,以及一个包含$U$中所有子集的集合族$\mathcal{S}$,并且我们要选择尽可能少的集合来覆盖$U$。我们可以将其转化为传播最大化问题,具体如下: 1. 我们将集合$U$中的每个元素$i$都看作一个节点,即$V=U$。 2. 我们将每个集合$S\in\mathcal{S}$都看作一个观察到的状态,即对于$S\in\mathcal{S}$,$s_i=S$对于$i\in S$成立。 3. 我们将两个节点$i,j\in V$之间连边当且仅当它们对应的元素在某个集合中同时出现,即$(i,j)\in E$当且仅当存在$S\in\mathcal{S}$满足$i,j\in S$。 4. 我们将$k$的值设置为集合覆盖问题需要的最小集合数。 这样,我们得到了一个传播最大化问题的实例,它的解决方案可以转化为一个集合覆盖问题的解决方案。由于集合覆盖问题NP-hard问题,因此传播最大化问题也是NP-hard问题。 因此,我们可以得出结论,在ICM / LTM模型定义下,传播最大化问题NP-hard问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值