1999年,我從美國回到德國,在奧芬巴赫的本田歐洲研究所擔任研究科學家職位,完成我的第二個博士學位,同時開始研究進化優(yōu)化中的適應度近似。當時的動機是使用進化算法,特別是進化策略,通過設計定子或轉(zhuǎn)子葉片的幾何形狀來優(yōu)化渦輪發(fā)動機的空氣動力學性能。為了完成這項任務,必須執(zhí)行耗時的計算流體動力學模擬,這會讓人們不用再進行數(shù)以萬計的適應度評估,盡管這通常在進化優(yōu)化中完成。為了減少進化空氣動力學優(yōu)化的時間消耗,機器學習模型(也稱為元模型或代理模型)中的適應度近似開始發(fā)揮作用。我對這個研究課題非常感興趣,因為它提供了一個很好的平臺,將進化計算與神經(jīng)網(wǎng)絡相結(jié)合,這是我感興趣的兩個課題。出于這個原因,我努力在進化計算社區(qū)中推廣這個新領(lǐng)域,并且在我2010年加入薩里大學后一有機會就繼續(xù)研究這個主題。
在過去的二十年里,進化優(yōu)化中的適應度近似(也稱為代理模型輔助進化優(yōu)化)已經(jīng)發(fā)展成為一個非常具有吸引力的研究領(lǐng)域,現(xiàn)在被稱為數(shù)據(jù)驅(qū)動的進化優(yōu)化。數(shù)據(jù)驅(qū)動的進化優(yōu)化側(cè)重于一類現(xiàn)實世界的優(yōu)化問題,其中無法為目標或約束建立分析數(shù)學函數(shù)。一般來說,數(shù)據(jù)驅(qū)動的優(yōu)化可能包括以下幾種情況。首先,基于模擬的優(yōu)化,其中解的質(zhì)量通過迭代、計算密集型過程進行評估,適用范圍從數(shù)值求解大量微分方程到在大量數(shù)據(jù)集上訓練深度神經(jīng)網(wǎng)絡。其次,基于物理實驗的優(yōu)化,其中候選解的目標或約束值只能通過執(zhí)行物理或模擬人體實驗來評估。這通常是因為對整個系統(tǒng)進行高質(zhì)量的計算機模擬是不可能的,要么是因為計算量太大(例如,對整個飛機的空氣動力學進行數(shù)值模擬),要么是因為對過程尚未完全理解而難以處理(例如,人類決策過程的工作機制)。最后,在純粹的數(shù)據(jù)驅(qū)動優(yōu)化中,只有在現(xiàn)實生活中收集的數(shù)據(jù)可用于優(yōu)化,并且不允許利用用戶設計的計算機模擬或物理實驗。例如,優(yōu)化復雜的工業(yè)過程或社會系統(tǒng)。在上述所有情況下,收集的數(shù)據(jù)量或大或小,數(shù)據(jù)可能是異構(gòu)的、含噪的、錯誤的、不完整的、分布不均或增量的。
顯然,數(shù)據(jù)驅(qū)動的進化優(yōu)化涉及3個不同但互補的科學學科,即進化計算、機器學習和深度學習以及數(shù)據(jù)科學。為了高效地解決數(shù)據(jù)驅(qū)動的優(yōu)化問題,必須對數(shù)據(jù)進行適當?shù)念A處理。同時,機器學習技術(shù)對于處理大數(shù)據(jù)、數(shù)據(jù)匱乏和數(shù)據(jù)中的各種不確定性變得不可或缺。最后,當優(yōu)化問題是高維或大規(guī)模、多目標和時變時,求解優(yōu)化問題變得極其困難。
本書旨在為包括研究生和工業(yè)從業(yè)者在內(nèi)的研究人員提供有關(guān)為數(shù)據(jù)驅(qū)動的進化優(yōu)化而開發(fā)的最新方法的全面描述。本書共分12章。為了本書的自足性,第1~4章簡要介紹了優(yōu)化、進化計算和機器學習中精心挑選的重要主題和方法。第5章提供了數(shù)據(jù)驅(qū)動優(yōu)化的基礎知識,包括啟發(fā)式算法和基于獲取函數(shù)的代理模型管理。第6~8章介紹使用多個代理模型進行單目標優(yōu)化的方法,其中第7章和第8章描述用于求解多目標和高維多目標優(yōu)化算法的代表性進化算法以及代理模型輔助數(shù)據(jù)驅(qū)動的進化多目標和高維多目標優(yōu)化。第9章詳細闡述了高維數(shù)據(jù)驅(qū)動優(yōu)化的方法,介紹了在半監(jiān)督學習的幫助下,將知識從未標記數(shù)據(jù)轉(zhuǎn)移到標記數(shù)據(jù),從廉價目標遷移到昂貴目標、從廉價問題遷移到昂貴問題的大量技術(shù),遷移學習和遷移優(yōu)化在第10章中進行了描述。由于數(shù)據(jù)驅(qū)動優(yōu)化是一個強應用驅(qū)動的研究領(lǐng)域,因此第11章討論了離線數(shù)據(jù)驅(qū)動的進化優(yōu)化,并給出了實際優(yōu)化問題,如原油蒸餾優(yōu)化和急救系統(tǒng)優(yōu)化的例子。最后,第12章強調(diào)了深度神經(jīng)架構(gòu)搜索作為數(shù)據(jù)驅(qū)動的昂貴優(yōu)化問題。
本書的3.5節(jié)和3.6節(jié)、4.2節(jié)、5.2節(jié)、6.4節(jié)和6.5節(jié)、7.2節(jié)和7.3節(jié)、9.6節(jié)和9.7節(jié)、11.1節(jié)和11.3節(jié)和第12章由王晗丁撰寫,3.7節(jié)和3.8節(jié)、5.4.1節(jié)、5.5節(jié)、6.2節(jié)和6.3節(jié)、9.2節(jié)和9.3節(jié)和第10章由孫超利撰寫。王晗丁在20152018年擔任博士后研究員; 孫超利最初在20122013年作為學術(shù)訪問者,在20152017年在我的薩里小組擔任博士后研究員。
為了讓讀者更容易理解和使用本書中介紹的算法,提供了第5~12章中介紹的大多數(shù)數(shù)據(jù)驅(qū)動進化算法的源代碼,可掃描下頁二維碼下載,本書中介紹的所有基線多目標進化算法都是在PlatEMO中實現(xiàn)的。PlatEMO是一種用于進化多目標優(yōu)化的開源軟件工具。
如果沒有我以前的許多同事、合作者和博士生的支持,這本書是不可能完成的。首先,要感謝Bernhard Sendhoff教授和Markus Olhofer教授,我在19992010年與他們一起在本田歐洲研究所工作。在2010年加入薩里大學后,我和Markus仍然在一些關(guān)于進化優(yōu)化的研究項目上保持著密切的合作。我還要感謝來自芬蘭于韋斯屈萊(Jyvskyl)大學的Kaisa Miettinen教授,在20152017年,我作為特聘教授與他密切合作,研究進化多目標優(yōu)化。感謝來自中國東北大學的柴天佑教授和丁進良教授,我也作為長江特聘教授與他們合作進行進化優(yōu)化的研究。以下合作者以及我以前或現(xiàn)在的博士生對本書中的部分工作做出了貢獻: YewSoon Ong教授、Jrgen Branke教授、張青富教授、張興義教授、周愛民教授、程然教授、孫曉燕教授。Ingo Paenke、Tinkle Chugh博士、John Doherty、郭單博士、楊翠娥博士、田野博士、何成博士、Dudy Lim博士、Mingh Nhgia Le博士、田杰博士、于海波博士、喻果博士、Michael Hsken博士、李慧婷、王曦璐、秦淑芬、王浩、付國霞、廖鵬、Sebastian Schmitt、高開來、Jussi Hakanen博士、Tatsuya Okabe博士、孫亞楠博士、Jan O.Jansen博士、Martin Heiderich、黃元君博士、Tobias Rodemann博士。我還要借此機會感謝姚新教授、Gary Yen教授、Kay Chen Tan教授、張孟杰教授、Richard Everson教授、Jonathon Fieldsend教授、Stefan Kurz教授、Edgar Krner教授和Andreas Richter在過去二十年的鼎力支持。最后,感謝EPSRC(英國)、TEKES(芬蘭)、中國國家自然科學基金、本田歐洲研究院、本田歐洲研發(fā)中心和德國博世公司的資金支持。
金耀初2021年2月于英國吉爾福德
全書代碼
第1章最優(yōu)化導論
1.1優(yōu)化的定義
1.1.1數(shù)學模型
1.1.2凸優(yōu)化
1.1.3擬凸函數(shù)
1.1.4全局和局部最優(yōu)
1.2優(yōu)化問題的類型
1.2.1連續(xù)與離散優(yōu)化
1.2.2無約束優(yōu)化與約束優(yōu)化
1.2.3單目標優(yōu)化與多目標優(yōu)化
1.2.4確定性優(yōu)化與隨機性優(yōu)化
1.2.5黑盒優(yōu)化和數(shù)據(jù)驅(qū)動的優(yōu)化
1.3多目標優(yōu)化
1.3.1數(shù)學模型
1.3.2Pareto最優(yōu)性
1.3.3偏好建模
1.3.4偏好表示
1.4優(yōu)化中不確定性的處理
1.4.1評價中的噪聲
1.4.2魯棒優(yōu)化
1.4.3多場景優(yōu)化
1.4.4動態(tài)優(yōu)化
1.4.5時域魯棒優(yōu)化
1.5優(yōu)化算法的對比
1.5.1算法效率
1.5.2性能指標
1.5.3可靠性評價
1.5.4統(tǒng)計測試
1.5.5基準問題
1.6總結(jié)
第2章經(jīng)典優(yōu)化算法
2.1無約束優(yōu)化
2.1.1梯度法
2.1.2牛頓法
2.1.3擬牛頓法
2.2約束優(yōu)化
2.2.1懲罰函數(shù)法和障礙函數(shù)法
2.2.2拉格朗日乘子法
2.3無梯度搜索方法
2.3.1線搜索和模式搜索
2.3.2NelderMead單純形法
2.3.3基于模型的無梯度搜索方法
2.4確定性全局優(yōu)化
2.4.1基于Lipschitz的方法
2.4.2DIRECT算法
2.5總結(jié)
第3章進化和群智能優(yōu)化
3.1引言
3.2遺傳算法
3.2.1定義
3.2.2表示
3.2.3交叉和變異
3.2.4環(huán)境選擇
3.3實數(shù)編碼的遺傳算法
3.3.1實值表示
3.3.2混合交叉
3.3.3模擬二進制交叉和多項式變異
3.4進化策略
3.4.1(1 1)ES
3.4.2基于全局步長的進化策略
3.4.3基于個體步長大小的進化策略
3.4.4繁殖與環(huán)境選擇
3.4.5協(xié)方差矩陣自適應進化策略
3.5遺傳規(guī)劃
3.5.1基于樹結(jié)構(gòu)的遺傳規(guī)劃
3.5.2初始化
3.5.3交叉與變異
3.6蟻群優(yōu)化算法
3.6.1整體框架
3.6.2擴展應用
3.7差分進化算法
3.7.1初始化
3.7.2差分變異
3.7.3差分交叉
3.7.4環(huán)境選擇
3.8粒子群優(yōu)化算法
3.8.1傳統(tǒng)的粒子群優(yōu)化算法
3.8.2競爭粒子群優(yōu)化器
3.8.3社會學習粒子群優(yōu)化器
3.9模因算法
3.9.1基本概念
3.9.2拉馬克方法和鮑德溫方法
3.9.3多目標模因算法
3.9.4鮑德溫效應與隱藏效應
3.10分布估計算法
3.10.1一個簡單的EDA
3.10.2求解離散優(yōu)化問題的EDA
3.10.3求解連續(xù)優(yōu)化問題的EDA
3.10.4多目標EDA
3.11參數(shù)自適應和算法選擇
3.11.1自動參數(shù)調(diào)優(yōu)
3.11.2超啟發(fā)式算法
3.11.3適應度地形分析
3.11.4自動推薦系統(tǒng)
3.12總結(jié)
第4章機器學習簡介
4.1機器學習問題
4.1.1聚類
4.1.2維度約減
4.1.3回歸
4.1.4分類
4.2機器學習模型
4.2.1多項式回歸模型
4.2.2多層感知機
4.2.3徑向基函數(shù)網(wǎng)絡
4.2.4支持向量機
4.2.5高斯過程
4.2.6決策樹
4.2.7模糊規(guī)則系統(tǒng)
4.2.8集成模型
4.3學習算法
4.3.1監(jiān)督學習
4.3.2無監(jiān)督學習
4.3.3強化學習
4.3.4高階學習算法
4.4多目標機器學習
4.4.1單目標與多目標學習
4.4.2多目標聚類、特征選擇和特征提取
4.4.3多目標集成模型生成
4.5深度學習模型
4.5.1卷積神經(jīng)網(wǎng)絡
4.5.2長短期記憶網(wǎng)絡
4.5.3自關(guān)聯(lián)神經(jīng)網(wǎng)絡和自編碼器
4.5.4生成對抗網(wǎng)絡
4.6進化與學習的協(xié)同作用
4.6.1進化學習
4.6.2基于學習的進化優(yōu)化
4.7小結(jié)
第5章數(shù)據(jù)驅(qū)動的代理模型輔助的進化優(yōu)化
5.1引言
5.2離線與在線數(shù)據(jù)驅(qū)動的優(yōu)化
5.2.1離線數(shù)據(jù)驅(qū)動的優(yōu)化
5.2.2在線數(shù)據(jù)驅(qū)動的優(yōu)化
5.3在線代理模型管理方法
5.3.1基于種群的模型管理
5.3.2基于世代的模型管理
5.3.3基于個體的模型管理
5.3.4模因算法中的信任域方法
5.4貝葉斯模型管理
5.4.1獲取函數(shù)
5.4.2進化貝葉斯優(yōu)化
5.4.3貝葉斯進化優(yōu)化
5.5貝葉斯約束優(yōu)化
5.5.1約束優(yōu)化的獲取函數(shù)
5.5.2兩階段獲取函數(shù)
5.6代理模型輔助的魯棒性優(yōu)化
5.6.1魯棒性優(yōu)化的雙目標公式
5.6.2代理模型的構(gòu)建
5.7模型的性能指標
5.7.1精度
5.7.2基于選擇的性能指標
5.7.3等級相關(guān)性
5.7.4適應度相關(guān)性
5.8總結(jié)
第6章多代理模型輔助的單目標優(yōu)化
6.1引言
6.2局部和全局代理模型輔助優(yōu)化
6.2.1集成代理模型
6.2.2多代理模型的單目標模因優(yōu)化
6.2.3多代理模型的多目標模因優(yōu)化
6.2.4信任域方法輔助的局部搜索
6.2.5實驗結(jié)果
6.3雙層代理模型輔助粒子群算法
6.3.1全局代理模型
6.3.2局部代理模型
6.3.3適應度評估
6.3.4代理模型管理
6.3.5實驗結(jié)果和討論
6.4代理模型委員會輔助的粒子群優(yōu)化
6.4.1代理模型委員會
6.4.2填充采樣準則
6.4.3整體框架
6.4.4基準問題的實驗結(jié)果
6.5分層代理模型輔助的多場景優(yōu)化
6.5.1多場景翼型優(yōu)化
6.5.2多場景優(yōu)化中的分層代理模型
6.6自適應代理模型選擇
6.6.1基本思路
6.6.2選擇代理模型的概率模型
6.7小結(jié)
第7章代理模型輔助的多目標進化優(yōu)化
7.1進化多目標優(yōu)化
7.1.1假設和方法論
7.1.2基于分解的方法
7.1.3基于支配關(guān)系的方法
7.1.4基于性能指標的方法
7.2高斯過程輔助隨機加權(quán)聚合方法
7.2.1代理模型輔助多目標優(yōu)化的挑戰(zhàn)
7.2.2高效全局優(yōu)化方法
7.2.3多目標優(yōu)化的擴展
7.3高斯過程輔助的基于分解的多目標優(yōu)化
7.3.1MOEA/D
7.3.2主要框架
7.3.3局部代理模型
7.3.4代理模型管理
7.3.5討論
7.4高維多目標貝葉斯優(yōu)化
7.4.1主要挑戰(zhàn)
7.4.2異構(gòu)集成模型構(gòu)建
7.4.3基于Pareto的多目標貝葉斯優(yōu)化方法
7.4.4整體框架
7.5小結(jié)
第8章代理模型輔助的高維多目標進化優(yōu)化
8.1高維多目標優(yōu)化中的新挑戰(zhàn)
8.1.1引言
8.1.2多樣性與偏好
8.1.3拐點搜索
8.1.4求解非規(guī)則Pareto前沿面問題
8.2進化高維多目標進化優(yōu)化算法
8.2.1參考向量引導的高維多目標優(yōu)化
8.2.2拐點驅(qū)動的高維多目標優(yōu)化算法
8.2.3雙存檔高維多目標優(yōu)化算法
8.2.4高維多目標優(yōu)化中的角排序
8.3高斯過程輔助的參考向量引導的高維多目標優(yōu)化
8.3.1模型管理
8.3.2存檔維持
8.4分類代理模型輔助的高維多目標優(yōu)化
8.4.1主要框架
8.4.2基于徑向投影選擇
8.4.3基于參考集的支配關(guān)系預測
8.4.4代理模型管理
8.4.5代理模型輔助的環(huán)境選擇
8.5dropout神經(jīng)網(wǎng)絡輔助的高維多目標優(yōu)化
8.5.1ARMOEA
8.5.2高效深度dropout神經(jīng)網(wǎng)絡
8.5.3模型管理
8.5.4EDNARMOEA整體框架
8.5.5原油蒸餾裝置的操作優(yōu)化
8.6小結(jié)
第9章數(shù)據(jù)驅(qū)動進化優(yōu)化中的知識遷移
9.1引言
9.2基于協(xié)同訓練的代理模型輔助交互式優(yōu)化
9.2.1總體框架
9.2.2區(qū)間預測的代理模型
9.2.3適應度評估
9.2.4iCSSL
9.2.5模型管理
9.3半監(jiān)督學習輔助粒子群優(yōu)化
9.3.1算法框架
9.3.2社會學習粒子群優(yōu)化
9.3.3模型管理策略
9.3.4未標記數(shù)據(jù)的選擇
9.3.5實驗結(jié)果與討論
9.4多目標優(yōu)化中問題之間的知識遷移
9.4.1遷移學習的領(lǐng)域自適應
9.4.2從廉價到昂貴問題的知識遷移
9.4.3用于數(shù)據(jù)增強的CEBDA
9.4.4進化多目標貝葉斯優(yōu)化
9.5多目標優(yōu)化中目標之間的知識遷移
9.5.1動機
9.5.2基于參數(shù)的遷移學習
9.5.3算法框架
9.6數(shù)據(jù)驅(qū)動的多精度遷移優(yōu)化
9.6.1雙精度優(yōu)化中的遷移學習
9.6.2遷移堆疊
9.6.3代理模型輔助的雙精度進化優(yōu)化
9.6.4實驗結(jié)果
9.7代理模型輔助的多任務多場景優(yōu)化
9.7.1多場景minimax優(yōu)化
9.7.2代理模型輔助的minimax多因子進化優(yōu)化
9.7.3實驗結(jié)果
9.8小結(jié)
第10章代理模型輔助的高維進化優(yōu)化
10.1代理模型輔助的協(xié)同優(yōu)化求解高維問題
10.1.1RBF 輔助的 SLPSO
10.1.2FES 輔助的 PSO
10.1.3存檔更新
10.1.4實驗結(jié)果和分析
10.2高維優(yōu)化中的多目標填充準則
10.2.1主要框架
10.2.2多目標填充準則
10.2.3實驗結(jié)果和分析
10.3針對昂貴問題的多模型多任務優(yōu)化
10.3.1多因子進化算法
10.3.2主要框架
10.3.3全局和局部代理模型
10.3.4基于全局和局部代理模型的多任務優(yōu)化
10.3.5實驗結(jié)果和分析
10.4隨機特征選擇下代理模型輔助的大規(guī)模優(yōu)化
10.4.1主要框架
10.4.2子問題的形成與優(yōu)化
10.4.3全局最優(yōu)位置的更新
10.4.4實驗結(jié)果和分析
10.5小結(jié)
第11章離線大或小數(shù)據(jù)驅(qū)動的優(yōu)化及應用
11.1離線急救系統(tǒng)大數(shù)據(jù)驅(qū)動優(yōu)化的自適應聚類
11.1.1問題建模
11.1.2用于離線數(shù)據(jù)驅(qū)動優(yōu)化的自適應聚類
11.1.3實驗結(jié)果
11.1.4討論
11.2小數(shù)據(jù)驅(qū)動多目標鎂爐優(yōu)化
11.2.1基于全局代理的模型管理
11.2.2基準問題的驗證實驗
11.2.3電熔鎂爐優(yōu)化
11.3面向離線翼型優(yōu)化的選擇性集成模型
11.3.1問題建模
11.3.2離線數(shù)據(jù)驅(qū)動優(yōu)化的選擇性集成模型
11.3.3對比實驗結(jié)果
11.4離線數(shù)據(jù)驅(qū)動的選礦過程優(yōu)化中的知識遷移
11.4.1引言
11.4.2多代理模型優(yōu)化的知識遷移
11.4.3基于參考向量的最終解選擇
11.4.4選礦工藝優(yōu)化
11.5離線動態(tài)數(shù)據(jù)驅(qū)動優(yōu)化中的遷移學習
11.5.1動態(tài)數(shù)據(jù)驅(qū)動的優(yōu)化
11.5.2用于增量學習的數(shù)據(jù)流集成模型
11.5.3基于集成的遷移優(yōu)化
11.5.4用于最終解選擇的支持向量域描述
11.5.5實驗結(jié)果
11.6小結(jié)
第12章代理模型輔助進化神經(jīng)架構(gòu)搜索
12.1神經(jīng)網(wǎng)絡架構(gòu)搜索的挑戰(zhàn)
12.1.1架構(gòu)表示
12.1.2搜索策略
12.1.3性能評估
12.2神經(jīng)網(wǎng)絡架構(gòu)搜索中的貝葉斯優(yōu)化
12.2.1架構(gòu)編碼
12.2.2核函數(shù)
12.2.3討論
12.3隨機森林輔助的神經(jīng)架構(gòu)搜索
12.3.1塊式架構(gòu)表示法
12.3.2離線數(shù)據(jù)產(chǎn)生
12.3.3隨機森林構(gòu)建
12.3.4搜索方法
12.3.5實驗結(jié)果
12.4小結(jié)
參考文獻