簡析P和NP問題的概念


簡析P和NP問題的概念

本文系作者學習筆記,內容均來源於網絡,如有侵權,請聯系刪除

  1. P類問題:所有能用多項式時間算法計算得到結果的問題,稱為多項式問題,也就是P(polynomial)。

    多項式時間舉例:

  2. NP類問題(Non-Deterministic Polynomial Problems):NP問題是指存在多項式算法能夠驗證的非決定性問題

    NP概念的奧妙在於,它躲開了求解到底需要多少時間這樣的問題,而僅僅只是強調驗證需要多少時間

    顯然,P肯定是NP,因為你既然能用多項式求解,就肯定能用多項式驗證(難不成我再算一遍就好了嘛!)

    所以,一個問題很有可能同時是P類問題,也是NP類問題(因為P問題就是NP問題的子集啊)

  3. NP完全(NP Complete)問題,也叫做NPC問題:一個屬於NP類的問題,但目前為止沒辦法在P時間內解決(也就是說目前只能在P時間內判斷解的正確性)

    • 一個經典的NP完全問題:3-SAT問題

是否存在一種組合,使得結果最終等於True

需要注意的是,所有的NP完全問題是可以互相轉換的

  • 一個經典的NP完全問題:完全圖問題:

從圖中找到k個節點組成的完全子圖。也是只能在多項式時間內驗證,目前還沒辦法證明。

拿到這個問題之后,我們可以試着將這個問題轉換為3-SAT問題,這樣就能說明它就是NP完全問題了(就可能偷懶不去試着解決問題了23333)

圖中這個符號表示3-SAT問題可以在多項式時間內轉換為CLIQUE問題(也就是我們所說的完全圖問題),當然誰轉誰都行的····

  1. 這里所用的3-SAT問題場景

下面節點的顏色代表括號的分組

  1. 將每個點連接到其他組中除了和自己相反的變量之外所有的變量,自己組內的也不連

  1. 設置k等於3-SAT問題中括號的數量

如果這里能找到這樣一個有k個節點的回路,就表示上面的3-SAT問題是有解的。

如圖,只要把X2\X4\X3設為True,則原3-SAT問題有解為什么這種方式是合理的呢?因為原來的3-SAT問題最核心的問題所在就是設置變量為True時會導致這個變量的反值為False,這樣就有可能造成某一個括號中為False。而由於我們在連接各個節點時沒有連接1. 本身集合中的值2.該變量的反值。使得連接成的回路中的節點一定是來自不同的集合中且不會同時存在某一個變量和其反值的。那么將這樣的回路中的節點值設為True就一定能解決問題了。

  1. 目前沒有解決的命題:P是否等於NP,也就是是否存在一個問題,只能用P時間檢驗,不能用P時間求解。目前大家傾向於P不等於NP,但是並沒有證明出來

  2. NP難問題(NP-hardness problem):如果所有NP問題都可以多項式時間歸約到某個問題,則稱該問題為NP困難。

    NP難問題的特征是至少和NP問題一樣難

    這里涉及一個概念,不妨稱為問題之間的歸約。可以認為各個問題的難度是不同的,表現形式為,如果我可以把問題A中的一個實例轉化為問題B中的一個實例,然后通過解決問題B間接解決問題A,那么就認為B比A更難。

    通過對歸約過程做出限制可以得到不同類型的歸約。復雜度理論里經常用到的規約叫polynomial-time Karp' reduction。其要求是轉化問題的過程必須是多項式時間內可計算的。

    稱問題L是NP-hard,如果任意一個NP的問題都可以多項式規約到L。如果一個NP-hard的問題L本身就是NP的,則稱L是NP-complete。這個定義可以推廣到所有復雜度類。所以NPcompleness的直觀解釋就是,我能解決這個問題就相當於具備了用相同級別的計算資源解決這個復雜度類里所有問題的能力。

    一個NP問題可以在多項式時間內規約到問題L中,說明L的難度是要高於原問題的,由於是“任意一個NP問題都可以規約”,所以說L的難度是不低於所有NP問題的。而如果這個L依然是NP問題,而不是連NP的程度都達不到的話,我們就可以說它應該是NP中最難的那一種了,也就是NP完全問題了。由於NP完全問題算是NP問題中最難的那一種了,而且擱目前也沒辦法在P時間內解決,所以可以說NP完全問題之間的難度是一樣的了,NP完全問題之間可以互相轉化也驗證了這一點。

Reference

  1. https://blog.csdn.net/bitcarmanlee/article/details/51935400
  2. https://www.bilibili.com/video/av16446193?from=search&seid=1193870537063836496
  3. http://www.voidcn.com/article/p-yfvjdvmq-nh.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM