基於Python實現的遺傳算法

基於Python實現的遺傳算法

《基於Python實現的遺傳算法》是2023年清華大學出版社出版的圖書,作者是伊亞爾·沃桑斯基。

基本介紹

  • 中文名:基於Python實現的遺傳算法
  • 作者:[美]伊亞爾·沃桑斯基(Eyal Wirsansky)
  • 譯者:吳虎勝、朱利、江川、呂龍
  • 出版時間:2023年2月1日
  • 出版社:清華大學出版社
  • ISBN:9787302611608 
  • 定價:79 元
內容簡介,圖書目錄,

內容簡介

遺傳算法是受自然進化啟發的搜尋、最佳化和學習算法家族中的一員。通過模擬進化過程,遺傳算法較傳統搜尋算法具有更多優勢,可為各式問題提供高質量的解決方案。本書基於Python語言將遺傳算法套用於各種任務,提供在人工智慧和其他很多領域套用遺傳算法的實踐經驗。同時,本書涵蓋了人工智慧領域的新進展。

圖書目錄

第1部分遺傳算法基礎
第1章遺傳算法簡介
1.1遺傳算法的概念
1.1.1達爾文進化論
1.1.2遺傳算法分析
1.2遺傳算法背後的理論
1.3與傳統算法的區別
1.3.1種群基礎
1.3.2基因編碼
1.3.3適應度函式
1.3.4機率行為
1.4遺傳算法的優點
1.4.1全局最佳化
1.4.2處理複雜問題
1.4.3處理缺少數學模型的問題
1.4.4抗噪聲能力
1.4.5並行處理
1.4.6持續學習
1.5遺傳算法的局限性
1.5.1特殊定義
1.5.2超參數最佳化
1.5.3計算密集型操作
1.5.4過早收斂
1.5.5無絕對最優解
1.6遺傳算法的適用情形
小結
拓展閱讀
第2章理解遺傳算法的關鍵要素
2.1遺傳算法的基本流程
2.1.1創建初始種群
2.1.2計算適應度值
2.1.3套用選擇、交叉和變異運算元
2.1.4疊代停止的條件
2.2選擇運算元
2.2.1輪盤賭選擇
2.2.2隨機通用抽樣
2.2.3基於排序的選擇
2.2.4適應度縮放
2.2.5錦標賽選擇
2.3交叉運算元
2.3.1單點交叉
2.3.2兩點交叉和k點交叉
2.3.3均勻交叉法
2.3.4有序列表的交叉
2.3.5順序交叉
2.4變異運算元
2.4.1反轉變異
2.4.2交換變異
2.4.3逆序變異
2.4.4重組變異
2.5實數編碼的遺傳算法
2.5.1混合交叉
2.5.2模擬二進制交叉
2.5.3實數變異
2.6理解精英保留策略
2.7小生境和共享
2.8遺傳算法解決問題的套用方法
小結
拓展閱讀
第2部分使用遺傳算法解決問題
第3章DEAP框架的使用
3.1技術要求
3.2DEAP簡介
3.3使用creator模組
3.3.1創建Fitness類
3.3.2創建Individual類
3.4使用Toolbox類
3.4.1創建遺傳運算元
3.4.2創建種群
3.4.3計算適應度
3.5OneMax問題
3.6使用DEAP解決OneMax問題
3.6.1選擇染色體
3.6.2計算適應度值
3.6.3選擇遺傳運算元
3.6.4設定停止條件
3.7使用DEAP實現算法
3.7.1準備工作
3.7.2演化求解
3.7.3運行程式
3.8使用內置算法
3.8.1Statistics對象
3.8.2算法
3.8.3logbook對象
3.8.4運行程式
3.8.5添加名人堂
3.9算法參數設定實驗
3.9.1種群規模與代數
3.9.2交叉運算元
3.9.3變異運算元
3.9.4選擇運算元
小結
拓展閱讀
第4章組合最佳化
4.1技術要求
4.2搜尋問題和組合最佳化
4.3求解背包問題
4.3.1Rosetta Code 01背包問題
4.3.2解的表示
4.3.3Python問題表示
4.3.4遺傳算法的解
4.4求解TSP問題
4.4.1TSPLIB基準檔案
4.4.2解的表示
4.4.3Python問題表示
4.4.4遺傳算法的解
4.4.5使用強化探索和精英保留來改進結果
4.5求解VRP問題
4.5.1解的表示
4.5.2Python問題表示
4.5.3遺傳算法的解
小結
拓展閱讀
第5章約束滿足
5.1技術要求
5.2搜尋問題中的約束滿足
5.3求解N皇后問題
5.3.1解的表示方式
5.3.2Python對問題的表示方式
5.3.3遺傳算法求解N皇后問題
5.4求解護士排班問題
5.4.1解的表示方式
5.4.2硬約束與軟約束
5.4.3基於Python的問題表示
5.4.4遺傳算法求解護士排班問題
5.5求解圖著色問題
5.5.1解的表示方式
5.5.2使用硬約束和軟約束解決圖著色問題
5.5.3基於Python的問題表示
5.5.4遺傳算法求解
小結
拓展閱讀
第6章連續函式最佳化
6.1技術要求
6.2實數染色體與實數遺傳運算元
6.3連續函式下的DEAP套用
6.4最佳化Eggholder函式
6.4.1利用遺傳算法最佳化Eggholder函式
6.4.2增加變異率來提高速度
6.5最佳化Himmelblau函式
6.5.1用遺傳算法最佳化Himmelblau函式
6.5.2利用小生境和共享來尋找多個解
6.6Simionescu函式與約束最佳化
6.6.1基於遺傳算法的約束最佳化
6.6.2用遺傳算法最佳化Simionescu函式
6.6.3使用約束尋找多個解
小結
拓展閱讀
第3部分遺傳算法的人工智慧套用
第7章使用特徵選擇改善機器學習模型
7.1技術要求
7.2有監督機器學習
7.2.1分類
7.2.2回歸
7.2.3有監督學習算法
7.3有監督學習中的特徵選擇
7.4Friedman1選擇特徵問題
7.4.1解的表示
7.4.2Python問題表示
7.4.3遺傳算法求解
7.5分類數據集Zoo的特徵選擇
7.5.1Python問題表示
7.5.2遺傳算法求解
小結
拓展閱讀
第8章機器學習模型的超參數最佳化
8.1技術要求
8.2機器學習中的超參數
8.2.1超參數最佳化
8.2.2Wine數據集
8.2.3自適應增強分類器
8.3基於遺傳算法的格線搜尋來最佳化超參數
8.3.1測試分類器的默認性能
8.3.2運行常規的格線搜尋
8.3.3運行基於遺傳算法的格線搜尋
8.4直接使用遺傳算法最佳化超參數
8.4.1超參數表示
8.4.2評估分類器的準確性
8.4.3使用遺傳算法最佳化超參數
小結
拓展閱讀
第9章深度學習網路的結構最佳化
9.1技術要求
9.2人工神經網路與深度學習
9.2.1多層感知器
9.2.2深度學習和卷積神經網路
9.3最佳化深度學習分類器的架構
9.3.1鳶尾花數據集
9.3.2表示隱藏層的配置
9.3.3評估分類器的準確性
9.3.4使用遺傳算法最佳化 MLP 架構
9.4將架構最佳化與超參數最佳化相結合
9.4.1解的表示
9.4.2評估分類器的準確性
9.4.3使用遺傳算法最佳化 MLP 的組合配置
小結
拓展閱讀
第10章基於遺傳算法的強化學習
10.1技術要求
10.2強化學習
10.3OpenAI Gym
10.4處理MountainCar環境問題
10.4.1解的表示
10.4.2解的評估
10.4.3基於Python的問題表示
10.4.4遺傳算法求解
10.5處理CartPole環境問題
10.5.1用神經網路控制CartPole
10.5.2解的表示和評估
10.5.3基於Python的問題表示
10.5.4遺傳算法求解
小結
拓展閱讀
第4部分相關方法
第11章遺傳圖像重建
11.1技術要求
11.2用多邊形重建圖像
11.3Python中的圖像處理
11.3.1Python圖像處理庫
11.3.2用多邊形繪製圖像
11.3.3測量圖像之間的差異
11.4利用遺傳算法重建圖像
11.4.1解的表示與評價
11.4.2基於Python的問題表示
11.4.3遺傳算法的實現
11.4.4圖像重建結果
小結
拓展閱讀
第12章其他進化和生物啟發計算方法
12.1技術要求
12.2進化計算和生物啟發計算
12.3遺傳編程
12.3.1遺傳編碼示例——偶校驗
12.3.2遺傳編程實現
12.3.3簡化的解
12.4粒子群最佳化算法
12.4.1PSO實例——函式最佳化
12.4.2粒子群最佳化實現
12.5其他相關方法
12.5.1進化策略
12.5.2差分進化算法
12.5.3蟻群算法
12.5.4人工免疫系統
12.5.5人工生命
小結
拓展閱讀

相關詞條

熱門詞條

聯絡我們