如何求解問題 現代啟發式方法(第8 9章)

2021-07-23 18:26:46 字數 923 閱讀 7233

明天就得匯報讀書情況了,今天草草的翻了下目錄,然而晚上還在討論愛情觀(自己都不認識自己了),不過還是有點收穫的。

第8章 旅行商問題

引出的問題:最短路徑是什麼?大意是4個人晚上過橋,提供乙個燈,a過去需要1分鐘,b需要2分鐘,c需要5分鐘,d需要10分鐘,測試了很多人給出的答案是19,而其實最短的時間是17(好吧,也就每章第乙個問題有些意思,後面就枯燥了)。

本章講的是旅行商問題,np問題,不存在能產生完美解得多項式時間演算法。tsp的應用極為廣泛,比如電路板鑽孔應用、x射線檢晶器例子相當於14000個城市的tsp等。在過去幾十年裡,人們研究了一些可產生tsp的近似解的演算法,包括近鄰法、貪婪法、最近插入法、最遠插入法、雙最小生成樹法、剝脫法、空間填充曲線法等。

尋找好的變化運算元(近鄰表示、交替邊雜交、子迴路塊雜交、啟發式雜交、次序表示、路徑表示、pmx、ox、cx、er雜交、mx運算元)

結合區域性搜尋方法(lin-kernighan、2-最優法、3-最優法)

其他可能性(邊組裝雜交、反序-雜交運算元)

第9章 約束處理技術

使用演化演算法解決約束優化問題,處理不可行個體的問題非常重要。

eval f的設計、eval u的設計、聯絡、拒絕不可行解、修補不可行個體、用修補後個體替換原個體、懲罰不可行個體、通過使用專門的表示方式和變化運算元保持乙個可行的種群、使用解碼器、個體與約束分離、探索搜尋空間的可行部分與不可行部分的邊界、尋找可行解

數值優化

基於保持解的可行性方法(使用專用運算元、搜尋可行區域的邊界)

基於罰函式的方法(靜態懲罰方法、動態懲罰方法、退火懲罰方法、適應的懲罰方法、毀滅懲罰方法、分離的演化演算法)

基於搜尋可行解的方法(行為記憶法、修補不可行個體)

基於解碼器的方法

混合方法(與分散搜尋、混合整數優化過程、禁忌搜尋的適應的記憶策略相結合)

回頭再慢慢研究,看中文也能感覺像看天書~

如何求解問題 現代啟發式方法 後

有志氣的兔子 的故事 為了找出地球上最高的山,一群有志氣的兔子們開始想辦法 兔子朝著比現在高的地方跳去。他們找到了不遠處的最高山峰。但是這座山不一定是珠穆朗瑪峰。這就是區域性搜尋,它不能保證區域性最優值就是全域性最優值。兔子喝醉了。他隨機地跳了很長時間。這期間,它可能走向高處,也可能踏入平地。但是,...

DFS和啟發式求解八皇后問題 Python

coding utf 8 import numpy as np class eightqueens def init self self.board np.ones 8,8 解的數量 self.counter 0 當前已經放置的棋子 self.chess puted 儲存選中當前行每列 m,n 中棋...

八數碼問題的啟發式搜尋方法 A 搜尋

在3 3棋盤上,放有1到8八個數碼,有1個方格是空的,空位置用0表示,對空格依次執行左移 右移 上移和下移這四個操作,使得棋盤從初始狀態到目標狀態。本次實驗中以如下初始狀態和目標狀態為例 本次啟發式搜尋是在廣度優先遍歷的基礎上給出啟發資訊的搜尋,然後在每一層結點中利用啟發資訊找乙個最優結點,然後在這...