《迷茫的旅行商:一個無處不在的計算機演算法問題》很好看

曹鵬發表於2014-03-05
  作為一個學CS的人,我對基礎理論很感興趣。曾經瘋狂地研究可計算性、計算複雜性,甚至把圖靈當時的畢業論文拿過來拜讀……形式語言、自動機、圖靈機、P類,NP類,以及很多更復雜的複雜性類別都略知一二。然後由所謂的“停機問題”研究了一下不可計算的問題。當時真是如飢似渴,至今對此仍有熱忱。  
 有幸拜讀了這本書,覺得這本書是科普的好讀物。沒有晦澀的理論,沒有繁雜的數學符號,沒有冗長的證明。 TSP(旅行商)問題是計算複雜性的核心問題。這類問題叫做NPC問題,解決一個就全解決了……
 有另外一本書叫做《計算機與難解性》比較老,好像是六七十年代的書,對這類問題舉了更多的例子。(我從圖書館也借到讀過……)
  言歸正傳,本書深入淺出,介紹了各個領域的TSP問題,讓我們吃驚地意識到TSP問題涉及範圍的廣泛。一口氣讀完,感覺收穫還是比較多的。其實,複雜度領域這麼多年來的進展在TSP問題面籤都顯得略微有些蒼白無力,這個問題至今懸而未決。
  然而可喜的是,雖然從複雜度領域我們無法徹底攻克NPC,但是現實中遇到的TSP問題(幾十、幾百、幾千個點的)已經可以在人類忍受的時間得以解決。這本書讓我感到比較好的一點是,他不僅給出了TSP問題的起源、發展、存在和用途,還介紹了普通的解法及其產生歷史、過程、演化。其實,我們解決NPC的手段總的來說就是:近似和優化。利用諸如蟻群演算法、爬山法、模擬退火、區域性搜尋等方法,我們已經在可接受的範圍內出解。在工業界,這已經夠了,在學術界——恐怕還遠遠不夠。
    也許,這個世界總是存在著一個又一個難題。人類就是在解決一個又一個問題的同時,面對一個又一個挑戰,不斷髮展和進步……

相關文章