Course-9NP-Theory序论An-Introduction-to-the-Theory-of-NP-精选版课件.pptVIP

Course-9NP-Theory序论An-Introduction-to-the-Theory-of-NP-精选版课件.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
為何要做Reduce? Q1 reduce 成Q2,表示Q1問題可以由處理Q2問題的演算法所解決。 Q1之Input Reduce Q2之Input 解Q2之Algo. Q2之Output Reduce Q1之Output 即:f(x) 即: x?L1 ? f(x)?L2 * 前述定義隱含一些概念: Q1問題可以由處理Q2問題的演算法所解決。若Q2問題有一個有效率的演算法,可以在多項式時間內將Q2問題給解掉,表示Q1問題也一定可以在多項式時間內被解掉。 因此,函數 f(x) 必須是要 polynomial-time computable。 這是因為解Q1問題的時間相當於 “函數f(x)的轉換時間 + 解Q2問題之演算法的解題時間” 所構成。 若轉換時間過長,則解Q2問題之演算法就算是再快,也無助於加速對Q1問題之求解。 可表示成 L1 ? L2 或 Q1 ? Q2 * Q1 ? Q2的意義: Q2問題比Q1問題難 (雖然兩者是同一類型的問題) 若Q2有解,則Q1就有解 想要証明Q1和Q2一樣難,則需証出Q1 ≤pQ2 且Q2 ≤pQ1 若Q1 ? Q2且Q2 ? Q3,則Q1 ? Q3 (遞移性) 範例:假設現在有下列兩個問題: Q1: 一台電梯中有4個人,其中是否有三個人彼此互相認識? Q2:有一個4個頂點之無向圖G=(V,E),其中是否存在一個三角形? 証明Q1 ? Q2。 * 解: 有一個函數f,使得: 人i → 頂點vi 人i 和 人j 互相認識 → (vi, vj)?E 人i 和 人j 互不認識 → (vi, vj)?E 說明此函數f 為polynomial time computable 因為轉換後的圖G=(V,E),是以相鄰矩陣表示,該矩陣的大小為 |V|2。若要將該矩陣填滿值則需時 O(|V|2)。 ∴函數f為Polynomial time computable 說明該函數f(x)使得對所有x而言,x?L1 ? f(x)?L2 有三人互相認識 ? 有一個三角形在圖形G中 (証明?):人I 和 人j和 人k互相認識 ? vi, vj和vk兩兩有邊相連? vi, vj和vk形成三角形 (証明?):(理由同上),人I 和 人j和 人k互相認識 Q1 ? Q2得証 此函數為一個虛的轉換概念 * P: 是一群Decision Problem的集合,這些問題皆可利用Deterministic Algorithm於Worst Case的情況下,在Polynomial Time的複雜度內被解決。 NP: 所謂 “NP” 是指Non-deterministic與Polynomial兩個單字的簡寫 這類的問題只要給個解答,可以在Polynomial Time的複雜度內很快地驗證 (Verify) 出這個解答是否正確。 由於決定性演算法為非決定性演算法的一個特例,且容易找到答案也會容易驗証答案。因此,P可視為NP的一個特例。 P?NP (?) P=NP (?) P, NP, NP hard, NP complete * NP-hard: 是一群Decision Problem的集合。當 Q ? NP-hard 若且唯若所有屬於NP的Decision Problem Q’ (?Q’?NP) 皆可多項式時間轉化成Q (Q’?Q) 此類問題至今仍未找到一個多項式複雜度的決定性演算法,且一般相信沒有多項式複雜度的決定性演算法存在。 NP-complete: 是一群Decision Problem的集合。 若某一個問題Q屬於NP-complete,則滿足以下兩個條件: Q屬於NP Q屬於NP-hard * 一般而言,理論學家相信上述問題之集合圖示如下: NP-hard與NP-complete的關係: 所有NP-complete問題都是NP-hard問題 (如:旅行推銷員問題);但是NP-hard問題不見得是NP-complete問題 (如:程式停止問題,它不是NP問題) NP-complete ? NP-hard 如果有一個NP-hard問題能夠找到多項式複雜度的決定性演算法,則所有NP-complete問題也都存在多項式複雜度的決定性演算法。 NP NP-hard P NP- complete * Nearly all of the decision problems are NP problems. In NP problems, there are some problems which have polynomial algorithms. They are called P problems. Every P problem must be an NP problem. There are a large

文档评论(0)

liuhan98 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档