logo资料库

npc问题详解与实例大全.pdf

第1页 / 共68页
第2页 / 共68页
第3页 / 共68页
第4页 / 共68页
第5页 / 共68页
第6页 / 共68页
第7页 / 共68页
第8页 / 共68页
资料共68页,剩余部分请下载后查看
NP完全性证明 完全性证明 六个基本的NPC问题 问题 六个基本的 三元可满足性问题 (3SAT) 三维匹配问题 (3DM) 顶点覆盖问题(VC) 团的问题 哈密顿回路 (HC) 均分问题 基本NP完全问题的证明 基本N 完全问题的证明 NP完全问题的证明方法 1
基本 完全问题 基本NP完全问题: 3SAT 三元可满足性问题:3SAT 实例: 有穷布尔变量集U 和U上的子句集 实 元可满足性问题 句 布 U={u1, u2, …, un} C={c1, c2, ... , c } C {c1, c2, ... , cm} 其中|ci|=3, 1≤ i≤ m 问: 对于U 是否存在满足C中所有子句的真值赋值? 问: 对于U 是否存在满足C中所有子句的真值赋值? 2
基本 完全问题 基本NP完全问题: 3DM 三维匹配问题 3DM 三维匹配问题:3DM 实例: 集合M ⊆ W×X×Y, 其中W, X, Y互不相交, 且 |W|=|X|=|Y|=q 问: M是否包含一个匹配, 即是否存在子集 M’⊆ M 使 问 是否 含 个 配, 即是否存在子集 ⊆ 使 |M’|=q 且M’中任意两个元素的三个坐标都不相同? 肯定实例 肯定实例: W={a1,a2,a3,a4}, X={b1,b2,b3,b4}, Y={c1,c2,c3,c4} M={ (a1,b2,c1) , (a1,b1,c1), (a2,b1,c2) , (a2,b2,c1), (a3,b3,c3), (a4,b4,c4) , (a4,b2,c1)} 3
基本 完全问题 基本NP完全问题: VC 顶点覆盖:VC 顶点覆盖:VC 实例: 图G=(V,E), 正整数 K ≤ |V| 问: G中是否存在大小不超过 K 的顶点覆盖, 即是否存在子集 问: G中是否存在大小不超过 K 的顶点覆盖, 即是否存在子集 V’⊆V,使得 |V’|=K, 且对每条边{u,v}∈E 都有u∈V’或 v∈V’? 团团 实例: 图G=(V,E), 正整数 J ≤ |V|. 问: G是否包含大小不小于 J 的团, 即是否存在子集V’⊆V,使 得 |V’| ≥ J, 且 V’ 中每两个顶点都由 E 中的一条边连接? 独立集 实例:图G=(V,E),正整数 J ≤ |V| 问:G 中是否包含大小不小于 J 的独立集,即是否存在V’⊆V, 使得|V’| ≥ J,且∀ u,v∈V’,{ u, v }∉E? 使得 且 4
顶点覆盖 团与独立集问题关系 顶点覆盖、团与独立集问题关系 设 G = (V, E)为图,V’⊆V, 是G 的补图, 则 设 是 的补图 则 为图 G V’是 G 的顶点覆盖 ⇔ V−V ’是G 的独立集 集 ⇔ V−V ’是 的团G G 含有大小不超过 K 的顶点覆盖 ⇔ G 中含有大小不小于|V|−K 的独立集 ⇔ 中含有大小不小于|V|−K 的团 G 5
均分 基本NP完全问题: HC,均分 基本 完全问题 HC HC 实例: 图 G=(V,E), |V|=n. 问: G中是否包含一条哈密顿回路, 即是否有G 的顶点 问 中是否包含 条哈密顿回路 即是否有 的顶点 排列 < v j 1 <≤ ni v {, , v j 1 j n } ∈ E ? ,..., j 2 v , vv , { ij j i 1 + v } nj ∈ > 使得 E 1, 均分 实例: 有穷集合 A, ∀a∈A 有 “大小” S(a)∈Z+ 问: 是否存在子集 A’⊆A 使得 aS )( )( ∑ ∑ Aa ' ∈ aS )( )( ∑= ∑ AAa ' −∈ 6
归约次序 归约次序 SAT 3SAT 3SAT 3DM VC 均分 HC 团(独立集) 7
证明证明:3SAT∈NPC 思路 思路: 3SAT∈NP 将SAT的实例变换成 3SAT 的实例 将SAT的实例变换成 3SAT 的实例 根据子句中的文字个数 k 分别处理 1个子句转变成多个子句 保证每个子句含有3个文字 转变前与转变后的真值不变 证 显然3SAT属于NP 设 U={u1, u2, ... , un}, C={c1, c2, ... , cm}是 SAT的任何实 例 n}, 的任何实 例 , m}是 { 1, 2, 设 { 1, 对于C中任意子句 2, , cj = { z1, z2, ... , zk } j 构造新增的变量集Uj’和子句集Cj’ k 1 2 8
分享到:
收藏