常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)

在本推文中介紹四類常用參數(shù)自動(dòng)標(biāo)定方案,分別是單純形方案,粒子群方案,遺傳算法方案,以及貝葉斯優(yōu)化ego方案。

單純形方案實(shí)現(xiàn)最簡(jiǎn)單,適用于少參數(shù),更窄的初始區(qū)間

粒子群方案,遺傳算法方案適用于多參數(shù)更大的空間適合全局搜索

ego方案相比于其余三類方案的優(yōu)勢(shì)體現(xiàn)為

EGO使用代理模型(如高斯過(guò)程回歸)來(lái)預(yù)測(cè)目標(biāo)函數(shù),極大減少了實(shí)際函數(shù)評(píng)估次數(shù)。

EGO在每一步都智能選擇下一個(gè)最值得評(píng)估的位置(如使用EI, Expected Improvement)。

這種探索與利用的動(dòng)態(tài)平衡比GA中盲目變異與交叉更具理論指導(dǎo)。

由于EGO最大化信息利用率,在樣本數(shù)量極少的情況下表現(xiàn)優(yōu)于GA

當(dāng)樣本數(shù)量少,且有約束優(yōu)化時(shí)適合使用ego方法。例如在評(píng)估晶體塑性模型參數(shù)時(shí)

不過(guò)這些優(yōu)化算法經(jīng)常容易陷入局部最優(yōu),即優(yōu)化算法在搜索過(guò)程中被某個(gè)“看起來(lái)很好”的解吸引,不斷圍繞它進(jìn)行微小改進(jìn),最終卡在“局部低谷”而不是“全局最低點(diǎn)”。

一個(gè)更合理的做法是:使用粒子群和遺傳算法在全局進(jìn)行初始搜索,使用ego回歸分析進(jìn)行特定區(qū)間的優(yōu)化,最后使用NM方案進(jìn)行小區(qū)間尋找,如果陷入局部最優(yōu)解,引入全局?jǐn)_動(dòng)方案或者爆炸方法跳出局部區(qū)間重新搜索即可。

基于該思路編寫(xiě)對(duì)應(yīng)的程序,實(shí)現(xiàn)參數(shù)的自動(dòng)標(biāo)定過(guò)程:

這里實(shí)現(xiàn)對(duì)vpsc模型的復(fù)雜參數(shù)自動(dòng)標(biāo)定;

這里使用相對(duì)復(fù)雜的鎂合金為例,考慮3組滑移+一組孿晶,每個(gè)系統(tǒng)考慮tau_0,tau_s,h_0,一共12個(gè)待標(biāo)定參數(shù)給定參數(shù)區(qū)間如下

常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)的圖1

設(shè)置最大迭代次數(shù)為2000次,初始優(yōu)化來(lái)自粒子群算法,依次是遺傳算法單純形算法和貝葉斯優(yōu)化算法。

以實(shí)驗(yàn)曲線和模擬曲線的標(biāo)準(zhǔn)差作為目標(biāo)函數(shù):

迭代到270次時(shí),模型與實(shí)現(xiàn)誤差為0.00563

常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)的圖2

此時(shí)陷入局部最優(yōu)解;算法自動(dòng)切換為遺傳算法

常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)的圖3

目標(biāo)函數(shù)的動(dòng)圖如下:

常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)的圖4

矯正結(jié)束后的實(shí)驗(yàn)曲線和模擬曲線如下所示:

可以看到兩條曲線幾乎完全重合

常用參數(shù)自動(dòng)標(biāo)定算法總結(jié)(單純形,遺傳算法,貝葉斯優(yōu)化算法,粒子群算法等)的圖5

可以看到該方案得到的效果非常完美

登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺(tái)客服

TOP

1
3