頂點小說 > 學霸的無限 >第165章 NPC,真不是很難!
    所謂“p=np?”問題,“?”纔是關鍵。

    因爲不知道等不等於,需要證明的就是等不等於。

    簡單點的說,計算機解不同的題目,就是將之拆分成加加減減這樣最基礎的運算。

    所以一道題究竟有多難……嗯,主要是對計算機多難,就取決於可以拆分成多少步,或者說花多少時間——計算機基礎運算的時間基本一樣,所以忽略空間方面的因素,二者大致等價。

    這叫時間複雜度,用大o也叫漸進符號表示。

    o(1)就是常數級複雜度——最常規的計算,數據規模增加多少,運算花費時間也隨之增加多少。

    o(logn)就要複雜一點了。

    然後還有o(n),o(nlogn),o(n^),o(n!),o(n^n)……

    一級一級,難度逐層上升,解題所用時間花式暴漲。

    其中o(n^c)之下,是多項式時間內能解決的,就叫做p類問題。

    在此之上的,雖然會隨着n的增長,出現指數級甚至更過分的暴漲,卻有一個共同點,就是正向解很難,給你一個答案去驗證,一般就不難了。

    比如大數的質因數分解。

    想知道一個大數是不是素數很難,需要從2開始,一直除到根下n。

    但告訴你它能被某個數整除,你去驗證,則就幾步的事。

    這類可以在多項式時間裏驗證的問題,就叫做np問題。

    顯然所有p類問題,都是np問題,因爲是簡單可驗證的。

    但np類問題,是否都是p類問題?是否存在某些特殊的算法,能將這些問題的難度降低到多項式時間可以解決,就彷彿給答案去驗證的程度上去呢?

    這就是“p=np?”了。

    在研究的過程中,又誕生出了npp-hard問題。

    所謂npp問題可以約化成爲的一類問題。

    只要解決這樣一個問題,就可以附帶的解決一大票問題。只要證明了npc問題有快速算法,就基本證明了p=np。

    【np-hard就不說了,這是一類包括nppc的問題,定義是超出np的,所以和這道題沒什麼關係。】

    最初所有人都以爲npc只是空想,直到真的出現了這樣一個問題

    也就是npc的鼻祖——邏輯電路問題。

    此後一大堆npc冒出來,因爲要證明新的npc,只要將之歸約爲已知的npc就行了,於是哈密頓迴路、tsp問題、sat問題、揹包問題、旅行商問題,都變成了npc。

    不過出這道題的人一定沒看到葉寒那篇關於蛋白質摺疊的論文……

    或者看到了還沒來得及改;

    也可能想改但是落子無悔,改不了了……

    如果p=np被證明,那整個世界,都會變得與我們認爲的完全不同。

    靈感與創造將沒有任何價值,因爲所有問題的解,都可以用努力的算法解決,而且在多項式時間內。

    就彷彿是,任何能夠欣賞交響樂的人,都能成爲莫扎特;每個懂得數學論證的人,都是高斯;每個研究投資策略的人,都可以是巴菲特……

    同樣道理,預測蛋白質摺疊再不需窮舉,多項式時間就可以得到確定答案。

    怎麼可能!

    所以對於p=np?問題,葉寒是傾向於業界多數意見的——不成立。

    不過他也沒有能夠成功證明或證僞,只是提出了某一類nppc問題並不等價——這已經很強大了。

    更強大的是,他搞出了這類問題的混沌模型,並給出了對應的三維流形吸引子,簡稱葉氏吸引子,然後結合某種空間密鋪算法,進行了大幅優化修正。

    絕大多數人都知道相對論,知道量子力學,也聽過混沌兩個字,但不一定知道,混沌理論,和量子力學、相對論並列,被認爲二十世紀科學領域的最偉大發現。

    很多人說,物理學已經一百多年沒有像樣的進展了,混沌的發現,絕對算是一個。

    從三體問題,到湍流,到分子熱運動……包括生物種羣、天文研究,無處沒有混沌的影子。

    雖然仍舊很難給出確切的答案,畢竟混沌問題很難有確切答案,否則就不叫混沌了。

    但也算成功給出了這類題型多項式時間內求解的優化算法。

    十分幸運,米村給出的題目中,就有一道屬於被他解決掉的那一系列的。

    雖然表面看上去和蛋白質摺疊毫無關係,其實只要證明歸約一下,就可以簡單複製粘貼了……

    ==========

    到底要不要給出證明呢?

    因爲給了,就難免被看到了,雖然發表過了,不是又被回收了嗎?

    葉寒確認的問了一下:“我這證明是肯定沒有問題的,不過……你確定出題的人,能看懂我的證明嗎?”

    這個事一點都不好笑。

    提出三大尺規作圖不能問題的希臘人,能看懂萬芝爾和林德曼的證明嗎?

    意大利的塔塔利亞、卡爾達諾,看得懂伽瓦羅的羣論嗎?

    就算費馬,看得懂安德魯·懷爾斯那130頁的論文嗎?

    提出問題者,根本沒理解自己提出的問題到底有多難,這在數學界稀鬆平常。

    甚至可以說,每一個著名的猜想,都存在同樣的問題——猜想歲數不夠大,活的時間不夠久,那肯定不著名不牛嗶。

    而只要牛逼,證明過程一定是極複雜的,出題者幾乎不可能看懂的。

    葉寒論文通過,當初可是經過了長達數月的同行評議的。

    米國人那邊實力再強,葉寒覺得,想湊齊有資格給自己做評議的同行人數,都是極難的。甚至一個沒有的概率,都要遠遠大過有。

    爲什麼?

    如果有,那對宇宙本質,還有量子力學、萬有理論這些方面的研究,早應該取得一定進展了,華夏村這邊就算參與不進去,也該有所聽聞的,但並沒有。

    如果有,守關題目多半不會如此老舊,拾人牙慧;對外村的策略,想來也不會如此封閉保守不自信……

    【哦,他們給出了幾組參數,你將參數代入解法,只要規定時間內給出的答案正確,就可以了。】

    果然……葉寒忍不住推眼睛。

    npc問題雖然都沒有多項式內的最佳解法,卻也有不少逼近的算法,什麼貪婪算法、分治算法、動態規劃算法、遺傳算法……

    這幫人給出的驗證解,十有仈jiu只要算法蒙對了,明明不對也會被認爲對。

    其實他的算法也是一種逼近算法,只不過能在任何給定的尺度,達到需要的精度,跟那些粗糙low嗶的算法完全不是一個檔次。

    “我可以保證我的算法足夠準確,可沒法保證那些人給的解足夠正確……”

    看不懂論文,得靠黑箱測試,如此露怯,葉寒對這幫人給的答案可不樂觀。

    考試的時候,出題人給錯答案的事情難道還少嗎?

    如此說着,他向系統討了參數,開始代入驗證。

    有點意外,雖然這七八組參數數據很多位數很長,複雜度極高,對方給出的答案竟然完全正確。

    所以,一遍過!

    葉寒的身體,開始欻欻閃光!

    【(づ ̄3 ̄)づ…………】

    臥去臥去臥去臥去!這傢伙真做出來了!